mirror of
https://github.com/rosenpass/rosenpass.git
synced 2025-12-18 13:24:38 +03:00
feat: add rosenpass MSRV check
This check requires a specific toolchain version, and to get that, we introduce oxalica's rust-overlay. Signed-off-by: wucke13 <wucke13+github@gmail.com>
This commit is contained in:
21
flake.lock
generated
21
flake.lock
generated
@@ -59,9 +59,30 @@
|
|||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"nix-vm-test": "nix-vm-test",
|
"nix-vm-test": "nix-vm-test",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
"rust-overlay": "rust-overlay",
|
||||||
"treefmt-nix": "treefmt-nix"
|
"treefmt-nix": "treefmt-nix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"rust-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1744513456,
|
||||||
|
"narHash": "sha256-NLVluTmK8d01Iz+WyarQhwFcXpHEwU7m5hH3YQQFJS0=",
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"rev": "730fd8e82799219754418483fabe1844262fd1e2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
|
|||||||
22
flake.nix
22
flake.nix
@@ -7,6 +7,10 @@
|
|||||||
nix-vm-test.inputs.nixpkgs.follows = "nixpkgs";
|
nix-vm-test.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
nix-vm-test.inputs.flake-utils.follows = "flake-utils";
|
nix-vm-test.inputs.flake-utils.follows = "flake-utils";
|
||||||
|
|
||||||
|
# for rust nightly with llvm-tools-preview
|
||||||
|
rust-overlay.url = "github:oxalica/rust-overlay";
|
||||||
|
rust-overlay.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
treefmt-nix.url = "github:numtide/treefmt-nix";
|
treefmt-nix.url = "github:numtide/treefmt-nix";
|
||||||
treefmt-nix.inputs.nixpkgs.follows = "nixpkgs";
|
treefmt-nix.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
@@ -17,6 +21,7 @@
|
|||||||
nixpkgs,
|
nixpkgs,
|
||||||
flake-utils,
|
flake-utils,
|
||||||
nix-vm-test,
|
nix-vm-test,
|
||||||
|
rust-overlay,
|
||||||
treefmt-nix,
|
treefmt-nix,
|
||||||
...
|
...
|
||||||
}@inputs:
|
}@inputs:
|
||||||
@@ -91,10 +96,14 @@
|
|||||||
pkgs = import nixpkgs {
|
pkgs = import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
|
||||||
# apply our own overlay, overriding/inserting our packages as defined in ./pkgs
|
|
||||||
overlays = [
|
overlays = [
|
||||||
|
# apply our own overlay, overriding/inserting our packages as defined in ./pkgs
|
||||||
self.overlays.default
|
self.overlays.default
|
||||||
|
|
||||||
nix-vm-test.overlays.default
|
nix-vm-test.overlays.default
|
||||||
|
|
||||||
|
# apply rust-overlay to get specific versions of the rust toolchain for a MSRV check
|
||||||
|
(import rust-overlay)
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -168,6 +177,17 @@
|
|||||||
systemd-rosenpass = pkgs.testers.runNixOSTest ./tests/systemd/rosenpass.nix;
|
systemd-rosenpass = pkgs.testers.runNixOSTest ./tests/systemd/rosenpass.nix;
|
||||||
systemd-rp = pkgs.testers.runNixOSTest ./tests/systemd/rp.nix;
|
systemd-rp = pkgs.testers.runNixOSTest ./tests/systemd/rp.nix;
|
||||||
formatting = treefmtEval.config.build.check self;
|
formatting = treefmtEval.config.build.check self;
|
||||||
|
rosenpass-msrv-check =
|
||||||
|
let
|
||||||
|
rosenpassCargoToml = pkgs.lib.trivial.importTOML ./rosenpass/Cargo.toml;
|
||||||
|
|
||||||
|
rustToolchain = pkgs.rust-bin.stable.${rosenpassCargoToml.package.rust-version}.default;
|
||||||
|
rustPlatform = pkgs.makeRustPlatform {
|
||||||
|
cargo = rustToolchain;
|
||||||
|
rustc = rustToolchain;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
pkgs.rosenpass.override { inherit rustPlatform; };
|
||||||
}
|
}
|
||||||
// pkgs.lib.optionalAttrs (system == "x86_64-linux") (
|
// pkgs.lib.optionalAttrs (system == "x86_64-linux") (
|
||||||
import ./tests/legacy-distro-packaging.nix {
|
import ./tests/legacy-distro-packaging.nix {
|
||||||
|
|||||||
Reference in New Issue
Block a user