nix: get Rust 1.95.0 from rust-overlay
Some checks failed
Rust / Test on aarch64-unknown-linux-gnu (push) Has been cancelled
Rust / Test on armv7-unknown-linux-gnueabihf (push) Has been cancelled
Rust / Test on i686-unknown-linux-gnu (push) Has been cancelled
Rust / Test on loongarch64-unknown-linux-gnu (push) Has been cancelled
Rust / Test on powerpc-unknown-linux-gnu (push) Has been cancelled
Rust / Test on powerpc64-unknown-linux-gnu (push) Has been cancelled
Rust / Test on powerpc64le-unknown-linux-gnu (push) Has been cancelled
Rust / Test on riscv64gc-unknown-linux-gnu (push) Has been cancelled
Rust / Test on s390x-unknown-linux-gnu (push) Has been cancelled
Rust / Test on sparc64-unknown-linux-gnu (push) Has been cancelled
Rust / Test on mips-unknown-linux-gnu (push) Has been cancelled
Rust / Test on mips64-unknown-linux-gnuabi64 (push) Has been cancelled
Rust / Test on riscv32gc-unknown-linux-gnu (push) Has been cancelled
Rust / Test on x86_64-unknown-linux-gnu (push) Has been cancelled

Signed-off-by: NotAShelf <raf@notashelf.dev>
Change-Id: If01588c5e4399ee19bb17485f65a741b6a6a6964
This commit is contained in:
raf 2026-04-28 11:31:51 +03:00
commit eac4882733
Signed by: NotAShelf
GPG key ID: 29D95B64378DB4BF
3 changed files with 47 additions and 13 deletions

29
flake.lock generated
View file

@ -2,11 +2,11 @@
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1770562336,
"narHash": "sha256-ub1gpAONMFsT/GU2hV6ZWJjur8rJ6kKxdm9IlCT0j84=",
"lastModified": 1776877367,
"narHash": "sha256-EHq1/OX139R1RvBzOJ0aMRT3xnWyqtHBRUBuO1gFzjI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "d6c71932130818840fc8fe9509cf50be8c64634f",
"rev": "0726a0ecb6d4e08f6adced58726b95db924cef57",
"type": "github"
},
"original": {
@ -18,7 +18,28 @@
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs"
"nixpkgs": "nixpkgs",
"rust-overlay": "rust-overlay"
}
},
"rust-overlay": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1777346187,
"narHash": "sha256-oVxyGjpiIsrXhWTJVUOs38fZQkLjd0nZGOY9K7Kfot8=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "146e7bf7569b8288f24d41d806b9f584f7cfd5b5",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
}
},

View file

@ -1,25 +1,31 @@
{
description = "A microscopic fetch script in Rust, for NixOS systems";
inputs.nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-unstable";
description = "Microscopic fetch script in Rust, for NixOS systems";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs?ref=nixos-unstable";
rust-overlay = {
url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = {
self,
nixpkgs,
rust-overlay,
}: let
systems = ["x86_64-linux" "aarch64-linux"];
forEachSystem = nixpkgs.lib.genAttrs systems;
pkgsForEach = nixpkgs.legacyPackages;
pkgsForEach = system: nixpkgs.legacyPackages.${system}.extend rust-overlay.overlays.default;
in {
packages = forEachSystem (system: let
pkgs = pkgsForEach.${system};
pkgs = pkgsForEach system;
in {
default = self.packages.${system}.microfetch;
microfetch = pkgs.callPackage ./nix/package.nix {};
microfetch-mold = pkgs.callPackage ./nix/package.nix {useMold = true;};
});
devShells = forEachSystem (system: {
default = pkgsForEach.${system}.callPackage ./nix/shell.nix {};
default = (pkgsForEach system).callPackage ./nix/shell.nix {};
});
};
}

View file

@ -1,13 +1,20 @@
{
lib,
rustPlatform,
makeRustPlatform,
rust-bin,
llvm,
}: let
pname = "microfetch";
toml = (lib.importTOML ../Cargo.toml).workspace.package;
inherit (toml) version;
toolchain = rust-bin.stable.latest;
rustWithToolchain = makeRustPlatform {
cargo = toolchain.minimal;
rustc = toolchain.minimal;
};
in
rustPlatform.buildRustPackage.override {inherit (llvm) stdenv;} {
rustWithToolchain.buildRustPackage.override {inherit (llvm) stdenv;} {
inherit pname version;
src = let
fs = lib.fileset;
@ -16,9 +23,9 @@ in
fs.toSource {
root = s;
fileset = fs.unions [
(s + /.cargo)
(s + /crates)
(s + /microfetch)
(s + /.cargo)
(s + /scripts/ld-wrapper)
(s + /Cargo.lock)
(s + /Cargo.toml)