mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-05-15 16:09:47 +02:00
Compare commits
5 commits
dc92ba46c9
...
124d6b7ede
Author | SHA1 | Date | |
---|---|---|---|
124d6b7ede | |||
c5283fe60b | |||
a9726ee734 | |||
18337ad778 | |||
c32bb1c696 |
34 changed files with 177 additions and 343 deletions
flake.lockflake.nix
homes/x86_64-linux
lib/module
modules
home
desktop/gnome
palette
themes/catppuccin/gnome
nixos
admin
archetypes
common
audio
bluetooth
fonts
grub
hardware
kernel
locale
nix
shell
desktop
security/yubikey
services
bluesky/pds
duckdns
homepage
sharkey
traefik
vaultwarden
tools/cachix
systems/x86_64-linux
299
flake.lock
generated
299
flake.lock
generated
|
@ -2,22 +2,16 @@
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"catppuccin": {
|
"catppuccin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"catppuccin-v1_1": "catppuccin-v1_1",
|
|
||||||
"catppuccin-v1_2": "catppuccin-v1_2",
|
|
||||||
"home-manager": "home-manager",
|
|
||||||
"home-manager-stable": "home-manager-stable",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
]
|
||||||
"nixpkgs-stable": "nixpkgs-stable",
|
|
||||||
"nuscht-search": "nuscht-search"
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736069220,
|
"lastModified": 1737579274,
|
||||||
"narHash": "sha256-76MaB3COao55nlhWmSmq9PKgu2iGIs54C1cAE0E5J6Y=",
|
"narHash": "sha256-8kBIYfn8TI9jbffhDNS12SdbQHb9ITXflwcgIJBeGqw=",
|
||||||
"owner": "catppuccin",
|
"owner": "catppuccin",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "8eada392fd6571a747e1c5fc358dd61c14c8704e",
|
"rev": "06f0ea19334bcc8112e6d671fd53e61f9e3ad63a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -26,52 +20,6 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"catppuccin-v1_1": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1734055249,
|
|
||||||
"narHash": "sha256-pCWJgwo77KD7EJpwynwKrWPZ//dwypHq2TfdzZWqK68=",
|
|
||||||
"rev": "7221d6ca17ac36ed20588e1c3a80177ac5843fa7",
|
|
||||||
"revCount": 326,
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://api.flakehub.com/f/pinned/catppuccin/nix/1.1.1/0193bdc0-b045-7eed-bbec-95611a8ecdf5/source.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://flakehub.com/f/catppuccin/nix/1.1.%2A.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"catppuccin-v1_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1734728407,
|
|
||||||
"narHash": "sha256-Let3uJo4YDyfqbqaw66dpZxhJB2TrDyZWSFd5rpPLJA=",
|
|
||||||
"rev": "23ee86dbf4ed347878115a78971d43025362fab1",
|
|
||||||
"revCount": 341,
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://api.flakehub.com/f/pinned/catppuccin/nix/1.2.0/0193e5e0-33b7-7149-a362-bfe56b20f64e/source.tar.gz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://flakehub.com/f/catppuccin/nix/1.2.%2A.tar.gz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"elanmoc2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731852525,
|
|
||||||
"narHash": "sha256-t3wgLs3I38Ijc/JuxUKuVGZFF3eeYeFNibps5wbSsv4=",
|
|
||||||
"owner": "sandptel",
|
|
||||||
"repo": "elanmoc2",
|
|
||||||
"rev": "8b049aa1f184b34b7f6829472b10ea8453bd5806",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "sandptel",
|
|
||||||
"repo": "elanmoc2",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -109,11 +57,11 @@
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1705309234,
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -124,7 +72,7 @@
|
||||||
},
|
},
|
||||||
"flake-utils-plus": {
|
"flake-utils-plus": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_3"
|
"flake-utils": "flake-utils_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715533576,
|
"lastModified": 1715533576,
|
||||||
|
@ -145,24 +93,6 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
|
||||||
"lastModified": 1705309234,
|
|
||||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_3": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems_3"
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1694529238,
|
"lastModified": 1694529238,
|
||||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||||
|
@ -180,16 +110,16 @@
|
||||||
"ghostty": {
|
"ghostty": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2",
|
"nixpkgs-stable": "nixpkgs-stable",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"zig": "zig"
|
"zig": "zig"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736402835,
|
"lastModified": 1738275804,
|
||||||
"narHash": "sha256-SiG2B2KfU4BIOggrJJa9nKoagXtLXWWo9vXJ88a+ls8=",
|
"narHash": "sha256-n9cSCLlWjc8Bc5QyZYLo5+c6MfTZjgDpUGx/FGxBiY8=",
|
||||||
"owner": "ghostty-org",
|
"owner": "ghostty-org",
|
||||||
"repo": "ghostty",
|
"repo": "ghostty",
|
||||||
"rev": "2d7706ec4f7042b9072d3b8ac8ea496dee209bc8",
|
"rev": "c5508e7d1922842ecd3160ea73b97da1282168b3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -200,11 +130,11 @@
|
||||||
},
|
},
|
||||||
"hardware": {
|
"hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736283893,
|
"lastModified": 1737751639,
|
||||||
"narHash": "sha256-BG1FfTexFwNty5VhYjaQLMR6CMPfI3QRcaZrFQYu2EM=",
|
"narHash": "sha256-ZEbOJ9iT72iwqXsiEMbEa8wWjyFvRA9Ugx8utmYbpz4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "4f339f6be2b61662f957c2ee9eda0fa597d8a6d6",
|
"rev": "dfad538f751a5aa5d4436d9781ab27a6128ec9d4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -217,16 +147,15 @@
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"catppuccin",
|
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1734622215,
|
"lastModified": 1738275749,
|
||||||
"narHash": "sha256-OOfI0XhSJGHblfdNDhfnn8QnZxng63rWk9eeJ2tCbiI=",
|
"narHash": "sha256-PM+cGduJ05EZ+YXulqAwUFjvfKpPmW080mcuN6R1POw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "1395379a7a36e40f2a76e7b9936cc52950baa1be",
|
"rev": "a8159195bfaef3c64df75d3b1e6a68d49d392be9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -235,125 +164,39 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"home-manager-stable": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"catppuccin",
|
|
||||||
"nixpkgs-stable"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1734366194,
|
|
||||||
"narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"ref": "release-24.11",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"home-manager_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1736366465,
|
|
||||||
"narHash": "sha256-Fo68EF6p/N9GJyHiAUbXtiE7IJlb3IMjK86LuxFMsRU=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"rev": "7e00856596891850ba5ad4c5ecd2ed74468c08c5",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "home-manager",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"ixx": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": [
|
|
||||||
"catppuccin",
|
|
||||||
"nuscht-search",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"catppuccin",
|
|
||||||
"nuscht-search",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1729958008,
|
|
||||||
"narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=",
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"repo": "ixx",
|
|
||||||
"rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"ref": "v0.0.6",
|
|
||||||
"repo": "ixx",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nix-flatpak": {
|
"nix-flatpak": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1711997201,
|
"lastModified": 1734128415,
|
||||||
"narHash": "sha256-J71xzQlVYsjagA4AsVwRazhBh2rZrPpKvxTgs6UzL7c=",
|
"narHash": "sha256-HLwdVNxpuTsLlM3tCkpbQU6yCehdgf3kOS1G2SDlkzY=",
|
||||||
"owner": "gmodena",
|
"owner": "gmodena",
|
||||||
"repo": "nix-flatpak",
|
"repo": "nix-flatpak",
|
||||||
"rev": "b76fa31346db7fc958a9898f3c594696ca71c4fd",
|
"rev": "8bdc2540da516006d07b04019eb57ae0781a04b3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "gmodena",
|
"owner": "gmodena",
|
||||||
"ref": "v0.4.1",
|
"ref": "latest",
|
||||||
"repo": "nix-flatpak",
|
"repo": "nix-flatpak",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1737062831,
|
"lastModified": 1738136902,
|
||||||
"narHash": "sha256-Tbk1MZbtV2s5aG+iM99U8FqwxU/YNArMcWAv6clcsBc=",
|
"narHash": "sha256-pUvLijVGARw4u793APze3j6mU1Zwdtz7hGkGGkD87qw=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5df43628fdf08d642be8ba5b3625a6c70731c19c",
|
"rev": "9a5db3142ce450045840cc8d832b13b8a2018e0c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixpkgs-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1734600368,
|
|
||||||
"narHash": "sha256-nbG9TijTMcfr+au7ZVbKpAhMJzzE2nQBYmRvSdXUD8g=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "b47fd6fa00c6afca88b8ee46cfdb00e104f50bca",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-24.11",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-stable_2": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733423277,
|
"lastModified": 1733423277,
|
||||||
"narHash": "sha256-TxabjxEgkNbCGFRHgM/b9yZWlBj60gUOUnRT/wbVQR8=",
|
"narHash": "sha256-TxabjxEgkNbCGFRHgM/b9yZWlBj60gUOUnRT/wbVQR8=",
|
||||||
|
@ -385,57 +228,16 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1736241350,
|
|
||||||
"narHash": "sha256-CHd7yhaDigUuJyDeX0SADbTM9FXfiWaeNyY34FL1wQU=",
|
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "8c9fd3e564728e90829ee7dbac6edc972971cd0f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nuscht-search": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"ixx": "ixx",
|
|
||||||
"nixpkgs": [
|
|
||||||
"catppuccin",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1733773348,
|
|
||||||
"narHash": "sha256-Y47y+LesOCkJaLvj+dI/Oa6FAKj/T9sKVKDXLNsViPw=",
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"repo": "search",
|
|
||||||
"rev": "3051be7f403bff1d1d380e4612f0c70675b44fc9",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NuschtOS",
|
|
||||||
"repo": "search",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"catppuccin": "catppuccin",
|
"catppuccin": "catppuccin",
|
||||||
"elanmoc2": "elanmoc2",
|
|
||||||
"ghostty": "ghostty",
|
"ghostty": "ghostty",
|
||||||
"hardware": "hardware",
|
"hardware": "hardware",
|
||||||
"home-manager": "home-manager_2",
|
"home-manager": "home-manager",
|
||||||
"nix-flatpak": "nix-flatpak",
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs",
|
||||||
"snowfall-lib": "snowfall-lib",
|
"snowfall-lib": "snowfall-lib",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix"
|
||||||
"zen-browser": "zen-browser"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"snowfall-lib": {
|
"snowfall-lib": {
|
||||||
|
@ -467,11 +269,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1736203741,
|
"lastModified": 1737411508,
|
||||||
"narHash": "sha256-eSjkBwBdQk+TZWFlLbclF2rAh4JxbGg8az4w/Lfe7f4=",
|
"narHash": "sha256-j9IdflJwRtqo9WpM0OfAZml47eBblUHGNQTe62OUqTw=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "c9c88f08e3ee495e888b8d7c8624a0b2519cb773",
|
"rev": "015d461c16678fc02a2f405eb453abb509d4e1d4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -510,47 +312,12 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"zen-browser": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1736267677,
|
|
||||||
"narHash": "sha256-7FH/gFShKOzf46yKqA4VWAaWxuyHBRnXOdaffbTxVo4=",
|
|
||||||
"owner": "0xc000022070",
|
|
||||||
"repo": "zen-browser-flake",
|
|
||||||
"rev": "c96c6a1ebf1bea782f9528dc316d986a6087ebc0",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "0xc000022070",
|
|
||||||
"repo": "zen-browser-flake",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"zig": {
|
"zig": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
"ghostty"
|
"ghostty"
|
||||||
],
|
],
|
||||||
"flake-utils": "flake-utils_2",
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"ghostty",
|
"ghostty",
|
||||||
"nixpkgs-stable"
|
"nixpkgs-stable"
|
||||||
|
|
|
@ -17,17 +17,11 @@
|
||||||
# Hardware specific tweaks and performance optimizations.
|
# Hardware specific tweaks and performance optimizations.
|
||||||
hardware = { url = "github:NixOS/nixos-hardware/master"; };
|
hardware = { url = "github:NixOS/nixos-hardware/master"; };
|
||||||
|
|
||||||
# Support for ElanTech fingerprint scanner 04f3:0c00
|
|
||||||
elanmoc2 = {
|
|
||||||
url = "github:sandptel/elanmoc2";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Catppuccin theme nix configuration.
|
# Catppuccin theme nix configuration.
|
||||||
catppuccin = { url = "github:catppuccin/nix"; inputs.nixpkgs.follows = "nixpkgs"; };
|
catppuccin = { url = "github:catppuccin/nix"; inputs.nixpkgs.follows = "nixpkgs"; };
|
||||||
|
|
||||||
# Declarative management of Flatpak packages.
|
# Declarative management of Flatpak packages.
|
||||||
nix-flatpak = { url = "github:gmodena/nix-flatpak/?ref=v0.4.1"; };
|
nix-flatpak = { url = "github:gmodena/nix-flatpak/?ref=latest"; };
|
||||||
|
|
||||||
# Apps
|
# Apps
|
||||||
ghostty = { url = "github:ghostty-org/ghostty"; };
|
ghostty = { url = "github:ghostty-org/ghostty"; };
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
{
|
{
|
||||||
lib,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
namespace,
|
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
{
|
{
|
||||||
# Declare user packages.
|
# Declare user packages.
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
{
|
{
|
||||||
lib,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
namespace,
|
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
{
|
{
|
||||||
puzzlevision = {
|
puzzlevision = {
|
||||||
themes.catppuccin = {
|
themes.catppuccin = {
|
||||||
|
@ -24,6 +22,60 @@
|
||||||
packages = [];
|
packages = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
nushell = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
# for editing directly to config.nu
|
||||||
|
extraConfig = ''
|
||||||
|
let carapace_completer = {|spans|
|
||||||
|
carapace $spans.0 nushell $spans | from json
|
||||||
|
}
|
||||||
|
$env.config = {
|
||||||
|
show_banner: false,
|
||||||
|
completions: {
|
||||||
|
case_sensitive: false # case-sensitive completions
|
||||||
|
quick: true # set to false to prevent auto-selecting completions
|
||||||
|
partial: true # set to false to prevent partial filling of the prompt
|
||||||
|
algorithm: "fuzzy" # prefix or fuzzy
|
||||||
|
external: {
|
||||||
|
# set to false to prevent nushell looking into $env.PATH to find more suggestions
|
||||||
|
enable: true
|
||||||
|
# set to lower can improve completion performance at the cost of omitting some options
|
||||||
|
max_results: 100
|
||||||
|
completer: $carapace_completer # check 'carapace_completer'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$env.PATH = ($env.PATH |
|
||||||
|
split row (char esep) |
|
||||||
|
prepend /home/myuser/.apps |
|
||||||
|
append /usr/bin/env
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
|
||||||
|
shellAliases = {
|
||||||
|
vi = "hx";
|
||||||
|
vim = "hx";
|
||||||
|
nano = "hx";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
carapace.enable = true;
|
||||||
|
carapace.enableNushellIntegration = true;
|
||||||
|
|
||||||
|
starship = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
add_newline = true;
|
||||||
|
character = {
|
||||||
|
success_symbol = "[➜](bold green)";
|
||||||
|
error_symbol = "[➜](bold red)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# TODO: look at git-sync for syncing stuff like obsidian vaults.
|
# TODO: look at git-sync for syncing stuff like obsidian vaults.
|
||||||
programs.git-credential-oauth.enable = true;
|
programs.git-credential-oauth.enable = true;
|
||||||
|
|
||||||
|
@ -45,17 +97,16 @@
|
||||||
avra
|
avra
|
||||||
avrdude
|
avrdude
|
||||||
jetbrains.phpstorm
|
jetbrains.phpstorm
|
||||||
jetbrains-toolbox
|
|
||||||
git
|
git
|
||||||
nodejs_22
|
|
||||||
bun
|
bun
|
||||||
devenv
|
devenv
|
||||||
python39
|
python39
|
||||||
poetry
|
nixd
|
||||||
nil
|
nil
|
||||||
zed-editor
|
zed-editor
|
||||||
bruno
|
bruno
|
||||||
deno
|
deno
|
||||||
|
carapace
|
||||||
|
|
||||||
### Work
|
### Work
|
||||||
teams-for-linux
|
teams-for-linux
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: with lib;
|
}:
|
||||||
rec {
|
let
|
||||||
|
inherit (lib) mkOption;
|
||||||
|
in
|
||||||
|
{
|
||||||
## Create a NixOS module option. (Stolen from Jake Hamilton)
|
## Create a NixOS module option. (Stolen from Jake Hamilton)
|
||||||
##
|
##
|
||||||
## ```nix
|
## ```nix
|
||||||
|
|
|
@ -5,12 +5,14 @@
|
||||||
osConfig,
|
osConfig,
|
||||||
namespace,
|
namespace,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkIf mkOption;
|
||||||
|
inherit (lib.${namespace}) mkOpt;
|
||||||
cfg = config.${namespace}.desktop.gnome;
|
cfg = config.${namespace}.desktop.gnome;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.desktop.gnome = with types; {
|
options.${namespace}.desktop.gnome = with lib.types; {
|
||||||
enabled-extensions = mkOption {
|
enabled-extensions = mkOption {
|
||||||
type = listOf package;
|
type = listOf package;
|
||||||
default = with pkgs.gnomeExtensions; [ dash-to-dock user-themes blur-my-shell appindicator unite color-picker clipboard-history ];
|
default = with pkgs.gnomeExtensions; [ dash-to-dock user-themes blur-my-shell appindicator unite color-picker clipboard-history ];
|
||||||
|
@ -19,7 +21,7 @@ in
|
||||||
};
|
};
|
||||||
favorite-apps = mkOption {
|
favorite-apps = mkOption {
|
||||||
type = listOf str;
|
type = listOf str;
|
||||||
default = ["org.gnome.Nautilus.desktop" "obsidian.desktop" "zen.desktop" "dev.zed.Zed.desktop"];
|
default = ["org.gnome.Nautilus.desktop" "obsidian.desktop" "firefox.desktop" "dev.zed.Zed.desktop"];
|
||||||
example = ["org.gnome.Nautilus.desktop" "obsidian.desktop"];
|
example = ["org.gnome.Nautilus.desktop" "obsidian.desktop"];
|
||||||
description = "Specify your favorite apps (sorted left to right).";
|
description = "Specify your favorite apps (sorted left to right).";
|
||||||
};
|
};
|
||||||
|
@ -42,7 +44,7 @@ in
|
||||||
enable-blur = mkOpt bool false "Whether to enable blur-my-shell application blur.";
|
enable-blur = mkOpt bool false "Whether to enable blur-my-shell application blur.";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
wallpaper = mkOpt str (builtins.toString ./wallpapers/abstract/amber-d.jxl) "Specify the path of your prefered Gnome wallpaper.";
|
wallpaper = mkOpt str (builtins.toString ./wallpapers/arcane/jinx_flare.jpg) "Specify the path of your prefered Gnome wallpaper.";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf osConfig.${namespace}.desktop.gnome.enable {
|
config = mkIf osConfig.${namespace}.desktop.gnome.enable {
|
||||||
|
@ -51,7 +53,7 @@ in
|
||||||
dconf.settings = {
|
dconf.settings = {
|
||||||
"org/gnome/shell" = {
|
"org/gnome/shell" = {
|
||||||
favorite-apps = cfg.favorite-apps;
|
favorite-apps = cfg.favorite-apps;
|
||||||
enabled-extensions = forEach cfg.enabled-extensions (x: x.extensionUuid);
|
enabled-extensions = lib.forEach cfg.enabled-extensions (x: x.extensionUuid);
|
||||||
disabled-extensions = []; # Make sure none of our extensions are disabled on system rebuild
|
disabled-extensions = []; # Make sure none of our extensions are disabled on system rebuild
|
||||||
};
|
};
|
||||||
"org/gnome/shell/extensions/unite" = mkIf (builtins.elem pkgs.gnomeExtensions.unite cfg.enabled-extensions) {
|
"org/gnome/shell/extensions/unite" = mkIf (builtins.elem pkgs.gnomeExtensions.unite cfg.enabled-extensions) {
|
||||||
|
|
BIN
modules/home/desktop/gnome/wallpapers/arcane/jinx_flare.jpg
Normal file
BIN
modules/home/desktop/gnome/wallpapers/arcane/jinx_flare.jpg
Normal file
Binary file not shown.
After ![]() (image error) Size: 516 KiB |
BIN
modules/home/desktop/gnome/wallpapers/arcane/jinx_stand.webp
Normal file
BIN
modules/home/desktop/gnome/wallpapers/arcane/jinx_stand.webp
Normal file
Binary file not shown.
After ![]() (image error) Size: 1.6 MiB |
|
@ -1,15 +1,15 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
namespace,
|
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkOption;
|
||||||
palette = (pkgs.lib.importJSON (config.catppuccin.sources.palette + "/palette.json")).${config.catppuccin.flavor}.colors;
|
palette = (pkgs.lib.importJSON (config.catppuccin.sources.palette + "/palette.json")).${config.catppuccin.flavor}.colors;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.palette = mkOption { type = types.attrsOf types.raw; };
|
options.palette = mkOption { type = lib.types.attrsOf lib.types.raw; };
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
inherit palette;
|
inherit palette;
|
||||||
|
|
|
@ -4,8 +4,10 @@
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
|
|
||||||
# Stolen from Oli @ git.gay, basically just themes default libadwaita components.
|
# Stolen from Oli @ git.gay, basically just themes default libadwaita components.
|
||||||
css = pkgs.writeTextFile {
|
css = pkgs.writeTextFile {
|
||||||
name = "gtk-css";
|
name = "gtk-css";
|
||||||
|
|
|
@ -4,11 +4,10 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
inherit (lib) types;
|
|
||||||
inherit (lib.${namespace}) mkOpt;
|
inherit (lib.${namespace}) mkOpt;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.admin = with types; {
|
options.${namespace}.admin = with lib.types; {
|
||||||
name = mkOpt str "Jo" "The short name of the system admin.";
|
name = mkOpt str "Jo" "The short name of the system admin.";
|
||||||
full-name = mkOpt str "Johannes Reckers" "The full name of the system admin.";
|
full-name = mkOpt str "Johannes Reckers" "The full name of the system admin.";
|
||||||
email = mkOpt str "system@thevoid.cafe" "The E-Mail of the system admin. (Used for system services by default)";
|
email = mkOpt str "system@thevoid.cafe" "The E-Mail of the system admin. (Used for system services by default)";
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.archetypes.server;
|
cfg = config.${namespace}.archetypes.server;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.archetypes.server = { enable = mkEnableOption "Enable the server archetype for your current system"; };
|
options.${namespace}.archetypes.server = { enable = mkEnableOption "Enable the server archetype for your current system"; };
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.archetypes.workstation;
|
cfg = config.${namespace}.archetypes.workstation;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.archetypes.workstation = { enable = mkEnableOption "Enable the workstation archetype for your current system"; };
|
options.${namespace}.archetypes.workstation = { enable = mkEnableOption "Enable the workstation archetype for your current system"; };
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.common.audio;
|
cfg = config.${namespace}.common.audio;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.audio = { enable = mkEnableOption "whether to enable common audio support and tweaks"; };
|
options.${namespace}.common.audio = { enable = mkEnableOption "whether to enable common audio support and tweaks"; };
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.common.bluetooth;
|
cfg = config.${namespace}.common.bluetooth;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.bluetooth = { enable = mkEnableOption "Enable bluetooth support on your current system"; };
|
options.${namespace}.common.bluetooth = { enable = mkEnableOption "Enable bluetooth support on your current system"; };
|
||||||
|
|
|
@ -4,11 +4,12 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf mkOption;
|
||||||
cfg = config.${namespace}.common.fonts;
|
cfg = config.${namespace}.common.fonts;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.fonts = with types; {
|
options.${namespace}.common.fonts = with lib.types; {
|
||||||
enable = mkEnableOption "Enable system font management";
|
enable = mkEnableOption "Enable system font management";
|
||||||
fonts = mkOption {
|
fonts = mkOption {
|
||||||
type = listOf package;
|
type = listOf package;
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.common.grub;
|
cfg = config.${namespace}.common.grub;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.grub = { enable = mkEnableOption "grub"; };
|
options.${namespace}.common.grub = { enable = mkEnableOption "grub"; };
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.common.hardware;
|
cfg = config.${namespace}.common.hardware;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.hardware = { enable = mkEnableOption "whether to enable common hardware support"; };
|
options.${namespace}.common.hardware = { enable = mkEnableOption "whether to enable common hardware support"; };
|
||||||
|
|
|
@ -4,18 +4,15 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
|
inherit (lib.${namespace}) mkOpt;
|
||||||
cfg = config.${namespace}.common.kernel;
|
cfg = config.${namespace}.common.kernel;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.kernel = {
|
options.${namespace}.common.kernel = {
|
||||||
enable = mkEnableOption "Modify the standard kernel settings";
|
enable = mkEnableOption "Modify the standard kernel settings";
|
||||||
version = mkOption {
|
version = mkOpt lib.types.str "linuxPackages_latest" "Set the kernel version to be used by your system";
|
||||||
type = types.str;
|
|
||||||
default = "linuxPackages_latest";
|
|
||||||
example = "linuxPackages_latest";
|
|
||||||
description = "Set the kernel version to be used by your system";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
|
@ -3,29 +3,30 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf mkOption;
|
||||||
cfg = config.${namespace}.common.locale;
|
cfg = config.${namespace}.common.locale;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.locale = {
|
options.${namespace}.common.locale = {
|
||||||
enable = mkEnableOption "whether to enable common locale tweaks";
|
enable = mkEnableOption "whether to enable common locale tweaks";
|
||||||
|
|
||||||
language = mkOption {
|
language = mkOption {
|
||||||
type = types.str;
|
type = lib.types.str;
|
||||||
default = "en_US";
|
default = "en_US";
|
||||||
example = "en_US";
|
example = "en_US";
|
||||||
description = "Sets the language for most text, doesn't include monetary or measurement settings";
|
description = "Sets the language for most text, doesn't include monetary or measurement settings";
|
||||||
};
|
};
|
||||||
|
|
||||||
country = mkOption {
|
country = mkOption {
|
||||||
type = types.str;
|
type = lib.types.str;
|
||||||
default = "de_DE";
|
default = "de_DE";
|
||||||
example = "de_DE";
|
example = "de_DE";
|
||||||
description = "Sets the language used for monetary or measurement settings (USD vs Euro, etc...)";
|
description = "Sets the language used for monetary or measurement settings (USD vs Euro, etc...)";
|
||||||
};
|
};
|
||||||
|
|
||||||
keymap = mkOption {
|
keymap = mkOption {
|
||||||
type = types.str;
|
type = lib.types.str;
|
||||||
default = "de";
|
default = "de";
|
||||||
example = "de";
|
example = "de";
|
||||||
description = "Sets the keymap to be used by the system";
|
description = "Sets the keymap to be used by the system";
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.common.nix;
|
cfg = config.${namespace}.common.nix;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.nix = {
|
options.${namespace}.common.nix = {
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
config,
|
config,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.common.shell;
|
cfg = config.${namespace}.common.shell;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.common.shell = {
|
options.${namespace}.common.shell = {
|
||||||
|
@ -13,8 +14,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.shells = with pkgs; [ fish ];
|
environment.shells = with pkgs; [ nushell fish ];
|
||||||
users.defaultUserShell = pkgs.fish;
|
users.defaultUserShell = pkgs.nushell;
|
||||||
programs.fish.enable = true;
|
programs.fish.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.desktop.gnome;
|
cfg = config.${namespace}.desktop.gnome;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.desktop.gnome = { enable = mkEnableOption "gnome"; };
|
options.${namespace}.desktop.gnome = { enable = mkEnableOption "gnome"; };
|
||||||
|
|
|
@ -3,8 +3,9 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.desktop.plasma;
|
cfg = config.${namespace}.desktop.plasma;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.desktop.plasma = { enable = mkEnableOption "Whether to enable the KDE Plasma desktop environment"; };
|
options.${namespace}.desktop.plasma = { enable = mkEnableOption "Whether to enable the KDE Plasma desktop environment"; };
|
||||||
|
@ -17,4 +18,4 @@ in {
|
||||||
|
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,12 +4,13 @@
|
||||||
config,
|
config,
|
||||||
namespace,
|
namespace,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf mkOption;
|
||||||
cfg = config.${namespace}.security.yubikey;
|
cfg = config.${namespace}.security.yubikey;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.${namespace}.security.yubikey = with types; {
|
options.${namespace}.security.yubikey = with lib.types; {
|
||||||
enable = mkEnableOption "Enable the Yubikey as a security device.";
|
enable = mkEnableOption "Enable the Yubikey as a security device.";
|
||||||
key-id = mkOption {
|
key-id = mkOption {
|
||||||
type = listOf str;
|
type = listOf str;
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
config,
|
config,
|
||||||
host,
|
host,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.services.bluesky.pds;
|
cfg = config.${namespace}.services.bluesky.pds;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.services.bluesky.pds = {
|
options.${namespace}.services.bluesky.pds = {
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
config,
|
config,
|
||||||
host,
|
host,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.services.duckdns;
|
cfg = config.${namespace}.services.duckdns;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.services.duckdns = {
|
options.${namespace}.services.duckdns = {
|
||||||
|
|
|
@ -4,9 +4,11 @@
|
||||||
config,
|
config,
|
||||||
host,
|
host,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.services.homepage;
|
cfg = config.${namespace}.services.homepage;
|
||||||
|
|
||||||
homepageConfigDirectory = lib.snowfall.fs.get-file "resources/services/homepage";
|
homepageConfigDirectory = lib.snowfall.fs.get-file "resources/services/homepage";
|
||||||
in {
|
in {
|
||||||
options.${namespace}.services.homepage = { enable = mkEnableOption "Enable Homepage, an intuitive dashboard for your services."; };
|
options.${namespace}.services.homepage = { enable = mkEnableOption "Enable Homepage, an intuitive dashboard for your services."; };
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
config,
|
config,
|
||||||
host,
|
host,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.services.sharkey;
|
cfg = config.${namespace}.services.sharkey;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.services.sharkey = { enable = mkEnableOption "Enable Sharkey, the activitypub-based microblogging service."; };
|
options.${namespace}.services.sharkey = { enable = mkEnableOption "Enable Sharkey, the activitypub-based microblogging service."; };
|
||||||
|
|
|
@ -3,14 +3,15 @@
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf mkOption;
|
||||||
cfg = config.${namespace}.services.traefik;
|
cfg = config.${namespace}.services.traefik;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.services.traefik = {
|
options.${namespace}.services.traefik = {
|
||||||
enable = mkEnableOption "Enable the Traefik service.";
|
enable = mkEnableOption "Enable the Traefik service.";
|
||||||
cloudflareEmail = mkOption {
|
cloudflareEmail = mkOption {
|
||||||
type = types.str;
|
type = lib.types.str;
|
||||||
default = config.${namespace}.admin.email;
|
default = config.${namespace}.admin.email;
|
||||||
example = "system@thevoid.cafe";
|
example = "system@thevoid.cafe";
|
||||||
description = "Specify the E-Mail associated with your Cloudflare account for ACME.";
|
description = "Specify the E-Mail associated with your Cloudflare account for ACME.";
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
config,
|
config,
|
||||||
host,
|
host,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.services.vaultwarden;
|
cfg = config.${namespace}.services.vaultwarden;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.services.vaultwarden = { enable = mkEnableOption "Enable Vaultwarden, a self-hostable password manager."; };
|
options.${namespace}.services.vaultwarden = { enable = mkEnableOption "Enable Vaultwarden, a self-hostable password manager."; };
|
||||||
|
|
|
@ -3,9 +3,10 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
namespace,
|
namespace,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
let
|
let
|
||||||
|
inherit (lib) mkEnableOption mkIf;
|
||||||
cfg = config.${namespace}.tools.cachix;
|
cfg = config.${namespace}.tools.cachix;
|
||||||
in {
|
in {
|
||||||
options.${namespace}.tools.cachix = { enable = mkEnableOption "Enable the cachix binary cache service on your system."; };
|
options.${namespace}.tools.cachix = { enable = mkEnableOption "Enable the cachix binary cache service on your system."; };
|
||||||
|
@ -14,4 +15,3 @@ in {
|
||||||
environment.systemPackages = with pkgs; [ cachix ];
|
environment.systemPackages = with pkgs; [ cachix ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,9 +2,8 @@
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
inputs,
|
inputs,
|
||||||
namespace,
|
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
|
@ -2,17 +2,15 @@
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
inputs,
|
inputs,
|
||||||
namespace,
|
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: with lib; with lib.${namespace};
|
}:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
inputs.hardware.nixosModules.common-pc-laptop
|
inputs.hardware.nixosModules.common-pc-laptop
|
||||||
inputs.hardware.nixosModules.common-cpu-intel
|
inputs.hardware.nixosModules.common-cpu-intel
|
||||||
inputs.hardware.nixosModules.common-pc-laptop-ssd
|
inputs.hardware.nixosModules.common-pc-laptop-ssd
|
||||||
inputs.elanmoc2.nixosModules.elanmoc2
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Configure Sops
|
# Configure Sops
|
||||||
|
@ -29,7 +27,7 @@
|
||||||
boot = {
|
boot = {
|
||||||
# Configure additional kernel modules.
|
# Configure additional kernel modules.
|
||||||
extraModulePackages = [
|
extraModulePackages = [
|
||||||
pkgs.linuxPackages_latest.rtl8821ce # Use custom network-card driver.
|
pkgs.linuxKernel.packages.linux_6_12.rtl8821ce # Use custom network-card driver.
|
||||||
];
|
];
|
||||||
|
|
||||||
blacklistedKernelModules = [
|
blacklistedKernelModules = [
|
||||||
|
@ -46,15 +44,14 @@
|
||||||
# Enable printing.
|
# Enable printing.
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
# Enable fingerprint support for ElanTech scanner 04f3:0c00
|
|
||||||
services.fprintd.elanmoc2.enable = true;
|
|
||||||
|
|
||||||
# Enable docker
|
# Enable docker
|
||||||
virtualisation.docker.enable = true;
|
virtualisation.docker.enable = true;
|
||||||
|
|
||||||
# Set system configuration
|
# Set system configuration
|
||||||
puzzlevision = {
|
puzzlevision = {
|
||||||
archetypes.workstation.enable = true;
|
archetypes.workstation.enable = true;
|
||||||
|
common.kernel.version = "linuxPackages_6_12";
|
||||||
|
|
||||||
security.yubikey = {
|
security.yubikey = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enable-agent = true;
|
enable-agent = true;
|
||||||
|
@ -67,10 +64,15 @@
|
||||||
# Set trusted users (Primarily used for cachix)
|
# Set trusted users (Primarily used for cachix)
|
||||||
nix.settings.trusted-users = [ "root" "jo" ];
|
nix.settings.trusted-users = [ "root" "jo" ];
|
||||||
|
|
||||||
|
# Configure additional groups
|
||||||
|
users.groups.www-data = {
|
||||||
|
gid = 33;
|
||||||
|
};
|
||||||
|
|
||||||
# Configure users.
|
# Configure users.
|
||||||
snowfallorg.users.jo.admin = true;
|
snowfallorg.users.jo.admin = true;
|
||||||
users.users.jo.isNormalUser = true;
|
users.users.jo.isNormalUser = true;
|
||||||
users.users.jo.extraGroups = [ "dialout" "docker" ];
|
users.users.jo.extraGroups = [ "dialout" "docker" "www-data" ];
|
||||||
users.users.jo.hashedPasswordFile = config.sops.secrets."user/jo/password_hash".path;
|
users.users.jo.hashedPasswordFile = config.sops.secrets."user/jo/password_hash".path;
|
||||||
|
|
||||||
# Configure home-manager
|
# Configure home-manager
|
||||||
|
|
Loading…
Add table
Reference in a new issue