support home-manager for configuring the workspace
home-manager may be a better fit for configuring the workspace than the current bespoke packages/env variables in dev.nix.
In addition to just providing support for adding packages to the environment, it includes easy configuration for a number of common software packages. For instance, I needed to enable the nix shell
command. With home-manager, I could have set nix.settings.extra-experimental-features = "nix-command flakes repl-flake"
, but instead I needed to set an environment variable by hand:
env = {
NIX_USER_CONF_FILES = pkgs.writeText "nix.conf" ''
extra-experimental-features = nix-command flakes repl-flake
'';
};
I got lucky in that Nix can be configured from an environment variable like that; for software that needs to be configured at fixed paths inside $HOME, I don't think there's currently any way to automate that with the knobs currently exposed in dev.nix
. For example, Git configuration, shell profiles, etc.
![](https://secure.gravatar.com/avatar/77292822e2db8b1c52a0139f09ec0877?size=40&default=https%3A%2F%2Fassets.uvcdn.com%2Fpkg%2Fadmin%2Ficons%2Fuser_70-6bcf9e08938533adb9bac95c3e487cb2a6d4a32f890ca6fdc82e3072e0ea0368.png)
-
Debanjan Basu commented
Did you find a simple way to turn on flakes? @Quentin