nix/flake.nix

88 lines
2 KiB
Nix
Raw Normal View History

2024-06-05 20:52:52 +02:00
{
2024-11-08 18:23:40 +01:00
outputs = inputs @ {
2024-09-28 12:06:19 +02:00
self,
nixpkgs,
nix-on-droid,
ags,
stylix,
home-manager,
2024-10-12 21:12:58 +02:00
sops-nix,
2024-09-28 12:06:19 +02:00
...
2024-11-08 18:23:40 +01:00
}: let
username = "joy";
domain = "joygnu.org";
mail = "contact@joygnu.org";
2024-11-09 16:24:20 +01:00
nixpath = "nix/";
2024-11-11 18:49:02 +01:00
nixosconf = {modules}:
2024-08-21 09:02:49 +02:00
nixpkgs.lib.nixosSystem {
2024-11-08 18:23:40 +01:00
specialArgs = {
inherit inputs;
inherit username;
inherit domain;
inherit mail;
2024-11-09 16:24:20 +01:00
inherit nixpath;
2024-11-08 18:23:40 +01:00
};
2024-10-12 21:12:58 +02:00
modules = modules ++ [home-manager.nixosModules.default sops-nix.nixosModules.sops];
2024-08-21 09:02:49 +02:00
};
2024-08-04 00:37:19 +02:00
in {
2024-09-22 13:42:52 +02:00
nixOnDroidConfigurations.default = nix-on-droid.lib.nixOnDroidConfiguration {
2024-09-28 12:06:19 +02:00
pkgs = import nixpkgs {system = "aarch64-linux";};
modules = [./hosts/phone];
2024-11-13 08:13:48 +01:00
extraSpecialArgs = {
inherit inputs;
inherit username;
inherit domain;
inherit mail;
inherit nixpath;
};
2024-09-22 13:42:52 +02:00
};
2024-08-04 00:37:19 +02:00
nixosConfigurations = {
2024-11-11 18:49:02 +01:00
desktop = nixosconf {
2024-09-28 12:06:19 +02:00
modules = [./hosts/desktop];
2024-08-04 00:37:19 +02:00
};
2024-11-11 18:49:02 +01:00
laptop = nixosconf {
2024-09-28 12:06:19 +02:00
modules = [./hosts/laptop];
2024-08-04 00:37:19 +02:00
};
2024-11-11 18:49:02 +01:00
server = nixosconf {
2024-10-08 22:43:41 +02:00
modules = [./hosts/server];
};
2024-11-11 18:49:02 +01:00
iso = nixosconf {
2024-10-14 17:51:45 +02:00
modules = [./hosts/iso];
};
2024-06-05 20:52:52 +02:00
};
};
2024-11-13 08:13:48 +01:00
2024-10-04 15:19:23 +02:00
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
firefox-addons = {
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
2024-10-18 18:09:30 +02:00
url = "github:nix-community/home-manager";
2024-10-04 15:19:23 +02:00
inputs.nixpkgs.follows = "nixpkgs";
};
nix-on-droid = {
url = "github:nix-community/nix-on-droid/master";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-10-08 14:10:40 +02:00
stylix = {
url = "github:danth/stylix";
inputs.nixpkgs.follows = "nixpkgs";
};
ags = {
url = "github:Aylur/ags";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-10-12 21:12:58 +02:00
sops = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
2024-10-04 15:19:23 +02:00
};
2024-06-05 20:52:52 +02:00
}