nixos/flake.nix

64 lines
1.6 KiB
Nix
Raw Normal View History

2021-07-13 09:53:22 +01:00
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-21.11";
2021-07-13 09:53:22 +01:00
nixos-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:rycee/home-manager/release-21.11";
2021-07-13 09:53:22 +01:00
inputs.nixpkgs.follows = "nixpkgs";
2021-11-25 11:42:32 +00:00
};
navidrome.url = "github:antifuchs/nixpkgs/fix-151550";
2021-07-13 09:53:22 +01:00
};
2021-10-13 13:29:07 +01:00
outputs = inputs@{ self, nixpkgs, nixos-unstable, home-manager, navidrome}:
2021-11-25 11:42:32 +00:00
let
system = "x86_64-linux";
2021-10-13 13:29:07 +01:00
2021-11-25 11:42:32 +00:00
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
overlays = [ (final: prev: { inherit unstable; }) ];
};
2021-10-13 13:29:07 +01:00
2021-11-25 11:42:32 +00:00
unstable = import nixos-unstable {
inherit system;
config.allowUnfree = true;
};
2021-10-13 13:29:07 +01:00
2021-11-25 11:42:32 +00:00
utils = import ./lib {
inherit pkgs unstable nixpkgs nixos-unstable home-manager;
};
inherit (utils) host;
inherit (utils) user;
in {
nixosConfigurations = {
architect = host.mkHost {
name = "architect";
2021-11-25 11:47:13 +00:00
users = [{
user = "giulio";
roles = [ ];
}];
imports = [
{
disabledModules = [ "services/audio/navidrome.nix" ];
imports =
[ (navidrome + "/nixos/modules/services/audio/navidrome.nix") ];
}
];
2021-11-25 11:42:32 +00:00
};
gAluminum = host.mkHost {
name = "gAluminum";
users = [{
user = "giulio";
roles = [ "desktop" "ssh" "git" ];
}];
roles = [ "gnome" ];
};
proxy = host.mkHost {
name = "proxy";
users = [ ];
};
};
2021-08-23 12:25:36 +01:00
};
2021-07-13 09:53:22 +01:00
}