dvdisaster: Apply debian's patches to allow ROM type and encrypted DVDs

This commit is contained in:
Jascha Geerds 2015-04-27 23:50:56 +02:00
parent 169efee101
commit 00ab10de74
3 changed files with 57 additions and 5 deletions

View File

@ -1,5 +1,6 @@
{ stdenv, fetchurl, pkgconfig, which, gettext, intltool { stdenv, fetchurl, pkgconfig, which, gettext, intltool
, glib, gtk2 , glib, gtk2
, enableSoftening ? true
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -10,6 +11,11 @@ stdenv.mkDerivation rec {
sha256 = "e9787dea39aeafa38b26604752561bc895083c17b588489d857ac05c58be196b"; sha256 = "e9787dea39aeafa38b26604752561bc895083c17b588489d857ac05c58be196b";
}; };
patches = stdenv.lib.optional enableSoftening [
./encryption.patch
./dvdrom.patch
];
postPatch = '' postPatch = ''
patchShebangs ./ patchShebangs ./
''; '';
@ -22,11 +28,17 @@ stdenv.mkDerivation rec {
glib gtk2 glib gtk2
]; ];
meta = { meta = with stdenv.lib; {
homepage = http://dvdisaster.net/; homepage = http://dvdisaster.net/;
description = description = "data loss/scratch/aging protection for CD/DVD media";
"Stores data on CD/DVD/BD in a way that it is fully recoverable even " + longDescription = ''
"after some read errors have developed"; dvdisaster provides a margin of safety against data loss on CD and
license = stdenv.lib.licenses.gpl2; DVD media caused by scratches or aging media. It creates error correction
data which is used to recover unreadable sectors if the disc becomes
damaged at a later time.
'';
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ jgeerds ];
}; };
} }

View File

@ -0,0 +1,19 @@
Author: Corey Wright <undefined@pobox.com>
Description: Adds support for DVD-ROM medium-type.
Index: dvdisaster/scsi-layer.c
===================================================================
--- dvdisaster.orig/scsi-layer.c 2012-03-06 11:10:17.147044691 +0900
+++ dvdisaster/scsi-layer.c 2012-03-06 11:10:30.927044292 +0900
@@ -913,6 +913,11 @@
break;
}
+ if(layer_type & 0x01)
+ { dh->typeDescr = g_strdup("DVD-ROM");
+ break;
+ }
+
if(layer_type & 0x06) /* strange thing: (re-)writeable but neither plus nor dash */
{ dh->typeDescr = g_strdup("DVD-ROM (fake)");
dh->subType = DVD;

View File

@ -0,0 +1,21 @@
Author: n/a
Description: Disables to skip on encrypted disks (e.g. DVD with CSS-Encryption).
Index: dvdisaster/scsi-layer.c
===================================================================
--- dvdisaster.orig/scsi-layer.c 2012-04-08 21:51:10.995588783 +0900
+++ dvdisaster/scsi-layer.c 2012-04-08 21:51:29.259678075 +0900
@@ -2693,11 +2693,12 @@
return NULL;
}
}
-
+/*
if(dh->mainType == DVD && query_copyright(dh))
{ CloseDevice(dh);
Stop(_("This software does not support encrypted media.\n"));
}
+*/
/* Create the bitmap of simulated defects */