tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
dcp375cw{lpr,-cupswrapper}: init at 1.1.3
Marco Vergueira
2 years ago
b4c4f471
549c83e4
+101
2 changed files
expand all
collapse all
unified
split
pkgs
misc
cups
drivers
brother
dcp375cw
default.nix
top-level
all-packages.nix
+97
pkgs/misc/cups/drivers/brother/dcp375cw/default.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ lib, stdenv, fetchurl, cups, dpkg, gnused, makeWrapper, ghostscript, file
2
+
, a2ps, coreutils, gnugrep, which, gawk }:
3
+
4
+
let
5
+
version = "1.1.3";
6
+
model = "dcp375cw";
7
+
in rec {
8
+
driver = stdenv.mkDerivation {
9
+
pname = "${model}-lpr";
10
+
inherit version;
11
+
12
+
src = fetchurl {
13
+
url =
14
+
"https://download.brother.com/welcome/dlf005427/dcp375cwlpr-${version}-1.i386.deb";
15
+
sha256 =
16
+
"6daf0144b5802ea8da394ca14db0e6f0200d4049545649283791f899b7f7bd26";
17
+
};
18
+
19
+
nativeBuildInputs = [ dpkg makeWrapper ];
20
+
buildInputs = [ cups ghostscript a2ps gawk ];
21
+
unpackPhase = "dpkg-deb -x $src $out";
22
+
23
+
installPhase = ''
24
+
substituteInPlace $out/opt/brother/Printers/${model}/lpd/filter${model} \
25
+
--replace /opt "$out/opt"
26
+
27
+
patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
28
+
$out/opt/brother/Printers/${model}/lpd/br${model}filter
29
+
30
+
mkdir -p $out/lib/cups/filter/
31
+
ln -s $out/opt/brother/Printers/${model}/lpd/filter${model} $out/lib/cups/filter/brlpdwrapper${model}
32
+
33
+
wrapProgram $out/opt/brother/Printers/${model}/lpd/filter${model} \
34
+
--prefix PATH ":" ${
35
+
lib.makeBinPath [
36
+
gawk
37
+
ghostscript
38
+
a2ps
39
+
file
40
+
gnused
41
+
gnugrep
42
+
coreutils
43
+
which
44
+
]
45
+
}
46
+
'';
47
+
48
+
meta = with lib; {
49
+
homepage = "http://www.brother.com/";
50
+
description = "Brother ${model} printer driver";
51
+
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
52
+
license = licenses.unfree;
53
+
platforms = platforms.linux;
54
+
downloadPage =
55
+
"https://support.brother.com/g/b/downloadlist.aspx?c=gb&lang=en&prod=${model}_all&os=128";
56
+
maintainers = with maintainers; [ marcovergueira ];
57
+
};
58
+
};
59
+
60
+
cupswrapper = stdenv.mkDerivation {
61
+
pname = "${model}-cupswrapper";
62
+
inherit version;
63
+
64
+
src = fetchurl {
65
+
url =
66
+
"https://download.brother.com/welcome/dlf005429/dcp375cwcupswrapper-${version}-1.i386.deb";
67
+
sha256 =
68
+
"9a255728b595d2667b2caf9d0d332b677e1a6829a3ec1ed6d4e900a44069cf2d";
69
+
};
70
+
71
+
nativeBuildInputs = [ dpkg makeWrapper ];
72
+
buildInputs = [ cups ghostscript a2ps gawk ];
73
+
unpackPhase = "dpkg-deb -x $src $out";
74
+
75
+
installPhase = ''
76
+
for f in $out/opt/brother/Printers/${model}/cupswrapper/cupswrapper${model}; do
77
+
wrapProgram $f --prefix PATH : ${
78
+
lib.makeBinPath [ coreutils ghostscript gnugrep gnused ]
79
+
}
80
+
done
81
+
82
+
mkdir -p $out/share/cups/model
83
+
ln -s $out/opt/brother/Printers/${model}/cupswrapper/brother_${model}_printer_en.ppd $out/share/cups/model/
84
+
'';
85
+
86
+
meta = with lib; {
87
+
homepage = "http://www.brother.com/";
88
+
description = "Brother ${model} printer CUPS wrapper driver";
89
+
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
90
+
license = licenses.unfree;
91
+
platforms = platforms.linux;
92
+
downloadPage =
93
+
"https://support.brother.com/g/b/downloadlist.aspx?c=gb&lang=en&prod=${model}_all&os=128";
94
+
maintainers = with maintainers; [ marcovergueira ];
95
+
};
96
+
};
97
+
}
+4
pkgs/top-level/all-packages.nix
···
39729
39730
cups-bjnp = callPackage ../misc/cups/drivers/cups-bjnp { };
39731
0
0
0
0
39732
dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver;
39733
39734
dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper;
···
39729
39730
cups-bjnp = callPackage ../misc/cups/drivers/cups-bjnp { };
39731
39732
+
dcp375cwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp375cw { }).driver;
39733
+
39734
+
dcp375cw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp375cw { }).cupswrapper;
39735
+
39736
dcp9020cdwlpr = (pkgsi686Linux.callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).driver;
39737
39738
dcp9020cdw-cupswrapper = (callPackage ../misc/cups/drivers/brother/dcp9020cdw { }).cupswrapper;