Compare commits

...

4 commits

17 changed files with 365 additions and 571 deletions

268
flake.lock generated
View file

@ -3,11 +3,11 @@
"aphorme_launcher": { "aphorme_launcher": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1713530567, "lastModified": 1719922896,
"narHash": "sha256-p1ZIMMDyQWVzoeyHb3sbeV6XQwbIDoQwJU8ynI8hGUI=", "narHash": "sha256-mOtCz42NFQn+0xPF3gBX4WHfo5UEClSsJ/tF8RdFQkY=",
"owner": "Iaphetes", "owner": "Iaphetes",
"repo": "aphorme_launcher", "repo": "aphorme_launcher",
"rev": "abc42c3d9e98dfd2c910cf348110232ff25129b4", "rev": "c7c7ce9f91a31cced181fa501a2cad3c68035def",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -20,11 +20,11 @@
"ath11k-firmware": { "ath11k-firmware": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1720482684, "lastModified": 1729352325,
"narHash": "sha256-p6ifwtRNUOyQ2FN2VhSXS6dcrvrtiFZawu/iVXQ4uR0=", "narHash": "sha256-U2rdpaKV09mLDIt7MNdbolE8HBzXawXoo7uo3HY5gBk=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "bb527dcebac835c47ed4f5428a7687769fa9b1b2", "rev": "4c8ae2fb2b78d5b0bebed63fe8b0f348f9fbc33e",
"revCount": 152, "revCount": 160,
"type": "git", "type": "git",
"url": "https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware.git" "url": "https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware.git"
}, },
@ -43,11 +43,11 @@
"stable": "stable" "stable": "stable"
}, },
"locked": { "locked": {
"lastModified": 1711386353, "lastModified": 1728263678,
"narHash": "sha256-gWEpb8Hybnoqb4O4tmpohGZk6+aerAbJpywKcFIiMlg=", "narHash": "sha256-gyUVsPAWY9AgVKjrNPoowrIr5BvK4gI0UkDXvv8iSxA=",
"owner": "zhaofengli", "owner": "zhaofengli",
"repo": "colmena", "repo": "colmena",
"rev": "cd65ef7a25cdc75052fbd04b120aeb066c3881db", "rev": "b0a62f234fae02a006123e661ff70e62af16106b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -57,17 +57,12 @@
} }
}, },
"crane": { "crane": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": { "locked": {
"lastModified": 1720226507, "lastModified": 1730060262,
"narHash": "sha256-yHVvNsgrpyNTXZBEokL8uyB2J6gB1wEx0KOJzoeZi1A=", "narHash": "sha256-RMgSVkZ9H03sxC+Vh4jxtLTCzSjPq18UWpiM0gq6shQ=",
"owner": "ipetkov", "owner": "ipetkov",
"repo": "crane", "repo": "crane",
"rev": "0aed560c5c0a61c9385bddff471a13036203e11c", "rev": "498d9f122c413ee1154e8131ace5a35a80d8fa76",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -84,11 +79,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1718008439, "lastModified": 1727359191,
"narHash": "sha256-nlh/2uD5p2SAdkn6Zuey20yaR5FFWvhL3poapDGNE4Y=", "narHash": "sha256-5PltTychnExFwzpEnY3WhOywaMV/M6NxYI/y3oXuUtw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "c1cfbfad7cb45f0c177b35b59ba67d1b5fc7ca82", "rev": "67dc29be3036cc888f0b9d4f0a788ee0f6768700",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -123,11 +118,11 @@
"rust-analyzer-src": "rust-analyzer-src" "rust-analyzer-src": "rust-analyzer-src"
}, },
"locked": { "locked": {
"lastModified": 1713421495, "lastModified": 1730442928,
"narHash": "sha256-5vVF9W1tJT+WdfpWAEG76KywktKDAW/71mVmNHEHjac=", "narHash": "sha256-U1DWb5c3EfkA7pqx5V1H4AWRA+EaE6UJ0lIRvK1RxgM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "fenix", "repo": "fenix",
"rev": "fd47b1f9404fae02a4f38bd9f4b12bad7833c96b", "rev": "87b4d20f896c99018dde4702a9c6157b516f2a76",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -170,11 +165,11 @@
}, },
"flake-compat_3": { "flake-compat_3": {
"locked": { "locked": {
"lastModified": 1688025799, "lastModified": 1717312683,
"narHash": "sha256-ktpB4dRtnksm9F5WawoIkEneh1nrEvuxb5lJFt1iOyw=", "narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=",
"owner": "nix-community", "owner": "nix-community",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "8bf105319d44f6b9f0d764efa4fdef9f1cc9ba1c", "rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -188,11 +183,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1712014858, "lastModified": 1727826117,
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -209,11 +204,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1717285511, "lastModified": 1726153070,
"narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=", "narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8", "rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -231,11 +226,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1701473968, "lastModified": 1722555600,
"narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", "rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -282,11 +277,11 @@
"systems": "systems_2" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1710146030, "lastModified": 1726560853,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -315,11 +310,11 @@
}, },
"get-flake": { "get-flake": {
"locked": { "locked": {
"lastModified": 1694475786, "lastModified": 1714237590,
"narHash": "sha256-s5wDmPooMUNIAAsxxCMMh9g68AueGg63DYk2hVZJbc8=", "narHash": "sha256-9gtHdGbzFHaR20xORN8IYd67ROWS+1nqQ5CsPf9MD8I=",
"owner": "ursi", "owner": "ursi",
"repo": "get-flake", "repo": "get-flake",
"rev": "ac54750e3b95dab6ec0726d77f440efe6045bec1", "rev": "a6c57417d1b857b8be53aba4095869a0f438c502",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -331,11 +326,11 @@
"jay": { "jay": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1713529603, "lastModified": 1730371037,
"narHash": "sha256-PjHxMABsAbQ6ZkjsmdREQ5D4CTtxCF1aRlyEqKsXMls=", "narHash": "sha256-oMVScShS67LZz3BeZTABDQWHv8hZqBXuj+ng14OIr9E=",
"owner": "mahkoh", "owner": "mahkoh",
"repo": "jay", "repo": "jay",
"rev": "670588fe4dc5ea1051e34d51c99282f6c8c4d2b2", "rev": "f36993eb6eea000f386fbf5bfa3d08dac1bd43c1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -350,11 +345,11 @@
"nixpkgs-lib": "nixpkgs-lib_2" "nixpkgs-lib": "nixpkgs-lib_2"
}, },
"locked": { "locked": {
"lastModified": 1713105314, "lastModified": 1730031145,
"narHash": "sha256-X3URKbcgIy4UaQGrsy3DmY5x+fePQ5IYaa76YewoUE0=", "narHash": "sha256-GZz0LGkeduajnF7zUuPu5evNyoOATcSsRZCkG1OqiwY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "lib-aggregate", "repo": "lib-aggregate",
"rev": "f347ed9a1cab12c27541ed4d173e2f2d5c9bc0bb", "rev": "7d235f23a84b54c39b1579b68b13e1ff83f5b1ad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -383,11 +378,11 @@
"treefmt-nix": "treefmt-nix_2" "treefmt-nix": "treefmt-nix_2"
}, },
"locked": { "locked": {
"lastModified": 1705242886, "lastModified": 1730389079,
"narHash": "sha256-TLj334vRwFtSym3m+NnKcNCnKKPNoTC/TDZL40vmOso=", "narHash": "sha256-g/CJ/KKe5MGsVx1oCBl0F9aCdcNSDeOw8H7e5QDGa2c=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-eval-jobs", "repo": "nix-eval-jobs",
"rev": "6b03a93296faf174b97546fd573c8b379f523a8d", "rev": "7f9159a16584ee86eed077c8a73e845690b7d513",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -405,11 +400,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1701208414, "lastModified": 1720066371,
"narHash": "sha256-xrQ0FyhwTZK6BwKhahIkUVZhMNk21IEI1nUcWSONtpo=", "narHash": "sha256-uPlLYH2S0ACj0IcgaK9Lsf4spmJoGejR9DotXiXSBZQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-github-actions", "repo": "nix-github-actions",
"rev": "93e39cc1a087d65bcf7a132e75a650c44dd2b734", "rev": "622f829f5fe69310a866c8a6cd07e747c44ef820",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -425,11 +420,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1729216050, "lastModified": 1730426202,
"narHash": "sha256-eVfbrE7JnaxFeGndHjTGGxuFoqZ6+/CjS2qfvV1HsXg=", "narHash": "sha256-swwKpE3lrdvcSh6Hjyf/eSe/zPnsZgeVlSl+B4yBpeo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-vscode-extensions", "repo": "nix-vscode-extensions",
"rev": "4dfd7581aaf0f25d3b7695a10dcfb1dfe4ebb953", "rev": "96dcbddd24edc60ad47f41bb2a73e06099eba4af",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -450,11 +445,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1718803059, "lastModified": 1729496181,
"narHash": "sha256-MYvDgSPWdF0hP6vzOhpqY+2a66ZLELFj+MUP5S/+dBY=", "narHash": "sha256-LrCxIU6laEf4JD1QtOBNr+PASY6CbNPpUrjLIUizt+Y=",
"owner": "numtide", "owner": "numtide",
"repo": "nixos-anywhere", "repo": "nixos-anywhere",
"rev": "ce18c086d8ca143d43ab20b3db20ab1e3e62c519", "rev": "51d347d35caec995d36d1450cb5bb183318c7fb7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -476,11 +471,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1717994219, "lastModified": 1727367213,
"narHash": "sha256-ueTu01bYU5QXdL77psMkApYHpk339xNHg/M7ZzP3uPI=", "narHash": "sha256-7O4pi8MmcJpA0nYUQkdolvKGyu6zNjf2gFYD1Q0xppc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-images", "repo": "nixos-images",
"rev": "e2fd329c3a39a90bb43e1e2cf47c180ed57831bf", "rev": "3e7978bab153f39f3fc329ad346d35a8871420f7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -491,11 +486,11 @@
}, },
"nixos-stable": { "nixos-stable": {
"locked": { "locked": {
"lastModified": 1717696253, "lastModified": 1727264057,
"narHash": "sha256-1+ua0ggXlYYPLTmMl3YeYYsBXDSCqT+Gw3u6l4gvMhA=", "narHash": "sha256-KQPI8CTTnB9CrJ7LrmLC4VWbKZfljEPBXOFGZFRpxao=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9b5328b7f761a7bbdc0e332ac4cf076a3eedb89b", "rev": "759537f06e6999e141588ff1c9be7f3a5c060106",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -555,11 +550,11 @@
}, },
"nixpkgs-2311": { "nixpkgs-2311": {
"locked": { "locked": {
"lastModified": 1713344939, "lastModified": 1720535198,
"narHash": "sha256-jpHkAt0sG2/J7ueKnG7VvLLkBYUMQbXQ2L8OBpVG53s=", "narHash": "sha256-zwVvxrdIzralnSbcpghA92tWu2DV2lwv89xZc8MTrbg=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e402c3eb6d88384ca6c52ef1c53e61bdc9b84ddd", "rev": "205fd4226592cc83fd4c0885a3e4c9c400efabb5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -571,11 +566,11 @@
}, },
"nixpkgs-2405": { "nixpkgs-2405": {
"locked": { "locked": {
"lastModified": 1717144377, "lastModified": 1730327045,
"narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=", "narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "805a384895c696f802a9bf5bf4720f37385df547", "rev": "080166c15633801df010977d9d7474b4a6c549d7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -603,29 +598,23 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"dir": "lib", "lastModified": 1727825735,
"lastModified": 1711703276, "narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=",
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=", "type": "tarball",
"owner": "NixOS", "url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
"repo": "nixpkgs",
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
"type": "github"
}, },
"original": { "original": {
"dir": "lib", "type": "tarball",
"owner": "NixOS", "url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
} }
}, },
"nixpkgs-lib_2": { "nixpkgs-lib_2": {
"locked": { "locked": {
"lastModified": 1713055793, "lastModified": 1729990941,
"narHash": "sha256-vIrZQykYW32RnlI2lT/gCcB59BOIqqrAmPirBdiirrc=", "narHash": "sha256-hUP9oxmnOmNnKcDOf5Y55HQ+NnoT0+bLWHLQWLLw9Ks=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs.lib", "repo": "nixpkgs.lib",
"rev": "361d8a4f443bbfab20bd6d222f9022b8c6665906", "rev": "7d68864343650322045894951602d6e82b5296d7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -636,27 +625,27 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1713434076, "lastModified": 1729973466,
"narHash": "sha256-+/p5edwlkqKZc6GDAQl+92Hoe1f3NNbUF9uj+X9H3pU=", "narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8494ae076b7878d61a7d2d25e89a847fe8f8364c", "rev": "cd3e8833d70618c4eea8df06f95b364b016d4950",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "release-23.11", "ref": "release-24.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1713297878, "lastModified": 1730200266,
"narHash": "sha256-hOkzkhLT59wR8VaMbh1ESjtZLbGi+XNaBN6h49SPqEc=", "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "66adc1e47f8784803f2deb6cacd5e07264ec2d5c", "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -668,11 +657,11 @@
}, },
"nixpkgs-vscodium": { "nixpkgs-vscodium": {
"locked": { "locked": {
"lastModified": 1713297878, "lastModified": 1730200266,
"narHash": "sha256-hOkzkhLT59wR8VaMbh1ESjtZLbGi+XNaBN6h49SPqEc=", "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "66adc1e47f8784803f2deb6cacd5e07264ec2d5c", "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -690,11 +679,11 @@
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1713543674, "lastModified": 1730425081,
"narHash": "sha256-vQPF8Y36O99EuS0aVIZDlO9SuwlXzGfzQGNKeaBTFxg=", "narHash": "sha256-c8JK1Zuc9QjfLfbnAEtB3uHz5pd+RMgMiR263TEtwAs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixpkgs-wayland", "repo": "nixpkgs-wayland",
"rev": "ee21b656ea43b305c8f7e25ab2994aec375083eb", "rev": "968d7a95604a2ec252ce9912199dfa9ec6410ff0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -705,11 +694,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1703134684, "lastModified": 1723221148,
"narHash": "sha256-SQmng1EnBFLzS7WSRyPM9HgmZP2kLJcPAz+Ug/nug6o=", "narHash": "sha256-7pjpeQlZUNQ4eeVntytU3jkw9dFK3k1Htgk2iuXjaD8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d6863cbcbbb80e71cecfc03356db1cda38919523", "rev": "154bcb95ad51bc257c2ce4043a725de6ca700ef6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -721,11 +710,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1713297878, "lastModified": 1730200266,
"narHash": "sha256-hOkzkhLT59wR8VaMbh1ESjtZLbGi+XNaBN6h49SPqEc=", "narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "66adc1e47f8784803f2deb6cacd5e07264ec2d5c", "rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -738,11 +727,11 @@
"ofi-pass": { "ofi-pass": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1691863924, "lastModified": 1723412133,
"narHash": "sha256-Vkm3QXjkLIu0RnM0w+upzAF9M7atKBPYqiV7f+eBKJY=", "narHash": "sha256-rOVbz4v1+DHPJMvRtxdOFWdOHlaxI7G2vm0bgEV/0Cg=",
"owner": "sereinity", "owner": "sereinity",
"repo": "ofi-pass", "repo": "ofi-pass",
"rev": "b20bd3440686429b113821c51a68b799675d5bb0", "rev": "2b6aa6a3fc0504e63df4ac3449e0065a1a4d19d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -821,7 +810,6 @@
"nixpkgs-2211" "nixpkgs-2211"
], ],
"rperf": "rperf", "rperf": "rperf",
"salut": "salut",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"srvos": "srvos", "srvos": "srvos",
"x13s-bt-firmware": "x13s-bt-firmware", "x13s-bt-firmware": "x13s-bt-firmware",
@ -847,11 +835,11 @@
"rust-analyzer-src": { "rust-analyzer-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1713373173, "lastModified": 1730386175,
"narHash": "sha256-octd9BFY9G/Gbr4KfwK4itZp4Lx+qvJeRRcYnN+dEH8=", "narHash": "sha256-0Uq+/B8eu7pw8B8pxuGdFYKjcVLwNMcHfDxU9sXh7rg=",
"owner": "rust-lang", "owner": "rust-lang",
"repo": "rust-analyzer", "repo": "rust-analyzer",
"rev": "46702ffc1a02a2ac153f1d1ce619ec917af8f3a6", "rev": "0ba893e1a00d92557ac91efb771d72eee36ca687",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -861,22 +849,6 @@
"type": "github" "type": "github"
} }
}, },
"salut": {
"flake": false,
"locked": {
"lastModified": 1671283721,
"narHash": "sha256-W0lhhImSXtYJDeMbxyEioYu/Bh7ZclwR1/5DzNbxM8o=",
"owner": "snakedye",
"repo": "salut",
"rev": "aa57c4d190812908a9c32cd49cff14390c6dfdcb",
"type": "gitlab"
},
"original": {
"owner": "snakedye",
"repo": "salut",
"type": "gitlab"
}
},
"sops-nix": { "sops-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -885,11 +857,11 @@
"nixpkgs-stable": "nixpkgs-stable" "nixpkgs-stable": "nixpkgs-stable"
}, },
"locked": { "locked": {
"lastModified": 1713532771, "lastModified": 1729999681,
"narHash": "sha256-vfKxhYVMzG2tg48/1rewBoSLCrKIjQsG1j7Nm/Y2gf4=", "narHash": "sha256-qm0uCtM9bg97LeJTKQ8dqV/FvqRN+ompyW4GIJruLuw=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "a929a011a09db735abc45a8a45d1ff7fdee62755", "rev": "1666d16426abe79af5c47b7c0efa82fd31bf4c56",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -905,11 +877,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1713533513, "lastModified": 1730335989,
"narHash": "sha256-nv5GmWaGryyZU8ihQIYLZWasqaXTZKGTjsypG0TRw9Q=", "narHash": "sha256-hG7H+EcNZfNa5tsUzMX+NBYpG4viCTvfRp5t7ZUnKW8=",
"owner": "numtide", "owner": "numtide",
"repo": "srvos", "repo": "srvos",
"rev": "d8945920cb8e98dc737d1fc2d42607f5916c34cf", "rev": "b80b3ffabd20e39b579f45a33e638bbb1b297b60",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -920,16 +892,16 @@
}, },
"stable": { "stable": {
"locked": { "locked": {
"lastModified": 1696039360, "lastModified": 1724316499,
"narHash": "sha256-g7nIUV4uq1TOVeVIDEZLb005suTWCUjSY0zYOlSBsyE=", "narHash": "sha256-Qb9MhKBUTCfWg/wqqaxt89Xfi6qTD3XpTzQ9eXi3JmE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "32dcb45f66c0487e92db8303a798ebc548cadedc", "rev": "797f7dc49e0bc7fab4b57c021cdf68f595e47841",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-23.05", "ref": "nixos-24.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -987,11 +959,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1717850719, "lastModified": 1727252110,
"narHash": "sha256-npYqVg+Wk4oxnWrnVG7416fpfrlRhp/lQ6wQ4DHI8YE=", "narHash": "sha256-3O7RWiXpvqBcCl84Mvqa8dXudZ1Bol1ubNdSmQt7nF4=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "4fc1c45a5f50169f9f29f6a98a438fb910b834ed", "rev": "1bff2ba6ec22bc90e9ad3f7e94cca0d37870afa3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1009,11 +981,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1702979157, "lastModified": 1723303070,
"narHash": "sha256-RnFBbLbpqtn4AoJGXKevQMCGhra4h6G2MPcuTSZZQ+g=", "narHash": "sha256-krGNVA30yptyRonohQ+i9cnK+CfCpedg6z3qzqVJcTs=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "2961375283668d867e64129c22af532de8e77734", "rev": "14c092e0326de759e16b37535161b3cb9770cea3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1042,11 +1014,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1710356110, "lastModified": 1725018627,
"narHash": "sha256-dLYYHNiimcY5WMOnYs9zHVKdjqoPhdFhbEJa2h5hel0=", "narHash": "sha256-uBEU/aKl9jlJ8vIK556TaqSBEHx6/t6AE4fbt/AoRfA=",
"owner": "l4l", "owner": "l4l",
"repo": "yofi", "repo": "yofi",
"rev": "0d7af4653fa8f119a4aee0b7981edc88a6c7e892", "rev": "09901e75cbdf2147553ab888adde480e57baa0d1",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -73,11 +73,6 @@
flake = false; flake = false;
}; };
salut = {
url = "gitlab:snakedye/salut";
flake = false;
};
prs = { prs = {
# https://gitlab.com/timvisee/prs/-/merge_requests/42/ # https://gitlab.com/timvisee/prs/-/merge_requests/42/
# $ find "$(dirname $(readlink $(which prs)))/.." -name "_prs" # $ find "$(dirname $(readlink $(which prs)))/.." -name "_prs"
@ -235,32 +230,8 @@
dcpj4110dwDriver = dcpj4110dw.driver; dcpj4110dwDriver = dcpj4110dw.driver;
dcpj4110dwCupswrapper = dcpj4110dw.cupswrapper; dcpj4110dwCupswrapper = dcpj4110dw.cupswrapper;
# broken as of 2023-04-27 because it doesn't load without a config
# aphorme_launcher = craneLib.buildPackage {src = inputs.aphorme_launcher;};
# yofi = inputs'.yofi.packages.default;
# ofi-pass = craneLibOfiPass.buildPackage {src = inputs.ofi-pass;};
inherit (inputs'.colmena.packages) colmena; inherit (inputs'.colmena.packages) colmena;
# jay = pkgs.callPackage (self + /nix/pkgs/jay.nix) {
# src = inputs.jay;
# rustPlatform = pkgs.makeRustPlatform {
# cargo = inputs'.fenix.packages.stable.toolchain;
# rustc = inputs'.fenix.packages.stable.toolchain;
# };
# };
salut = craneLib.buildPackage {
src = inputs.salut;
nativeBuildInputs = [
pkgs.pkg-config
];
buildInputs = [
pkgs.libxkbcommon
pkgs.fontconfig
];
};
prs = prs =
pkgs.callPackage pkgs.callPackage
({ ({
@ -329,12 +300,6 @@
ssh root@${self.colmena.sj-vps-htz0.deployment.targetHost} -L 8385:syncthing.containers:8384 ssh root@${self.colmena.sj-vps-htz0.deployment.targetHost} -L 8385:syncthing.containers:8384
''; '';
logseq =
pkgs.callPackage ./nix/pkgs/logseq
(lib.attrsets.optionalAttrs pkgs.stdenv.isAarch64 {
overrideSrc = self.inputs.logseq_0_10_9_aarch64_appimage;
});
rperf = craneLib.buildPackage { rperf = craneLib.buildPackage {
src = inputs.rperf; src = inputs.rperf;
nativeBuildInputs = [ nativeBuildInputs = [
@ -370,9 +335,5 @@
}; };
in (all // {default = all.develop;}); in (all // {default = all.develop;});
}; };
flake.nixosModules = {
# thinkpad-x13s = { pkgs, config, lib, options, ... } @ args: (import ./nix/os/modules/hardware.thinkpad-x13s.nix (args // { inherit self; }));
};
}); });
} }

View file

@ -50,6 +50,17 @@ in {
"electron-27.3.11" "electron-27.3.11"
]; ];
nixpkgs.config.allowUnfree = [
"electron-28.3.3"
"electron-27.3.11"
];
# nixpkgs.config.allowUnfreePredicate = pkg:
# builtins.elem (lib.getName pkg) [
# "smartgithg"
# "electron-27.3.11"
# ];
home.packages = home.packages =
[] []
++ (with pkgs; [ ++ (with pkgs; [
@ -109,7 +120,7 @@ in {
aspellDicts.de aspellDicts.de
# skypeforlinux # skypeforlinux
# pkgsUnstable.jitsi-meet-electron # pkgsUnstable.jitsi-meet-electron
thunderbird-115 thunderbird-128
# betterbird # betterbird
# FIXME: depends on insecure openssl 1.1.1t # FIXME: depends on insecure openssl 1.1.1t
@ -118,8 +129,6 @@ in {
# TODO: remove or reuse this depending on whether waydroid signal works # TODO: remove or reuse this depending on whether waydroid signal works
pkgsUnstable.signal-desktop pkgsUnstable.signal-desktop
# gnome.cheese
# Virtualization # Virtualization
virt-manager virt-manager
@ -136,6 +145,8 @@ in {
yt-dlp yt-dlp
(writeShellScriptBin "youtube-dl-audio" "${yt-dlp}/bin/yt-dlp --extract-audio --audio-format best --audio-quality 9 \${@:?}") (writeShellScriptBin "youtube-dl-audio" "${yt-dlp}/bin/yt-dlp --extract-audio --audio-format best --audio-quality 9 \${@:?}")
libwebcam libwebcam
libcamera
snapshot
# Network Tools # Network Tools
tcpdump tcpdump
@ -200,7 +211,7 @@ in {
# dex # dex
coreutils coreutils
lsof lsof
xdg_utils xdg-utils
xdg-user-dirs xdg-user-dirs
dconf dconf
picocom picocom
@ -229,14 +240,26 @@ in {
# libretro.snes9x2010 # libretro.snes9x2010
# retroarchFull # retroarchFull
packages'.logseq (
# (pkgs.runCommand "logseq-wrapper" pkgs.logseq.overrideAttrs (
# { attrs:
# nativeBuildInputs = [ pkgs.makeWrapper ]; lib.attrsets.recursiveUpdate
# } '' attrs
# makeWrapper ${pkgs.logseq}/bin/logseq $out/bin/logseq \ (
# --set NIXOS_OZONE_WL "" lib.attrsets.optionalAttrs pkgs.stdenv.isAarch64 {
# '') src = repoFlake.inputs.logseq_0_10_9_aarch64_appimage;
meta.platforms = ["aarch64-linux"];
}
)
)
)
# (
# pkgsUnstable.callPackage (repoFlake + "/nix/pkgs/logseq")
# (lib.attrsets.optionalAttrs pkgs.stdenv.isAarch64 {
# overrideSrc = repoFlake.inputs.logseq_0_10_9_aarch64_appimage;
# })
# )
]) ])
++ (lib.lists.optionals (!pkgs.stdenv.targetPlatform.isAarch64) [ ++ (lib.lists.optionals (!pkgs.stdenv.targetPlatform.isAarch64) [
]) ])

View file

@ -13,9 +13,27 @@
nixpkgs.config = { nixpkgs.config = {
allowBroken = false; allowBroken = false;
allowUnfree = true; allowUnfree = true;
allowUnsupportedSystem = true;
allowInsecurePredicate = pkg:
builtins.elem (lib.getName pkg) [
"electron-28.3.3"
"electron-27.3.11"
"electron"
];
permittedInsecurePackages = [ permittedInsecurePackages = [
"electron-28.3.3"
"electron-27.3.11"
"electron"
]; ];
allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [
"obsidian"
"vivaldi"
"aspell-dict-en-science"
];
}; };
home.keyboard = { home.keyboard = {

View file

@ -33,22 +33,8 @@ in {
imports = [ imports = [
../profiles/wayland-desktop.nix ../profiles/wayland-desktop.nix
../programs/waybar.nix ../programs/waybar.nix
# ../programs/salut.nix
]; ];
# TODO: autostart
# environment.loginShellInit = ''
# if [[ "$(tty)" == /dev/tty1 ]]; then
# echo starting sway..
# exec sway
# fi
# '';
services = {
# TODO: doesn't work with 2 screens
# flameshot.enable = true;
};
services.dunst = { services.dunst = {
enable = true; enable = true;
}; };
@ -73,7 +59,6 @@ in {
pkgs.ttf_bitstream_vera pkgs.ttf_bitstream_vera
pkgs.noto-fonts pkgs.noto-fonts
pkgs.noto-fonts-cjk
pkgs.noto-fonts-cjk-sans pkgs.noto-fonts-cjk-sans
pkgs.noto-fonts-cjk-serif pkgs.noto-fonts-cjk-serif
pkgs.noto-fonts-emoji pkgs.noto-fonts-emoji
@ -88,12 +73,12 @@ in {
pkgs.dina-font pkgs.dina-font
pkgs.monoid pkgs.monoid
pkgs.hermit pkgs.hermit
# found on colemickens' repo ### found on colemickens' repo
pkgs.gelasio # metric-compatible with Georgia pkgs.gelasio # metric-compatible with Georgia
pkgs.powerline-symbols pkgs.powerline-symbols
pkgs.iosevka-comfy.comfy-fixed pkgs.iosevka-comfy.comfy-fixed
# experimental stuff ## experimental stuff
pkgs.fuzzel pkgs.fuzzel
]; ];

View file

@ -1,6 +1,9 @@
{pkgs, ...}: { {pkgs, ...}: {
programs.librewolf = {enable = true;}; programs.librewolf = {enable = false;};
programs.firefox = {enable = true;}; programs.firefox = {
enable = true;
package = pkgs.firefox-esr-128;
};
# home.file.".mozilla/native-messaging-hosts/passff.json".source = "${pkgs.passff-host}/share/passff-host/passff.json"; # home.file.".mozilla/native-messaging-hosts/passff.json".source = "${pkgs.passff-host}/share/passff-host/passff.json";
} }

View file

@ -1,3 +1,3 @@
{pkgs, ...}: { {pkgs, ...}: {
home.packages = with pkgs; [libreoffice-fresh]; home.packages = [pkgs.libreoffice];
} }

View file

@ -159,17 +159,16 @@
''); '');
systemd.services.testing-credentials = { systemd.services.testing-credentials = {
description = "testing credentials";
wantedBy = ["multi-user.target"]; wantedBy = ["multi-user.target"];
path = [pkgs.coreutils]; path = [pkgs.coreutils];
serviceConfig = { serviceConfig = {
SyslogIdentifier = "testing-credential"; # SyslogIdentifier = "testing-credentials";
StateDirectory = "testing-credentials"; # StateDirectory = "testing-credentials";
DynamicUser = true; # DynamicUser = true;
# User = "tc"; # User = "tc";
# ProtectHome = true; # ProtectHome = true;
ProtectSystem = true; # ProtectSystem = true;
# LoadCredential = [ # LoadCredential = [
# "mycelium-keyfile:${self.nixosConfigurations.default.config.services.mycelium.keyFile}" # "mycelium-keyfile:${self.nixosConfigurations.default.config.services.mycelium.keyFile}"
# "hosts:/etc/hosts" # "hosts:/etc/hosts"
@ -241,6 +240,7 @@
# this is read by the `/init` script and prevents various incompatible commands like mount, etc. # this is read by the `/init` script and prevents various incompatible commands like mount, etc.
# the value of this doesn't seem to matter as long as it's not an empty string. # the value of this doesn't seem to matter as long as it's not an empty string.
"container=nerd" "container=nerd"
"SYSTEMD_LOG_LEVEL=debug"
]; ];
volumes = { volumes = {
# "/var/lib/private/mycelium/key.bin" = {}; # "/var/lib/private/mycelium/key.bin" = {};

View file

@ -10,12 +10,7 @@
packages', packages',
... ...
}: { }: {
nixpkgs.overlays = [ nixpkgs.overlays = [nodeFlake.overlays.default];
(final: previous: {
# inherit (nodeFlake.inputs.nixpkgs-systemd256.legacyPackages.${system}) systemd systemdMinimal;
# inherit (nodeFlake.inputs.nixpkgs-unstable.legacyPackages.${system}) libcamera libcamera-qcam;
})
];
nixos-x13s = { nixos-x13s = {
enable = true; enable = true;
@ -114,27 +109,44 @@
protocol = "ssh-ng"; protocol = "ssh-ng";
systems = [ systems = [
"x86_64-linux" "x86_64-linux"
# "aarch64-linux"
]; ];
supportedFeatures = [ supportedFeatures = [
"big-parallel" "big-parallel"
"kvm" "kvm"
"nixos-test"
]; ];
maxJobs = 16; maxJobs = 16;
} }
{
hostName = "aarch64-linux-builder-0.infra.holochain.org";
sshUser = "nix-remote-builder";
sshKey = config.sops.secrets.builder-private-key.path;
protocol = "ssh-ng";
systems = [
"aarch64-linux"
];
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
maxJobs = 4;
}
{ {
hostName = "x64-linux-dev-01.dev.infra.holochain.org"; hostName = "x64-linux-dev-01.dev.infra.holochain.org";
sshUser = "nix-remote-builder"; sshUser = "nix-remote-builder";
sshKey = config.sops.secrets.builder-private-key.path; sshKey = config.sops.secrets.builder-private-key.path;
protocol = "ssh-ng"; protocol = "ssh-ng";
systems = [ systems = [
"x86_64-linux" # "x86_64-linux"
# "aarch64-linux" "aarch64-linux"
]; ];
supportedFeatures = [ supportedFeatures = [
"big-parallel" "big-parallel"
"kvm" "kvm"
"nixos-test"
]; ];
maxJobs = 0; maxJobs = 0;
} }
@ -199,12 +211,14 @@
../../../home-manager/configuration/graphical-fullblown.nix ../../../home-manager/configuration/graphical-fullblown.nix
]; ];
nixpkgs.overlays = [nodeFlake.overlays.default];
home.sessionVariables = {}; home.sessionVariables = {};
home.packages = with pkgs; [ home.packages = with pkgs; [
]; ];
# TODO: currently unsupported # TODO(upstream): currently unsupported on x13s
services.gammastep.enable = true; services.gammastep.enable = true;
}; };
@ -239,14 +253,6 @@
virtualisation.containers.enable = true; virtualisation.containers.enable = true;
virtualisation.podman.enable = true; virtualisation.podman.enable = true;
nix.settings.substituters = [
"https://nixos-x13s.cachix.org"
];
nix.settings.trusted-public-keys = [
"nixos-x13s.cachix.org-1:SzroHbidolBD3Sf6UusXp12YZ+a5ynWv0RtYF0btFos="
];
steveej.holo-zerotier = { steveej.holo-zerotier = {
enable = true; enable = true;
autostart = false; autostart = false;
@ -258,4 +264,6 @@
programs.adb.enable = true; programs.adb.enable = true;
nix.settings.sandbox = lib.mkForce "relaxed"; nix.settings.sandbox = lib.mkForce "relaxed";
systemd.user.services.wireplumber.environment.LIBCAMERA_IPA_PROXY_PATH = "${pkgs.libcamera}/libexec/libcamera";
} }

View file

@ -28,11 +28,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1725377834, "lastModified": 1730190761,
"narHash": "sha256-tqoAO8oT6zEUDXte98cvA1saU9+1dLJQe3pMKLXv8ps=", "narHash": "sha256-o5m5WzvY6cGIDupuOvjgNSS8AN6yP2iI9MtUC6q/uos=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "e55f9a8678adc02024a4877c2a403e3f6daf24fe", "rev": "3979285062d6781525cded0f6c4ff92e71376b55",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -148,11 +148,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1725703823, "lastModified": 1726989464,
"narHash": "sha256-tDgM4d8mLK0Hd6YMB2w1BqMto1XBXADOzPEaLl10VI4=", "narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "208df2e558b73b6a1f0faec98493cb59a25f62ba", "rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -165,16 +165,16 @@
"linux-jhovold": { "linux-jhovold": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1728631036, "lastModified": 1730186574,
"narHash": "sha256-1LnClVjY6WS+IR9eqPFA7gzXm0cio3mY23NXj9cKHHs=", "narHash": "sha256-QjStPt3c/v55lJUgn4Rdx/WTaQKdUxNL9nwkIKQ8O2Q=",
"owner": "jhovold", "owner": "jhovold",
"repo": "linux", "repo": "linux",
"rev": "6a97bc22fa36010400b91e6d5979741c391112c3", "rev": "699d5b0ccdc1a343ded65aa876f0b720ca7dada9",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "jhovold", "owner": "jhovold",
"ref": "wip/sc8280xp-6.12-rc2", "ref": "wip/sc8280xp-6.12-rc5",
"repo": "linux", "repo": "linux",
"type": "github" "type": "github"
} }
@ -190,11 +190,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1725529869, "lastModified": 1730381857,
"narHash": "sha256-ekEL4HrZbAeoZmopkxvZ4Z4ufkUEv09b4liGnIIiryc=", "narHash": "sha256-PbEoM+AnZTuo9xtwcDcTH9FZAzPzfBhX41+zVVTdgRo=",
"owner": "threefoldtech", "owner": "threefoldtech",
"repo": "mycelium", "repo": "mycelium",
"rev": "43c774cc1d5bae9558d0086e2be334812cafe2be", "rev": "8a2b564c8e279d4afd0a10058b4481799a7513e1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -247,17 +247,18 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1728680044, "lastModified": 1730215039,
"narHash": "sha256-kDqUDwEEv1KPOObmdnO3zb5mFthFDHoPgzVDpmRIq44=", "narHash": "sha256-GxhtLAsdpZX2SndSu/AoKugk/vht5RZ47FTcrYILDew=",
"ref": "refs/heads/remaintain", "ref": "bump",
"rev": "f691c125485b6764ebef0b9f148613d79de95525", "rev": "ff41877fbdf32f2029ade902f10142afb053d2da",
"revCount": 109, "revCount": 116,
"type": "git", "type": "git",
"url": "https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain" "url": "https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git"
}, },
"original": { "original": {
"ref": "bump",
"type": "git", "type": "git",
"url": "https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain" "url": "https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git"
} }
}, },
"nixpkgs": { "nixpkgs": {
@ -288,29 +289,13 @@
"url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz"
} }
}, },
"nixpkgs-unstable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1728621521, "lastModified": 1730327045,
"narHash": "sha256-Fk8C/cywdAP//XjK1/CF2VMIRoQjhosCor71p84ff+c=", "narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "7045aa75c71e90ae3bbb486d35414b08add9c424", "rev": "080166c15633801df010977d9d7474b4a6c549d7",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable-small",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1725826545,
"narHash": "sha256-L64N1rpLlXdc94H+F6scnrbuEu+utC03cDDVvvJGOME=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "f4c846aee8e1e29062aa8514d5e0ab270f4ec2f9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -320,6 +305,22 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-unstable": {
"locked": {
"lastModified": 1730200266,
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"disko": "disko", "disko": "disko",
@ -328,7 +329,10 @@
"mycelium": "mycelium", "mycelium": "mycelium",
"nix-snapshotter": "nix-snapshotter", "nix-snapshotter": "nix-snapshotter",
"nixos-x13s": "nixos-x13s", "nixos-x13s": "nixos-x13s",
"nixpkgs": "nixpkgs_2", "nixpkgs": [
"nixpkgs-stable"
],
"nixpkgs-stable": "nixpkgs-stable",
"nixpkgs-unstable": "nixpkgs-unstable" "nixpkgs-unstable": "nixpkgs-unstable"
} }
}, },

View file

@ -1,22 +1,21 @@
{ {
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.05"; nixpkgs.follows = "nixpkgs-stable";
# nixpkgs.follows = "nixpkgs-unstable"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
# required for home-manager modules
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable-small";
get-flake.url = "github:ursi/get-flake"; get-flake.url = "github:ursi/get-flake";
disko.inputs.nixpkgs.follows = "nixpkgs"; disko.inputs.nixpkgs.follows = "nixpkgs";
home-manager = { home-manager = {
# url = "github:nix-community/home-manager/master";
url = "github:nix-community/home-manager/release-24.05"; url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
nixos-x13s.url = nixos-x13s.url =
"git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain" "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?ref=bump"
# 6.11.0 # 6.11.0
# "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain&rev=6b9efe77ca80653354981c720af3c4241ac71490" # "git+https://forgejo.www.stefanjunker.de/steveej/nixos-x13s.git?branch=remaintain&rev=6b9efe77ca80653354981c720af3c4241ac71490"
# 6.12.0-rc6 # 6.12.0-rc6
@ -75,7 +74,6 @@
# flake registry # flake registry
{ {
nixpkgs.overlays = builtins.attrValues self.overlays;
nix.registry.nixpkgs.flake = nixpkgs; nix.registry.nixpkgs.flake = nixpkgs;
} }
] ]
@ -87,7 +85,52 @@
inherit mkNixosConfiguration; inherit mkNixosConfiguration;
}; };
overlays = {}; overlays.libcamera = final: previous: {
wireplumber = previous.wireplumber.overrideAttrs (_: {
version = "git";
src = previous.fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "pipewire";
repo = "wireplumber";
rev = "71f868233792f10848644319dbdc97a4f147d554";
hash = "sha256-VX3OFsBK9AbISm/XTx8p05ak+z/VcKXfUXhB9aI9ev8=";
};
});
libcamera = previous.libcamera.overrideAttrs (_: {
postFixup = ''
../src/ipa/ipa-sign-install.sh src/ipa-priv-key.pem $out/lib/libcamera/ipa_*.so
'';
});
libcamera-qcam = previous.libcamera-qcam.overrideAttrs (_: {
postFixup = ''
../src/ipa/ipa-sign-install.sh src/ipa-priv-key.pem $out/lib/libcamera/ipa_*.so
'';
});
};
overlays.default = final: previous: let
inherit (previous.stdenv) system;
pkgsUnstable = import self.inputs.nixpkgs-unstable.outPath {
inherit system;
overlays = [self.overlays.libcamera];
};
in {
inherit
(pkgsUnstable)
libcamera
;
webkitgtk = previous.webkitgtk.overrideAttrs (attrs: {
preConfigure =
attrs.preConfigure
+ ''
export NIX_BUILD_CORES="$((NIX_BUILD_CORES > 8 ? 8 : NIX_BUILD_CORES))"
export NUMBER_OF_PROCESSORS="$NIX_BUILD_CORES"
'';
});
};
nixosConfigurations = { nixosConfigurations = {
native = mkNixosConfiguration { native = mkNixosConfiguration {

View file

@ -1,240 +0,0 @@
{
self,
pkgs,
config,
lib,
options,
...
}: let
# TODO: introduce options for these
kernelPdMapper = true;
cfg = config.hardware.thinkpad-x13s;
in {
options.hardware.thinkpad-x13s = {
# TODO: respect this
enable = lib.mkEnableOption "x13s hardware support";
bluetoothMac = lib.mkOption {
type = lib.types.str;
description = "mac address to set on boot";
};
};
config = let
inherit (config.boot.loader) efi;
kp = [
{
name = "x13s-cfg";
patch = null;
extraStructuredConfig = with lib.kernel; {
EFI_ARMSTUB_DTB_LOADER = lib.mkForce yes;
OF_OVERLAY = lib.mkForce yes;
BTRFS_FS = lib.mkForce yes;
BTRFS_FS_POSIX_ACL = lib.mkForce yes;
MEDIA_CONTROLLER = lib.mkForce yes;
SND_USB_AUDIO_USE_MEDIA_CONTROLLER = lib.mkForce yes;
SND_USB = lib.mkForce yes;
SND_USB_AUDIO = lib.mkForce module;
USB_XHCI_PCI = lib.mkForce module;
NO_HZ_FULL = lib.mkForce yes;
HZ_100 = lib.mkForce yes;
HZ_250 = lib.mkForce no;
DRM_AMDGPU = lib.mkForce no;
DRM_NOUVEAU = lib.mkForce no;
QCOM_TSENS = lib.mkForce yes;
NVMEM_QCOM_QFPROM = lib.mkForce yes;
ARM_QCOM_CPUFREQ_NVMEM = lib.mkForce yes;
VIRTIO_PCI = lib.mkForce module;
# forthcoming kernel work: QCOM_PD_MAPPER = lib.mkForce module;
};
}
];
qrtr = pkgs.callPackage "${self.inputs.adamcstephens_stop-export}/hardware/x13s/qrtr/qrtr.nix" {};
pd-mapper = pkgs.callPackage "${self.inputs.adamcstephens_stop-export}/hardware/x13s/qrtr/pd-mapper.nix" {
inherit qrtr;
};
# We can't quite move to mainline linux
linux_x13s_pkg = {buildLinux, ...} @ args:
buildLinux (args
// rec {
version = "6.7.0";
modDirVersion = lib.versions.pad 3 version;
extraMeta.branch = lib.versions.majorMinor version;
src = self.inputs.linux_x13s;
kernelPatches = (args.kernelPatches or []) ++ kp;
}
// (args.argsOverride or {}));
# we add additional configuration on top of te normal configuration above
# using the extraStructuredConfig option on the kernel patch
linux_x13s = pkgs.callPackage linux_x13s_pkg {
defconfig = "johan_defconfig";
};
linuxPackages_x13s = pkgs.linuxPackagesFor linux_x13s;
dtbName = "sc8280xp-lenovo-thinkpad-x13s.dtb";
dtb = "${linuxPackages_x13s.kernel}/dtbs/qcom/${dtbName}";
x13s_alsa-ucm-conf = pkgs.alsa-ucm-conf.overrideAttrs (prev: {
src = self.inputs.alsa-ucm-conf;
});
alsa-ucm-conf-env.ALSA_CONFIG_UCM2 = "${x13s_alsa-ucm-conf}/share/alsa/ucm2";
in
lib.mkIf cfg.enable
{
nixpkgs.overlays = [
(
final: prev: {
x13s_extra-firmware =
pkgs.callPackage
"${self.inputs.adamcstephens_stop-export}/hardware/x13s/extra-firmware.nix"
{};
inherit qrtr pd-mapper;
}
)
];
# ensure the x13s' dtb file is in the boot partition
# TODO:: is this needed for the VT display somehow?
system.activationScripts.x13s-dtb = ''
in_package="${dtb}"
esp_tool_folder="${efi.efiSysMountPoint}/"
in_esp="''${esp_tool_folder}${dtbName}"
>&2 echo "Ensuring $in_esp in EFI System Partition"
if ! ${pkgs.diffutils}/bin/cmp --silent "$in_package" "$in_esp"; then
>&2 echo "Copying $in_package -> $in_esp"
mkdir -p "$esp_tool_folder"
cp "$in_package" "$in_esp"
sync
fi
'';
boot = {
loader.systemd-boot.enable = true;
loader.systemd-boot.extraFiles = {
"${dtbName}" = dtb;
};
loader.efi.canTouchEfiVariables = false;
loader.efi.efiSysMountPoint = "/boot";
blacklistedKernelModules = ["wwan"];
kernelPackages = linuxPackages_x13s;
kernelParams = [
"dtb=${dtbName}"
"boot.shell_on_fail"
# jhovold recommended
"efi=noruntime"
"clk_ignore_unused"
"pd_ignore_unused"
"arm64.nopauth"
# blacklist graphics in initrd so the firmware can load from disk
"rd.driver.blacklist=msm"
];
initrd = {
includeDefaultModules = false;
# kernelModules = [
# "nvme"
# "phy_qcom_qmp_pcie"
# "pcie_qcom"
# "i2c_core"
# "i2c_hid"
# "i2c_hid_of"
# "i2c_qcom_geni"
# "leds_qcom_lpg"
# "pwm_bl"
# "qrtr"
# "pmic_glink_altmode"
# "gpio_sbu_mux"
# "phy_qcom_qmp_combo"
# "gpucc_sc8280xp"
# "dispcc_sc8280xp"
# "phy_qcom_edp"
# "panel_edp"
# # "msm"
# ];
availableKernelModules = [
"i2c_hid"
"i2c_hid_of"
"i2c_qcom_geni"
"leds_qcom_lpg"
"pwm_bl"
"qrtr"
"pmic_glink_altmode"
"gpio_sbu_mux"
"phy_qcom_qmp_combo"
"panel_edp"
# "msm"
"phy_qcom_edp"
"i2c_core"
"i2c_hid"
"i2c_hid_of"
"i2c_qcom_geni"
"pcie_qcom"
"phy_qcom_qmp_combo"
"phy_qcom_qmp_pcie"
"phy_qcom_qmp_usb"
"phy_qcom_snps_femto_v2"
"phy_qcom_usb_hs"
"nvme"
"usbcore"
"xhci_hcd"
"usbhid"
"usb_storage"
"uas"
];
};
};
# default is performance
powerManagement.cpuFreqGovernor = "ondemand";
hardware.enableAllFirmware = true;
hardware.firmware = [
# pkgs.linux-firmware
pkgs.x13s_extra-firmware
];
systemd.services.pd-mapper = {
wantedBy = ["multi-user.target"];
serviceConfig = {
ExecStart = "${lib.getExe pd-mapper}";
Restart = "always";
};
};
environment.sessionVariables = alsa-ucm-conf-env;
systemd.user.services.pipewire.environment = alsa-ucm-conf-env;
systemd.user.services.wireplumber.environment = alsa-ucm-conf-env;
systemd.services.bluetooth = {
serviceConfig = {
# disabled because btmgmt call hangs
ExecStartPre = [
""
"${pkgs.util-linux}/bin/rfkill block bluetooth"
"${pkgs.bluez5-experimental}/bin/btmgmt public-addr ${cfg.bluetoothMac}"
"${pkgs.util-linux}/bin/rfkill unblock bluetooth"
];
RestartSec = 5;
Restart = "on-failure";
};
};
};
}

View file

@ -11,7 +11,7 @@ in {
}; };
config = { config = {
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "zerotierone" ]; nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) ["zerotierone"];
services.zerotierone = { services.zerotierone = {
enable = cfg.enable; enable = cfg.enable;

View file

@ -4,6 +4,7 @@
repoFlakeInputs', repoFlakeInputs',
packages', packages',
pkgs, pkgs,
lib,
... ...
}: let }: let
# TODO: make this configurable # TODO: make this configurable

View file

@ -18,7 +18,7 @@ in {
services.gvfs = { services.gvfs = {
enable = true; enable = true;
package = lib.mkForce pkgs.gnome3.gvfs; package = lib.mkForce pkgs.gnome.gvfs;
}; };
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
@ -36,7 +36,7 @@ in {
# FIXME: `true` breaks xdg-open from alacritty: # FIXME: `true` breaks xdg-open from alacritty:
# $ xdg-open "https://github.com/" # $ xdg-open "https://github.com/"
# Error: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.OpenURI” on object at path /org/freedesktop/portal/desktop # Error: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.OpenURI” on object at path /org/freedesktop/portal/desktop
xdgOpenUsePortal = true; xdgOpenUsePortal = false;
wlr = { wlr = {
enable = true; enable = true;
@ -89,6 +89,7 @@ in {
alsa.enable = true; alsa.enable = true;
alsa.support32Bit = true; alsa.support32Bit = true;
pulse.enable = true; pulse.enable = true;
wireplumber.enable = true;
# If you want to use JACK applications, uncomment this # If you want to use JACK applications, uncomment this
#jack.enable = true; #jack.enable = true;
}; };

View file

@ -3,9 +3,13 @@
stdenv, stdenv,
fetchurl, fetchurl,
appimageTools, appimageTools,
unzip,
makeWrapper, makeWrapper,
# graphs will not sync without matching upstream's major electron version # Notice: graphs will not sync without matching upstream's major electron version
# the specific electron version is set at top-level file to preserve override interface.
# whenever updating this package also sync electron version at top-level file.
electron_27, electron_27,
autoPatchelfHook,
git, git,
nix-update-script, nix-update-script,
overrideSrc ? null, overrideSrc ? null,
@ -22,62 +26,73 @@ in {
else else
(fetchurl { (fetchurl {
url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage"; url = "https://github.com/logseq/logseq/releases/download/${version}/logseq-linux-x64-${version}.AppImage";
hash = "sha256-F3YbqgvL04P0nXaIVkJlCq/z8hUE0M0UutkBs2omuBE="; hash = "sha256-F3YbqgvL04P0nXaIVkJlCq/z8hUE0M0UutkBs2omuBe=";
name = "${pname}-${version}.AppImage"; name = "${pname}-${version}.AppImage";
}); });
appimageContents = appimageTools.extract { nativeBuildInputs =
inherit pname src version; [makeWrapper]
}; ++ lib.optionals stdenv.hostPlatform.isLinux [autoPatchelfHook]
++ lib.optionals stdenv.hostPlatform.isDarwin [unzip];
buildInputs = [stdenv.cc.cc.lib];
dontUnpack = true; dontUnpack = stdenv.hostPlatform.isLinux;
dontConfigure = true; dontConfigure = true;
dontBuild = true; dontBuild = true;
nativeBuildInputs = [makeWrapper]; installPhase =
''
runHook preInstall
''
+ lib.optionalString stdenv.hostPlatform.isLinux (
let
appimageContents = appimageTools.extract {inherit pname src version;};
in ''
mkdir -p $out/bin $out/share/logseq $out/share/applications
cp -a ${appimageContents}/{locales,resources} $out/share/logseq
cp -a ${appimageContents}/Logseq.desktop $out/share/applications/logseq.desktop
installPhase = '' # remove the `git` in `dugite` because we want the `git` in `nixpkgs`
runHook preInstall chmod +w -R $out/share/logseq/resources/app/node_modules/dugite/git
chmod +w $out/share/logseq/resources/app/node_modules/dugite
rm -rf $out/share/logseq/resources/app/node_modules/dugite/git
chmod -w $out/share/logseq/resources/app/node_modules/dugite
mkdir -p $out/bin $out/share/${pname} $out/share/applications mkdir -p $out/share/pixmaps
cp -a ${appimageContents}/{locales,resources} $out/share/${pname} ln -s $out/share/logseq/resources/app/icons/logseq.png $out/share/pixmaps/logseq.png
cp -a ${appimageContents}/Logseq.desktop $out/share/applications/${pname}.desktop
# remove the `git` in `dugite` because we want the `git` in `nixpkgs` substituteInPlace $out/share/applications/logseq.desktop \
if test -e $out/share/${pname}/resources/app/node_modules/dugite/git; then --replace Exec=Logseq Exec=logseq \
chmod +w -R $out/share/${pname}/resources/app/node_modules/dugite/git --replace Icon=Logseq Icon=logseq
chmod +w $out/share/${pname}/resources/app/node_modules/dugite ''
rm -rf $out/share/${pname}/resources/app/node_modules/dugite/git )
chmod -w $out/share/${pname}/resources/app/node_modules/dugite + lib.optionalString stdenv.hostPlatform.isDarwin ''
fi mkdir -p $out/{Applications/Logseq.app,bin}
cp -R . $out/Applications/Logseq.app
makeWrapper $out/Applications/Logseq.app/Contents/MacOS/Logseq $out/bin/logseq
''
+ ''
runHook postInstall
'';
mkdir -p $out/share/pixmaps postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
ln -s $out/share/${pname}/resources/app/icons/logseq.png $out/share/pixmaps/${pname}.png
substituteInPlace $out/share/applications/${pname}.desktop \
--replace Exec=Logseq Exec=${pname} \
--replace Icon=Logseq Icon=${pname}
runHook postInstall
'';
postFixup = ''
# set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs # set the env "LOCAL_GIT_DIRECTORY" for dugite so that we can use the git in nixpkgs
makeWrapper ${electron_27}/bin/electron $out/bin/${pname} \ makeWrapper ${electron_27}/bin/electron $out/bin/logseq \
--set "LOCAL_GIT_DIRECTORY" ${git} \ --set "LOCAL_GIT_DIRECTORY" ${git} \
--add-flags $out/share/${pname}/resources/app \ --add-flags $out/share/logseq/resources/app \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [stdenv.cc.cc.lib]}"
''; '';
passthru.updateScript = nix-update-script {}; passthru.updateScript = nix-update-script {};
meta = { meta = {
description = "A local-first, non-linear, outliner notebook for organizing and sharing your personal knowledge base"; description = "Local-first, non-linear, outliner notebook for organizing and sharing your personal knowledge base";
homepage = "https://github.com/logseq/logseq"; homepage = "https://github.com/logseq/logseq";
changelog = "https://github.com/logseq/logseq/releases/tag/${version}"; changelog = "https://github.com/logseq/logseq/releases/tag/${version}";
license = lib.licenses.agpl3Plus; license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; []; sourceProvenance = with lib.sourceTypes; [binaryNativeCode];
platforms = ["x86_64-linux" "aarch64-linux"]; maintainers = with lib.maintainers; [cheeseecake];
platforms = ["x86_64-linux" "aarch64-linux"] ++ lib.platforms.darwin;
mainProgram = "logseq";
}; };
}) })