Compare commits
9 Commits
f07d4a4060
...
cc834fd85d
| Author | SHA1 | Date | |
|---|---|---|---|
| cc834fd85d | |||
| e4e6db94aa | |||
| c3883abef9 | |||
| 7097253186 | |||
| a08a4ac461 | |||
| ceb211ae51 | |||
| 2a5613bdee | |||
| 112782fa91 | |||
| f34031285b |
@@ -25,7 +25,7 @@ creation_rules:
|
|||||||
- *laptop
|
- *laptop
|
||||||
- *homebox
|
- *homebox
|
||||||
- *android
|
- *android
|
||||||
- path_regex: system-config/secrets.yaml$
|
- path_regex: system/secrets.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- age:
|
- age:
|
||||||
- *laptop
|
- *laptop
|
||||||
|
|||||||
4
flake.lock
generated
4
flake.lock
generated
@@ -721,11 +721,11 @@
|
|||||||
"rev": "bcc5185ef433a77b18f5aa585ee79d97f9a8e69c",
|
"rev": "bcc5185ef433a77b18f5aa585ee79d97f9a8e69c",
|
||||||
"revCount": 36,
|
"revCount": 36,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "ssh://gitea@gitea.esotericbytes.com/Blunkall-Technologies/Moirai"
|
"url": "https://gitea.esotericbytes.com/Blunkall-Technologies/Moirai"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "ssh://gitea@gitea.esotericbytes.com/Blunkall-Technologies/Moirai"
|
"url": "https://gitea.esotericbytes.com/Blunkall-Technologies/Moirai"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixvim_2": {
|
"nixvim_2": {
|
||||||
|
|||||||
12
flake.nix
12
flake.nix
@@ -34,7 +34,7 @@
|
|||||||
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
|
||||||
|
|
||||||
#nixvim.url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Moirai";
|
#nixvim.url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Moirai";
|
||||||
nixvim.url = "git+ssh://gitea@gitea.esotericbytes.com/Blunkall-Technologies/Moirai";
|
nixvim.url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Moirai";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, home-manager, ... } @ inputs: {
|
outputs = { self, nixpkgs, home-manager, ... } @ inputs: {
|
||||||
@@ -47,10 +47,10 @@
|
|||||||
(name: ({
|
(name: ({
|
||||||
inherit name;
|
inherit name;
|
||||||
|
|
||||||
value = { ... }: {
|
value = { ... } @ exputs: {
|
||||||
imports = [
|
imports = [
|
||||||
./system
|
(import ./system (inputs // exputs))
|
||||||
./system/profiles/${name}
|
(import ./system/profiles/${name} (inputs // exputs))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
})) filtered)
|
})) filtered)
|
||||||
@@ -64,9 +64,9 @@
|
|||||||
(name: ({
|
(name: ({
|
||||||
inherit name;
|
inherit name;
|
||||||
|
|
||||||
value = { ... }: {
|
value = { ... } @ exputs: {
|
||||||
imports = [
|
imports = [
|
||||||
./system/users/${name}/home-manager
|
(./system/users/${name}/home-manager (inputs // exputs))
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
})) filtered)
|
})) filtered)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
olympus = {
|
olympus = {
|
||||||
url = "git+ssh://gitea@esotericbytes.com/Blunkall-Technologies/Olympus";
|
url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Olympus";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
olympus = {
|
olympus = {
|
||||||
url = "git+ssh://gitea@esotericbytes.com/Blunkall-Technologies/Olympus";
|
url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Olympus";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,33 +1,7 @@
|
|||||||
keys:
|
keys:
|
||||||
- &homebox age1640eg0pnmkruc89m5xguz0m8fek44fl4tzez6qwuzlz6kmapqewsp8esxd
|
|
||||||
- &laptop age1yqgyp2uxz4lzrc9f9ka0mfjl5fr6ahf8nf24nlmran2wulg6fpvq9hyp9q
|
- &laptop age1yqgyp2uxz4lzrc9f9ka0mfjl5fr6ahf8nf24nlmran2wulg6fpvq9hyp9q
|
||||||
- &android age12pnf36uqesjmy3e0lythfnpwam3zg5mv8m936fc4jphy4ces2fdqwn0s74
|
|
||||||
creation_rules:
|
creation_rules:
|
||||||
- path_regex: homebox/secrets.yaml$
|
- path_regex: ^secrets.yaml$
|
||||||
key_groups:
|
|
||||||
- age:
|
|
||||||
- *homebox
|
|
||||||
- path_regex: laptop/secrets.yaml$
|
|
||||||
key_groups:
|
key_groups:
|
||||||
- age:
|
- age:
|
||||||
- *laptop
|
- *laptop
|
||||||
- path_regex: pi4/secrets.yaml$
|
|
||||||
key_groups:
|
|
||||||
- age:
|
|
||||||
- *laptop
|
|
||||||
- path_regex: live/secrets.yaml$
|
|
||||||
key_groups:
|
|
||||||
- age:
|
|
||||||
- *laptop
|
|
||||||
- path_regex: nathan/secrets.yaml$
|
|
||||||
key_groups:
|
|
||||||
- age:
|
|
||||||
- *laptop
|
|
||||||
- *homebox
|
|
||||||
- *android
|
|
||||||
- path_regex: system-config/secrets.yaml$
|
|
||||||
key_groups:
|
|
||||||
- age:
|
|
||||||
- *laptop
|
|
||||||
- *homebox
|
|
||||||
- *android
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
olympus = {
|
olympus = {
|
||||||
url = "git+ssh://gitea@esotericbytes.com/Blunkall-Technologies/Olympus";
|
url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Olympus";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, inputs, modulesPath, ... }: {
|
{ config, lib, nixpkgs, ... }: {
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./services
|
./services
|
||||||
@@ -28,41 +28,10 @@
|
|||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
|
||||||
sops.secrets = (if config.sysconfig.remoteBuildHost then (
|
|
||||||
builtins.listToAttrs
|
|
||||||
(builtins.map
|
|
||||||
(y: {
|
|
||||||
name = "remoteBuildClientKeys/${y}";
|
|
||||||
value = {
|
|
||||||
format = "yaml";
|
|
||||||
sopsFile = ./secrets.yaml;
|
|
||||||
};
|
|
||||||
})
|
|
||||||
(builtins.partition
|
|
||||||
(z: let
|
|
||||||
cfg = if
|
|
||||||
((builtins.readDir ./configuration).${z} == "directory")
|
|
||||||
then (import ./configuration/${z} {
|
|
||||||
config = {};
|
|
||||||
inherit lib pkgs inputs modulesPath;
|
|
||||||
}).config
|
|
||||||
else null;
|
|
||||||
test = if cfg == null then false
|
|
||||||
else if !(cfg ? sysconfig) then false
|
|
||||||
else if !(cfg.sysconfig ? remoteBuildClient) then false
|
|
||||||
else cfg.sysconfig.remoteBuildClient;
|
|
||||||
in test)
|
|
||||||
(builtins.attrNames (builtins.readDir ./configuration))
|
|
||||||
).right
|
|
||||||
)
|
|
||||||
) else {}) // {
|
|
||||||
"remoteBuildKey" = lib.mkIf config.sysconfig.remoteBuildClient {};
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.hostName = lib.mkDefault config.sysconfig.host;
|
networking.hostName = lib.mkDefault config.sysconfig.host;
|
||||||
|
|
||||||
nix = {
|
nix = {
|
||||||
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
|
nixPath = [ "nixpkgs=${nixpkgs}" ];
|
||||||
channel.enable = false;
|
channel.enable = false;
|
||||||
settings = {
|
settings = {
|
||||||
experimental-features = [ "nix-command" "flakes" ];
|
experimental-features = [ "nix-command" "flakes" ];
|
||||||
@@ -73,7 +42,7 @@
|
|||||||
distributedBuilds = config.sysconfig.remoteBuildClient;
|
distributedBuilds = config.sysconfig.remoteBuildClient;
|
||||||
buildMachines = lib.mkIf config.sysconfig.remoteBuildClient [
|
buildMachines = lib.mkIf config.sysconfig.remoteBuildClient [
|
||||||
{
|
{
|
||||||
hostName = "blunkall.us";
|
hostName = "esotericbytes.com";
|
||||||
sshUser = "remote-builder";
|
sshUser = "remote-builder";
|
||||||
sshKey = config.sops.secrets."remoteBuildKey".path;
|
sshKey = config.sops.secrets."remoteBuildKey".path;
|
||||||
supportedFeatures = [
|
supportedFeatures = [
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
{ config, pkgs, lib, inputs, ... }:
|
{ config, pkgs, lib, home-manager, sops-nix, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
inputs.home-manager.nixosModules.default
|
home-manager.nixosModules.default
|
||||||
|
|
||||||
inputs.sops-nix.nixosModules.sops
|
sops-nix.nixosModules.sops
|
||||||
];
|
];
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, inputs, ... }: {
|
{ config, lib, sops-nix, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.authentik.enable = lib.options.mkOption {
|
options.sysconfig.virtualization.authentik.enable = lib.options.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
inputs.sops-nix.nixosModules.sops
|
sops-nix.nixosModules.sops
|
||||||
];
|
];
|
||||||
|
|
||||||
config = lib.mkIf config.sysconfig.virtualization.authentik.enable {
|
config = lib.mkIf config.sysconfig.virtualization.authentik.enable {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, ... }: {
|
{ config, lib, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.gitea.enable = lib.options.mkOption {
|
options.sysconfig.virtualization.gitea.enable = lib.options.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, ... }: {
|
{ config, lib, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.gitlab.enable = lib.options.mkOption {
|
options.sysconfig.virtualization.gitlab.enable = lib.options.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, inputs, ... }: {
|
{ config, lib, sops-nix, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.keycloak.enable = lib.options.mkOption {
|
options.sysconfig.virtualization.keycloak.enable = lib.options.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
inputs.sops-nix.nixosModules.sops
|
sops-nix.nixosModules.sops
|
||||||
];
|
];
|
||||||
|
|
||||||
config = lib.mkIf config.sysconfig.virtualization.keycloak.enable {
|
config = lib.mkIf config.sysconfig.virtualization.keycloak.enable {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, inputs, ... }: {
|
{ config, lib, pkgs, nix-minecraft, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.minecraft.enable = lib.options.mkOption {
|
options.sysconfig.virtualization.minecraft.enable = lib.options.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
nat.internalInterfaces = [ "ve-minecraft" ];
|
nat.internalInterfaces = [ "ve-minecraft" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.overlays = [ inputs.nix-minecraft.overlay ];
|
nixpkgs.overlays = [ nix-minecraft.overlay ];
|
||||||
|
|
||||||
containers.minecraft = {
|
containers.minecraft = {
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, inputs, ... }: {
|
{ config, lib, nixpkgs-us, ... }: {
|
||||||
|
|
||||||
options.sysconfig = {
|
options.sysconfig = {
|
||||||
|
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = let
|
config = let
|
||||||
pkgs-com = import inputs.nixpkgs-us {
|
pkgs-com = import nixpkgs-us {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, inputs, ... }: {
|
{ config, lib, nixpkgs-us, ... }: {
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
sysconfig.virtualization.ollama.enable = lib.options.mkOption {
|
sysconfig.virtualization.ollama.enable = lib.options.mkOption {
|
||||||
@@ -68,7 +68,7 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
acceleration = "cuda";
|
acceleration = "cuda";
|
||||||
package = let
|
package = let
|
||||||
pkgs-us = import inputs.nixpkgs-us {
|
pkgs-us = import nixpkgs-us {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, pkgs, inputs, ... }: {
|
{ config, lib, nixpkgs-us, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.pihole.enable = lib.options.mkOption {
|
options.sysconfig.virtualization.pihole.enable = lib.options.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
@@ -34,12 +34,12 @@
|
|||||||
timeoutStartSec = "infinity";
|
timeoutStartSec = "infinity";
|
||||||
|
|
||||||
config = let
|
config = let
|
||||||
pkgs-us = import inputs.nixpkgs-us { system = "x86_64-linux"; };
|
pkgs-us = import nixpkgs-us { system = "x86_64-linux"; };
|
||||||
in {
|
in {
|
||||||
|
|
||||||
/*imports = [
|
/*imports = [
|
||||||
(import "${inputs.nixpkgs-us}/nixos/modules/services/networking/pihole-ftl.nix" { config = config.containers.pihole.config; inherit lib; pkgs = pkgs-us;})
|
(import "${nixpkgs-us}/nixos/modules/services/networking/pihole-ftl.nix" { config = config.containers.pihole.config; inherit lib; pkgs = pkgs-us;})
|
||||||
(import "${inputs.nixpkgs-us}/nixos/modules/services/web-apps/pihole-web.nix" { config = config.containers.pihole.config; inherit lib; pkgs = pkgs-us;})
|
(import "${nixpkgs-us}/nixos/modules/services/web-apps/pihole-web.nix" { config = config.containers.pihole.config; inherit lib; pkgs = pkgs-us;})
|
||||||
];*/
|
];*/
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, lib, inputs, ... }: {
|
{ config, lib, nixpkgs-us, self, ... }: {
|
||||||
|
|
||||||
options.sysconfig.virtualization.sandbox.enable = lib.mkOption {
|
options.sysconfig.virtualization.sandbox.enable = lib.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
@@ -10,9 +10,9 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
(import "${inputs.nixpkgs-us}/nixos/modules/virtualisation/nixos-containers.nix" {
|
(import "${nixpkgs-us}/nixos/modules/virtualisation/nixos-containers.nix" {
|
||||||
inherit config lib;
|
inherit config lib;
|
||||||
pkgs = (import inputs.nixpkgs-us {
|
pkgs = (import nixpkgs-us {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
@@ -35,7 +35,7 @@
|
|||||||
|
|
||||||
timeoutStartSec = "3min";
|
timeoutStartSec = "3min";
|
||||||
|
|
||||||
flake = "${inputs.self}";
|
flake = "${self}";
|
||||||
|
|
||||||
bindMounts = {
|
bindMounts = {
|
||||||
"/dev/nvidia0" = {
|
"/dev/nvidia0" = {
|
||||||
|
|||||||
@@ -32,9 +32,9 @@
|
|||||||
defaultBranch = "master";
|
defaultBranch = "master";
|
||||||
};
|
};
|
||||||
url = {
|
url = {
|
||||||
"ssh://gitea@gitea.blunkall.us/" = {
|
"ssh://gitea@esotericbytes.com/" = {
|
||||||
insteadOf = [
|
insteadOf = [
|
||||||
"blunkall:"
|
"server:"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
olympus = {
|
olympus = {
|
||||||
url = "git+ssh://gitea@esotericbytes.com/Blunkall-Technologies/Olympus";
|
url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Olympus";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
olympus = {
|
olympus = {
|
||||||
url = "git+ssh://gitea@esotericbytes.com/Blunkall-Technologies/Olympus";
|
url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Olympus";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
olympus = {
|
olympus = {
|
||||||
url = "git+ssh://gitea@esotericbytes.com/Blunkall-Technologies/Olympus";
|
url = "git+https://gitea.esotericbytes.com/Blunkall-Technologies/Olympus";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user