From dbd8269eabc92f69c80fa09549ee3b4fd74ba8a4 Mon Sep 17 00:00:00 2001 From: Pavel Shirshov Date: Sat, 11 Sep 2021 16:52:10 +0100 Subject: [PATCH 1/2] maintainers: add pshirshov --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 09c65a77fde0..e9ef7051d1e7 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8806,6 +8806,12 @@ githubId = 33375; name = "Peter Sanford"; }; + pshirshov = { + email = "pshirshov@eml.cc"; + github = "pshirshov"; + githubId = 295225; + name = "Pavel Shirshov"; + }; psibi = { email = "sibi@psibi.in"; github = "psibi"; From bc4d8649d9de90c710b290faf984417c0390b660 Mon Sep 17 00:00:00 2001 From: Pavel Shirshov Date: Sat, 11 Sep 2021 16:52:10 +0100 Subject: [PATCH 2/2] dcp9020cdw{lpr,-cupswrapper}: init at 1.1.2 --- .../drivers/brother/dcp9020cdw/default.nix | 99 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 + 2 files changed, 103 insertions(+) create mode 100644 pkgs/misc/cups/drivers/brother/dcp9020cdw/default.nix 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 000000000000..0ecbbd8b55e5 --- /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/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5ee1d7976001..9548e4013cae 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31428,6 +31428,10 @@ with pkgs; cups-bjnp = callPackage ../misc/cups/drivers/cups-bjnp { }; + dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver; + + dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper; + cups-brother-hl1110 = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1110 { }; cups-brother-hl1210w = pkgsi686Linux.callPackage ../misc/cups/drivers/hl1210w { };