From 1dffa3a0a24f872b18a687d3dc5c2c22bfc6025a Mon Sep 17 00:00:00 2001 From: bug Date: Tue, 18 Aug 2026 21:11:15 -0500 Subject: [PATCH] push --- flake.lock | 665 +++++++++------------- flake.nix | 10 +- modules/core/graphics/nvidia.nix | 2 +- modules/core/infra/tailscale.nix | 9 + modules/core/kernel.nix | 6 +- modules/hosts.nix | 6 +- modules/hosts/box.nix | 1 + modules/hosts/nix.nix | 4 +- modules/services/mailserver.nix | 52 +- modules/services/ports.nix | 2 + modules/software/compatibility/nix-ld.nix | 53 +- modules/software/development/editors.nix | 5 +- modules/software/gaming/game-tools.nix | 2 +- modules/software/gaming/gaming.nix | 15 +- modules/software/gaming/minecraft.nix | 238 ++++---- modules/software/gaming/star-citizen.nix | 5 + modules/software/gaming/steam.nix | 7 +- modules/software/ollama.nix | 25 +- modules/software/social/nixcord.nix | 5 +- modules/software/utilities/cad.nix | 2 +- modules/software/utilities/utilities.nix | 2 +- modules/users/bug.nix | 7 + resources/nix.ans | 0 23 files changed, 583 insertions(+), 540 deletions(-) create mode 100644 modules/core/infra/tailscale.nix mode change 100755 => 100644 resources/nix.ans diff --git a/flake.lock b/flake.lock index 934914b..b60876d 100644 --- a/flake.lock +++ b/flake.lock @@ -68,24 +68,6 @@ "type": "github" } }, - "beaker-src": { - "flake": false, - "locked": { - "lastModified": 1775244490, - "narHash": "sha256-4TJv7X6D0l4rEbTRKf47gU43L8G5uJgxxtsqMkVixQY=", - "ref": "refs/heads/master", - "rev": "3fab89ecf8f4c664477a82add660d28db87357b4", - "revCount": 27, - "shallow": false, - "type": "git", - "url": "https://git.bwaaa.monster/beaker" - }, - "original": { - "shallow": false, - "type": "git", - "url": "https://git.bwaaa.monster/beaker" - } - }, "blobs": { "flake": false, "locked": { @@ -102,48 +84,16 @@ "type": "gitlab" } }, - "cachyos-kernel": { - "flake": false, - "locked": { - "lastModified": 1778227630, - "narHash": "sha256-IZIpCvjTLn6dzgFa6vOB6rUkMp3gktQy8suVXkPfvSg=", - "owner": "CachyOS", - "repo": "linux-cachyos", - "rev": "24da68625ce48a4ea1b28996050f1229e7bc78a2", - "type": "github" - }, - "original": { - "owner": "CachyOS", - "repo": "linux-cachyos", - "type": "github" - } - }, - "cachyos-kernel-patches": { - "flake": false, - "locked": { - "lastModified": 1777876120, - "narHash": "sha256-fdFgVCoua3rsQyyHkgxcnwi0hUktR8UtcI/suS8jcbg=", - "owner": "CachyOS", - "repo": "kernel-patches", - "rev": "e80ce8172953b8c199daf6a2850974bb12731ae9", - "type": "github" - }, - "original": { - "owner": "CachyOS", - "repo": "kernel-patches", - "type": "github" - } - }, "catppuccin": { "inputs": { "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1778336446, - "narHash": "sha256-axlSmUkHgMSnHitMgIWH8iNfU9Ej39Th50KD8NePjac=", + "lastModified": 1785485193, + "narHash": "sha256-JgUmb34d3Zv1W5fYukqEUEDHSaWhw7WV9HVUXOmOCaA=", "owner": "catppuccin", "repo": "nix", - "rev": "f656000aa5e6dc2664f71bc57ce00bf68dc65366", + "rev": "41c4ebf8cb3e4052001947a457b4ac093e5dc119", "type": "github" }, "original": { @@ -197,11 +147,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1778198574, - "narHash": "sha256-XzgYoibIH6diZoZ2GzoGeyV2xdXAwBtXdAze+Qu2kR0=", + "lastModified": 1785887578, + "narHash": "sha256-hcbXYyiNrG4r4yzKubm2tOJyqGfK9bW8utKJMf+xcq0=", "owner": "9001", "repo": "copyparty", - "rev": "139ef1851e5d698521a5c2078c56f951d6e54d00", + "rev": "4f20738b7176dc087bf28a7e1b1448a7dfdbd783", "type": "github" }, "original": { @@ -212,16 +162,15 @@ }, "den": { "locked": { - "lastModified": 1774839389, - "narHash": "sha256-gjREeOXMLLMfgqhL0I+cX0RIV1Qn554ajwxf3+Flp8I=", - "owner": "vic", + "lastModified": 1785531595, + "narHash": "sha256-ipFk5ANEHhemDusdTZeuxVyFysyALjj8rRgpcTsjD4Y=", + "owner": "denful", "repo": "den", - "rev": "d03b126aa36035752b6b172f26027d015b5cf70a", + "rev": "2040b61346a7215fd7b7f51d4a457544b6e597d0", "type": "github" }, "original": { - "owner": "vic", - "ref": "v0.10.0", + "owner": "denful", "repo": "den", "type": "github" } @@ -229,11 +178,11 @@ "firefox-gnome-theme": { "flake": false, "locked": { - "lastModified": 1776136500, - "narHash": "sha256-r0gN2brVWA351zwMV0Flmlcd6SGMvYqFbvC3DfKFM8Y=", + "lastModified": 1783570805, + "narHash": "sha256-ptl5aRlCv9/uRSv2u8Hq8UFVFeZ6Q/bT049bpqNgc3w=", "owner": "rafaelmardojai", "repo": "firefox-gnome-theme", - "rev": "0f8ba203d475587f477e7ae12661bd8459e225b7", + "rev": "5602ed62d638142c1ab31dccd01dfbfb28841225", "type": "github" }, "original": { @@ -277,17 +226,15 @@ "flake-compat_2": { "flake": false, "locked": { - "lastModified": 1767039857, - "narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=", - "owner": "NixOS", - "repo": "flake-compat", - "rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab", - "type": "github" + "lastModified": 1777699697, + "narHash": "sha256-Eg9b/rq/ECYwNwEXs5i9wHyhxNI0JrYx2srdI2uZMaQ=", + "rev": "382052b74656a369c5408822af3f2501e9b1af81", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/flake-compat/archive/382052b74656a369c5408822af3f2501e9b1af81.tar.gz?rev=382052b74656a369c5408822af3f2501e9b1af81" }, "original": { - "owner": "NixOS", - "repo": "flake-compat", - "type": "github" + "type": "tarball", + "url": "https://git.lix.systems/lix-project/flake-compat/archive/main.tar.gz" } }, "flake-compat_3": { @@ -307,20 +254,6 @@ } }, "flake-compat_4": { - "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", - "revCount": 69, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" - } - }, - "flake-compat_5": { "flake": false, "locked": { "lastModified": 1767039857, @@ -338,11 +271,11 @@ }, "flake-file": { "locked": { - "lastModified": 1777679829, - "narHash": "sha256-zQxY90pq7BDbeimAiOfuK2U0huzo6oHOiC8zEpRgsbQ=", + "lastModified": 1785282747, + "narHash": "sha256-ZwdMXUu0Udb4yzI65+psyJeUF+wexByNEvTUSx1xjVs=", "owner": "vic", "repo": "flake-file", - "rev": "04ca28cf570276e70a9a5f694791ab2a60f1f300", + "rev": "56c46842d70754345c4a4581b8cbebe87b8fc067", "type": "github" }, "original": { @@ -358,11 +291,11 @@ ] }, "locked": { - "lastModified": 1777988971, - "narHash": "sha256-qIoWPDs+0/8JecyYgE3gpKQxW/4bLW/gp45vow9ioCQ=", + "lastModified": 1785627969, + "narHash": "sha256-4dtXQk/NMePegK/nWp5NSeuZKLATItOq61lpEvmXqGw=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "0678d8986be1661af6bb555f3489f2fdfc31f6ff", + "rev": "427bf4bd9435fdf21321c8cc628c24efc14c0f7a", "type": "github" }, "original": { @@ -376,11 +309,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1777988971, - "narHash": "sha256-qIoWPDs+0/8JecyYgE3gpKQxW/4bLW/gp45vow9ioCQ=", + "lastModified": 1785627969, + "narHash": "sha256-4dtXQk/NMePegK/nWp5NSeuZKLATItOq61lpEvmXqGw=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "0678d8986be1661af6bb555f3489f2fdfc31f6ff", + "rev": "427bf4bd9435fdf21321c8cc628c24efc14c0f7a", "type": "github" }, "original": { @@ -391,17 +324,14 @@ }, "flake-parts_3": { "inputs": { - "nixpkgs-lib": [ - "nix-citizen", - "nixpkgs" - ] + "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1777988971, - "narHash": "sha256-qIoWPDs+0/8JecyYgE3gpKQxW/4bLW/gp45vow9ioCQ=", + "lastModified": 1785627969, + "narHash": "sha256-4dtXQk/NMePegK/nWp5NSeuZKLATItOq61lpEvmXqGw=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "0678d8986be1661af6bb555f3489f2fdfc31f6ff", + "rev": "427bf4bd9435fdf21321c8cc628c24efc14c0f7a", "type": "github" }, "original": { @@ -412,14 +342,14 @@ }, "flake-parts_4": { "inputs": { - "nixpkgs-lib": "nixpkgs-lib_2" + "nixpkgs-lib": "nixpkgs-lib_3" }, "locked": { - "lastModified": 1777678872, - "narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=", + "lastModified": 1782949081, + "narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "5250617bffd85403b14dbf43c3870e7f255d2c16", + "rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e", "type": "github" }, "original": { @@ -429,24 +359,6 @@ } }, "flake-parts_5": { - "inputs": { - "nixpkgs-lib": "nixpkgs-lib_3" - }, - "locked": { - "lastModified": 1777678872, - "narHash": "sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT+IPhcsukVbgk=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "5250617bffd85403b14dbf43c3870e7f255d2c16", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "flake-parts_6": { "inputs": { "nixpkgs-lib": [ "stylix", @@ -454,11 +366,11 @@ ] }, "locked": { - "lastModified": 1775087534, - "narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=", + "lastModified": 1782949081, + "narHash": "sha256-vp6Y/Grm98ESt6ceOkWiHWyZRDV3J1RID4w+6NWK9yA=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b", + "rev": "17c9d6cdfc60c64f4ee8d306f9bc0b4ccb51481e", "type": "github" }, "original": { @@ -557,19 +469,21 @@ }, "git-hooks": { "inputs": { - "flake-compat": "flake-compat_3", - "gitignore": "gitignore", + "flake-compat": [ + "nix-gaming", + "flake-compat" + ], "nixpkgs": [ "nix-gaming", "nixpkgs" ] }, "locked": { - "lastModified": 1776796298, - "narHash": "sha256-PcRvlWayisPSjd0UcRQbhG8Oqw78AcPE6x872cPRHN8=", + "lastModified": 1784288435, + "narHash": "sha256-ReRHaLgr/uVqdD8afFSn+myXIfpHeOhP0yYe0TJqAA8=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "3cfd774b0a530725a077e17354fbdb87ea1c4aad", + "rev": "43b3c1ab9d40fb1dbb008f451988a91e375825e9", "type": "github" }, "original": { @@ -584,18 +498,17 @@ "nixos-mailserver", "flake-compat" ], - "gitignore": "gitignore_2", "nixpkgs": [ "nixos-mailserver", "nixpkgs" ] }, "locked": { - "lastModified": 1775585728, - "narHash": "sha256-8Psjt+TWvE4thRKktJsXfR6PA/fWWsZ04DVaY6PUhr4=", + "lastModified": 1784288435, + "narHash": "sha256-ReRHaLgr/uVqdD8afFSn+myXIfpHeOhP0yYe0TJqAA8=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "580633fa3fe5fc0379905986543fd7495481913d", + "rev": "43b3c1ab9d40fb1dbb008f451988a91e375825e9", "type": "github" }, "original": { @@ -604,65 +517,23 @@ "type": "github" } }, - "gitignore": { - "inputs": { - "nixpkgs": [ - "nix-gaming", - "git-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, - "gitignore_2": { - "inputs": { - "nixpkgs": [ - "nixos-mailserver", - "git-hooks", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", - "owner": "hercules-ci", - "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "gitignore.nix", - "type": "github" - } - }, "gnome-shell": { "flake": false, "locked": { - "lastModified": 1767737596, - "narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=", + "host": "gitlab.gnome.org", + "lastModified": 1776175984, + "narHash": "sha256-RJFlFW8GiMei6oqUGrMkGEvVqOH8U7Q8abc1yK4VKD8=", "owner": "GNOME", "repo": "gnome-shell", - "rev": "ef02db02bf0ff342734d525b5767814770d85b49", - "type": "github" + "rev": "e0fdc4c13250e9a9b8ea9594c83925274f4a5dca", + "type": "gitlab" }, "original": { + "host": "gitlab.gnome.org", "owner": "GNOME", + "ref": "50.1", "repo": "gnome-shell", - "rev": "ef02db02bf0ff342734d525b5767814770d85b49", - "type": "github" + "type": "gitlab" } }, "home-manager": { @@ -672,11 +543,11 @@ ] }, "locked": { - "lastModified": 1778365864, - "narHash": "sha256-ImoT/wqmgMImf2dAC+E0MverAdA4QXsedOeES9B7Ezw=", + "lastModified": 1785531816, + "narHash": "sha256-vkMnV0JIyw+g/NmcfoajlGaAO+9a0ezia+FZohQJrik=", "owner": "nix-community", "repo": "home-manager", - "rev": "2f419037039a152448c5f4ae9494154753d1b399", + "rev": "bf9ce9fec78f95f374e8dd3b503863a3ec128ebe", "type": "github" }, "original": { @@ -690,11 +561,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1778254216, - "narHash": "sha256-Zye2Stp1oqwzC4JvIdJevB5/CG0XrEqjNji+3nVvCyo=", + "lastModified": 1785342502, + "narHash": "sha256-qu4abwEmOHOzpdBUigpLfmHObkRgJp5sRjbnnyEKzSo=", "owner": "JPyke3", "repo": "hytale-launcher-nix", - "rev": "6293d33be6a5cd1a763fe00477339b98f72da2b2", + "rev": "2bc2d0dd6fcd4c4a61d9ab33b2149b21286e79d1", "type": "github" }, "original": { @@ -705,11 +576,11 @@ }, "import-tree": { "locked": { - "lastModified": 1773693634, - "narHash": "sha256-BtZ2dtkBdSUnFPPFc+n0kcMbgaTxzFNPv2iaO326Ffg=", + "lastModified": 1784254960, + "narHash": "sha256-iI88R3wHz8wTKQb5orvpc51L/Xr64AJyxid/0MKa/b8=", "owner": "vic", "repo": "import-tree", - "rev": "c41e7d58045f9057880b0d85e1152d6a4430dbf1", + "rev": "4ebb10ae17d5f1ad366e7aef5b92cb8eecf24f69", "type": "github" }, "original": { @@ -718,24 +589,62 @@ "type": "github" } }, + "millennium": { + "inputs": { + "millennium-src": "millennium-src", + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "dir": "packages/nix", + "lastModified": 1785881661, + "narHash": "sha256-KmpGnRIFMoV5nqMdMfoUUnGHsNZwcKyq0B4E7buhMYw=", + "owner": "SteamClientHomebrew", + "repo": "Millennium", + "rev": "28e188ad8b03c9ccf6bca368538d6fde95b84875", + "type": "github" + }, + "original": { + "dir": "packages/nix", + "owner": "SteamClientHomebrew", + "repo": "Millennium", + "type": "github" + } + }, + "millennium-src": { + "flake": false, + "locked": { + "lastModified": 1783268941, + "narHash": "sha256-MJLJ0I48HXgfOpISTAbDMYMUdWj9A6M+jGQz4uAvwyw=", + "owner": "SteamClientHomebrew", + "repo": "Millennium", + "rev": "f37f05bdbd4727d873a1ad83ce72d062ef9a0c48", + "type": "github" + }, + "original": { + "owner": "SteamClientHomebrew", + "repo": "Millennium", + "rev": "f37f05bdbd4727d873a1ad83ce72d062ef9a0c48", + "type": "github" + } + }, "minecraft": { "inputs": { "flake-utils": "flake-utils_3", "metadata": [ "minecraft-metadata" ], - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1778297230, - "narHash": "sha256-LrxVQBBMJDKkX/pFwcIjnu69ewMG/1z+O6sso4P69hg=", - "owner": "Ninlives", + "lastModified": 1785902555, + "narHash": "sha256-h75JrVuXFiBCX9MofLewvOZrPGyt5xQzvJ3mEij57T0=", + "owner": "4DBug", "repo": "minecraft.nix", - "rev": "c0499d2e1a321644d430b653d011dde92bed4597", + "rev": "cb4942a3e6785833bd5e55909c14f6d9a02df147", "type": "github" }, "original": { - "owner": "Ninlives", + "owner": "4DBug", "repo": "minecraft.nix", "type": "github" } @@ -743,14 +652,14 @@ "minecraft-metadata": { "inputs": { "flake-utils": "flake-utils_4", - "nixpkgs": "nixpkgs_5" + "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1778038659, - "narHash": "sha256-YPART7c4s1l7eFMrYgU+b5ZzoY40BRar2okfRHpbVLE=", + "lastModified": 1785898093, + "narHash": "sha256-ereOhdfqm3y8NXn6D3+1Knkz6Snr8zmCmBXtsNfrjRo=", "owner": "Ninlives", "repo": "minecraft.json", - "rev": "3f8bf450284e2df0df9216b57fbaff64d99053ff", + "rev": "8100c3cdf3632006405ef32a13a838cc56f73b56", "type": "github" }, "original": { @@ -766,11 +675,11 @@ ] }, "locked": { - "lastModified": 1777502784, - "narHash": "sha256-ipkjSav40vAQoziPZPLMXFw+lIUrbAH2mJopPUAYp+I=", + "lastModified": 1785566637, + "narHash": "sha256-nsU614HDSf+4XqJ2Ap4cw+qwh5Ehh2bEtd+uC0OKKmg=", "owner": "ricardomaps", "repo": "neu-nix", - "rev": "d4b38bfa0112ba1a1359b91404a136a71cafa151", + "rev": "8078f344b0e95c5719f692396d7b4fe01a0d51bd", "type": "github" }, "original": { @@ -781,18 +690,16 @@ }, "nix-cachyos-kernel": { "inputs": { - "cachyos-kernel": "cachyos-kernel", - "cachyos-kernel-patches": "cachyos-kernel-patches", "flake-compat": "flake-compat", "flake-parts": "flake-parts_2", - "nixpkgs": "nixpkgs_6" + "nixpkgs": "nixpkgs_7" }, "locked": { - "lastModified": 1778258588, - "narHash": "sha256-24ij+y6nPKH3FAwkykI4Hy2kTiL/sBHSHCoIzlSeQsc=", + "lastModified": 1785870829, + "narHash": "sha256-l+RTmz09TxwWJRLQuc+cKi3yY0K4PSz8tRPTbBUvaVo=", "owner": "xddxdd", "repo": "nix-cachyos-kernel", - "rev": "8adff7983c2fcb0af530a4ac6165b3431bfbb09c", + "rev": "879f45ee15a3b06fdbbf9b6dc825c5fbca137fcd", "type": "github" }, "original": { @@ -805,21 +712,18 @@ "nix-citizen": { "inputs": { "flake-compat": "flake-compat_2", - "flake-parts": "flake-parts_3", "nix-gaming": [ "nix-gaming" ], - "nix-github-actions": "nix-github-actions", - "nixpkgs": "nixpkgs_7", - "systems": "systems_4", + "nixpkgs": "nixpkgs_8", "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1778146456, - "narHash": "sha256-RWtBy3vt4fA845/TlAEEx4v/kwqEI/LxvV38rZBlMkM=", + "lastModified": 1784888556, + "narHash": "sha256-objrARvlyaoK3ib3xkgx4KoKZXbcNBZ8WTK/XheiPCE=", "owner": "LovingMelody", "repo": "nix-citizen", - "rev": "d6f1b0dcb65bc6e75c83b677fbd809d0587fba1a", + "rev": "89d83133b5c65130171ebe0922a39dd53deb365b", "type": "github" }, "original": { @@ -846,16 +750,17 @@ }, "nix-gaming": { "inputs": { - "flake-parts": "flake-parts_4", + "flake-compat": "flake-compat_3", + "flake-parts": "flake-parts_3", "git-hooks": "git-hooks", - "nixpkgs": "nixpkgs_8" + "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1778297703, - "narHash": "sha256-EqS67I6LgEpnu/rUO6x+SaMWMN89TTsY1AnThsl84uI=", + "lastModified": 1785898401, + "narHash": "sha256-UxULHQDGAA818OpNhrzIOj9g6XYUarca/6pyEfYdOig=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "2c1b0276febd6b6cac789a9f3cafe5d6ef4e8f58", + "rev": "76fdf6463965839c5f3627d88a836b7a357746fa", "type": "github" }, "original": { @@ -864,40 +769,19 @@ "type": "github" } }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "nix-citizen", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1737420293, - "narHash": "sha256-F1G5ifvqTpJq7fdkT34e/Jy9VCyzd5XfJ9TO8fHhJWE=", - "owner": "nix-community", - "repo": "nix-github-actions", - "rev": "f4158fa080ef4503c8f4c820967d946c2af31ec9", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nix-github-actions", - "type": "github" - } - }, "nixcord": { "inputs": { - "flake-compat": "flake-compat_4", - "flake-parts": "flake-parts_5", - "nixpkgs": "nixpkgs_9", - "nixpkgs-nixcord": "nixpkgs-nixcord" + "flake-parts": "flake-parts_4", + "nixpkgs": "nixpkgs_10", + "nixpkgs-nixcord": "nixpkgs-nixcord", + "treefmt-nix": "treefmt-nix_2" }, "locked": { - "lastModified": 1778346777, - "narHash": "sha256-7gpzB8MDCMcRE0wDr7jjxK7/obfeiyAulsfQEsK9pi4=", + "lastModified": 1785902785, + "narHash": "sha256-Bxs0zYgXZQtOthL2PAgbIoH9YQk1R+9pLhUaXqZ9B6E=", "owner": "FlameFlag", "repo": "nixcord", - "rev": "43930a83206bcdcf3ba4fc10aa4fb9c5f7a677e6", + "rev": "9040ebd3389127210acad805b6e13f6697ba09d4", "type": "github" }, "original": { @@ -909,16 +793,16 @@ "nixos-mailserver": { "inputs": { "blobs": "blobs", - "flake-compat": "flake-compat_5", + "flake-compat": "flake-compat_4", "git-hooks": "git-hooks_2", - "nixpkgs": "nixpkgs_10" + "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1777287493, - "narHash": "sha256-Fj7S91TuZm6+DG/v6SFme/p+sWrYMQICGX6yQ5KD43Q=", + "lastModified": 1785702596, + "narHash": "sha256-PnJsHRZyM3iA+0BeEikWm2piQCuwtGU4xxjsWOMRvTU=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "e33fbde199eaad513ef5d0746db19d5878150232", + "rev": "531aa78a9f03f3831aa45566630ab52f6483159b", "type": "gitlab" }, "original": { @@ -929,27 +813,24 @@ }, "nixpkgs": { "locked": { - "lastModified": 1777954456, - "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", - "type": "github" + "lastModified": 1785301185, + "narHash": "sha256-PlAXr9kpfXhMFU0OQ7qtE8FhLQo21WXFVGqIC85UFyc=", + "rev": "9bc02893134c733dd85de46ee4fb2fac696b5529", + "type": "tarball", + "url": "https://releases.nixos.org/nixpkgs/nixpkgs-26.11pre1043539.9bc02893134c/nixexprs.tar.xz" }, "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" + "type": "tarball", + "url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz" } }, "nixpkgs-lib": { "locked": { - "lastModified": 1777168982, - "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=", + "lastModified": 1785031560, + "narHash": "sha256-OmshNvn2vupOFpYinLUu+1Dnpu4n7Q5N3ggGVNHpkUI=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14", + "rev": "0e79af5e3d4dcfcd676ab5ba3f95d2e3352e078c", "type": "github" }, "original": { @@ -960,11 +841,11 @@ }, "nixpkgs-lib_2": { "locked": { - "lastModified": 1777168982, - "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=", + "lastModified": 1785031560, + "narHash": "sha256-OmshNvn2vupOFpYinLUu+1Dnpu4n7Q5N3ggGVNHpkUI=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14", + "rev": "0e79af5e3d4dcfcd676ab5ba3f95d2e3352e078c", "type": "github" }, "original": { @@ -975,11 +856,11 @@ }, "nixpkgs-lib_3": { "locked": { - "lastModified": 1777168982, - "narHash": "sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ=", + "lastModified": 1782614948, + "narHash": "sha256-ePjCwr1sNm9NYUqywL7QfK3JnlS015msC+eBu2zKlp8=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "f5901329dade4a6ea039af1433fb087bd9c1fe14", + "rev": "db3f255737b94216eb71cce308e2912cf6bc2d7c", "type": "github" }, "original": { @@ -990,27 +871,43 @@ }, "nixpkgs-nixcord": { "locked": { - "lastModified": 1777428379, - "narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=", + "lastModified": 1785386831, + "narHash": "sha256-sPS3CaXH8RAT3FZRuy4VcV47iuYIWMMfa0GbyJKC3o4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "755f5aa91337890c432639c60b6064bb7fe67769", + "rev": "21ea275a7c46aef9d4d6ddc962e6d562e9d94183", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-25.11", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_10": { "locked": { - "lastModified": 1776475594, - "narHash": "sha256-mxLieVl5lqjd+QUvgHbvpVrvb9d8zox7m+MiRO6FHu8=", + "lastModified": 1785386831, + "narHash": "sha256-sPS3CaXH8RAT3FZRuy4VcV47iuYIWMMfa0GbyJKC3o4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9a3a5b8400951b3497d2ef8f239f8451175cf3a1", + "rev": "21ea275a7c46aef9d4d6ddc962e6d562e9d94183", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-26.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_11": { + "locked": { + "lastModified": 1785672624, + "narHash": "sha256-TWz27RiQZf38j17BYGN/V4U2SQVtOE2pFc9u2cy3H3g=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "8205539d1c589daf91e3c192fc10fa534acc5326", "type": "github" }, "original": { @@ -1020,13 +917,13 @@ "type": "github" } }, - "nixpkgs_11": { + "nixpkgs_12": { "locked": { - "lastModified": 1778274207, - "narHash": "sha256-I4puXmX1iovcCHZlRmztO3vW0mAbbRvq4F8wgIMQ1MM=", + "lastModified": 1785747939, + "narHash": "sha256-D740uKsMbgsfK2oaDenJLLPIZfq7W0/g4KN/Fls8eKs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b3da656039dc7a6240f27b2ef8cc6a3ef3bccae7", + "rev": "104240a772428cc2e20d8fd86c9ddbb886bbaff2", "type": "github" }, "original": { @@ -1053,11 +950,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1777954456, - "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", + "lastModified": 1785090369, + "narHash": "sha256-m0pDuRJG7EDo9ri+4Ksu83VsI+PlxNC9lNBfydejce4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", + "rev": "624af665418d3c65d544145b4d34ad696439570e", "type": "github" }, "original": { @@ -1069,26 +966,27 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1778296267, - "narHash": "sha256-FOc7+Y8FNOJp3uTDm2GCYuta9YfayjnUcIcSQuSq3KU=", - "owner": "NixOS", + "lastModified": 1781577229, + "narHash": "sha256-lrp67w8AulE9Ks53n27I45ADSzbOCn4H+CNW1Ck8B+8=", + "owner": "nixos", "repo": "nixpkgs", - "rev": "e87f2714ac889e984d4fa12c4bc0e852e2621c10", + "rev": "567a49d1913ce81ac6e9582e3553dd90a955875f", "type": "github" }, "original": { - "owner": "NixOS", + "owner": "nixos", "repo": "nixpkgs", + "rev": "567a49d1913ce81ac6e9582e3553dd90a955875f", "type": "github" } }, "nixpkgs_5": { "locked": { - "lastModified": 1778036283, - "narHash": "sha256-62EWg6lI0qyzm7oAx5cAnGkLutvJsRBe0KkEW2JDZCE=", + "lastModified": 1785896855, + "narHash": "sha256-9ZUVm/loWdcMqG7Y/UJIwDRrPvpIwa0kLuxqGh0wBXI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ed67bc86e84e51d4a88e73c7fd36006dc876476f", + "rev": "356468b500e85491b610431c87a284ca1f41b7bc", "type": "github" }, "original": { @@ -1099,11 +997,26 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1778228972, - "narHash": "sha256-L34YTBob9sdjnc+rd7nMC2X8ddw0LT4RfufnlFyArRU=", + "lastModified": 1785896855, + "narHash": "sha256-9ZUVm/loWdcMqG7Y/UJIwDRrPvpIwa0kLuxqGh0wBXI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1c5503ba41146fb6b49ed9706823b30de7f3a78f", + "rev": "356468b500e85491b610431c87a284ca1f41b7bc", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_7": { + "locked": { + "lastModified": 1785859399, + "narHash": "sha256-pY4X50au95QrTpAbEm08pURmeU3/Ud2oa0s2XzpDdz8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "85f62611fa3f3eacbcfe3bc7a6d6518b443ca442", "type": "github" }, "original": { @@ -1113,13 +1026,13 @@ "type": "github" } }, - "nixpkgs_7": { + "nixpkgs_8": { "locked": { - "lastModified": 1777954456, - "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", + "lastModified": 1784796856, + "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", + "rev": "e2587caef70cea85dd97d7daab492899902dbf5d", "type": "github" }, "original": { @@ -1129,13 +1042,13 @@ "type": "github" } }, - "nixpkgs_8": { + "nixpkgs_9": { "locked": { - "lastModified": 1777641297, - "narHash": "sha256-WNGcmeOZ8Tr9dq6ztCspYbzWFswr2mPebM9LpsfGxPk=", + "lastModified": 1785542685, + "narHash": "sha256-sjfvXMbG5pCFgpvw2OZAFcZiTvrppCWvnB6cuGrSY08=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c6d65881c5624c9cae5ea6cedef24699b0c0a4c0", + "rev": "f8e81fc7eb063db454f563cdd596fb96a5ad1497", "type": "github" }, "original": { @@ -1145,22 +1058,6 @@ "type": "github" } }, - "nixpkgs_9": { - "locked": { - "lastModified": 1777428379, - "narHash": "sha256-ypxFOeDz+CqADEQNL72haqGjvZQdBR5Vc7pyx2JDttI=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "755f5aa91337890c432639c60b6064bb7fe67769", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-25.11", - "repo": "nixpkgs", - "type": "github" - } - }, "nur": { "inputs": { "flake-parts": [ @@ -1173,11 +1070,11 @@ ] }, "locked": { - "lastModified": 1777598946, - "narHash": "sha256-X239dAGaU1+gfDj8jKH8GzlqKMcxaVfXOio+uzBOkeE=", + "lastModified": 1785549842, + "narHash": "sha256-DCwBZmGsySF7oKGTRgEv2HvpxVXkHT+38VhTM76k0B4=", "owner": "nix-community", "repo": "NUR", - "rev": "5d55af01c0f86be583931fe99207fc56c14134b3", + "rev": "a9f987b57594e845e3e5cdd423b9a70846d70308", "type": "github" }, "original": { @@ -1186,27 +1083,6 @@ "type": "github" } }, - "omnisearch": { - "inputs": { - "beaker-src": "beaker-src", - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1777508256, - "narHash": "sha256-K+tTlkGEruE/LrGpykxa7yaDg3Z6V+Tmo6YprUMSzKg=", - "ref": "refs/heads/master", - "rev": "a9db276fd872951769451142137a5e0f88ed15bc", - "revCount": 122, - "type": "git", - "url": "https://git.bwaaa.monster/omnisearch" - }, - "original": { - "type": "git", - "url": "https://git.bwaaa.monster/omnisearch" - } - }, "root": { "inputs": { "catppuccin": "catppuccin", @@ -1219,6 +1095,7 @@ "home-manager": "home-manager", "hytale-launcher": "hytale-launcher", "import-tree": "import-tree", + "millennium": "millennium", "minecraft": "minecraft", "minecraft-metadata": "minecraft-metadata", "neu-nix": "neu-nix", @@ -1228,13 +1105,12 @@ "nix-gaming": "nix-gaming", "nixcord": "nixcord", "nixos-mailserver": "nixos-mailserver", - "nixpkgs": "nixpkgs_11", + "nixpkgs": "nixpkgs_12", "nixpkgs-lib": [ "nixpkgs" ], - "omnisearch": "omnisearch", "stylix": "stylix", - "systems": "systems_6" + "systems": "systems_5" } }, "stylix": { @@ -1244,24 +1120,24 @@ "base16-helix": "base16-helix", "base16-vim": "base16-vim", "firefox-gnome-theme": "firefox-gnome-theme", - "flake-parts": "flake-parts_6", + "flake-parts": "flake-parts_5", "gnome-shell": "gnome-shell", "nixpkgs": [ "nixpkgs" ], "nur": "nur", - "systems": "systems_5", + "systems": "systems_4", "tinted-kitty": "tinted-kitty", "tinted-schemes": "tinted-schemes", "tinted-tmux": "tinted-tmux", "tinted-zed": "tinted-zed" }, "locked": { - "lastModified": 1778104276, - "narHash": "sha256-/DSSnU0LLmOTG/OCgGwYpxP6+5YvxRx2g/GhI4x6aCU=", + "lastModified": 1785794750, + "narHash": "sha256-OqIrGVL7AX462ISyJFAqjbqTc1RZlBkVHCa4dwPEZU4=", "owner": "nix-community", "repo": "stylix", - "rev": "18ed8d270231e067fe2739998479ed5d7c659c2c", + "rev": "cb5eb3a7343faba61fd694fac8040a326485a339", "type": "github" }, "original": { @@ -1317,15 +1193,16 @@ }, "systems_4": { "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "lastModified": 1774449309, + "narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=", "owner": "nix-systems", "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "rev": "c29398b59d2048c4ab79345812849c9bd15e9150", "type": "github" }, "original": { "owner": "nix-systems", + "ref": "future-26.11", "repo": "default", "type": "github" } @@ -1345,21 +1222,6 @@ "type": "github" } }, - "systems_6": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, "tinted-kitty": { "flake": false, "locked": { @@ -1379,11 +1241,11 @@ "tinted-schemes": { "flake": false, "locked": { - "lastModified": 1777041405, - "narHash": "sha256-BAGZ7ObFV/9Z61OJZun7ifPyhkuHqNuW1QIhQ8LuzCo=", + "lastModified": 1785153830, + "narHash": "sha256-fNdfCTeCXU3tZG3TMincd+u68qBHQgCr2Ljr/M1mWP0=", "owner": "tinted-theming", "repo": "schemes", - "rev": "5f868b3a338b6904c47f3833b9c411be641983a8", + "rev": "9bd28ed313560db3c5b605c63bc4e309e78e3fc8", "type": "github" }, "original": { @@ -1395,11 +1257,11 @@ "tinted-tmux": { "flake": false, "locked": { - "lastModified": 1777169200, - "narHash": "sha256-h7dDbIzP5hDr9v97w9PL6jdAgXawmj6krcH+959rqpU=", + "lastModified": 1785031658, + "narHash": "sha256-mZp9O2LjzdMzlqQF3l3fjqsuPBzXy+1qTfBEUGjTlpk=", "owner": "tinted-theming", "repo": "tinted-tmux", - "rev": "f798c2dce44ef815bb6b8f05a82135c7942d35ac", + "rev": "5d2c67f61ea7af36f16865ab6d541cdba41dc257", "type": "github" }, "original": { @@ -1411,11 +1273,11 @@ "tinted-zed": { "flake": false, "locked": { - "lastModified": 1777463218, - "narHash": "sha256-Bhkozqtq3BKLqWTlmKm8uAptfX4aRGI8QX3eEL54Vpc=", + "lastModified": 1785030526, + "narHash": "sha256-klZf8UviewRkxuu74Bhbq6tqy7oxebQC7UVRWbbtQxU=", "owner": "tinted-theming", "repo": "base16-zed", - "rev": "5768d08ed2e7944a26a958868cdb073cb8856dae", + "rev": "16f5a8adf4a6b1310d0a61ab172de963e8f76a02", "type": "github" }, "original": { @@ -1432,11 +1294,32 @@ ] }, "locked": { - "lastModified": 1775636079, - "narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=", + "lastModified": 1784369104, + "narHash": "sha256-47cxbcZODibHv3rELFQ9vZly0vUNkND/atn/U7HLeb0=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba", + "rev": "df3c0640565d04a0261253cdd89fce78ec50168a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "treefmt-nix", + "type": "github" + } + }, + "treefmt-nix_2": { + "inputs": { + "nixpkgs": [ + "nixcord", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1785360170, + "narHash": "sha256-XE1lKgQ3eIO3E7zWryqcRsax+mYXod/5RHBn4YaR9YE=", + "owner": "numtide", + "repo": "treefmt-nix", + "rev": "d1187f8bc71fb8aab02395869ec3f5c1920f75c0", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 9880dc1..a6efa13 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,9 @@ outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } (inputs.import-tree ./modules); inputs = { - den.url = "github:vic/den/v0.10.0"; + den = { + url = "github:denful/den/"; + }; flake-aspects.url = "github:vic/flake-aspects/v0.5.0"; @@ -53,13 +55,15 @@ nix-cachyos-kernel.url = "github:xddxdd/nix-cachyos-kernel/release"; + /* omnisearch = { url = "git+https://git.bwaaa.monster/omnisearch"; inputs.nixpkgs.follows = "nixpkgs"; }; + */ minecraft = { - url = "github:Ninlives/minecraft.nix"; + url = "github:4DBug/minecraft.nix"; inputs.metadata.follows = "minecraft-metadata"; }; @@ -71,5 +75,7 @@ }; nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver"; + + millennium.url = "github:SteamClientHomebrew/Millennium?dir=packages/nix"; }; } diff --git a/modules/core/graphics/nvidia.nix b/modules/core/graphics/nvidia.nix index 4cf1138..991bda9 100644 --- a/modules/core/graphics/nvidia.nix +++ b/modules/core/graphics/nvidia.nix @@ -33,7 +33,7 @@ nvidiaSettings = true; - package = config.boot.kernelPackages.nvidiaPackages.beta; + package = config.boot.kernelPackages.nvidiaPackages.stable; }; nixpkgs.config = { diff --git a/modules/core/infra/tailscale.nix b/modules/core/infra/tailscale.nix new file mode 100644 index 0000000..4ff2fcd --- /dev/null +++ b/modules/core/infra/tailscale.nix @@ -0,0 +1,9 @@ +{ + den.aspects.tailscale = { + nixos = { + services.tailscale = { + enable = true; + }; + }; + }; +} diff --git a/modules/core/kernel.nix b/modules/core/kernel.nix index 41c8c44..bbf95df 100644 --- a/modules/core/kernel.nix +++ b/modules/core/kernel.nix @@ -3,10 +3,10 @@ nixos = { pkgs, ... }: { nixpkgs.overlays = [ inputs.nix-cachyos-kernel.overlays.pinned ]; - # boot.kernelPackages = pkgs.cachyosKernels.linuxPackages-cachyos-latest; + #boot.kernelPackages = pkgs.cachyosKernels.linuxPackages-cachyos-latest; - nix.settings.substituters = [ "https://attic.xuyh0120.win/lantian" ]; - nix.settings.trusted-public-keys = [ "lantian:EeAUQ+W+6r7EtwnmYjeVwx5kOGEBpjlBfPlzGlTNvHc=" ]; + #nix.settings.substituters = [ "https://attic.xuyh0120.win/lantian" ]; + #nix.settings.trusted-public-keys = [ "lantian:EeAUQ+W+6r7EtwnmYjeVwx5kOGEBpjlBfPlzGlTNvHc=" ]; }; }; } diff --git a/modules/hosts.nix b/modules/hosts.nix index 90cff1b..40515e9 100644 --- a/modules/hosts.nix +++ b/modules/hosts.nix @@ -5,12 +5,14 @@ let extraGroups = [ "networkmanager" "wheel" "audio" "video" "libvirtd" "ydotool" "dialout" ]; classes = [ "homeManager" ]; }; -in { +in { lib, ... }: { den.hosts.x86_64-linux = { nix.users.bug = bug; styx.users.bug = bug; box.users.bug = bug; }; - den.homes.x86_64-linux.bug = { aspect = "bug"; }; + den.homes.x86_64-linux.bug = { }; + + den.schema.user.classes = lib.mkDefault [ "homeManager" ]; } diff --git a/modules/hosts/box.nix b/modules/hosts/box.nix index 9c86270..bc1e0b3 100644 --- a/modules/hosts/box.nix +++ b/modules/hosts/box.nix @@ -17,6 +17,7 @@ vscode-server gitea # omnisearch + tailscale catppuccin diff --git a/modules/hosts/nix.nix b/modules/hosts/nix.nix index 8ccc6ad..5d04e13 100644 --- a/modules/hosts/nix.nix +++ b/modules/hosts/nix.nix @@ -11,11 +11,11 @@ janitor - ollama + llama alc897 - cad + #cad ]; nixos = { diff --git a/modules/services/mailserver.nix b/modules/services/mailserver.nix index 7625d13..8b89df6 100644 --- a/modules/services/mailserver.nix +++ b/modules/services/mailserver.nix @@ -1,4 +1,5 @@ -{ inputs, ... }: { +{ inputs, ... }: +{ den.aspects.mailserver = { nixos = { imports = [ inputs.nixos-mailserver.nixosModules.default ]; @@ -7,7 +8,7 @@ acceptTerms = true; defaults.email = "security@bug.tools"; - certs."mail.bug.tools" = { + certs."mx.bug.tools" = { listenHTTP = "1360"; }; }; @@ -17,10 +18,10 @@ stateVersion = 4; - fqdn = "mail.bug.tools"; + fqdn = "mx.bug.tools"; domains = [ "bug.tools" ]; - x509.useACMEHost = "mail.bug.tools"; + x509.useACMEHost = "mx.bug.tools"; fullTextSearch = { enable = true; @@ -33,6 +34,7 @@ hashedPasswordFile = "/home/bug/mailserver/bug.passwd"; aliases = [ "admin@bug.tools" + "security@bug.tools" "google@bug.tools" "apple@bug.tools" "roblox@bug.tools" @@ -44,6 +46,11 @@ "contact@bug.tools" "claude@bug.tools" "rumble@bug.tools" + "bambu@bug.tools" + "soulframe@bug.tools" + "vortex@bug.tools" + "codex@bug.tools" + "tailscale@bug.tools" ]; }; @@ -56,6 +63,43 @@ }; }; }; + + den.tunnels = [ + "mail" + "email" + ]; + + services.roundcube = { + enable = true; + hostName = "mail.bug.tools"; + extraConfig = '' + $config['imap_host'] = 'ssl://localhost:993'; + $config['imap_conn_options'] = [ + 'ssl' => ['verify_peer' => false, 'verify_peer_name' => false] + ]; + $config['smtp_host'] = 'ssl://localhost:465'; + $config['smtp_conn_options'] = [ + 'ssl' => ['verify_peer' => false, 'verify_peer_name' => false] + ]; + $config['smtp_user'] = "%u"; + $config['smtp_pass'] = "%p"; + $config['username_domain'] = 'bug.tools'; + ''; + }; + + services.nginx.enable = true; + + services.nginx.virtualHosts."mail.bug.tools" = { + forceSSL = false; + enableACME = false; + + listen = [ + { + addr = "0.0.0.0"; + port = 8088; + } + ]; + }; }; }; } diff --git a/modules/services/ports.nix b/modules/services/ports.nix index 9abe75f..61c7737 100644 --- a/modules/services/ports.nix +++ b/modules/services/ports.nix @@ -16,6 +16,8 @@ monitor = 61208; matrix = 8008; omnisearch = 8087; + mail = 8088; + email = 8088; }; }; } diff --git a/modules/software/compatibility/nix-ld.nix b/modules/software/compatibility/nix-ld.nix index 8727361..e40d4cc 100644 --- a/modules/software/compatibility/nix-ld.nix +++ b/modules/software/compatibility/nix-ld.nix @@ -1,24 +1,39 @@ -{ ... }: { +{ ... }: +{ den.aspects.nix-ld = { - nixos = { pkgs, options, ... }: { - programs.nix-ld = { - enable = true; + nixos = + { pkgs, options, ... }: + { + programs.nix-ld = { + enable = true; - libraries = options.programs.nix-ld.libraries.default ++ (with pkgs; [ - libxml2 - udev - gcc - egl-wayland - mesa - libglvnd - wayland - libX11 - libXcursor - libXrandr - libXi - libxcb - ]); + libraries = + options.programs.nix-ld.libraries.default + ++ (with pkgs; [ + libxml2 + udev + gcc + egl-wayland + mesa + libglvnd + wayland + libX11 + libXcursor + libXrandr + libXi + libxcb + glibc + vulkan-loader + alsa-lib + pipewire + libpulseaudio + + libz + libGL + + glib + ]); + }; }; - }; }; } diff --git a/modules/software/development/editors.nix b/modules/software/development/editors.nix index a224179..0b2a35b 100644 --- a/modules/software/development/editors.nix +++ b/modules/software/development/editors.nix @@ -3,7 +3,10 @@ nixos = { pkgs, ... }: { users.users.bug.packages = with pkgs; [ zed-editor - arduino-ide + #arduino-ide + + # add to languages later + python314Packages.pyside6 ]; }; }; diff --git a/modules/software/gaming/game-tools.nix b/modules/software/gaming/game-tools.nix index 342e6a0..da39c3d 100644 --- a/modules/software/gaming/game-tools.nix +++ b/modules/software/gaming/game-tools.nix @@ -15,4 +15,4 @@ ]; }; }; -} \ No newline at end of file +} diff --git a/modules/software/gaming/gaming.nix b/modules/software/gaming/gaming.nix index d98dd25..6527614 100644 --- a/modules/software/gaming/gaming.nix +++ b/modules/software/gaming/gaming.nix @@ -1,7 +1,14 @@ -{ den, ... }: { +{ den, ... }: +{ den.aspects.gaming = { - includes = with den.aspects; [ steam roblox polytoria game-tools emulators - #star-citizen - minecraft ]; + includes = with den.aspects; [ + steam + roblox + polytoria + game-tools + emulators + star-citizen + minecraft + ]; }; } diff --git a/modules/software/gaming/minecraft.nix b/modules/software/gaming/minecraft.nix index a6593ea..22510dc 100644 --- a/modules/software/gaming/minecraft.nix +++ b/modules/software/gaming/minecraft.nix @@ -1,119 +1,157 @@ -{ inputs, ... }: { +{ inputs, ... }: +{ den.aspects.minecraft = { - nixos = { pkgs, ... }: let - inherit (pkgs) fetchurl symlinkJoin makeWrapper; + nixos = + { pkgs, ... }: + let + inherit (pkgs) fetchurl symlinkJoin makeWrapper; - base = (inputs.minecraft.legacyPackages.${pkgs.stdenv.hostPlatform.system}.v1_21_11.fabric.client.withConfig [{ - mods = [ - (fetchurl { - name = "fabric-api.jar"; - url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/i5tSkVBH/fabric-api-0.141.3+1.21.11.jar"; - sha256 = "sha256:1xgfpy6zj1nwwfrhr346firm8zw6lw63pl4parvjwrirc6l57i46"; - }) + base = + ( + inputs.minecraft.legacyPackages.${pkgs.stdenv.hostPlatform.system}.v1_21_11.fabric.client.withConfig + [ + { + mods = [ + (fetchurl { + name = "fabric-api.jar"; + url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/i5tSkVBH/fabric-api-0.141.3+1.21.11.jar"; + sha256 = "sha256:1xgfpy6zj1nwwfrhr346firm8zw6lw63pl4parvjwrirc6l57i46"; + }) - (fetchurl { - name = "meteor-client.jar"; - url = "https://meteorclient.com/api/download"; - sha256 = "sha256:0d5l2c41b3d1nadzaavdx8pjciskj6i3h65k4pmhvhz3mg6njwvl"; - }) + /* + (fetchurl { + name = "meteor-client.jar"; + url = "https://meteorclient.com/api/download"; + sha256 = "sha256:190vghnfg3invfy7qpizppxf29qyf5zz1iv5c8bfcq2q5r9mljqq"; + }) - (fetchurl { - name = "baritone.jar"; - url = "https://www.meteorclient.com/api/downloadBaritone"; - sha256 = "sha256:0g5xl90xphqy2c7xwlvjm71dn4l7c35yg8hwf7w4h0bwdfw7m31y"; - }) + (fetchurl { + name = "baritone.jar"; + url = "https://www.meteorclient.com/api/downloadBaritone"; + sha256 = "sha256:0izys47kvqzhnds63kbxiifn8fsd8i9slzkhv91whwxp0183pf80"; + }) + */ - (fetchurl { - name = "modmenu.jar"; - url = "https://cdn.modrinth.com/data/mOgUt4GM/versions/Tyk71iSw/modmenu-17.0.0.jar"; - sha256 = "sha256:0a2i5hl77bcw33m1h51y1dxrk7bbkj8fv0rp8w6y78d43ibwkwlm"; - }) + (fetchurl { + name = "modmenu.jar"; + url = "https://cdn.modrinth.com/data/mOgUt4GM/versions/Tyk71iSw/modmenu-17.0.0.jar"; + sha256 = "sha256:0a2i5hl77bcw33m1h51y1dxrk7bbkj8fv0rp8w6y78d43ibwkwlm"; + }) - (fetchurl { - name = "distant-horizons.jar"; - url = "https://cdn.modrinth.com/data/uCdwusMi/versions/GT3Bm3GN/DistantHorizons-2.4.5-b-1.21.11-fabric-neoforge.jar"; - sha256 = "sha256:0gxwhvji4k0xnzidwrvlndh81r64n6i24v253grbxxamgshwg53n"; - }) + /* + (fetchurl { + name = "distant-horizons.jar"; + url = "https://cdn.modrinth.com/data/uCdwusMi/versions/GT3Bm3GN/DistantHorizons-2.4.5-b-1.21.11-fabric-neoforge.jar"; + sha256 = "sha256:0gxwhvji4k0xnzidwrvlndh81r64n6i24v253grbxxamgshwg53n"; + }) + */ - (fetchurl { - name = "iris.jar"; - url = "https://cdn.modrinth.com/data/YL57xq9U/versions/fDpuVzVr/iris-fabric-1.10.7+mc1.21.11.jar"; - sha256 = "sha256:06fb6r22gnsxnv2w0sgvfnsj6fk3a7jcxls7z14imjc9h6hmviaq"; - }) + (fetchurl { + name = "voxy.jar"; + url = "https://cdn.modrinth.com/data/fxxUqruK/versions/H3w2nVdU/voxy-0.2.16-beta%2B1.21.11.jar"; + sha256 = "sha256:02z1cr7ccdss2ckgha7v89gsq65p2ibrcx8h9q3drxd4ck7jd0kz"; + }) - (fetchurl { - name = "sodium.jar"; - url = "https://cdn.modrinth.com/data/AANobbMI/versions/UddlN6L4/sodium-fabric-0.8.7+mc1.21.11.jar"; - sha256 = "sha256:10rrqnyn8mb14b1k3ks84g6033zkkn94fwvyyflaiajhnf3ax3y0"; - }) + /* + (fetchurl { + name = "nvidium.jar"; + url = "https://cdn.modrinth.com/data/SfMw2IZN/versions/4x9ci9sF/nvidium-0.4.3-beta13-1.21.11.jar"; + sha256 = "sha256:0kdhz92lms2ghmcpzn1gj9rblh958bhic641jpvpkgn0rs70w54r"; + }) + */ - (fetchurl { - name = "lithium.jar"; - url = "https://cdn.modrinth.com/data/gvQqBUqZ/versions/Ow7wA0kG/lithium-fabric-0.21.4+mc1.21.11.jar"; - sha256 = "sha256:12y704i98rf0xb438f72hi0aqhsi35jxwjs2575vsg5lllfw8dai"; - }) + (fetchurl { + name = "iris.jar"; + url = "https://cdn.modrinth.com/data/YL57xq9U/versions/fDpuVzVr/iris-fabric-1.10.7+mc1.21.11.jar"; + sha256 = "sha256:06fb6r22gnsxnv2w0sgvfnsj6fk3a7jcxls7z14imjc9h6hmviaq"; + }) - (fetchurl { - name = "immediatelyfast.jar"; - url = "https://cdn.modrinth.com/data/5ZwdcRci/versions/QwkfUKSj/ImmediatelyFast-Fabric-1.14.2+1.21.11.jar"; - sha256 = "sha256:1248yg69f5d232qn138xlcsdmbs2yj3gdjx9zl53v19c1j326pgb"; - }) + (fetchurl { + name = "sodium.jar"; + url = "https://cdn.modrinth.com/data/AANobbMI/versions/UddlN6L4/sodium-fabric-0.8.7+mc1.21.11.jar"; + sha256 = "sha256:10rrqnyn8mb14b1k3ks84g6033zkkn94fwvyyflaiajhnf3ax3y0"; + }) - (fetchurl { - name = "entity-culling.jar"; - url = "https://cdn.modrinth.com/data/NNAgCjsB/versions/SK12FGQf/entityculling-fabric-1.10.0-mc1.21.11.jar"; - sha256 = "sha256:0iws5ql4k542lr4psrcw9hj5z4zz81218ywnpsl77zj8wnwm4l1d"; - }) + (fetchurl { + name = "lithium.jar"; + url = "https://cdn.modrinth.com/data/gvQqBUqZ/versions/Ow7wA0kG/lithium-fabric-0.21.4+mc1.21.11.jar"; + sha256 = "sha256:12y704i98rf0xb438f72hi0aqhsi35jxwjs2575vsg5lllfw8dai"; + }) - (fetchurl { - name = "ferrite-core.jar"; - url = "https://cdn.modrinth.com/data/uXXizFIs/versions/Ii0gP3D8/ferritecore-8.2.0-fabric.jar"; - sha256 = "sha256:05f7q9jac16syfnahd6r4kx3aqm4i580y623gk6810plrdhdfszp"; - }) + (fetchurl { + name = "immediatelyfast.jar"; + url = "https://cdn.modrinth.com/data/5ZwdcRci/versions/QwkfUKSj/ImmediatelyFast-Fabric-1.14.2+1.21.11.jar"; + sha256 = "sha256:1248yg69f5d232qn138xlcsdmbs2yj3gdjx9zl53v19c1j326pgb"; + }) - (fetchurl { - name = "dynamic-fps.jar"; - url = "https://cdn.modrinth.com/data/LQ3K71Q1/versions/PUe5Asxs/dynamic-fps-3.11.4+minecraft-1.21.11-fabric.jar"; - sha256 = "sha256:13dh0226f6j70ak752fj8s00hmrx175v9607plf4rhia9plqy3kx"; - }) + (fetchurl { + name = "entity-culling.jar"; + url = "https://cdn.modrinth.com/data/NNAgCjsB/versions/SK12FGQf/entityculling-fabric-1.10.0-mc1.21.11.jar"; + sha256 = "sha256:0iws5ql4k542lr4psrcw9hj5z4zz81218ywnpsl77zj8wnwm4l1d"; + }) - # (fetchurl { - # name = "removing-loading-screens.jar"; - # url = "https://cdn.modrinth.com/data/ZP7xHXtw/versions/TCSbq6jC/rrlsFabric-5.1.15+mc.1.21.11.jar"; - # sha256 = "sha256:16dkj8baa6xn47n9alzy4104wz6z4zp719dxwv5wm96g2wkp1z57"; - # }) - ]; - }]).withConfig { - resourcePacks = [ - (fetchurl { - name = "unique-dark.zip"; - url = "https://cdn.modrinth.com/data/BaY1UdGV/versions/UjQJb5zE/Unique%20Dark%20-%20Lite%20-%201.20.2-26.x.zip"; - sha256 = "sha256:19cv5q8pnvxkf96lazg8angbfqwkxag8qsxk31cv487jq99kl621"; - }) - ]; + (fetchurl { + name = "ferrite-core.jar"; + url = "https://cdn.modrinth.com/data/uXXizFIs/versions/Ii0gP3D8/ferritecore-8.2.0-fabric.jar"; + sha256 = "sha256:05f7q9jac16syfnahd6r4kx3aqm4i580y623gk6810plrdhdfszp"; + }) - shaderPacks = [ - (fetchurl { - name = "complementary-shaders.zip"; - url = "https://cdn.modrinth.com/data/HVnmMxH1/versions/836bPNGo/ComplementaryReimagined_r5.7.1.zip"; - sha256 = "sha256:1w33kyknwc0qsi6l0saww906iwi9d3hkn0nm7hnl4bc3lws0d8i4"; - }) - ]; + (fetchurl { + name = "dynamic-fps.jar"; + url = "https://cdn.modrinth.com/data/LQ3K71Q1/versions/PUe5Asxs/dynamic-fps-3.11.4+minecraft-1.21.11-fabric.jar"; + sha256 = "sha256:13dh0226f6j70ak752fj8s00hmrx175v9607plf4rhia9plqy3kx"; + }) - appArgs = [ "--gameDir" "/home/bug/.local/share/minecraft" ]; + # (fetchurl { + # name = "removing-loading-screens.jar"; + # url = "https://cdn.modrinth.com/data/ZP7xHXtw/versions/TCSbq6jC/rrlsFabric-5.1.15+mc.1.21.11.jar"; + # sha256 = "sha256:16dkj8baa6xn47n9alzy4104wz6z4zp719dxwv5wm96g2wkp1z57"; + # }) + ]; + } + ] + ).withConfig + { + resourcePacks = [ + (fetchurl { + name = "unique-dark.zip"; + url = "https://cdn.modrinth.com/data/BaY1UdGV/versions/UjQJb5zE/Unique%20Dark%20-%20Lite%20-%201.20.2-26.x.zip"; + sha256 = "sha256:19cv5q8pnvxkf96lazg8angbfqwkxag8qsxk31cv487jq99kl621"; + }) + + (fetchurl { + name = "catppuccin.zip"; + url = "https://cdn.modrinth.com/data/S3nUv9ws/versions/znzS3kCV/Catppuccin%20Mocha%20Blue.zip"; + sha256 = "sha256:0w56gkyavz0gpffxs1gbp9676bwgvl845h56wc1x3qjba1nm8a5n"; + }) + ]; + + shaderPacks = [ + (fetchurl { + name = "complementary-shaders.zip"; + url = "https://cdn.modrinth.com/data/HVnmMxH1/versions/836bPNGo/ComplementaryReimagined_r5.7.1.zip"; + sha256 = "sha256:1w33kyknwc0qsi6l0saww906iwi9d3hkn0nm7hnl4bc3lws0d8i4"; + }) + ]; + + appArgs = [ + "--gameDir" + "/home/bug/.local/share/minecraft" + ]; + }; + + minecraft = symlinkJoin { + name = "minecraft-wrapped"; + paths = [ base ]; + nativeBuildInputs = [ makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/minecraft \ + --set XDG_DATA_HOME "/home/bug/.local/share/minecraft" + ''; + }; + in + { + users.users.bug.packages = [ minecraft ]; }; - - minecraft = symlinkJoin { - name = "minecraft-wrapped"; - paths = [ base ]; - nativeBuildInputs = [ makeWrapper ]; - postBuild = '' - wrapProgram $out/bin/minecraft \ - --set XDG_DATA_HOME "/home/bug/.local/share/minecraft" - ''; - }; - in { - users.users.bug.packages = [ minecraft ]; - }; }; } diff --git a/modules/software/gaming/star-citizen.nix b/modules/software/gaming/star-citizen.nix index 996df52..79f0dc5 100644 --- a/modules/software/gaming/star-citizen.nix +++ b/modules/software/gaming/star-citizen.nix @@ -6,6 +6,11 @@ environment.systemPackages = with pkgs; [ inputs.nix-citizen.packages.${system}.rsi-launcher ]; + + nix.settings = { + substituters = [ "https://nix-citizen.cachix.org" ]; + trusted-public-keys = [ "nix-citizen.cachix.org-1:lPMkWc2X8XD4/7YPEEwXKKBg+SVbYTVrAaLA2wQTKCo=" ]; + }; }; }; } diff --git a/modules/software/gaming/steam.nix b/modules/software/gaming/steam.nix index 588f784..0835330 100644 --- a/modules/software/gaming/steam.nix +++ b/modules/software/gaming/steam.nix @@ -1,9 +1,12 @@ -{ ... }: { +{ inputs, ... }: { den.aspects.steam = { nixos = { pkgs, ... }: { + nixpkgs.overlays = [ inputs.millennium.overlays.default ]; + programs = { steam = { enable = true; + package = pkgs.millennium-steam; remotePlay.openFirewall = true; dedicatedServer.openFirewall = false; @@ -31,4 +34,4 @@ }; }; }; -} \ No newline at end of file +} diff --git a/modules/software/ollama.nix b/modules/software/ollama.nix index 71eec20..45fc87e 100644 --- a/modules/software/ollama.nix +++ b/modules/software/ollama.nix @@ -1,10 +1,27 @@ { ... }: { - den.aspects.ollama = { - nixos = { - services.ollama = { + den.aspects.llama = { + nixos = { pkgs, ... }: { + services.llama-cpp = { enable = true; + package = pkgs.llama-cpp.override { cudaSupport = true; }; + settings = { + host = "0.0.0.0"; + port = 8080; + ctx-size = 65536; - loadModels = [ "llama3.2:3b" "deepseek-r1:1.5b" "deepseek-r1:8b" "qwen2.5-coder:7b" "qwen3.5:9b" "aratan/qwen3.5-agent-multimodal:9b" "qwen3-coder:30b" ]; + models-preset = (pkgs.formats.ini { }).generate "llama-cpp-models-preset.ini" { + "Qwen3.6-35B-A3B" = { + hf-repo = "unsloth/Qwen3.6-35B-A3B-GGUF"; + hf-file = "Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf"; + alias = "qwen3.6-35b-a3b"; + temp = "1.0"; + top-p = "0.95"; + top-k = "20"; + n-gpu-layers = 80; + ctx-size = 65536; + }; + }; + }; }; }; }; diff --git a/modules/software/social/nixcord.nix b/modules/software/social/nixcord.nix index fb44118..352ec1b 100644 --- a/modules/software/social/nixcord.nix +++ b/modules/software/social/nixcord.nix @@ -1,10 +1,11 @@ { inputs, ... }: { den.aspects.nixcord = { - homeManager = { - imports = [ inputs.nixcord.homeModules.nixcord ]; + nixos = { + imports = [ inputs.nixcord.nixosModules.nixcord ]; programs.nixcord = { enable = true; + user = "bug"; discord.enable = false; vesktop.enable = true; diff --git a/modules/software/utilities/cad.nix b/modules/software/utilities/cad.nix index 48188bc..846c92a 100644 --- a/modules/software/utilities/cad.nix +++ b/modules/software/utilities/cad.nix @@ -4,7 +4,7 @@ users.users.bug.packages = with pkgs; [ blender plasticity - orca-slicer + #orca-slicer ]; }; }; diff --git a/modules/software/utilities/utilities.nix b/modules/software/utilities/utilities.nix index 25e52f1..776bb95 100644 --- a/modules/software/utilities/utilities.nix +++ b/modules/software/utilities/utilities.nix @@ -1,5 +1,5 @@ { den, ... }: { den.aspects.utilities = { - includes = with den.aspects; [ system-utils desktop-utils fonts sshuttle torrent ]; + includes = with den.aspects; [ system-utils desktop-utils fonts sshuttle torrent cad ]; }; } diff --git a/modules/users/bug.nix b/modules/users/bug.nix index ee860de..cb99427 100644 --- a/modules/users/bug.nix +++ b/modules/users/bug.nix @@ -3,9 +3,16 @@ includes = [ den.provides.primary-user (den.provides.user-shell "fish") + den.aspects.stylix + den.aspects.librewolf + den.aspects.catppuccin #den.provides.home-manager ]; + homeManager = { + programs.home-manager.enable = true; + }; + user.extraGroups = [ "networkmanager" "wheel" "input" "audio" "video" "libvirtd" "ydotool" "dialout" ]; }; } diff --git a/resources/nix.ans b/resources/nix.ans old mode 100755 new mode 100644