2024-02-26 07:33:11 +00:00
|
|
|
{
|
2024-05-30 03:43:48 +00:00
|
|
|
description = "snowhawk: a nixos configuration flake";
|
2024-02-26 07:33:11 +00:00
|
|
|
|
|
|
|
inputs = {
|
|
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
|
|
|
2024-05-29 22:23:56 +00:00
|
|
|
neovim-overlay.url = "github:nix-community/neovim-nightly-overlay";
|
|
|
|
|
2024-02-26 07:33:11 +00:00
|
|
|
home-manager = {
|
|
|
|
url = "github:nix-community/home-manager";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2024-02-29 04:37:01 +00:00
|
|
|
|
|
|
|
fish_theme = {
|
|
|
|
url = "git+https://git.zynh.me/Zynh0722/omf-theme";
|
|
|
|
flake = false;
|
|
|
|
};
|
2024-02-26 07:33:11 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
outputs = { self, nixpkgs, ... }@inputs:
|
|
|
|
{
|
2024-06-28 14:11:38 +00:00
|
|
|
nixosConfigurations =
|
|
|
|
let
|
|
|
|
cleanHostname = config: builtins.removeAttrs config [ "hostname" ];
|
|
|
|
toNixosConfigPart = config: { name = config.hostname; value = nixpkgs.lib.nixosSystem (cleanHostname config); };
|
|
|
|
in
|
|
|
|
builtins.listToAttrs
|
|
|
|
(map toNixosConfigPart
|
|
|
|
(map
|
|
|
|
({ hostname, system }: {
|
|
|
|
inherit system hostname;
|
|
|
|
specialArgs = { inherit inputs; };
|
|
|
|
modules = [
|
|
|
|
./hosts/${hostname}/hardware-configuration.nix
|
|
|
|
./hosts/${hostname}/configuration.nix
|
|
|
|
inputs.home-manager.nixosModules.default
|
|
|
|
];
|
|
|
|
})
|
|
|
|
[
|
|
|
|
{ hostname = "snowhawk"; system = "x86_64-linux"; }
|
|
|
|
{ hostname = "sprite"; system = "aarch64-linux"; }
|
|
|
|
{ hostname = "nixos"; system = "x86_64-linux"; }
|
|
|
|
]));
|
2024-02-26 07:33:11 +00:00
|
|
|
};
|
|
|
|
}
|