[Nix-dev] Moving some of the NixOS setup to nixpkgs

Michael Raskin 7c6f434c at mail.ru
Wed Oct 15 15:53:31 CEST 2014


>Note that this proposal:
>
>* reuses packages built for different environments (packages outputs
>  stay the same between boxes, it's boxes that change),
>* doesn't generate a ton of wrappers by generating a wrapper for every
>  single package,
>* gives a somewhat natural way to decide which options go where (using
>  the same logic as in NixOS).
>
>I would even allow to do something like:
>
>environments.systemPackages = [
>  (userEnvironment "oxij" {
>     requirePackages = [ ... xmonad and other programs ... ];
>     environment.home.".xsession" = ''
>       ...
>       exec xmonad
>     '';
>  })
>  ];
>
>and then running
>/run/current-system/sw/bin/setup-user-environment-oxij should
>resymlink files in $HOME in the same way as nixos-rebuild switch
>resymlinks files in /etc. A killer feature I'd say.
>
>A disputable disadvantage is that a huge part of NixOS (at least
>pretty much all the services) should migrate into nixpkgs.

On the other hand, it would be a nice moment to rewrite most of the
services in an actually no-side-effect style. I can put two different
versions of Vim in a single environment with minor tricks; why not two
nginx services?





More information about the nix-dev mailing list