boxen/flake.nix

53 lines
1.5 KiB
Nix

{
description = "My NixOS configuration";
inputs = {
nixos.url = "nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixos";
nur.url = "github:nix-community/NUR";
emacs-overlay.url = "github:nix-community/emacs-overlay";
sc3plugins.url =
"git+https://tildegit.org/petrichor/sc3plugins-nix.git?ref=main";
sc3plugins.inputs.nixpkgs.follows = "nixos";
};
outputs =
{ self, nixos, home-manager, nur, emacs-overlay, sc3plugins }@inputs: {
nixosConfigurations =
nixos.lib.attrsets.genAttrs [ "arianrhod" "gwydion" ] (hostName:
nixos.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./profiles
./configuration.nix
(./hosts + "/${hostName}")
(./secrets + "/${hostName}.nix")
{
nixpkgs.overlays = [
nur.overlay
emacs-overlay.overlay
(final: prev: {
inherit (sc3plugins.packages.x86_64-linux)
supercolliderWithPlugins;
})
];
}
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = false;
home-manager.users.jez = import ./home;
}
];
specialArgs = { inherit inputs hostName; };
});
};
}