Leap + Nix: Running Bleeding-edge Packages on a Stable Base System
Peter has been writing Haskell code both professionally and for fun for the last 15 years. He has been involved in various efforts to distribute Haskell packages to Linux, i.e. on ArchLinux, NixOS, and openSUSE.
Linux system administrators often have conflicting interests. On one hand, we would like to have a stable system that runs without a hitch for years and years on end. On the other hand, we -- and our users -- sometimes need updates. We may want to run the latest version of Firefox, LaTeX, GCC, or whatever for any number of reasons. Maybe imported features were added? Or maybe the latest version supports some new hardware that we'd like to use. Or maybe we want to exchange data with a friend who is using the latest version of some package and our old one can't process their files. Unfortunately, it's usually impossible to update a single package, because these updates often require updates of other dependencies etc. Before we know it, we're upgrading half of our installation, which is not what we want.
The distribution-agnostic user-space package manager Nix solves this problem in a great way: it allows us to install any number of packages on our system so they don't interfere at all with our base system. Nix can give us the latest Firefox or GCC without changing any of the other native tools we have. We can basically have our cake and eat it too: we use the rock-solid base system provided by openSUSE Leap and take selected bleeding-edge packages from Nix without compromising our installation.
In this talk, we'll go through the technical details of how Nix accomplishes this feat and discuss common use cases.
- 2022 June 3 - 13:00
- 25 min
- Seminarraum 1
- openSUSE Conference 2022
- New Technologies