nixpkgs/pkgs/applications/misc/xpdf/default.nix
Yury G. Kudryashov d477d95f31 This is a quote from http://www.johannes-bauer.com/xpdf/xpdf.php, any moral issues can be posted on the mailing list ;) "If you are the proud owner of a proprietary PDF-Creator like "Adobe Acrobat" you probably have noticed that it gives you the option to make the resulting PDF protected in a way that you cannot copy any text from it or that you cannot extract the pictures within. What a nice little feature. Now what this technically does is to set a flag in the PDF telling the reader program "Please don't let the mean user copy any content from me! ". However, the whole process relies on the reader progam (like "Adobe Acrobat Reader" or "xpdf", in our case) to obey the request of the PDF creator. Now at this point, xpdf really pissed me off. Because it really does obey the completely non-sensical request of the PDF creator. Probably because of some legal trouble which Adobe might give them if they did not obey it. But logically there is absolutely no reason to restrict the
extraction of text of graphical images from a PDF file. Text I could read and type it in again. Pictures I could photograph off my PC screen. It's completely moronic. It's Adobe. Plus some people at my college think it's protecting their documents well. They seem to believe that content which is made for education should under no circumstances leak to the outside - somebody could maybe learn something! It would be a disaster! It is obvious they're morons. This patch just proves my point."


svn path=/nixpkgs/branches/stdenv-updates/; revision=9875
2007-12-08 01:05:50 +00:00

44 lines
1.3 KiB
Nix

{ enableGUI ? true, enablePDFtoPPM ? true, useT1Lib ? true
, stdenv, fetchurl, x11 ? null, motif ? null, freetype ? null, t1lib ? null
, base14Fonts ? null
}:
assert enableGUI -> x11 != null && motif != null && freetype != null;
assert enablePDFtoPPM -> freetype != null;
assert useT1Lib -> t1lib != null;
stdenv.mkDerivation {
name = "xpdf-3.02pl1";
src = fetchurl {
url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02.tar.gz;
sha256 = "000zq4ddbwyxiki4vdwpmxbnw5n9hsg9hvwra2p33hslyib7sfmk";
};
buildInputs =
(if enableGUI then [x11 motif] else []) ++
(if useT1Lib then [t1lib] else []);
patches = [
(fetchurl {
url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl1.patch;
sha256 = "1wxv9l0d2kkwi961ihpdwi75whdvk7cgqxkbfym8cjj11fq17xjq";
})
./xpdf-3.02-protection.patch
];
configureFlags =
[ "--enable-a4-paper" ] /* We obey ISO standards! */
++ (if enablePDFtoPPM then [
"--with-freetype2-library=${freetype}/lib"
"--with-freetype2-includes=${freetype}/include/freetype2"
] else []);
postInstall = "
if test -n \"${base14Fonts}\"; then
substituteInPlace $out/etc/xpdfrc \\
--replace /usr/local/share/ghostscript/fonts ${base14Fonts} \\
--replace '#displayFontT1' displayFontT1
fi
";
}