Farid Zakaria
I'm a software engineer, father and wishful amateur surfer. If you've come seeking my political views, you've found the wrong.
You can find my writings on Nix, build systems and software engineering in general at https://fzakaria.com
Sessions
Nix’s guarantee of reproducibility hinges on a simple mechanism: absolute, immutable store paths (i.e. /nix/store). While this rigidity guarantees that binaries always find their exact dependencies, it introduces a massive constraint: it binds the entire ecosystem to a single, global directory. If you want to run a Nix binary on a target system where you don't have root access to create /nix, or where you cannot run an unprivileged user namespace, you are forced to rebuild the world To achieve true portability and friction-free deployment across arbitrary infrastructure, Nix binaries must become fully relocatable. What does that mean ? Why is it hard? Who cares (psst me!)? We will discuss what a fully relocatable Nix ecosystem could look like , and how solving this constraint could allow Nix to be run more easily on more restrictive environments..
Nix is surging in popularity, and with it the community has taken the stance that Nix should be for everyone & their grandparents. I'm here to fight against that idea and share why I think it dilutes the power of Nix itself. By catering to the masses and targeting multiple platforms (MacOS), we weaken the potential of the idea and implementation. When we stop building for the lowest common denominator, we get to push the absolute limits. I will spend this time trying to convince you why Nix should drop support for platforms such as MacOS, diverge even more radically from traditional Linux distros and take on more grand technical solutions to problems at large.