From d6d230e9f29d3f56b484a8f37701eae9e9598ef9 Mon Sep 17 00:00:00 2001 From: servius Date: Mon, 16 Feb 2026 19:30:36 +0530 Subject: [PATCH] feat: Added packages.sukr and packages.default --- flake.nix | 76 ++++++++++++++++++++++++++++++------------------------- 1 file changed, 42 insertions(+), 34 deletions(-) diff --git a/flake.nix b/flake.nix index 719cff7..a35176d 100644 --- a/flake.nix +++ b/flake.nix @@ -9,36 +9,35 @@ }; }; - outputs = - { - self, - nixpkgs, - fenix, - }: - let - systems = [ - "x86_64-linux" - "aarch64-linux" - "x86_64-darwin" - "aarch64-darwin" - ]; - forAllSystems = fn: nixpkgs.lib.genAttrs systems (system: fn system); - in - { - devShells = forAllSystems ( - system: - let - pkgs = nixpkgs.legacyPackages.${system}; - fenixPkgs = fenix.packages.${system}; - toolchain = fenixPkgs.fromToolchainFile { - file = ./rust-toolchain.toml; - sha256 = "sha256-vra6TkHITpwRyA5oBKAHSX0Mi6CBDNQD+ryPSpxFsfg="; - }; - in - { - default = pkgs.mkShell.override { stdenv = pkgs.clangStdenv; } { - RUST_SRC_PATH = "${toolchain}/lib/rustlib/src/rust/library"; - packages = [ + outputs = { + self, + nixpkgs, + fenix, + }: let + systems = [ + "x86_64-linux" + "aarch64-linux" + "x86_64-darwin" + "aarch64-darwin" + ]; + forAllSystems = fn: nixpkgs.lib.genAttrs systems (system: fn (pkgsFor system) (toolchainFor system)); + pkgsFor = system: + import nixpkgs { + system = system; + }; + toolchainFor = system: + fenix.packages.${system}.fromToolchainFile { + file = ./rust-toolchain.toml; + sha256 = "sha256-vra6TkHITpwRyA5oBKAHSX0Mi6CBDNQD+ryPSpxFsfg="; + }; + cargoToml = builtins.fromTOML (builtins.readFile ./Cargo.toml); + in { + devShells = forAllSystems ( + pkgs: toolchain: { + default = pkgs.mkShell.override {stdenv = pkgs.clangStdenv;} { + RUST_SRC_PATH = "${toolchain}/lib/rustlib/src/rust/library"; + packages = + [ toolchain pkgs.treefmt pkgs.shfmt @@ -53,8 +52,17 @@ pkgs.apple-sdk pkgs.libiconv ]; - }; - } - ); - }; + }; + } + ); + packages = forAllSystems (pkgs: toolchain: rec { + sukr = pkgs.rustPlatform.buildRustPackage { + pname = cargoToml.package.name; + version = cargoToml.package.version; + src = ./.; + cargoHash = "sha256-ubioKKShVIkLVHI+IDzFOo67jv4gtzr1Rfhi/9s7/vo="; + }; + default = sukr; + }); + }; }