diff options
author | sefidel <contact@sefidel.net> | 2023-03-04 19:17:15 +0900 |
---|---|---|
committer | sefidel <contact@sefidel.net> | 2023-03-04 19:17:15 +0900 |
commit | 73e80160be0869d79bd8dda17899543732caf996 (patch) | |
tree | 0c3f53f83d5f317f8d20d37902d838fa81c8abf6 /nixos/modules/flakes.nix | |
parent | bd97bc842b4bcdb18e4b48b9762d64d413400785 (diff) | |
download | nixrc-73e80160be0869d79bd8dda17899543732caf996.tar.gz nixrc-73e80160be0869d79bd8dda17899543732caf996.zip |
feat(nixos/modules): rename flake -> flakes
Diffstat (limited to 'nixos/modules/flakes.nix')
-rw-r--r-- | nixos/modules/flakes.nix | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/nixos/modules/flakes.nix b/nixos/modules/flakes.nix new file mode 100644 index 0000000..76f89f3 --- /dev/null +++ b/nixos/modules/flakes.nix @@ -0,0 +1,35 @@ +{ config, pkgs, unstable, unstable-small, nixpkgs-2211, lib, ... }: + +let + base = "/etc/nixpkgs/channels"; + nixpkgsPath = "${base}/nixpkgs"; + nixpkgsSmallPath = "${base}/nixpkgsSmall"; + nixpkgs2211Path = "${base}/nixpkgs2211"; +in +{ + options.nix.flakes.enable = lib.mkEnableOption "nix flakes"; + + config = lib.mkIf config.nix.flakes.enable { + nix = { + package = pkgs.nixUnstable; + experimentalFeatures = "nix-command flakes"; + + registry.nixpkgs.flake = unstable; + registry.nixpkgsSmall.flake = unstable-small; + registry.nixpkgs2211.flake = nixpkgs-2211; + + nixPath = [ + "nixpkgs=${nixpkgsPath}" + "nixpkgsSmall=${nixpkgsSmallPath}" + "nixpkgs2211=${nixpkgs2211Path}" + "/nix/var/nix/profiles/per-user/root/channels" + ]; + }; + + systemd.tmpfiles.rules = [ + "L+ ${nixpkgsPath} - - - - ${unstable}" + "L+ ${nixpkgsSmallPath} - - - - ${unstable-small}" + "L+ ${nixpkgs2211Path} - - - - ${nixpkgs-2211}" + ]; + }; +} |