Compare commits
47
Commits
85a45a3078
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5d9481e2c | ||
|
|
748f8ba537 | ||
|
|
90cdf18e37 | ||
|
|
b4695986c7 | ||
|
|
2fbfd525b3 | ||
|
|
dba2ccd259 | ||
|
|
9ea8f42da4 | ||
|
|
1bc9dd95eb | ||
|
|
befacb4462 | ||
|
|
6c9428b16f | ||
|
|
8d37af4b96 | ||
|
|
af602d372a | ||
|
|
f4877e912b | ||
|
|
c0b411d8ed | ||
|
|
b4099655d6 | ||
|
|
763fcbbadb | ||
|
|
6624a9b811 | ||
|
|
bf8596ef65 | ||
|
|
c76a825f7b | ||
|
|
e8c863d8f0 | ||
|
|
0b61b48998 | ||
|
|
3ab799a97b | ||
|
|
3f8ffd367c | ||
|
|
8ee8ae950b | ||
|
|
569543de06 | ||
|
|
3504c85b49 | ||
|
|
c738a8c0b3 | ||
|
|
5e5b7e1020 | ||
|
|
30159ca09c | ||
|
|
77857cffbe | ||
|
|
922ef20649 | ||
|
|
cc4f2f05b3 | ||
|
|
89ddc5761d | ||
|
|
3f20417bc4 | ||
|
|
65f572fea6 | ||
|
|
67565ae167 | ||
|
|
43dae1d1da | ||
|
|
f5ae162777 | ||
|
|
d189344a94 | ||
|
|
5303969d57
|
||
|
|
5b73eda788 | ||
|
|
e2f526aba5
|
||
|
|
4617de1f27 | ||
|
|
0e51641940 | ||
|
|
887a41d76b | ||
|
|
ec58c7156b | ||
|
|
e95765eb10
|
Generated
+356
-28
@@ -1,5 +1,82 @@
|
||||
{
|
||||
"nodes": {
|
||||
"cachix": {
|
||||
"inputs": {
|
||||
"devenv": [
|
||||
"wordle-solver",
|
||||
"crate2nix"
|
||||
],
|
||||
"flake-compat": [
|
||||
"wordle-solver",
|
||||
"crate2nix"
|
||||
],
|
||||
"git-hooks": "git-hooks",
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767714506,
|
||||
"narHash": "sha256-WaTs0t1CxhgxbIuvQ97OFhDTVUGd1HA+KzLZUZBhe0s=",
|
||||
"owner": "cachix",
|
||||
"repo": "cachix",
|
||||
"rev": "894c649f0daaa38bbcfb21de64be47dfa7cd0ec9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"ref": "latest",
|
||||
"repo": "cachix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"crate2nix": {
|
||||
"inputs": {
|
||||
"cachix": "cachix",
|
||||
"devshell": "devshell",
|
||||
"flake-compat": "flake-compat_2",
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nix-test-runner": "nix-test-runner",
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"nixpkgs"
|
||||
],
|
||||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1782759041,
|
||||
"narHash": "sha256-2577vxyoBa8+ZRiXr3CuPtOuEtPRYsFPSZuEc/KI/80=",
|
||||
"owner": "nix-community",
|
||||
"repo": "crate2nix",
|
||||
"rev": "5e1ecfd2d15b34ec90c2e51fdffbe8116595a767",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "crate2nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"devshell": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768818222,
|
||||
"narHash": "sha256-460jc0+CZfyaO8+w8JNtlClB2n4ui1RbHfPTLkpwhU8=",
|
||||
"owner": "numtide",
|
||||
"repo": "devshell",
|
||||
"rev": "255a2b1725a20d060f566e4755dbf571bbbb5f76",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "devshell",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"disko": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -48,11 +125,11 @@
|
||||
},
|
||||
"locked": {
|
||||
"dir": "pkgs/firefox-addons",
|
||||
"lastModified": 1786420971,
|
||||
"narHash": "sha256-irKN0AY5fDS96h7z3Cjp3EB7OwTJU1SeWFb1GxnFu3E=",
|
||||
"lastModified": 1788840136,
|
||||
"narHash": "sha256-ej5jnQIfjbw4wwPzy8Y4ntG9F3asdF6YBkLqpYeGUxc=",
|
||||
"owner": "rycee",
|
||||
"repo": "nur-expressions",
|
||||
"rev": "a56dfe072a448e664d208e9ed5f7f9dc9a720686",
|
||||
"rev": "555b23e68256c5abfb8a85a385231830d1d7ad1f",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@@ -78,10 +155,64 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat_2": {
|
||||
"locked": {
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"revCount": 69,
|
||||
"type": "tarball",
|
||||
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
|
||||
},
|
||||
"original": {
|
||||
"type": "tarball",
|
||||
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1788450739,
|
||||
"narHash": "sha256-glZLQlzIn1fXH6PazR2iUmTo7kzzyYSshrWhLS9TqCU=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "31729ca8cbdb4fa927b34e5f4353e6a83f39e993",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768135262,
|
||||
"narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1785627969,
|
||||
"narHash": "sha256-4dtXQk/NMePegK/nWp5NSeuZKLATItOq61lpEvmXqGw=",
|
||||
@@ -96,6 +227,83 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"git-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"cachix",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"cachix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1765404074,
|
||||
"narHash": "sha256-+ZDU2d+vzWkEJiqprvV5PR26DVFN2vgddwG5SnPZcUM=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "2d6f58930fbcd82f6f9fd59fb6d13e37684ca529",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"cachix",
|
||||
"git-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gitignore_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"pre-commit-hooks",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
@@ -103,11 +311,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1785119570,
|
||||
"narHash": "sha256-Rgs2xKnGLFWQscxUaXX07oyZeuMDOHEbqDOsgliLFGM=",
|
||||
"lastModified": 1788642154,
|
||||
"narHash": "sha256-sPpQFVaFTDqO/4vvCAhuAhqTgqN/ygu+9eJcs5eB0js=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "d4fd24667c8cbef124bb70a20380cab75ec8474d",
|
||||
"rev": "fd0956c99c41ae3c13a73a638f1f7e963aebc4ab",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -119,11 +327,11 @@
|
||||
},
|
||||
"import-tree": {
|
||||
"locked": {
|
||||
"lastModified": 1784254960,
|
||||
"narHash": "sha256-iI88R3wHz8wTKQb5orvpc51L/Xr64AJyxid/0MKa/b8=",
|
||||
"lastModified": 1788467110,
|
||||
"narHash": "sha256-ljEMTXP/rH0tOvDzc9gzwww6KcHRPRnEHzd9lK48V7s=",
|
||||
"owner": "vic",
|
||||
"repo": "import-tree",
|
||||
"rev": "4ebb10ae17d5f1ad366e7aef5b92cb8eecf24f69",
|
||||
"rev": "eb1b52eaecc57f7c136d07ae8a93e724dfecac46",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -141,11 +349,11 @@
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786414302,
|
||||
"narHash": "sha256-FNGnUYud1D3BqE1JU2Uef+puLB2Rml7gKSdIGQOb550=",
|
||||
"lastModified": 1788840747,
|
||||
"narHash": "sha256-nZ6Yt+8u5NhPSP46VcYXEcu4cJpeOiR/K+lfyk3COVA=",
|
||||
"owner": "Infinidoge",
|
||||
"repo": "nix-minecraft",
|
||||
"rev": "cacc8cd89550f0cbec7103f3db5e96d1a66c58e7",
|
||||
"rev": "1e6052f5ecebddbbb2d372e0fe6f1b7bc4b95a9e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -154,16 +362,32 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-test-runner": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1588761593,
|
||||
"narHash": "sha256-FKJykltAN/g3eIceJl4SfDnnyuH2jHImhMrXS2KvGIs=",
|
||||
"owner": "stoeffel",
|
||||
"repo": "nix-test-runner",
|
||||
"rev": "c45d45b11ecef3eb9d834c3b6304c05c49b06ca2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "stoeffel",
|
||||
"repo": "nix-test-runner",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786437054,
|
||||
"narHash": "sha256-I++HzBBAgQ17UaLVU6aSm1/7LDo6c9xr8rAbpByWywE=",
|
||||
"lastModified": 1788860136,
|
||||
"narHash": "sha256-MhPMOFV4pVkygWEbQ8t1De/uQ9cWF1u++tRe2L5tG48=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "6ed13b1d888d5cb07dbb0723eb1df86bbacd0b9c",
|
||||
"rev": "62173785b9a18c78b4a15aca2623d02bceb9d077",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -187,6 +411,21 @@
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1788057806,
|
||||
"narHash": "sha256-DTQSMxzDWmT0zhguthvegnVkn7CFqGCv4IHCzk5ZUpM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "596e2e3940e09b2abbeb03f75fa1828c57fcd72c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib_2": {
|
||||
"locked": {
|
||||
"lastModified": 1785031560,
|
||||
"narHash": "sha256-OmshNvn2vupOFpYinLUu+1Dnpu4n7Q5N3ggGVNHpkUI=",
|
||||
@@ -203,11 +442,11 @@
|
||||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1786247143,
|
||||
"narHash": "sha256-8S3Kcxs7D4UtxJxSJZz0m14CGhuW0MxfrIwJxeGWGnQ=",
|
||||
"lastModified": 1788752844,
|
||||
"narHash": "sha256-VaWGJ6+cIYN2erfSecbRV+4ljI185Ty2wUrXyvQbgOw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "279b4a8275f032c566576b3f181fa0f27197f588",
|
||||
"rev": "dc5d91f840324650bac8c379428c7037a416959a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -219,11 +458,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1786313170,
|
||||
"narHash": "sha256-9BG7OgUWdu0ONDO5X2q6+K4bsuBITkX/3W4nNJu1Ito=",
|
||||
"lastModified": 1788807765,
|
||||
"narHash": "sha256-J9oC0bKnkXUrMegqRTXVkyDFJ0gn2U/Qpoo9HgGMQmA=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fcb8fcd6bf2d0adecae5bd491afaaaf8311b758d",
|
||||
"rev": "93108a538f079596c9a16c72cf03e9322782b6dd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -233,6 +472,50 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1765186076,
|
||||
"narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"flake-compat"
|
||||
],
|
||||
"gitignore": "gitignore_2",
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"crate2nix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1769069492,
|
||||
"narHash": "sha256-Efs3VUPelRduf3PpfPP2ovEB4CXT7vHf8W+xc49RL/U=",
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"rev": "a1ef738813b15cf8ec759bdff5761b027e3e1d23",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cachix",
|
||||
"repo": "pre-commit-hooks.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"disko": "disko",
|
||||
@@ -246,7 +529,29 @@
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"sops-nix": "sops-nix",
|
||||
"spicetify-nix": "spicetify-nix"
|
||||
"spicetify-nix": "spicetify-nix",
|
||||
"wordle-solver": "wordle-solver"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"wordle-solver",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1787022047,
|
||||
"narHash": "sha256-wNlYM/obKOkkRELrOfto1JT5CRANR6hB/RjOELp223U=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "b32685dd7c5a965aa8273adb7ddaf7f5b40d0faa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"sops-nix": {
|
||||
@@ -256,11 +561,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786375908,
|
||||
"narHash": "sha256-G7qDAT98nywA4EFmJCwIRO5wKvDlBBN3BWpsOnjAto8=",
|
||||
"lastModified": 1788337237,
|
||||
"narHash": "sha256-gkSH8VUtCo6hnysNmb9DbTuDepH2t5pv+QWjP75xKAk=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "d1337e05ba0a8e88a75d2c0e1595d82f3b3e2ac4",
|
||||
"rev": "fbf759290e0cb0a98dfc813a4eb7d53ad1dacb57",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -277,11 +582,11 @@
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1786252193,
|
||||
"narHash": "sha256-a9SbkJWloPso00G4zIUkerd9n2qRyDYoDPeUc4O3ME8=",
|
||||
"lastModified": 1788683578,
|
||||
"narHash": "sha256-bERpuakmPAC2b36zgXy6OXh+SkZUjbaV+vV2sPmm6p8=",
|
||||
"owner": "Gerg-L",
|
||||
"repo": "spicetify-nix",
|
||||
"rev": "a87616995724d27079b495ca07318512af799449",
|
||||
"rev": "a4ef43fb13e3615f36e5a0935aabe8cc29363dc9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -319,6 +624,29 @@
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"wordle-solver": {
|
||||
"inputs": {
|
||||
"crate2nix": "crate2nix",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1788884686,
|
||||
"narHash": "sha256-wl0NGoryP5veIaRn6azmejz1JsTbwHlBU/MT/icTKQ4=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "a827bd5eef0354f7e4fdca57383971ff6008b5d3",
|
||||
"revCount": 42,
|
||||
"type": "git",
|
||||
"url": "https://git.jroeger.de/jonas/wordle-solver-rs"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://git.jroeger.de/jonas/wordle-solver-rs"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
nix-minecraft.inputs.nixpkgs.follows = "nixpkgs";
|
||||
spicetify-nix.url = "github:Gerg-L/spicetify-nix";
|
||||
spicetify-nix.inputs.nixpkgs.follows = "nixpkgs";
|
||||
wordle-solver.url = "git+https://git.jroeger.de/jonas/wordle-solver-rs";
|
||||
wordle-solver.inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
outputs = inputs @ {
|
||||
|
||||
@@ -37,10 +37,6 @@
|
||||
sopsFile = ../../secrets/harbor/hidden-matrix.yaml;
|
||||
key = "hostname";
|
||||
};
|
||||
sops.secrets.hidden-matrix-registration-secret = {
|
||||
sopsFile = ../../secrets/harbor/hidden-matrix.yaml;
|
||||
key = "registration_secret";
|
||||
};
|
||||
|
||||
# gc settings and binary caches
|
||||
nix = {
|
||||
@@ -97,16 +93,17 @@
|
||||
hive.matrix.enable = true;
|
||||
hive.matrix.hiddenServiceSecret = config.sops.secrets.matrix-hs-secret.path;
|
||||
hive.matrix.hiddenServiceHostnameSopsKey = config.sops.secrets.hidden-matrix-hostname.name;
|
||||
hive.matrix.registrationSecretSopsKey = config.sops.secrets.hidden-matrix-registration-secret.name;
|
||||
hive.calibre.enable = true;
|
||||
hive.calibre.instanceFQDN = "calibre.jroeger.de";
|
||||
hive.calibre.libraries = ["Rote Bücher" "Technik" "Wissenschaft oder so" "Dokumente"];
|
||||
hive.calibre.libraries = ["Rote Bücher" "Bürgerliche Bücher" "Brain Maxxing" "Technik" "Wissenschaft oder so" "Dokumente"];
|
||||
hive.korrosync.enable = true;
|
||||
hive.korrosync.localPort = 7416;
|
||||
hive.korrosync.instanceFQDN = "korrosync.jroeger.de";
|
||||
hive.wallabag.enable = true;
|
||||
hive.wallabag.localPort = 39184;
|
||||
hive.wallabag.instanceFQDN = "wallabag.jroeger.de";
|
||||
hive.wordle-solver.enable = true;
|
||||
hive.wordle-solver.instanceFQDN = "wordle-solver.jroeger.de";
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
self.nixosModules.calibre
|
||||
self.nixosModules.korrosync-hive
|
||||
self.nixosModules.wallabag
|
||||
self.nixosModules.wordle-solver
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -174,7 +174,7 @@
|
||||
boot.plymouth.enable = true;
|
||||
boot.initrd.systemd.enable = true;
|
||||
boot.supportedFilesystems = ["ntfs"];
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
boot.kernelPackages = pkgs.linuxPackages_7_1;
|
||||
|
||||
# Configure console keymap
|
||||
console.keyMap = "de";
|
||||
|
||||
@@ -43,7 +43,8 @@
|
||||
];
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [pcmanfm-qt];
|
||||
environment.systemPackages = with pkgs.kdePackages; [dolphin kio-extras];
|
||||
services.gvfs.enable = true;
|
||||
services.udisks2.enable = true;
|
||||
programs.hyprlock.enable = true;
|
||||
security.pam.services.hyprlock = {};
|
||||
|
||||
@@ -30,13 +30,15 @@
|
||||
pkgs.tela-circle-icon-theme
|
||||
];
|
||||
|
||||
qt.enable = false;
|
||||
qt.enable = true;
|
||||
qt.style.name = "kvantum";
|
||||
qt.style.package = pkgs.kdePackages.qtstyleplugin-kvantum;
|
||||
qt.platformTheme.name = "gtk";
|
||||
home.sessionVariables = {
|
||||
QT_STYLE_OVERRIDE = "kvantum";
|
||||
};
|
||||
systemd.user.settings.Manager.DefaultEnvironment = lib.mapAttrs (_: lib.mkDefault) {
|
||||
QT_STYLE_OVERRIDE = "kvantum";
|
||||
QT_QPA_PLATFORMTHEME = "gtk";
|
||||
};
|
||||
xdg.configFile."Kvantum/kvantum.kvconfig".text = lib.generators.toINI {} {
|
||||
General.theme = "LayanDark";
|
||||
|
||||
@@ -1,10 +1,5 @@
|
||||
{
|
||||
flake.homeModules.waybar = {
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
flake.homeModules.waybar = {pkgs, ...}: {
|
||||
programs.waybar.enable = true;
|
||||
programs.waybar.systemd.enable = true;
|
||||
|
||||
@@ -12,14 +7,6 @@
|
||||
services.network-manager-applet.enable = true;
|
||||
services.pasystray.enable = true;
|
||||
|
||||
# is already fixed on latest home-manager rev
|
||||
systemd.user.services = {
|
||||
blueman-applet.Unit.After = lib.mkForce ["graphical-session.target"];
|
||||
network-manager-applet.Unit.After = lib.mkForce ["graphical-session.target"];
|
||||
pasystray.Unit.After = lib.mkForce ["graphical-session.target"];
|
||||
waybar.Unit.After = lib.mkForce ["graphical-session.target"];
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
pulsemixer
|
||||
pavucontrol
|
||||
|
||||
@@ -115,6 +115,15 @@
|
||||
:config
|
||||
(setq graphviz-dot-indent-width 4))
|
||||
|
||||
(after! svelte-ts-mode
|
||||
(add-to-list 'auto-mode-alist '("\\.svelte\\'" . svelte-ts-mode))
|
||||
(add-hook! 'svelte-ts-mode-hook
|
||||
(setq-local lsp-format-buffer-on-save t)))
|
||||
|
||||
(after! typescript-ts-mode
|
||||
(add-hook! 'typescript-ts-mode-hook
|
||||
(setq-local lsp-format-buffer-on-save t)))
|
||||
|
||||
(after! auctex
|
||||
(add-hook! 'LaTeX-mode-hook 'lsp)
|
||||
(map! :map LaTeX-mode-map
|
||||
@@ -157,13 +166,21 @@
|
||||
(set-formatter! 'alejandra '("alejandra" "--quiet") :modes '(nix-mode nix-ts-mode))
|
||||
|
||||
;; nixd
|
||||
(after! 'lsp-mode
|
||||
(after! lsp-mode
|
||||
(lsp-register-client
|
||||
(make-lsp-client :new-connection (lsp-stdio-connection "nixd")
|
||||
:major-modes '(nix-mode)
|
||||
:priority 0
|
||||
:server-id 'nixd)))
|
||||
|
||||
;; typescript-language-server
|
||||
(after! lsp-mode
|
||||
(lsp-register-client
|
||||
(make-lsp-client :new-connection (lsp-stdio-connection '("typescript-language-server" "--stdio"))
|
||||
:major-modes '(typescript-ts-mode typescript-mode)
|
||||
:priority 0
|
||||
:server-id 'typescript-language-server)))
|
||||
|
||||
;;Use TS-modes
|
||||
(after! treesit
|
||||
(load! "packages/treesit-docgen.el"))
|
||||
@@ -245,18 +262,30 @@
|
||||
(haskell-ts-mode . lsp-deferred)
|
||||
(c-or-c++-ts-mode . lsp-deferred)
|
||||
(bash-ts-mode . lsp-deferred)
|
||||
(json-ts-mode . lsp-deferred)))
|
||||
(json-ts-mode . lsp-deferred)
|
||||
(typescript-ts-mode . lsp-deferred)
|
||||
(svelte-ts-mode . lsp-deferred)
|
||||
(svelte-mode . lsp-deferred)
|
||||
))
|
||||
|
||||
|
||||
(after! jj-mode
|
||||
(map! :leader
|
||||
(:prefix ("j" . "Jujutsu")
|
||||
:desc "Log" "j" #'jj-log
|
||||
:desc "Describe" "d" #'jj-describe
|
||||
:desc "Abandon" "a" #'jj-abandon
|
||||
:desc "New" "n" #'jj-new
|
||||
(use-package! majutsu
|
||||
:config (map! :leader
|
||||
(:prefix ("j" . "majutsu")
|
||||
:desc "Log" "j" #'majutsu-log
|
||||
)))
|
||||
|
||||
|
||||
;; Org-mode custom property for remaining effort (not-done-items)
|
||||
(defun my-org-columns-collect-open-effort (property)
|
||||
"Return PROPERTY only or unfinished entries."
|
||||
(if (member (org-get-todo-state) org-not-done-keywords)
|
||||
(org-entry-get nil property)
|
||||
""))
|
||||
|
||||
(setq org-columns-summary-types
|
||||
'(("remaining:" org-columns--summary-sum-times my-org-columns-collect-open-effort)))
|
||||
|
||||
(setq auto-mode-alist (cons '("\\.smt$" . smtlib-mode) auto-mode-alist))
|
||||
(autoload 'smtlib-mode "smtlib" "Major mode for SMTLIB" t)
|
||||
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
;;idris ; a language you can depend on
|
||||
(json +tree-sitter) ; At least it ain't XML
|
||||
(java +lsp +tree-sitter) ; the poster child for carpal tunnel syndrome
|
||||
;;javascript ; all(hope(abandon(ye(who(enter(here))))))
|
||||
(javascript +lsp +tree-sitter) ; all(hope(abandon(ye(who(enter(here))))))
|
||||
;;julia ; a better, faster MATLAB
|
||||
;;kotlin ; a better, slicker Java(Script)
|
||||
(latex +lsp +latexmk) ; writing papers in Emacs has never been so fun
|
||||
|
||||
@@ -83,13 +83,18 @@
|
||||
)
|
||||
:pin "71f67971bc5eb2974ae2f738512c8f09f0822527")
|
||||
|
||||
(package! svelte-ts-mode
|
||||
:recipe (:host github
|
||||
:repo "leafOfTree/svelte-ts-mode"
|
||||
:branch "main")
|
||||
:pin "b1b5b4a5b09493063394a51d0f0f022645a18444")
|
||||
(package! pdf-tools)
|
||||
(package! eww)
|
||||
(package! pandoc-mode)
|
||||
(package! tramp)
|
||||
(package! graphviz-dot-mode)
|
||||
(package! rainbow-delimiters)
|
||||
(package! jj-mode :recipe (:host github :repo "bolivier/jj-mode.el"))
|
||||
(package! majutsu :recipe (:host github :repo "0WD0/majutsu"))
|
||||
|
||||
(let ((package-dir (expand-file-name "packages.d" doom-user-dir)))
|
||||
(when (file-directory-p package-dir)
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
flake.nixosModules.gitea-instance = {
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.hive.gitea-instance;
|
||||
@@ -61,6 +62,14 @@
|
||||
enableACME = true;
|
||||
locations."/" = {
|
||||
proxyPass = "http://unix:/run/gitea/gitea.sock";
|
||||
extraConfig = ''
|
||||
client_max_body_size 1G;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
@@ -77,13 +86,25 @@
|
||||
};
|
||||
|
||||
# act_runner
|
||||
services.gitea-actions-runner = lib.mkIf cfg.nativeRunner {
|
||||
instances.nixos-host = {
|
||||
enable = true;
|
||||
services.gitea-actions-runner.instances.nixoshost = {
|
||||
enable = cfg.nativeRunner;
|
||||
name = "nixos-host-runner";
|
||||
url = "https://${cfg.instanceFQDN}";
|
||||
tokenFile = "/var/lib/gitea-registration/nixos-host";
|
||||
|
||||
hostPackages = with pkgs; [
|
||||
bash
|
||||
coreutils
|
||||
curl
|
||||
gawk
|
||||
gitMinimal
|
||||
gnused
|
||||
nix
|
||||
nodejs
|
||||
skopeo
|
||||
wget
|
||||
];
|
||||
|
||||
labels = ["nixos:host"];
|
||||
|
||||
settings = {
|
||||
@@ -92,13 +113,9 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
systemd.services.gitea-runner-nixos-host = lib.mkIf cfg.nativeRunner {
|
||||
systemd.services.gitea-runner-nixoshost = lib.mkIf cfg.nativeRunner {
|
||||
after = ["gitea-runner-gen-token.service"];
|
||||
requires = ["gitea-runner-gen-token.service"];
|
||||
serviceConfig.Environment = ''
|
||||
PATH=/run/current-system/sw/bin:/usr/bin:/bin
|
||||
'';
|
||||
};
|
||||
systemd.services.gitea-runner-gen-token = lib.mkIf cfg.nativeRunner {
|
||||
wantedBy = ["multi-user.target"];
|
||||
|
||||
@@ -28,7 +28,11 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pkg-config
|
||||
];
|
||||
|
||||
#cargoHash = "sha256-3oMPREUWwKNEeaf8FdWHdjPMLU5xMSMzxKrmrhU+iko=";
|
||||
checkFlags = [
|
||||
"--skip"
|
||||
"cli_should_start_server"
|
||||
];
|
||||
|
||||
cargoLock.lockFile = "${finalAttrs.src}/Cargo.lock";
|
||||
|
||||
SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
|
||||
|
||||
+31
-11
@@ -2,10 +2,13 @@
|
||||
flake.nixosModules.matrix = {
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.hive.matrix;
|
||||
ketesa-web-root = fetchTarball {
|
||||
url = "https://github.com/etkecc/ketesa/releases/download/v1.4.0/ketesa.tar.gz";
|
||||
sha256 = "sha256:0za0rddcbxn2ra4xlykn7v8b4j0ddyacivyzp91m80r071ds1dk7";
|
||||
};
|
||||
in {
|
||||
options.hive.matrix = {
|
||||
enable = lib.mkEnableOption "Enable matrix server (synapse)";
|
||||
@@ -16,24 +19,21 @@
|
||||
description = "The internal port of the synapse server";
|
||||
};
|
||||
|
||||
registrationSecretSopsKey = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = "The sops key of the secret containing the registration secret";
|
||||
ketesaLocalPort = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 8475;
|
||||
description = "The internal port of the ketesa virtual host";
|
||||
};
|
||||
|
||||
hiddenServiceHostnameSopsKey = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
description = "The sops key of the secret containing the hostname of the hidden service";
|
||||
};
|
||||
|
||||
hiddenServiceSecret = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
description = "The file containing the hidden service's secret";
|
||||
};
|
||||
instanceFQDN = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
example = "nextcloud.example.com";
|
||||
description = "Fully qualified domain name of the Nextcloud instance";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
@@ -57,16 +57,35 @@
|
||||
port = cfg.localPort;
|
||||
};
|
||||
}
|
||||
{
|
||||
port = 8080;
|
||||
target = {
|
||||
addr = "127.0.0.1";
|
||||
port = cfg.ketesaLocalPort;
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
# Virtual host for ketesa
|
||||
services.nginx.virtualHosts."ketesa-localhost" = {
|
||||
listen = [
|
||||
{
|
||||
addr = "127.0.0.1";
|
||||
port = cfg.ketesaLocalPort;
|
||||
}
|
||||
];
|
||||
forceSSL = false;
|
||||
enableACME = false;
|
||||
root = "${ketesa-web-root}";
|
||||
};
|
||||
|
||||
# Secret hostname for matrix-synapse
|
||||
sops.templates."hidden-matrix-synapse".owner = "matrix-synapse";
|
||||
sops.templates."hidden-matrix-synapse".content = ''
|
||||
server_name: "${config.sops.placeholder.${cfg.hiddenServiceHostnameSopsKey}}"
|
||||
public_baseurl: "http://${config.sops.placeholder.${cfg.hiddenServiceHostnameSopsKey}}"
|
||||
registration_shared_secret: "${config.sops.placeholder.${cfg.registrationSecretSopsKey}}"
|
||||
'';
|
||||
|
||||
# Synapse
|
||||
@@ -90,11 +109,12 @@
|
||||
}
|
||||
];
|
||||
settings = {
|
||||
enable_registration = false;
|
||||
enable_registration = true;
|
||||
registration_requires_token = true;
|
||||
report_stats = false;
|
||||
federation_domain_whitelist = [];
|
||||
federation_ip_range_blacklist = ["0.0.0.0/0"];
|
||||
matrix_static_files_file_matrix_support_enabled = true;
|
||||
};
|
||||
|
||||
extraConfigFiles = [
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
{inputs, ...}: {
|
||||
flake.nixosModules.wordle-solver = {
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.hive.wordle-solver;
|
||||
in {
|
||||
options.hive.wordle-solver = {
|
||||
enable = lib.mkEnableOption "Enable wordle-solver site";
|
||||
instanceFQDN = lib.mkOption {
|
||||
type = lib.types.singleLineStr;
|
||||
example = "wordle-solver.example.com";
|
||||
description = "Fully qualified domain name of the wordle-solver host";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
# Fallback server with only 403
|
||||
services.nginx.virtualHosts.${config.networking.domain} = lib.mkDefault {
|
||||
default = true;
|
||||
locations."/".return = 403;
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
};
|
||||
|
||||
# Virtual host for wordle-solver
|
||||
services.nginx.virtualHosts."${cfg.instanceFQDN}" = {
|
||||
forceSSL = true;
|
||||
enableACME = true;
|
||||
root = "${inputs.wordle-solver.packages.${pkgs.system}.wordle-solver-web}/";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -4,11 +4,14 @@ declare -rA presets=(
|
||||
[davinci-resolve]="-c:v dnxhd -profile:v dnxhr_hq -pix_fmt yuv422p -c:a pcm_s16le"
|
||||
[instagram]="-vf scale='if(gte(iw/ih,1),1920,-1)':'if(gte(iw/ih,1),-1,1920)':flags=lanczos -r 30 -c:v libx264 -profile:v high -level 4.1 -pix_fmt yuv420p -preset slow -crf 18 -bf 2 -g 15 -keyint_min 15 -x264-params \"open-gop=0:cabac=1:b-pyramid=none\" -movflags +faststart -c:a aac -b:a 96k"
|
||||
[insta-4k]="-r 30 -c:v libx264 -profile:v high -level 4.1 -pix_fmt yuv420p -preset slow -crf 18 -bf 2 -g 15 -keyint_min 15 -x264-params \"open-gop=0:cabac=1:b-pyramid=none\" -movflags +faststart -c:a aac -b:a 96k"
|
||||
[network-hevc]="-c:v libx265 -preset slow -crf 26 -x265-params aq-mode=3:aq-strength=1.0:psy-rd=1.8:psy-rdoq=1.0 -pix_fmt yuv422p -c:a copy"
|
||||
[storage-hevc-faster]="-c:v libx265 -preset slow -crf 26 -x265-params aq-mode=3:aq-strength=1.0:psy-rd=1.8:psy-rdoq=1.0 -c:a copy"
|
||||
[storage-hevc]="-c:v libx265 -preset slower -crf 22 -x265-params aq-mode=3:aq-strength=1.0:psy-rd=1.8:psy-rdoq=1.0 -c:a copy"
|
||||
[storage-av1]="-c:v libsvtav1 -preset 6 -crf 28 -g 240 -svtav1-params tune=0:aq-mode=2 -c:a copy"
|
||||
[storage-av1-1080p]="-vf scale='if(gte(iw/ih,1),1920,-1)':'if(gte(iw/ih,1),-1,1920)' -c:v libsvtav1 -preset 6 -crf 28 -g 240 -svtav1-params tune=0:aq-mode=2 -c:a copy"
|
||||
[storage-av1-nvenc]="-c:v av1_nvenc -cq 28 -preset slow -c:a copy"
|
||||
[network-hevc]="-c:v libx265 -preset slower -crf 22 -x265-params aq-mode=3:aq-strength=1.0:psy-rd=1.8:psy-rdoq=1.0 -pix_fmt yuv420p -c:a aac -b:a 128k"
|
||||
[network-hevc-faster]="-c:v libx265 -preset slow -crf 26 -x265-params aq-mode=3:aq-strength=1.0:psy-rd=1.8:psy-rdoq=1.0 -pix_fmt yuv420p -c:a aac -b:a 128k"
|
||||
[network]="-c:v libx264 -preset slow -crf 22 -pix_fmt yuv420p -c:a aac -b:a 128k"
|
||||
[network-1080p]="-vf scale='if(gte(iw/ih,1),1920,-1)':'if(gte(iw/ih,1),-1,1920)' -c:v libx264 -preset slow -crf 22 -pix_fmt yuv420p -c:a aac -b:a 128k"
|
||||
[whatsapp]="-vf scale='if(gte(iw/ih,1),1920,-1)':'if(gte(iw/ih,1),-1,1920)' -c:v libx264 -preset slow -crf 30 -profile:v baseline -level 3.0 -pix_fmt yuv420p -r 25 -g 50 -c:a aac -b:a 160k -r:a 44100"
|
||||
@@ -18,11 +21,14 @@ declare -rA containers=(
|
||||
[davinci-resolve]="mov"
|
||||
[instagram]="mp4"
|
||||
[insta-4k]="mp4"
|
||||
[storage-hevc-faster]="mkv"
|
||||
[storage-hevc]="mkv"
|
||||
[network-hevc]="mp4"
|
||||
[storage-hevc-faster]="mp4"
|
||||
[storage-hevc]="mp4"
|
||||
[storage-av1]="mkv"
|
||||
[storage-av1-1080p]="mkv"
|
||||
[storage-av1-nvenc]="mkv"
|
||||
[network-hevc]="mp4"
|
||||
[network-hevc-faster]="mp4"
|
||||
[network]="mp4"
|
||||
[network-1080p]="mp4"
|
||||
[whatsapp]="mp4"
|
||||
|
||||
@@ -11,6 +11,8 @@ fi
|
||||
|
||||
watch_file nix/**
|
||||
watch_file -- **/*.nix
|
||||
watch_file Cargo.toml
|
||||
watch_file rust-toolchain.toml
|
||||
# Adding files to git includes them in a flake
|
||||
# But it is also a bit much reloading.
|
||||
# watch_file .git/index .git/HEAD
|
||||
|
||||
+28
-17
@@ -1,13 +1,13 @@
|
||||
{
|
||||
description = "Rust-Hello";
|
||||
description = "Rust-Package";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
rust-overlay = {
|
||||
url = "github:oxalica/rust-overlay";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
crate2nix = {
|
||||
url = "github:nix-community/crate2nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
@@ -15,20 +15,25 @@
|
||||
};
|
||||
|
||||
outputs = inputs @ {
|
||||
flake-parts,
|
||||
crate2nix,
|
||||
flake-utils,
|
||||
nixpkgs,
|
||||
rust-overlay,
|
||||
...
|
||||
}:
|
||||
flake-utils.lib.eachDefaultSystem (
|
||||
system: let
|
||||
# Overlay pkgs with rust-bin
|
||||
overlays = [(import rust-overlay)];
|
||||
pkgs = import nixpkgs {
|
||||
inherit system overlays;
|
||||
};
|
||||
flake-parts.lib.mkFlake {inherit inputs;} {
|
||||
systems = [
|
||||
"aarch64-linux"
|
||||
"aarch64-darwin"
|
||||
"x86_64-darwin"
|
||||
"x86_64-linux"
|
||||
];
|
||||
|
||||
perSystem = {
|
||||
pkgs,
|
||||
system,
|
||||
self',
|
||||
...
|
||||
}: let
|
||||
# Use rust-bin to generate the toolchain from rust-toolchain.toml
|
||||
rust-toolchain = pkgs.rust-bin.fromRustupToolchainFile ./rust-toolchain.toml;
|
||||
|
||||
@@ -48,14 +53,20 @@
|
||||
inherit pkgs buildRustCrateForPkgs;
|
||||
};
|
||||
in {
|
||||
packages = rec {
|
||||
hello = cargoNix.rootCrate.build;
|
||||
default = hello;
|
||||
# Overlay pkgs with rust-bin
|
||||
_module.args.pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
overlays = [(import rust-overlay)];
|
||||
};
|
||||
|
||||
devShell = pkgs.mkShell {
|
||||
packages = {
|
||||
hello = cargoNix.rootCrate.build;
|
||||
default = self'.packages.hello;
|
||||
};
|
||||
|
||||
devShells.default = pkgs.mkShell {
|
||||
buildInputs = [rust-toolchain];
|
||||
};
|
||||
}
|
||||
);
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
[toolchain]
|
||||
channel = "1.85.0"
|
||||
channel = "1.96.0"
|
||||
components = [ "rustfmt", "rustc-dev", "rust-analyzer", "rust-src"]
|
||||
|
||||
Reference in New Issue
Block a user