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. |
||
---|---|---|
.github | ||
doc | ||
lib | ||
maintainers/scripts | ||
nixos | ||
pkgs | ||
.editorconfig | ||
.gitignore | ||
.travis.yml | ||
.version | ||
COPYING | ||
default.nix | ||
README.md |
Nixpkgs is a collection of packages for the Nix package manager. It is periodically built and tested by the hydra build daemon as so-called channels. To get channel information via git, add nixpkgs-channels as a remote:
% git remote add channels git://github.com/NixOS/nixpkgs-channels.git
For stability and maximum binary package support, it is recommended to maintain
custom changes on top of one of the channels, e.g. nixos-17.03
for the latest
release and nixos-unstable
for the latest successful build of master:
% git remote update channels
% git rebase channels/nixos-17.03
For pull-requests, please rebase onto nixpkgs master
.
NixOS linux distribution source code is located inside
nixos/
folder.
- NixOS installation instructions
- Documentation (Nix Expression Language chapter)
- Manual (How to write packages for Nix)
- Manual (NixOS)
- Nix Wiki (deprecated, see milestone "Move the Wiki!")
- Continuous package builds for unstable/master
- Continuous package builds for 17.03 release
- Tests for unstable/master
- Tests for 17.03 release
Communication: