fix containers and mullvad

This commit is contained in:
atagen 2024-08-15 12:19:55 +10:00
parent f623faa0ef
commit c8ee397794
20 changed files with 370 additions and 115 deletions

103
flake.nix
View file

@ -7,10 +7,11 @@
nur.url = "github:/nix-community/NUR";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
# rust-overlay = {
# url = "github:oxalica/rust-overlay";
# inputs.nixpkgs.follows = "nixpkgs";
# };
rust-overlay.follows = "nixos-cosmic/rust-overlay";
helix.url = "github:helix-editor/helix";
@ -28,11 +29,20 @@
flatpaks.url = "github:gmodena/nix-flatpak";
nixos-cosmic = {
url = "github:lilyinstarlight/nixos-cosmic";
};
nixos-cosmic.url = "github:lilyinstarlight/nixos-cosmic";
madness.url = "github:antithesishq/madness";
lix = {
url = "https://git.lix.systems/lix-project/lix/archive/main.tar.gz";
flake = false;
};
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
inputs.lix.follows = "lix";
};
};
outputs = {
@ -44,62 +54,57 @@
flatpaks,
nix-index-database,
madness,
lix,
lix-module,
...
} @ inputs: let
inherit (self) outputs;
inherit (nixpkgs) lib;
inherit (lib) mapAttrs;
sharedModules = [
lix-module.nixosModules.default
madness.nixosModules.madness
nur.nixosModules.nur
nix-index-database.nixosModules.nix-index
nixos-cosmic.nixosModules.default
./system/cachix.nix
];
system = "x86_64-linux";
createSystems = definitions:
mapAttrs (name: info:
nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit inputs outputs;};
modules =
[
./system/${name}.nix
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
extraSpecialArgs = {inherit inputs outputs;};
users.${info.user}.imports =
[
flatpaks.homeManagerModules.nix-flatpak
./home/${info.user}.nix
]
++ info.hmImports or [];
};
}
]
++ info.imports or []
++ sharedModules;
})
definitions;
in {
overlays = import ./util/overlay.nix {inherit inputs;};
nixosConfigurations = {
"quiver" = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit inputs outputs;};
modules =
[
./system/quiver.nix
nixos-cosmic.nixosModules.default
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
extraSpecialArgs = {inherit inputs outputs;};
users.bolt.imports = [
flatpaks.homeManagerModules.nix-flatpak
./home/bolt.nix
];
};
}
]
++ sharedModules;
nixosConfigurations = createSystems {
quiver = {
user = "bolt";
};
"adrift" = nixpkgs.lib.nixosSystem {
inherit system;
specialArgs = {inherit inputs outputs;};
modules =
[
./system/adrift.nix
nixos-cosmic.nixosModules.default
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
extraSpecialArgs = {inherit inputs outputs;};
users.plank.imports = [
flatpaks.homeManagerModules.nix-flatpak
./home/plank.nix
];
};
}
]
++ sharedModules;
adrift = {
user = "plank";
};
};
};