Compare commits

...

7 commits

Author SHA1 Message Date
d2d39773c2 Merge branch 'add-callpackage-infra' 2025-03-03 10:55:12 +01:00
f37542d964 Make cargo-dylint build
Signed-off-by: Marcel Müller <neikos@neikos.email>
2025-03-03 10:54:55 +01:00
c242bdbc1e Ignore nix result directory
Signed-off-by: Marcel Müller <neikos@neikos.email>
2025-03-03 10:54:42 +01:00
Matthias Beyer
05e39da57e
WIP: Package cargo-dylint 2025-03-03 10:24:46 +01:00
Matthias Beyer
a154eccfed
Inherit all packages from lib into flake outputs
Signed-off-by: Matthias Beyer <matthias.beyer@ifm.com>
2025-03-03 10:17:23 +01:00
Matthias Beyer
45adb5ba20
Add packages of the flake itself in pkgs
Signed-off-by: Matthias Beyer <matthias.beyer@ifm.com>
2025-03-03 10:14:02 +01:00
Matthias Beyer
5b6a252bb1
Add own callPackage definition
Signed-off-by: Matthias Beyer <matthias.beyer@ifm.com>
2025-03-03 10:12:35 +01:00
5 changed files with 64 additions and 6 deletions

1
.gitignore vendored
View file

@ -1 +1,2 @@
.direnv
result

View file

@ -18,13 +18,26 @@
let
pkgs = import inputs.nixpkgs {
inherit system;
overlays = [ inputs.rust-overlay.overlays.default ];
overlays = [
inputs.rust-overlay.overlays.default
];
};
lib = import ./lib { inherit inputs; };
rustTarget = pkgs.rust-bin.fromRustupToolchainFile ./rust-toolchain.toml;
craneLib = (inputs.crane.mkLib pkgs).overrideToolchain rustTarget;
lib = import ./lib {
inherit
inputs
craneLib
pkgs
;
};
in
{
inherit lib;
packages = lib // {
rust = rustTarget;
};
devShells.default = pkgs.mkShell {
nativeBuildInputs = [

View file

@ -1,7 +1,39 @@
{
inputs,
pkgs,
craneLib,
pkg-config,
openssl,
}:
{
let
pname = "cargo-dylint";
version = "4.0.0";
src = pkgs.fetchFromGitHub {
owner = "trailofbits";
repo = "dylint";
tag = "v${version}";
sha256 = "sha256-Z8uuewp7Buoadayc0oTafmfvwNT36KukWKiHxL/mQfI=";
};
in
craneLib.buildPackage {
inherit
pname
version
src
;
buildInputs = [
openssl
];
nativeBuildInputs = [
pkg-config
];
RUSTUP_TOOLCHAIN = "nightly-2025-02-28";
doCheck = false;
}

View file

@ -1,5 +1,15 @@
{
pkgs,
inputs,
craneLib,
...
}:
let
callPackage = pkgs.lib.callPackageWith (pkgs // packages // { inherit inputs craneLib; });
packages = {
cargo-dylint = callPackage ./cargo-dylint.nix { };
};
in
packages

2
rust-toolchain.toml Normal file
View file

@ -0,0 +1,2 @@
[toolchain]
channel = "nightly-2025-03-01"