This commit is contained in:
2026-03-23 07:17:32 +00:00
parent 9598d68a84
commit 0a79986914
26 changed files with 134 additions and 114 deletions

View File

@@ -5,21 +5,21 @@
}: {
sops.secrets = {
michael-gitea-litestream = {
sopsFile = ../../../secrets/michael-gitea-litestream;
sopsFile = ../../../../secrets/michael-gitea-litestream;
format = "binary";
owner = "gitea";
group = "gitea";
path = "/run/secrets/michael-gitea-litestream";
};
michael-gitea-restic-password = {
sopsFile = ../../../secrets/michael-gitea-restic-password;
sopsFile = ../../../../secrets/michael-gitea-restic-password;
format = "binary";
owner = "gitea";
group = "gitea";
path = "/run/secrets/michael-gitea-restic-password";
};
michael-gitea-restic-env = {
sopsFile = ../../../secrets/michael-gitea-restic-env;
sopsFile = ../../../../secrets/michael-gitea-restic-env;
format = "binary";
owner = "gitea";
group = "gitea";

View File

@@ -2,34 +2,16 @@
den.hosts.aarch64-darwin.chidi.users.cschmatzler.aspect = "chidi-cschmatzler";
den.aspects.chidi-cschmatzler = {
includes = [
den.aspects.shell
den.aspects.ssh-client
den.aspects.terminal
den.aspects.atuin
den.aspects.dev-tools
den.aspects.neovim
den.aspects.ai-tools
den.aspects.secrets
den.aspects.zellij
den.aspects.zk
den.aspects.desktop
];
includes = [den.aspects.user-darwin-laptop];
homeManager = {...}: {
programs.home-manager.enable = true;
fonts.fontconfig.enable = true;
programs.git.settings.user.email = "christoph@tuist.dev";
};
};
den.aspects.chidi.includes = [
(den.lib.perHost {
includes = [
den.aspects.darwin-system
den.aspects.core
den.aspects.tailscale
];
includes = [den.aspects.host-darwin-base];
darwin = {pkgs, ...}: {
networking.hostName = "chidi";

21
modules/hosts/jason.nix Normal file
View File

@@ -0,0 +1,21 @@
{den, ...}: {
den.hosts.aarch64-darwin.jason.users.cschmatzler.aspect = "jason-cschmatzler";
den.aspects.jason-cschmatzler = {
includes = [
den.aspects.user-darwin-laptop
den.aspects.user-personal
];
};
den.aspects.jason.includes = [
(den.lib.perHost {
includes = [den.aspects.host-darwin-base];
darwin = {...}: {
networking.hostName = "jason";
networking.computerName = "jason";
};
})
];
}

View File

@@ -6,30 +6,20 @@
den.hosts.x86_64-linux.michael.users.cschmatzler.aspect = "michael-cschmatzler";
den.aspects.michael-cschmatzler = {
includes = [den.aspects.shell];
homeManager = {...}: {
programs.home-manager.enable = true;
};
includes = [den.aspects.user-minimal];
};
den.aspects.michael.includes = [
(den.lib.perHost {
includes = [
den.aspects.nixos-system
den.aspects.core
den.aspects.openssh
den.aspects.fail2ban
den.aspects.tailscale
];
includes = [den.aspects.host-public-server];
nixos = {modulesPath, ...}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
./_hosts/michael/backups.nix
./_hosts/michael/disk-config.nix
./_hosts/michael/gitea.nix
./_hosts/michael/hardware-configuration.nix
./_parts/michael/backups.nix
./_parts/michael/disk-config.nix
./_parts/michael/gitea.nix
./_parts/michael/hardware-configuration.nix
inputs.disko.nixosModules.default
];

View File

@@ -3,23 +3,12 @@
den.aspects.tahani-cschmatzler = {
includes = [
den.aspects.shell
den.aspects.ssh-client
den.aspects.terminal
den.aspects.atuin
den.aspects.dev-tools
den.aspects.neovim
den.aspects.ai-tools
den.aspects.secrets
den.aspects.zellij
den.aspects.zk
den.aspects.user-workstation
den.aspects.user-personal
den.aspects.email
];
homeManager = {
programs.home-manager.enable = true;
programs.git.settings.user.email = "christoph@schmatzler.com";
programs.nushell.extraConfig = ''
if $nu.is-interactive and ('SSH_CONNECTION' in ($env | columns)) and ('ZELLIJ' not-in ($env | columns)) {
try {
@@ -35,36 +24,31 @@
den.aspects.tahani.includes = [
(den.lib.perHost {
includes = [
den.aspects.nixos-system
den.aspects.core
den.aspects.openssh
den.aspects.tailscale
];
includes = [den.aspects.host-nixos-base];
nixos = {...}: {
imports = [
./_hosts/tahani/adguardhome.nix
./_hosts/tahani/cache.nix
./_hosts/tahani/networking.nix
./_hosts/tahani/paperless.nix
./_parts/tahani/adguardhome.nix
./_parts/tahani/cache.nix
./_parts/tahani/networking.nix
./_parts/tahani/paperless.nix
];
networking.hostName = "tahani";
sops.secrets = {
tahani-paperless-password = {
sopsFile = ../secrets/tahani-paperless-password;
sopsFile = ../../secrets/tahani-paperless-password;
format = "binary";
path = "/run/secrets/tahani-paperless-password";
};
tahani-paperless-gpt-env = {
sopsFile = ../secrets/tahani-paperless-gpt-env;
sopsFile = ../../secrets/tahani-paperless-gpt-env;
format = "binary";
path = "/run/secrets/tahani-paperless-gpt-env";
};
tahani-email-password = {
sopsFile = ../secrets/tahani-email-password;
sopsFile = ../../secrets/tahani-email-password;
format = "binary";
owner = "cschmatzler";
path = "/run/secrets/tahani-email-password";

View File

@@ -1,40 +0,0 @@
{den, ...}: {
den.hosts.aarch64-darwin.jason.users.cschmatzler.aspect = "jason-cschmatzler";
den.aspects.jason-cschmatzler = {
includes = [
den.aspects.shell
den.aspects.ssh-client
den.aspects.terminal
den.aspects.atuin
den.aspects.dev-tools
den.aspects.neovim
den.aspects.ai-tools
den.aspects.secrets
den.aspects.zellij
den.aspects.zk
den.aspects.desktop
];
homeManager = {...}: {
programs.home-manager.enable = true;
fonts.fontconfig.enable = true;
programs.git.settings.user.email = "christoph@schmatzler.com";
};
};
den.aspects.jason.includes = [
(den.lib.perHost {
includes = [
den.aspects.darwin-system
den.aspects.core
den.aspects.tailscale
];
darwin = {...}: {
networking.hostName = "jason";
networking.computerName = "jason";
};
})
];
}

View File

@@ -0,0 +1,7 @@
{den, ...}: {
den.aspects.host-darwin-base.includes = [
den.aspects.darwin-system
den.aspects.core
den.aspects.tailscale
];
}

View File

@@ -0,0 +1,8 @@
{den, ...}: {
den.aspects.host-nixos-base.includes = [
den.aspects.nixos-system
den.aspects.core
den.aspects.openssh
den.aspects.tailscale
];
}

View File

@@ -0,0 +1,6 @@
{den, ...}: {
den.aspects.host-public-server.includes = [
den.aspects.host-nixos-base
den.aspects.fail2ban
];
}

View File

@@ -0,0 +1,17 @@
{den, ...}: {
den.aspects.user-base = {
includes = [
den.aspects.shell
den.aspects.ssh-client
den.aspects.terminal
den.aspects.atuin
den.aspects.secrets
den.aspects.zellij
den.aspects.zk
];
homeManager = {
programs.home-manager.enable = true;
};
};
}

View File

@@ -0,0 +1,12 @@
{den, ...}: {
den.aspects.user-darwin-laptop = {
includes = [
den.aspects.user-workstation
den.aspects.desktop
];
homeManager = {
fonts.fontconfig.enable = true;
};
};
}

View File

@@ -0,0 +1,11 @@
{den, ...}: {
den.aspects.user-minimal = {
includes = [
den.aspects.shell
];
homeManager = {
programs.home-manager.enable = true;
};
};
}

View File

@@ -0,0 +1,5 @@
{...}: {
den.aspects.user-personal.homeManager = {
programs.git.settings.user.email = "christoph@schmatzler.com";
};
}

View File

@@ -0,0 +1,8 @@
{den, ...}: {
den.aspects.user-workstation.includes = [
den.aspects.user-base
den.aspects.dev-tools
den.aspects.neovim
den.aspects.ai-tools
];
}