From 64f4695932ff4d27967cf4f0e854e40371dbcc90 Mon Sep 17 00:00:00 2001 From: sommerfeld Date: Thu, 17 Sep 2026 15:05:36 +0100 Subject: Fetch Rust crates from the static archive server --- nix/flake.nix | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'nix/flake.nix') diff --git a/nix/flake.nix b/nix/flake.nix index b140bf0..33dbe42 100644 --- a/nix/flake.nix +++ b/nix/flake.nix @@ -44,7 +44,11 @@ # Expose external flake packages so common.nix can list them next to # nixpkgs packages without threading inputs into every module. (final: prev: { - tuicr = tuicr.packages.${system}.default; + tuicr = + (final.callPackage tuicr.inputs.naersk { + fetchurl = import ./fetch-crate.nix final.fetchurl; + }).buildPackage + tuicr; aibox = aibox.packages.${system}.default; claude-release = prev.claude-code.overrideAttrs { version = releases.claude.version; @@ -257,6 +261,21 @@ }; in { + checks.${system}.crate-download = + let + lock = builtins.fromTOML (builtins.readFile "${tuicr}/Cargo.lock"); + crate = builtins.head ( + builtins.filter ( + package: (package.source or "") == "registry+https://github.com/rust-lang/crates.io-index" + ) lock.package + ); + in + import ./fetch-crate.nix pkgs.fetchurl { + name = "crate-download-check-${crate.name}-${crate.version}"; + url = "https://crates.io/api/v1/crates/${crate.name}/${crate.version}/download"; + sha256 = crate.checksum; + }; + devShells.${system}.default = pkgs.mkShellNoCC { packages = with pkgs; [ basedpyright -- cgit v1.3.1