summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpolwex <polwex@sortug.com>2025-01-26 04:59:01 +0700
committerpolwex <polwex@sortug.com>2025-01-26 04:59:01 +0700
commitfb39334bcdac65a1ff1d95e7e4db2e28eabcc2d6 (patch)
treed33193f5bac097f7cf0642c3041744eff09bdda2
parent44857f873bf0de923b9078b593391d4ff6908acb (diff)
m
-rw-r--r--flake.lock248
-rw-r--r--flake.nix9
-rw-r--r--hosts/cloud/sortug/configuration.nix2
-rw-r--r--hosts/cloud/sortug/nginx.nix47
-rw-r--r--hosts/cloud/span/mail.nix34
-rw-r--r--hosts/linux.nix13
-rw-r--r--hosts/local/fw11/configuration.nix11
-rw-r--r--hosts/local/fw11/keyboard.nix3
-rw-r--r--hosts/nixos.nix4
-rw-r--r--hosts/unfree.nix10
10 files changed, 264 insertions, 117 deletions
diff --git a/flake.lock b/flake.lock
index 2420700..ebc4a96 100644
--- a/flake.lock
+++ b/flake.lock
@@ -64,6 +64,29 @@
"type": "gitlab"
}
},
+ "claude-desktop": {
+ "inputs": {
+ "flake-utils": [
+ "flake-utils"
+ ],
+ "nixpkgs": [
+ "nixpkgs-unfree"
+ ]
+ },
+ "locked": {
+ "lastModified": 1736624144,
+ "narHash": "sha256-wsI1tjN/dQ+yeLurOHwk7RASm/KVqxUXCNd3QSBN3pA=",
+ "owner": "k3d3",
+ "repo": "claude-desktop-linux-flake",
+ "rev": "83fa37319f07bca47278f344b45af1d46ce2feca",
+ "type": "github"
+ },
+ "original": {
+ "owner": "k3d3",
+ "repo": "claude-desktop-linux-flake",
+ "type": "github"
+ }
+ },
"crane": {
"locked": {
"lastModified": 1725409566,
@@ -81,11 +104,11 @@
},
"crane_2": {
"locked": {
- "lastModified": 1727974419,
- "narHash": "sha256-WD0//20h+2/yPGkO88d2nYbb23WMWYvnRyDQ9Dx4UHg=",
+ "lastModified": 1737563566,
+ "narHash": "sha256-GLJvkOG29XCynQm8XWPyykMRqIhxKcBARVu7Ydrz02M=",
"owner": "ipetkov",
"repo": "crane",
- "rev": "37e4f9f0976cb9281cd3f0c70081e5e0ecaee93f",
+ "rev": "849376434956794ebc7a6b487d31aace395392ba",
"type": "github"
},
"original": {
@@ -139,11 +162,11 @@
]
},
"locked": {
- "lastModified": 1736711425,
- "narHash": "sha256-8hKhPQuMtXfJi+4lPvw3FBk/zSJVHeb726Zo0uF1PP8=",
+ "lastModified": 1737038063,
+ "narHash": "sha256-rMEuiK69MDhjz1JgbaeQ9mBDXMJ2/P8vmOYRbFndXsk=",
"owner": "nix-community",
"repo": "disko",
- "rev": "f720e64ec37fa16ebba6354eadf310f81555cc07",
+ "rev": "bf0abfde48f469c256f2b0f481c6281ff04a5db2",
"type": "github"
},
"original": {
@@ -370,11 +393,11 @@
"systems": "systems_3"
},
"locked": {
- "lastModified": 1726560853,
- "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
- "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@@ -402,6 +425,24 @@
}
},
"flake-utils_4": {
+ "inputs": {
+ "systems": "systems_5"
+ },
+ "locked": {
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils_5": {
"locked": {
"lastModified": 1638122382,
"narHash": "sha256-sQzZzAbvKEqN9s0bzWuYmRaA03v40gaJ4+iL1LXjaeI=",
@@ -416,9 +457,9 @@
"type": "github"
}
},
- "flake-utils_5": {
+ "flake-utils_6": {
"inputs": {
- "systems": "systems_5"
+ "systems": "systems_6"
},
"locked": {
"lastModified": 1701680307,
@@ -434,9 +475,9 @@
"type": "github"
}
},
- "flake-utils_6": {
+ "flake-utils_7": {
"inputs": {
- "systems": "systems_6"
+ "systems": "systems_7"
},
"locked": {
"lastModified": 1731533236,
@@ -459,11 +500,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
- "lastModified": 1735882644,
- "narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=",
+ "lastModified": 1737465171,
+ "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix",
"repo": "git-hooks.nix",
- "rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
+ "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github"
},
"original": {
@@ -540,16 +581,16 @@
"helix": {
"inputs": {
"crane": "crane_2",
- "flake-utils": "flake-utils_2",
+ "flake-utils": "flake-utils_3",
"nixpkgs": "nixpkgs_2",
"rust-overlay": "rust-overlay_2"
},
"locked": {
- "lastModified": 1736956623,
- "narHash": "sha256-EiXiH9achp3FT9awsI/Bx5brMjB/RQGZnSdLqD44BaA=",
+ "lastModified": 1737677675,
+ "narHash": "sha256-a6VO9JFCif+4ipdszBcQO772QLmBtj9Ai5iAgi/4+/U=",
"owner": "helix-editor",
"repo": "helix",
- "rev": "3318953bf6b3f7c054e971aec61bf22fd2a05104",
+ "rev": "a63a2ad281b5f651effd29efa4e34f504507d0da",
"type": "github"
},
"original": {
@@ -643,11 +684,11 @@
"rust-overlay": "rust-overlay_3"
},
"locked": {
- "lastModified": 1734994463,
- "narHash": "sha256-S9MgfQjNt4J3I7obdLOVY23h+Yl/hnyibwGfOl+1uOE=",
+ "lastModified": 1737639419,
+ "narHash": "sha256-AEEDktApTEZ5PZXNDkry2YV2k6t0dTgLPEmAZbnigXU=",
"owner": "nix-community",
"repo": "lanzaboote",
- "rev": "93e6f0d77548be8757c11ebda5c4235ef4f3bc67",
+ "rev": "a65905a09e2c43ff63be8c0e86a93712361f871e",
"type": "github"
},
"original": {
@@ -658,15 +699,15 @@
},
"lib-aggregate": {
"inputs": {
- "flake-utils": "flake-utils_6",
+ "flake-utils": "flake-utils_7",
"nixpkgs-lib": "nixpkgs-lib_3"
},
"locked": {
- "lastModified": 1736684024,
- "narHash": "sha256-FYJ4iFD/2L1CFN/aHjI8HxxSxuPNy4OvW+VCBh41Lzk=",
+ "lastModified": 1737288694,
+ "narHash": "sha256-e9MsdkHidgepQpF0InyRSpeD6YujQcaB0uUzeXVvW+I=",
"owner": "nix-community",
"repo": "lib-aggregate",
- "rev": "917882a0186d7731a61ede986c701e272f744750",
+ "rev": "e07594822638004d96f100febbe947189c42e8a9",
"type": "github"
},
"original": {
@@ -677,7 +718,7 @@
},
"microvm": {
"inputs": {
- "flake-utils": "flake-utils_3",
+ "flake-utils": "flake-utils_4",
"nixpkgs": "nixpkgs_6",
"spectrum": "spectrum"
},
@@ -702,11 +743,11 @@
]
},
"locked": {
- "lastModified": 1736819234,
- "narHash": "sha256-deQVtIH4UJueELJqluAICUtX7OosD9paTP+5FgbiSwI=",
+ "lastModified": 1737504076,
+ "narHash": "sha256-/B4XJnzYU/6K1ZZOBIgsa3K4pqDJrnC2579c44c+4rI=",
"owner": "lnl7",
"repo": "nix-darwin",
- "rev": "bd921223ba7cdac346477d7ea5204d6f4736fcc6",
+ "rev": "65cc1fa8e36ceff067daf6cfb142331f02f524d3",
"type": "github"
},
"original": {
@@ -719,7 +760,7 @@
"inputs": {
"flake-parts": "flake-parts_4",
"nix-github-actions": "nix-github-actions",
- "nixpkgs": "nixpkgs_11",
+ "nixpkgs": "nixpkgs_12",
"treefmt-nix": "treefmt-nix"
},
"locked": {
@@ -743,11 +784,11 @@
"umu": "umu"
},
"locked": {
- "lastModified": 1736818546,
- "narHash": "sha256-rehuAIJzjQ5/vBar7xvPzHzqrxcHHDBHqqhsDZHu55M=",
+ "lastModified": 1737596278,
+ "narHash": "sha256-OEdGZ6TTHXGB791VvhErq4Nro54NQzzDAO0G0WfK2kw=",
"owner": "fufexan",
"repo": "nix-gaming",
- "rev": "1a9c52cd7517137c9cc74d4b73dfd63678e17c5f",
+ "rev": "10f37dc9be5d79fec72b46b670ece4783a83a13a",
"type": "github"
},
"original": {
@@ -810,7 +851,7 @@
},
"nixos-cn": {
"inputs": {
- "flake-utils": "flake-utils_4",
+ "flake-utils": "flake-utils_5",
"nixpkgs": [
"nixpkgs"
]
@@ -837,11 +878,11 @@
]
},
"locked": {
- "lastModified": 1736730523,
- "narHash": "sha256-mvTZ7fLKA6ggGnA8GZwcXV57EvVReRTCfi26xc08Q3g=",
+ "lastModified": 1737057290,
+ "narHash": "sha256-3Pe0yKlCc7EOeq1X/aJVDH0CtNL+tIBm49vpepwL1MQ=",
"owner": "nix-community",
"repo": "nixos-generators",
- "rev": "74b8e31dd709760c86eed16b6c1d0b88d7360937",
+ "rev": "d002ce9b6e7eb467cd1c6bb9aef9c35d191b5453",
"type": "github"
},
"original": {
@@ -874,11 +915,11 @@
},
"nixos-hardware": {
"locked": {
- "lastModified": 1736977469,
- "narHash": "sha256-iE8tO5ik9EqLA7r/+6vRAV2d0b3HpPZjF4IUPRhw964=",
+ "lastModified": 1737590910,
+ "narHash": "sha256-qM/y6Dtpu9Wmf5HqeZajQdn+cS0aljdYQQQnrvx+LJE=",
"owner": "nixos",
"repo": "nixos-hardware",
- "rev": "91c1069cbab1fe3fda523bba05627200dca3f54d",
+ "rev": "9368027715d8dde4b84c79c374948b5306fdd2db",
"type": "github"
},
"original": {
@@ -898,11 +939,11 @@
"nixpkgs-24_11": "nixpkgs-24_11"
},
"locked": {
- "lastModified": 1735230346,
- "narHash": "sha256-zgR8NTiNDPVNrfaiOlB9yHSmCqFDo7Ks2IavaJ2dZo4=",
+ "lastModified": 1737201600,
+ "narHash": "sha256-JBh5+g8oQteQdQqbO07dGHBRQo/NGI61JPlTjdfQ1pk=",
"owner": "simple-nixos-mailserver",
"repo": "nixos-mailserver",
- "rev": "dc0569066e79ae96184541da6fa28f35a33fbf7b",
+ "rev": "ade37b2765032f83d2d4bd50b6204a40a4c05eb4",
"type": "gitlab"
},
"original": {
@@ -913,7 +954,7 @@
},
"nixos-rk3588": {
"inputs": {
- "flake-utils": "flake-utils_5",
+ "flake-utils": "flake-utils_6",
"nixos-generators": "nixos-generators_2",
"nixpkgs": "nixpkgs_8",
"pre-commit-hooks": "pre-commit-hooks"
@@ -1025,11 +1066,11 @@
},
"nixpkgs-lib_3": {
"locked": {
- "lastModified": 1736643958,
- "narHash": "sha256-tmpqTSWVRJVhpvfSN9KXBvKEXplrwKnSZNAoNPf/S/s=",
+ "lastModified": 1737248590,
+ "narHash": "sha256-6SWtDeYJS3bS7QyJrGKyd6FpROEN0JCMgakSX8yPbyA=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
- "rev": "1418bc28a52126761c02dd3d89b2d8ca0f521181",
+ "rev": "977f49fd8cf854416f82987696784717acd6e817",
"type": "github"
},
"original": {
@@ -1070,6 +1111,25 @@
"type": "github"
}
},
+ "nixpkgs-unfree": {
+ "inputs": {
+ "nixpkgs": "nixpkgs_11"
+ },
+ "locked": {
+ "lastModified": 1737555756,
+ "narHash": "sha256-3LUuooq/dlkRpm+1+i1iu/AKLci9iDsICdLHXroHoy4=",
+ "owner": "numtide",
+ "repo": "nixpkgs-unfree",
+ "rev": "5da80ccf5e3ea5a5d5fa429bf499f17c40dc3b74",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "ref": "nixos-unstable",
+ "repo": "nixpkgs-unfree",
+ "type": "github"
+ }
+ },
"nixpkgs-wayland": {
"inputs": {
"flake-compat": "flake-compat_5",
@@ -1080,11 +1140,11 @@
]
},
"locked": {
- "lastModified": 1736965550,
- "narHash": "sha256-u34e02DgidNBbJ2ZPUWlNZeqQTo7tCGT8LN9dZphNAY=",
+ "lastModified": 1737481114,
+ "narHash": "sha256-SrpaK5R4nMqq6ZDNm/G2Bj53xHEsouz9w7ZiMDqb0Bc=",
"owner": "nix-community",
"repo": "nixpkgs-wayland",
- "rev": "8f3a889a1bb60d58f42fc671d8a0b73496ede51c",
+ "rev": "c52a529dd1585cad4ccd5951b10ba27366aa3cee",
"type": "github"
},
"original": {
@@ -1095,11 +1155,11 @@
},
"nixpkgs_10": {
"locked": {
- "lastModified": 1736798957,
- "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=",
+ "lastModified": 1737632463,
+ "narHash": "sha256-38J9QfeGSej341ouwzqf77WIHAScihAKCt8PQJ+NH28=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3",
+ "rev": "0aa475546ed21629c4f5bbf90e38c846a99ec9e9",
"type": "github"
},
"original": {
@@ -1111,6 +1171,20 @@
},
"nixpkgs_11": {
"locked": {
+ "lastModified": 1737469691,
+ "narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab",
+ "type": "github"
+ },
+ "original": {
+ "id": "nixpkgs",
+ "type": "indirect"
+ }
+ },
+ "nixpkgs_12": {
+ "locked": {
"lastModified": 1736042175,
"narHash": "sha256-jdd5UWtLVrNEW8K6u5sy5upNAFmF3S4Y+OIeToqJ1X8=",
"owner": "NixOS",
@@ -1125,13 +1199,13 @@
"type": "github"
}
},
- "nixpkgs_12": {
+ "nixpkgs_13": {
"locked": {
- "lastModified": 1736798957,
- "narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=",
+ "lastModified": 1737632463,
+ "narHash": "sha256-38J9QfeGSej341ouwzqf77WIHAScihAKCt8PQJ+NH28=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3",
+ "rev": "0aa475546ed21629c4f5bbf90e38c846a99ec9e9",
"type": "github"
},
"original": {
@@ -1141,7 +1215,7 @@
"type": "github"
}
},
- "nixpkgs_13": {
+ "nixpkgs_14": {
"locked": {
"lastModified": 1702151865,
"narHash": "sha256-9VAt19t6yQa7pHZLDbil/QctAgVsA66DLnzdRGqDisg=",
@@ -1159,11 +1233,11 @@
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1728018373,
- "narHash": "sha256-NOiTvBbRLIOe5F6RbHaAh6++BNjsb149fGZd1T4+KBg=",
+ "lastModified": 1737469691,
+ "narHash": "sha256-nmKOgAU48S41dTPIXAq0AHZSehWUn6ZPrUKijHAMmIk=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "bc947f541ae55e999ffdb4013441347d83b00feb",
+ "rev": "9e4d5190a9482a1fb9d18adf0bdb83c6e506eaab",
"type": "github"
},
"original": {
@@ -1239,11 +1313,11 @@
},
"nixpkgs_7": {
"locked": {
- "lastModified": 1736420959,
- "narHash": "sha256-dMGNa5UwdtowEqQac+Dr0d2tFO/60ckVgdhZU9q2E2o=",
+ "lastModified": 1737003892,
+ "narHash": "sha256-RCzJE9wKByLCXmRBp+z8LK9EgdW+K+W/DXnJS4S/NVo=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "32af3611f6f05655ca166a0b1f47b57c762b5192",
+ "rev": "ae06b9c2d83cb5c8b12d7d0e32692e93d1379713",
"type": "github"
},
"original": {
@@ -1288,15 +1362,15 @@
"nur": {
"inputs": {
"flake-parts": "flake-parts_5",
- "nixpkgs": "nixpkgs_12",
+ "nixpkgs": "nixpkgs_13",
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
- "lastModified": 1736974055,
- "narHash": "sha256-ordp2Xy3qJrqSZGEvmydloKBjlITb14+E2z2tF3kttg=",
+ "lastModified": 1737719148,
+ "narHash": "sha256-ycZZghpy+/Hpnzaw252ovAelilVo8/Kz6ah/l9DfdIQ=",
"owner": "nix-community",
"repo": "NUR",
- "rev": "4dff81fd8603cf7592a7b4dedc0ae7952d288e82",
+ "rev": "44b2880e3f1b5a877b74c3a893dfa03dc1caf238",
"type": "github"
},
"original": {
@@ -1384,8 +1458,10 @@
"root": {
"inputs": {
"agenix": "agenix",
+ "claude-desktop": "claude-desktop",
"disko": "disko",
"flake-parts": "flake-parts",
+ "flake-utils": "flake-utils_2",
"git-hooks": "git-hooks",
"helix": "helix",
"homix": "homix",
@@ -1404,6 +1480,7 @@
"nixpkgs": "nixpkgs_10",
"nixpkgs-darwin": "nixpkgs-darwin",
"nixpkgs-stable": "nixpkgs-stable_2",
+ "nixpkgs-unfree": "nixpkgs-unfree",
"nixpkgs-wayland": "nixpkgs-wayland",
"nur": "nur",
"polybar-themes": "polybar-themes",
@@ -1440,11 +1517,11 @@
]
},
"locked": {
- "lastModified": 1728268235,
- "narHash": "sha256-lJMFnMO4maJuNO6PQ5fZesrTmglze3UFTTBuKGwR1Nw=",
+ "lastModified": 1737599167,
+ "narHash": "sha256-S2rHCrQWCDVp63XxL/AQbGr1g5M8Zx14C7Jooa4oM8o=",
"owner": "oxalica",
"repo": "rust-overlay",
- "rev": "25685cc2c7054efc31351c172ae77b21814f2d42",
+ "rev": "38374302ae9edf819eac666d1f276d62c712dd06",
"type": "github"
},
"original": {
@@ -1580,6 +1657,21 @@
"type": "github"
}
},
+ "systems_7": {
+ "locked": {
+ "lastModified": 1681028828,
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+ "owner": "nix-systems",
+ "repo": "default",
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-systems",
+ "repo": "default",
+ "type": "github"
+ }
+ },
"treefmt-nix": {
"inputs": {
"nixpkgs": [
@@ -1632,11 +1724,11 @@
},
"locked": {
"dir": "packaging/nix",
- "lastModified": 1736534482,
- "narHash": "sha256-aHDxVKA4GgohIPCDUX9zMF4UnLQR7U6Dj9mOmhZYSoc=",
+ "lastModified": 1737161836,
+ "narHash": "sha256-v20q0DeglyrsIAbqwqOSxdzZ4JhEWtU9muWPlPz3Few=",
"ref": "refs/heads/main",
- "rev": "e9cb4d764013d4c8c3d1166f59581da8f56a3d83",
- "revCount": 896,
+ "rev": "3fd4ef90e8427cfc74d94914654a288912edb2cf",
+ "revCount": 901,
"submodules": true,
"type": "git",
"url": "https://github.com/Open-Wine-Components/umu-launcher/?dir=packaging/nix"
@@ -1671,7 +1763,7 @@
},
"wrapper-manager": {
"inputs": {
- "nixpkgs": "nixpkgs_13"
+ "nixpkgs": "nixpkgs_14"
},
"locked": {
"lastModified": 1724503599,
diff --git a/flake.nix b/flake.nix
index 2cbbf35..b63cd57 100644
--- a/flake.nix
+++ b/flake.nix
@@ -5,10 +5,13 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05";
nixpkgs-darwin.url = "github:nixos/nixpkgs/nixpkgs-24.05-darwin";
+ nixpkgs-unfree.url = "github:numtide/nixpkgs-unfree?ref=nixos-unstable";
nix-darwin = {
url = "github:lnl7/nix-darwin";
inputs.nixpkgs.follows = "nixpkgs-darwin";
};
+ flake-utils.url = "github:numtide/flake-utils";
+
nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
nixos-hardware.url = "github:nixos/nixos-hardware/master";
#secure book
@@ -75,6 +78,12 @@
flake = false;
};
+ claude-desktop = {
+ url = "github:k3d3/claude-desktop-linux-flake";
+ inputs.nixpkgs.follows = "nixpkgs-unfree";
+ inputs.flake-utils.follows = "flake-utils";
+ };
+
########### secrets #################
# mysecrets = {
# url = "git+ssh://git@git.sortug.com/polwex/nix-secrets.git";
diff --git a/hosts/cloud/sortug/configuration.nix b/hosts/cloud/sortug/configuration.nix
index 308f010..ee15cd5 100644
--- a/hosts/cloud/sortug/configuration.nix
+++ b/hosts/cloud/sortug/configuration.nix
@@ -1,6 +1,7 @@
{
modulesPath,
lib,
+ pkgs,
...
}: {
imports =
@@ -24,6 +25,7 @@
loader.grub.enable = true;
# loader.grub.device = "/dev/sda";
};
+ environment.systemPackages = [pkgs.devenv];
services.do-agent.enable = true;
networking = {
diff --git a/hosts/cloud/sortug/nginx.nix b/hosts/cloud/sortug/nginx.nix
index b075c22..78e93b8 100644
--- a/hosts/cloud/sortug/nginx.nix
+++ b/hosts/cloud/sortug/nginx.nix
@@ -26,19 +26,30 @@
virtualHosts."ai.sortug.com" = {
enableACME = true;
forceSSL = true;
- locations."/" = {
+ locations."/stt" = {
proxyPass = "http://127.0.0.1:8000";
- proxyWebsockets = true; # needed if you need to use WebSocket
+ extraConfig = ''
+ proxy_connect_timeout 300s;
+ proxy_send_timeout 300s;
+ proxy_read_timeout 300s;
+ send_timeout 300s;
+ '';
};
- };
- virtualHosts."kino.sortug.com" = {
- enableACME = true;
- forceSSL = true;
- locations."/" = {
- proxyPass = "http://127.0.0.1:8095";
- proxyWebsockets = true; # needed if you need to use WebSocket
+ locations."/tts" = {
+ proxyPass = "http://127.0.0.1:8001";
+ };
+ locations."/embed" = {
+ proxyPass = "http://127.0.0.1:8002";
};
};
+ # virtualHosts."kino.sortug.com" = {
+ # enableACME = true;
+ # forceSSL = true;
+ # locations."/" = {
+ # proxyPass = "http://127.0.0.1:8095";
+ # proxyWebsockets = true; # needed if you need to use WebSocket
+ # };
+ # };
virtualHosts."u.sortug.com" = {
enableACME = true;
forceSSL = true;
@@ -65,6 +76,24 @@
proxy_cache off;
'';
};
+ virtualHosts."line.sortug.com" = {
+ enableACME = true;
+ forceSSL = true;
+ locations."/" = {
+ proxyPass = "http://127.0.0.1:8924";
+ # proxyWebsockets = true; # needed if you need to use WebSocket
+ extraConfig = ''
+ proxy_set_header Host $host;
+ proxy_set_header Forwarded $proxy_add_x_forwarded_for;
+ '';
+ };
+ extraConfig = ''
+ proxy_http_version 1.1;
+ chunked_transfer_encoding off;
+ proxy_buffering off;
+ proxy_cache off;
+ '';
+ };
virtualHosts."ntfy.sortug.com" = {
enableACME = true;
forceSSL = true;
diff --git a/hosts/cloud/span/mail.nix b/hosts/cloud/span/mail.nix
index d020fec..9cc44a7 100644
--- a/hosts/cloud/span/mail.nix
+++ b/hosts/cloud/span/mail.nix
@@ -1,4 +1,8 @@
-{ config, pkgs, ... }: {
+{
+ config,
+ pkgs,
+ ...
+}: {
imports = [
(builtins.fetchTarball {
url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/nixos-23.11/nixos-mailserver-nixos-23.11.tar.gz";
@@ -9,11 +13,11 @@
})
];
- services.dovecot2.sieve.extensions = [ "fileinto" ];
+ services.dovecot2.sieve.extensions = ["fileinto"];
mailserver = {
enable = true;
fqdn = "mail.spandrell.ch";
- domains = [ "spandrell.ch" ];
+ domains = ["spandrell.ch"];
# A list of all login accounts. To create the password hashes, use
# nix-shell -p mkpasswd --run 'mkpasswd -sm bcrypt'
@@ -28,7 +32,7 @@
hashedPasswordFile = "/home/span/mail.key";
};
"lol@spandrell.ch" = {
- hashedPasswordFile = "/home/span/mail.key";
+ hashedPasswordFile = "/home/span/mail2.key";
};
"sub@spandrell.ch" = {
hashedPasswordFile = "/home/span/mail.key";
@@ -51,17 +55,17 @@
security.acme.acceptTerms = true;
security.acme.defaults.email = "security@spandrell.ch";
services.roundcube = {
- enable = true;
- # this is the url of the vhost, not necessarily the same as the fqdn of
- # the mailserver
- hostName = "mail.spandrell.ch";
- extraConfig = ''
- # starttls needed for authentication, so the fqdn required to match
- # the certificate
- $config['smtp_server'] = "tls://${config.mailserver.fqdn}";
- $config['smtp_user'] = "%u";
- $config['smtp_pass'] = "%p";
- '';
+ enable = true;
+ # this is the url of the vhost, not necessarily the same as the fqdn of
+ # the mailserver
+ hostName = "mail.spandrell.ch";
+ extraConfig = ''
+ # starttls needed for authentication, so the fqdn required to match
+ # the certificate
+ $config['smtp_server'] = "tls://${config.mailserver.fqdn}";
+ $config['smtp_user'] = "%u";
+ $config['smtp_pass'] = "%p";
+ '';
};
services.nginx.enable = true;
}
diff --git a/hosts/linux.nix b/hosts/linux.nix
index 95049ff..70ff0c9 100644
--- a/hosts/linux.nix
+++ b/hosts/linux.nix
@@ -4,7 +4,6 @@
./users.nix
./editors.nix
./pkgs.nix
- ./unfree.nix
./network.nix
# ./yubikey.nix
];
@@ -35,10 +34,10 @@
};
## Bluetooth
-# hardware.enableAllFirmware = true;
-# hardware.bluetooth.enable = true;
-# hardware.bluetooth.settings = {General = {Experimental = true;};};
-# hardware.bluetooth.disabledPlugins = ["sap"];
-# hardware.bluetooth.package = pkgs.bluez;
-# services.blueman.enable = true;
+ # hardware.enableAllFirmware = true;
+ # hardware.bluetooth.enable = true;
+ # hardware.bluetooth.settings = {General = {Experimental = true;};};
+ # hardware.bluetooth.disabledPlugins = ["sap"];
+ # hardware.bluetooth.package = pkgs.bluez;
+ # services.blueman.enable = true;
}
diff --git a/hosts/local/fw11/configuration.nix b/hosts/local/fw11/configuration.nix
index 8574868..ad8fffd 100644
--- a/hosts/local/fw11/configuration.nix
+++ b/hosts/local/fw11/configuration.nix
@@ -22,9 +22,10 @@ in {
# Include the results of the hardware scan.
../../base.nix
../../linux.nix
- ../wayland.nix
- ../../syncthing.nix
- ./keyboard.nix
+ # ../../syncthing.nix
+ ../../unfree.nix
+ # ../wayland.nix
+ # ./keyboard.nix
# ../android.nix
];
@@ -44,8 +45,8 @@ in {
boot.loader.efi.canTouchEfiVariables = true;
# boot.supportedFilesystems = ["ntfs"];
# boot.kernelPackages = lib.mkForce unfreePkgs.linuxKernel.packages.linux_xanmod_latest;
- boot.kernelPackages = pkgs.linuxPackages_latest;
- # boot.kernelPackages = pkgs.linuxPackages_6_11;
+ # boot.kernelPackages = pkgs.linuxPackages_latest;
+ boot.kernelPackages = pkgs.linuxPackages_6_12;
services.fprintd.enable = true;
networking = {
diff --git a/hosts/local/fw11/keyboard.nix b/hosts/local/fw11/keyboard.nix
index 7aef3c4..ce875dd 100644
--- a/hosts/local/fw11/keyboard.nix
+++ b/hosts/local/fw11/keyboard.nix
@@ -34,7 +34,8 @@
config = builtins.readFile ./framework.kbd;
};
usbThinkpad = {
- device = "/dev/input/by-id/usb-Lenovo_ThinkPad_Compact_USB_Keyboard_with_TrackPoint-event-kbd";
+ # device = "/dev/input/by-id/usb-Lenovo_ThinkPad_Compact_USB_Keyboard_with_TrackPoint-event-kbd";
+ device = "/dev/input/by-id/usb-Lenovo_TrackPoint_Keyboard_II-event-kbd";
config = builtins.readFile ./thinkpad.kbd;
};
};
diff --git a/hosts/nixos.nix b/hosts/nixos.nix
index e85a2a9..1b7b55c 100644
--- a/hosts/nixos.nix
+++ b/hosts/nixos.nix
@@ -2,7 +2,9 @@
mkNixosSystem = system: path:
inputs.nixpkgs.lib.nixosSystem {
inherit system;
- specialArgs = {inherit inputs;};
+ specialArgs = {
+ inherit inputs;
+ };
modules = import (./. + "/${path}") inputs;
};
in {
diff --git a/hosts/unfree.nix b/hosts/unfree.nix
index d3e889d..73c4a8a 100644
--- a/hosts/unfree.nix
+++ b/hosts/unfree.nix
@@ -1,9 +1,16 @@
-{pkgs, ...}: {
+{
+ pkgs,
+ inputs,
+ ...
+}: {
# allow unfree
nixpkgs.config = {
allowUnfree = true;
+ allowUnfreePredicate = _: true;
chromium.enableWideVine = true;
};
+
+ # https://stackoverflow.com/questions/77585228/how-to-allow-unfree-packages-in-nix-for-each-situation-nixos-nix-nix-wit
environment.systemPackages = with pkgs; [
# opera
spotify
@@ -15,6 +22,7 @@
steamcmd
steam-run
protonup-qt
+ # inputs.claude-desktop.packages.x86_64-linux.claude-desktop
];
# fucking vscode requires this for github copilot