195 lines
4.6 KiB
Nix
195 lines
4.6 KiB
Nix
{ lib, ... }:
|
|
let
|
|
userSpecs = {
|
|
kiri = {
|
|
realName = "Jelle Spreeuwenberg";
|
|
homeDirectory = "/home/kiri";
|
|
emails = {
|
|
personal = {
|
|
address = "mail@jelles.net";
|
|
primary = true;
|
|
scope = "personal";
|
|
type = "mxrouting";
|
|
};
|
|
old = {
|
|
address = "mail@jellespreeuwenberg.nl";
|
|
scope = null;
|
|
type = "mxrouting";
|
|
};
|
|
uni = {
|
|
address = "j.spreeuwenberg@student.tue.nl";
|
|
scope = null;
|
|
type = "office365";
|
|
};
|
|
work = {
|
|
address = "jelle.spreeuwenberg@yookr.org";
|
|
scope = "work";
|
|
type = "office365";
|
|
};
|
|
};
|
|
sourceControl = { };
|
|
};
|
|
|
|
ergon = {
|
|
realName = "Jelle Spreeuwenberg";
|
|
homeDirectory = "/home/ergon";
|
|
emails = {
|
|
personal = {
|
|
address = "mail@jelles.net";
|
|
scope = "personal";
|
|
type = "mxrouting";
|
|
};
|
|
work = {
|
|
address = "jelle.spreeuwenberg@yookr.org";
|
|
primary = true;
|
|
scope = "work";
|
|
type = "office365";
|
|
};
|
|
};
|
|
sourceControl.projectScope = "work";
|
|
};
|
|
};
|
|
|
|
accounts = lib.mapAttrs (name: spec: spec // { inherit name; }) userSpecs;
|
|
|
|
repo = {
|
|
contact.email = "mail@jelles.net";
|
|
|
|
desktop = {
|
|
browser = {
|
|
command = "vivaldi";
|
|
packagePath = [ "vivaldi" ];
|
|
};
|
|
|
|
fileManager = {
|
|
command = "nautilus";
|
|
packagePath = [ "nautilus" ];
|
|
};
|
|
|
|
terminal = {
|
|
command = "kitty";
|
|
desktopId = "kitty.desktop";
|
|
packagePath = [ "kitty" ];
|
|
};
|
|
};
|
|
|
|
services = {
|
|
actual = {
|
|
domain = "finance.jelles.net";
|
|
host = "127.0.0.1";
|
|
port = 3000;
|
|
url = "https://finance.jelles.net";
|
|
};
|
|
|
|
gitea = {
|
|
domain = "git.jelles.net";
|
|
host = "127.0.0.1";
|
|
port = 3001;
|
|
url = "https://git.jelles.net/";
|
|
};
|
|
|
|
radicale = {
|
|
domain = "radicale.jelles.net";
|
|
host = "127.0.0.1";
|
|
port = 5232;
|
|
url = "https://radicale.jelles.net/";
|
|
};
|
|
|
|
vaultwarden = {
|
|
domain = "vault.jelles.net";
|
|
host = "127.0.0.1";
|
|
port = 8100;
|
|
url = "https://vault.jelles.net";
|
|
};
|
|
};
|
|
|
|
theme = {
|
|
cursor = {
|
|
name = "phinger-cursors-light";
|
|
packagePath = [ "phinger-cursors" ];
|
|
size = 24;
|
|
};
|
|
|
|
kanagawa = {
|
|
displayName = "Kanagawa Wave";
|
|
name = "kanagawa-wave";
|
|
gtkThemeName = "Kanagawa-BL-LB";
|
|
iconThemeName = "Kanagawa";
|
|
owner = "Fausto-Korpsvart";
|
|
repo = "Kanagawa-GKT-Theme";
|
|
rev = "55ca4ba249eba21f861b9866b71ab41bb8930318";
|
|
hash = "sha256-UdMoMx2DoovcxSp/zBZ3PRv/Qpj+prd0uPm1gmdak2E=";
|
|
version = "unstable-2025-10-23";
|
|
|
|
palette = {
|
|
background = "#1F1F28";
|
|
foreground = "#DCD7BA";
|
|
secondaryBackground = "#16161D";
|
|
border = "#2A2A37";
|
|
selectionBackground = "#2D4F67";
|
|
selectionForeground = "#C8C093";
|
|
url = "#72A7BC";
|
|
cursor = "#C8C093";
|
|
muted = "#727169";
|
|
|
|
accents = {
|
|
blue = "#7E9CD8";
|
|
green = "#98BB6C";
|
|
magenta = "#D27E99";
|
|
orange = "#FFA066";
|
|
purple = "#957FB8";
|
|
red = "#E82424";
|
|
yellow = "#E6C384";
|
|
cyan = "#7AA89F";
|
|
};
|
|
|
|
niri.border = {
|
|
active = "#7E9CD8";
|
|
inactive = "#54546D";
|
|
urgent = "#E82424";
|
|
};
|
|
|
|
terminal = {
|
|
color0 = "#16161D";
|
|
color1 = "#C34043";
|
|
color2 = "#76946A";
|
|
color3 = "#C0A36E";
|
|
color4 = "#7E9CD8";
|
|
color5 = "#957FB8";
|
|
color6 = "#6A9589";
|
|
color7 = "#C8C093";
|
|
color8 = "#727169";
|
|
color9 = "#E82424";
|
|
color10 = "#98BB6C";
|
|
color11 = "#E6C384";
|
|
color12 = "#7FB4CA";
|
|
color13 = "#938AA9";
|
|
color14 = "#7AA89F";
|
|
color15 = "#DCD7BA";
|
|
color16 = "#FFA066";
|
|
color17 = "#FF5D62";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
in
|
|
{
|
|
options.meta.lib.repo = lib.mkOption {
|
|
type = lib.types.attrs;
|
|
description = "Internal shared repository metadata.";
|
|
internal = true;
|
|
readOnly = true;
|
|
};
|
|
|
|
options.meta.lib.accounts = lib.mkOption {
|
|
type = lib.types.attrs;
|
|
description = "Canonical account attrsets shared by host definitions.";
|
|
internal = true;
|
|
readOnly = true;
|
|
};
|
|
|
|
config.meta.lib.repo = repo;
|
|
config.meta.lib.accounts = accounts;
|
|
}
|