Home > System Tutorial > LINUX > How To Upgrade NixOS 23.11 To 24.05 [Step-by-Step]

How To Upgrade NixOS 23.11 To 24.05 [Step-by-Step]

尊渡假赌尊渡假赌尊渡假赌
Release: 2025-03-17 11:24:10
Original
114 people have browsed it

NixOS 24.05 (Uakari) is released, easy upgrade guide! NixOS is known for its easy upgrade process, and this tutorial will guide you step by step how to upgrade NixOS to the latest version to ensure system stability and reliability.

We will demonstrate how to upgrade NixOS 23.11 (Tapir) to 24.05 (Uakari). My NixOS 23.11 version information is as follows:

 <code>$ cat /etc/os-release BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues" BUILD_ID="23.11.5541.56528ee42526" DOCUMENTATION_URL="https://nixos.org/learn.html" HOME_URL="https://nixos.org/" ID=nixos LOGO="nix-snowflake" NAME=NixOS PRETTY_NAME="NixOS 23.11 (Tapir)" SUPPORT_END="2024-06-30" SUPPORT_URL="https://nixos.org/community.html" VERSION="23.11 (Tapir)" VERSION_CODENAME=tapir VERSION_ID="23.11"</code>
Copy after login

How To Upgrade NixOS 23.11 To 24.05 [Step-by-Step]

Table of contents

  • Data backup
  • Update NixOS Channel
  • Upgrade from NixOS 23.11 to 24.05
  • Upgrade to an unstable version of NixOS
  • Automatic upgrade
  • Summarize

Data backup

No matter what operating system you use, the first step is to back up important data.

Update NixOS Channel

The core of NixOS upgrade is the concept of "channel". Channels are carefully organized repositories that distribute Nix expressions and their associated binaries, rigorously tested and built to ensure a seamless experience. Available channels include:

  • Stable Channels (e.g., nixos-24.05): These channels receive conservative bug fixes and package upgrades, such as minor kernel updates from 6.1 to 6.2, ensuring a stable and reliable experience.
  • Nixos- unstable : For users seeking the latest features, this channel reflects the active development branch of NixOS, providing the latest cutting-edge features and updates, but may be instability.
  • Lite channels (e.g., nixos-24.05-small): Same as regular versions, but with fewer pre-built binary packages, these channels are ideal for server environments and provide faster updates when critical security patches are released.

For more information on Nix channel usage, check out the following guide:

Getting started with Nix Package Manager

Upgrade from NixOS 23.11 to 24.05

When you first install NixOS (such as 23.11), you will automatically subscribe to the channel corresponding to the installation source.

To check the current channel, run the following command as root or sudo user:

 <code>$ sudo nix-channel --list | grep nixos nixos https://nixos.org/channels/nixos-23.11</code>
Copy after login

How To Upgrade NixOS 23.11 To 24.05 [Step-by-Step]

As shown above, my current channel is 23.11, which means I am using NixOS 23.11.

To switch to the latest version of the channel, just use nix-channel --add https://channels.nixos.org/channel-name nixos .

For example, to switch to a stable 24.05 channel, we use:

 <code>$ sudo nix-channel --add https://channels.nixos.org/nixos-24.05 nixos</code>
Copy after login

After subscribing to the required channel, just upgrade to run:

 <code>$ sudo nixos-rebuild switch --upgrade</code>
Copy after login
Copy after login

This command is equivalent to nix-channel --update nixos; nixos-rebuild switch , which seamlessly updates the system to the latest version in the selected channel.

If the upgrade is successful, you will see the following output:

 <code>[...]updating GRUB 2 menu...Warning: os-prober will be executed to detect other bootable partitions.Its output will be used to detect bootable binaries on them and create new boot entries.lsblk: /dev/mapper/no*[0-9]: not a block devicelsblk: /dev/mapper/raid*[0-9]: not a block devicelsblk: /dev/mapper/disks*[0-9]: not a block deviceinstalling the GRUB 2 boot loader on /dev/sda...Installing for i386-pc platform. <strong>Installation finished. No error reported.</strong> [...]</code>
Copy after login

Restart your NixOS system.

 <code>$ sudo reboot</code>
Copy after login

After logging in to the newly upgraded system, check its version to verify that the upgrade is successful.

 <code>[ostechnix@nixos:~]$ cat /etc/os-release ANSI_COLOR="1;34" BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues" **BUILD_ID="24.05.803.b3b2b28c1daa"** DOCUMENTATION_URL="https://nixos.org/learn.html" HOME_URL="https://nixos.org/" ID=nixos IMAGE_ID="" IMAGE_VERSION="" LOGO="nix-snowflake" NAME=NixOS PRETTY_NAME="NixOS 24.05 (Uakari)" SUPPORT_END="2024-12-31" SUPPORT_URL="https://nixos.org/community.html" VERSION="24.05 (Uakari)" VERSION_CODENAME=uakari **VERSION_ID="24.05"**</code>
Copy after login

How To Upgrade NixOS 23.11 To 24.05 [Step-by-Step]

As shown in the above output, we have successfully upgraded to NixOS 24.05.

Upgrade to an unstable version of NixOS

If you want to try the unstable version (the latest version), you can switch to the nixos-unstable channel and perform the upgrade as shown above. Here are the steps to upgrade NixOS to the latest version.

First, switch to the NixOS unstable channel using the following command:

 <code>$ sudo nix-channel --add https://channels.nixos.org/nixos-unstable nixos</code>
Copy after login

This command instructs the Nix Package Manager to add the URL of the unstable channel ( https://channels.nixos.org/nixos-unstable ) and associate it with nixos channel name.

You can check the channel you are currently subscribed with:

 <code>$ sudo nix-channel --list | grep nixos</code>
Copy after login

This displays the channel URL and name associated with the current NixOS installation.

After adding the nixos-unstable channel, you can upgrade your NixOS installation to the latest version in the unstable channel by running the following command:

 <code>$ sudo nixos-rebuild switch --upgrade</code>
Copy after login
Copy after login

This will download and install all the latest packages and updates from the unstable channel.

It should be noted that the unstable channel (as its name implies) contains the latest cutting-edge updates and changes from the main NixOS development branch.

While it provides access to the latest features and software packages, it can also lead to instability or failure. Therefore, it is generally not recommended to use unstable channels in production systems or mission-critical environments.

If you want to switch back to a stable channel later, you can use a similar nix-channel --add command and use the required stable channel URL (for example, https://channels.nixos.org/nixos-24.05 for NixOS 24.05 stable channel).

Automatic upgrade

For maximum convenience, NixOS provides an automatic upgrade option. By adding the following lines to your configuration.nix :

 <code>{ system.autoUpgrade.enable = true; system.autoUpgrade.allowReboot = true; }</code>
Copy after login

You will enable nixos-upgrade.service , which periodically checks for updates from your subscribed channel.

If allowReboot is set to true , the system will automatically restart when the new version contains kernel, initrd, or kernel module changes.

You can even specify a custom channel for automatic upgrade:

 <code>{ system.autoUpgrade.channel = "https://channels.nixos.org/nixos-24.05"; }</code>
Copy after login

Summarize

Upgrading your system has never been easier with NixOS! Whether you prefer the stability of the latest stable channel or the latest features of the unstable channel, the upgrade process is very simple!

The above is the detailed content of How To Upgrade NixOS 23.11 To 24.05 [Step-by-Step]. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template