Search code examples
nixos

How do I upgrade my system to nixos-unstable?


How do I make sure that all packages I install on my system nixos installation (i.e. packages listed in /etc/nixos/configuration.nix, which I install using sudo nixos-rebuild switch) are using the latest (unstable) version of nixos/nixpkgs?


Solution

  • As explained in the manual's section on upgrading, if you issue the following command as root:

    # nix-channel --list
    

    you will most likely see something like the following (if you were following the 16.09 branch for instance):

    nixos https://nixos.org/channels/nixos-16.09
    

    By issuing the following command (still as root):

    # nix-channel --add https://nixos.org/channels/nixos-unstable nixos
    

    you will remove the 16.09 channel and replace it with nixos-unstable.

    Now this is not enough yet. To really update your system, you need one last command:

    # nixos-rebuild switch --upgrade
    

    which is going to rebuild your system with your current configuration and updated packages from the channel you switched to.