<story><title>NixOS 22.11 “Raccoon”</title><url>https://nixos.org/blog/announcements</url></story><parent_chain></parent_chain><comment><author>nh2</author><text>Something that isn&amp;#x27;t stated in this thread yet is how easy NixOS makes version upgrades.&lt;p&gt;I maintain multiple pet servers. When I used Ubuntu, doing release upgrades cost me ~6 hours per server per upgrade every 2 years. Most of that time went into merging updated upstream configuration files with my changed configuration files, often for silly stuff like upstream changing tabs to spaces in the config file syntax. With the Debian-style upgrader, you also have to wait 5 minutes  until you&amp;#x27;re prompted for the next config file to merge, while other packages are &amp;quot;configuring&amp;quot; with `dpkg`. So you cannot do them all in a batch, but have to stare at the screen throughout the procedure, attending every 5 minutes.&lt;p&gt;So with multiple servers that was multiple days of upgrades per year.&lt;p&gt;With NixOS, these days are is reduced to minutes.&lt;p&gt;For example, on one of my servers I upgraded just now:&lt;p&gt;&lt;pre&gt;&lt;code&gt;    18:07    -- starting NixOS 21.05 -&amp;gt; 21.11 upgrade command
    18:10    -- download finished
    18:10:15 -- rebooted into new running system
&lt;/code&gt;&lt;/pre&gt;
This server currently runs:&lt;p&gt;&lt;pre&gt;&lt;code&gt;    * webserver
    * mailserver (with web UI, spamfilter, etc)
    * nameserver (with dynamic DNS updates)
    * VPN server
    * mumble voicechat server
    * XMPP server
    * Matrix server with signal bridge
    * vaultwarden server
    * some custom web services
&lt;/code&gt;&lt;/pre&gt;
This is possible because with NixOS, you do not mutate text files in `&amp;#x2F;etc` for configuration. Instead, you write a structured config similar to a JSON object (but in the Nix language, so you can use stuff like `map` and `filter` to solve repeated tasks over e.g. all the domains in your web server). This config only contains the differences from the default config. So concepts like &amp;quot;does the upstream Apache config file indent with tabs or spaces&amp;quot; no longer play any role.&lt;p&gt;For the server above, the config file is 800 lines long, of which 200 are comments.&lt;p&gt;So NixOS is saving me multiple days per year in sysadmin tasks, which is pretty good!</text></comment>
<story><title>NixOS 22.11 “Raccoon”</title><url>https://nixos.org/blog/announcements</url></story><parent_chain></parent_chain><comment><author>Asdrubalini</author><text>My router (a VM with passed through network card) is currently running on NixOS, I’m really happy so far, it makes kernel patching (which in my case is required for the nic to work properly at 2500BASE-T) much easier than manually patching and building the kernel every time. It also gives me the guarantee that I will be able to rebuild the exact same host almost bit by bit in the future, in case of necessity, which is important for something like a router (I also take vm snapshots but upgrades are crucial for something potentially facing the internet and handling firewall). Looking forward to move away from proxmox to a fully NixOS virtualisation host too.</text></comment>