diff --git a/README.md b/README.md index de74ea0..dd2170c 100644 --- a/README.md +++ b/README.md @@ -12,3 +12,9 @@ The specific config from "hosts" can be installed using the following command. L ```sh sudo nixos-install --option download-speed 4000 --flake .# ``` + +## RPi Image generation +```sh +nix build .#nixosConfigurations.eustachius.config.system.build.sdImage +sudo dd if=./result/sd-image/.img of=/dev/ bs=1M status=progress +``` diff --git a/flake.lock b/flake.lock index 490b698..f95e271 100644 --- a/flake.lock +++ b/flake.lock @@ -8,11 +8,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1714329018, - "narHash": "sha256-q0vsfqjYB0Phx4HoykT2HwRZDuxFwaRI9SQeEDbqZkU=", + "lastModified": 1722825873, + "narHash": "sha256-bFNXkD+s9NuidZePiJAjjFUnsMOwXb7hEZ4JEDdSALw=", "owner": "hercules-ci", "repo": "arion", - "rev": "efa008e12f590eea1a3e7f2088877dc9bdcc54b7", + "rev": "90bc85532767c785245f5c1e29ebfecb941cf8c9", "type": "github" }, "original": { @@ -31,11 +31,11 @@ "pre-commit": "pre-commit" }, "locked": { - "lastModified": 1708283120, - "narHash": "sha256-IgJe5xhssW199zGQq4Q81stGdVDJH7nFHm3yu62I75E=", + "lastModified": 1721720317, + "narHash": "sha256-KH0ILX8EGa/A4Bgc6DtsbviG8qaLrzDDV1m1bIXJ+pw=", "owner": "dwarfmaster", "repo": "arkenfox-nixos", - "rev": "05e7e0996493f47bbc15228895c4e31ce24616f0", + "rev": "92c9a287b7b98198c3ba5cdfc90218402e49c4b3", "type": "github" }, "original": { @@ -68,11 +68,11 @@ ] }, "locked": { - "lastModified": 1711407199, - "narHash": "sha256-A/nB4j3JHL51ztlMQdfKw6y8tUJJzai3bLsZUEEaBxY=", + "lastModified": 1721322122, + "narHash": "sha256-a0G1NvyXGzdwgu6e1HQpmK5R5yLsfxeBe07nNDyYd+g=", "owner": "ipetkov", "repo": "crane", - "rev": "7e468a455506f2e65550e08dfd45092f0857a009", + "rev": "8a68b987c476a33e90f203f0927614a75c3f47ea", "type": "github" }, "original": { @@ -83,15 +83,15 @@ }, "devshell": { "inputs": { - "flake-utils": "flake-utils_4", + "flake-utils": "flake-utils_3", "nixpkgs": "nixpkgs_10" }, "locked": { - "lastModified": 1711099426, - "narHash": "sha256-HzpgM/wc3aqpnHJJ2oDqPBkNsqWbW0WfWUO8lKu8nGk=", + "lastModified": 1717408969, + "narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=", "owner": "numtide", "repo": "devshell", - "rev": "2d45b54ca4a183f2fdcf4b19c895b64fbf620ee8", + "rev": "1ebbe68d57457c8cae98145410b164b5477761f4", "type": "github" }, "original": { @@ -107,11 +107,11 @@ ] }, "locked": { - "lastModified": 1714405407, - "narHash": "sha256-h3pOvHCXkSdp1KOZqtkQmHgkR7VaOJXDhqhumk7sZLY=", + "lastModified": 1723080788, + "narHash": "sha256-C5LbM5VMdcolt9zHeLQ0bYMRjUL+N+AL5pK7/tVTdes=", "owner": "nix-community", "repo": "disko", - "rev": "5eaf747af38dd272e1ab28a8ec4bd972424b07cf", + "rev": "ffc1f95f6c28e1c6d1e587b51a2147027a3e45ed", "type": "github" }, "original": { @@ -122,18 +122,18 @@ }, "firefox-addons": { "inputs": { - "flake-utils": "flake-utils_3", + "flake-utils": "flake-utils_2", "nixpkgs": [ "nixpkgs" ] }, "locked": { "dir": "pkgs/firefox-addons", - "lastModified": 1714536206, - "narHash": "sha256-pnE2Px1VlcnWDc92TUmaILRgrWBbetKhpnMu5DfntbM=", + "lastModified": 1723176196, + "narHash": "sha256-8FWJ0kJN6yin5Z9BhtPlVaRzj9ljuUdaBT2i/bquJO4=", "owner": "rycee", "repo": "nur-expressions", - "rev": "7772d48f5a728af51cd8ac85be5b124e2da0feac", + "rev": "ce877fc7a74fb1abfedcdb4f78e67d930a0841c8", "type": "gitlab" }, "original": { @@ -183,11 +183,11 @@ ] }, "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", + "lastModified": 1722555600, + "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", + "rev": "8471fe90ad337a8074e957b69ca4d0089218391d", "type": "github" }, "original": { @@ -205,11 +205,11 @@ ] }, "locked": { - "lastModified": 1709336216, - "narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=", + "lastModified": 1712014858, + "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2", + "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", "type": "github" }, "original": { @@ -258,11 +258,11 @@ "nixpkgs-lib": "nixpkgs-lib_4" }, "locked": { - "lastModified": 1709336216, - "narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=", + "lastModified": 1719994518, + "narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2", + "rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7", "type": "github" }, "original": { @@ -276,11 +276,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -290,24 +290,6 @@ } }, "flake-utils_2": { - "inputs": { - "systems": "systems_2" - }, - "locked": { - "lastModified": 1701680307, - "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_3": { "locked": { "lastModified": 1629284811, "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=", @@ -322,9 +304,9 @@ "type": "github" } }, - "flake-utils_4": { + "flake-utils_3": { "inputs": { - "systems": "systems_6" + "systems": "systems_5" }, "locked": { "lastModified": 1701680307, @@ -346,11 +328,11 @@ "utils": "utils" }, "locked": { - "lastModified": 1707326266, - "narHash": "sha256-vRVih6iltuyLdj305Pj236BfhzFaOkAbHg3r5VsFdxs=", + "lastModified": 1722178161, + "narHash": "sha256-9Nmg+1ngRCsKMJXN4JWFzg4SLTj1iJfakxiOsF48rZw=", "owner": "GermanBread", "repo": "declarative-flatpak", - "rev": "efe7897ddcfbca085fba0690b3094e7f8e8911dd", + "rev": "cbabea429cd7d659041e5338e869a8e70f59fa74", "type": "github" }, "original": { @@ -369,11 +351,11 @@ ] }, "locked": { - "lastModified": 1703887061, - "narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=", + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", "owner": "hercules-ci", "repo": "gitignore.nix", - "rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", "type": "github" }, "original": { @@ -384,11 +366,11 @@ }, "hardware": { "locked": { - "lastModified": 1714465198, - "narHash": "sha256-ySkEJvS0gPz2UhXm0H3P181T8fUxvDVcoUyGn0Kc5AI=", + "lastModified": 1723149858, + "narHash": "sha256-3u51s7jdhavmEL1ggtd8wqrTH2clTy5yaZmhLvAXTqc=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "68d680c1b7c0e67a9b2144d6776583ee83664ef4", + "rev": "107bb46eef1f05e86fc485ee8af9b637e5157988", "type": "github" }, "original": { @@ -417,7 +399,7 @@ "inputs": { "flake-parts": "flake-parts_3", "nixpkgs": "nixpkgs_4", - "systems": "systems_4", + "systems": "systems_3", "treefmt-nix": "treefmt-nix" }, "locked": { @@ -444,11 +426,11 @@ ] }, "locked": { - "lastModified": 1710478346, - "narHash": "sha256-Xjf8BdnQG0tLhPMlqQdwCIjOp7Teox0DP3N/jjyiGM4=", + "lastModified": 1719226092, + "narHash": "sha256-YNkUMcCUCpnULp40g+svYsaH1RbSEj6s4WdZY/SHe38=", "owner": "hercules-ci", "repo": "hercules-ci-effects", - "rev": "64e7763d72c1e4c1e5e6472640615b6ae2d40fbf", + "rev": "11e4b8dc112e2f485d7c97e1cee77f9958f498f5", "type": "github" }, "original": { @@ -464,16 +446,16 @@ ] }, "locked": { - "lastModified": 1714043624, - "narHash": "sha256-Xn2r0Jv95TswvPlvamCC46wwNo8ALjRCMBJbGykdhcM=", + "lastModified": 1720042825, + "narHash": "sha256-A0vrUB6x82/jvf17qPCpxaM+ulJnD8YZwH9Ci0BsAzE=", "owner": "nix-community", "repo": "home-manager", - "rev": "86853e31dc1b62c6eeed11c667e8cdd0285d4411", + "rev": "e1391fb22e18a36f57e6999c7a9f966dc80ac073", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-23.11", + "ref": "release-24.05", "repo": "home-manager", "type": "github" } @@ -483,11 +465,11 @@ "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1711554349, - "narHash": "sha256-RypwcWEIFePBI0Hubfj4chanbM/G2yzJzC6wgz+dmS4=", + "lastModified": 1721135958, + "narHash": "sha256-H548rpPMsn25LDKn1PCFmPxmWlClJJGnvdzImHkqjuY=", "owner": "nix-community", "repo": "home-manager", - "rev": "179f6acaf7c068c7870542cdae72afec9427a5b0", + "rev": "afd2021bedff2de92dfce0e257a3d03ae65c603d", "type": "github" }, "original": { @@ -498,7 +480,11 @@ }, "hyprcursor": { "inputs": { - "hyprlang": "hyprlang", + "hyprlang": [ + "xremap", + "hyprland", + "hyprlang" + ], "nixpkgs": [ "xremap", "hyprland", @@ -511,11 +497,11 @@ ] }, "locked": { - "lastModified": 1711035742, - "narHash": "sha256-5vvhCSUGG9TA2G1eIRgokuYizhRnZu0ZbcU1MXfHsUE=", + "lastModified": 1720108799, + "narHash": "sha256-AxRkTJlbB8r7aG6gvc7IaLhc2T9TO4/8uqanKRxukBQ=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "6a92473237f430399a417e1c2da9d7fcd4970086", + "rev": "a5c0d57325c5f0814c39110a70ca19c070ae9486", "type": "github" }, "original": { @@ -527,19 +513,19 @@ "hyprland": { "inputs": { "hyprcursor": "hyprcursor", - "hyprland-protocols": "hyprland-protocols", - "hyprlang": "hyprlang_2", + "hyprlang": "hyprlang", + "hyprutils": "hyprutils", + "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": "nixpkgs_12", - "systems": "systems_8", - "wlroots": "wlroots", + "systems": "systems_6", "xdph": "xdph" }, "locked": { - "lastModified": 1711557008, - "narHash": "sha256-fBrJJSRbeRf2lZUsaij96qhDX9JpDHF0uHD69Z6Ca/k=", + "lastModified": 1721463092, + "narHash": "sha256-NT9adHxZtssgoYPsc1jW0NV2OAZBQoko0qdlLO7wkSg=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "93d05114716e847c37f49d3cc2d0c5cb01d06a24", + "rev": "f642fb97df5c69267a03452533de383ff8023570", "type": "github" }, "original": { @@ -553,20 +539,22 @@ "nixpkgs": [ "xremap", "hyprland", + "xdph", "nixpkgs" ], "systems": [ "xremap", "hyprland", + "xdph", "systems" ] }, "locked": { - "lastModified": 1691753796, - "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", + "lastModified": 1718746314, + "narHash": "sha256-HUklK5u86w2Yh9dOkk4FdsL8eehcOZ95jPhLixGDRQY=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", + "rev": "1b61f0093afff20ab44d88ad707aed8bf2215290", "type": "github" }, "original": { @@ -577,20 +565,28 @@ }, "hyprlang": { "inputs": { + "hyprutils": [ + "xremap", + "hyprland", + "hyprutils" + ], "nixpkgs": [ "xremap", "hyprland", - "hyprcursor", "nixpkgs" ], - "systems": "systems_7" + "systems": [ + "xremap", + "hyprland", + "systems" + ] }, "locked": { - "lastModified": 1709914708, - "narHash": "sha256-bR4o3mynoTa1Wi4ZTjbnsZ6iqVcPGriXp56bZh5UFTk=", + "lastModified": 1720381373, + "narHash": "sha256-lyC/EZdHULsaAKVryK11lgHY9u6pXr7qR4irnxNWC7k=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "a685493fdbeec01ca8ccdf1f3655c044a8ce2fe2", + "rev": "5df0174fd09de4ac5475233d65ffc703e89b82eb", "type": "github" }, "original": { @@ -599,7 +595,7 @@ "type": "github" } }, - "hyprlang_2": { + "hyprutils": { "inputs": { "nixpkgs": [ "xremap", @@ -613,16 +609,43 @@ ] }, "locked": { - "lastModified": 1710960526, - "narHash": "sha256-tt0UgVKWeLQ+tFzvqrm4uAZbzONwdGshpfiLHAQ1P2c=", + "lastModified": 1721071737, + "narHash": "sha256-qmC9jGfbE4+EIBbbSAkrfR/p49wShjpv4/KztgE/P54=", "owner": "hyprwm", - "repo": "hyprlang", - "rev": "a2f39421144d42541c057be235154ce21b76c0f6", + "repo": "hyprutils", + "rev": "eb1ceff2b87f6820789249f63faa8e9dcb54d05f", "type": "github" }, "original": { "owner": "hyprwm", - "repo": "hyprlang", + "repo": "hyprutils", + "type": "github" + } + }, + "hyprwayland-scanner": { + "inputs": { + "nixpkgs": [ + "xremap", + "hyprland", + "nixpkgs" + ], + "systems": [ + "xremap", + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1720215857, + "narHash": "sha256-JPdL+Qul+jEueAn8CARfcWP83eJgwkhMejQYfDvrgvU=", + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "rev": "d5fa094ca27e0039be5e94c0a80ae433145af8bb", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprwayland-scanner", "type": "github" } }, @@ -633,11 +656,11 @@ ] }, "locked": { - "lastModified": 1714557650, - "narHash": "sha256-N1qTL5wIlbbX7DorBaKOMYfz+gYoyf8LREMWVlOXNYc=", + "lastModified": 1723021300, + "narHash": "sha256-Ujo6MQvwolE1eWSkPXCC9WFJeLtRfnMpvxoeAGNcbFI=", "owner": "viperml", "repo": "nh", - "rev": "e4eb011975bee4c3f47199cc01d2d986e24851bd", + "rev": "ea9053852f8575f650ca0080b2cac6735c7447f7", "type": "github" }, "original": { @@ -667,11 +690,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1713537308, - "narHash": "sha256-XtTSSIB2DA6tOv+l0FhvfDMiyCmhoRbNB+0SeInZkbk=", + "lastModified": 1722630782, + "narHash": "sha256-hMyG9/WlUi0Ho9VkRrrez7SeNlDzLxalm9FwY7n/Noo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5c24cf2f0a12ad855f444c30b2421d044120c66f", + "rev": "d04953086551086b44b6f3c6b7eeb26294f207da", "type": "github" }, "original": { @@ -734,29 +757,23 @@ }, "nixpkgs-lib_4": { "locked": { - "dir": "lib", - "lastModified": 1709237383, - "narHash": "sha256-cy6ArO4k5qTx+l5o+0mL9f5fa86tYUX3ozE1S+Txlds=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "1536926ef5621b09bba54035ae2bb6d806d72ac8", - "type": "github" + "lastModified": 1719876945, + "narHash": "sha256-Fm2rDDs86sHy0/1jxTOKB1118Q0O3Uc7EC0iXvXKpbI=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz" }, "original": { - "dir": "lib", - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz" } }, "nixpkgs-stable": { "locked": { - "lastModified": 1704874635, - "narHash": "sha256-YWuCrtsty5vVZvu+7BchAxmcYzTMfolSPP5io8+WYCg=", + "lastModified": 1710695816, + "narHash": "sha256-3Eh7fhEID17pv9ZxrPwCLfqXnYP006RKzSs0JptsN84=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3dc440faeee9e889fe2d1b4d25ad0f430d449356", + "rev": "614b4613980a522ba49f0d194531beddbb7220d3", "type": "github" }, "original": { @@ -768,27 +785,27 @@ }, "nixpkgs-stable_2": { "locked": { - "lastModified": 1713638189, - "narHash": "sha256-q7APLfB6FmmSMI1Su5ihW9IwntBsk2hWNXh8XtSdSIk=", + "lastModified": 1721524707, + "narHash": "sha256-5NctRsoE54N86nWd0psae70YSLfrOek3Kv1e8KoXe/0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "74574c38577914733b4f7a775dd77d24245081dd", + "rev": "556533a23879fc7e5f98dd2e0b31a6911a213171", "type": "github" }, "original": { "owner": "NixOS", - "ref": "release-23.11", + "ref": "release-24.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1714253743, - "narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=", + "lastModified": 1722813957, + "narHash": "sha256-IAoYyYnED7P8zrBFMnmp7ydaJfwTnwcnqxUElC1I26Y=", "owner": "nixos", "repo": "nixpkgs", - "rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994", + "rev": "cb9a96f23c491c081b38eab96d22fa958043c9fa", "type": "github" }, "original": { @@ -816,11 +833,11 @@ }, "nixpkgs_11": { "locked": { - "lastModified": 1710806803, - "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", + "lastModified": 1719848872, + "narHash": "sha256-H3+EC5cYuq+gQW8y0lSrrDZfH71LB4DAf+TDFyvwCNA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", + "rev": "00d80d13810dbfea8ab4ed1009b09100cca86ba8", "type": "github" }, "original": { @@ -832,11 +849,11 @@ }, "nixpkgs_12": { "locked": { - "lastModified": 1711001935, - "narHash": "sha256-URtGpHue7HHZK0mrHnSf8wJ6OmMKYSsoLmJybrOLFSQ=", + "lastModified": 1720957393, + "narHash": "sha256-oedh2RwpjEa+TNxhg5Je9Ch6d3W1NKi7DbRO1ziHemA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "20f77aa09916374aa3141cbc605c955626762c9a", + "rev": "693bc46d169f5af9c992095736e82c3488bf7dbb", "type": "github" }, "original": { @@ -848,11 +865,11 @@ }, "nixpkgs_13": { "locked": { - "lastModified": 1711401922, - "narHash": "sha256-QoQqXoj8ClGo0sqD/qWKFWezgEwUL0SUh37/vY2jNhc=", + "lastModified": 1721435672, + "narHash": "sha256-VaBqKvCu4iFWPwKFFigdhOfgccLUDEVByb6Wa2Z9i98=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "07262b18b97000d16a4bdb003418bd2fb067a932", + "rev": "2d65995365a2a6b05db69e344d3b673c8d541bcd", "type": "github" }, "original": { @@ -862,13 +879,29 @@ "type": "github" } }, + "nixpkgs_14": { + "locked": { + "lastModified": 1719690277, + "narHash": "sha256-0xSej1g7eP2kaUF+JQp8jdyNmpmCJKRpO12mKl/36Kc=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "2741b4b489b55df32afac57bc4bfd220e8bf617e", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { - "lastModified": 1704842529, - "narHash": "sha256-OTeQA+F8d/Evad33JMfuXC89VMetQbsU4qcaePchGr4=", + "lastModified": 1710765496, + "narHash": "sha256-p7ryWEeQfMwTB6E0wIUd5V2cFTgq+DRRBz2hYGnJZyA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "eabe8d3eface69f5bb16c18f8662a702f50c20d5", + "rev": "e367f7a1fb93137af22a3908f00b9a35e2d286a7", "type": "github" }, "original": { @@ -880,11 +913,11 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1706098335, - "narHash": "sha256-r3dWjT8P9/Ah5m5ul4WqIWD8muj5F+/gbCdjiNVBKmU=", + "lastModified": 1720535198, + "narHash": "sha256-zwVvxrdIzralnSbcpghA92tWu2DV2lwv89xZc8MTrbg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a77ab169a83a4175169d78684ddd2e54486ac651", + "rev": "205fd4226592cc83fd4c0885a3e4c9c400efabb5", "type": "github" }, "original": { @@ -928,16 +961,16 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1714409183, - "narHash": "sha256-Wacm/DrzLD7mjFGnSxxyGkJgg2unU/dNdNgdngBH+RU=", + "lastModified": 1722987190, + "narHash": "sha256-68hmex5efCiM2aZlAAEcQgmFI4ZwWt8a80vOeB/5w3A=", "owner": "nixos", "repo": "nixpkgs", - "rev": "576ecd43d3b864966b4423a853412d6177775e8b", + "rev": "21cc704b5e918c5fbf4f9fff22b4ac2681706d90", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-23.11", + "ref": "nixos-24.05", "repo": "nixpkgs", "type": "github" } @@ -976,11 +1009,11 @@ }, "nixpkgs_9": { "locked": { - "lastModified": 1713596654, - "narHash": "sha256-LJbHQQ5aX1LVth2ST+Kkse/DRzgxlVhTL1rxthvyhZc=", + "lastModified": 1721466660, + "narHash": "sha256-pFSxgSZqZ3h+5Du0KvEL1ccDZBwu4zvOil1zzrPNb3c=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "fd16bb6d3bcca96039b11aa52038fafeb6e4f4be", + "rev": "6e14bbce7bea6c4efd7adfa88a40dac750d80100", "type": "github" }, "original": { @@ -994,7 +1027,7 @@ "inputs": { "flake-parts": "flake-parts_4", "nixpkgs": "nixpkgs_7", - "systems": "systems_5", + "systems": "systems_4", "treefmt-nix": "treefmt-nix_2" }, "locked": { @@ -1014,17 +1047,16 @@ "pre-commit": { "inputs": { "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils_2", "gitignore": "gitignore", "nixpkgs": "nixpkgs_2", "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1708018599, - "narHash": "sha256-M+Ng6+SePmA8g06CmUZWi1AjG2tFBX9WCXElBHEKnyM=", + "lastModified": 1717664902, + "narHash": "sha256-7XfBuLULizXjXfBYy/VV+SpYMHreNRHk9nKMsm1bgb4=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "5df5a70ad7575f6601d91f0efec95dd9bc619431", + "rev": "cc4d466cb1254af050ff7bdf47f6d404a7c646d1", "type": "github" }, "original": { @@ -1058,11 +1090,11 @@ "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { - "lastModified": 1713892811, - "narHash": "sha256-uIGmA2xq41vVFETCF1WW4fFWFT2tqBln+aXnWrvjGRE=", + "lastModified": 1722897572, + "narHash": "sha256-3m/iyyjCdRBF8xyehf59QlckIcmShyTesymSb+N4Ap4=", "owner": "Mic92", "repo": "sops-nix", - "rev": "f1b0adc27265274e3b0c9b872a8f476a098679bd", + "rev": "8ae477955dfd9cbf5fa4eb82a8db8ddbb94e79d9", "type": "github" }, "original": { @@ -1147,36 +1179,6 @@ } }, "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" - } - }, - "systems_7": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_8": { "locked": { "lastModified": 1689347949, "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", @@ -1227,50 +1229,45 @@ "type": "github" } }, - "utils": { + "treefmt-nix_3": { "inputs": { - "systems": "systems_3" + "nixpkgs": "nixpkgs_14" }, "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "lastModified": 1721458737, + "narHash": "sha256-wNXLQ/ATs1S4Opg1PmuNoJ+Wamqj93rgZYV3Di7kxkg=", "owner": "numtide", - "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "repo": "treefmt-nix", + "rev": "888bfb10a9b091d9ed2f5f8064de8d488f7b7c97", "type": "github" }, "original": { "owner": "numtide", - "repo": "flake-utils", + "repo": "treefmt-nix", "type": "github" } }, - "wlroots": { - "flake": false, + "utils": { + "inputs": { + "systems": "systems_2" + }, "locked": { - "host": "gitlab.freedesktop.org", - "lastModified": 1709983277, - "narHash": "sha256-wXWIJLd4F2JZeMaihWVDW/yYXCLEC8OpeNJZg9a9ly8=", - "owner": "wlroots", - "repo": "wlroots", - "rev": "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b", - "type": "gitlab" + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" }, "original": { - "host": "gitlab.freedesktop.org", - "owner": "wlroots", - "repo": "wlroots", - "rev": "50eae512d9cecbf0b3b1898bb1f0b40fa05fe19b", - "type": "gitlab" + "owner": "numtide", + "repo": "flake-utils", + "type": "github" } }, "xdph": { "inputs": { - "hyprland-protocols": [ - "xremap", - "hyprland", - "hyprland-protocols" - ], + "hyprland-protocols": "hyprland-protocols", "hyprlang": [ "xremap", "hyprland", @@ -1288,11 +1285,11 @@ ] }, "locked": { - "lastModified": 1709299639, - "narHash": "sha256-jYqJM5khksLIbqSxCLUUcqEgI+O2LdlSlcMEBs39CAU=", + "lastModified": 1720194466, + "narHash": "sha256-Rizg9efi6ue95zOp0MeIV2ZedNo+5U9G2l6yirgBUnA=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "2d2fb547178ec025da643db57d40a971507b82fe", + "rev": "b9b97e5ba23fe7bd5fa4df54696102e8aa863cf6", "type": "github" }, "original": { @@ -1309,14 +1306,15 @@ "home-manager": "home-manager_2", "hyprland": "hyprland", "nixpkgs": "nixpkgs_13", + "treefmt-nix": "treefmt-nix_3", "xremap": "xremap_2" }, "locked": { - "lastModified": 1712025160, - "narHash": "sha256-L96ZF1Z+OxAta5XPmazFajflppflYw/y588SBWVGjAw=", + "lastModified": 1721842203, + "narHash": "sha256-3tV6a9Ri6JTapeOQFuBpIjYk+R+F9RGiaG7Hpz1sTv8=", "owner": "xremap", "repo": "nix-flake", - "rev": "38c9a3c4264750f77151369f34590db259454df3", + "rev": "3717cb0539f4967010ba540baa439a4cf6ea8576", "type": "github" }, "original": { @@ -1328,16 +1326,16 @@ "xremap_2": { "flake": false, "locked": { - "lastModified": 1711574442, - "narHash": "sha256-RR8SgnlQX8Gz9qwO/wN5NvFWsEQ/vvNdmOxxFojri90=", + "lastModified": 1716231654, + "narHash": "sha256-TZvi5EOZ5Ekg8aGXCAzCcphJ7U5YsPtTWKTUQKZXEsg=", "owner": "k0kubun", "repo": "xremap", - "rev": "53a6d0553d58b95777f066e4aeed05ec74c5eaed", + "rev": "d1b17c4b9958feb5804f317b654ab3936f852c61", "type": "github" }, "original": { "owner": "k0kubun", - "ref": "v0.8.18", + "ref": "v0.10.0", "repo": "xremap", "type": "github" } diff --git a/flake.nix b/flake.nix index f9082f7..e33dadf 100644 --- a/flake.nix +++ b/flake.nix @@ -3,14 +3,14 @@ inputs = { # Nixpkgs - nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; # You can access packages and modules from different nixpkgs revs # at the same time. Here's an working example: nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; # Also see the 'unstable-packages' overlay at 'overlays/default.nix'. # Home manager - home-manager.url = "github:nix-community/home-manager/release-23.11"; + home-manager.url = "github:nix-community/home-manager/release-24.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; hardware.url = "github:nixos/nixos-hardware"; @@ -104,6 +104,19 @@ ./hosts/franz ]; }; + # build with nix build .#nixosConfigurations.eustachius.config.system.build.sdImage + eustachius = nixpkgs.lib.nixosSystem { + system = "aarch64-linux"; + modules = [ + "${nixpkgs}/nixos/modules/installer/sd-card/sd-image-aarch64-installer.nix" + ./hosts/eustachius + + # extra config for sdImage generator + { + sdImage.compressImage = false; + } + ]; + }; }; # Standalone home-manager configuration entrypoint diff --git a/home/adalbert.nix b/home/adalbert.nix index b29da96..1cb57e5 100644 --- a/home/adalbert.nix +++ b/home/adalbert.nix @@ -16,7 +16,10 @@ in { colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha; - home.packages = [inputs.picokontroller.packages.x86_64-linux.default pkgs.citrix_workspace]; + home.packages = [ + inputs.picokontroller.packages.x86_64-linux.default + # pkgs.citrix_workspace + ]; nixpkgs = { config = { permittedInsecurePackages = [ diff --git a/home/features/cli/default.nix b/home/features/cli/default.nix index 0dd61ed..2d85507 100644 --- a/home/features/cli/default.nix +++ b/home/features/cli/default.nix @@ -31,6 +31,7 @@ du-dust # disk usage visualizer lftp # FTP client unar # unarchive files like rar, zip, tar + glow # fancy markdown viewer nvd # Differ nix-output-monitor diff --git a/home/features/cli/git.nix b/home/features/cli/git.nix index 3f6ce29..ea96b39 100644 --- a/home/features/cli/git.nix +++ b/home/features/cli/git.nix @@ -1,6 +1,6 @@ {pkgs, ...}: { #Prefer IPv4 for ssh - home.file.".ssh/config".text = "AddressFamily inet"; + # home.file.".ssh/config".text = "AddressFamily inet"; programs.git = { enable = true; diff --git a/home/features/cli/gpg.nix b/home/features/cli/gpg.nix index f87e9ab..22a6510 100644 --- a/home/features/cli/gpg.nix +++ b/home/features/cli/gpg.nix @@ -11,7 +11,7 @@ enableSshSupport = true; enableFishIntegration = true; enableZshIntegration = true; - pinentryFlavor = "gnome3"; + pinentryPackage = pkgs.pinentry-gnome3; }; # Prevent clobbering SSH_AUTH_SOCK diff --git a/home/features/coding/nvim/default.nix b/home/features/coding/nvim/default.nix index 52049c8..40840cb 100644 --- a/home/features/coding/nvim/default.nix +++ b/home/features/coding/nvim/default.nix @@ -10,7 +10,7 @@ stableExtraPkgs = with pkgs; [ # LSP lua-language-server - lua + pkgs.nodePackages.typescript-language-server # Formatters stylua # lua @@ -19,6 +19,8 @@ clang-tools_16 # c/c++ rustfmt yamlfmt + prettierd + vscode-langservers-extracted # Linters ruff # python @@ -30,6 +32,9 @@ wl-clipboard fzf gcc + + # idk? + lua ]; unstableExtraPkgs = with pkgs.unstable; [ # LSP @@ -129,7 +134,7 @@ in { vim-nix { - plugin = nvim-base16; + plugin = base16-nvim; config = '' require('base16-colorscheme').setup({ base00 = '#${colors.base00}', base01 = '#${colors.base01}', base02 = '#${colors.base02}', base03 = '#${colors.base03}', @@ -184,7 +189,7 @@ in { { plugin = nvim-autopairs; - config = "require('nvim-autopairs').setup({})"; + config = "require('nvim-autopairs').setup()"; type = "lua"; } @@ -207,6 +212,12 @@ in { config = builtins.readFile ./plugin/vim-tmux-navigator.lua; type = "lua"; } + + { + plugin = nvim-ts-autotag; + config = "require('nvim-ts-autotag').setup({})"; + type = "lua"; + } ]; extraLuaConfig = '' diff --git a/home/features/coding/nvim/plugin/lsp.lua b/home/features/coding/nvim/plugin/lsp.lua index 5d65d67..0666611 100644 --- a/home/features/coding/nvim/plugin/lsp.lua +++ b/home/features/coding/nvim/plugin/lsp.lua @@ -43,3 +43,25 @@ require("lspconfig").nixd.setup({ on_attach = on_attach, capabilities = capabilities, }) + +require("lspconfig").tsserver.setup({ + on_attach = on_attach, + capabilities = capabilities, +}) + +require("lspconfig").eslint.setup({ + settings = { + packageManager = "yarn", + }, + on_attach = function(client, bufnr) + vim.api.nvim_create_autocmd("BufWritePre", { + buffer = bufnr, + command = "EslintFixAll", + }) + vim.api.nvim_create_autocmd("BufWritePost", { + callback = function() + vim.lsp.buf.format() + end, + }) + end, +}) diff --git a/home/features/coding/nvim/plugin/none-ls.lua b/home/features/coding/nvim/plugin/none-ls.lua index 0e47d6a..b42911c 100644 --- a/home/features/coding/nvim/plugin/none-ls.lua +++ b/home/features/coding/nvim/plugin/none-ls.lua @@ -7,18 +7,24 @@ local opts = { null_ls.builtins.formatting.stylua, -- Python null_ls.builtins.formatting.black, - null_ls.builtins.diagnostics.ruff, + -- null_ls.builtins.diagnostics.ruff, -- Javascript - null_ls.builtins.diagnostics.eslint_d, - null_ls.builtins.diagnostics.jsonlint, + -- null_ls.builtins.diagnostics.eslint_d, + -- null_ls.builtins.diagnostics.jsonlint, -- C/C++ null_ls.builtins.formatting.clang_format, -- Nix null_ls.builtins.formatting.alejandra, -- Rust - null_ls.builtins.formatting.rustfmt, + -- null_ls.builtins.formatting.rustfmt, -- YAML null_ls.builtins.formatting.yamlfmt, + -- Typescript + null_ls.builtins.formatting.prettier.with({ + condition = function(utils) + return utils.has_file({ ".prettierrc.js" }) + end, + }), }, on_attach = function(client, bufnr) if client.supports_method("textDocument/formatting") then diff --git a/home/features/desktop/common/3d-printing.nix b/home/features/desktop/common/3d-printing.nix index 359bb49..52de6ae 100644 --- a/home/features/desktop/common/3d-printing.nix +++ b/home/features/desktop/common/3d-printing.nix @@ -1,3 +1,3 @@ {pkgs, ...}: { - home.packages = with pkgs; [freecad cura super-slicer]; + home.packages = with pkgs; [freecad cura]; } diff --git a/home/features/desktop/gnome/default.nix b/home/features/desktop/gnome/default.nix new file mode 100644 index 0000000..bb19eca --- /dev/null +++ b/home/features/desktop/gnome/default.nix @@ -0,0 +1,5 @@ +{pkgs, ...}: { + imports = [ + ../common + ]; +} diff --git a/home/ludwig.nix b/home/ludwig.nix index 359aec9..655dbe6 100644 --- a/home/ludwig.nix +++ b/home/ludwig.nix @@ -1,4 +1,5 @@ { + pkgs, inputs, outputs, ... @@ -7,16 +8,19 @@ in { imports = [ ./global ./features/desktop/awesome - # ./features/desktop/gnome + ./features/desktop/gnome ./features/coding inputs.nix-colors.homeManagerModules.default ]; + home.packages = with pkgs; [nextcloud-client]; + colorScheme = inputs.nix-colors.colorSchemes.catppuccin-mocha; nixpkgs = { config = { permittedInsecurePackages = [ "electron-25.9.0" + "nix-2.15.3" ]; }; }; diff --git a/hosts/adalbert/default.nix b/hosts/adalbert/default.nix index 1a707c7..74a9104 100644 --- a/hosts/adalbert/default.nix +++ b/hosts/adalbert/default.nix @@ -3,10 +3,6 @@ { inputs, outputs, - lib, - config, - pkgs, - heliox-cli, ... }: { # You can import other NixOS modules here @@ -36,12 +32,10 @@ ../common/optional/docker.nix ../common/optional/gaming/gamemode.nix ../common/optional/gaming/steam.nix - ../common/optional/gaming/vr.nix ../common/optional/desktop/japanese.nix ../common/optional/udisks.nix ]; - nixpkgs = { # You can add overlays here overlays = [ @@ -73,9 +67,21 @@ services.udev.packages = [inputs.heliox-cli.packages.x86_64-linux.default]; environment.systemPackages = [inputs.heliox-cli.packages.x86_64-linux.default]; + # services.xserver.displayManager.sddm.enable = true; + services.xserver.displayManager.gdm.enable = true; + # Force disable Nvidia PRIME, needed by nix-hardware hardware.nvidia.prime.offload.enable = false; + programs.coolercontrol={ + enable = true; + nvidiaSupport = true; + }; + boot.binfmt.emulatedSystems = [ + "aarch64-linux" + "riscv64-linux" + ]; + programs = { adb.enable = true; dconf.enable = true; diff --git a/hosts/common/global/default.nix b/hosts/common/global/default.nix index fe84877..163e238 100644 --- a/hosts/common/global/default.nix +++ b/hosts/common/global/default.nix @@ -2,7 +2,6 @@ { inputs, outputs, - config, ... }: { imports = @@ -12,7 +11,6 @@ ./fish.nix ./locale.nix ./nix.nix - ./podman.nix ./power-button.nix ./documentation.nix ] diff --git a/hosts/common/optional/desktop/global.nix b/hosts/common/optional/desktop/global.nix index 764d7ae..41ab7c7 100644 --- a/hosts/common/optional/desktop/global.nix +++ b/hosts/common/optional/desktop/global.nix @@ -13,8 +13,4 @@ environment.profileRelativeSessionVariables = { QT_PLUGIN_PATH = ["/lib/qt-6/plugins"]; }; - - services.xserver = { - displayManager.sddm.enable = true; - }; } diff --git a/hosts/common/optional/gaming/vr.nix b/hosts/common/optional/gaming/vr.nix deleted file mode 100644 index 1ece2ca..0000000 --- a/hosts/common/optional/gaming/vr.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - programs.alvr = { - enable = true; - openFirewall = true; - }; -} diff --git a/hosts/common/optional/systemd-boot.nix b/hosts/common/optional/systemd-boot.nix index 40d04b2..93daa9f 100644 --- a/hosts/common/optional/systemd-boot.nix +++ b/hosts/common/optional/systemd-boot.nix @@ -3,6 +3,7 @@ systemd-boot = { enable = true; consoleMode = "max"; + configurationLimit = 42; }; efi.canTouchEfiVariables = true; }; diff --git a/hosts/eustachius/default.nix b/hosts/eustachius/default.nix new file mode 100644 index 0000000..358ae5c --- /dev/null +++ b/hosts/eustachius/default.nix @@ -0,0 +1,117 @@ +{ + pkgs, + lib, + ... +}: let + vars = import ../../vars.nix; +in { + imports = [../common/global/locale.nix]; + # NixOS wants to enable GRUB by default + boot.loader.grub.enable = false; + # Enables the generation of /boot/extlinux/extlinux.conf + boot.loader.generic-extlinux-compatible.enable = true; + + # !!! Set to specific linux kernel version + boot.kernelPackages = pkgs.linuxPackages; + + # Disable ZFS on kernel 6 + boot.supportedFilesystems = lib.mkForce [ + "vfat" + "xfs" + "cifs" + "ntfs" + ]; + + # !!! Needed for the virtual console to work on the RPi 3, as the default of 16M doesn't seem to be enough. + # If X.org behaves weirdly (I only saw the cursor) then try increasing this to 256M. + # On a Raspberry Pi 4 with 4 GB, you should either disable this parameter or increase to at least 64M if you want the USB ports to work. + boot.kernelParams = ["cma=256M"]; + + # File systems configuration for using the installer's partition layout + fileSystems = { + # Prior to 19.09, the boot partition was hosted on the smaller first partition + # Starting with 19.09, the /boot folder is on the main bigger partition. + # The following is to be used only with older images. + /* + "/boot" = { + device = "/dev/disk/by-label/NIXOS_BOOT"; + fsType = "vfat"; + }; + */ + "/" = { + device = "/dev/disk/by-label/NIXOS_SD"; + fsType = "ext4"; + }; + }; + + # !!! Adding a swap file is optional, but strongly recommended! + swapDevices = [ + { + device = "/swapfile"; + size = 1024; + } + ]; + + # systemPackages + environment.systemPackages = with pkgs; [ + neovim + curl + wget + ]; + + services.openssh = { + enable = true; + settings.PermitRootLogin = "yes"; + }; + + services.restic.server = { + enable = true; + dataDir = "/mnt/backups"; + extraFlags = ["--no-auth"]; + }; + + services.tailscale = { + enable = true; + useRoutingFeatures = "server"; + }; + + virtualisation.docker.enable = true; + + networking.firewall.enable = false; + + # Networking + networking.useDHCP = true; + + # forwarding + boot.kernel.sysctl = { + "net.ipv4.conf.all.forwarding" = true; + "net.ipv6.conf.all.forwarding" = true; + "net.ipv4.tcp_ecn" = true; + }; + + # put your own configuration here, for example ssh keys: + users.mutableUsers = true; + users.users.nixos = { + isNormalUser = true; + password = "changeme"; + extraGroups = ["wheel" "docker"]; + openssh.authorizedKeys.keys = [ + #Adalbert + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJd6Gut34abkwlZ4tZVBO4Qt7CkIpPm/Z8R6JCisjnYy openpgp:0xBD0CFCA0" + + #Ludwig + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFlRsnLqm6Ap3yKEEhtFiWavo72df/X5Il1ZCmENUqev openpgp:0xDE189CA5" + + #Franz + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIINCjLoirHMos7c9lRatWtSYAk68xbUGc8vPU0wFxIzj openpgp:0x7430326E" + ]; + }; + users.users.admin = { + isNormalUser = true; + extraGroups = ["wheel"]; # Enable ‘sudo’ for the user. + hashedPassword = "blablabla"; # generate with `mkpasswd` + }; + nix.settings.trusted-users = ["admin" "ghoscht" "nixos"]; + + system.stateVersion = "23.11"; +} diff --git a/hosts/franz/arion/headscale/default.nix b/hosts/franz/arion/headscale/default.nix index d1be53e..2b6b391 100644 --- a/hosts/franz/arion/headscale/default.nix +++ b/hosts/franz/arion/headscale/default.nix @@ -2,8 +2,10 @@ vars = import ../../../../vars.nix; in { # Tailscale client for exit node/routes - services.tailscale.enable = true; - services.tailscale.useRoutingFeatures = "server"; + services.tailscale = { + enable = true; + useRoutingFeatures = "server"; + }; virtualisation.arion = { projects.headscale.settings = { diff --git a/hosts/ludwig/default.nix b/hosts/ludwig/default.nix index 7ee4c5e..6c50afe 100644 --- a/hosts/ludwig/default.nix +++ b/hosts/ludwig/default.nix @@ -63,9 +63,12 @@ networking.hostName = "ludwig"; + # environment.sessionVariables.QT_QPA_PLATFORM = "wayland"; + services.xserver.displayManager.gdm.enable = true; programs = { adb.enable = true; dconf.enable = true; + xwayland.enable = true; }; hardware = { diff --git a/modules/nixos/alvr.nix b/modules/nixos/alvr.nix deleted file mode 100644 index 334fce8..0000000 --- a/modules/nixos/alvr.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - config, - pkgs, - lib, - ... -}: -with lib; let - cfg = config.programs.alvr; -in { - options = { - programs.alvr = { - enable = mkEnableOption (lib.mdDoc "ALVR"); - - package = mkPackageOption pkgs "alvr" {}; - - openFirewall = mkOption { - type = types.bool; - default = false; - description = lib.mdDoc '' - Open the default ports in the firewall for the ALVR server. - ''; - }; - }; - }; - - config = mkIf cfg.enable { - environment.systemPackages = [cfg.package]; - - networking.firewall = mkIf cfg.openFirewall { - allowedTCPPorts = [9943 9944]; - allowedUDPPorts = [9943 9944]; - }; - }; -} diff --git a/modules/nixos/default.nix b/modules/nixos/default.nix index 402d229..c682b92 100644 --- a/modules/nixos/default.nix +++ b/modules/nixos/default.nix @@ -2,5 +2,4 @@ # These should be stuff you would like to share with others, not your personal configurations. { # List your module files here - alvr = import ./alvr.nix; } diff --git a/pkgs/alvr/default.nix b/pkgs/alvr/default.nix deleted file mode 100644 index c478ad2..0000000 --- a/pkgs/alvr/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - lib, - appimageTools, - fetchurl, -}: let - pname = "alvr"; - version = "v21.0.0-dev00+nightly.2024.03.03"; - src = fetchurl { - url = "https://github.com/alvr-org/ALVR-nightly/releases/download/v21.0.0-dev00%2Bnightly.2024.03.03/ALVR-x86_64.AppImage"; - hash = "sha256-DCkx8MHcFEkK/IlxIplOYKEzcBM90GQcuqwaftrEdOs="; - }; - - appimageContents = appimageTools.extractType2 {inherit pname version src;}; -in - appimageTools.wrapType2 { - inherit pname version src; - - extraInstallCommands = '' - mv $out/bin/${pname}-${version} $out/bin/${pname} - - install -Dm444 ${appimageContents}/alvr.desktop -t $out/share/applications - substituteInPlace $out/share/applications/alvr.desktop \ - --replace 'Exec=alvr_dashboard' 'Exec=${pname}' - cp -r ${appimageContents}/usr/share/icons $out/share - ''; - - meta = with lib; { - description = "Stream VR games from your PC to your headset via Wi-Fi"; - homepage = "https://github.com/alvr-org/ALVR/"; - changelog = "https://github.com/alvr-org/ALVR/releases/tag/v${version}"; - license = licenses.mit; - mainProgram = "alvr"; - maintainers = with maintainers; [passivelemon]; - platforms = ["x86_64-linux"]; - }; - } diff --git a/pkgs/default.nix b/pkgs/default.nix index 0527a76..82c7abd 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -2,7 +2,6 @@ # You can build them using 'nix build .#example' {pkgs, ...}: { # example = pkgs.callPackage ./example { }; - alvr = pkgs.callPackage ./alvr {}; feishin-appimage = pkgs.callPackage ./feishin {}; protonup-rs = pkgs.callPackage ./protonup-rs {}; rofi-audio-switcher = pkgs.callPackage ./rofi-audio-switcher {};