Nix expressions.
To subscribe to a channel (needs to be done only once):
nix-channel --add \
http://catamaran.labs.cs.uu.nl/dist/nix/channels/nixpkgs-unstable
This just adds the given URL to ~/.nix-channels (which can also be
edited manually).
To update from all channels:
nix-channel --update
This fetches the latest expressions and pulls cache manifests. The
default Nix expression (~/.nix-defexpr) is made to point to the
conjunction of the expressions downloaded from all channels.
So to update all installed derivations in the current user
environment:
nix-channel --update
nix-env --upgrade '*'
If you are really courageous, you can put this in a cronjob or
something.
You can subscribe to multiple channels. It is not entirely clear
what happens when there are name clashes between derivations from
different channels. From nix-env/main.cc it appears that the one
with the lowest (highest?) hash will be used, which is pretty
meaningless.
12 lines
361 B
Makefile
12 lines
361 B
Makefile
all-local: unpack.sh
|
|
|
|
install-exec-local:
|
|
$(INSTALL) -d $(DESTDIR)$(datadir)/nix/corepkgs
|
|
$(INSTALL) -d $(DESTDIR)$(datadir)/nix/corepkgs/channels
|
|
$(INSTALL_DATA) unpack.nix $(DESTDIR)$(datadir)/nix/corepkgs/channels
|
|
$(INSTALL_PROGRAM) unpack.sh $(DESTDIR)$(datadir)/nix/corepkgs/channels
|
|
|
|
include ../../substitute.mk
|
|
|
|
EXTRA_DIST = default.nix unpack.sh.in
|