My NixOS config Part 3: Flake-Parts Crusaders nix.ladas552.me
hjem nix nixos impermanence flake-parts nvfetcher niri noctalia

rust flake template

Ladas552 3f546b6c 6efe8c37

+82 -19
+18 -18
flake.lock
··· 235 "rust-overlay": "rust-overlay" 236 }, 237 "locked": { 238 - "lastModified": 1756305977, 239 - "narHash": "sha256-u3HYKT9vcAKw5mNaARUzmukfS1yjHH+3tTyVgZXob30=", 240 "owner": "helix-editor", 241 "repo": "helix", 242 - "rev": "7e4e556f84cd657dc99e3e0acfa7442170a01a11", 243 "type": "github" 244 }, 245 "original": { ··· 255 ] 256 }, 257 "locked": { 258 - "lastModified": 1756261190, 259 - "narHash": "sha256-eiy0klFK5EVJLNilutR7grsZN/7Itj9DyD75eyOf83k=", 260 "owner": "nix-community", 261 "repo": "home-manager", 262 - "rev": "77f348da3176dc68b20a73dab94852a417daf361", 263 "type": "github" 264 }, 265 "original": { ··· 298 }, 299 "mnw": { 300 "locked": { 301 - "lastModified": 1748710831, 302 - "narHash": "sha256-eZu2yH3Y2eA9DD3naKWy/sTxYS5rPK2hO7vj8tvUCSU=", 303 "owner": "Gerg-L", 304 "repo": "mnw", 305 - "rev": "cff958a4e050f8d917a6ff3a5624bc4681c6187d", 306 "type": "github" 307 }, 308 "original": { ··· 480 }, 481 "nixpkgs_3": { 482 "locked": { 483 - "lastModified": 1756266583, 484 - "narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", 485 "owner": "nixos", 486 "repo": "nixpkgs", 487 - "rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", 488 "type": "github" 489 }, 490 "original": { ··· 520 "systems": "systems_2" 521 }, 522 "locked": { 523 - "lastModified": 1756305488, 524 - "narHash": "sha256-+6cgFdac+DN5PAZg3YtRXAEdk++r6msy7wfFMNMNsEY=", 525 "owner": "nix-community", 526 "repo": "nixvim", 527 - "rev": "b7e96214e8e7244eceae73c606dcd243f6d180a3", 528 "type": "github" 529 }, 530 "original": { ··· 630 "systems": "systems_3" 631 }, 632 "locked": { 633 - "lastModified": 1755463179, 634 - "narHash": "sha256-5Ggb1Mhf7ZlRgGi2puCa2PvWs6KbMnWBlW6KW7Vf79Y=", 635 "owner": "notashelf", 636 "repo": "nvf", 637 - "rev": "03833118267ad32226b014b360692bdce9d6e082", 638 "type": "github" 639 }, 640 "original": {
··· 235 "rust-overlay": "rust-overlay" 236 }, 237 "locked": { 238 + "lastModified": 1756675490, 239 + "narHash": "sha256-AVofXQUdPiwStYnLlTRt0lXYD4DfIWJ9bfGsrMuyTKs=", 240 "owner": "helix-editor", 241 "repo": "helix", 242 + "rev": "e3fafb6badf5d08c04711d8e42b4043885bc34c5", 243 "type": "github" 244 }, 245 "original": { ··· 255 ] 256 }, 257 "locked": { 258 + "lastModified": 1756683562, 259 + "narHash": "sha256-3fcIqwm1u+rF3kkgUYYEIcLrs93+Pi+a6AwiEAxdP5g=", 260 "owner": "nix-community", 261 "repo": "home-manager", 262 + "rev": "fccb44df77266a3891939f35197f538dace3442f", 263 "type": "github" 264 }, 265 "original": { ··· 298 }, 299 "mnw": { 300 "locked": { 301 + "lastModified": 1756580127, 302 + "narHash": "sha256-XK+ZQWjnd96Uko73jY1dc23ksnuWnF/Myc4rT/LQOmc=", 303 "owner": "Gerg-L", 304 "repo": "mnw", 305 + "rev": "ecdb5ba1b08ac198d9e9bfbf9de3b234fb1eb252", 306 "type": "github" 307 }, 308 "original": { ··· 480 }, 481 "nixpkgs_3": { 482 "locked": { 483 + "lastModified": 1756542300, 484 + "narHash": "sha256-tlOn88coG5fzdyqz6R93SQL5Gpq+m/DsWpekNFhqPQk=", 485 "owner": "nixos", 486 "repo": "nixpkgs", 487 + "rev": "d7600c775f877cd87b4f5a831c28aa94137377aa", 488 "type": "github" 489 }, 490 "original": { ··· 520 "systems": "systems_2" 521 }, 522 "locked": { 523 + "lastModified": 1756587208, 524 + "narHash": "sha256-pATHF/7rZeEYxnkvLZgrLbCjG4xBJDJ4zkjUiu+hhiU=", 525 "owner": "nix-community", 526 "repo": "nixvim", 527 + "rev": "8bad4d407dace583ebf6a41d32cab479788898fe", 528 "type": "github" 529 }, 530 "original": { ··· 630 "systems": "systems_3" 631 }, 632 "locked": { 633 + "lastModified": 1756668885, 634 + "narHash": "sha256-K2B+szngrw1tfzkrAs49HGkK5hlUGIKV0+2Z9ndnAuA=", 635 "owner": "notashelf", 636 "repo": "nvf", 637 + "rev": "bf485ab9b6db5610ee93b90c94f1fd2afb4eb582", 638 "type": "github" 639 }, 640 "original": {
+3
homeModules/zathura/default.nix
··· 8 config = lib.mkIf config.customhm.zathura.enable { 9 programs.zathura = { 10 enable = true; 11 }; 12 }; 13 }
··· 8 config = lib.mkIf config.customhm.zathura.enable { 9 programs.zathura = { 10 enable = true; 11 + mappings = { 12 + "i"= "recolor"; 13 + }; 14 }; 15 }; 16 }
+5 -1
templates/default.nix
··· 1 { 2 - dioxus ={ 3 path = ./dioxus; 4 description = "Dioxus Rust devenv"; 5 }; 6 phoenix = { 7 path = ./elixir-phoenix; 8 description = "Elixir-Phoenix devenv with local package managment"; 9 }; 10 }
··· 1 { 2 + dioxus = { 3 path = ./dioxus; 4 description = "Dioxus Rust devenv"; 5 }; 6 phoenix = { 7 path = ./elixir-phoenix; 8 description = "Elixir-Phoenix devenv with local package managment"; 9 + }; 10 + rust = { 11 + path = ./rust; 12 + description = "Minimal naerisk rust flake"; 13 }; 14 }
+56
templates/rust/flake.nix
···
··· 1 + { 2 + description = "cargo init, git add ./, cargo update. And then you can use nix run instead of cargo run"; 3 + inputs = { 4 + naersk = { 5 + url = "github:nix-community/naersk"; 6 + inputs.nixpkgs.follows = "nixpkgs"; 7 + }; 8 + fenix = { 9 + url = "github:nix-community/fenix"; 10 + inputs.nixpkgs.follows = "nixpkgs"; 11 + }; 12 + flake-utils.url = "github:numtide/flake-utils"; 13 + nixpkgs.url = "https://channels.nixos.org/nixos-unstable/nixexprs.tar.xz"; 14 + }; 15 + outputs = 16 + { 17 + self, 18 + naersk, 19 + fenix, 20 + flake-utils, 21 + nixpkgs, 22 + }: 23 + flake-utils.lib.eachDefaultSystem ( 24 + system: 25 + let 26 + target = "x86_64-unknown-linux-gnu"; 27 + fenixLib = fenix.packages.${system}; 28 + rustToolchain = fenixLib.latest.toolchain; 29 + pkgs = import nixpkgs { 30 + inherit system; 31 + }; 32 + in 33 + { 34 + packages.default = 35 + (naersk.lib.${system}.override { 36 + cargo = rustToolchain; 37 + rustc = rustToolchain; 38 + }).buildPackage 39 + { 40 + src = ./.; 41 + CARGO_BUILD_TARGET = target; 42 + }; 43 + 44 + devShells.default = pkgs.mkShell { 45 + nativeBuildInputs = 46 + with pkgs; 47 + [ 48 + rustToolchain 49 + pkg-config 50 + gcc 51 + openssl 52 + ]; 53 + }; 54 + } 55 + ); 56 + }