nixos-configs/flake.nix

76 lines
1.8 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland";
nur.url = "github:nix-community/NUR";
nix-gaming.url = "github:fufexan/nix-gaming";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprland = {
url = "github:hyprwm/Hyprland";
inputs.nixpkgs.follows = "nixpkgs";
};
hyprgrass = {
url = "github:horriblename/hyprgrass";
inputs.hyprland.follows = "hyprland";
};
ags = {
url = "github:Aylur/ags";
inputs.nixpkgs.follows = "nixpkgs";
};
neovim-flake = {
url = "github:nix-community/neovim-nightly-overlay";
# to make sure plugins and nvim have same binaries
inputs.nixpkgs.follows = "nixpkgs";
};
coc-stylelintplus = {
url = "github:matt1432/coc-stylelintplus";
inputs.nixpkgs.follows = "nixpkgs";
};
nh.url = "github:viperML/nh";
nix-melt.url = "github:nix-community/nix-melt";
nurl.url = "github:nix-community/nurl";
};
outputs = { self, nixpkgs, home-manager, nur, nix-gaming, ... }@attrs: let
defaultModules = [
nur.nixosModules.nur
home-manager.nixosModules.home-manager {
home-manager.extraSpecialArgs = attrs;
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
}
./common/default.nix
];
in {
nixosConfigurations = {
wim = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = attrs;
modules = defaultModules ++ [
./devices/wim
];
};
binto = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = attrs;
modules = defaultModules ++ [
./devices/binto
];
};
};
};
}