Compare commits
123 Commits
debian/0.7
...
v0.79.6-pl
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5b82ec64bc | ||
|
|
9fed89dbcf | ||
|
|
22b2aba490 | ||
|
|
0598fad827 | ||
|
|
cbcac368dc | ||
|
|
bd70bcef1b | ||
|
|
71b32a30a1 | ||
|
|
2d68cfb0b1 | ||
|
|
c0c6747bd9 | ||
|
|
3eecbcbdcc | ||
|
|
49eecc0a6f | ||
|
|
4d2e0ba32c | ||
|
|
495a851356 | ||
|
|
5b95870f39 | ||
|
|
d76551ce39 | ||
|
|
0c5995bd72 | ||
|
|
7c74ca8f84 | ||
|
|
7966d41c01 | ||
|
|
87d61d4eb0 | ||
|
|
ab0427f2f0 | ||
|
|
4b982057f7 | ||
|
|
d22fac49a3 | ||
|
|
8e0664462e | ||
|
|
8298d78e04 | ||
|
|
d8e0dab436 | ||
|
|
196506c3dd | ||
|
|
6362a68355 | ||
|
|
5553ed332f | ||
|
|
5ab5f9b0cb | ||
|
|
9ef0b374e5 | ||
|
|
a886d60417 | ||
|
|
d29db408a3 | ||
|
|
f8dbe54a8c | ||
|
|
f9e8ce83bc | ||
|
|
4ba33a2c89 | ||
|
|
41887bb25e | ||
|
|
0a90d1b22a | ||
|
|
d314a6bcef | ||
|
|
b4aed53e23 | ||
|
|
a4efe71abf | ||
|
|
38defdf7aa | ||
|
|
99b27b982a | ||
|
|
4f480905dc | ||
|
|
32c8455017 | ||
|
|
0c038b8171 | ||
|
|
fc3f2605f6 | ||
|
|
4ecd698a6b | ||
|
|
a5bf80c657 | ||
|
|
5bc91d01b1 | ||
|
|
3c60b1a959 | ||
|
|
181c40e1fb | ||
|
|
6f7cb57317 | ||
|
|
d169e4f289 | ||
|
|
f6a9f663bf | ||
|
|
95b3155bc8 | ||
|
|
4c4aa1a143 | ||
|
|
31b154dacc | ||
|
|
52f3307d78 | ||
|
|
1e51a09248 | ||
|
|
6c4d0d26e9 | ||
|
|
adeba79339 | ||
|
|
f648710f2f | ||
|
|
bf96232b15 | ||
|
|
c84be789d3 | ||
|
|
3e16a0c2da | ||
|
|
c40d6e9278 | ||
|
|
bee8419a4a | ||
|
|
af179a1a3e | ||
|
|
2ebf97cbf4 | ||
|
|
4b4495b693 | ||
|
|
ddaf4cfc23 | ||
|
|
86207af360 | ||
|
|
44bc4b1916 | ||
|
|
b7344e4855 | ||
|
|
9fc9a74171 | ||
|
|
b289d165db | ||
|
|
b24ad06237 | ||
|
|
e4f86281b1 | ||
|
|
dc27f5e3fa | ||
|
|
3693b4e86e | ||
|
|
354e8a500a | ||
|
|
72f70e6488 | ||
|
|
13db28beb6 | ||
|
|
19a77a6cba | ||
|
|
2b5666fc47 | ||
|
|
f2da0d5640 | ||
|
|
02a85cae19 | ||
|
|
25c3061e39 | ||
|
|
30adf4ea35 | ||
|
|
72e8ebd009 | ||
|
|
1c6804804d | ||
|
|
de50a000bf | ||
|
|
00d42647ef | ||
|
|
1a4b5b62ee | ||
|
|
5197239bfa | ||
|
|
e82528bc0c | ||
|
|
869c56ca37 | ||
|
|
ff8db2fb8b | ||
|
|
765d87e0d3 | ||
|
|
2ef4511927 | ||
|
|
e35c2de208 | ||
|
|
619ee820f3 | ||
|
|
581d7697db | ||
|
|
58e068ff5b | ||
|
|
ccc2d79dd4 | ||
|
|
2388e522b3 | ||
|
|
b3b74e69d9 | ||
|
|
3af39d5b74 | ||
|
|
d813ad385b | ||
|
|
c4d7120860 | ||
|
|
5f5aef550f | ||
|
|
0144e738fb | ||
|
|
5d5e943c51 | ||
|
|
06c675c1fd | ||
|
|
a5f48d91a3 | ||
|
|
f83f9e81b0 | ||
|
|
38a3127d2f | ||
|
|
9f38622429 | ||
|
|
520b4cb8c9 | ||
|
|
af00bbb1cb | ||
|
|
34afe54009 | ||
|
|
a66cebafd3 | ||
|
|
eaa545b89c |
@@ -1,4 +0,0 @@
|
||||
PRIVATE
|
||||
test-cases
|
||||
regtest
|
||||
st
|
||||
315
.github/workflows/release.yml
vendored
Normal file
@@ -0,0 +1,315 @@
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
name: Upload Release Asset
|
||||
|
||||
jobs:
|
||||
linux64-cli:
|
||||
name: Linux64 CLI static
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: install prerequisites
|
||||
run: sudo apt update && sudo apt install -y libglib2.0-dev ghostscript man jq
|
||||
|
||||
- name: configure
|
||||
run: CLI_ONLY=1 ./configure
|
||||
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc) && make static && mv -f dvdisaster-static dvdisaster
|
||||
|
||||
- name: check executable
|
||||
run: |
|
||||
./dvdisaster --version && ./dvdisaster --version | grep -q -e UNKNOWN -e dirty || true
|
||||
file dvdisaster && file dvdisaster | grep -q 'ELF 64' && file dvdisaster | grep -q 'statically linked'
|
||||
|
||||
- name: build dist
|
||||
id: dist
|
||||
run: |
|
||||
archive=dvdisaster-$(echo "${{ github.ref }}" | grep -Eo '[^/]+$')-linux64-static-cli-only.zip
|
||||
upload_url=$(jq -r '.release.upload_url' < $GITHUB_EVENT_PATH)
|
||||
echo "Archive name is $archive"
|
||||
echo "Upload URL is $upload_url"
|
||||
echo "::set-output name=archive::$archive"
|
||||
echo "::set-output name=upload_url::$upload_url"
|
||||
mkdir dist
|
||||
man -t documentation/dvdisaster.en.1 | ps2pdf - dist/dvdisaster.pdf
|
||||
mv dvdisaster documentation/dvdisaster.*.1 documentation/user-manual/manual.pdf dist/
|
||||
mv dist ${archive/.zip/}
|
||||
zip -9r $archive ${archive/.zip/}
|
||||
|
||||
- name: Upload Release Asset
|
||||
id: upload-release-asset
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.dist.outputs.upload_url }}
|
||||
asset_path: ./${{ steps.dist.outputs.archive }}
|
||||
asset_name: ${{ steps.dist.outputs.archive }}
|
||||
asset_content_type: application/zip
|
||||
|
||||
win64-gui:
|
||||
name: Windows64 GUI
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW64
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-x86_64-gtk2 mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc mingw-w64-x86_64-ghostscript mingw-w64-x86_64-jq mingw-w64-x86_64-ntldd-git man zip
|
||||
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: configure
|
||||
run: ./configure
|
||||
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
|
||||
- name: check executable
|
||||
run: |
|
||||
./dvdisaster.exe --version && ./dvdisaster --version | grep -q -e UNKNOWN -e dirty || true
|
||||
file dvdisaster.exe && file dvdisaster.exe | grep -q 'x86-64, for MS Windows'
|
||||
|
||||
- name: build dist
|
||||
id: dist
|
||||
run: |
|
||||
archive=dvdisaster-$(echo "${{ github.ref }}" | grep -Eo '[^/]+$')-win64.zip
|
||||
upload_url=$(jq -r '.release.upload_url' < $GITHUB_EVENT_PATH)
|
||||
echo "Archive name is $archive"
|
||||
echo "Upload URL is $upload_url"
|
||||
echo "::set-output name=archive::$archive"
|
||||
echo "::set-output name=upload_url::$upload_url"
|
||||
mkdir dist
|
||||
mkdir -p dist/lib dist/locale dist/share/themes
|
||||
cp -vr locale/*/ dist/locale/
|
||||
cp -vr $MINGW_PREFIX/share/themes/MS-Windows dist/share/themes/
|
||||
cp -vr $MINGW_PREFIX/lib/gtk-2.0 dist/lib/
|
||||
find dist -type f -name "*.a" -delete
|
||||
rm -rf dist/lib/gtk-2.0/include
|
||||
ntldd -R dvdisaster
|
||||
for i in $(ntldd -R dvdisaster | awk '/mingw/ {print $3}' | tr \\\\ / | grep -Eo '[^/]+$')
|
||||
do
|
||||
test -e $MINGW_PREFIX/bin/$i && cp -va $MINGW_PREFIX/bin/$i dist/
|
||||
done
|
||||
man -t documentation/dvdisaster.en.1 | ps2pdf - dist/dvdisaster.pdf
|
||||
mv dvdisaster documentation/dvdisaster.*.1 documentation/user-manual/manual.pdf dist/
|
||||
mv dist ${archive/.zip/}
|
||||
zip -9r $archive ${archive/.zip/}
|
||||
|
||||
- name: Upload Release Asset
|
||||
id: upload-release-asset
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.dist.outputs.upload_url }}
|
||||
asset_path: ./${{ steps.dist.outputs.archive }}
|
||||
asset_name: ${{ steps.dist.outputs.archive }}
|
||||
asset_content_type: application/zip
|
||||
|
||||
win32-gui:
|
||||
name: Windows32 GUI
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW32
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-i686-gtk2 mingw-w64-i686-glib2 mingw-w64-i686-gcc mingw-w64-i686-ghostscript mingw-w64-i686-jq mingw-w64-i686-ntldd-git man zip
|
||||
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: configure
|
||||
run: ./configure
|
||||
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
|
||||
- name: check executable
|
||||
run: |
|
||||
./dvdisaster.exe --version && ./dvdisaster --version | grep -q -e UNKNOWN -e dirty || true
|
||||
file dvdisaster.exe && file dvdisaster.exe | grep -q '386, for MS Windows'
|
||||
|
||||
- name: build dist
|
||||
id: dist
|
||||
run: |
|
||||
set -x
|
||||
set +o pipefail
|
||||
archive=dvdisaster-$(echo "${{ github.ref }}" | grep -Eo '[^/]+$')-win32.zip
|
||||
upload_url=$(jq -r '.release.upload_url' < $GITHUB_EVENT_PATH)
|
||||
echo "Archive name is $archive"
|
||||
echo "Upload URL is $upload_url"
|
||||
echo "::set-output name=archive::$archive"
|
||||
echo "::set-output name=upload_url::$upload_url"
|
||||
mkdir dist
|
||||
mkdir -p dist/lib dist/locale dist/share/themes
|
||||
cp -vr locale/*/ dist/locale/
|
||||
cp -vr $MINGW_PREFIX/share/themes/MS-Windows dist/share/themes/
|
||||
cp -vr $MINGW_PREFIX/lib/gtk-2.0 dist/lib/
|
||||
find dist -type f -name "*.a" -delete
|
||||
rm -rf dist/lib/gtk-2.0/include
|
||||
ntldd -R dvdisaster
|
||||
for i in $(ntldd -R dvdisaster | awk '/mingw/ {print $3}' | tr \\\\ / | grep -Eo '[^/]+$')
|
||||
do
|
||||
test -e $MINGW_PREFIX/bin/$i && cp -va $MINGW_PREFIX/bin/$i dist/
|
||||
done
|
||||
man -t documentation/dvdisaster.en.1 | ps2pdf - dist/dvdisaster.pdf
|
||||
mv dvdisaster documentation/dvdisaster.*.1 documentation/user-manual/manual.pdf dist/
|
||||
mv dist ${archive/.zip/}
|
||||
zip -9r $archive ${archive/.zip/}
|
||||
|
||||
- name: Upload Release Asset
|
||||
id: upload-release-asset
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.dist.outputs.upload_url }}
|
||||
asset_path: ./${{ steps.dist.outputs.archive }}
|
||||
asset_name: ${{ steps.dist.outputs.archive }}
|
||||
asset_content_type: application/zip
|
||||
|
||||
win64-cli:
|
||||
name: Windows64 CLI
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW64
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc mingw-w64-x86_64-ghostscript mingw-w64-x86_64-jq mingw-w64-x86_64-ntldd-git man zip
|
||||
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: configure
|
||||
run: CLI_ONLY=1 ./configure
|
||||
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
|
||||
- name: check executable
|
||||
run: |
|
||||
./dvdisaster.exe --version && ./dvdisaster --version | grep -q -e UNKNOWN -e dirty || true
|
||||
file dvdisaster.exe && file dvdisaster.exe | grep -q 'x86-64, for MS Windows'
|
||||
|
||||
- name: build dist
|
||||
id: dist
|
||||
run: |
|
||||
archive=dvdisaster-$(echo "${{ github.ref }}" | grep -Eo '[^/]+$')-win64-cli-only.zip
|
||||
upload_url=$(jq -r '.release.upload_url' < $GITHUB_EVENT_PATH)
|
||||
echo "Archive name is $archive"
|
||||
echo "Upload URL is $upload_url"
|
||||
echo "::set-output name=archive::$archive"
|
||||
echo "::set-output name=upload_url::$upload_url"
|
||||
mkdir dist
|
||||
mkdir -p dist/locale
|
||||
cp -vr locale/*/ dist/locale/
|
||||
ntldd -R dvdisaster
|
||||
for i in $(ntldd -R dvdisaster | awk '/mingw/ {print $3}' | tr \\\\ / | grep -Eo '[^/]+$')
|
||||
do
|
||||
test -e $MINGW_PREFIX/bin/$i && cp -va $MINGW_PREFIX/bin/$i dist/
|
||||
done
|
||||
man -t documentation/dvdisaster.en.1 | ps2pdf - dist/dvdisaster.pdf
|
||||
mv dvdisaster documentation/dvdisaster.*.1 documentation/user-manual/manual.pdf dist/
|
||||
mv dist ${archive/.zip/}
|
||||
zip -9r $archive ${archive/.zip/}
|
||||
|
||||
- name: Upload Release Asset
|
||||
id: upload-release-asset
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.dist.outputs.upload_url }}
|
||||
asset_path: ./${{ steps.dist.outputs.archive }}
|
||||
asset_name: ${{ steps.dist.outputs.archive }}
|
||||
asset_content_type: application/zip
|
||||
|
||||
win32-cli:
|
||||
name: Windows32 CLI
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW32
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-i686-glib2 mingw-w64-i686-gcc mingw-w64-i686-ghostscript mingw-w64-i686-jq mingw-w64-i686-ntldd-git man zip
|
||||
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: configure
|
||||
run: CLI_ONLY=1 ./configure
|
||||
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
|
||||
- name: check executable
|
||||
run: |
|
||||
./dvdisaster.exe --version && ./dvdisaster --version | grep -q -e UNKNOWN -e dirty || true
|
||||
file dvdisaster.exe && file dvdisaster.exe | grep -q '386, for MS Windows'
|
||||
|
||||
- name: build dist
|
||||
id: dist
|
||||
run: |
|
||||
archive=dvdisaster-$(echo "${{ github.ref }}" | grep -Eo '[^/]+$')-win32-cli-only.zip
|
||||
upload_url=$(jq -r '.release.upload_url' < $GITHUB_EVENT_PATH)
|
||||
echo "Archive name is $archive"
|
||||
echo "Upload URL is $upload_url"
|
||||
echo "::set-output name=archive::$archive"
|
||||
echo "::set-output name=upload_url::$upload_url"
|
||||
mkdir dist
|
||||
mkdir -p dist/locale
|
||||
cp -vr locale/*/ dist/locale/
|
||||
ntldd -R dvdisaster
|
||||
for i in $(ntldd -R dvdisaster | awk '/mingw/ {print $3}' | tr \\\\ / | grep -Eo '[^/]+$')
|
||||
do
|
||||
test -e $MINGW_PREFIX/bin/$i && cp -va $MINGW_PREFIX/bin/$i dist/
|
||||
done
|
||||
man -t documentation/dvdisaster.en.1 | ps2pdf - dist/dvdisaster.pdf
|
||||
mv dvdisaster documentation/dvdisaster.*.1 documentation/user-manual/manual.pdf dist/
|
||||
mv dist ${archive/.zip/}
|
||||
zip -9r $archive ${archive/.zip/}
|
||||
|
||||
- name: Upload Release Asset
|
||||
id: upload-release-asset
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.dist.outputs.upload_url }}
|
||||
asset_path: ./${{ steps.dist.outputs.archive }}
|
||||
asset_name: ${{ steps.dist.outputs.archive }}
|
||||
asset_content_type: application/zip
|
||||
145
.github/workflows/tests.yml
vendored
Normal file
@@ -0,0 +1,145 @@
|
||||
name: C/C++ CI
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
jobs:
|
||||
|
||||
linux64-gui:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: install prerequisites
|
||||
run: sudo apt update && sudo apt install -y libgtk2.0-dev libglib2.0-dev
|
||||
- name: configure
|
||||
run: ./configure
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
- name: check executability
|
||||
run: ./dvdisaster --version
|
||||
- name: check executable
|
||||
run: file dvdisaster && file dvdisaster | grep -q 'ELF 64'
|
||||
- name: regression tests
|
||||
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
|
||||
|
||||
linux64-cli:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: install prerequisites
|
||||
run: sudo apt update && sudo apt install -y libglib2.0-dev
|
||||
- name: configure
|
||||
run: env CLI_ONLY=1 ./configure
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
- name: check executability
|
||||
run: ./dvdisaster --version
|
||||
- name: check executable
|
||||
run: file dvdisaster && file dvdisaster | grep -q 'ELF 64'
|
||||
- name: regression tests
|
||||
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
|
||||
|
||||
win64-gui:
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW64
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-x86_64-gtk2 mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
- uses: actions/checkout@v2
|
||||
- name: configure
|
||||
run: ./configure
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
- name: check executability
|
||||
run: ./dvdisaster.exe --version
|
||||
- name: check executable
|
||||
run: file dvdisaster.exe && file dvdisaster.exe | grep -q 'x86-64, for MS Windows'
|
||||
- name: regression tests
|
||||
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
|
||||
|
||||
win32-gui:
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW32
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-i686-gtk2 mingw-w64-i686-glib2 mingw-w64-i686-gcc
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
- uses: actions/checkout@v2
|
||||
- name: configure
|
||||
run: ./configure
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
- name: check executability
|
||||
run: ./dvdisaster.exe --version
|
||||
- name: check executable
|
||||
run: file dvdisaster.exe && file dvdisaster.exe | grep -q '386, for MS Windows'
|
||||
- name: regression tests
|
||||
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
|
||||
|
||||
win64-cli:
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW64
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
- uses: actions/checkout@v2
|
||||
- name: configure
|
||||
run: env CLI_ONLY=1 ./configure
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
- name: check executability
|
||||
run: ./dvdisaster.exe --version
|
||||
- name: check executable
|
||||
run: file dvdisaster.exe && file dvdisaster.exe | grep -q 'x86-64, for MS Windows'
|
||||
- name: regression tests
|
||||
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
|
||||
|
||||
win32-cli:
|
||||
runs-on: windows-2016
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW32
|
||||
update: false
|
||||
install: git diffutils make pkg-config mingw-w64-i686-glib2 mingw-w64-i686-gcc
|
||||
- run: git config --global core.autocrlf input
|
||||
shell: bash
|
||||
- uses: actions/checkout@v2
|
||||
- name: configure
|
||||
run: env CLI_ONLY=1 ./configure
|
||||
- name: make
|
||||
run: nproc && make -j$(nproc)
|
||||
- name: check executability
|
||||
run: ./dvdisaster.exe --version
|
||||
- name: check executable
|
||||
run: file dvdisaster.exe && file dvdisaster.exe | grep -q '386, for MS Windows'
|
||||
- name: regression tests
|
||||
run: mkdir /var/tmp/regtest && ./regtest/runtests.sh
|
||||
15
.gitignore
vendored
@@ -1,3 +1,18 @@
|
||||
.pc
|
||||
*.o
|
||||
*~
|
||||
*.gcno
|
||||
*.gcda
|
||||
*.gcov
|
||||
Makefile.config
|
||||
configure.log
|
||||
locale/Makefile
|
||||
GNUmakefile
|
||||
.gitignore
|
||||
simple-md5sum
|
||||
inlined-icons.h
|
||||
help-dialogs.h
|
||||
dvdisaster
|
||||
build.h
|
||||
dvdisaster.mo
|
||||
locale/messages.pot
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
all:
|
||||
@echo
|
||||
@echo "Please create a Makefile by entering \"bash configure\" first"
|
||||
@echo
|
||||
@@ -39,9 +39,9 @@ INTL_LIBS = $(CFG_INTL_LIBS)
|
||||
CAM_LFLAGS = $(CFG_CAM_LFLAGS)
|
||||
CAM_LIBS = $(CFG_CAM_LIBS)
|
||||
|
||||
GTK_CFLAGS = $(CFG_GTK2_CFLAGS)
|
||||
GTK_LIBS = $(CFG_GTK2_LIBS)
|
||||
GTK_BINDIR = $(CFG_GTK2_BINDIR)
|
||||
GTK_CFLAGS = $(CFG_GTK2_CFLAGS) $(CFG_GLIB2_CFLAGS)
|
||||
GTK_LIBS = $(CFG_GTK2_LIBS) $(CFG_GLIB2_LIBS)
|
||||
GTK_BINDIR = $(CFG_GTK2_BINDIR) $(CFG_GLIB2_BINDIR)
|
||||
|
||||
EFENCE_LFLAGS = $(CFG_EFENCE_LFLAGS)
|
||||
EFENCE_LIBS = $(CFG_EFENCE_LIBS)
|
||||
@@ -67,22 +67,31 @@ OFILES = $(CFG_OFILES)
|
||||
# Compilation related
|
||||
######################################################################
|
||||
|
||||
.PHONY : all help show locale time-stamp
|
||||
.PHONY : all help show locale build.h
|
||||
|
||||
${BUILDTMP}/%.o : %.c
|
||||
@echo "Compiling:" $?
|
||||
@$(CC) $(COPTS) -c $? -o $@
|
||||
|
||||
all: time-stamp dvdisaster
|
||||
all: dvdisaster
|
||||
|
||||
${BUILDTMP}/build.o : build.c build.h
|
||||
@echo "Compiling:" build.o
|
||||
@$(CC) $(COPTS) -c build.c -o $@
|
||||
|
||||
# Building the dvdisaster binary
|
||||
|
||||
time-stamp:
|
||||
build.h:
|
||||
@echo "Updating:" build.h
|
||||
@$(SRCDIR)/scripts/time-stamper.bash $(SRCDIR)/build.h
|
||||
|
||||
dvdisaster: inlined-icons.h $(OFILES)
|
||||
dvdisaster: $(ICONS) $(OFILES) build.h
|
||||
@echo "Linking : dvdisaster"
|
||||
@$(CC) $(LOPTS) $(OFILES) $(LIBS) -o dvdisaster
|
||||
@if test $(CFG_SYS_OPTIONS) == -DSYS_MINGW; \
|
||||
then windres -v winres.rc -O coff -o winres.o >/dev/null ; \
|
||||
$(CC) $(LOPTS) $(OFILES) $(LIBS) winres.o -o dvdisaster ; \
|
||||
else $(CC) $(LOPTS) $(OFILES) $(LIBS) -o dvdisaster ; \
|
||||
fi
|
||||
@if test -e locale/de/LC_MESSAGES/dvdisaster.mo \
|
||||
|| echo $(WITH_OPTIONS) | grep "NLS_NO" >/dev/null; \
|
||||
then echo "not touching locale"; \
|
||||
@@ -138,9 +147,10 @@ untranslated:
|
||||
@$(MAKE) --no-print-directory -C locale check-untranslated
|
||||
|
||||
simple-md5sum: md5.c
|
||||
@$(CC) $(COPTS) $(MUDFLAP_CFLAGS) -DSIMPLE_MD5SUM md5.c $(MUDFLAP_LFLAGS) $(MUDFLAP_LIBS) -o simple-md5sum
|
||||
@$(CC) $(COPTS) $(MUDFLAP_CFLAGS) -DSIMPLE_MD5SUM md5.c $(LDFLAGS) $(MUDFLAP_LFLAGS) $(MUDFLAP_LIBS) -o simple-md5sum
|
||||
|
||||
version.tex:
|
||||
@test -d $(SRCDIR)/documentation/config || mkdir $(SRCDIR)/documentation/config
|
||||
@echo "\\newcommand{\\projectversion}{$(VERSION)}" >$(SRCDIR)/documentation/config/version.tex
|
||||
|
||||
manual: version.tex
|
||||
@@ -221,7 +231,7 @@ show:
|
||||
######################################################################
|
||||
|
||||
.PHONY : install uninstall clean distclean arch
|
||||
.PHONY : srcdist
|
||||
.PHONY : srcdist dist
|
||||
|
||||
install: dvdisaster manual
|
||||
@echo "Installing package..."
|
||||
@@ -239,9 +249,9 @@ install: dvdisaster manual
|
||||
install -d $(BUILDROOT)$(MANDIR)/de/man1
|
||||
cd documentation; \
|
||||
ESCAPED_DOCSUBDIR=`echo $(DOCSUBDIR) | sed -e 's/\//\\\\\//g'`; \
|
||||
sed "s/%docdir%/$$ESCAPED_DOCSUBDIR\/html/" <dvdisaster.en.1 >dvdisaster.updated; \
|
||||
sed "s/%docdir%/$$ESCAPED_DOCSUBDIR/" <dvdisaster.en.1 >dvdisaster.updated; \
|
||||
install -m 644 dvdisaster.updated $(BUILDROOT)$(MANDIR)/man1/dvdisaster.1; \
|
||||
sed "s/%docdir%/$$ESCAPED_DOCSUBDIR\/html/" <dvdisaster.de.1 >dvdisaster.updated; \
|
||||
sed "s/%docdir%/$$ESCAPED_DOCSUBDIR/" <dvdisaster.de.1 >dvdisaster.updated; \
|
||||
install -m 644 dvdisaster.updated $(BUILDROOT)$(MANDIR)/de/man1/dvdisaster.1; \
|
||||
rm dvdisaster.updated
|
||||
if echo $(WITH_OPTIONS) | grep "NLS_YES" >/dev/null; then \
|
||||
@@ -254,21 +264,14 @@ install: dvdisaster manual
|
||||
@echo "# dvdisaster uninstaller script" > $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "# Usage: sh dvdisaster-uninstall.sh" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(BINDIR)/dvdisaster\" \"$(BINDIR)/dvdisaster-uninstall.sh\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/CHANGELOG\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/COPYING\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/CREDITS.de\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/CREDITS.en\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/manual.pdf\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/README.MODIFYING\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f \"$(DOCSUBDIR)/TODO\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rmdir \"$(DOCSUBDIR)\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f $(BINDIR)/dvdisaster $(BINDIR)/dvdisaster-uninstall.sh" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -rf $(DOCSUBDIR)" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@for i in $(PO_LOCALES); do \
|
||||
echo "rm -f \"$(LOCALEDIR)/$$i/LC_MESSAGES/dvdisaster.mo\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
echo "rm $(LOCALEDIR)/$$i/LC_MESSAGES/dvdisaster.mo" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
done
|
||||
@echo "rm -f \"$(MANDIR)/man1/dvdisaster.1\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@echo "rm -f $(MANDIR)/man1/dvdisaster.1" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
@for i in $(MAN_LOCALES); do \
|
||||
echo "rm -f \"$(MANDIR)/$$i/man1/dvdisaster.1\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
echo "rm $(MANDIR)/$$i/man1/dvdisaster.1" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
done
|
||||
@echo "echo \"dvdisaster has been uninstalled.\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
|
||||
@@ -293,10 +296,6 @@ distclean: clean
|
||||
@echo "Removing configuration files"
|
||||
@rm -f configure.log Makefile.config GNUmakefile locale/Makefile
|
||||
@for i in locale/?? locale/??_??; do rm -rf $$i; done
|
||||
@echo "all:" >>GNUmakefile
|
||||
@echo -e "\t@echo" >>GNUmakefile
|
||||
@echo -e "\t@echo \"Please create a Makefile by entering \\\"bash configure\\\" first\"" >>GNUmakefile
|
||||
@echo -e "\t@echo" >>GNUmakefile
|
||||
|
||||
# There might be a not executable simple-md5sum from a compiler run
|
||||
# under a different architecture, so make sure we have a working binary
|
||||
@@ -324,9 +323,10 @@ clean:
|
||||
@rm -f simple-md5sum
|
||||
@$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/codec-specs clean;
|
||||
@$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/user-manual clean;
|
||||
@$(MAKE) --no-print-directory -C $(SRCDIR)/locale clean;
|
||||
|
||||
BUILD=`grep BUILD $(SRCDIR)/build.h | cut -d ' ' -f 3`
|
||||
arch: archclean time-stamp
|
||||
arch: archclean build.h
|
||||
@cd .. ; tar -c -z -f $(TAR_PREFIX)/$(PKGNAME)-$(BUILD).tgz $(PKGNAME)
|
||||
|
||||
INSTALL: documentation/install.template
|
||||
@@ -336,5 +336,5 @@ srcdist: INSTALL distclean manual manualclean
|
||||
@cd .. ; tar -c -j -X $(PKGNAME)/NODIST -f $(TAR_PREFIX)/$(PKGNAME).tar.bz2 $(PKGNAME)
|
||||
@cd .. ; gpg --homedir .gnupg --default-key 758BCC23 --detach-sign --output $(TAR_PREFIX)/$(PKGNAME).tar.bz2.gpg --armor $(TAR_PREFIX)/$(PKGNAME).tar.bz2
|
||||
|
||||
|
||||
|
||||
static: dvdisaster
|
||||
$(CC) $(LOPTS) $(OFILES) $(LIBS) -pthread -static -o dvdisaster-static
|
||||
|
||||
23
INSTALL
@@ -111,11 +111,11 @@ Please change into a directory which is writeable
|
||||
for you and unpack the source code archive:
|
||||
|
||||
user@host> cd /var/tmp
|
||||
user@host> tar xjf dvdisaster-0.79.5.tar.bz2
|
||||
user@host> tar xjf dvdisaster-0.79.6.tar.bz2
|
||||
|
||||
Then change into the newly created directory:
|
||||
|
||||
user@host> cd /var/tmp/dvdisaster-0.79.5
|
||||
user@host> cd /var/tmp/dvdisaster-0.79.6
|
||||
|
||||
3.2. Configuring the package
|
||||
----------------------------
|
||||
@@ -127,6 +127,11 @@ Call the configuration script in the usual way:
|
||||
|
||||
user@host> ./configure
|
||||
|
||||
If you want to build a CLI-only version, which doesn't depend
|
||||
on the gtk2 libraries, you can run instead:
|
||||
|
||||
user@host> CLI_ONLY=1 ./configure
|
||||
|
||||
The script will possibly print some errors about missing libraries.
|
||||
Type "configure --help" to learn about pointing configure
|
||||
to the correct path of already installed libraries.
|
||||
@@ -199,8 +204,7 @@ please remove the directory you have created as described
|
||||
in section 3.1:
|
||||
|
||||
user@host> cd /var/tmp
|
||||
user@host> rm -rf dvdisaster-0.79.5
|
||||
|
||||
user@host> rm -rf dvdisaster-0.79.6
|
||||
|
||||
5. Running the program
|
||||
======================
|
||||
@@ -228,16 +232,7 @@ Use camcontrol to find out which passthrough device
|
||||
is assigned to your drive:
|
||||
|
||||
root@freebsd# camcontrol devlist
|
||||
<NAME OF YOUR DRIVE> at scbus1 target 0 lun 0 (pass1,cd0)
|
||||
|
||||
You can change permission permanently by adding the
|
||||
following line to /etc/devfs.conf:
|
||||
|
||||
perm pass1 0660
|
||||
|
||||
To make the change available immediately, restart devfs:
|
||||
|
||||
root@freebsd# /etc/rc.d/devfs restart
|
||||
<NAME OF YOUR DRIVE> at scbus1 target 0 lun 0 (pass0,cd0)
|
||||
|
||||
|
||||
Avoid copy-on-write filesystems
|
||||
|
||||
7
Makefile
@@ -4,8 +4,11 @@
|
||||
|
||||
all:
|
||||
@echo
|
||||
@echo "dvdisaster requires GNU make to build."
|
||||
@echo "Please try your command again using gmake."
|
||||
@echo "Please run \`./configure' first."
|
||||
@echo "To build a CLI-only version,"
|
||||
@echo "run \`CLI_ONLY=1 ./configure' instead."
|
||||
@echo "Note that dvdisaster requires GNU make to build."
|
||||
@echo "Under non-Linux systems, it might be known as \`gmake'."
|
||||
@echo
|
||||
|
||||
show: all
|
||||
|
||||
5
README
@@ -65,8 +65,3 @@ locale
|
||||
scripts
|
||||
Scripts needed for configuring and building dvdisaster are
|
||||
located in the "scripts" directory.
|
||||
|
||||
tools
|
||||
Auxiliary programs for the build and packaging process reside
|
||||
in "tools".
|
||||
|
||||
|
||||
78
README.md
Normal file
@@ -0,0 +1,78 @@
|
||||
# dvdisaster provides additional ECC protection for optical media
|
||||
|
||||
It can loosely be compared to *par2* files, but the protection works at the *iso* level instead of working at the file level. This way, even if metadata from the optical media filesystem is damaged, dvdisaster can still work flawlessly.
|
||||
|
||||
This version of dvdisaster supports the following platforms:
|
||||
Linux, FreeBSD, NetBSD on x86, PowerPC, Sparc, and Windows.
|
||||
|
||||
Three protection codecs are supported, they're quickly detailed below. Please see the documentation/manual.pdf for more information about these, and everything else.
|
||||
|
||||
# The codecs
|
||||
|
||||
## RS01
|
||||
|
||||
RS01 creates error correction files which are stored separately from the image they
|
||||
belong to. The artefact is an **ecc** file, which must be stored on another media than the one we're protecting.
|
||||
|
||||
## RS02
|
||||
|
||||
RS02 creates error correction data which is added to the medium to protect, we call this *augmenting* the image we're protecting. Damaged sectors in the error correction information reduce the data recovering capacity, but do not make recovery impossible - a second medium for keeping or protecting the error correction
|
||||
information is not required.
|
||||
|
||||
## RS03
|
||||
|
||||
RS03 is a further development of RS01 and RS02. It can create both error correction files and
|
||||
augmented images, with the following added features:
|
||||
|
||||
- RS03 can distribute work over multiple processor cores and is therefore much faster than
|
||||
RS01/RS02 on modern hardware.
|
||||
- RS03 error correction files are - contrary to RS01 - robust against damage. This should
|
||||
not delude you into careless handling of your error correction files though - the disadvantages
|
||||
of reading at the filesystem level are still valid.
|
||||
- RS03 augmented images do not require so-called master blocks holding important in-
|
||||
formation. This makes RS03 a bit more robust, but also more restrictive: The augmented
|
||||
image must completely fill the medium now while the size of augmented images can be
|
||||
freely chosen in RS02.
|
||||
The changes for parallel computation and higher robustness make RS03 a bit less space efficient,
|
||||
e.g. RS03 error correction data has slighly less error correction capacity than its RS01/RS02
|
||||
counterparts on images with equal size.
|
||||
|
||||
# Unofficial version
|
||||
|
||||
The last upstream version by Carsten Gnörlich is dated 2017, and could be found on the [official](https://web.archive.org/web/20180428070843/http://dvdisaster.net/en/index.html) [website](https://web.archive.org/web/20180509154525/http://dvdisaster.org/en/index.html) which is [now](http://www.dvdisaster.net) [down](http://www.dvdisaster.org). The original source code [repository](https://sourceforge.net/projects/dvdisaster/files/dvdisaster) doesn't have it, but [Debian sources](https://sources.debian.org/src/dvdisaster/) does, thanks to the maintainer there.
|
||||
The original README has been left untouched in this repository.
|
||||
This version is built on top of the latest upstream version, with the following notable enhancements:
|
||||
|
||||
- Most Debian patches have been applied, those specific to Debian have been omitted
|
||||
- Windows build supported again, it was dropped upstream a few versions back
|
||||
- A CLI-only version is now supported, without depending on gtk (`CLI_ONLY=1 ./configure && make clean && make -j4`)
|
||||
- Regression tests confirmed working on Linux64, Windows32 and Windows64, for normal and CLI-only builds
|
||||
- Added pre-defined sizes for BD-R Triple Layer (100GB), BD-R Quadruple Layer (128GB)
|
||||
|
||||
# Rationale
|
||||
|
||||
Even if the optical media era is sunsetting now, and has been for a few years, it's still of some value for off-site backups. In any case, we still have media in our hands that we want to be able to repair, should it be damaged, during the next years/decades. Repairing is actually pretty much the very reason of dvdisaster existence (as long as parity data has been added, of course).
|
||||
The idea of this unofficial version is to ensure dvdisaster doesn't get hard to find, use or compile, should upstream development never resume (we hope it does!).
|
||||
This is also why precompiled Windows binaries and a precompiled static CLI-only Linux version are available here.
|
||||
|
||||
# Compiling
|
||||
|
||||
See the INSTALL file
|
||||
|
||||
# Screenshots
|
||||
|
||||
### Scanning a damaged CD under Windows
|
||||
|
||||

|
||||
|
||||
### Scanning a healthy BD-R (single layer) with Linux GUI
|
||||
|
||||

|
||||
|
||||
### Creating an RS03 error correction file with Linux GUI
|
||||
|
||||

|
||||
|
||||
### Verifying a BD-R image with Linux GUI
|
||||
|
||||

|
||||
8
TODO
@@ -1,15 +1,13 @@
|
||||
|
||||
Tentative to do/ release schedule
|
||||
|
||||
Version 0.79: new RS03 codec
|
||||
Version 0.79: new RS03 codec (encoding part)
|
||||
- lots of speed optimizations in error correction data encoding
|
||||
- multithreaded / multicore processor support for encoding
|
||||
(decoding still single threaded)
|
||||
- multithreaded / multicore processor support
|
||||
- add missing functionality, e.g. adaptive reading
|
||||
0.79.5: project re-launch
|
||||
0.79.6: re-introduce CRC and MD5 caching between reading
|
||||
and ecc creation; cosmetical changes; support
|
||||
for 100G BD
|
||||
and ecc creation; cosmetical changes
|
||||
0.79.7: re-introduce adaptive reading
|
||||
|
||||
Version 0.80: milestone release
|
||||
|
||||
8
bitmap.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -55,9 +55,9 @@ void FreeBitmap(Bitmap *bm)
|
||||
* Count the '1' bits in the bitmap
|
||||
*/
|
||||
|
||||
int CountBits(Bitmap *bm)
|
||||
{ int i;
|
||||
int sum = 0;
|
||||
gint32 CountBits(Bitmap *bm)
|
||||
{ gint32 i;
|
||||
gint32 sum = 0;
|
||||
|
||||
for(i=0; i<bm->size; i++)
|
||||
if(GetBit(bm, i))
|
||||
|
||||
4
build.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -25,4 +25,4 @@
|
||||
/* build is incremented at each make;
|
||||
make recompile of dependent file as fast as possible */
|
||||
|
||||
int buildCount = BUILD;
|
||||
const char *const buildCount = BUILD;
|
||||
|
||||
20
cacheprobe.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -22,7 +22,8 @@
|
||||
|
||||
#include "dvdisaster.h"
|
||||
|
||||
#ifdef SYS_LINUX
|
||||
#if defined(SYS_LINUX)
|
||||
|
||||
int ProbeCacheLineSize()
|
||||
{ int cl_size = 0;
|
||||
|
||||
@@ -36,9 +37,9 @@ int ProbeCacheLineSize()
|
||||
|
||||
return cl_size;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef SYS_FREEBSD
|
||||
#elif defined(SYS_FREEBSD) || defined(SYS_KFREEBSD)
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
int ProbeCacheLineSize()
|
||||
@@ -52,9 +53,9 @@ int ProbeCacheLineSize()
|
||||
|
||||
return cl_size;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef SYS_NETBSD
|
||||
#elif defined(SYS_NETBSD)
|
||||
|
||||
#include <sys/param.h>
|
||||
|
||||
int ProbeCacheLineSize()
|
||||
@@ -68,13 +69,14 @@ int ProbeCacheLineSize()
|
||||
|
||||
return cl_size;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef SYS_UNKNOWN
|
||||
#else /* SYS_UNKNOWN and others. */
|
||||
|
||||
int ProbeCacheLineSize()
|
||||
{
|
||||
return 64;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* TODO MINGW: https://docs.microsoft.com/en-us/windows/win32/api/winnt/ns-winnt-cache_descriptor */
|
||||
|
||||
123
closure.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -28,6 +28,33 @@
|
||||
#define Verbose(format, ...)
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef SYS_MINGW
|
||||
#include <windows.h>
|
||||
|
||||
/* safety margin in case we're getting UTF path names */
|
||||
#define WIN_MAX_PATH (4*MAX_PATH)
|
||||
|
||||
/*
|
||||
* Find the place of our executable
|
||||
* (Windows only)
|
||||
*/
|
||||
|
||||
static char* get_exe_path()
|
||||
{ char path[WIN_MAX_PATH];
|
||||
int n = GetModuleFileNameA(NULL, path, WIN_MAX_PATH);
|
||||
|
||||
if(n>0 && n<WIN_MAX_PATH-1)
|
||||
{ char *backslash = strrchr(path, '\\');
|
||||
|
||||
if(backslash) *backslash=0;
|
||||
return g_strdup(path);
|
||||
}
|
||||
|
||||
return g_strdup(".");
|
||||
}
|
||||
#endif
|
||||
|
||||
/***
|
||||
*** Locate the binary and documentation directory
|
||||
***/
|
||||
@@ -36,9 +63,9 @@ static void get_base_dirs()
|
||||
{
|
||||
/*** Unless completely disabled through a configure option, the
|
||||
source directory is supposed to hold the most recent files,
|
||||
so try this first. */
|
||||
so try this first (never under Windows). */
|
||||
|
||||
#ifdef WITH_EMBEDDED_SRC_PATH_YES
|
||||
#if defined(WITH_EMBEDDED_SRC_PATH_YES) && !defined(SYS_MINGW)
|
||||
if(DirStat(SRCDIR))
|
||||
{ Closure->binDir = g_strdup(SRCDIR);
|
||||
Closure->docDir = g_strdup_printf("%s/documentation",SRCDIR);
|
||||
@@ -50,25 +77,40 @@ static void get_base_dirs()
|
||||
/*** Otherwise try the installation directory.
|
||||
On Unices this is a hardcoded directory. */
|
||||
|
||||
#if defined(SYS_LINUX) || defined(SYS_FREEBSD) || defined(SYS_NETBSD) || defined(SYS_UNKNOWN)
|
||||
#ifndef SYS_MINGW
|
||||
if(DirStat(BINDIR))
|
||||
Closure->binDir = g_strdup(BINDIR);
|
||||
|
||||
if(DirStat(DOCDIR))
|
||||
Closure->docDir = g_strdup(DOCDIR);
|
||||
Verbose("Using hardcoded BINDIR = %s, DOCDIR = %s\n", BINDIR, DOCDIR);
|
||||
#else
|
||||
Closure->binDir = get_exe_path();
|
||||
/* We'll just put the 2 PDF in the same dir, portable mode */
|
||||
Closure->docDir = g_strdup(Closure->binDir);
|
||||
Verbose("Using path from get_exe_path() = %s\n", Closure->binDir);
|
||||
#endif
|
||||
|
||||
|
||||
/*** The location of the dotfile depends on the operating system.
|
||||
Under Unix the users home directory is used. */
|
||||
|
||||
#ifdef WITH_EMBEDDED_SRC_PATH_YES
|
||||
#if defined(WITH_EMBEDDED_SRC_PATH_YES) && !defined(SYS_MINGW)
|
||||
find_dotfile:
|
||||
#endif /* WITH_EMBEDDED_SRC_PATH_YES */
|
||||
|
||||
#ifndef SYS_MINGW
|
||||
Closure->homeDir = g_strdup(g_getenv("HOME"));
|
||||
#else
|
||||
Closure->homeDir = g_strdup(Closure->binDir); /* portable mode */
|
||||
#endif
|
||||
if(!Closure->dotFile) /* may have been set by the --resource-file option */
|
||||
#ifndef SYS_MINGW
|
||||
Closure->dotFile = g_strdup_printf("%s/.dvdisaster", Closure->homeDir);
|
||||
#else
|
||||
/* Windows doesn't really love dotfiles */
|
||||
Closure->dotFile = g_strdup_printf("%s/dvdisaster.cfg", Closure->homeDir);
|
||||
#endif
|
||||
|
||||
Verbose("\nUsing file locations:\n"
|
||||
"- Homedir: %s\n"
|
||||
@@ -89,6 +131,7 @@ find_dotfile:
|
||||
* Update color string for the <span color="#f00baa">...</span> string
|
||||
*/
|
||||
|
||||
#ifndef CLI
|
||||
void UpdateMarkup(char **string, GdkColor *color)
|
||||
{ int hexval;
|
||||
|
||||
@@ -173,6 +216,7 @@ static void get_color(GdkColor *color, char *value)
|
||||
color->green = hex&0xff00;
|
||||
color->blue = (hex<<8)&0xff00;
|
||||
}
|
||||
#endif
|
||||
|
||||
/***
|
||||
*** Save and restore user settings to/from the .dvdisaster file
|
||||
@@ -196,7 +240,7 @@ void ReadDotfile()
|
||||
/* Get first MAX_LINE_LEN bytes of line, discard the rest */
|
||||
|
||||
line[MAX_LINE_LEN-1] = 1;
|
||||
fgets(line, MAX_LINE_LEN, dotfile);
|
||||
if (!fgets(line, MAX_LINE_LEN, dotfile)) break;
|
||||
if(!line[MAX_LINE_LEN-1]) /* line longer than buffer */
|
||||
while(!feof(dotfile) && fgetc(dotfile) != '\n')
|
||||
;
|
||||
@@ -225,17 +269,21 @@ void ReadDotfile()
|
||||
if(!strcmp(symbol, "last-image")) { g_free(Closure->imageName);
|
||||
if(!strcmp(value, "none"))
|
||||
Closure->imageName = g_strdup("");
|
||||
else Closure->imageName = g_strdup(value); continue;
|
||||
else Closure->imageName = g_strdup(value);
|
||||
continue;
|
||||
}
|
||||
if(!strcmp(symbol, "last-ecc")) { g_free(Closure->eccName);
|
||||
if(!strcmp(value, "none"))
|
||||
Closure->eccName = g_strdup("");
|
||||
else Closure->eccName = g_strdup(value); continue;
|
||||
else Closure->eccName = g_strdup(value);
|
||||
continue;
|
||||
}
|
||||
if(!strcmp(symbol, "adaptive-read")) { Closure->adaptiveRead = atoi(value); continue; }
|
||||
if(!strcmp(symbol, "auto-suffix")) { Closure->autoSuffix = atoi(value); continue; }
|
||||
if(!strcmp(symbol, "bd-size1")) { Closure->bdSize1 = Closure->savedBDSize1 = atoll(value); continue; }
|
||||
if(!strcmp(symbol, "bd-size2")) { Closure->bdSize2 = Closure->savedBDSize2 = atoll(value); continue; }
|
||||
if(!strcmp(symbol, "bd-size3")) { Closure->bdSize3 = Closure->savedBDSize3 = atoll(value); continue; }
|
||||
if(!strcmp(symbol, "bd-size4")) { Closure->bdSize4 = Closure->savedBDSize4 = atoll(value); continue; }
|
||||
if(!strcmp(symbol, "cache-size")) { Closure->cacheMiB = atoi(value); continue; }
|
||||
if(!strcmp(symbol, "cd-size")) { Closure->cdSize = Closure->savedCDSize = atoll(value); continue; }
|
||||
if(!strcmp(symbol, "codec-threads")) { Closure->codecThreads = atoi(value); continue; }
|
||||
@@ -285,6 +333,7 @@ void ReadDotfile()
|
||||
if(!strcmp(symbol, "verbose")) { Closure->verbose = atoi(value); continue; }
|
||||
if(!strcmp(symbol, "welcome-msg")) { Closure->welcomeMessage = atoi(value); continue; }
|
||||
|
||||
#ifndef CLI
|
||||
if(!strcmp(symbol, "positive-text")) { get_color(Closure->greenText, value);
|
||||
UpdateMarkup(&Closure->greenMarkup, Closure->greenText);
|
||||
continue;
|
||||
@@ -302,11 +351,12 @@ void ReadDotfile()
|
||||
if(!strcmp(symbol, "ignored-sector")) { get_color(Closure->blueSector, value); continue; }
|
||||
if(!strcmp(symbol, "highlit-sector")) { get_color(Closure->whiteSector, value); continue; }
|
||||
if(!strcmp(symbol, "present-sector")) { get_color(Closure->darkSector, value); continue; }
|
||||
#endif
|
||||
}
|
||||
|
||||
if(fclose(dotfile))
|
||||
g_fprintf(stderr, "Error closing configuration file %s: %s\n",
|
||||
Closure->dotFile, strerror(errno));
|
||||
g_printf("Error closing configuration file %s: %s\n",
|
||||
Closure->dotFile, strerror(errno));
|
||||
}
|
||||
|
||||
static void update_dotfile()
|
||||
@@ -325,7 +375,7 @@ static void update_dotfile()
|
||||
|
||||
dotfile = portable_fopen(Closure->dotFile, "wb");
|
||||
if(!dotfile)
|
||||
{ g_fprintf(stderr, "Could not open configuration file %s: %s\n",
|
||||
{ g_printf("Could not open configuration file %s: %s\n",
|
||||
Closure->dotFile, strerror(errno));
|
||||
return;
|
||||
}
|
||||
@@ -344,6 +394,8 @@ static void update_dotfile()
|
||||
g_fprintf(dotfile, "auto-suffix: %d\n", Closure->autoSuffix);
|
||||
g_fprintf(dotfile, "bd-size1: %lld\n", (long long int)Closure->bdSize1);
|
||||
g_fprintf(dotfile, "bd-size2: %lld\n", (long long int)Closure->bdSize2);
|
||||
g_fprintf(dotfile, "bd-size3: %lld\n", (long long int)Closure->bdSize3);
|
||||
g_fprintf(dotfile, "bd-size4: %lld\n", (long long int)Closure->bdSize4);
|
||||
g_fprintf(dotfile, "cache-size: %d\n", Closure->cacheMiB);
|
||||
g_fprintf(dotfile, "cd-size: %lld\n", (long long int)Closure->cdSize);
|
||||
g_fprintf(dotfile, "codec-threads: %d\n", Closure->codecThreads);
|
||||
@@ -387,6 +439,7 @@ static void update_dotfile()
|
||||
g_fprintf(dotfile, "verbose: %d\n", Closure->verbose);
|
||||
g_fprintf(dotfile, "welcome-msg: %d\n\n", Closure->welcomeMessage);
|
||||
|
||||
#ifndef CLI
|
||||
save_colors(dotfile, "positive-text", Closure->greenText);
|
||||
save_colors(dotfile, "negative-text", Closure->redText);
|
||||
save_colors(dotfile, "bar-color", Closure->barColor);
|
||||
@@ -398,10 +451,11 @@ static void update_dotfile()
|
||||
save_colors(dotfile, "ignored-sector", Closure->blueSector);
|
||||
save_colors(dotfile, "highlit-sector", Closure->whiteSector);
|
||||
save_colors(dotfile, "present-sector", Closure->darkSector);
|
||||
#endif
|
||||
|
||||
if(fclose(dotfile))
|
||||
g_fprintf(stderr, "Error closing configuration file %s: %s\n",
|
||||
Closure->dotFile, strerror(errno));
|
||||
g_printf("Error closing configuration file %s: %s\n",
|
||||
Closure->dotFile, strerror(errno));
|
||||
}
|
||||
|
||||
/***
|
||||
@@ -419,11 +473,20 @@ void InitClosure()
|
||||
|
||||
/* Extract the version string */
|
||||
|
||||
#if defined(HAVE_UNSTABLE_RELEASE) && defined(PATCHLEVEL)
|
||||
Closure->cookedVersion = g_strdup_printf("%s (unstable-unofficial patchlevel %d)", VERSION, PATCHLEVEL);
|
||||
Closure->releaseFlags = MFLAG_DEVEL;
|
||||
#elif defined(HAVE_UNSTABLE_RELEASE)
|
||||
Closure->cookedVersion = g_strdup_printf("%s (unstable)", VERSION);
|
||||
Closure->releaseFlags = MFLAG_DEVEL;
|
||||
#else
|
||||
Closure->cookedVersion = g_strdup(VERSION);
|
||||
#endif
|
||||
|
||||
/* Generate a more comprehensive version string */
|
||||
|
||||
#if defined(SYS_LINUX) || defined(SYS_FREEBSD) || defined(SYS_NETBSD)
|
||||
#if defined(SYS_LINUX) || defined(SYS_FREEBSD) || defined(SYS_KFREEBSD) || \
|
||||
defined(SYS_NETBSD) || defined(SYS_HURD)
|
||||
#ifdef HAVE_64BIT
|
||||
#define BITNESS_STRING " 64bit"
|
||||
#else
|
||||
@@ -433,7 +496,7 @@ void InitClosure()
|
||||
#define BITNESS_STRING ""
|
||||
#endif
|
||||
|
||||
Closure->versionString = g_strdup_printf("dvdisaster %s build %d, %s%s",
|
||||
Closure->versionString = g_strdup_printf("dvdisaster %s build %s, %s%s",
|
||||
Closure->cookedVersion, buildCount, SYS_NAME, BITNESS_STRING);
|
||||
|
||||
/* Replace the dot with a locale-resistant separator */
|
||||
@@ -465,6 +528,7 @@ void InitClosure()
|
||||
Closure->deviceNames = g_ptr_array_new();
|
||||
Closure->deviceNodes = g_ptr_array_new();
|
||||
Closure->viewer = g_strdup("xdg-open");
|
||||
Closure->browser = g_strdup("xdg-open");
|
||||
Closure->methodList = g_ptr_array_new();
|
||||
Closure->methodName = g_strdup("RS01");
|
||||
Closure->dDumpDir = g_strdup(Closure->homeDir);
|
||||
@@ -483,6 +547,8 @@ void InitClosure()
|
||||
Closure->welcomeMessage = 1;
|
||||
Closure->useSCSIDriver = DRIVER_SG;
|
||||
Closure->dsmVersion = 1;
|
||||
Closure->noBdrDefectManagement = FALSE;
|
||||
Closure->ignoreRS03header = FALSE;
|
||||
|
||||
/* default sizes for typical CD and DVD media */
|
||||
|
||||
@@ -491,7 +557,10 @@ void InitClosure()
|
||||
Closure->dvdSize2 = Closure->savedDVDSize2 = DVD_DL_SIZE;
|
||||
Closure->bdSize1 = Closure->savedBDSize1 = BD_SL_SIZE;
|
||||
Closure->bdSize2 = Closure->savedBDSize2 = BD_DL_SIZE;
|
||||
Closure->bdSize3 = Closure->savedBDSize3 = BDXL_TL_SIZE;
|
||||
Closure->bdSize4 = Closure->savedBDSize4 = BDXL_QL_SIZE;
|
||||
|
||||
#ifndef CLI
|
||||
Closure->logString = g_string_sized_new(1024);
|
||||
Closure->logLock = g_malloc0(sizeof(GMutex));
|
||||
g_mutex_init(Closure->logLock);
|
||||
@@ -513,6 +582,7 @@ void InitClosure()
|
||||
Closure->darkSector = g_malloc0(sizeof(GdkColor));
|
||||
|
||||
DefaultColors();
|
||||
#endif
|
||||
|
||||
memset(Closure->bs, '\b', 255);
|
||||
memset(Closure->sp, ' ', 255);
|
||||
@@ -535,21 +605,6 @@ void LocalizedFileDefaults()
|
||||
Closure->dDumpPrefix = g_strdup(_("sector-"));
|
||||
}
|
||||
|
||||
/*
|
||||
* Clear the CRC cache
|
||||
*/
|
||||
|
||||
void ClearCrcCache(void)
|
||||
{ if(Closure->crcCache)
|
||||
g_free(Closure->crcCache);
|
||||
if(Closure->crcImageName)
|
||||
g_free(Closure->crcImageName);
|
||||
|
||||
Closure->crcCache = NULL;
|
||||
Closure->crcImageName = NULL;
|
||||
memset(Closure->md5Cache, 0, 16);
|
||||
}
|
||||
|
||||
/*
|
||||
* Clean up properly
|
||||
*/
|
||||
@@ -572,11 +627,12 @@ void cond_free_ptr_array(GPtrArray *a)
|
||||
|
||||
void FreeClosure()
|
||||
{
|
||||
#ifndef CLI
|
||||
if(Closure->guiMode)
|
||||
#endif
|
||||
/* in CLI-only mode, always update dotfile */
|
||||
update_dotfile();
|
||||
|
||||
ClearCrcCache();
|
||||
|
||||
cond_free(Closure->cookedVersion);
|
||||
cond_free(Closure->versionString);
|
||||
cond_free(Closure->device);
|
||||
@@ -596,11 +652,13 @@ void FreeClosure()
|
||||
cond_free(Closure->binDir);
|
||||
cond_free(Closure->docDir);
|
||||
cond_free(Closure->viewer);
|
||||
cond_free(Closure->browser);
|
||||
cond_free(Closure->errorTitle);
|
||||
cond_free(Closure->simulateCD);
|
||||
cond_free(Closure->dDumpDir);
|
||||
cond_free(Closure->dDumpPrefix);
|
||||
|
||||
#ifndef CLI
|
||||
if(Closure->prefsContext)
|
||||
FreePreferences(Closure->prefsContext);
|
||||
|
||||
@@ -651,6 +709,7 @@ void FreeClosure()
|
||||
|
||||
if(Closure->readAdaptiveErrorMsg)
|
||||
g_free(Closure->readAdaptiveErrorMsg);
|
||||
#endif
|
||||
|
||||
g_free(Closure);
|
||||
}
|
||||
|
||||
36
configure
vendored
@@ -3,10 +3,17 @@
|
||||
# Load the shell functions needed for the rest of this script.
|
||||
|
||||
BASH_BASED_CONFIGURE=./scripts/bash-based-configure
|
||||
REQUIRED_CFLAGS="-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I."
|
||||
RECOMMENDED_CFLAGS="-O2 -fomit-frame-pointer -Wall"
|
||||
REQUIRED_CFLAGS="-DPATCHLEVEL=3 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -I."
|
||||
RECOMMENDED_CFLAGS="-O2 -fomit-frame-pointer -Wall -Wno-deprecated-declarations -Wno-stringop-truncation"
|
||||
DEBUG_CFLAGS="-ggdb -Wall"
|
||||
|
||||
if [ "$CLI_ONLY" = 1 ]; then
|
||||
REQUIRED_CFLAGS="-DCLI $REQUIRED_CFLAGS"
|
||||
echo '#define FLAVOR CLI' > build.h
|
||||
else
|
||||
echo '#define FLAVOR GUI' > build.h
|
||||
fi
|
||||
|
||||
CFG_USE_CYGWIN="no" # do not change
|
||||
|
||||
if test -e $BASH_BASED_CONFIGURE; then
|
||||
@@ -19,7 +26,9 @@ fi
|
||||
|
||||
# Set the package name and version
|
||||
|
||||
PACKAGE dvdisaster 0.79.5
|
||||
PACKAGE dvdisaster 0.79.6
|
||||
CFG_HAVE_OPTIONS="$CFG_HAVE_OPTIONS -DHAVE_UNSTABLE_RELEASE"
|
||||
|
||||
|
||||
# Check for some essential tools.
|
||||
|
||||
@@ -46,7 +55,9 @@ GET_BUILDTMP
|
||||
PRINT_MESSAGE "\nLooking for includes and libraries:"
|
||||
|
||||
REQUIRE_GLIB2 2 32 0
|
||||
REQUIRE_GTK2 2 6 0 WITH_THREADS
|
||||
if [ "$CLI_ONLY" != 1 ]; then
|
||||
REQUIRE_GTK2 2 6 0 WITH_THREADS
|
||||
fi
|
||||
echo
|
||||
|
||||
if ! CHECK_INCLUDE locale.h locale || ! CHECK_INCLUDE libintl.h intl ; then
|
||||
@@ -108,10 +119,12 @@ if ! EXECUTE_PROGRAM "xgettext --help" xgettext \
|
||||
cfg_force_with_nls=no
|
||||
fi
|
||||
|
||||
if ! EXECUTE_PROGRAM "gdk-pixbuf-csource --help" gdk_pixbuf_csource ; then
|
||||
echo "* gdk-pixbuf not installed"
|
||||
echo "* or path to gdk-pixbuf-csource is missing."
|
||||
exit 1
|
||||
if [ "$CLI_ONLY" != 1 ]; then
|
||||
if ! EXECUTE_PROGRAM "gdk-pixbuf-csource --help" gdk_pixbuf_csource ; then
|
||||
echo "* gdk-pixbuf not installed"
|
||||
echo "* or path to gdk-pixbuf-csource is missing."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Evaluate the --with* customization options
|
||||
@@ -124,7 +137,6 @@ WITH_OPTION embedded-src-path yes "[yes | no]"
|
||||
PRINT_MESSAGE "\nDebugging options (do not use in production system):"
|
||||
|
||||
WITH_OPTION memdebug no "[no | yes]"
|
||||
WITH_OPTION efence no "[no | yes]"
|
||||
|
||||
if test "$cfg_with_efence" == "yes"; then
|
||||
if ! CHECK_LIBRARY efence malloc efence; then
|
||||
@@ -150,6 +162,9 @@ cfiles="method-link.c"
|
||||
ofiles="$BUILDTMP/method-link.o"
|
||||
|
||||
for cfile in *.c; do
|
||||
if [ "$CLI_ONLY" = 1 ]; then
|
||||
grep -q 'DVDISASTER_GUI_FILE' "$cfile" && continue
|
||||
fi
|
||||
cfile_prefix=`echo $cfile | sed -e 's/\.c//'`
|
||||
cfiles="$cfiles $cfile"
|
||||
ofiles="$ofiles $BUILDTMP/$cfile_prefix.o"
|
||||
@@ -159,6 +174,9 @@ done
|
||||
echo
|
||||
echo -e "\nCFG_CFILES = $cfiles" >> Makefile.config
|
||||
echo "CFG_OFILES = $ofiles" >> Makefile.config
|
||||
if [ "$CLI_ONLY" != 1 ]; then
|
||||
echo "ICONS = inlined-icons.h" >> Makefile.config
|
||||
fi
|
||||
|
||||
# Create the method wrapper
|
||||
|
||||
|
||||
@@ -6,7 +6,8 @@ Comment=Additional error protection for CD/DVD media
|
||||
Comment[cs]=Přídavná ochrana pro média CD/DVD
|
||||
Comment[de]=Zusätzliche Fehlerkorrektur für CD/DVD
|
||||
Exec=dvdisaster
|
||||
Icon=dvdisaster48.png
|
||||
Icon=dvdisaster
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Application;System;
|
||||
Keywords=CD;DVD;media;data loss;scratch;aging;error;protection;recovery;
|
||||
|
||||
2
crc32.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
* CRC32 code based upon public domain code by Ross Williams (see notes below)
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
|
||||
211
crcbuf.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -26,27 +26,133 @@
|
||||
#include "rs02-includes.h"
|
||||
|
||||
/***
|
||||
*** Create an uninitialized CRC buffer
|
||||
*** Create a CRC buffer ready for accumulating CRC and MD5 sums
|
||||
***/
|
||||
|
||||
CrcBuf *CreateCrcBuf(guint64 sectors)
|
||||
{ CrcBuf *cb = g_malloc(sizeof(CrcBuf));
|
||||
CrcBuf *CreateCrcBuf(Image *image)
|
||||
{ CrcBuf *cb = g_malloc0(sizeof(CrcBuf));
|
||||
|
||||
cb->crcbuf = g_malloc(sectors * sizeof(guint32));
|
||||
cb->size = sectors;
|
||||
cb->valid = CreateBitmap0(sectors);
|
||||
/* MD5 sum related data */
|
||||
|
||||
cb->md5Ctxt = g_malloc(sizeof(struct MD5Context));
|
||||
MD5Init(cb->md5Ctxt);
|
||||
cb->md5State = MD5_BUILDING;
|
||||
cb->lastSector = 0;
|
||||
memset(cb->dataMD5sum, 0, 16);
|
||||
memset(cb->imageMD5sum, 0, 16);
|
||||
|
||||
/* image identification */
|
||||
|
||||
if(image->type == IMAGE_FILE)
|
||||
cb->imageName = g_strdup(image->file->path);
|
||||
|
||||
/* For augmented images we need both the pure data size and the full size
|
||||
in order to compute MD5 sums for both. Depending on what the user wants
|
||||
to do with the image (create an ecc file or re-augment the image) we'll
|
||||
need the first or the last version.
|
||||
There's one catch, though: If the augmented image is accompanied with
|
||||
an ecc file, we must treat the image as raw data; e.g. do not set
|
||||
the data size to the portion protected by the augmented ecc.
|
||||
Otherwise, the CRC sums from the ecc file which do also protect
|
||||
the augmented ecc part will become unreachable. */
|
||||
|
||||
if(image->eccHeader && !image->eccFileHeader) /* augmented image, and no ecc file? */
|
||||
{ cb->dataSectors = uchar_to_gint64(image->eccHeader->sectors);
|
||||
if(image->type == IMAGE_FILE)
|
||||
cb->allSectors = image->sectorSize;
|
||||
else cb->allSectors = image->dh->sectors;
|
||||
}
|
||||
else
|
||||
{ if(image->type == IMAGE_FILE)
|
||||
cb->dataSectors = cb->allSectors = image->sectorSize;
|
||||
else cb->dataSectors = cb->allSectors = image->dh->sectors;
|
||||
}
|
||||
|
||||
/* Note: The following statement is not correct for RS03.
|
||||
It does not hurt since RS03 will set the correct value when
|
||||
the CrcBuf is created via RS03GetCrcBuf(), and in all other
|
||||
cases it does currently not matter. Especially, CRC sums
|
||||
created during an image read are not used when subsequently
|
||||
creating new ecc data. */
|
||||
|
||||
cb->coveredSectors = cb->dataSectors;
|
||||
|
||||
/* Extract the fingerprint */
|
||||
|
||||
if(image->fpState == FP_PRESENT)
|
||||
{ memcpy(cb->mediumFP, image->imageFP, 16);
|
||||
cb->fpValid = TRUE;
|
||||
}
|
||||
cb->fpSector = image->fpSector;
|
||||
|
||||
/* CRC sum array */
|
||||
|
||||
cb->crcbuf = g_malloc(cb->allSectors * sizeof(guint32));
|
||||
cb->crcSize = cb->allSectors;
|
||||
cb->valid = CreateBitmap0(cb->allSectors);
|
||||
|
||||
image->crcCache = cb;
|
||||
return cb;
|
||||
}
|
||||
|
||||
/***
|
||||
*** Test a 2048 byte block against the checksum in the buffer
|
||||
***/
|
||||
/*
|
||||
* Add a 2048 byte block into the checksum buffer
|
||||
*/
|
||||
|
||||
int AddSectorToCrcBuffer(CrcBuf *cb, int mode, guint64 idx, unsigned char *buf, int buf_size)
|
||||
{ guint32 crc;
|
||||
|
||||
if(idx < 0 || idx >= cb->crcSize)
|
||||
return CRC_OUTSIDE_BOUND;
|
||||
|
||||
/* Update the CRC sums */
|
||||
|
||||
if( (mode & CRCBUF_UPDATE_CRC)
|
||||
|| ((mode & CRCBUF_UPDATE_CRC_AFTER_DATA) && idx >= cb->coveredSectors))
|
||||
{ crc = Crc32(buf, 2048); /* should be buf_size, but remains at 2048 for backwards compatibility. */
|
||||
cb->crcbuf[idx] = crc; /* does not harm except that the last sector is padded with the contents */
|
||||
SetBit(cb->valid, idx); /* of the previous sector when reading an image file whole size is not */
|
||||
} /* a multiple of 2048 */
|
||||
|
||||
/* Update the MD5 sums */
|
||||
|
||||
if(!(mode & CRCBUF_UPDATE_MD5))
|
||||
return CRC_GOOD;
|
||||
|
||||
if(cb->lastSector != idx) /* sector out of order -> md5sum dead */
|
||||
{ cb->md5State = MD5_INVALID;
|
||||
return CRC_BAD;
|
||||
}
|
||||
cb->lastSector++;
|
||||
|
||||
if(idx <= cb->allSectors-1)
|
||||
MD5Update(cb->md5Ctxt, buf, buf_size);
|
||||
|
||||
if(idx == cb->dataSectors-1)
|
||||
{ MD5Context *dataCtxt = alloca(sizeof(MD5Context));
|
||||
|
||||
memcpy(dataCtxt, cb->md5Ctxt, sizeof(MD5Context));
|
||||
MD5Final(cb->dataMD5sum, dataCtxt);
|
||||
cb->md5State |= MD5_DATA_COMPLETE;
|
||||
}
|
||||
|
||||
if(idx == cb->allSectors-1)
|
||||
{ MD5Final(cb->imageMD5sum, cb->md5Ctxt);
|
||||
cb->md5State |= MD5_IMAGE_COMPLETE;
|
||||
cb->md5State &= ~MD5_BUILDING;
|
||||
}
|
||||
|
||||
return CRC_GOOD;
|
||||
}
|
||||
|
||||
/*
|
||||
* Test a 2048 byte block against the checksum in the buffer
|
||||
*/
|
||||
|
||||
int CheckAgainstCrcBuffer(CrcBuf *cb, gint64 idx, unsigned char *buf)
|
||||
{ guint32 crc;
|
||||
|
||||
if(idx < 0 || idx >= cb->size)
|
||||
if(idx < 0 || idx >= cb->crcSize)
|
||||
return CRC_OUTSIDE_BOUND;
|
||||
|
||||
crc = Crc32(buf, 2048);
|
||||
@@ -60,6 +166,36 @@ int CheckAgainstCrcBuffer(CrcBuf *cb, gint64 idx, unsigned char *buf)
|
||||
return CRC_BAD;
|
||||
}
|
||||
|
||||
/*
|
||||
* Make sure that the current image and ecc file match the
|
||||
* cached CRC and md5 informaton
|
||||
*/
|
||||
|
||||
int CrcBufValid(CrcBuf *crcbuf, Image *image, EccHeader *eh)
|
||||
{
|
||||
if(!crcbuf)
|
||||
{ Verbose("CrcBufValid: crcbuf==NULL\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* if still in building state we do not have all CRC sums */
|
||||
|
||||
if(crcbuf->md5State & MD5_BUILDING)
|
||||
{ Verbose("CrcBufValid: NO, still building\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* presence of one MD5 sum suffices (data md5sum may not be present
|
||||
under some circumstances) */
|
||||
|
||||
if((!(crcbuf->md5State & MD5_COMPLETE)))
|
||||
{ Verbose("CrcBufValid: NOT complete\n");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
Verbose("CrcBufValid: buffer VALID\n");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***
|
||||
*** Clean up
|
||||
@@ -67,7 +203,60 @@ int CheckAgainstCrcBuffer(CrcBuf *cb, gint64 idx, unsigned char *buf)
|
||||
|
||||
void FreeCrcBuf(CrcBuf *cb)
|
||||
{
|
||||
if(!cb)
|
||||
{ Verbose("FreeCrcBuf - nothing to do\n");
|
||||
return;
|
||||
}
|
||||
|
||||
g_free(cb->crcbuf);
|
||||
FreeBitmap(cb->valid);
|
||||
if(cb->imageName)
|
||||
g_free(cb->imageName);
|
||||
if(cb->md5Ctxt)
|
||||
g_free(cb->md5Ctxt);
|
||||
g_free(cb);
|
||||
|
||||
Verbose("FreeCrcBuf - buffer cleared\n");
|
||||
}
|
||||
|
||||
/***
|
||||
*** Debugging output
|
||||
***/
|
||||
|
||||
void PrintCrcBuf(CrcBuf *cb)
|
||||
{ char digest[33];
|
||||
guint64 i,missing=0;
|
||||
|
||||
if(!Closure->verbose)
|
||||
return;
|
||||
|
||||
PrintLog("CrcBuf contents, image path %s:\n", cb->imageName ? cb->imageName : "none (medium)" );
|
||||
PrintLog(" crcSize: %lld, dataSectors: %lld, coveredSectors: %lld, allSectors: %lld\n",
|
||||
cb->crcSize, cb->dataSectors, cb->coveredSectors, cb->allSectors);
|
||||
|
||||
PrintLog(" md5State:");
|
||||
if(cb->md5State)
|
||||
{ if(cb->md5State & MD5_BUILDING) PrintLog(" building");
|
||||
if(cb->md5State & MD5_DATA_COMPLETE) PrintLog(" data_complete");
|
||||
if(cb->md5State & MD5_IMAGE_COMPLETE) PrintLog(" image_complete");
|
||||
}
|
||||
else PrintLog(" invalid");
|
||||
PrintLog("\n");
|
||||
|
||||
if(cb->md5State & MD5_COMPLETE)
|
||||
{ AsciiDigest(digest, cb->dataMD5sum);
|
||||
PrintLog(" data: %s\n", digest);
|
||||
AsciiDigest(digest, cb->imageMD5sum);
|
||||
PrintLog(" full: %s\n", digest);
|
||||
}
|
||||
AsciiDigest(digest, cb->mediumFP);
|
||||
if(cb->fpValid)
|
||||
PrintLog(" fp sector: %d; %s\n", cb->fpSector, digest);
|
||||
else PrintLog(" fp sector: %d; invalid\n", cb->fpSector);
|
||||
|
||||
for(i=0; i<cb->crcSize; i++)
|
||||
if(!GetBit(cb->valid, i))
|
||||
{ missing++;
|
||||
}
|
||||
PrintLog(" missing crcs: %lld\n", missing);
|
||||
}
|
||||
|
||||
5
curve.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -19,6 +19,7 @@
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with dvdisaster. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// DVDISASTER_GUI_FILE
|
||||
|
||||
#include "dvdisaster.h"
|
||||
|
||||
@@ -123,7 +124,7 @@ int CurveLogY(Curve *curve, gdouble y) /* not really a log */
|
||||
hfact = (gdouble)(curve->bottomLY - curve->topLY);
|
||||
|
||||
if(y==1) return curve->bottomLY - ((log(2)/log(curve->logMaxY)) * hfact)/2;
|
||||
return curve->bottomLY - (log(y)/log(curve->logMaxY)) * hfact;
|
||||
else return curve->bottomLY - (log(y)/log(curve->logMaxY)) * hfact;
|
||||
}
|
||||
|
||||
/***
|
||||
|
||||
153
debian/changelog
vendored
@@ -1,3 +1,150 @@
|
||||
dvdisaster (0.79.6-6) UNRELEASED; urgency=medium
|
||||
|
||||
* Use secure URI in debian/watch.
|
||||
* Update standards version, no changes needed.
|
||||
* Set debhelper-compat version in Build-Depends.
|
||||
* Update standards version to 4.4.1, no changes needed.
|
||||
* Remove obsolete fields Name, Contact from debian/upstream/metadata.
|
||||
* Fix day-of-week for changelog entries 0.71~devel23-4.
|
||||
|
||||
-- Debian Janitor <janitor@jelmer.uk> Tue, 06 Aug 2019 16:08:20 +0000
|
||||
|
||||
dvdisaster (0.79.6-5) experimental; urgency=medium
|
||||
|
||||
* Merge changes from 0.79.5-9.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Sat, 02 Feb 2019 16:05:29 +1100
|
||||
|
||||
dvdisaster (0.79.6-4) experimental; urgency=medium
|
||||
|
||||
* Merge changes from 0.79.5-8.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Fri, 01 Feb 2019 23:13:16 +1100
|
||||
|
||||
dvdisaster (0.79.6-3) experimental; urgency=medium
|
||||
|
||||
* Merge changes from 0.79.5-7.
|
||||
* Update gbp.conf for debian/experimental branch.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Thu, 31 Jan 2019 08:59:58 +1100
|
||||
|
||||
dvdisaster (0.79.6-2) experimental; urgency=medium
|
||||
|
||||
[ TANIGUCHI Takaki ]
|
||||
* Update Vcs-* to salsa.debian.org.
|
||||
|
||||
[ Carlos Maddela ]
|
||||
* Build with DH compat level 11.
|
||||
* Indicate compliance with Debian Policy 4.1.4.
|
||||
* Add machine-readable upstream metadata.
|
||||
* Update debian/copyright.
|
||||
* Update location of PDF manual registered with doc-base (required
|
||||
as a result of DH compat level change).
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Sat, 23 Jun 2018 05:41:03 +1000
|
||||
|
||||
dvdisaster (0.79.6-1) experimental; urgency=medium
|
||||
|
||||
* New upstream development version [0.79.6].
|
||||
* Rebase patches.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Thu, 21 Dec 2017 05:51:54 +1100
|
||||
dvdisaster (0.79.5-9) unstable; urgency=medium
|
||||
|
||||
* Make sure that the upstream changelog remains uncompressed so
|
||||
that the application can display it.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Sat, 02 Feb 2019 13:32:34 +1100
|
||||
|
||||
dvdisaster (0.79.5-9) unstable; urgency=medium
|
||||
|
||||
* Make sure that the upstream changelog remains uncompressed so
|
||||
that the application can display it.
|
||||
* Suggest to install dvdisaster-doc in error message, if the PDF manual
|
||||
cannot be found.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Sat, 02 Feb 2019 15:20:23 +1100
|
||||
|
||||
dvdisaster (0.79.5-8) unstable; urgency=medium
|
||||
|
||||
* Fix parallel build of locale strings.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Fri, 01 Feb 2019 23:03:13 +1100
|
||||
|
||||
dvdisaster (0.79.5-7) unstable; urgency=medium
|
||||
|
||||
* Add debian/gbp.conf to conform with DEP14 conventions.
|
||||
* Build with Debhelper compat level 12.
|
||||
* Set "Rules-Requires-Root: no".
|
||||
* Simplify process by which mutable files are backed up and restored.
|
||||
* Build as verbosely as possible.
|
||||
* Fix location of manual.
|
||||
* Fix dh_auto_build overrides to take advantage of parallel builds.
|
||||
* Fix format security compilation warning in GCC-8.
|
||||
* Change homepage to one archived at web.archive.org.
|
||||
http://dvdisaster.net has been unavailable for a while now.
|
||||
Not certain if this is permanent though, as the domain name still
|
||||
exists for mail.
|
||||
* Add support for nodoc build profile.
|
||||
* Add more details to upstream metadata.
|
||||
* Indicate compliance with Debian Policy 4.3.0.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Thu, 31 Jan 2019 07:10:46 +1100
|
||||
|
||||
dvdisaster (0.79.5-6) unstable; urgency=medium
|
||||
|
||||
[ TANIGUCHI Takaki ]
|
||||
* change Vcs-* path
|
||||
|
||||
[ Carlos Maddela ]
|
||||
* Build with DH compat level 11.
|
||||
* Indicate compliance with Debian Policy 4.1.4.
|
||||
* Add machine-readable upstream metadata.
|
||||
* Update debian/copyright.
|
||||
* Update location of PDF manual registered with doc-base (required
|
||||
as a result of DH compat level change).
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Sat, 23 Jun 2018 05:01:27 +1000
|
||||
|
||||
dvdisaster (0.79.5-5) unstable; urgency=medium
|
||||
|
||||
* Update Vcs-* to salsa.debian.org
|
||||
* Bump Standards-Version to 4.1.3
|
||||
|
||||
-- TANIGUCHI Takaki <takaki@debian.org> Sat, 27 Jan 2018 23:34:08 +0900
|
||||
|
||||
dvdisaster (0.79.5-4) unstable; urgency=medium
|
||||
|
||||
* Use complete Debian revision number as build number, instead of
|
||||
just the numeric part.
|
||||
* Re-implement scripts/time-stamper.bash without direct calls to
|
||||
dpkg-parsechangelog.
|
||||
* Call ./configure script directly, instead of relying on debhelper,
|
||||
to resolve incompatibilities with Bash-based script.
|
||||
* Use alternative way of installing icons to remove dependency on
|
||||
dh-exec.
|
||||
* Drop redundant dependency on dpkg-dev.
|
||||
* Reproducibly generate PDF documentation from TeX sources.
|
||||
* Remove trailing white space from debian/changelog.
|
||||
* Remove unnecessary Testsuite header from debian/control.
|
||||
* Indicate compliance with Debian Policy 4.1.2.
|
||||
* Suppress debian-watch-uses-insecure-uri Lintian warning.
|
||||
* Honour LDFLAGS set by dpkg-buildflags in building all binaries.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Thu, 21 Dec 2017 03:14:14 +1100
|
||||
|
||||
dvdisaster (0.79.5-3) unstable; urgency=medium
|
||||
|
||||
* Team upload.
|
||||
* Fix another build failure on kFreeBSD.
|
||||
* Bump Standards Version to 4.0.1.
|
||||
* Regenerate patches with git version 2.14.0.
|
||||
* Do not suppress the display of compilation commands,
|
||||
so that build logs may be analysed by blhc.
|
||||
* Update uploaders list.
|
||||
|
||||
-- Carlos Maddela <e7appew@gmail.com> Mon, 14 Aug 2017 14:52:56 +1000
|
||||
|
||||
dvdisaster (0.79.5-2) unstable; urgency=medium
|
||||
|
||||
[ Carlos Maddela ]
|
||||
@@ -114,7 +261,7 @@ dvdisaster (0.72.4-1) unstable; urgency=low
|
||||
|
||||
dvdisaster (0.72.3-2) unstable; urgency=low
|
||||
|
||||
* debian/patches/libpng15: Build with libpng15. (Closes: #649555)
|
||||
* debian/patches/libpng15: Build with libpng15. (Closes: #649555)
|
||||
|
||||
-- TANIGUCHI Takaki <takaki@debian.org> Mon, 19 Mar 2012 11:08:53 +0900
|
||||
|
||||
@@ -161,7 +308,7 @@ dvdisaster (0.72.1-1) unstable; urgency=low
|
||||
* New maintainer (Closes: 543876)
|
||||
* new upstream version.
|
||||
* debian/control: update Homepage:
|
||||
* debian/README.source: create
|
||||
* debian/README.source: create
|
||||
* debian/control: add Vcs-*.
|
||||
|
||||
-- TANIGUCHI Takaki <takaki@debian.org> Mon, 23 Nov 2009 10:29:09 +0900
|
||||
@@ -264,7 +411,7 @@ dvdisaster (0.71~devel23-4) unstable; urgency=low
|
||||
|
||||
* Fixed clean target in rules (Closes: #442559).
|
||||
|
||||
-- Daniel Baumann <daniel@debian.org> Sun, 17 Sep 2007 00:37:00 +0200
|
||||
-- Daniel Baumann <daniel@debian.org> Mon, 17 Sep 2007 00:37:00 +0200
|
||||
|
||||
dvdisaster (0.71~devel23-3) unstable; urgency=medium
|
||||
|
||||
|
||||
1
debian/compat
vendored
@@ -1 +0,0 @@
|
||||
10
|
||||
27
debian/control
vendored
@@ -3,24 +3,24 @@ Section: otherosfs
|
||||
Priority: optional
|
||||
Maintainer: Optical Media Tools Team <pkg-opt-media-team@lists.alioth.debian.org>
|
||||
Uploaders: TANIGUCHI Takaki <takaki@debian.org>,
|
||||
Rogério Brito <rbrito@ime.usp.br>
|
||||
Build-Depends: debhelper (>= 10),
|
||||
dh-exec,
|
||||
dpkg-dev (>= 1.16.1.1),
|
||||
Rogério Brito <rbrito@ime.usp.br>,
|
||||
Carlos Maddela <e7appew@gmail.com>
|
||||
Build-Depends: debhelper (>= 12),
|
||||
gettext,
|
||||
libbz2-dev,
|
||||
libcam-dev [kfreebsd-any],
|
||||
libgtk2.0-dev,
|
||||
libpng-dev,
|
||||
pkg-config
|
||||
# Build-Depends-Indep: texlive-fonts-recommended,
|
||||
# texlive-latex-base,
|
||||
# texlive-latex-extra
|
||||
Standards-Version: 4.0.0
|
||||
Vcs-Browser: https://anonscm.debian.org/git/pkg-opt-media/dvdisaster.git
|
||||
Vcs-Git: https://anonscm.debian.org/git/pkg-opt-media/dvdisaster.git
|
||||
Homepage: http://dvdisaster.net/
|
||||
Testsuite: autopkgtest
|
||||
pkg-config,
|
||||
debhelper-compat (= 12)
|
||||
Build-Depends-Indep: texlive-fonts-recommended <!nodoc>,
|
||||
texlive-latex-base <!nodoc>,
|
||||
texlive-latex-extra <!nodoc>
|
||||
Standards-Version: 4.4.1
|
||||
Vcs-Browser: https://salsa.debian.org/optical-media-team/dvdisaster
|
||||
Vcs-Git: https://salsa.debian.org/optical-media-team/dvdisaster.git
|
||||
Homepage: https://web.archive.org/web/20180428070843/http://dvdisaster.net/
|
||||
Rules-Requires-Root: no
|
||||
|
||||
Package: dvdisaster
|
||||
Architecture: any
|
||||
@@ -32,6 +32,7 @@ Description: data loss/scratch/aging protection for CD/DVD media
|
||||
used to recover unreadable sectors if the disc becomes damaged at a later time.
|
||||
|
||||
Package: dvdisaster-doc
|
||||
Build-Profiles: <!nodoc>
|
||||
Section: doc
|
||||
Architecture: all
|
||||
Multi-Arch: foreign
|
||||
|
||||
6
debian/copyright
vendored
@@ -1,7 +1,7 @@
|
||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Contact: Carsten Gnörlich <carsten@dvdisaster.org>
|
||||
Upstream-Name: dvdisaster
|
||||
Source: http://dvdisaster.net/
|
||||
Source: https://web.archive.org/web/20180428070843/http://dvdisaster.net/
|
||||
|
||||
Files: *
|
||||
Copyright: 2004–2015, Carsten Gnörlich <carsten@dvdisaster.org>
|
||||
@@ -9,9 +9,9 @@ License: GPL-3+
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2005–2009, Daniel Baumann <daniel@debian.org>
|
||||
2009–2012, TANIGUCHI Takaki <takaki@debian.org>
|
||||
2009–2018, TANIGUCHI Takaki <takaki@debian.org>
|
||||
2009–2010, Rogério Brito <rbrito@ime.usp.br>
|
||||
2016, Carlos Maddela <e7appew@gmail.com>
|
||||
2016–2018, Carlos Maddela <e7appew@gmail.com>
|
||||
License: GPL-2+
|
||||
|
||||
License: GPL-2+
|
||||
|
||||
2
debian/dvdisaster-doc.doc-base
vendored
@@ -7,4 +7,4 @@ Abstract: This manual describes what dvdisaster is and how it can be used
|
||||
Section: File Management
|
||||
|
||||
Format: PDF
|
||||
Files: /usr/share/doc/dvdisaster-doc/manual.pdf.gz
|
||||
Files: /usr/share/doc/dvdisaster/manual.pdf.gz
|
||||
|
||||
1
debian/dvdisaster-doc.links
vendored
@@ -1 +0,0 @@
|
||||
usr/share/doc/dvdisaster-doc/manual.pdf.gz usr/share/doc/dvdisaster/manual.pdf.gz
|
||||
1
debian/dvdisaster.docs
vendored
@@ -1,4 +1,3 @@
|
||||
CHANGELOG
|
||||
CREDITS.*
|
||||
README.MODIFYING
|
||||
TODO
|
||||
|
||||
9
debian/dvdisaster.install
vendored
Executable file → Normal file
@@ -1,10 +1,5 @@
|
||||
#!/usr/bin/dh-exec
|
||||
contrib/dvdisaster.desktop usr/share/applications
|
||||
usr/bin
|
||||
usr/share/icons
|
||||
usr/share/locale
|
||||
usr/share/man
|
||||
contrib/dvdisaster.desktop usr/share/applications
|
||||
contrib/dvdisaster16.png => usr/share/icons/hicolor/16x16/apps/dvdisaster.png
|
||||
contrib/dvdisaster24.png => usr/share/icons/hicolor/24x24/apps/dvdisaster.png
|
||||
contrib/dvdisaster32.png => usr/share/icons/hicolor/32x32/apps/dvdisaster.png
|
||||
contrib/dvdisaster48.png => usr/share/icons/hicolor/48x48/apps/dvdisaster.png
|
||||
contrib/dvdisaster64.png => usr/share/icons/hicolor/64x64/apps/dvdisaster.png
|
||||
|
||||
1
debian/dvdisaster.lintian-overrides
vendored
Normal file
@@ -0,0 +1 @@
|
||||
dvdisaster: changelog-file-not-compressed changelog
|
||||
5
debian/gbp.conf
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
[DEFAULT]
|
||||
debian-branch = debian/master
|
||||
upstream-branch = upstream/latest
|
||||
sign-tags = True
|
||||
pristine-tar = True
|
||||
4
debian/patches/02-encryption.patch
vendored
@@ -12,10 +12,10 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scsi-layer.c b/scsi-layer.c
|
||||
index d68533b..6717b12 100644
|
||||
index cad13d4..866b7ac 100644
|
||||
--- a/scsi-layer.c
|
||||
+++ b/scsi-layer.c
|
||||
@@ -2711,12 +2711,13 @@ Image* OpenImageFromDevice(char *device)
|
||||
@@ -2695,12 +2695,13 @@ Image* OpenImageFromDevice(char *device)
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
2
debian/patches/03-dvdrom.patch
vendored
@@ -12,7 +12,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/scsi-layer.c b/scsi-layer.c
|
||||
index 6717b12..64a3dba 100644
|
||||
index 866b7ac..b3a9d0e 100644
|
||||
--- a/scsi-layer.c
|
||||
+++ b/scsi-layer.c
|
||||
@@ -908,6 +908,11 @@ static int query_dvd(DeviceHandle *dh, int probe_only)
|
||||
|
||||
2
debian/patches/05-help-dialog.patch
vendored
@@ -16,7 +16,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/help-dialogs.c b/help-dialogs.c
|
||||
index 4d6f9bb..eae04f2 100644
|
||||
index c486613..758ac19 100644
|
||||
--- a/help-dialogs.c
|
||||
+++ b/help-dialogs.c
|
||||
@@ -403,7 +403,7 @@ void ShowGPL()
|
||||
|
||||
@@ -20,7 +20,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/scripts/bash-based-configure b/scripts/bash-based-configure
|
||||
index f68ecab..d62f5d7 100644
|
||||
index 6baffde..f1a8bd1 100644
|
||||
--- a/scripts/bash-based-configure
|
||||
+++ b/scripts/bash-based-configure
|
||||
@@ -313,13 +313,13 @@ function REQUIRE_GMAKE()
|
||||
|
||||
27
debian/patches/11-no-cruft.patch
vendored
@@ -5,15 +5,15 @@ Subject: Do not install cruft.
|
||||
Description: Do not install cruft.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2017-01-05
|
||||
Last-Update: 2017-12-21
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
GNUmakefile.template | 26 --------------------------
|
||||
1 file changed, 26 deletions(-)
|
||||
GNUmakefile.template | 19 -------------------
|
||||
1 file changed, 19 deletions(-)
|
||||
|
||||
diff --git a/GNUmakefile.template b/GNUmakefile.template
|
||||
index a3074c7..6fda92b 100644
|
||||
index 77a57bf..6fda92b 100644
|
||||
--- a/GNUmakefile.template
|
||||
+++ b/GNUmakefile.template
|
||||
@@ -228,12 +228,6 @@ install: dvdisaster manual
|
||||
@@ -29,28 +29,21 @@ index a3074c7..6fda92b 100644
|
||||
(cd documentation/user-manual; install -m 644 manual.pdf $(BUILDROOT)$(DOCSUBDIR))
|
||||
install -d $(BUILDROOT)$(MANDIR)/man1
|
||||
install -d $(BUILDROOT)$(MANDIR)/de/man1
|
||||
@@ -251,26 +245,6 @@ install: dvdisaster manual
|
||||
@@ -251,19 +245,6 @@ install: dvdisaster manual
|
||||
install -m 644 $$i/LC_MESSAGES/dvdisaster.mo $(BUILDROOT)$(LOCALEDIR)/$$i/LC_MESSAGES; \
|
||||
done \
|
||||
fi
|
||||
- @echo "# dvdisaster uninstaller script" > $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "# Usage: sh dvdisaster-uninstall.sh" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(BINDIR)/dvdisaster\" \"$(BINDIR)/dvdisaster-uninstall.sh\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/CHANGELOG\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/COPYING\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/CREDITS.de\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/CREDITS.en\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/manual.pdf\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/README.MODIFYING\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f \"$(DOCSUBDIR)/TODO\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rmdir \"$(DOCSUBDIR)\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f $(BINDIR)/dvdisaster $(BINDIR)/dvdisaster-uninstall.sh" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -rf $(DOCSUBDIR)" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @for i in $(PO_LOCALES); do \
|
||||
- echo "rm -f \"$(LOCALEDIR)/$$i/LC_MESSAGES/dvdisaster.mo\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
- echo "rm $(LOCALEDIR)/$$i/LC_MESSAGES/dvdisaster.mo" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
- done
|
||||
- @echo "rm -f \"$(MANDIR)/man1/dvdisaster.1\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @echo "rm -f $(MANDIR)/man1/dvdisaster.1" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
- @for i in $(MAN_LOCALES); do \
|
||||
- echo "rm -f \"$(MANDIR)/$$i/man1/dvdisaster.1\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
- echo "rm $(MANDIR)/$$i/man1/dvdisaster.1" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh ; \
|
||||
- done
|
||||
- @echo "echo \"dvdisaster has been uninstalled.\"" >> $(BUILDROOT)$(BINDIR)/dvdisaster-uninstall.sh
|
||||
|
||||
|
||||
114
debian/patches/12-fix-spelling-of-up-to.patch
vendored
@@ -5,7 +5,7 @@ Subject: Fix spelling: upto -> up to
|
||||
Description: Fix spelling: upto -> up to
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: no
|
||||
Last-Update: 2017-01-05
|
||||
Last-Update: 2017-12-21
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
@@ -26,7 +26,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
14 files changed, 35 insertions(+), 35 deletions(-)
|
||||
|
||||
diff --git a/debug.c b/debug.c
|
||||
index df70416..b4ffc21 100644
|
||||
index b4a96d1..bd725d6 100644
|
||||
--- a/debug.c
|
||||
+++ b/debug.c
|
||||
@@ -1023,7 +1023,7 @@ void RawSector(char *arg)
|
||||
@@ -52,7 +52,7 @@ index ebb1ee5..a8c0d90 100644
|
||||
figure. The next ecc blocks are calculated and stored accordingly.
|
||||
In total, the ecc section contains $k*ls$ bytes of parity information,
|
||||
diff --git a/documentation/codec-specs/rs02.tex b/documentation/codec-specs/rs02.tex
|
||||
index 3cf5fb1..c026772 100644
|
||||
index 69195a0..fb88384 100644
|
||||
--- a/documentation/codec-specs/rs02.tex
|
||||
+++ b/documentation/codec-specs/rs02.tex
|
||||
@@ -133,7 +133,7 @@ Its format is described in appendix \ref{eh}. For RS02, only the data fields
|
||||
@@ -65,10 +65,10 @@ index 3cf5fb1..c026772 100644
|
||||
to the nearest multiple of 2048.
|
||||
CRC32 checksums are calculated over a whole CD sector comprising 2048 bytes.
|
||||
diff --git a/documentation/dvdisaster.en.1 b/documentation/dvdisaster.en.1
|
||||
index 028c6e0..95faa5a 100644
|
||||
index 3472012..d71abec 100644
|
||||
--- a/documentation/dvdisaster.en.1
|
||||
+++ b/documentation/dvdisaster.en.1
|
||||
@@ -274,7 +274,7 @@ Selects between the sg (SG_IO) driver (default setting) and the
|
||||
@@ -279,7 +279,7 @@ Selects between the sg (SG_IO) driver (default setting) and the
|
||||
older cdrom (CDROM_SEND_PACKET) driver for accessing the optical drives.
|
||||
Both drivers should work equally well; however the cdrom driver is known
|
||||
to cause system failures on some ancient SCSI controllers.
|
||||
@@ -77,7 +77,7 @@ index 028c6e0..95faa5a 100644
|
||||
if the now pre-selected sg driver changes something to the worse for you
|
||||
please switch back to the older driver using \-\-driver=cdrom.
|
||||
.TP
|
||||
@@ -376,7 +376,7 @@ the uncorrected sector instead.
|
||||
@@ -384,7 +384,7 @@ the uncorrected sector instead.
|
||||
.RE
|
||||
.TP
|
||||
.B \-\-read-attempts n-m
|
||||
@@ -87,10 +87,10 @@ index 028c6e0..95faa5a 100644
|
||||
.B \-\-read-medium n
|
||||
read the whole medium up to n times.
|
||||
diff --git a/documentation/user-manual/qa.tex b/documentation/user-manual/qa.tex
|
||||
index 5d4b35a..91befa1 100644
|
||||
index a3465a8..d79ca4d 100644
|
||||
--- a/documentation/user-manual/qa.tex
|
||||
+++ b/documentation/user-manual/qa.tex
|
||||
@@ -457,6 +457,6 @@ drive for reading images in these cases.}
|
||||
@@ -465,6 +465,6 @@ drive for reading images in these cases.}
|
||||
|
||||
\qa{``Ecc file has been created with version 0.40.7.''}
|
||||
{Some developer versions of dvdisaster mark their ecc files with a special bit.
|
||||
@@ -99,10 +99,10 @@ index 5d4b35a..91befa1 100644
|
||||
message. Please use the developer versions only together with dvdisaster
|
||||
0.66 or newer versions. }
|
||||
diff --git a/dvdisaster.c b/dvdisaster.c
|
||||
index a24e599..d549676 100644
|
||||
index 6742d99..6840fd5 100644
|
||||
--- a/dvdisaster.c
|
||||
+++ b/dvdisaster.c
|
||||
@@ -917,7 +917,7 @@ int main(int argc, char *argv[])
|
||||
@@ -930,7 +930,7 @@ int main(int argc, char *argv[])
|
||||
PrintCLI(_(" --old-ds-marker - mark missing sectors compatible with dvdisaster <= 0.70\n"));
|
||||
PrintCLI(_(" --prefetch-sectors n - prefetch n sectors for RS03 encoding (uses ~nMiB)\n"));
|
||||
PrintCLI(_(" --raw-mode n - mode for raw reading CD media (20 or 21)\n"));
|
||||
@@ -110,12 +110,12 @@ index a24e599..d549676 100644
|
||||
+ PrintCLI(_(" --read-attempts n-m - attempts n up to m reads of a defective sector\n"));
|
||||
PrintCLI(_(" --read-medium n - read the whole medium up to n times\n"));
|
||||
PrintCLI(_(" --read-raw - performs read in raw mode if possible\n"));
|
||||
PrintCLI(_(" --resource-file p - get resource file from given path\n"));
|
||||
PrintCLI(_(" --regtest - tweaks output for compatibility with regtests\n"));
|
||||
diff --git a/dvdisaster.h b/dvdisaster.h
|
||||
index 2507ab9..db2031e 100644
|
||||
index 7fb980b..a466450 100644
|
||||
--- a/dvdisaster.h
|
||||
+++ b/dvdisaster.h
|
||||
@@ -101,7 +101,7 @@
|
||||
@@ -112,7 +112,7 @@
|
||||
|
||||
#define MAX_CODEC_THREADS 1024 /* not including IO and GUI */
|
||||
#define MAX_OLD_CACHE_SIZE 8096 /* old cache for RS01/RS02 */
|
||||
@@ -124,7 +124,7 @@ index 2507ab9..db2031e 100644
|
||||
|
||||
/* Choices for I/O strategy */
|
||||
|
||||
@@ -364,7 +364,7 @@ typedef struct _LargeFile
|
||||
@@ -376,7 +376,7 @@ typedef struct _LargeFile
|
||||
#define FINGERPRINT_SECTOR 16 /* Sector currently used to calculate the fingerprint. */
|
||||
/* This is the ISO filesystem root sector which contains */
|
||||
/* the volume label and creation time stamps. */
|
||||
@@ -134,19 +134,19 @@ index 2507ab9..db2031e 100644
|
||||
|
||||
#define MFLAG_DEVEL (1<<0) /* for methodFlags[3] */
|
||||
diff --git a/locale/cs.po b/locale/cs.po
|
||||
index bdec530..ed1fc65 100644
|
||||
index 3274de9..4f766a3 100644
|
||||
--- a/locale/cs.po
|
||||
+++ b/locale/cs.po
|
||||
@@ -658,7 +658,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -662,7 +662,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
msgstr " --raw-mode n - režim přímého čtení pro CD disky (20 nebo 21)\n"
|
||||
|
||||
#: dvdisaster.c:920
|
||||
#: dvdisaster.c:933
|
||||
-msgid " --read-attempts n-m - attempts n upto m reads of a defective sector\n"
|
||||
+msgid " --read-attempts n-m - attempts n up to m reads of a defective sector\n"
|
||||
msgstr " --read-attempts n-m - zkusit n až m opakovaných čtení poškozeného sektoru\n"
|
||||
|
||||
#: dvdisaster.c:921
|
||||
@@ -2000,7 +2000,7 @@ msgstr "Přečtení sektoru nezkoušet více než %d krát"
|
||||
#: dvdisaster.c:934
|
||||
@@ -2014,7 +2014,7 @@ msgstr "Přečtení sektoru nezkoušet více než %d krát"
|
||||
msgid ""
|
||||
"<b>Maximum number of reading attempts</b>\n"
|
||||
"\n"
|
||||
@@ -155,7 +155,7 @@ index bdec530..ed1fc65 100644
|
||||
"\n"
|
||||
"The decision to do more attempts depends on the quality of data gathered so far, which in turn is influenced by the capabilities of your optical drive and the operating system. So depending on your configuration, you may or may not see dvdisaster using the maximum value."
|
||||
msgstr ""
|
||||
@@ -2072,7 +2072,7 @@ msgstr " krát"
|
||||
@@ -2086,7 +2086,7 @@ msgstr " krát"
|
||||
msgid ""
|
||||
"<b>Media read attempts</b> for the linear reading strategy\n"
|
||||
"\n"
|
||||
@@ -165,19 +165,19 @@ index bdec530..ed1fc65 100644
|
||||
"Only the missing sectors will be tried in the additional reading passes."
|
||||
msgstr ""
|
||||
diff --git a/locale/de.po b/locale/de.po
|
||||
index af978eb..bbbfdcc 100644
|
||||
index b252c19..5b47778 100644
|
||||
--- a/locale/de.po
|
||||
+++ b/locale/de.po
|
||||
@@ -700,7 +700,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -704,7 +704,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
msgstr " --raw-mode n - \"raw-modus\" zum Lesen von CD (20 or 21)\n"
|
||||
|
||||
#: dvdisaster.c:920
|
||||
#: dvdisaster.c:933
|
||||
-msgid " --read-attempts n-m - attempts n upto m reads of a defective sector\n"
|
||||
+msgid " --read-attempts n-m - attempts n up to m reads of a defective sector\n"
|
||||
msgstr " --read-attempts n-m - versucht beschädigten Sektor n bis m-mal zu lesen\n"
|
||||
|
||||
#: dvdisaster.c:921
|
||||
@@ -2057,7 +2057,7 @@ msgstr "Höchstens %d Leseversuche pro Sektor"
|
||||
#: dvdisaster.c:934
|
||||
@@ -2073,7 +2073,7 @@ msgstr "Höchstens %d Leseversuche pro Sektor"
|
||||
msgid ""
|
||||
"<b>Maximum number of reading attempts</b>\n"
|
||||
"\n"
|
||||
@@ -186,7 +186,7 @@ index af978eb..bbbfdcc 100644
|
||||
"\n"
|
||||
"The decision to do more attempts depends on the quality of data gathered so far, which in turn is influenced by the capabilities of your optical drive and the operating system. So depending on your configuration, you may or may not see dvdisaster using the maximum value."
|
||||
msgstr ""
|
||||
@@ -2129,7 +2129,7 @@ msgstr " mal lesen"
|
||||
@@ -2145,7 +2145,7 @@ msgstr " mal lesen"
|
||||
msgid ""
|
||||
"<b>Media read attempts</b> for the linear reading strategy\n"
|
||||
"\n"
|
||||
@@ -196,19 +196,19 @@ index af978eb..bbbfdcc 100644
|
||||
"Only the missing sectors will be tried in the additional reading passes."
|
||||
msgstr ""
|
||||
diff --git a/locale/it.po b/locale/it.po
|
||||
index 9f3a97b..a074339 100644
|
||||
index efd3d27..f6e9dfd 100644
|
||||
--- a/locale/it.po
|
||||
+++ b/locale/it.po
|
||||
@@ -625,7 +625,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -629,7 +629,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
msgstr ""
|
||||
|
||||
#: dvdisaster.c:920
|
||||
#: dvdisaster.c:933
|
||||
-msgid " --read-attempts n-m - attempts n upto m reads of a defective sector\n"
|
||||
+msgid " --read-attempts n-m - attempts n up to m reads of a defective sector\n"
|
||||
msgstr ""
|
||||
|
||||
#: dvdisaster.c:921
|
||||
@@ -1824,7 +1824,7 @@ msgstr ""
|
||||
#: dvdisaster.c:934
|
||||
@@ -1838,7 +1838,7 @@ msgstr ""
|
||||
msgid ""
|
||||
"<b>Maximum number of reading attempts</b>\n"
|
||||
"\n"
|
||||
@@ -217,7 +217,7 @@ index 9f3a97b..a074339 100644
|
||||
"\n"
|
||||
"The decision to do more attempts depends on the quality of data gathered so far, which in turn is influenced by the capabilities of your optical drive and the operating system. So depending on your configuration, you may or may not see dvdisaster using the maximum value."
|
||||
msgstr ""
|
||||
@@ -1883,7 +1883,7 @@ msgstr ""
|
||||
@@ -1897,7 +1897,7 @@ msgstr ""
|
||||
msgid ""
|
||||
"<b>Media read attempts</b> for the linear reading strategy\n"
|
||||
"\n"
|
||||
@@ -226,7 +226,7 @@ index 9f3a97b..a074339 100644
|
||||
"\n"
|
||||
"Only the missing sectors will be tried in the additional reading passes."
|
||||
msgstr ""
|
||||
@@ -6054,7 +6054,7 @@ msgstr ""
|
||||
@@ -6086,7 +6086,7 @@ msgstr ""
|
||||
#~ msgstr "Se potete verificate se la dimensione dell'immagine è corretta,\n"
|
||||
|
||||
#~ msgid ""
|
||||
@@ -236,19 +236,19 @@ index 9f3a97b..a074339 100644
|
||||
#~ msgstr ""
|
||||
#~ "Prego inviare l'intero output di dvdisaster fino a questa linea\n"
|
||||
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
|
||||
index b557c84..573531b 100644
|
||||
index 21ea77b..86eda03 100644
|
||||
--- a/locale/pt_BR.po
|
||||
+++ b/locale/pt_BR.po
|
||||
@@ -641,7 +641,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -645,7 +645,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
msgstr " --raw-mode n - modo para leitura de mídia CD em modo raw (20 ou 21)\n"
|
||||
|
||||
#: dvdisaster.c:920
|
||||
#: dvdisaster.c:933
|
||||
-msgid " --read-attempts n-m - attempts n upto m reads of a defective sector\n"
|
||||
+msgid " --read-attempts n-m - attempts n up to m reads of a defective sector\n"
|
||||
msgstr " --read-attempts n-m - tenta de n a m leituras em um setor defeituoso\n"
|
||||
|
||||
#: dvdisaster.c:921
|
||||
@@ -1935,7 +1935,7 @@ msgstr "Máx. de %d tentativas de leitura por setor"
|
||||
#: dvdisaster.c:934
|
||||
@@ -1949,7 +1949,7 @@ msgstr "Máx. de %d tentativas de leitura por setor"
|
||||
msgid ""
|
||||
"<b>Maximum number of reading attempts</b>\n"
|
||||
"\n"
|
||||
@@ -257,7 +257,7 @@ index b557c84..573531b 100644
|
||||
"\n"
|
||||
"The decision to do more attempts depends on the quality of data gathered so far, which in turn is influenced by the capabilities of your optical drive and the operating system. So depending on your configuration, you may or may not see dvdisaster using the maximum value."
|
||||
msgstr ""
|
||||
@@ -2007,7 +2007,7 @@ msgstr " vezes"
|
||||
@@ -2021,7 +2021,7 @@ msgstr " vezes"
|
||||
msgid ""
|
||||
"<b>Media read attempts</b> for the linear reading strategy\n"
|
||||
"\n"
|
||||
@@ -266,7 +266,7 @@ index b557c84..573531b 100644
|
||||
"\n"
|
||||
"Only the missing sectors will be tried in the additional reading passes."
|
||||
msgstr ""
|
||||
@@ -6450,7 +6450,7 @@ msgstr "<i>Novidades dessa versão:</i>"
|
||||
@@ -6482,7 +6482,7 @@ msgstr "<i>Novidades dessa versão:</i>"
|
||||
#~ " --internal-rereads n - drive may attempt n rereads before reporting an error\n"
|
||||
#~ " --query-size n - query drive/udf/ecc for image size (default: ecc)\n"
|
||||
#~ " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -275,7 +275,7 @@ index b557c84..573531b 100644
|
||||
#~ " --read-medium n - read the whole medium up to n times\n"
|
||||
#~ " --read-raw - performs read in raw mode if possible\n"
|
||||
#~ " --speed-warning n - print warning if speed changes by more than n percent\n"
|
||||
@@ -6469,7 +6469,7 @@ msgstr "<i>Novidades dessa versão:</i>"
|
||||
@@ -6501,7 +6501,7 @@ msgstr "<i>Novidades dessa versão:</i>"
|
||||
#~ msgid ""
|
||||
#~ "<b>File splitting</b>\n"
|
||||
#~ "\n"
|
||||
@@ -285,19 +285,19 @@ index b557c84..573531b 100644
|
||||
#~ "<b>Separação de arquivos</b>\n"
|
||||
#~ "\n"
|
||||
diff --git a/locale/ru.po b/locale/ru.po
|
||||
index 34b1796..a9fc25c 100644
|
||||
index 767f906..7984c59 100644
|
||||
--- a/locale/ru.po
|
||||
+++ b/locale/ru.po
|
||||
@@ -640,7 +640,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -644,7 +644,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
msgstr " --raw-mode n - режим для низкоуровневого чтения CD-носителей (20 или 21)\n"
|
||||
|
||||
#: dvdisaster.c:920
|
||||
#: dvdisaster.c:933
|
||||
-msgid " --read-attempts n-m - attempts n upto m reads of a defective sector\n"
|
||||
+msgid " --read-attempts n-m - attempts n up to m reads of a defective sector\n"
|
||||
msgstr " --read-attempts n-m - делается от n до m попыток чтения поврежденного сектора\n"
|
||||
|
||||
#: dvdisaster.c:921
|
||||
@@ -1938,7 +1938,7 @@ msgstr "Макс. %d попыток чтения на сектор"
|
||||
#: dvdisaster.c:934
|
||||
@@ -1952,7 +1952,7 @@ msgstr "Макс. %d попыток чтения на сектор"
|
||||
msgid ""
|
||||
"<b>Maximum number of reading attempts</b>\n"
|
||||
"\n"
|
||||
@@ -306,7 +306,7 @@ index 34b1796..a9fc25c 100644
|
||||
"\n"
|
||||
"The decision to do more attempts depends on the quality of data gathered so far, which in turn is influenced by the capabilities of your optical drive and the operating system. So depending on your configuration, you may or may not see dvdisaster using the maximum value."
|
||||
msgstr ""
|
||||
@@ -2010,7 +2010,7 @@ msgstr " раз"
|
||||
@@ -2024,7 +2024,7 @@ msgstr " раз"
|
||||
msgid ""
|
||||
"<b>Media read attempts</b> for the linear reading strategy\n"
|
||||
"\n"
|
||||
@@ -315,7 +315,7 @@ index 34b1796..a9fc25c 100644
|
||||
"\n"
|
||||
"Only the missing sectors will be tried in the additional reading passes."
|
||||
msgstr ""
|
||||
@@ -6511,7 +6511,7 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
@@ -6543,7 +6543,7 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
#~ " --internal-rereads n - drive may attempt n rereads before reporting an error\n"
|
||||
#~ " --query-size n - query drive/udf/ecc for image size (default: ecc)\n"
|
||||
#~ " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -324,7 +324,7 @@ index 34b1796..a9fc25c 100644
|
||||
#~ " --read-medium n - read the whole medium up to n times\n"
|
||||
#~ " --read-raw - performs read in raw mode if possible\n"
|
||||
#~ " --speed-warning n - print warning if speed changes by more than n percent\n"
|
||||
@@ -6528,7 +6528,7 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
@@ -6560,7 +6560,7 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
#~ msgid ""
|
||||
#~ "<b>File splitting</b>\n"
|
||||
#~ "\n"
|
||||
@@ -333,7 +333,7 @@ index 34b1796..a9fc25c 100644
|
||||
#~ msgstr ""
|
||||
#~ "<b>Разбиение файлов</b>\n"
|
||||
#~ "\n"
|
||||
@@ -6574,7 +6574,7 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
@@ -6606,7 +6606,7 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
#~ " --internal-rereads n - drive may attempt n rereads before reporting an error\n"
|
||||
#~ " --query-size n - query drive/udf/ecc for image size (default: ecc)\n"
|
||||
#~ " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -343,19 +343,19 @@ index 34b1796..a9fc25c 100644
|
||||
#~ " --read-raw - performs read in raw mode if possible\n"
|
||||
#~ " --speed-warning n - print warning if speed changes by more than n percent\n"
|
||||
diff --git a/locale/sv.po b/locale/sv.po
|
||||
index f69035e..9f70808 100644
|
||||
index 548e2e5..c74a942 100644
|
||||
--- a/locale/sv.po
|
||||
+++ b/locale/sv.po
|
||||
@@ -626,7 +626,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
@@ -630,7 +630,7 @@ msgid " --raw-mode n - mode for raw reading CD media (20 or 21)\n"
|
||||
msgstr ""
|
||||
|
||||
#: dvdisaster.c:920
|
||||
#: dvdisaster.c:933
|
||||
-msgid " --read-attempts n-m - attempts n upto m reads of a defective sector\n"
|
||||
+msgid " --read-attempts n-m - attempts n up to m reads of a defective sector\n"
|
||||
msgstr ""
|
||||
|
||||
#: dvdisaster.c:921
|
||||
@@ -1830,7 +1830,7 @@ msgstr ""
|
||||
#: dvdisaster.c:934
|
||||
@@ -1844,7 +1844,7 @@ msgstr ""
|
||||
msgid ""
|
||||
"<b>Maximum number of reading attempts</b>\n"
|
||||
"\n"
|
||||
@@ -364,7 +364,7 @@ index f69035e..9f70808 100644
|
||||
"\n"
|
||||
"The decision to do more attempts depends on the quality of data gathered so far, which in turn is influenced by the capabilities of your optical drive and the operating system. So depending on your configuration, you may or may not see dvdisaster using the maximum value."
|
||||
msgstr ""
|
||||
@@ -1889,7 +1889,7 @@ msgstr ""
|
||||
@@ -1903,7 +1903,7 @@ msgstr ""
|
||||
msgid ""
|
||||
"<b>Media read attempts</b> for the linear reading strategy\n"
|
||||
"\n"
|
||||
@@ -374,7 +374,7 @@ index f69035e..9f70808 100644
|
||||
"Only the missing sectors will be tried in the additional reading passes."
|
||||
msgstr ""
|
||||
diff --git a/preferences.c b/preferences.c
|
||||
index 4f1fe5c..f5ef889 100644
|
||||
index 70afa02..4899317 100644
|
||||
--- a/preferences.c
|
||||
+++ b/preferences.c
|
||||
@@ -2221,7 +2221,7 @@ void CreatePreferencesWindow(void)
|
||||
|
||||
@@ -14,7 +14,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
|
||||
index 573531b..04b33b5 100644
|
||||
index 86eda03..f3437f3 100644
|
||||
--- a/locale/pt_BR.po
|
||||
+++ b/locale/pt_BR.po
|
||||
@@ -11,7 +11,7 @@ msgstr ""
|
||||
@@ -27,7 +27,7 @@ index 573531b..04b33b5 100644
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
diff --git a/locale/ru.po b/locale/ru.po
|
||||
index a9fc25c..6cd3789 100644
|
||||
index 7984c59..1bc7324 100644
|
||||
--- a/locale/ru.po
|
||||
+++ b/locale/ru.po
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
|
||||
113
debian/patches/14-make-builds-reproducible.patch
vendored
@@ -7,15 +7,111 @@ Description: Make builds reproducible.
|
||||
so that we can make reproducible binaries.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2016-12-19
|
||||
Last-Update: 2017-08-14
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
scripts/time-stamper.bash | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
build.c | 2 +-
|
||||
closure.c | 2 +-
|
||||
dvdisaster.h | 2 +-
|
||||
locale/cs.po | 4 ++--
|
||||
locale/pt_BR.po | 4 ++--
|
||||
locale/ru.po | 4 ++--
|
||||
scripts/time-stamper.bash | 8 ++++----
|
||||
7 files changed, 13 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/build.c b/build.c
|
||||
index 0e99b22..65b17cd 100644
|
||||
--- a/build.c
|
||||
+++ b/build.c
|
||||
@@ -25,4 +25,4 @@
|
||||
/* build is incremented at each make;
|
||||
make recompile of dependent file as fast as possible */
|
||||
|
||||
-int buildCount = BUILD;
|
||||
+const char *const buildCount = BUILD;
|
||||
diff --git a/closure.c b/closure.c
|
||||
index 58ba86f..d633d53 100644
|
||||
--- a/closure.c
|
||||
+++ b/closure.c
|
||||
@@ -442,7 +442,7 @@ void InitClosure()
|
||||
#define BITNESS_STRING ""
|
||||
#endif
|
||||
|
||||
- Closure->versionString = g_strdup_printf("dvdisaster %s build %d, %s%s",
|
||||
+ Closure->versionString = g_strdup_printf("dvdisaster %s build %s, %s%s",
|
||||
Closure->cookedVersion, buildCount, SYS_NAME, BITNESS_STRING);
|
||||
|
||||
/* Replace the dot with a locale-resistant separator */
|
||||
diff --git a/dvdisaster.h b/dvdisaster.h
|
||||
index a466450..9acd094 100644
|
||||
--- a/dvdisaster.h
|
||||
+++ b/dvdisaster.h
|
||||
@@ -463,7 +463,7 @@ void FreeBitmap(Bitmap*);
|
||||
*** build.h
|
||||
***/
|
||||
|
||||
-int buildCount;
|
||||
+extern const char *const buildCount;
|
||||
|
||||
/***
|
||||
*** cacheprobe.h
|
||||
diff --git a/locale/cs.po b/locale/cs.po
|
||||
index 4f766a3..453ec07 100644
|
||||
--- a/locale/cs.po
|
||||
+++ b/locale/cs.po
|
||||
@@ -6511,11 +6511,11 @@ msgstr "<i>Novinky v této verzi:</i>"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
-#~ "dvdisaster version %s build %d\n"
|
||||
+#~ "dvdisaster version %s build %s\n"
|
||||
#~ "\n"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
-#~ "dvdisaster verze %s sestavení %d\n"
|
||||
+#~ "dvdisaster verze %s sestavení %s\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "--prefetch-sectors must be in range 32...8096"
|
||||
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
|
||||
index f3437f3..f7f6af0 100644
|
||||
--- a/locale/pt_BR.po
|
||||
+++ b/locale/pt_BR.po
|
||||
@@ -6232,11 +6232,11 @@ msgstr "<i>Novidades dessa versão:</i>"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
-#~ "dvdisaster version %s build %d\n"
|
||||
+#~ "dvdisaster version %s build %s\n"
|
||||
#~ "\n"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
-#~ "dvdisaster, versão %s build %d\n"
|
||||
+#~ "dvdisaster, versão %s build %s\n"
|
||||
|
||||
#~ msgid "--cache-size maximum is 8192MiB."
|
||||
#~ msgstr "--cache-size máximo é 8192MiB."
|
||||
diff --git a/locale/ru.po b/locale/ru.po
|
||||
index 1bc7324..9625a1f 100644
|
||||
--- a/locale/ru.po
|
||||
+++ b/locale/ru.po
|
||||
@@ -6247,11 +6247,11 @@ msgstr "<i>Новое в этой версии:</i>"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
-#~ "dvdisaster version %s build %d\n"
|
||||
+#~ "dvdisaster version %s build %s\n"
|
||||
#~ "\n"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
-#~ "dvdisaster версия %s сборка %d\n"
|
||||
+#~ "dvdisaster версия %s сборка %s\n"
|
||||
#~ "\n"
|
||||
|
||||
#~ msgid "--cache-size maximum is 8192MiB."
|
||||
diff --git a/scripts/time-stamper.bash b/scripts/time-stamper.bash
|
||||
index fd28794..60fe91a 100755
|
||||
index fd28794..4ec3e60 100755
|
||||
--- a/scripts/time-stamper.bash
|
||||
+++ b/scripts/time-stamper.bash
|
||||
@@ -1,7 +1,7 @@
|
||||
@@ -23,9 +119,10 @@ index fd28794..60fe91a 100755
|
||||
|
||||
-build=$(grep BUILD $1 | cut -d\ -f3)
|
||||
-build=$((build+1))
|
||||
+# Use Debian changelog details to derive build number and date.
|
||||
+build=$(dpkg-parsechangelog -S Version | sed 's/.*-\([0-9]\+\).*/\1/')
|
||||
echo "#define BUILD $build" >$1
|
||||
-echo "#define BUILD $build" >$1
|
||||
-date=$(date +"%d.%m.%y (%A, %H:%M)")
|
||||
+date=$(date --date="$(dpkg-parsechangelog -S Date)" +"%d.%m.%y (%A, %H:%M)")
|
||||
+# Use Debian changelog details to derive build number and date.
|
||||
+build=$(echo "${DEB_VERSION}" | cut -f2 -d-)
|
||||
+echo "#define BUILD \"$build\"" >$1
|
||||
+date=$(date --date="@${SOURCE_DATE_EPOCH}" --utc +"%d.%m.%y (%A, %H:%M)")
|
||||
echo "#define BDATE \"$date\"" >>$1
|
||||
|
||||
2
debian/patches/15-show-new-pkg-tracker.patch
vendored
@@ -14,7 +14,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/help-dialogs.c b/help-dialogs.c
|
||||
index eae04f2..c89c552 100644
|
||||
index 758ac19..47551f7 100644
|
||||
--- a/help-dialogs.c
|
||||
+++ b/help-dialogs.c
|
||||
@@ -750,7 +750,7 @@ void AboutDialog()
|
||||
|
||||
@@ -6,23 +6,20 @@ Description: Fix all warnings except for those related to deprecated API.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Bug-Debian: https://bugs.debian.org/748416
|
||||
Forwarded: no
|
||||
Last-Update: 2017-01-05
|
||||
Last-Update: 2017-12-21
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
closure.c | 8 +++++---
|
||||
curve.c | 2 +-
|
||||
closure.c | 2 +-
|
||||
menubar.c | 2 +-
|
||||
rs01-create.c | 10 +++++-----
|
||||
rs01-verify.c | 2 +-
|
||||
rs03-create.c | 24 ++++++++++++------------
|
||||
rs03-fix.c | 8 ++++----
|
||||
scsi-layer.c | 4 ++++
|
||||
smart-lec.c | 10 +++++-----
|
||||
9 files changed, 38 insertions(+), 32 deletions(-)
|
||||
6 files changed, 27 insertions(+), 23 deletions(-)
|
||||
|
||||
diff --git a/closure.c b/closure.c
|
||||
index 7568cba..0e2f889 100644
|
||||
index d633d53..fa52f09 100644
|
||||
--- a/closure.c
|
||||
+++ b/closure.c
|
||||
@@ -196,7 +196,7 @@ void ReadDotfile()
|
||||
@@ -34,38 +31,8 @@ index 7568cba..0e2f889 100644
|
||||
if(!line[MAX_LINE_LEN-1]) /* line longer than buffer */
|
||||
while(!feof(dotfile) && fgetc(dotfile) != '\n')
|
||||
;
|
||||
@@ -225,12 +225,14 @@ void ReadDotfile()
|
||||
if(!strcmp(symbol, "last-image")) { g_free(Closure->imageName);
|
||||
if(!strcmp(value, "none"))
|
||||
Closure->imageName = g_strdup("");
|
||||
- else Closure->imageName = g_strdup(value); continue;
|
||||
+ else Closure->imageName = g_strdup(value);
|
||||
+ continue;
|
||||
}
|
||||
if(!strcmp(symbol, "last-ecc")) { g_free(Closure->eccName);
|
||||
if(!strcmp(value, "none"))
|
||||
Closure->eccName = g_strdup("");
|
||||
- else Closure->eccName = g_strdup(value); continue;
|
||||
+ else Closure->eccName = g_strdup(value);
|
||||
+ continue;
|
||||
}
|
||||
if(!strcmp(symbol, "adaptive-read")) { Closure->adaptiveRead = atoi(value); continue; }
|
||||
if(!strcmp(symbol, "auto-suffix")) { Closure->autoSuffix = atoi(value); continue; }
|
||||
diff --git a/curve.c b/curve.c
|
||||
index 668bc40..61b81a9 100644
|
||||
--- a/curve.c
|
||||
+++ b/curve.c
|
||||
@@ -123,7 +123,7 @@ int CurveLogY(Curve *curve, gdouble y) /* not really a log */
|
||||
hfact = (gdouble)(curve->bottomLY - curve->topLY);
|
||||
|
||||
if(y==1) return curve->bottomLY - ((log(2)/log(curve->logMaxY)) * hfact)/2;
|
||||
- return curve->bottomLY - (log(y)/log(curve->logMaxY)) * hfact;
|
||||
+ return curve->bottomLY - (log(y)/log(curve->logMaxY)) * hfact;
|
||||
}
|
||||
|
||||
/***
|
||||
diff --git a/menubar.c b/menubar.c
|
||||
index 8258cfd..12f1933 100644
|
||||
index 94d462b..ee24ebe 100644
|
||||
--- a/menubar.c
|
||||
+++ b/menubar.c
|
||||
@@ -414,7 +414,7 @@ void set_path(GtkWidget *entry, char *path)
|
||||
@@ -77,43 +44,8 @@ index 8258cfd..12f1933 100644
|
||||
strcat(buf,"/");
|
||||
|
||||
strcat(buf,path);
|
||||
diff --git a/rs01-create.c b/rs01-create.c
|
||||
index 5cad591..88c352a 100644
|
||||
--- a/rs01-create.c
|
||||
+++ b/rs01-create.c
|
||||
@@ -107,12 +107,12 @@ static void unlink_image(GtkWidget *label)
|
||||
_("\nImage file %s deleted.\n"), Closure->imageName);
|
||||
}
|
||||
else
|
||||
- { if(!Closure->guiMode)
|
||||
- PrintLog("\n");
|
||||
+ { if(!Closure->guiMode)
|
||||
+ PrintLog("\n");
|
||||
|
||||
- ModalWarning(GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, NULL,
|
||||
- _("Image file %s not deleted: %s\n"),
|
||||
- Closure->imageName, strerror(errno));
|
||||
+ ModalWarning(GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, NULL,
|
||||
+ _("Image file %s not deleted: %s\n"),
|
||||
+ Closure->imageName, strerror(errno));
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/rs01-verify.c b/rs01-verify.c
|
||||
index 3315659..431a6d0 100644
|
||||
--- a/rs01-verify.c
|
||||
+++ b/rs01-verify.c
|
||||
@@ -830,7 +830,7 @@ process_ecc:
|
||||
{ if(!Closure->guiMode)
|
||||
PrintProgress(_("- ecc md5sum : %3d%%"),percent);
|
||||
else SetLabelText(GTK_LABEL(wl->cmpEccMd5Sum), "%3d%%", percent);
|
||||
- last_percent = percent;
|
||||
+ last_percent = percent;
|
||||
}
|
||||
|
||||
if(Closure->stopActions)
|
||||
diff --git a/rs03-create.c b/rs03-create.c
|
||||
index 40066d2..b2c6033 100644
|
||||
index 71460ef..9c7265d 100644
|
||||
--- a/rs03-create.c
|
||||
+++ b/rs03-create.c
|
||||
@@ -31,9 +31,9 @@
|
||||
@@ -128,7 +60,7 @@ index 40066d2..b2c6033 100644
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_MMAP
|
||||
@@ -688,7 +688,7 @@ static void flush_crc(ecc_closure *ec, LargeFile *file_out)
|
||||
@@ -714,7 +714,7 @@ static void flush_crc(ecc_closure *ec, LargeFile *file_out)
|
||||
|
||||
/* Write out the CRC layer */
|
||||
|
||||
@@ -137,7 +69,7 @@ index 40066d2..b2c6033 100644
|
||||
crc_sect = 2048*(ec->encoderChunk+lay->firstCrcPos);
|
||||
if(!LargeSeek(file_out, crc_sect))
|
||||
{ ec->abortImmediately = TRUE;
|
||||
@@ -709,7 +709,7 @@ static void flush_parity(ecc_closure *ec, LargeFile *file_out)
|
||||
@@ -735,7 +735,7 @@ static void flush_parity(ecc_closure *ec, LargeFile *file_out)
|
||||
|
||||
/* Write out the created parity. */
|
||||
|
||||
@@ -146,7 +78,7 @@ index 40066d2..b2c6033 100644
|
||||
for(k=0; k<lay->nroots; k++)
|
||||
{ gint64 idx=0;
|
||||
|
||||
@@ -726,7 +726,7 @@ static void flush_parity(ecc_closure *ec, LargeFile *file_out)
|
||||
@@ -752,7 +752,7 @@ static void flush_parity(ecc_closure *ec, LargeFile *file_out)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -155,7 +87,7 @@ index 40066d2..b2c6033 100644
|
||||
}
|
||||
|
||||
static gpointer io_thread(ecc_closure *ec)
|
||||
@@ -741,7 +741,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
@@ -767,7 +767,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
int parity_available = 0;
|
||||
int i;
|
||||
|
||||
@@ -164,7 +96,7 @@ index 40066d2..b2c6033 100644
|
||||
|
||||
/*** Allocate local parity buffer aligned at 128bit boundary */
|
||||
|
||||
@@ -809,7 +809,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
@@ -835,7 +835,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
{ read_next_chunk(ec, chunk);
|
||||
// flush_crc(ec, file_out); // FIXME
|
||||
needs_preload = 0;
|
||||
@@ -173,7 +105,7 @@ index 40066d2..b2c6033 100644
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -856,7 +856,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
@@ -882,7 +882,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
g_mutex_lock(ec->lock);
|
||||
cpu_bound = ec->buffersToEncode;
|
||||
while(ec->buffersToEncode)
|
||||
@@ -182,7 +114,7 @@ index 40066d2..b2c6033 100644
|
||||
g_cond_wait(ec->ioCond, ec->lock);
|
||||
}
|
||||
g_mutex_unlock(ec->lock);
|
||||
@@ -898,7 +898,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
@@ -924,7 +924,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
ec->slicesFree = TRUE; /* we have saved the slices; go ahead */
|
||||
g_cond_broadcast(ec->ioCond);
|
||||
while(ec->buffersToEncode)
|
||||
@@ -191,7 +123,7 @@ index 40066d2..b2c6033 100644
|
||||
g_cond_wait(ec->ioCond, ec->lock);
|
||||
}
|
||||
g_mutex_unlock(ec->lock);
|
||||
@@ -911,7 +911,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
@@ -937,7 +937,7 @@ static gpointer io_thread(ecc_closure *ec)
|
||||
flush_crc(ec, file_out);
|
||||
flush_parity(ec, file_out);
|
||||
|
||||
@@ -200,7 +132,7 @@ index 40066d2..b2c6033 100644
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -1098,7 +1098,7 @@ static gpointer encoder_thread(ecc_closure *ec)
|
||||
@@ -1123,7 +1123,7 @@ static gpointer encoder_thread(ecc_closure *ec)
|
||||
ec->buffersToEncode-=enc_size;
|
||||
if(!ec->buffersToEncode)
|
||||
{ g_cond_broadcast(ec->ioCond);
|
||||
@@ -209,7 +141,7 @@ index 40066d2..b2c6033 100644
|
||||
fflush(stdout);
|
||||
}
|
||||
g_mutex_unlock(ec->lock);
|
||||
@@ -1198,7 +1198,7 @@ static void create_reed_solomon(ecc_closure *ec)
|
||||
@@ -1223,7 +1223,7 @@ static void create_reed_solomon(ecc_closure *ec)
|
||||
verbose("SCHED: joined with worker %d\n", i);
|
||||
fflush(stdout);
|
||||
}
|
||||
@@ -219,7 +151,7 @@ index 40066d2..b2c6033 100644
|
||||
|
||||
/***
|
||||
diff --git a/rs03-fix.c b/rs03-fix.c
|
||||
index 0a7a1d3..e162e5e 100644
|
||||
index 7afb6d6..19b9322 100644
|
||||
--- a/rs03-fix.c
|
||||
+++ b/rs03-fix.c
|
||||
@@ -829,10 +829,10 @@ void RS03Fix(Image *image)
|
||||
@@ -235,10 +167,10 @@ index 0a7a1d3..e162e5e 100644
|
||||
+ Stop(_("Failed seeking to sector %lld in ecc file [%s]: %s"),
|
||||
+ sec, "FW", strerror(errno));
|
||||
|
||||
n = LargeWrite(image->eccFile, cache_offset+fc->imgBlock[i], 2048);
|
||||
if(n != 2048)
|
||||
n = LargeWrite(image->eccFile, cache_offset+fc->imgBlock[i], 2048);
|
||||
if(n != 2048)
|
||||
diff --git a/scsi-layer.c b/scsi-layer.c
|
||||
index 64a3dba..3be21ff 100644
|
||||
index b3a9d0e..f8d2112 100644
|
||||
--- a/scsi-layer.c
|
||||
+++ b/scsi-layer.c
|
||||
@@ -31,7 +31,9 @@
|
||||
@@ -268,7 +200,7 @@ index 64a3dba..3be21ff 100644
|
||||
/*
|
||||
* See whether a sector lies within the user area.
|
||||
diff --git a/smart-lec.c b/smart-lec.c
|
||||
index 8da74ff..0355879 100644
|
||||
index 02b9c49..944b70d 100644
|
||||
--- a/smart-lec.c
|
||||
+++ b/smart-lec.c
|
||||
@@ -27,9 +27,9 @@
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: Update copyright notice in about dialog.
|
||||
Description: Update copyright notice in about dialog.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2017-01-05
|
||||
Last-Update: 2017-12-21
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
@@ -13,7 +13,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/help-dialogs.c b/help-dialogs.c
|
||||
index c89c552..0f4e3b2 100644
|
||||
index 47551f7..3f94920 100644
|
||||
--- a/help-dialogs.c
|
||||
+++ b/help-dialogs.c
|
||||
@@ -723,8 +723,9 @@ void AboutDialog()
|
||||
@@ -21,10 +21,10 @@ index c89c552..0f4e3b2 100644
|
||||
|
||||
#ifdef MODIFIED_SOURCE
|
||||
- AboutTextWithLink(vbox,
|
||||
- _("Modified version Copyright 2015 (please fill in - [directions])\n"
|
||||
- _("Modified version Copyright 2017 (please fill in - [directions])\n"
|
||||
+ AboutTextWithLink(vbox,
|
||||
+ _("[Modified version]\n"
|
||||
+ "Copyright 2005-2016 Debian Optical Media Tools Team\n"
|
||||
"Copyright 2004-2015 Carsten Gnoerlich"),
|
||||
+ "Copyright 2005-2017 Debian Optical Media Tools Team\n"
|
||||
"Copyright 2004-2017 Carsten Gnoerlich"),
|
||||
"MODIFYING");
|
||||
#else
|
||||
|
||||
@@ -13,7 +13,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 18 insertions(+)
|
||||
|
||||
diff --git a/help-dialogs.c b/help-dialogs.c
|
||||
index 0f4e3b2..6214429 100644
|
||||
index 3f94920..d893d33 100644
|
||||
--- a/help-dialogs.c
|
||||
+++ b/help-dialogs.c
|
||||
@@ -423,6 +423,24 @@ char *find_file(char *file, size_t *size, char *lang)
|
||||
|
||||
@@ -16,7 +16,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/menubar.c b/menubar.c
|
||||
index 12f1933..15ce4ad 100644
|
||||
index ee24ebe..4a9f470 100644
|
||||
--- a/menubar.c
|
||||
+++ b/menubar.c
|
||||
@@ -126,21 +126,21 @@ static void menu_cb(GtkWidget *widget, gpointer data)
|
||||
|
||||
2
debian/patches/22-fix-hurd-i386-ftbfs.patch
vendored
@@ -15,7 +15,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/menubar.c b/menubar.c
|
||||
index 15ce4ad..df4203c 100644
|
||||
index 4a9f470..8330edb 100644
|
||||
--- a/menubar.c
|
||||
+++ b/menubar.c
|
||||
@@ -24,6 +24,10 @@
|
||||
|
||||
2
debian/patches/23-add-bdrom-support.patch
vendored
@@ -18,7 +18,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scsi-layer.c b/scsi-layer.c
|
||||
index 3be21ff..b70a4a4 100644
|
||||
index f8d2112..50f6c4c 100644
|
||||
--- a/scsi-layer.c
|
||||
+++ b/scsi-layer.c
|
||||
@@ -1029,7 +1029,7 @@ static int query_bd(DeviceHandle *dh, int probe_only)
|
||||
|
||||
2
debian/patches/24-show-gpl3-license.patch
vendored
@@ -13,7 +13,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/help-dialogs.c b/help-dialogs.c
|
||||
index 6214429..5065e76 100644
|
||||
index d893d33..75a615e 100644
|
||||
--- a/help-dialogs.c
|
||||
+++ b/help-dialogs.c
|
||||
@@ -403,7 +403,7 @@ void ShowGPL()
|
||||
|
||||
@@ -16,7 +16,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/show-manual.c b/show-manual.c
|
||||
index d53c9a5..ecb0922 100644
|
||||
index c25342b..4abbe97 100644
|
||||
--- a/show-manual.c
|
||||
+++ b/show-manual.c
|
||||
@@ -287,8 +287,8 @@ void ShowPDF(char *target)
|
||||
@@ -31,10 +31,10 @@ index d53c9a5..ecb0922 100644
|
||||
else
|
||||
if(*target != '/') bi->path = g_strdup_printf("%s/%s",Closure->docDir, target);
|
||||
diff --git a/welcome-window.c b/welcome-window.c
|
||||
index 1046bc8..3261b7c 100644
|
||||
index d30ebd9..63ac3df 100644
|
||||
--- a/welcome-window.c
|
||||
+++ b/welcome-window.c
|
||||
@@ -138,8 +138,8 @@ void CreateWelcomePage(GtkNotebook *notebook)
|
||||
@@ -139,8 +139,8 @@ void CreateWelcomePage(GtkNotebook *notebook)
|
||||
AboutText(box, _("\ndvdisaster creates error correction data to protect\n"
|
||||
"optical media (CD,DVD,BD) against data loss.\n"));
|
||||
|
||||
|
||||
@@ -17,10 +17,10 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
create mode 100644 show-html.c
|
||||
|
||||
diff --git a/closure.c b/closure.c
|
||||
index 0e2f889..632c103 100644
|
||||
index fa52f09..24c1e8c 100644
|
||||
--- a/closure.c
|
||||
+++ b/closure.c
|
||||
@@ -467,6 +467,7 @@ void InitClosure()
|
||||
@@ -474,6 +474,7 @@ void InitClosure()
|
||||
Closure->deviceNames = g_ptr_array_new();
|
||||
Closure->deviceNodes = g_ptr_array_new();
|
||||
Closure->viewer = g_strdup("xdg-open");
|
||||
@@ -28,7 +28,7 @@ index 0e2f889..632c103 100644
|
||||
Closure->methodList = g_ptr_array_new();
|
||||
Closure->methodName = g_strdup("RS01");
|
||||
Closure->dDumpDir = g_strdup(Closure->homeDir);
|
||||
@@ -598,6 +599,7 @@ void FreeClosure()
|
||||
@@ -589,6 +590,7 @@ void FreeClosure()
|
||||
cond_free(Closure->binDir);
|
||||
cond_free(Closure->docDir);
|
||||
cond_free(Closure->viewer);
|
||||
@@ -37,10 +37,10 @@ index 0e2f889..632c103 100644
|
||||
cond_free(Closure->simulateCD);
|
||||
cond_free(Closure->dDumpDir);
|
||||
diff --git a/dvdisaster.h b/dvdisaster.h
|
||||
index db2031e..22eab5a 100644
|
||||
index 9acd094..f536040 100644
|
||||
--- a/dvdisaster.h
|
||||
+++ b/dvdisaster.h
|
||||
@@ -213,6 +213,7 @@ typedef struct _GlobalClosure
|
||||
@@ -229,6 +229,7 @@ typedef struct _GlobalClosure
|
||||
char *binDir; /* place where the binary resides */
|
||||
char *docDir; /* place where our documentation resides */
|
||||
char *viewer; /* Name of preferred PDF viewer */
|
||||
@@ -48,21 +48,21 @@ index db2031e..22eab5a 100644
|
||||
|
||||
GMutex progressLock; /* A mutex protected the stuff below */
|
||||
char bs[256]; /* A string of 255 backspace characters */
|
||||
@@ -1299,6 +1300,12 @@ int ProbeAltiVec(void);
|
||||
@@ -1348,6 +1349,12 @@ int ProbeAltiVec(void);
|
||||
|
||||
void ShowPDF(char*);
|
||||
|
||||
/***
|
||||
+/***
|
||||
+ *** show-html.c
|
||||
+ ***/
|
||||
+
|
||||
+void ShowHTML(char*);
|
||||
+
|
||||
+/***
|
||||
/***
|
||||
*** smart-lec.c
|
||||
***/
|
||||
|
||||
diff --git a/help-dialogs.c b/help-dialogs.c
|
||||
index 5065e76..3874463 100644
|
||||
index 75a615e..dc5b440 100644
|
||||
--- a/help-dialogs.c
|
||||
+++ b/help-dialogs.c
|
||||
@@ -599,7 +599,8 @@ static gint about_cb(GtkWidget *widget, GdkEvent *event, gpointer data)
|
||||
|
||||
@@ -1,26 +1,29 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Thu, 5 Jan 2017 19:14:35 +1100
|
||||
Subject: Generate the same PDF document IDs for build reproducibility.
|
||||
Subject: Apply pdftex workarounds for build reproducibility.
|
||||
|
||||
Description: Generate the same PDF IDs for build reproducibility.
|
||||
Description: Apply pdftex workarounds for build reproducibility.
|
||||
* Generate the same PDF IDs.
|
||||
* Suppress additional metadata for included images.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2016-12-21
|
||||
Last-Update: 2017-08-15
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
documentation/user-manual/manual.tex | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
documentation/user-manual/manual.tex | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/documentation/user-manual/manual.tex b/documentation/user-manual/manual.tex
|
||||
index 60fb51e..aaab4fa 100644
|
||||
index 3024f3a..d943232 100644
|
||||
--- a/documentation/user-manual/manual.tex
|
||||
+++ b/documentation/user-manual/manual.tex
|
||||
@@ -65,6 +65,7 @@
|
||||
@@ -65,6 +65,8 @@
|
||||
\fancyfoot{}
|
||||
\fancyfoot[LE,RO]{page \thepage\ of \pageref{LastPage}}
|
||||
|
||||
+\pdftrailerid{dvdisaster}
|
||||
+\pdfsuppressptexinfo=-1
|
||||
\begin{document}
|
||||
|
||||
\definecolor{lightorange}{RGB}{255,224,150}
|
||||
40
debian/patches/29-fix-more-typos.patch
vendored
@@ -9,7 +9,7 @@ Description: Fix more typos in error messages and docs.
|
||||
'sucessful' → 'successful'
|
||||
'improvment' → 'improvement'
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Last-Update: 2017-08-06
|
||||
Last-Update: 2017-12-21
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
@@ -40,10 +40,10 @@ index 51ff827..80fe9d3 100644
|
||||
\bigskip
|
||||
|
||||
diff --git a/locale/cs.po b/locale/cs.po
|
||||
index ed1fc65..9010d21 100644
|
||||
index 453ec07..d89ff4a 100644
|
||||
--- a/locale/cs.po
|
||||
+++ b/locale/cs.po
|
||||
@@ -1903,7 +1903,7 @@ msgid "Media ejection"
|
||||
@@ -1917,7 +1917,7 @@ msgid "Media ejection"
|
||||
msgstr "Vysunutí disku"
|
||||
|
||||
#: preferences.c:2064 preferences.c:2065
|
||||
@@ -53,10 +53,10 @@ index ed1fc65..9010d21 100644
|
||||
|
||||
#: preferences.c:2091
|
||||
diff --git a/locale/de.po b/locale/de.po
|
||||
index bbbfdcc..bb5baa6 100644
|
||||
index 5b47778..8112b13 100644
|
||||
--- a/locale/de.po
|
||||
+++ b/locale/de.po
|
||||
@@ -1959,7 +1959,7 @@ msgid "Media ejection"
|
||||
@@ -1975,7 +1975,7 @@ msgid "Media ejection"
|
||||
msgstr "Datenträger auswerfen"
|
||||
|
||||
#: preferences.c:2064 preferences.c:2065
|
||||
@@ -66,10 +66,10 @@ index bbbfdcc..bb5baa6 100644
|
||||
|
||||
#: preferences.c:2091
|
||||
diff --git a/locale/it.po b/locale/it.po
|
||||
index a074339..000d5c3 100644
|
||||
index f6e9dfd..b98f8d3 100644
|
||||
--- a/locale/it.po
|
||||
+++ b/locale/it.po
|
||||
@@ -1749,7 +1749,7 @@ msgid "Media ejection"
|
||||
@@ -1763,7 +1763,7 @@ msgid "Media ejection"
|
||||
msgstr ""
|
||||
|
||||
#: preferences.c:2064 preferences.c:2065
|
||||
@@ -79,10 +79,10 @@ index a074339..000d5c3 100644
|
||||
|
||||
#: preferences.c:2091
|
||||
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
|
||||
index 04b33b5..00bcaee 100644
|
||||
index f7f6af0..81ee14d 100644
|
||||
--- a/locale/pt_BR.po
|
||||
+++ b/locale/pt_BR.po
|
||||
@@ -1839,7 +1839,7 @@ msgid "Media ejection"
|
||||
@@ -1853,7 +1853,7 @@ msgid "Media ejection"
|
||||
msgstr "Ejeção da mídia"
|
||||
|
||||
#: preferences.c:2064 preferences.c:2065
|
||||
@@ -92,10 +92,10 @@ index 04b33b5..00bcaee 100644
|
||||
|
||||
#: preferences.c:2091
|
||||
diff --git a/locale/ru.po b/locale/ru.po
|
||||
index 6cd3789..1c677d4 100644
|
||||
index 9625a1f..6e980b9 100644
|
||||
--- a/locale/ru.po
|
||||
+++ b/locale/ru.po
|
||||
@@ -1841,7 +1841,7 @@ msgid "Media ejection"
|
||||
@@ -1855,7 +1855,7 @@ msgid "Media ejection"
|
||||
msgstr "Извлечь носитель"
|
||||
|
||||
#: preferences.c:2064 preferences.c:2065
|
||||
@@ -105,10 +105,10 @@ index 6cd3789..1c677d4 100644
|
||||
|
||||
#: preferences.c:2091
|
||||
diff --git a/locale/sv.po b/locale/sv.po
|
||||
index 9f70808..5cd4927 100644
|
||||
index c74a942..3011969 100644
|
||||
--- a/locale/sv.po
|
||||
+++ b/locale/sv.po
|
||||
@@ -1755,7 +1755,7 @@ msgid "Media ejection"
|
||||
@@ -1769,7 +1769,7 @@ msgid "Media ejection"
|
||||
msgstr ""
|
||||
|
||||
#: preferences.c:2064 preferences.c:2065
|
||||
@@ -118,7 +118,7 @@ index 9f70808..5cd4927 100644
|
||||
|
||||
#: preferences.c:2091
|
||||
diff --git a/preferences.c b/preferences.c
|
||||
index f5ef889..5a24200 100644
|
||||
index 4899317..4309809 100644
|
||||
--- a/preferences.c
|
||||
+++ b/preferences.c
|
||||
@@ -2061,8 +2061,8 @@ void CreatePreferencesWindow(void)
|
||||
@@ -133,11 +133,11 @@ index f5ef889..5a24200 100644
|
||||
|
||||
for(i=0; i<2; i++)
|
||||
diff --git a/regtest/rs01.bash b/regtest/rs01.bash
|
||||
index 46bfac4..45f7611 100755
|
||||
index 3c03f61..cc11f6e 100755
|
||||
--- a/regtest/rs01.bash
|
||||
+++ b/regtest/rs01.bash
|
||||
@@ -1327,7 +1327,7 @@ if try "reading medium in 3 passes; 3rd pass recovers some" read_multipass_parti
|
||||
run_regtest read_multipass_partial_success "--read-medium=3 --spinup-delay=0 -r" $TMPISO $ISODIR/no.ecc
|
||||
@@ -1323,7 +1323,7 @@ if try "reading medium w/ ecc in 3 passes; 3rd pass recovers some" read_multipas
|
||||
run_regtest read_multipass_ecc_partial_success "--read-medium=3 --spinup-delay=0 -r" $TMPISO $TMPECC
|
||||
fi
|
||||
|
||||
-# Do a second sucessful read attempt at an incomplete image;
|
||||
@@ -146,10 +146,10 @@ index 46bfac4..45f7611 100755
|
||||
# since CRC caching is a bit complicated in this case.
|
||||
|
||||
diff --git a/scsi-layer.c b/scsi-layer.c
|
||||
index b70a4a4..515cc93 100644
|
||||
index 50f6c4c..22e825d 100644
|
||||
--- a/scsi-layer.c
|
||||
+++ b/scsi-layer.c
|
||||
@@ -2474,7 +2474,7 @@ int ReadSectors(DeviceHandle *dh, unsigned char *buf, gint64 s, int nsectors)
|
||||
@@ -2458,7 +2458,7 @@ int ReadSectors(DeviceHandle *dh, unsigned char *buf, gint64 s, int nsectors)
|
||||
if(Closure->readRaw && dh->rawBuffer)
|
||||
recommended_attempts = dh->rawBuffer->recommendedAttempts;
|
||||
|
||||
@@ -159,7 +159,7 @@ index b70a4a4..515cc93 100644
|
||||
|
||||
if(Closure->stopActions) /* user break */
|
||||
diff --git a/smart-lec.c b/smart-lec.c
|
||||
index 0355879..e33ad8f 100644
|
||||
index 944b70d..534dd65 100644
|
||||
--- a/smart-lec.c
|
||||
+++ b/smart-lec.c
|
||||
@@ -1609,7 +1609,7 @@ static int smart_lec_iteration(sh_context *shc, char *message)
|
||||
|
||||
2
debian/patches/30-hurd-kfreebsd-ftbfs.patch
vendored
@@ -13,7 +13,7 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
1 file changed, 11 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/rs03-create.c b/rs03-create.c
|
||||
index b2c6033..b14e326 100644
|
||||
index 9c7265d..678644c 100644
|
||||
--- a/rs03-create.c
|
||||
+++ b/rs03-create.c
|
||||
@@ -39,16 +39,19 @@
|
||||
|
||||
@@ -11,17 +11,16 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
cacheprobe.c | 16 +++++++++-------
|
||||
closure.c | 6 ++++--
|
||||
rs03-create.c | 2 +-
|
||||
scripts/bash-based-configure | 18 ++++++++++++++++++
|
||||
scsi-freebsd.c | 4 ++--
|
||||
scsi-layer.c | 10 ++++++----
|
||||
scsi-layer.h | 17 +++++++++--------
|
||||
scsi-unknown.c | 4 ++--
|
||||
show-html.c | 15 ++++++++++-----
|
||||
9 files changed, 61 insertions(+), 31 deletions(-)
|
||||
8 files changed, 60 insertions(+), 30 deletions(-)
|
||||
|
||||
diff --git a/cacheprobe.c b/cacheprobe.c
|
||||
index 60c55f9..f30f5d3 100644
|
||||
index 545c690..9f754dd 100644
|
||||
--- a/cacheprobe.c
|
||||
+++ b/cacheprobe.c
|
||||
@@ -22,7 +22,8 @@
|
||||
@@ -76,7 +75,7 @@ index 60c55f9..f30f5d3 100644
|
||||
|
||||
|
||||
diff --git a/closure.c b/closure.c
|
||||
index 632c103..7c8b3bd 100644
|
||||
index 24c1e8c..26ee13b 100644
|
||||
--- a/closure.c
|
||||
+++ b/closure.c
|
||||
@@ -50,7 +50,8 @@ static void get_base_dirs()
|
||||
@@ -89,7 +88,7 @@ index 632c103..7c8b3bd 100644
|
||||
if(DirStat(BINDIR))
|
||||
Closure->binDir = g_strdup(BINDIR);
|
||||
|
||||
@@ -425,7 +426,8 @@ void InitClosure()
|
||||
@@ -432,7 +433,8 @@ void InitClosure()
|
||||
|
||||
/* Generate a more comprehensive version string */
|
||||
|
||||
@@ -99,21 +98,8 @@ index 632c103..7c8b3bd 100644
|
||||
#ifdef HAVE_64BIT
|
||||
#define BITNESS_STRING " 64bit"
|
||||
#else
|
||||
diff --git a/rs03-create.c b/rs03-create.c
|
||||
index b14e326..7a22bae 100644
|
||||
--- a/rs03-create.c
|
||||
+++ b/rs03-create.c
|
||||
@@ -43,7 +43,7 @@
|
||||
|
||||
#define MMAP_FLAGS (MAP_SHARED | MAP_POPULATE | MAP_NORESERVE)
|
||||
|
||||
-#elif defined(SYS_FREEBSD)
|
||||
+#elif defined(SYS_FREEBSD) || defined(SYS_KFREEBSD)
|
||||
|
||||
#define MMAP_FLAGS (MAP_SHARED | MAP_PREFAULT_READ)
|
||||
|
||||
diff --git a/scripts/bash-based-configure b/scripts/bash-based-configure
|
||||
index d62f5d7..9abcf96 100644
|
||||
index f1a8bd1..487a50b 100644
|
||||
--- a/scripts/bash-based-configure
|
||||
+++ b/scripts/bash-based-configure
|
||||
@@ -136,6 +136,15 @@ case "$cfg_uname" in
|
||||
@@ -149,7 +135,7 @@ index d62f5d7..9abcf96 100644
|
||||
CFG_SYS_OPTIONS="-DSYS_UNKNOWN"
|
||||
CFG_SYS_NAME="-DSYS_NAME=\\\"Unknown\\\""
|
||||
diff --git a/scsi-freebsd.c b/scsi-freebsd.c
|
||||
index 78d0be4..793f206 100644
|
||||
index 0e3397a..bbfb913 100644
|
||||
--- a/scsi-freebsd.c
|
||||
+++ b/scsi-freebsd.c
|
||||
@@ -25,7 +25,7 @@
|
||||
@@ -168,7 +154,7 @@ index 78d0be4..793f206 100644
|
||||
-#endif /* SYS_FREEBSD */
|
||||
+#endif /* defined(SYS_FREEBSD) || defined(SYS_KFREEBSD) */
|
||||
diff --git a/scsi-layer.c b/scsi-layer.c
|
||||
index 515cc93..609cb73 100644
|
||||
index 22e825d..eaecc5c 100644
|
||||
--- a/scsi-layer.c
|
||||
+++ b/scsi-layer.c
|
||||
@@ -2005,12 +2005,13 @@ static gint64 query_size(Image *image)
|
||||
@@ -198,7 +184,7 @@ index 515cc93..609cb73 100644
|
||||
|
||||
/***
|
||||
diff --git a/scsi-layer.h b/scsi-layer.h
|
||||
index cc7d9fc..0706a22 100644
|
||||
index cb5c559..6169508 100644
|
||||
--- a/scsi-layer.h
|
||||
+++ b/scsi-layer.h
|
||||
@@ -28,7 +28,7 @@
|
||||
@@ -248,7 +234,7 @@ index cc7d9fc..0706a22 100644
|
||||
union ccb *ccb;
|
||||
#endif
|
||||
diff --git a/scsi-unknown.c b/scsi-unknown.c
|
||||
index e9183f6..ef54552 100644
|
||||
index f5f1072..7b2ccdb 100644
|
||||
--- a/scsi-unknown.c
|
||||
+++ b/scsi-unknown.c
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
192
debian/patches/32-display-compilation-commands.patch
vendored
Normal file
@@ -0,0 +1,192 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Wed, 9 Aug 2017 20:49:31 +1000
|
||||
Subject: Do not suppress the display of compilation commands
|
||||
|
||||
Description: Do not suppress the display of compilation commands,
|
||||
so that build logs may be analysed by blhc.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2017-08-9
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
GNUmakefile.template | 93 +++++++++++++++++++++++++---------------------------
|
||||
1 file changed, 45 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/GNUmakefile.template b/GNUmakefile.template
|
||||
index d80932d..ac1f597 100644
|
||||
--- a/GNUmakefile.template
|
||||
+++ b/GNUmakefile.template
|
||||
@@ -71,41 +71,41 @@ OFILES = $(CFG_OFILES)
|
||||
|
||||
${BUILDTMP}/%.o : %.c
|
||||
@echo "Compiling:" $?
|
||||
- @$(CC) $(COPTS) -c $? -o $@
|
||||
+ $(CC) $(COPTS) -c $? -o $@
|
||||
|
||||
all: time-stamp dvdisaster
|
||||
|
||||
# Building the dvdisaster binary
|
||||
|
||||
time-stamp:
|
||||
- @$(SRCDIR)/scripts/time-stamper.bash $(SRCDIR)/build.h
|
||||
+ $(SRCDIR)/scripts/time-stamper.bash $(SRCDIR)/build.h
|
||||
|
||||
dvdisaster: inlined-icons.h $(OFILES)
|
||||
@echo "Linking : dvdisaster"
|
||||
- @$(CC) $(LOPTS) $(OFILES) $(LIBS) -o dvdisaster
|
||||
- @if test -e locale/de/LC_MESSAGES/dvdisaster.mo \
|
||||
+ $(CC) $(LOPTS) $(OFILES) $(LIBS) -o dvdisaster
|
||||
+ if test -e locale/de/LC_MESSAGES/dvdisaster.mo \
|
||||
|| echo $(WITH_OPTIONS) | grep "NLS_NO" >/dev/null; \
|
||||
then echo "not touching locale"; \
|
||||
else $(MAKE) --no-print-directory -C locale; \
|
||||
fi
|
||||
|
||||
inlined-icons.h: icons/read.png icons/create.png icons/scan.png icons/fix.png icons/verify.png
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_read icons/read.png >inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_create icons/create.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_scan icons/scan.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_fix icons/fix.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_verify icons/verify.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_open_ecc icons/open-ecc.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_open_img icons/open-img.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_cd icons/cd.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_gtk_help icons/gtk-help.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_gtk_index icons/gtk-index.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_gtk_preferences icons/gtk-preferences.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_gtk_quit icons/gtk-quit.png >>inlined-icons.h
|
||||
- @gdk-pixbuf-csource --raw --name=dvdisaster_gtk_stop icons/gtk-stop.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_read icons/read.png >inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_create icons/create.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_scan icons/scan.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_fix icons/fix.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_verify icons/verify.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_open_ecc icons/open-ecc.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_open_img icons/open-img.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_cd icons/cd.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_gtk_help icons/gtk-help.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_gtk_index icons/gtk-index.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_gtk_preferences icons/gtk-preferences.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_gtk_quit icons/gtk-quit.png >>inlined-icons.h
|
||||
+ gdk-pixbuf-csource --raw --name=dvdisaster_gtk_stop icons/gtk-stop.png >>inlined-icons.h
|
||||
|
||||
$(BUILDTMP)/help-dialogs.o: help-dialogs.c simple-md5sum
|
||||
- @if test -e fingerprints.md5; \
|
||||
+ if test -e fingerprints.md5; \
|
||||
then if test -e help-dialogs.h; then rm help-dialogs.h; fi; \
|
||||
mv inlined-icons.h inlined-icons.saved; \
|
||||
mv build.h build.saved; \
|
||||
@@ -121,35 +121,35 @@ $(BUILDTMP)/help-dialogs.o: help-dialogs.c simple-md5sum
|
||||
else echo "#define MODIFIED_SOURCE 1" >> help-dialogs.h; \
|
||||
fi
|
||||
@echo "Compiling:" help-dialogs.c
|
||||
- @$(CC) $(COPTS) -c help-dialogs.c -o $(BUILDTMP)/help-dialogs.o
|
||||
+ $(CC) $(COPTS) -c help-dialogs.c -o $(BUILDTMP)/help-dialogs.o
|
||||
|
||||
$(BUILDTMP)/rs-encoder-sse2.o: rs-encoder-sse2.c
|
||||
@echo "Compiling:" rs-encoder-sse2.c
|
||||
- @$(CC) $(SSE2_OPTIONS) $(COPTS) -c rs-encoder-sse2.c -o $(BUILDTMP)/rs-encoder-sse2.o
|
||||
+ $(CC) $(SSE2_OPTIONS) $(COPTS) -c rs-encoder-sse2.c -o $(BUILDTMP)/rs-encoder-sse2.o
|
||||
|
||||
$(BUILDTMP)/rs-encoder-altivec.o: rs-encoder-altivec.c
|
||||
@echo "Compiling:" rs-encoder-altivec.c
|
||||
- @$(CC) $(ALTIVEC_OPTIONS) $(COPTS) -c rs-encoder-altivec.c -o $(BUILDTMP)/rs-encoder-altivec.o
|
||||
+ $(CC) $(ALTIVEC_OPTIONS) $(COPTS) -c rs-encoder-altivec.c -o $(BUILDTMP)/rs-encoder-altivec.o
|
||||
|
||||
locale:
|
||||
- @$(MAKE) --no-print-directory -C locale
|
||||
+ $(MAKE) --no-print-directory -C locale
|
||||
|
||||
untranslated:
|
||||
- @$(MAKE) --no-print-directory -C locale check-untranslated
|
||||
+ $(MAKE) --no-print-directory -C locale check-untranslated
|
||||
|
||||
simple-md5sum: md5.c
|
||||
- @$(CC) $(COPTS) $(MUDFLAP_CFLAGS) -DSIMPLE_MD5SUM md5.c $(MUDFLAP_LFLAGS) $(MUDFLAP_LIBS) -o simple-md5sum
|
||||
+ $(CC) $(COPTS) $(MUDFLAP_CFLAGS) -DSIMPLE_MD5SUM md5.c $(MUDFLAP_LFLAGS) $(MUDFLAP_LIBS) -o simple-md5sum
|
||||
|
||||
version.tex:
|
||||
@echo "\\newcommand{\\projectversion}{$(VERSION)}" >$(SRCDIR)/documentation/config/version.tex
|
||||
|
||||
manual: version.tex
|
||||
@echo "Producing user manual... "
|
||||
- @$(MAKE) --no-print-directory -C documentation/user-manual manual.pdf
|
||||
+ $(MAKE) --no-print-directory -C documentation/user-manual manual.pdf
|
||||
|
||||
manualclean:
|
||||
@echo "Removing temporary user manual files... "
|
||||
- @$(MAKE) --no-print-directory -C documentation/user-manual clean
|
||||
+ $(MAKE) --no-print-directory -C documentation/user-manual clean
|
||||
|
||||
|
||||
# Some usage info
|
||||
@@ -259,13 +259,13 @@ uninstall:
|
||||
|
||||
archclean: distclean
|
||||
@echo "Removing rebuildable documentation parts"
|
||||
- @$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/codec-specs archclean
|
||||
- @$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/user-manual archclean
|
||||
+ $(MAKE) --no-print-directory -C $(SRCDIR)/documentation/codec-specs archclean
|
||||
+ $(MAKE) --no-print-directory -C $(SRCDIR)/documentation/user-manual archclean
|
||||
|
||||
distclean: clean
|
||||
@echo "Removing configuration files"
|
||||
- @rm -f configure.log Makefile.config GNUmakefile locale/Makefile
|
||||
- @for i in locale/?? locale/??_??; do rm -rf $$i; done
|
||||
+ rm -f configure.log Makefile.config GNUmakefile locale/Makefile
|
||||
+ for i in locale/?? locale/??_??; do rm -rf $$i; done
|
||||
@echo "all:" >>GNUmakefile
|
||||
@echo -e "\t@echo" >>GNUmakefile
|
||||
@echo -e "\t@echo \"Please create a Makefile by entering \\\"bash configure\\\" first\"" >>GNUmakefile
|
||||
@@ -277,14 +277,14 @@ distclean: clean
|
||||
|
||||
clean:
|
||||
@echo "Removing rebuildable files"
|
||||
- @rm -rf *.o $(BUILDTMP)/*.o medium.* abbild.* dvdisaster .dvdisaster core core.* *.core
|
||||
- @rm -f inlined-icons.h help-dialogs.h
|
||||
- @find . -name \*\~ -print | xargs rm -f;
|
||||
- @find . -name \*.mo -print | xargs rm -f;
|
||||
- @find . -name \#\*\# -print | xargs rm -f;
|
||||
- @rm -f documentation/config/version.tex
|
||||
- @if test -e $(PKGNAME); then rm -rf $(PKGNAME); fi
|
||||
- @if test -e ~/.dvdisaster-original-author; then \
|
||||
+ rm -rf *.o $(BUILDTMP)/*.o medium.* abbild.* dvdisaster .dvdisaster core core.* *.core
|
||||
+ rm -f inlined-icons.h help-dialogs.h
|
||||
+ find . -name \*\~ -print | xargs rm -f;
|
||||
+ find . -name \*.mo -print | xargs rm -f;
|
||||
+ find . -name \#\*\# -print | xargs rm -f;
|
||||
+ rm -f documentation/config/version.tex
|
||||
+ if test -e $(PKGNAME); then rm -rf $(PKGNAME); fi
|
||||
+ if test -e ~/.dvdisaster-original-author; then \
|
||||
mv build.h build.saved ;\
|
||||
if ! test -x simple-md5sum || ! ./simple-md5sum >/dev/null 2>&1; then \
|
||||
rm -f simple-md5sum; \
|
||||
@@ -294,20 +294,17 @@ clean:
|
||||
./simple-md5sum -b *.h *.c >fingerprints.md5 ;\
|
||||
mv build.saved build.h; \
|
||||
fi
|
||||
- @rm -f simple-md5sum
|
||||
- @$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/codec-specs clean;
|
||||
- @$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/user-manual clean;
|
||||
+ rm -f simple-md5sum
|
||||
+ $(MAKE) --no-print-directory -C $(SRCDIR)/documentation/codec-specs clean;
|
||||
+ $(MAKE) --no-print-directory -C $(SRCDIR)/documentation/user-manual clean;
|
||||
|
||||
BUILD=`grep BUILD $(SRCDIR)/build.h | cut -d ' ' -f 3`
|
||||
arch: archclean time-stamp
|
||||
- @cd .. ; tar -c -z -f $(TAR_PREFIX)/$(PKGNAME)-$(BUILD).tgz $(PKGNAME)
|
||||
+ cd .. ; tar -c -z -f $(TAR_PREFIX)/$(PKGNAME)-$(BUILD).tgz $(PKGNAME)
|
||||
|
||||
INSTALL: documentation/install.template
|
||||
- @sed "s/@@PKGNAME/$(PKGNAME)/" <documentation/install.template >INSTALL
|
||||
+ sed "s/@@PKGNAME/$(PKGNAME)/" <documentation/install.template >INSTALL
|
||||
|
||||
srcdist: INSTALL distclean manual manualclean
|
||||
- @cd .. ; tar -c -j -X $(PKGNAME)/NODIST -f $(TAR_PREFIX)/$(PKGNAME).tar.bz2 $(PKGNAME)
|
||||
- @cd .. ; gpg --homedir .gnupg --default-key 758BCC23 --detach-sign --output $(TAR_PREFIX)/$(PKGNAME).tar.bz2.gpg --armor $(TAR_PREFIX)/$(PKGNAME).tar.bz2
|
||||
-
|
||||
-
|
||||
-
|
||||
+ cd .. ; tar -c -j -X $(PKGNAME)/NODIST -f $(TAR_PREFIX)/$(PKGNAME).tar.bz2 $(PKGNAME)
|
||||
+ cd .. ; gpg --homedir .gnupg --default-key 758BCC23 --detach-sign --output $(TAR_PREFIX)/$(PKGNAME).tar.bz2.gpg --armor $(TAR_PREFIX)/$(PKGNAME).tar.bz2
|
||||
28
debian/patches/33-honour-LDFLAGS.patch
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Thu, 21 Dec 2017 02:44:53 +1100
|
||||
Subject: Honour LDFLAGS set by dpkg-buildflags in building all binaries.
|
||||
|
||||
Description: Honour LDFLAGS set by dpkg-buildflags in building all binaries.
|
||||
Unpackaged simple-md5sum utility must do so as well, to keep blhc happy.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: no
|
||||
Last-Update: 2017-12-21
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
GNUmakefile.template | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/GNUmakefile.template b/GNUmakefile.template
|
||||
index ac1f597..4509c48 100644
|
||||
--- a/GNUmakefile.template
|
||||
+++ b/GNUmakefile.template
|
||||
@@ -138,7 +138,7 @@ untranslated:
|
||||
$(MAKE) --no-print-directory -C locale check-untranslated
|
||||
|
||||
simple-md5sum: md5.c
|
||||
- $(CC) $(COPTS) $(MUDFLAP_CFLAGS) -DSIMPLE_MD5SUM md5.c $(MUDFLAP_LFLAGS) $(MUDFLAP_LIBS) -o simple-md5sum
|
||||
+ $(CC) $(COPTS) $(MUDFLAP_CFLAGS) -DSIMPLE_MD5SUM md5.c $(LDFLAGS) $(MUDFLAP_LFLAGS) $(MUDFLAP_LIBS) -o simple-md5sum
|
||||
|
||||
version.tex:
|
||||
@echo "\\newcommand{\\projectversion}{$(VERSION)}" >$(SRCDIR)/documentation/config/version.tex
|
||||
27
debian/patches/34-gcc8-format-security.patch
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Thu, 31 Jan 2019 05:10:21 +1100
|
||||
Subject: Fix format security warning in GCC-8.
|
||||
|
||||
Description: Fix format security warning in GCC-8.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: no
|
||||
Last-Update: 2019-01-31
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
udf.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/udf.c b/udf.c
|
||||
index 174fa36..9e345c2 100644
|
||||
--- a/udf.c
|
||||
+++ b/udf.c
|
||||
@@ -794,7 +794,7 @@ void FreeIsoHeader(IsoHeader *ih)
|
||||
|
||||
void AddFile(IsoHeader *ih, char *name, guint64 size)
|
||||
{ static int n;
|
||||
- char iso[20], joliet[strlen(name)+3];
|
||||
+ char iso[22], joliet[strlen(name)+3];
|
||||
|
||||
n++;
|
||||
sprintf(iso,"RAN_%04d.DAT;1", n);
|
||||
108
debian/patches/35-archived-homepage.patch
vendored
Normal file
@@ -0,0 +1,108 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Thu, 31 Jan 2019 05:31:03 +1100
|
||||
Subject: Change homepage to one archived at web.archive.org.
|
||||
|
||||
Description: Change homepage to one archived at web.archive.org.
|
||||
http://dvdisaster.net has been unavailable for a while now.
|
||||
Not certain if this is permanent though, as the domain name still
|
||||
exists for mail.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2019-01-31
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
documentation/codec-specs/rs01.tex | 2 +-
|
||||
documentation/codec-specs/rs02.tex | 2 +-
|
||||
documentation/upstream-site/de/impressum.html | 2 +-
|
||||
documentation/upstream-site/en/imprint.html | 2 +-
|
||||
documentation/user-manual/background.tex | 2 +-
|
||||
documentation/user-manual/download.tex | 4 ++--
|
||||
6 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/documentation/codec-specs/rs01.tex b/documentation/codec-specs/rs01.tex
|
||||
index a8c0d90..ca7f71f 100644
|
||||
--- a/documentation/codec-specs/rs01.tex
|
||||
+++ b/documentation/codec-specs/rs01.tex
|
||||
@@ -44,7 +44,7 @@ correction files must be protected with an image level
|
||||
error correction layer (by using RS01,RS02 or RS03 on the medium),
|
||||
since only image level error correction avoids meta
|
||||
data sectors to become a single point of failure. See the
|
||||
-discussion at \url{http://dvdisaster.net/en/qa32.html} for
|
||||
+discussion at \url{https://web.archive.org/web/20180428070843/http://dvdisaster.net/en/qa32.html} for
|
||||
more information on the advantages of image level data protection
|
||||
over file level approaches.
|
||||
|
||||
diff --git a/documentation/codec-specs/rs02.tex b/documentation/codec-specs/rs02.tex
|
||||
index fb88384..06e8126 100644
|
||||
--- a/documentation/codec-specs/rs02.tex
|
||||
+++ b/documentation/codec-specs/rs02.tex
|
||||
@@ -74,7 +74,7 @@ the parity data portion of the image might not be written to the medium.
|
||||
Most current writing programs do however measure the .iso image by examining
|
||||
its file size, and will transfer the parity data correctly. To be sure you
|
||||
should follow the steps described under ``Testing image compatibility''
|
||||
-at the dvdisaster site (\url{http://dvdisaster.net/en/howtos92.html}) once
|
||||
+at the dvdisaster site (\url{https://web.archive.org/web/20180428070843/http://dvdisaster.net/en/howtos92.html}) once
|
||||
before using each version of your optical media authoring software.
|
||||
|
||||
Like the other dvdisaster codecs, RS02 is based on a RS(255,k) Reed-Solomon code
|
||||
diff --git a/documentation/upstream-site/de/impressum.html b/documentation/upstream-site/de/impressum.html
|
||||
index 7c5ded3..d8bf4f8 100644
|
||||
--- a/documentation/upstream-site/de/impressum.html
|
||||
+++ b/documentation/upstream-site/de/impressum.html
|
||||
@@ -63,7 +63,7 @@ Carsten Gnörlich (Anschrift wie oben).
|
||||
Das Impressum gilt für die Internetpräsenz unter den Domänen<br>
|
||||
<a href="http://dvdisaster.com">dvdisaster.com</a>,
|
||||
<a href="http://dvdisaster.de">dvdisaster.de</a>,
|
||||
-<a href="http://dvdisaster.net">dvdisaster.net</a>,
|
||||
+<a href="https://web.archive.org/web/20180428070843/http://dvdisaster.net">dvdisaster.net</a>,
|
||||
<a href="http://dvdisaster.org">dvdisaster.org</a>.
|
||||
|
||||
<!-- Page footer -->
|
||||
diff --git a/documentation/upstream-site/en/imprint.html b/documentation/upstream-site/en/imprint.html
|
||||
index d99324b..43641f2 100644
|
||||
--- a/documentation/upstream-site/en/imprint.html
|
||||
+++ b/documentation/upstream-site/en/imprint.html
|
||||
@@ -63,7 +63,7 @@ Carsten Gnörlich (see above for address).
|
||||
This notice covers the web sites under the domains<br>
|
||||
<a href="http://dvdisaster.com">dvdisaster.com</a>,
|
||||
<a href="http://dvdisaster.de">dvdisaster.de</a>,
|
||||
-<a href="http://dvdisaster.net">dvdisaster.net</a>,
|
||||
+<a href="https://web.archive.org/web/20180428070843/http://dvdisaster.net">dvdisaster.net</a>,
|
||||
<a href="http://dvdisaster.org">dvdisaster.org</a>.<br>
|
||||
|
||||
<!-- Page footer -->
|
||||
diff --git a/documentation/user-manual/background.tex b/documentation/user-manual/background.tex
|
||||
index ba602ef..9aba84f 100644
|
||||
--- a/documentation/user-manual/background.tex
|
||||
+++ b/documentation/user-manual/background.tex
|
||||
@@ -272,7 +272,7 @@ media with augmented images may not play correctly on all units \\
|
||||
\end{tabular}
|
||||
|
||||
\paragraph{Further reading.} The specification for the dvdisaster codecs
|
||||
-has been specified in a separate document called \href{http://dvdisaster.net/downloads/codecs.pdf}{codecs.pdf}.
|
||||
+has been specified in a separate document called \href{https://web.archive.org/web/20180428070843/http://dvdisaster.net/downloads/codecs.pdf}{codecs.pdf}.
|
||||
Good knowledge in coding theory and programming is required.
|
||||
|
||||
\subsection{The linear reading strategy}
|
||||
diff --git a/documentation/user-manual/download.tex b/documentation/user-manual/download.tex
|
||||
index 79df7be..a91a44a 100644
|
||||
--- a/documentation/user-manual/download.tex
|
||||
+++ b/documentation/user-manual/download.tex
|
||||
@@ -15,7 +15,7 @@ the \href{http://www.gnu.org/licenses/gpl-3.0.txt}{GNU General Public License v3
|
||||
|
||||
\bigskip
|
||||
|
||||
-The dvdisaster developer site (\url{http://dvdisaster.net}) contains
|
||||
+The dvdisaster developer site (\url{https://web.archive.org/web/20180428070843/http://dvdisaster.net}) contains
|
||||
the latest source code releases for the FreeBSD, GNU/Linux and NetBSD
|
||||
operating systems. These are mostly aimed at maintainers of binary packages for
|
||||
the beforementioned platforms. As an end user you might find it more convenient
|
||||
@@ -133,6 +133,6 @@ We cannot accept them for various reasons.
|
||||
\smallskip
|
||||
|
||||
dvdisaster releases are always published with cryptographic signatures
|
||||
-and md5 checksums. See the \href{http://dvdisaster.net}{download site} for examples.
|
||||
+and md5 checksums. See the \href{https://web.archive.org/web/20180428070843/http://dvdisaster.net}{download site} for examples.
|
||||
Be very cautious if signatures and checksums are missing, invalid or not
|
||||
matching those published at the sites mentioned above.
|
||||
54
debian/patches/36-fix-parallelism.patch
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Fri, 1 Feb 2019 22:28:18 +1100
|
||||
Subject: Fix parallel build of locale strings.
|
||||
|
||||
Description: Fix parallel build of locale strings.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: no
|
||||
Last-Update: 2019-02-01
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
GNUmakefile.template | 1 +
|
||||
locale/create-makefile | 10 +++++++---
|
||||
2 files changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/GNUmakefile.template b/GNUmakefile.template
|
||||
index 4509c48..3aae04e 100644
|
||||
--- a/GNUmakefile.template
|
||||
+++ b/GNUmakefile.template
|
||||
@@ -297,6 +297,7 @@ clean:
|
||||
rm -f simple-md5sum
|
||||
$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/codec-specs clean;
|
||||
$(MAKE) --no-print-directory -C $(SRCDIR)/documentation/user-manual clean;
|
||||
+ $(MAKE) --no-print-directory -C $(SRCDIR)/locale clean;
|
||||
|
||||
BUILD=`grep BUILD $(SRCDIR)/build.h | cut -d ' ' -f 3`
|
||||
arch: archclean time-stamp
|
||||
diff --git a/locale/create-makefile b/locale/create-makefile
|
||||
index 5ed31ed..83a4abf 100644
|
||||
--- a/locale/create-makefile
|
||||
+++ b/locale/create-makefile
|
||||
@@ -30,15 +30,19 @@ locale: \$(LOCALEFILES)
|
||||
|
||||
# Create the locale files.
|
||||
|
||||
+messages.pot: \$(CFILES)
|
||||
+ @cd ..; xgettext --no-wrap -cTRANSLATORS: -o locale/messages.pot -k_ -k_utf \$(CFILES_NP)
|
||||
+
|
||||
+clean:
|
||||
+ rm -f messages.pot
|
||||
+
|
||||
EOF
|
||||
|
||||
for i in $prefixes; do
|
||||
cat >> Makefile <<EOF
|
||||
-$i.po: \$(CFILES)
|
||||
+$i.po: messages.pot
|
||||
@echo "Updating $i.po"
|
||||
- @cd ..; xgettext --no-wrap -cTRANSLATORS: -o locale/messages.pot -k_ -k_utf \$(CFILES_NP)
|
||||
@msgmerge -q -U --no-wrap --no-fuzzy-matching $i.po messages.pot
|
||||
- @rm -f messages.pot
|
||||
|
||||
$i/LC_MESSAGES/dvdisaster.mo: $i.po
|
||||
@echo "Updating $i.mo"
|
||||
137
debian/patches/37-suggest-dvdisaster-doc.patch
vendored
Normal file
@@ -0,0 +1,137 @@
|
||||
From: Carlos Maddela <e7appew@gmail.com>
|
||||
Date: Sat, 2 Feb 2019 13:56:04 +1100
|
||||
Subject: Suggest to install dvdisaster-doc in error message
|
||||
|
||||
Description: Suggest to install dvdisaster-doc in error message
|
||||
if the PDF manual cannot be found.
|
||||
Author: Carlos Maddela <e7appew@gmail.com>
|
||||
Forwarded: not-needed
|
||||
Last-Update: 2019-02-02
|
||||
---
|
||||
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
|
||||
---
|
||||
locale/cs.po | 2 ++
|
||||
locale/de.po | 2 ++
|
||||
locale/it.po | 2 ++
|
||||
locale/pt_BR.po | 2 ++
|
||||
locale/ru.po | 2 ++
|
||||
locale/sv.po | 2 ++
|
||||
show-manual.c | 3 ++-
|
||||
7 files changed, 14 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/locale/cs.po b/locale/cs.po
|
||||
index d89ff4a..b55c45a 100644
|
||||
--- a/locale/cs.po
|
||||
+++ b/locale/cs.po
|
||||
@@ -6077,10 +6077,12 @@ msgid ""
|
||||
"Documentation file\n"
|
||||
"%s\n"
|
||||
"not found.\n"
|
||||
+"Please install the dvdisaster-doc package.\n"
|
||||
msgstr ""
|
||||
"Soubor dokumentace\n"
|
||||
"%s\n"
|
||||
"nebyl nalezen.\n"
|
||||
+"Nainstalujte prosím balíček dvdisaster-doc.\n"
|
||||
|
||||
#: show-manual.c:308
|
||||
msgid "Please hang on until the viewer comes up!"
|
||||
diff --git a/locale/de.po b/locale/de.po
|
||||
index 8112b13..f54b083 100644
|
||||
--- a/locale/de.po
|
||||
+++ b/locale/de.po
|
||||
@@ -6226,10 +6226,12 @@ msgid ""
|
||||
"Documentation file\n"
|
||||
"%s\n"
|
||||
"not found.\n"
|
||||
+"Please install the dvdisaster-doc package.\n"
|
||||
msgstr ""
|
||||
"Dokument-Datei\n"
|
||||
"%s\n"
|
||||
"nicht gefunden.\n"
|
||||
+"Bitte installieren Sie das dvdisaster-doc-Paket.\n"
|
||||
|
||||
#: show-manual.c:308
|
||||
msgid "Please hang on until the viewer comes up!"
|
||||
diff --git a/locale/it.po b/locale/it.po
|
||||
index b98f8d3..de60016 100644
|
||||
--- a/locale/it.po
|
||||
+++ b/locale/it.po
|
||||
@@ -5629,10 +5629,12 @@ msgid ""
|
||||
"Documentation file\n"
|
||||
"%s\n"
|
||||
"not found.\n"
|
||||
+"Please install the dvdisaster-doc package.\n"
|
||||
msgstr ""
|
||||
"File di documentazione\n"
|
||||
"%s\n"
|
||||
"non trovati.\n"
|
||||
+"Si prega di installare il pacchetto dvdisaster-doc.\n"
|
||||
|
||||
#: show-manual.c:308
|
||||
msgid "Please hang on until the viewer comes up!"
|
||||
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
|
||||
index 81ee14d..3659f11 100644
|
||||
--- a/locale/pt_BR.po
|
||||
+++ b/locale/pt_BR.po
|
||||
@@ -5950,10 +5950,12 @@ msgid ""
|
||||
"Documentation file\n"
|
||||
"%s\n"
|
||||
"not found.\n"
|
||||
+"Please install the dvdisaster-doc package.\n"
|
||||
msgstr ""
|
||||
"Arquivo de documentação\n"
|
||||
"%s\n"
|
||||
"não encontrado.\n"
|
||||
+"Por favor, instale o pacote dvdisaster-doc.\n"
|
||||
|
||||
#: show-manual.c:308
|
||||
msgid "Please hang on until the viewer comes up!"
|
||||
diff --git a/locale/ru.po b/locale/ru.po
|
||||
index 6e980b9..9c45692 100644
|
||||
--- a/locale/ru.po
|
||||
+++ b/locale/ru.po
|
||||
@@ -5958,10 +5958,12 @@ msgid ""
|
||||
"Documentation file\n"
|
||||
"%s\n"
|
||||
"not found.\n"
|
||||
+"Please install the dvdisaster-doc package.\n"
|
||||
msgstr ""
|
||||
"Файл документации\n"
|
||||
"%s\n"
|
||||
"не найден.\n"
|
||||
+"Пожалуйста, установите пакет dvdisaster-doc.\n"
|
||||
|
||||
#: show-manual.c:308
|
||||
msgid "Please hang on until the viewer comes up!"
|
||||
diff --git a/locale/sv.po b/locale/sv.po
|
||||
index 3011969..9cee323 100644
|
||||
--- a/locale/sv.po
|
||||
+++ b/locale/sv.po
|
||||
@@ -5648,10 +5648,12 @@ msgid ""
|
||||
"Documentation file\n"
|
||||
"%s\n"
|
||||
"not found.\n"
|
||||
+"Please install the dvdisaster-doc package.\n"
|
||||
msgstr ""
|
||||
"Dokumentationsfilen\n"
|
||||
"%s\n"
|
||||
"hittades inte.\n"
|
||||
+"Installera dvdisaster-doc-paketet.\n"
|
||||
|
||||
#: show-manual.c:308
|
||||
msgid "Please hang on until the viewer comes up!"
|
||||
diff --git a/show-manual.c b/show-manual.c
|
||||
index 4abbe97..5ac8e97 100644
|
||||
--- a/show-manual.c
|
||||
+++ b/show-manual.c
|
||||
@@ -296,7 +296,8 @@ void ShowPDF(char *target)
|
||||
|
||||
if(!LargeStat(bi->path, &ignore))
|
||||
{
|
||||
- CreateMessage(_("Documentation file\n%s\nnot found.\n"), GTK_MESSAGE_ERROR, bi->path);
|
||||
+ CreateMessage(_("Documentation file\n%s\nnot found.\n"
|
||||
+ "Please install the dvdisaster-doc package.\n"), GTK_MESSAGE_ERROR, bi->path);
|
||||
g_free(bi->path);
|
||||
g_free(bi);
|
||||
return;
|
||||
22
debian/patches/series
vendored
@@ -1,25 +1,9 @@
|
||||
02-encryption.patch
|
||||
03-dvdrom.patch
|
||||
05-help-dialog.patch
|
||||
08-fix-gnu-make-detection.patch
|
||||
10-use-non-size-specific-icon-and-add-keywords-to-desktop-file.patch
|
||||
11-no-cruft.patch
|
||||
12-fix-spelling-of-up-to.patch
|
||||
13-fix-missing-language-field-in-po-files.patch
|
||||
14-make-builds-reproducible.patch
|
||||
15-show-new-pkg-tracker.patch
|
||||
16-remove-auto-build-of-doco-from-install-rule.patch
|
||||
17-fix-all-but-deprecated-api-warnings.patch
|
||||
18-update-copyright-in-about-dialog.patch
|
||||
19-show-text-files-with-abs-path.patch
|
||||
20-display-changelog-credits-and-todo.patch
|
||||
22-fix-hurd-i386-ftbfs.patch
|
||||
23-add-bdrom-support.patch
|
||||
24-show-gpl3-license.patch
|
||||
25-fix-man-pages.patch
|
||||
26-fix-display-of-manual.pdf.patch
|
||||
27-allow-opening-in-browser-again.patch
|
||||
28-fudge-pdf-doc-ids.patch
|
||||
29-fix-more-typos.patch
|
||||
30-hurd-kfreebsd-ftbfs.patch
|
||||
31-improve-hurd-and-kfreebsd-support.patch
|
||||
32-display-compilation-commands.patch
|
||||
34-gcc8-format-security.patch
|
||||
37-suggest-dvdisaster-doc.patch
|
||||
|
||||
74
debian/rules
vendored
@@ -1,5 +1,7 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
export DH_VERBOSE = 1
|
||||
|
||||
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
||||
DPKG_EXPORT_BUILDFLAGS = 1
|
||||
include /usr/share/dpkg/buildflags.mk
|
||||
@@ -7,55 +9,67 @@ export DEB_CFLAGS_MAINT_APPEND = $(CPPFLAGS) -Wall -Wno-deprecated-declarations
|
||||
export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
||||
|
||||
include /usr/share/dpkg/pkg-info.mk
|
||||
export DEB_VERSION
|
||||
export FORCE_SOURCE_DATE = 1
|
||||
|
||||
MUTABLE_FILES := build.h $(wildcard locale/*.po) \
|
||||
documentation/config/version.tex
|
||||
documentation/config/version.tex \
|
||||
documentation/user-manual/manual.pdf
|
||||
BACKUP_TAR_FILE := debian/backup.tar
|
||||
|
||||
BUILDROOT := $(CURDIR)/debian/tmp
|
||||
ICONS := $(wildcard contrib/dvdisaster*.png)
|
||||
ICON_SIZES := $(patsubst contrib/dvdisaster%.png,%,$(ICONS))
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
override_dh_auto_configure:
|
||||
for f in $(MUTABLE_FILES); do \
|
||||
cp -an $$f $$f.orig; \
|
||||
done
|
||||
dh_auto_configure -- \
|
||||
--localedir=\$${prefix}/share/locale \
|
||||
--docdir=\$${prefix}share/doc \
|
||||
--docsubdir=dvdisaster-doc \
|
||||
--with-embedded-src-path=no
|
||||
override_dh_update_autotools_config:
|
||||
dh_update_autotools_config
|
||||
test -f $(BACKUP_TAR_FILE) || \
|
||||
tar cpf $(BACKUP_TAR_FILE) $(MUTABLE_FILES)
|
||||
|
||||
override_dh_clean:
|
||||
dh_clean -X.orig
|
||||
for f in $(MUTABLE_FILES); do \
|
||||
test ! -f $$f.orig || mv -f $$f.orig $$f; \
|
||||
done
|
||||
dh_clean
|
||||
test ! -f $(BACKUP_TAR_FILE) || \
|
||||
tar xpf $(BACKUP_TAR_FILE) && rm -f $(BACKUP_TAR_FILE)
|
||||
|
||||
override_dh_auto_configure:
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--mandir=share/man \
|
||||
--localedir=share/locale \
|
||||
--docdir=share/doc \
|
||||
--docsubdir=dvdisaster \
|
||||
--with-embedded-src-path=no
|
||||
|
||||
override_dh_auto_build-arch:
|
||||
make all
|
||||
dh_auto_build -a -- all
|
||||
|
||||
# For the time being, we'll just package the upstream-generated
|
||||
# manual.pdf, since we can't build the PDF reproducibly ourselves.
|
||||
# The reason we can't is most probably due to the fact that the
|
||||
# LaTeX document embeds other PDF documents and PNG images.
|
||||
# Although we are able to reproduce the PDF's creation and mod
|
||||
# dates, as well as its PDF IDs, the stream elements representing
|
||||
# the embedded images are always what seem to differ each time we
|
||||
# try to generate the PDF.
|
||||
override_dh_auto_build-indep:
|
||||
# make manual
|
||||
true
|
||||
dh_auto_build -i \
|
||||
$(if $(findstring nodoc,$(DEB_BUILD_OPTIONS)),--no-act) \
|
||||
-- manual
|
||||
|
||||
override_dh_auto_install-arch:
|
||||
dh_auto_install -a -- BUILDROOT=$(CURDIR)/debian/tmp
|
||||
dh_auto_install -a -- BUILDROOT=$(BUILDROOT)
|
||||
set -e; \
|
||||
for S in $(ICON_SIZES); do \
|
||||
D="$(BUILDROOT)/usr/share/icons/hicolor/$${S}x$${S}/apps"; \
|
||||
install -d "$${D}"; \
|
||||
install -T "contrib/dvdisaster$${S}.png" "$${D}/dvdisaster.png"; \
|
||||
done
|
||||
|
||||
override_dh_auto_install-indep:
|
||||
true
|
||||
|
||||
# Ensure that none of the text files that the application
|
||||
# tries to display directly are not compressed, as it doesn't
|
||||
# tries to display directly are compressed, as it doesn't
|
||||
# automatically decompress text files.
|
||||
override_dh_compress:
|
||||
override_dh_compress-arch:
|
||||
dh_compress -p dvdisaster \
|
||||
-XCHANGELOG -XCREDITS -XREADME.MODIFYING -XTODO
|
||||
dh_compress --remaining-packages
|
||||
-Xchangelog -XCREDITS -XREADME.MODIFYING -XTODO
|
||||
gzip -9n debian/dvdisaster/usr/share/doc/dvdisaster/changelog.Debian
|
||||
|
||||
override_dh_installchangelogs-arch:
|
||||
dh_installchangelogs -p dvdisaster -k
|
||||
|
||||
1
debian/source/lintian-overrides
vendored
Normal file
@@ -0,0 +1 @@
|
||||
dvdisaster source: debian-watch-uses-insecure-uri http://dvdisaster.net/en/index.html
|
||||
4
debian/upstream/metadata
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# https://wiki.debian.org/UpstreamMetadata
|
||||
Documentation: https://web.archive.org/web/20180428070843/http://dvdisaster.net/en/misc.html#manual
|
||||
Homepage: https://web.archive.org/web/20180428070843/http://dvdisaster.net/
|
||||
Security-Contact: Carsten Gnörlich <carsten@dvdisaster.org>
|
||||
2
debian/watch
vendored
@@ -1,4 +1,4 @@
|
||||
version=3
|
||||
opts="pgpsigurlmangle=s/$/.gpg/" \
|
||||
http://dvdisaster.net/en/index.html \
|
||||
https://web.archive.org/web/20180428070843/https://dvdisaster.net/en/index.html \
|
||||
(?:.*?/)?dvdisaster-(.*)\.tar\.bz2 debian uupdate
|
||||
|
||||
8
debug.c
@@ -1,5 +1,5 @@
|
||||
/* dvdisaster: Additional error correction for optical media.
|
||||
* Copyright (C) 2004-2015 Carsten Gnoerlich.
|
||||
* Copyright (C) 2004-2017 Carsten Gnoerlich.
|
||||
*
|
||||
* Email: carsten@dvdisaster.org -or- cgnoerlich@fsfe.org
|
||||
* Project homepage: http://www.dvdisaster.org
|
||||
@@ -747,8 +747,8 @@ void HexDump(unsigned char *buf, int len, int step)
|
||||
for(j=0; j<step; j++)
|
||||
{ if(i+j >= len) break;
|
||||
if((j&0x07) == 0x07)
|
||||
PrintLog("%c ", isprint(buf[i+j]) ? buf[i+j] : '.');
|
||||
else PrintLog("%c", isprint(buf[i+j]) ? buf[i+j] : '.');
|
||||
PrintLog("%c ", canprint(buf[i+j]) ? buf[i+j] : '.');
|
||||
else PrintLog("%c", canprint(buf[i+j]) ? buf[i+j] : '.');
|
||||
}
|
||||
|
||||
PrintLog("\n");
|
||||
@@ -1023,7 +1023,7 @@ void RawSector(char *arg)
|
||||
*
|
||||
* ./dvdisaster --debug --send-cdb 12,00,00,00,24,00:24
|
||||
*
|
||||
* The first six bytes make up the cdb; cdbs with upto 12 bytes are possible.
|
||||
* The first six bytes make up the cdb; cdbs with up to 12 bytes are possible.
|
||||
* The :24 arg is the allocation length.
|
||||
* Note that the allocation length must match those specified in the cdb;
|
||||
* differing values may crash the system.
|
||||
|
||||
BIN
documentation/codec-specs/codecs.pdf
Normal file
@@ -10,6 +10,7 @@
|
||||
\usepackage{fancyhdr}
|
||||
\usepackage{listings}
|
||||
\usepackage{color}
|
||||
\usepackage{comment}
|
||||
|
||||
\marginsize{30mm}{20mm}{20mm}{20mm} % Seitenränder links, rechts, oben, unten
|
||||
\parindent0em % Keine amerikanische Einrückung am Anfang von Paragraphen
|
||||
|
||||
@@ -44,7 +44,7 @@ correction files must be protected with an image level
|
||||
error correction layer (by using RS01,RS02 or RS03 on the medium),
|
||||
since only image level error correction avoids meta
|
||||
data sectors to become a single point of failure. See the
|
||||
discussion at \url{http://dvdisaster.net/en/qa32.html} for
|
||||
discussion at \url{https://web.archive.org/web/20180428070843/http://dvdisaster.net/en/qa32.html} for
|
||||
more information on the advantages of image level data protection
|
||||
over file level approaches.
|
||||
|
||||
@@ -172,7 +172,7 @@ The $d_{i,j}$ denote the $i-th$ byte in the $j-th$ layer.
|
||||
In order to create the first ecc block, bytes $d_{1,1}$ to $d_{1,n}$ are taken from the
|
||||
$n$ layers. Then the RS(255,k) code is calculated (see appendix \ref{rs} for its parameters)
|
||||
and the
|
||||
resulting $k$ parity bytes $e_{1,1}$ upto $e_{k,1}$ are stored
|
||||
resulting $k$ parity bytes $e_{1,1}$ up to $e_{k,1}$ are stored
|
||||
in the ecc file. The resulting ecc block is marked grey in the
|
||||
figure. The next ecc blocks are calculated and stored accordingly.
|
||||
In total, the ecc section contains $k*ls$ bytes of parity information,
|
||||
|
||||
@@ -74,7 +74,7 @@ the parity data portion of the image might not be written to the medium.
|
||||
Most current writing programs do however measure the .iso image by examining
|
||||
its file size, and will transfer the parity data correctly. To be sure you
|
||||
should follow the steps described under ``Testing image compatibility''
|
||||
at the dvdisaster site (\url{http://dvdisaster.net/en/howtos92.html}) once
|
||||
at the dvdisaster site (\url{https://web.archive.org/web/20180428070843/http://dvdisaster.net/en/howtos92.html}) once
|
||||
before using each version of your optical media authoring software.
|
||||
|
||||
Like the other dvdisaster codecs, RS02 is based on a RS(255,k) Reed-Solomon code
|
||||
@@ -133,7 +133,7 @@ Its format is described in appendix \ref{eh}. For RS02, only the data fields
|
||||
marked with ``all'' or ``RS02'' are relevant; all other fields should be set to zero.
|
||||
|
||||
Data layer $n$ does also contain the CRC32 checksums of each data sector
|
||||
upto the ecc header. If the .iso image contains $s$ sectors,
|
||||
up to the ecc header. If the .iso image contains $s$ sectors,
|
||||
then the CRC field contains $4s$ bytes, rounded up
|
||||
to the nearest multiple of 2048.
|
||||
CRC32 checksums are calculated over a whole CD sector comprising 2048 bytes.
|
||||
@@ -251,6 +251,9 @@ and the expected size of the parity layers is:
|
||||
|
||||
\smallskip
|
||||
|
||||
% TODO: implement in codec
|
||||
\begin{comment}
|
||||
|
||||
From these values we iteratively compute a $2^p$ which has about 20-40 multiples
|
||||
in the {\em preliminary ecc size} address space. This value will be used
|
||||
for interleaving the ecc header copies with the ecc layers:
|
||||
@@ -263,6 +266,16 @@ p := 5
|
||||
while($\frac{preliminary\;ecc\;size}{2^p} > 40$)
|
||||
|
||||
\quad p := p + 1}
|
||||
\end{comment}
|
||||
|
||||
From these values we compute a $2^p$ which has about 20-40 multiples
|
||||
in the {\em preliminary ecc size} address space. This value will be used
|
||||
for interleaving the ecc header copies with the ecc layers:
|
||||
|
||||
\[ p = \left\lceil log_2\; \frac{preliminary\;ecc\;size}{40} \right\rceil \]
|
||||
|
||||
%\[ p = \left\lceil \frac{log\; \frac{preliminary\;ecc\;size}{40}}{log\; 2} \right\rceil \]
|
||||
|
||||
|
||||
\smallskip
|
||||
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
\newcommand{\projectversion}{0.79.5}
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH DVDISASTER 1 "2015-12-16" "0.79.5" "Schutz f\[:u]r optische Datentr\[:a]ger"
|
||||
.TH DVDISASTER 1 "2010-02-07" "0.80" "Schutz f\[:u]r optische Datentr\[:a]ger"
|
||||
|
||||
.SH NAME
|
||||
DVDISASTER \- Schutz f\[:u]r optische Datentr\[:a]ger gegen Datenverlust durch Alterung
|
||||
@@ -49,6 +49,7 @@ oder Kratzer
|
||||
.RB [\| \-\-internal-rereads
|
||||
.IR n \|]
|
||||
.RB [\| \-\-medium-info \|]
|
||||
.RB [\| \-\-no-progress \|]
|
||||
.RB [\| \-\-old-ds-marker \|]
|
||||
.RB [\| \-\-prefetch-sectors
|
||||
.IR n \|]
|
||||
@@ -59,6 +60,7 @@ oder Kratzer
|
||||
.RB [\| \-\-read-medium
|
||||
.IR n \|]
|
||||
.RB [\| \-\-read-raw \|]
|
||||
.RB [\| \-\-regtest \|]
|
||||
.RB [\| \-\-resource-file
|
||||
.IR n \|]
|
||||
.RB [\| \-\-speed-warning
|
||||
@@ -213,28 +215,31 @@ RS01-Fehlerkorrektur-Dateien unterst\[:u]tzen au\[ss]erdem:
|
||||
.RS
|
||||
RS02-Abbilder:
|
||||
.RS
|
||||
\-n CD\ \ \ erweitert Abbild auf CD-Gr\[:o]\[ss]e.
|
||||
\-n CD\ \ \ \ erweitert Abbild auf CD-Gr\[:o]\[ss]e.
|
||||
.RE
|
||||
.RS
|
||||
\-n DVD\ \ erweitert Abbild auf DVD-Gr\[:o]\[ss]e.
|
||||
\-n DVD\ \ \ erweitert Abbild auf DVD-Gr\[:o]\[ss]e.
|
||||
.RE
|
||||
.RS
|
||||
\-n DVD9 erweitert Abbild auf DVD9-Gr\[:o]\[ss]e.
|
||||
\-n DVD9\ erweitert Abbild auf DVD9-Gr\[:o]\[ss]e.
|
||||
.RE
|
||||
.RS
|
||||
\-n BD\ \ \ erweitert Abbild auf BD-Gr\[:o]\[ss]e.
|
||||
\-n BD\ \ \ \ erweitert Abbild auf BD-Gr\[:o]\[ss]e.
|
||||
.RE
|
||||
.RS
|
||||
\-n BD2\ erweitert Abbild auf zweilagige BD-Gr\[:o]\[ss]e.
|
||||
\-n BD2\ \ erweitert Abbild auf zweilagige BD-Gr\[:o]\[ss]e.
|
||||
.RE
|
||||
.RS
|
||||
\-n x\ \ \ \ erweitert Abbild auf ca. x Sektoren L\[:a]nge.
|
||||
\-n BDXL3 erweitert Abbild auf dreilagige BDXL-Gr\[:o]\[ss]e.
|
||||
.RE
|
||||
.RS
|
||||
\-n x%\ \ \ erweitert Abbild mit ca. x% Redundanz.
|
||||
\-n x\ \ \ \ \ erweitert Abbild auf ca. x Sektoren L\[:a]nge.
|
||||
.RE
|
||||
.RS
|
||||
\-n xr\ \ \ erweitert Abbild mit x Nullstellen Fehlerkorrektur-Daten.
|
||||
\-n x%\ \ \ \ erweitert Abbild mit ca. x% Redundanz.
|
||||
.RE
|
||||
.RS
|
||||
\-n xr\ \ \ \ erweitert Abbild mit x Nullstellen Fehlerkorrektur-Daten.
|
||||
.RE
|
||||
.RE
|
||||
|
||||
@@ -364,6 +369,9 @@ die Standardeinstellungen des Laufwerks zu verwenden.
|
||||
.B \-\-medium-info
|
||||
Gibt Informationen \[:u]ber den Datentr\[:a]ger im ausgew\[:a]hlten Laufwerk aus.
|
||||
.TP
|
||||
.B \-\-no-progress
|
||||
Unterdr\[:u]ckt die Fortschrittsanzeige in Prozent.
|
||||
.TP
|
||||
.B \-\-old-ds-marker
|
||||
Markiert fehlende Sektoren in einer Weise, die mit dvdisaster
|
||||
0.70 oder noch fr\[:u]heren Versionen kompatibel ist.
|
||||
@@ -403,6 +411,9 @@ liest den gesamten Datentr\[:a]ger bis zu n-mal.
|
||||
.B \-\-read-raw
|
||||
liest in der "raw"\-Betriebsart sofern m\[:o]glich.
|
||||
.TP
|
||||
.B \-\-regtest
|
||||
ver\[:a]ndert einige Ausgaben so da\[ss] sie von den Regressionstest-Skripten besser verarbeitet werden k\[:o]nnen.
|
||||
.TP
|
||||
.B \-\-resource-file n
|
||||
Gibt den Pfad zur Konfigurationsdatei an (Voreinstellung: $HOME/.dvdisaster)
|
||||
.TP
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.TH DVDISASTER 1 "2015-12-16" "0.79.5" "protection for optical media"
|
||||
.TH DVDISASTER 1 "2020-08-30" "0.80" "protection for optical media"
|
||||
|
||||
.SH NAME
|
||||
DVDISASTER \- data loss/scratch/aging protection for optical media
|
||||
@@ -48,7 +48,9 @@ DVDISASTER \- data loss/scratch/aging protection for optical media
|
||||
.RB [\| \-\-internal-rereads
|
||||
.IR n \|]
|
||||
.RB [\| \-\-medium-info \|]
|
||||
.RB [\| \-\-no-progress \|]
|
||||
.RB [\| \-\-old-ds-marker \|]
|
||||
.RB [\| \-\-no-bdr-defect-management \|]
|
||||
.RB [\| \-\-prefetch-sectors
|
||||
.IR n \|]
|
||||
.RB [\| \-\-raw-mode
|
||||
@@ -58,6 +60,7 @@ DVDISASTER \- data loss/scratch/aging protection for optical media
|
||||
.RB [\| \-\-read-medium
|
||||
.IR n \|]
|
||||
.RB [\| \-\-read-raw \|]
|
||||
.RB [\| \-\-regtest \|]
|
||||
.RB [\| \-\-resource-file
|
||||
.IR n \|]
|
||||
.RB [\| \-\-speed-warning
|
||||
@@ -205,28 +208,46 @@ RS01 error correction flles additionally support:
|
||||
.RS
|
||||
RS02 images:
|
||||
.RS
|
||||
\-n CD\ \ \ augments image suitable for CD media.
|
||||
\-n CD\ \ \ \ augments image suitable for CD media.
|
||||
.RE
|
||||
.RS
|
||||
\-n DVD\ \ augments image suitable for DVD media.
|
||||
\-n DVD\ \ \ augments image suitable for DVD media.
|
||||
.RE
|
||||
.RS
|
||||
\-n DVD9 augments image suitable for DVD9 media.
|
||||
\-n DVD9\ augments image suitable for DVD9 media.
|
||||
.RE
|
||||
.RS
|
||||
\-n BD\ \ \ augments image suitable for BD media.
|
||||
\-n BD\ \ \ \ augments image suitable for BD media.
|
||||
.RE
|
||||
.RS
|
||||
\-n BD2\ augments image suitable for two layered BD media.
|
||||
\-n BD2\ \ augments image suitable for two layered BD media.
|
||||
.RE
|
||||
.RS
|
||||
\-n x\ \ \ \ augments image using approx. x sectors in total.
|
||||
\-n BDXL3 augments image suitable for three layered BDXL media.
|
||||
.RE
|
||||
.RS
|
||||
\-n x%\ \ \ augments image with approx. x% redundancy.
|
||||
\-n BDXL4 augments image suitable for quadruple layered BDXL media.
|
||||
.RE
|
||||
.RS
|
||||
\-n xr\ \ \ augments image with x roots error correction data.
|
||||
\-n BDNODM\ \ \ \ augments image suitable for BD media burnt without defect management.
|
||||
.RE
|
||||
.RS
|
||||
\-n BD2NODM\ \ augments image suitable for two layered BD media burnt without defect management.
|
||||
.RE
|
||||
.RS
|
||||
\-n BDXL3NODM augments image suitable for three layered BDXL media burnt without defect management.
|
||||
.RE
|
||||
.RS
|
||||
\-n BDXL4NODM augments image suitable for quadruple layered BDXL media burnt without defect management.
|
||||
.RE
|
||||
.RS
|
||||
\-n x\ \ \ \ \ augments image using approx. x sectors in total.
|
||||
.RE
|
||||
.RS
|
||||
\-n x%\ \ \ \ augments image with approx. x% redundancy.
|
||||
.RE
|
||||
.RS
|
||||
\-n xr\ \ \ \ augments image with x roots error correction data.
|
||||
.RE
|
||||
.RE
|
||||
|
||||
@@ -235,9 +256,22 @@ RS03 images:
|
||||
.RS
|
||||
Setting the redundancy is not possible due to constraints in the format.
|
||||
The codec will automatically choose the size of the smallest fitting medium.
|
||||
However, see --no-bdr-defect-management below.
|
||||
.RE
|
||||
.RE
|
||||
|
||||
.TP
|
||||
.B \-\-no-bdr-defect-management
|
||||
Enable bigger augmented images for BD-R (around +3%).
|
||||
If you know you will use a BD-R medium and want to maximize the free space
|
||||
for parity data, you can skip the defect management formatting before burning,
|
||||
at the expense of potential coasters. Specify this option to tell dvdisaster
|
||||
to produce bigger images that will only fit on BD-R media burnt without defect
|
||||
management. Some burning softwares call it "formatting" the BD-R before burning.
|
||||
Note that should you need to repair such an augmented image, you'll then need to
|
||||
specify this option on the command-line too.
|
||||
.RE
|
||||
|
||||
.TP
|
||||
.B \-m, \-\-method n
|
||||
lists/selects error correction methods (default: RS01).
|
||||
@@ -274,7 +308,7 @@ Selects between the sg (SG_IO) driver (default setting) and the
|
||||
older cdrom (CDROM_SEND_PACKET) driver for accessing the optical drives.
|
||||
Both drivers should work equally well; however the cdrom driver is known
|
||||
to cause system failures on some ancient SCSI controllers.
|
||||
The older cdrom driver was the default upto and including dvdisaster 0.72.x;
|
||||
The older cdrom driver was the default up to and including dvdisaster 0.72.x;
|
||||
if the now pre-selected sg driver changes something to the worse for you
|
||||
please switch back to the older driver using \-\-driver=cdrom.
|
||||
.TP
|
||||
@@ -347,6 +381,9 @@ this setting anyways. Use \-1 to leave the drive at its default setting.
|
||||
.B \-\-medium-info
|
||||
Prints information about the currently inserted medium.
|
||||
.TP
|
||||
.B \-\-no-progress
|
||||
Suppresses the progress percentage indicator.
|
||||
.TP
|
||||
.B \-\-old-ds-marker
|
||||
Marks missing sectors in a manner which is compatible with
|
||||
dvdisaster 0.70 or older.
|
||||
@@ -376,7 +413,7 @@ the uncorrected sector instead.
|
||||
.RE
|
||||
.TP
|
||||
.B \-\-read-attempts n-m
|
||||
attempts n upto m reads of a defective sector.
|
||||
attempts n up to m reads of a defective sector.
|
||||
.TP
|
||||
.B \-\-read-medium n
|
||||
read the whole medium up to n times.
|
||||
@@ -384,6 +421,9 @@ read the whole medium up to n times.
|
||||
.B \-\-read-raw
|
||||
performs read in raw mode if possible.
|
||||
.TP
|
||||
.B \-\-regtest
|
||||
modifies some outputs for better processing with the regression test scripts.
|
||||
.TP
|
||||
.B \-\-resource-file n
|
||||
Specifies the path to the configuration file (default: $HOME/.dvdisaster)
|
||||
.TP
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -51,29 +51,14 @@ dvdisaster.org
|
||||
<p>
|
||||
|
||||
Das dvdisaster-Projekt (<a href="impressum.html">Anbieter siehe Impressum</a>)
|
||||
nimmt den Schutz personenbezogener Daten sehr ernst.
|
||||
Die nachfolgende Erklärung gibt Ihnen einen Überblick darüber,
|
||||
welche Daten zu welchem Zweck erhoben werden:
|
||||
ermöglicht Ihnen die Nutzung dieser Internetseiten ohne Registrierung und
|
||||
ohne eine Angabe von personenbezogenen Daten.
|
||||
|
||||
<p>
|
||||
|
||||
<b>Protokoll-Dateien</b> (Datenverarbeitung durch die Server dieser Internetseiten)<p>
|
||||
<b>Server-Protokoll-Dateien</b><p>
|
||||
|
||||
Ihr Besuch auf diesen Seiten wird protokolliert.
|
||||
Die Server dieser Internetseiten speichern die folgenden Daten:
|
||||
|
||||
<ul>
|
||||
<li>den Typ und die Version Ihres Browsers</li>
|
||||
<li>das verwendete Betriebssystem</li>
|
||||
<li>gegebenenfalls die Ausgangsseite, von der aus Sie zu diesen Internetseiten gelangt sind</li>
|
||||
<li>den Namen oder die IP-Adresse des zugreifenden Rechners</li>
|
||||
<li>die Uhrzeit und das Datum Ihres Abrufes dieser Seiten</li>
|
||||
<li>die Dateinamen der angefragten Seiten.</li>
|
||||
</ul>
|
||||
|
||||
Diese Daten werden weder dazu genutzt, den Besucher dieser Internetseiten
|
||||
zu identifizieren, noch findet eine Zusammenführung mit anderen Daten
|
||||
statt. Die Daten werden nach einer statistischen Auswertung gelöscht.
|
||||
Die Server dieser Internetseiten führen kein Protokoll über Ihre Seitenzugriffe.
|
||||
|
||||
<p>
|
||||
|
||||
@@ -106,7 +91,7 @@ diese Datenschutzerklärung von Zeit zu Zeit erneut durch.
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Die unveränderte Vervielfältigung und Verteilung dieses gesamten Artikels in beliebiger Form ist gestattet,
|
||||
sofern dieser Hinweis erhalten bleibt.
|
||||
</i>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -63,7 +63,7 @@ Carsten Gnörlich (Anschrift wie oben).
|
||||
Das Impressum gilt für die Internetpräsenz unter den Domänen<br>
|
||||
<a href="http://dvdisaster.com">dvdisaster.com</a>,
|
||||
<a href="http://dvdisaster.de">dvdisaster.de</a>,
|
||||
<a href="http://dvdisaster.net">dvdisaster.net</a>,
|
||||
<a href="https://web.archive.org/web/20180428070843/http://dvdisaster.net">dvdisaster.net</a>,
|
||||
<a href="http://dvdisaster.org">dvdisaster.org</a>.
|
||||
|
||||
<!-- Page footer -->
|
||||
@@ -74,7 +74,7 @@ Das Impressum gilt für die Internetpräsenz unter den Domänen<br>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Die unveränderte Vervielfältigung und Verteilung dieses gesamten Artikels in beliebiger Form ist gestattet,
|
||||
sofern dieser Hinweis erhalten bleibt.
|
||||
</i>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -84,13 +84,7 @@ zum Beispiel in zahlreichen Foren und (in englischer Sprache) im
|
||||
<td>Aktuelle Version: </td>
|
||||
<td><a href="../downloads/dvdisaster-0.79.5.tar.bz2">dvdisaster-0.79.5.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.79.5.tar.bz2.gpg">digitale Unterschrift</a>,
|
||||
MD5-Prüfsumme: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Vorherige (ältere) Version:</td>
|
||||
<td><a href="../downloads/dvdisaster-0.72.6.tar.bz2">dvdisaster-0.72.6.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.6.tar.bz2.gpg">digitale Unterschrift</a>,
|
||||
MD5-Prüfsumme: f4213af05fe5c36e93bdf8a1732a66d1)</td>
|
||||
MD5-Prüfsumme: ceef990a2239c43314bc6427c6afb181)</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
@@ -101,105 +95,35 @@ ihren Ursprungszustand überprüft werden. In den Archiven gibt die Datei
|
||||
|
||||
<p>
|
||||
|
||||
Die Unterstützung von <b>Windows</b> and <b>Mac OS</b> wurde eingestellt.
|
||||
Ein anderer Entwickler hat angefangen, eine Version von dvdisaster direkt für Windows zu
|
||||
erstellen, aber es gibt dazu noch nichts anzukündigen. Verwenden Sie
|
||||
bis dahin bitte weiterhin
|
||||
die <a href="verschiedenes.html#windows">letzte veröffentlichte Version 0.72.3 für Windows</a>.
|
||||
Die Unterstützung von OS X und Windows wurde eingestellt.
|
||||
Die <a href="verschiedenes.html#windows">letzte veröffentlichte Version 0.72.3 für Windows</a> ist noch verfügbar.
|
||||
|
||||
<p>
|
||||
<b>Die Entwickler-Versionen sind zurück!</b><p>
|
||||
|
||||
Der ursprüngliche Plan, alle paar Monate eine stabile Version zu veröffentlichen, kann derzeit aus Zeitmangel nicht umgesetzt werden. In der Zwischenzeit werden (unstabile) Entwicklerversionen veröffentlicht, wenn sich die Notwendigkeit für eine kurzfristige Aktualisierung ergibt. Bitte beachten Sie, daß diese Versionen nicht dokumentiert sind. Sie können unvollständige oder fehlerhafte Eigenschaften aufweisen. Sie sollten diese Versionen nur nutzen, wenn Sie eine Funktionalität aus der unten aufgeführten Liste benötigen.<p>
|
||||
|
||||
<a href="../downloads/dvdisaster-0.79.6.tar.bz2">dvdisaster-0.79.6.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.79.6.tar.bz2.gpg">digitale Unterschrift</a>,
|
||||
MD5-Prüfsumme: ceef990a2239c43314bc6427c6afb181)
|
||||
|
||||
<ul>
|
||||
<li> Das "Datenträger-Info"-Werkzeug zeigt nun die korrekte Leerkapazität an (vorher wurde immer Null ausgegeben).</li>
|
||||
<li> Unterstützung für BDXL-TL-Datenträger (dreilagig, 100GB).</li>
|
||||
<li> Sektoren-Prüfsummen und Abbild-Prüfsummen werden während des Lesens von
|
||||
Datenträgern zwischengespeichert und beim Erstellen von Fehlerkorrektur-Daten
|
||||
wiederverwendet. Das Erstellen von Fehlerkorrektur-Daten wird dadurch beschleunigt
|
||||
und RS03-Fehlerkorrektur-Daten enthalten die optionale Abbild-Prüfsumme,
|
||||
wenn der Datenträger vorher einmal komplett eingelesen wurde.
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
|
||||
<p>
|
||||
<b>Was ist mit den alten dvdisaster-Seiten passiert?</b><p>
|
||||
|
||||
Zur Erläuterung eine Übersetzung des Vorwortes aus
|
||||
dem englischen <a href="misc.html#manual">Benutzerhandbuch</a>:<p>
|
||||
|
||||
Seit der Veröffentlichung von dvdisaster 0.79.3 (Version 0.79.4
|
||||
wurde nicht abgeschlossen und veröffentlicht) sind nahezu
|
||||
fünf Jahre vergangen.
|
||||
Dies liegt teilweise an den veränderten Lebensumständen
|
||||
des verantwortlichen Entwicklers, aber auch an vielen
|
||||
Änderungen am Quellkode. Viele interne Strukturen wurden
|
||||
in dvdisaster 0.79.5 im Vergleich zu seinem Vorgänger
|
||||
deutlich verändert.<p>
|
||||
|
||||
Die wichtigste Änderung ist in dvdisaster 0.79.5
|
||||
natürlich der multihreading-fähige RS03-Kodierer.
|
||||
Während es ungefähr 62 Minuten auf einem durchschnittlich
|
||||
leistungsfähigen PC dauert, um ein 36 GiB großes Abbild
|
||||
mit dem RS02-Kodierer zu bearbeiten, so benötigt der
|
||||
neue RS03-Kodierer weniger als 7 Minuten mit sechs
|
||||
Prozessorkernen auf der selben Maschine. Auf einem
|
||||
Hochleistungs-Server mit 16 Prozessorkernen und
|
||||
hohem Ein-/Ausgabe-Durchsatz kann diese Aufgabe in
|
||||
unter einer Minute bearbeitet werden. Das ist
|
||||
ein großer Schritt nach vorne.<p>
|
||||
|
||||
RS03 ist ab dieser Version für den produktiven
|
||||
Einsatz geeignet. Einige nicht grundlegende
|
||||
Funktionen werden noch mit den nächsten Versionen
|
||||
nachgereicht; dies umfaßt unter anderem das
|
||||
adaptive Lesen mit RS03 sowie das schnelle
|
||||
Reparieren von Datenträgern unter Nutzung von
|
||||
Multithreading.<p>
|
||||
|
||||
Andere Teile des Projektes mußten geändert oder
|
||||
eingestellt werden. Ein Softwareprojekt lebt
|
||||
von der Weiterentwicklung und von regelmäßigen
|
||||
Veröffentlichungen; anderenfalls hört das
|
||||
Projekt letztendlich auf zu existieren.
|
||||
dvdisaster lief in den letzten Jahren Gefahr,
|
||||
dieses Schicksal zu erleiden. Um zu verhindern
|
||||
daß dies erneut eintritt, wird sich das
|
||||
Projekt nun auf die Entwicklung des Quellkodes
|
||||
konzentrieren; alle anderen Aktivitäten werden
|
||||
an andere Personen weitergegeben oder
|
||||
eingestellt. Die Quellkode-Entwicklung wird
|
||||
sich nur noch mit der GNU/Linux-Version
|
||||
befassen, die auch die Basis für alle
|
||||
anderen Betriebssysteme liefert. Darin
|
||||
inbegriffen sind die Portierungen für
|
||||
FreeBSD und NetBSD, die sich sehr einfach
|
||||
aus der GNU/Linux-Version ableiten lassen.
|
||||
Dies gilt leider nicht für die Mac OS-
|
||||
und Windows-Versionen, die ab sofort
|
||||
eingestellt werden.<p>
|
||||
|
||||
Ebenso werden die getrennten Versionszweige mit
|
||||
stabilen Versionen und Entwicklerversionen eingestellt.
|
||||
Ab dieser Version werden alle dvdisaster-Veröffentlichungen
|
||||
als bereit für den produktiven Einsatz betrachtet,
|
||||
wodurch sich eine Unterscheidung in verschiedene
|
||||
Zweige erübrigt.<p>
|
||||
|
||||
Die Bereitstellung der mehrsprachlichen Dokumentation,
|
||||
die gleichzeitig auch als Projektseite im Internet diente,
|
||||
hat sich ebenfalls als zu aufwändig erwiesen.
|
||||
Die Projektseite ist nun eine einfache Plattform
|
||||
zum Herunterladen des Quellkodes. Sie wendet sich jetzt
|
||||
an die Paketverwalter, die Binärversionen für
|
||||
GNU/Linux, FreeBSD und NetBSD bereitstellen. <br>
|
||||
|
||||
Das Benutzerhandbuch wird nun im PDF-Format
|
||||
bereitgestellt; dies ist viel einfacher zu
|
||||
erzeugen als die alte HTML-Version. Die
|
||||
einzige verfügbare Sprache ist Englisch.
|
||||
Die meisten Teile des Benutzerhandbuches wurden
|
||||
aus der alten Online-Dokumentation übernommen;
|
||||
daher wirkt sie immer noch mehr wie die
|
||||
Internetseiten als wie ein Buch. Hyperlinks
|
||||
sind in PDF nicht so komfortabel nutzbar
|
||||
wie in HTML, aber sie wurden in dem Handbuch
|
||||
belassen um zu betonen daß es als Online-Referenz
|
||||
gedacht ist. Bitte schonen Sie die Natur und
|
||||
drucken Sie das Benutzerhandbuch nicht aus.
|
||||
Es ist ohnehin nicht dazu gedacht, von
|
||||
vorne nach hinten wie ein Buch gelesen zu werden.<p>
|
||||
|
||||
Nun gut, genug geredet. Möge Ihnen dvdisaster helfen,
|
||||
Ihre Daten zu schützen und wiederherzustellen, und
|
||||
vielen Dank daß Sie es nutzen!<p>
|
||||
|
||||
<i> -- cg, August 2015</i>
|
||||
Bitte schauen Sie in das <i>Vorwort zur Version 0.79.5</i> im
|
||||
englischen <a href="verschiedenes.html#manual">Benutzerhandbuch</a>.
|
||||
|
||||
<!-- Page footer -->
|
||||
|
||||
@@ -209,7 +133,7 @@ vielen Dank daß Sie es nutzen!<p>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Die unveränderte Vervielfältigung und Verteilung dieses gesamten Artikels in beliebiger Form ist gestattet,
|
||||
sofern dieser Hinweis erhalten bleibt.
|
||||
</i>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -56,17 +56,12 @@ uid dvdisaster (pkg signing key #2)
|
||||
sub 4096R/758BCC23 2015-10-05
|
||||
</pre>
|
||||
|
||||
Ältere Versionen (bis zu 0.79.3) wurden mit dem folgenden
|
||||
<a href="../downloadas/pubkey1.asc">1024bit DSA-Schlüssel</a> unterschrieben:
|
||||
|
||||
<pre>
|
||||
pub 1024D/F5F6C46C 2003-08-22
|
||||
Schl.-Fingerabdruck = 12B3 1535 AF90 3ADE 9E73 BA7E 5A59 0EFE F5F6 C46C
|
||||
uid Carsten Gnörlich (pkg signing key #1)
|
||||
sub 1024g/091AD320 2003-08-22
|
||||
</pre>
|
||||
Ältere Versionen (bis zu 0.79.3) wurden mit einem
|
||||
<a href="../downloads/pubkey1.asc">1024bit DSA-Schlüssel</a> unterschrieben,
|
||||
der noch zum Vergleich hier verfügbar ist.
|
||||
|
||||
Sie können den Fingerabdruck des öffentlichen Schlüssels auch direkt von
|
||||
Sie können den Fingerabdruck der öffentlichen Schlüssel auch direkt von
|
||||
den Entwicklern erhalten, indem Sie eine E-Mail
|
||||
an carsten@dvdisaster.org schreiben. Bitte verwenden Sie
|
||||
den Betreff "GPG finger print".
|
||||
@@ -79,7 +74,7 @@ Das Benutzerhandbuch zu dvdisaster gibt es - leider aus Zeitgründen nur
|
||||
in englischer Sprache - als <a href="../downloads/manual.pdf">PDF-Dokument (manual.pdf)</a>.
|
||||
Es erläutert die Benutzung von dvdisaster anhand einiger
|
||||
grundlegender Beispiele und enthält weitere Hintergrundinformationen
|
||||
zu seiner Funktionsweise. <br>
|
||||
zu seiner Funktionsweise.
|
||||
Sie brauchen das Handbuch hier nicht herunterzuladen, wenn Sie bereits
|
||||
das Quellkode-Archiv haben - dort ist ebenfalls ein Exemplar enthalten.
|
||||
<p>
|
||||
@@ -87,7 +82,7 @@ das Quellkode-Archiv haben - dort ist ebenfalls ein Exemplar enthalten.
|
||||
<b>Kodierer-Spezifikation</b><p>
|
||||
|
||||
Die Spezifikation der RS01-, RS02- und RS03-Kodierer
|
||||
ist als <a href="../downloads/codec.pdf">PDF-Dokument (codecs.pdf)</a>
|
||||
ist als <a href="../downloads/codecs.pdf">PDF-Dokument (codecs.pdf)</a>
|
||||
verfügbar.
|
||||
|
||||
Dieses Dokument ist zur Diskussion der Kodierer-Implementierung unter
|
||||
@@ -112,13 +107,13 @@ bis dahin bitte weiterhin die letzte veröffentlichte Version für Windows:
|
||||
<tr>
|
||||
<td>Quellkode: </td>
|
||||
<td><a href="../downloads/dvdisaster-0.72.3.tar.bz2">dvdisaster-0.72.3.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.79.5.tar.bz2.gpg">Digitale Unterschrift</a>,
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.3.tar.bz2.gpg">Digitale Unterschrift</a>,
|
||||
MD5-Prüfsumme: 4eb09c1aa3cdbc1dafdb075148fb471d)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Installierbare Binärversion: </td>
|
||||
<td><a href="../downloads/dvdisaster-0.72.3-setup.exe">dvdisaster-0.72.3-setup.exe</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.3-setup-exe..gpg">Digitale Unterschrift</a>,
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.3-setup.exe.gpg">Digitale Unterschrift</a>,
|
||||
MD5-Prüfsumme: b6861ba1e8de6d91a2da5342a14870e0)</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -131,7 +126,7 @@ bis dahin bitte weiterhin die letzte veröffentlichte Version für Windows:
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Die unveränderte Vervielfältigung und Verteilung dieses gesamten Artikels in beliebiger Form ist gestattet,
|
||||
sofern dieser Hinweis erhalten bleibt.
|
||||
</i>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -63,7 +63,7 @@ Carsten Gnörlich (see above for address).
|
||||
This notice covers the web sites under the domains<br>
|
||||
<a href="http://dvdisaster.com">dvdisaster.com</a>,
|
||||
<a href="http://dvdisaster.de">dvdisaster.de</a>,
|
||||
<a href="http://dvdisaster.net">dvdisaster.net</a>,
|
||||
<a href="https://web.archive.org/web/20180428070843/http://dvdisaster.net">dvdisaster.net</a>,
|
||||
<a href="http://dvdisaster.org">dvdisaster.org</a>.<br>
|
||||
|
||||
<!-- Page footer -->
|
||||
@@ -74,7 +74,7 @@ This notice covers the web sites under the domains<br>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
|
||||
</i>
|
||||
</span>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -75,16 +75,10 @@
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td>Current version: </td>
|
||||
<td>Current stable version: </td>
|
||||
<td><a href="../downloads/dvdisaster-0.79.5.tar.bz2">dvdisaster-0.79.5.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.79.5.tar.bz2.gpg">digital signature</a>,
|
||||
MD5 checksum: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Previous (older) version:</td>
|
||||
<td><a href="../downloads/dvdisaster-0.72.6.tar.bz2">dvdisaster-0.72.6.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.6.tar.bz2.gpg">digital signature</a>,
|
||||
MD5 checksum: f4213af05fe5c36e93bdf8a1732a66d1)</td>
|
||||
MD5 sum: ceef990a2239c43314bc6427c6afb181)</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
@@ -94,87 +88,35 @@ verification that the packages are in their original state. The archives
|
||||
contain a file <tt>INSTALL</tt> with further instructions for building dvdisaster.
|
||||
|
||||
<p>
|
||||
OS X and Windows are no longer supported.
|
||||
The <a href="misc.html#windows">last published version for Windows (0.72.3)</a> is still available.
|
||||
|
||||
<b>Windows</b> and <b>Mac OS</b> are no longer supported. A native Windows fork
|
||||
of dvdisaster will be started soon by another developer, but there is nothing to announce yet.
|
||||
In the mean time, please continue using
|
||||
the <a href="misc.html#windows">last published version for Windows (0.72.3)</a>.
|
||||
<p>
|
||||
<b>The developer versions are back!</b><p>
|
||||
|
||||
The original plan of publishing stable versions every few months did not work out due to continued lack of time. In the mean time, developer (unstable) versions are published whenever the need arises for a current update. Please be aware that developer versions are undocumented and may contain unfinished or otherwise defective functionality. You should only use them if you need some of the features detailed in the list below.<p>
|
||||
|
||||
|
||||
<a href="../downloads/dvdisaster-0.79.6.tar.bz2">dvdisaster-0.79.6.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.79.6.tar.bz2.gpg">digital signature</a>,
|
||||
MD5 sum: ceef990a2239c43314bc6427c6afb181)
|
||||
|
||||
<ul>
|
||||
<li> The "medium info" tool will now correctly show the blank capacity (was previously always shown as zero)</li>
|
||||
<li> added support for BDXL-TL (triple layer, 100GB) media</li>
|
||||
<li> Sector CRC sums and the image MD5 sums are collected during
|
||||
reading the medium and can be re-used by the ecc data creation
|
||||
process. Speeds up ecc generation and enables RS03 image
|
||||
checksums when generating ecc data was preceeded by a read.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
<b>What happened to the old dvdisaster site?</b><p>
|
||||
To quote from the preface of the <a href="misc.html#manual">user manual</a>:<p>
|
||||
|
||||
Please see the <i>Preface for version 0.79.5</i> in the <a href="misc.html#manual">user manual</a>.
|
||||
|
||||
|
||||
Since the release of dvdisaster 0.79.3 (version 0.79.4 was
|
||||
never finished and released), nearly five years have passed.
|
||||
This was partly due to changed circumstances in its
|
||||
primary developer's life, but there was also a lot of
|
||||
coding going on behind the scenes. In comparison with its
|
||||
predecessor, dvdisaster 0.79.5 comes with lots of its
|
||||
internals being significantly reworked. <p>
|
||||
|
||||
The most visible improvement of dvdisaster 0.79.5 is, of
|
||||
course, its multithreaded RS03 codec. While it takes
|
||||
about 62 minutes for protecting a 36 GiB image with RS02
|
||||
on a mid range PC,
|
||||
the same task is done with RS03 in less than 7 minutes
|
||||
using 6 processor cores on the same machine.
|
||||
On a high end server with at least 16 cores and very good I/O,
|
||||
this can be done in under a minute. That's quite an
|
||||
improvement.<br>
|
||||
|
||||
RS03 is ready for production use in the current release.
|
||||
Some non-essential features, especially reworking the
|
||||
adaptive reading for use with RS03 and multi-threaded
|
||||
RS03 decoding (media fixing) will be delivered with
|
||||
the following dvdisaster releases.<p>
|
||||
|
||||
Other parts of the project had to be changed or even
|
||||
discontinued. A software project lives on development
|
||||
and continuous releases; else the
|
||||
project will eventually die. In this respect, dvdisaster
|
||||
was very endangered in the last few years.
|
||||
To prevent this from happening again, most effort
|
||||
is now directed into source code development;
|
||||
everything else is delegated or discontinued.
|
||||
Source code development basically means making
|
||||
the GNU/Linux version, which provides the code base
|
||||
for all other versions, and the FreeBSD and NetBSD ports,
|
||||
which are very easily derived from the GNU/Linux code.
|
||||
This is not the case for the Mac OS and Windows ports,
|
||||
which are, unfortunately, discontinued as of now.<br>
|
||||
|
||||
Another feature which has to go are the separate
|
||||
stable and development releases.
|
||||
Starting with this version, all dvdisaster releases
|
||||
are considered production quality, so there is no
|
||||
need for different branches anymore.<p>
|
||||
|
||||
Maintaining the multi-lingual online documentation, which
|
||||
also served as the project home page, did also prove to
|
||||
be too time consuming. The project home page has
|
||||
been changed into a simple download platform for
|
||||
the project sources. It is now directed at package
|
||||
maintainers who will create and pass on binaries
|
||||
for the GNU/Linux, FreeBSD and NetBSD distributions.<br>
|
||||
|
||||
The program documentation, which you are reading
|
||||
right now, is provided in PDF format which is much
|
||||
easier to author than the HTML version. The only
|
||||
language available is English. Most parts of this
|
||||
manual have been adapted from the old online
|
||||
documentation, so it still feels more like a website
|
||||
than a book. While hyperlinks are not as usable in PDF
|
||||
as in HTML, they have been kept in this document to
|
||||
stress that it is intended to be used as an online reference.
|
||||
So please do our environment a favour and do not print
|
||||
this manual. It is not meant to be read
|
||||
from front cover to back cover, anyways.<p>
|
||||
|
||||
Okay, enough ranting already. May dvdisaster be helpful
|
||||
in protecting and recovering your valuable data,
|
||||
and thanks for using it!<p>
|
||||
|
||||
<i> -- cg, August 2015</i>
|
||||
|
||||
<!-- Page footer -->
|
||||
|
||||
@@ -184,7 +126,7 @@ and thanks for using it!<p>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
|
||||
</i>
|
||||
</span>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -58,17 +58,11 @@ sub 4096R/758BCC23 2015-10-05
|
||||
|
||||
</pre>
|
||||
|
||||
Older releases up to version 0.79.3 have been signed with this <a href="../downloads/pubkey1.asc">1024bit DSA key</a>:
|
||||
|
||||
<pre>
|
||||
pub 1024D/F5F6C46C 2003-08-22
|
||||
Key fingerprint = 12B3 1535 AF90 3ADE 9E73 BA7E 5A59 0EFE F5F6 C46C
|
||||
uid Carsten Gnörlich (pkg signing key #1)
|
||||
sub 1024g/091AD320 2003-08-22
|
||||
</pre>
|
||||
|
||||
The <a href="../downloads/pubkey1.asc">1024bit DSA key</a> used to sign releases up to version 0.79.3 is
|
||||
still available for reference.
|
||||
Feel free to send an email to carsten@dvdisaster.org to obtain
|
||||
the fingerprint directly from the developers.
|
||||
any of these fingerprints directly from the developers.
|
||||
Please include "GPG finger print" in the subject line.
|
||||
|
||||
<p>
|
||||
@@ -79,7 +73,7 @@ Please include "GPG finger print" in the subject line.
|
||||
|
||||
The user manual is provided as a <a href="../downloads/manual.pdf">PDF document (manual.pdf)</a>.
|
||||
It contains several basic examples of using dvdisaster and some background
|
||||
information on its way of working. <br>
|
||||
information on its way of working.
|
||||
You do not need to download the manual if you already have the
|
||||
source code archive - a copy of the manual is contained there.
|
||||
<p>
|
||||
@@ -87,7 +81,7 @@ source code archive - a copy of the manual is contained there.
|
||||
<b>Codec specification</b><p>
|
||||
|
||||
The specification of the RS01, RS02 and RS03 codec
|
||||
is available as a <a href="../downloads/codec.pdf">PDF document (codecs.pdf)</a>.
|
||||
is available as a <a href="../downloads/codecs.pdf">PDF document (codecs.pdf)</a>.
|
||||
|
||||
This document is meant to discuss the codec implementation among developers.
|
||||
It requires knowledge in the area of coding theory and is not meant as end
|
||||
@@ -112,13 +106,13 @@ In the mean time, please continue using the last published version for Windows (
|
||||
<tr>
|
||||
<td>Source code: </td>
|
||||
<td><a href="../downloads/dvdisaster-0.72.3.tar.bz2">dvdisaster-0.72.3.tar.bz2</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.79.5.tar.bz2.gpg">digital signature</a>,
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.3.tar.bz2.gpg">digital signature</a>,
|
||||
MD5 checksum: 4eb09c1aa3cdbc1dafdb075148fb471d)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Binary installer: </td>
|
||||
<td><a href="../downloads/dvdisaster-0.72.3-setup.exe">dvdisaster-0.72.3-setup.exe</a></td>
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.3-setup-exe..gpg">digital signature</a>,
|
||||
<td>(<a href="../downloads/dvdisaster-0.72.3-setup.exe.gpg">digital signature</a>,
|
||||
MD5 checksum: b6861ba1e8de6d91a2da5342a14870e0)</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -131,7 +125,7 @@ In the mean time, please continue using the last published version for Windows (
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
|
||||
</i>
|
||||
</span>
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<tr>
|
||||
<td align="left">
|
||||
<span class="fxxl"><b>dvdisaster</b> </span>
|
||||
<i>Version 0.79.5</i>
|
||||
<i>Version 0.79.5 (stable) / 0.79.6 (unstable)</i>
|
||||
</td>
|
||||
<td align="right">
|
||||
<span class="fxxl"> </span>
|
||||
@@ -51,29 +51,14 @@ dvdisaster.org
|
||||
<p>
|
||||
|
||||
The dvdisaster project (<a href="imprint.html">see the contact page for representatives</a>)
|
||||
is taking your privacy seriously. The following statement gives you an overview
|
||||
about the kind and purpose of the data we are collecting:
|
||||
provides its internet sites to you without requiring a registration or entering personal data.
|
||||
|
||||
<p>
|
||||
|
||||
<b>Log files</b> (data processed by our internet servers)<p>
|
||||
|
||||
Your visit of our internet sites is being logged.
|
||||
Our servers collect the following data:
|
||||
|
||||
<ul>
|
||||
<li>the type and version of your web browser</li>
|
||||
<li>the operating system being used</li>
|
||||
<li>the web site from which you were directed to our internet site (if applicable)</li>
|
||||
<li>the host name or IP address of the computer which made the access</li>
|
||||
<li>the time and date of the server query</li>
|
||||
<li>the file names of the visited pages.</li>
|
||||
</ul>
|
||||
|
||||
This data is not used to identify the visitors of our web sites.
|
||||
It will not be combined with other data sources. The data will be
|
||||
deleted after a statistical analysis.
|
||||
<b>Server log files</b><p>
|
||||
|
||||
The servers of this internet site create no logs about your visit.
|
||||
|
||||
<p>
|
||||
|
||||
<b>Cookies</b><p>
|
||||
@@ -104,7 +89,7 @@ change notices.
|
||||
<tr>
|
||||
<td align="center">
|
||||
<span class="fs">
|
||||
<i> Copyright 2004-2015 Carsten Gnörlich.<br>
|
||||
<i> Copyright 2004-2017 Carsten Gnörlich.<br>
|
||||
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
|
||||
</i>
|
||||
</span>
|
||||
|
||||
@@ -272,7 +272,7 @@ media with augmented images may not play correctly on all units \\
|
||||
\end{tabular}
|
||||
|
||||
\paragraph{Further reading.} The specification for the dvdisaster codecs
|
||||
has been specified in a separate document called \href{http://dvdisaster.net/downloads/codecs.pdf}{codecs.pdf}.
|
||||
has been specified in a separate document called \href{https://web.archive.org/web/20180428070843/http://dvdisaster.net/downloads/codecs.pdf}{codecs.pdf}.
|
||||
Good knowledge in coding theory and programming is required.
|
||||
|
||||
\subsection{The linear reading strategy}
|
||||
|
||||
@@ -15,7 +15,7 @@ the \href{http://www.gnu.org/licenses/gpl-3.0.txt}{GNU General Public License v3
|
||||
|
||||
\bigskip
|
||||
|
||||
The dvdisaster developer site (\url{http://dvdisaster.net}) contains
|
||||
The dvdisaster developer site (\url{https://web.archive.org/web/20180428070843/http://dvdisaster.net}) contains
|
||||
the latest source code releases for the FreeBSD, GNU/Linux and NetBSD
|
||||
operating systems. These are mostly aimed at maintainers of binary packages for
|
||||
the beforementioned platforms. As an end user you might find it more convenient
|
||||
@@ -133,6 +133,6 @@ We cannot accept them for various reasons.
|
||||
\smallskip
|
||||
|
||||
dvdisaster releases are always published with cryptographic signatures
|
||||
and md5 checksums. See the \href{http://dvdisaster.net}{download site} for examples.
|
||||
and md5 checksums. See the \href{https://web.archive.org/web/20180428070843/http://dvdisaster.net}{download site} for examples.
|
||||
Be very cautious if signatures and checksums are missing, invalid or not
|
||||
matching those published at the sites mentioned above.
|
||||
|
||||
@@ -1822,7 +1822,7 @@ process of creating error correction files using these options. The
|
||||
first option marked green lets dvdisaster create the error correction
|
||||
file immediately after the medium has been (completely) read.
|
||||
The second option marked green deletes the image when the error correction
|
||||
file has been sucessfully created.
|
||||
file has been successfully created.
|
||||
|
||||
\bigskip
|
||||
|
||||
|
||||
@@ -65,6 +65,8 @@
|
||||
\fancyfoot{}
|
||||
\fancyfoot[LE,RO]{page \thepage\ of \pageref{LastPage}}
|
||||
|
||||
\pdftrailerid{dvdisaster}
|
||||
\pdfsuppressptexinfo=-1
|
||||
\begin{document}
|
||||
|
||||
\definecolor{lightorange}{RGB}{255,224,150}
|
||||
@@ -98,7 +100,7 @@ containing a formal specification of the error correction data format.
|
||||
\vfill
|
||||
\begin{center}
|
||||
{\em
|
||||
Copyright 2008-2015 Carsten Gnörlich.
|
||||
Copyright 2008-2017 Carsten Gnörlich.
|
||||
Verbatim copying and distribution of this entire article is permitted in any medium,
|
||||
provided this notice is preserved.}
|
||||
\end{center}
|
||||
|
||||
@@ -101,8 +101,8 @@ please see the \tlnk{reporting-defects}{reporting defects} section.
|
||||
|
||||
\paragraph{Recovery of aged media.}
|
||||
The medium processed here has become discolored and partly unreadable in its outer region.
|
||||
A reading attempt yields about 23.000 unreadable sectors of 342.000 sectors total;
|
||||
resulting in about 7,2\% defective sectors. Figure \ref{recover-linear} shows the
|
||||
A reading attempt yields about 23.600 unreadable sectors of 360056 sectors total;
|
||||
resulting in about 6,6\% defective sectors. Figure \ref{recover-linear} shows the
|
||||
dvdisaster window after the reading attempt. The distribution of reading speed and
|
||||
read errors over the medium is graphically shown.
|
||||
The still readable sectors are stored in an ISO image called {\em medium.iso}.
|
||||
@@ -114,7 +114,7 @@ The still readable sectors are stored in an ISO image called {\em medium.iso}.
|
||||
\end{figure}
|
||||
|
||||
\paragraph{Repairing the defective image.}
|
||||
The image which has been just read is incomplete since about 23.000 sectors could
|
||||
The image which has been just read is incomplete since about 23.600 sectors could
|
||||
not be read. These sectors are now reconstructed using the error correction data
|
||||
created with dvdisaster. During the recovery a maximum of 20 errors per error
|
||||
correction block is encountered (see figure \ref{fix-image}).
|
||||
@@ -129,7 +129,7 @@ than a normal backup, though). Like an ordinary backup, the ecc data needs
|
||||
to be created before the medium goes defective.
|
||||
|
||||
So if you have a defective medium but never created ecc data for it, you will
|
||||
not be able to recover the defective sectors (23.000 in the above example).
|
||||
not be able to recover the defective sectors (23.600 in the above example).
|
||||
The data located at the end of the medium will be lost, while you will probably
|
||||
be able to extract some files which are located at the beginning of the medium.
|
||||
\newpage
|
||||
|
||||
@@ -257,11 +257,19 @@ Usable media by type:
|
||||
|
||||
\medskip
|
||||
|
||||
{\bf BD-R, BD-RW}
|
||||
{\bf BD-R, BD-RW} \quad (one or two layers)
|
||||
|
||||
\begin{itemize}
|
||||
\item No limitations are known so far, but very few results on the
|
||||
two-layered type (the 50GiB variety) have been reported yet.
|
||||
\item No limitations are known.
|
||||
\end{itemize}
|
||||
|
||||
\medskip
|
||||
|
||||
{\bf BDXL-R}
|
||||
|
||||
\begin{itemize}
|
||||
\item Currently only the three-layered (100GB) version is tested and supported.
|
||||
\item Note: BDXL is not backwards compatible with standard BD drives.
|
||||
\end{itemize}
|
||||
|
||||
\medskip
|
||||
@@ -351,7 +359,7 @@ Usable media by type:
|
||||
You are welcome, of course, to provide an unoffical translation of the
|
||||
project documentation on your own webspace and at your own discretion. }
|
||||
|
||||
\newpage
|
||||
%\newpage
|
||||
|
||||
\subsection{Error messages}
|
||||
\label{qa-error}
|
||||
@@ -457,6 +465,6 @@ drive for reading images in these cases.}
|
||||
|
||||
\qa{``Ecc file has been created with version 0.40.7.''}
|
||||
{Some developer versions of dvdisaster mark their ecc files with a special bit.
|
||||
This causes dvdisaster versions upto 0.65 to falsely display the above error
|
||||
This causes dvdisaster versions up to 0.65 to falsely display the above error
|
||||
message. Please use the developer versions only together with dvdisaster
|
||||
0.66 or newer versions. }
|
||||
|
||||
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 97 KiB After Width: | Height: | Size: 97 KiB |
|
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 95 KiB |
|
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 88 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 93 KiB |