about summary refs log tree commit diff
path: root/pkgs/misc/cups/drivers/foomatic-db-ppds/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/misc/cups/drivers/foomatic-db-ppds/default.nix')
-rw-r--r--pkgs/misc/cups/drivers/foomatic-db-ppds/default.nix122
1 files changed, 0 insertions, 122 deletions
diff --git a/pkgs/misc/cups/drivers/foomatic-db-ppds/default.nix b/pkgs/misc/cups/drivers/foomatic-db-ppds/default.nix
deleted file mode 100644
index bdc1e0a9b5feb..0000000000000
--- a/pkgs/misc/cups/drivers/foomatic-db-ppds/default.nix
+++ /dev/null
@@ -1,122 +0,0 @@
-{ lib
-, foomatic-db
-, foomatic-db-nonfree
-, buildEnv
-, foomatic-db-engine
-, stdenv
-, cups-filters
-, ghostscript
-, netpbm
-, perl
-, psutils
-, patchPpdFilesHook
-, withNonfreeDb ? false  # include foomatic-db-nonfree ppd files
-}:
-
-let
-  foomatic-db-packages = [ foomatic-db ] ++
-    lib.lists.optional withNonfreeDb foomatic-db-nonfree;
-
-  foomatic-db-combined = buildEnv {
-    name = "foomatic-db-combined";
-    paths = foomatic-db-packages;
-    pathsToLink = [ "/share/foomatic" ];
-    # `foomatic-db-combined` is a nativeBuildInput of `foomatic-db-ppds`.
-    # The setup hook defined here helps scripts in
-    # `foomatic-db-engine` to find the database.
-    postBuild = ''
-      mkdir -p "${placeholder "out"}"/{etc/cups,nix-support}
-      cat  >> "${placeholder "out"}/nix-support/setup-hook"  << eof
-      export FOOMATICDB="${placeholder "out"}/share/foomatic"
-      eof
-    '';
-  };
-
-  # the effective license is `free` if all database
-  # packages have free licenses, `unfree` otherwise
-  isFree = lib.trivial.pipe foomatic-db-packages [
-    (lib.lists.map (lib.attrsets.attrByPath [ "meta" "license" ] lib.licenses.unfree))
-    (lib.lists.all (lib.attrsets.attrByPath [ "free" ] true))
-  ];
-in
-
-stdenv.mkDerivation {
-  pname = "foomatic-db-ppds";
-  # the effective version is simply the
-  # highest version of all database packages
-  version = lib.trivial.pipe foomatic-db-packages [
-    (lib.lists.map (lib.attrsets.getAttr "version"))
-    (lib.lists.sort lib.strings.versionOlder)
-    lib.lists.reverseList
-    lib.lists.head
-  ];
-
-  buildInputs = [
-    cups-filters
-    ghostscript
-    netpbm
-    perl
-    psutils
-  ];
-
-  nativeBuildInputs = [
-    foomatic-db-combined
-    foomatic-db-engine
-    patchPpdFilesHook
-  ];
-
-  dontUnpack = true;
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p "${placeholder "out"}/share/cups/model"
-    foomatic-compiledb -j "$NIX_BUILD_CORES" -d "${placeholder "out"}/share/cups/model/foomatic-db-ppds"
-    runHook postInstall
-  '';
-
-  # Comments indicate the respective
-  # package the command is contained in.
-  ppdFileCommands = [
-    "cat" "echo"  # coreutils
-    "foomatic-rip"  # cups-filters or foomatic-filters
-    "gs"  # ghostscript
-    "pnmflip" "pnmgamma" "pnmnoraw"  # netpbm
-    "perl"  # perl
-    "psresize"  # psutils
-    # These commands aren't packaged yet.
-    # ppd files using these likely won't work.
-    #"c2050" "c2070" "cjet" "lm1100"
-    #"pbm2l2030" "pbm2lwxl" "rastertophaser6100"
-  ];
-
-  # compress ppd files
-  postFixup = ''
-    echo 'compressing ppd files'
-    find -H "${placeholder "out"}/share/cups/model/foomatic-db-ppds" -type f -iname '*.ppd' -print0  \
-      | xargs -0r -n 64 -P "$NIX_BUILD_CORES" gzip -9n
-  '';
-
-  meta = {
-    description = "OpenPrinting ppd files";
-    homepage = "https://openprinting.github.io/projects/02-foomatic/";
-    license = if isFree then lib.licenses.free else lib.licenses.unfree;
-    maintainers = [ lib.maintainers.yarny ];
-    # list printer manufacturers here so people
-    # searching for ppd files can find this package
-    longDescription = ''
-      All PPD files available in
-      OpenPrinting's Foomatic database.
-      This package contains about 8,800 PPD files,
-      for printers from
-      Alps, Anitech, Apollo, Apple, Avery, Brother, Canon,
-      Citizen, CItoh, Compaq, DEC, Dell, Dymo-CoStar, Epson,
-      Fujitsu, FujiXerox, Generic, Genicom, Gestetner,
-      Heidelberg, Hitachi, HP, IBM, Imagen, Imagistics,
-      InfoPrint, Infotec, Kodak, KONICAMINOLTA, Kyocera, Lanier,
-      Lexmark, Minolta, MinoltaQMS, Mitsubishi, NEC, NRG, Oce,
-      Oki, Olivetti, Panasonic, PCPI, Pentax, QMS, Raven, Ricoh,
-      Samsung, Savin, Seiko, Sharp, SiPix, Sony, Star, Tally,
-      Tektronix, TexasInstruments, Toshiba, Xante and Xerox.
-    '';
-  };
-}