diff options
Diffstat (limited to 'pkgs/misc/cups')
-rw-r--r-- | pkgs/misc/cups/drivers/brother/dcp9020cdw/default.nix | 99 | ||||
-rw-r--r-- | pkgs/misc/cups/filters.nix | 11 |
2 files changed, 105 insertions, 5 deletions
diff --git a/pkgs/misc/cups/drivers/brother/dcp9020cdw/default.nix b/pkgs/misc/cups/drivers/brother/dcp9020cdw/default.nix new file mode 100644 index 00000000000..0ecbbd8b55e --- /dev/null +++ b/pkgs/misc/cups/drivers/brother/dcp9020cdw/default.nix @@ -0,0 +1,99 @@ +{ lib +, stdenv +, fetchurl +, cups +, dpkg +, gnused +, makeWrapper +, ghostscript +, file +, a2ps +, coreutils +, gnugrep +, which +, gawk +}: + +let + version = "1.1.2"; + model = "dcp9020cdw"; +in +rec { + driver = stdenv.mkDerivation { + pname = "${model}-lpr"; + inherit version; + + src = fetchurl { + url = "https://download.brother.com/welcome/dlf100441/dcp9020cdwlpr-${version}-1.i386.deb"; + sha256 = "1z6nma489s0a0b0a8wyg38yxanz4k99dg29fyjs4jlprsvmwk56y"; + }; + + nativeBuildInputs = [ dpkg makeWrapper ]; + buildInputs = [ cups ghostscript a2ps gawk ]; + unpackPhase = "dpkg-deb -x $src $out"; + + installPhase = '' + substituteInPlace $out/opt/brother/Printers/${model}/lpd/filter${model} \ + --replace /opt "$out/opt" + + patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + $out/opt/brother/Printers/${model}/lpd/br${model}filter + + mkdir -p $out/lib/cups/filter/ + ln -s $out/opt/brother/Printers/${model}/lpd/filter${model} $out/lib/cups/filter/brother_lpdwrapper_${model} + + wrapProgram $out/opt/brother/Printers/${model}/lpd/filter${model} \ + --prefix PATH ":" ${lib.makeBinPath [ + gawk + ghostscript + a2ps + file + gnused + gnugrep + coreutils + which + ]} + ''; + + meta = with lib; { + homepage = "http://www.brother.com/"; + description = "Brother ${model} printer driver"; + license = licenses.unfree; + platforms = platforms.linux; + downloadPage = "https://support.brother.com/g/b/downloadlist.aspx?c=gb&lang=en&prod=${model}_eu&os=128"; + maintainers = with maintainers; [ pshirshov ]; + }; + }; + + cupswrapper = stdenv.mkDerivation { + pname = "${model}-cupswrapper"; + inherit version; + + src = fetchurl { + url = "https://download.brother.com/welcome/dlf100443/dcp9020cdwcupswrapper-${version}-1.i386.deb"; + sha256 = "04yqm1qv9p4hgp1p6mqq4siygl4056s6flv6kqln8mvmcr8zaq1s"; + }; + + nativeBuildInputs = [ dpkg makeWrapper ]; + buildInputs = [ cups ghostscript a2ps gawk ]; + unpackPhase = "dpkg-deb -x $src $out"; + + installPhase = '' + for f in $out/opt/brother/Printers/${model}/cupswrapper/cupswrapper${model}; do + wrapProgram $f --prefix PATH : ${lib.makeBinPath [ coreutils ghostscript gnugrep gnused ]} + done + + mkdir -p $out/share/cups/model + ln -s $out/opt/brother/Printers/${model}/cupswrapper/brother_${model}_printer_en.ppd $out/share/cups/model/ + ''; + + meta = with lib; { + homepage = "http://www.brother.com/"; + description = "Brother ${model} printer CUPS wrapper driver"; + license = licenses.unfree; + platforms = platforms.linux; + downloadPage = "https://support.brother.com/g/b/downloadlist.aspx?c=gb&lang=en&prod=${model}_eu&os=128"; + maintainers = with maintainers; [ pshirshov ]; + }; + }; +} diff --git a/pkgs/misc/cups/filters.nix b/pkgs/misc/cups/filters.nix index 8b1e7fe8fc7..911892cb728 100644 --- a/pkgs/misc/cups/filters.nix +++ b/pkgs/misc/cups/filters.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchurl, pkg-config, cups, poppler, poppler_utils, fontconfig , libjpeg, libpng, perl, ijs, qpdf, dbus, avahi , makeWrapper, coreutils, gnused, bc, gawk, gnugrep, which, ghostscript -, mupdf +, mupdf, dejavu_fonts, liblouis }: let @@ -9,11 +9,11 @@ let in stdenv.mkDerivation rec { pname = "cups-filters"; - version = "1.25.12"; + version = "1.28.10"; src = fetchurl { url = "https://openprinting.org/download/cups-filters/${pname}-${version}.tar.xz"; - sha256 = "1kv25011iyzvd33n5zmmn1z2p6pzk26hmmw6qvjjnx8p3sp7raqn"; + sha256 = "sha256-z4yQRpTETPaJtXJORtI9qa5RJdVDdLNAxkIHfMKcqDc="; }; nativeBuildInputs = [ pkg-config makeWrapper ]; @@ -21,6 +21,7 @@ in stdenv.mkDerivation rec { buildInputs = [ cups poppler poppler_utils fontconfig libjpeg libpng perl ijs qpdf dbus avahi ghostscript mupdf + liblouis # braille embosser support ]; configureFlags = [ @@ -33,7 +34,7 @@ in stdenv.mkDerivation rec { "--enable-imagefilters" "--with-rcdir=no" "--with-shell=${stdenv.shell}" - "--with-test-font-path=/path-does-not-exist" + "--with-test-font-path=${dejavu_fonts}/share/fonts/truetype/DejaVuSans.ttf" ]; makeFlags = [ "CUPS_SERVERBIN=$(out)/lib/cups" "CUPS_DATADIR=$(out)/share/cups" "CUPS_SERVERROOT=$(out)/etc/cups" ]; @@ -60,7 +61,7 @@ in stdenv.mkDerivation rec { ''; enableParallelBuilding = true; - doCheck = false; # fails 4 out of 6 tests + doCheck = true; meta = { homepage = "http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters"; |