nixos-configs/flake.nix

87 lines
2 KiB
Nix

{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
# Temp fix https://github.com/nix-community/neovim-nightly-overlay/issues/332
nixpkgs-staging.url = "github:nixos/nixpkgs/staging";
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";
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";
inputs.nixpkgs.follows = "nixpkgs";
};
nh = {
url = "github:viperML/nh";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-melt = {
url = "github:nix-community/nix-melt";
inputs.nixpkgs.follows = "nixpkgs";
};
nurl = {
url = "github:nix-community/nurl";
inputs.nixpkgs.follows = "nixpkgs";
};
coc-stylelintplus = {
url = "github:matt1432/coc-stylelintplus";
inputs.nixpkgs.follows = "nixpkgs";
};
};
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
];
};
};
};
}