Beginning with commit 8ffd6af27e,
the build recipe for `hplipWithPlugin` explicitely drops a
udev rule file that is delivered with the sources.
In `hplip` (without plugin), the rule file is retained.
The udev rules takes care of uploading firmware
to certain printers (and maybe of other things),
e.g. to HP LaserJet 1000.
This commit reinstates the rule file and
expands the fixup script so that the rules
are also patched in the WithPlugin version.
hplip's udev rule uses `nohup` to attempt to detach
its printer configuration script from the udev process.
However, this attempt is futile as udev
tracks its child processes with cgroups:
https://unix.stackexchange.com/a/243648
The hardcoded path to `nohup` was patched to use Nix' `nohup`.
This commit alters the patch script so
that it simply drops the call to `nohup`.
This round is without the systemd CVE,
as we don't have binaries for that yet.
BTW, I just ignore darwin binaries these days,
as I'd have to wait for weeks for them.
xboxdrv doesn’t use scons for installing, but instead using a
makefile! Everything else is in scons so we have to keep that. I’ve
added a dontUseSconsInstall flag to the scons setup-hook to skip the
automatic overwrite of default “make install” call.
In a few cases it wasn't clear so I left them as-is.
While visiting these moved other things to nativeBuildInputs
when it was clear they were one of these cases:
* makeWrapper
* archive utilities (in order to unpack src)
* a few of these might no longer be needed but leaving for another day
This makes the command ‘nix-env -qa -f. --arg config '{skipAliases =
true;}'’ work in Nixpkgs.
Misc...
- qtikz: use libsForQt5.callPackage
This ensures we get the right poppler.
- rewrites:
docbook5_xsl -> docbook_xsl_ns
docbook_xml_xslt -> docbook_xsl
diffpdf: fixup
* treewide: http -> https sources
This updates the source urls of all top-level packages from http to
https where possible.
* buildtorrent: fix url and tab -> spaces
Also fixes multiples issues:
- broken plugins:
- `fax_marvell.so file is not present or symbolic link is missing`
- `lj.so library file doesn't have user/group execute permission.`
- `bb_escl.so file is not present or symbolic link is missing`
- multiple error during configuration phase which prevented `*.ppd`
generation:
- `ppdc: Unable to find include file "<font.defs>"`
- patched configure time `perl` script
- patched use of `file`
- some potentially problematic filter and services:
- patched reference to ghost script and fonts dir in filter.
- patched usb configuration service.
- patch scripts so that they refer to valid location.
Add some options:
- `withStaticPPDInstall`: Install `*.ppd` files along with `*.drv`.
When true, configure outputs: `checking for cups ppd install... yes`.
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/sc-controller/versions.
These checks were done:
- built on NixOS
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/sc-controller had a zero exit code or showed the expected version
- /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc passed the binary check.
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-daemon had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-dialog had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-keyboard had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-launcher had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-menu had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-message had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-radial-menu had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/scc-osd-show-bindings had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..sc-controller-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.sc-controller-wrapped had a zero exit code or showed the expected version
- /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-wrapped-wrapped passed the binary check.
- /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-wrapped passed the binary check.
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-daemon-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-daemon-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-dialog-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-dialog-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-keyboard-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-keyboard-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-launcher-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-launcher-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-menu-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-menu-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-message-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-message-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-radial-menu-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-radial-menu-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/..scc-osd-show-bindings-wrapped-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3/bin/.scc-osd-show-bindings-wrapped had a zero exit code or showed the expected version
- 3 of 30 passed binary check by having a zero exit code.
- 0 of 30 passed binary check by having the new version present in output.
- found 0.4.3 with grep in /nix/store/2qlhi6fqx37zhcxdfn5gygl8xq4zkyip-sc-controller-0.4.3
- directory tree listing: https://gist.github.com/28b55137e29bb39ba0741bd1847fe529
- du listing: https://gist.github.com/446c39be30dba3aa0dc166afa85e757a
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/sc-controller/versions.
These checks were done:
- built on NixOS
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/scc -h’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/scc --help’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/scc help’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/..scc-wrapped-wrapped -h’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/..scc-wrapped-wrapped --help’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/..scc-wrapped-wrapped help’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/.scc-wrapped -h’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/.scc-wrapped --help’ got 0 exit code
- ran ‘/nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2/bin/.scc-wrapped help’ got 0 exit code
- found 0.4.2 with grep in /nix/store/d6a2kmmbi7lw8xq2yk7si8qd4af897lx-sc-controller-0.4.2
- directory tree listing: https://gist.github.com/3f673ef175fbb295f67a2384aef61ede
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/gutenprint/versions.
These checks were done:
- built on NixOS
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/escputil -h’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/escputil --help’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/testpattern -h’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/testpattern --help’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/testpattern help’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/cups-genppd.5.2 -h’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/cups-genppd.5.2 help’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/cups-genppdupdate -h’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/cups-genppdupdate --help’ got 0 exit code
- ran ‘/nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14/bin/cups-genppdupdate help’ got 0 exit code
- found 5.2.14 with grep in /nix/store/8pdjcfv46m5w8ifh68mvajwkn3vjwal1-gutenprint-5.2.14
- directory tree listing: https://gist.github.com/6d652f72cb774ccd13cc489d708ad63d
Semi-automatic update. These checks were performed:
- built on NixOS
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/sc-controller -h` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/sc-controller --help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/sc-controller -V` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/sc-controller --version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc -h` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc --help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc -V` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc --version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc -h` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc --help` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc help` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc-daemon -h` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/scc-daemon --help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped -h` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped --help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped -V` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped --version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped -h` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped --help` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/..scc-wrapped-wrapped help` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped -h` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped --help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped help` got 0 exit code
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped -V` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped --version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped version` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped -h` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped --help` and found version 0.4.0.2
- ran `/nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2/bin/.scc-wrapped help` and found version 0.4.0.2
- found 0.4.0.2 with grep in /nix/store/yjhdx3zx9zivz9x2wl2z0c5kqv8b5hkv-sc-controller-0.4.0.2
cc "@orivej"
They aren't meant to be critical (uncatchable) errors.
Tested with nix-env + checkMeta:
[ "x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux" ]
We cannot rely on wrapPythonPrograms to wrap the installed executables because
they are symlinks (which it ignores). Instead, we have to emulate it to make
the wrappers ourselves.
Additional CUPS drivers can be added via "services.printing.drivers" but
Gutenprint was an exception. It was possible to add a Gutenprint
derivation to that list and it would work at first but unlike the other
drivers Gutenprint requires a script to be run after each update or any
attempt to print something would simply fail and an error would show up
in the jobs queue (http://localhost:631/jobs/):
"The PPD version (5.2.11) is not compatible with Gutenprint 5.2.13.
Please run
`/nix/store/7762kpyhfkcgmr3q81v1bbyy0bjhym80-gutenprint-5.2.13/sbin/cups-genppdupdate'
as administrator."
This is due to state in "/var/lib/cups/ppd" and one would need to run
"/nix/store/.../bin/cups-genppdupdate -p /var/lib/cups/ppd" manually.
The alternative was to enable the following option:
"services.printing.gutenprint" but this had two disadvantages:
1) It is an exception that one could be unaware of or that could
potentially cause some confusion.
2) One couldn't use a customized Gutenprint derivation in
"services.printing.drivers" but would instead have to overwrite
"pkgs.gutenprint".
This new approach simply detects a Gutenprint derivation in
"services.printing.gutenprint" by checking if the meta set of a
derivation contains "isGutenprint = true". Therefore no special
exception for Gutenprint would be required and it could easily be
applied to other drivers if they would require such a script to be run.
* pkgs: refactor needless quoting of homepage meta attribute
A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.
* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit
* Fixed some instances
* hplip: introduce nettools dependency
Some HP printers (notably a HP MFP M477fnw) need to run `hostname` as part of
the printing process. This executable is provided by the "nettools" package.
* hplip: prepend nettools to PATH
Rework gutenprint derivation:
* Convert to regular stdenv.mkDerivation;
* Enable IJS driver;
* Fix cups-genppdupdate;
* Move things around to the proper directories;
* Enable parallel building;
* Clean from old hacks.
The most complex problems were from dealing with switches reverted in
the meantime (gcc5, gmp6, ncurses6).
It's likely that darwin is (still) broken nontrivially.
- systemd puts all into one output now (except for man),
because I wasn't able to fix all systemd/udev refernces
for NixOS to work well
- libudev is now by default *copied* into another path,
which is what most packages will use as build input :-)
- pkgs.udev = [ libudev.out libudev.dev ]; because there are too many
references that just put `udev` into build inputs (to rewrite them all),
also this made "${udev}/foo" fail at *evaluation* time
so it's easier to catch and change to something more specific
A full wrap isn't needed as these scripts are only run from within
hplip's own environment, and unwanted because they are imported
as Python modules.
Also fix a reference to /etc in $out/etc/hp/hplip.conf, though I've no
idea whether it is actually used.
Something changed in the generic fixupPhase magic exposing a bug
in the previous fix (wrapPythonPrograms where I should have used
wrapPythonProgramsIn).
Also move buildInputs and friends to a more conventional spot.
None of the installed tools like hp-align or hp-toolbox could
work, because they tried to import wrapped Python scripts (i.e.
shell code) as Python modules. Fix this by:
- Substituting `dbus` for the defective `pythonDBus`.
- No longer blindly wrapping all python files, but replacing
the original symlinks in $out/bin with wrapper scripts.
These wrappers then `exec` the unmodified Python scripts in
$out/share/hplip directly, instead of the .<name>-wrapped
copy that wrapPythonProgramsIn creates. The latter are simply
removed.
Sure, it's a bit ugly. It's also 2015 and I couldn't use my
printer :-/
This reverts commit 1b064645ed, reversing
changes made to 14cef95e84.
As discussed in the comments to the aforementioned pull request, while
the new version supports many new printer models, many components of the
driver are broken because of some corner cases in the Python wrapper. In
particular, the loader for the binary binary driver needed by many
middle- and high-end printers is broken, negating most of the value in
updating!