e487030d7a
Without this, the derivation is just called `rust-workspace-unknown` which is - at best - a little confusing. Change-Id: I3f50f87a411248ffcce9397a4ddb57e87abeab1c Reviewed-on: https://cl.tvl.fyi/c/depot/+/8923 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
51 lines
1.1 KiB
Nix
51 lines
1.1 KiB
Nix
# https://github.com/josh-project/josh
|
|
{ depot, pkgs, ... }:
|
|
|
|
let
|
|
# TODO(sterni): switch to pkgs.josh as soon as that commit is released
|
|
rev = "c0a170a756dd5e63268673086218c0ce7bf18bdc";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "josh-project";
|
|
repo = "josh";
|
|
inherit rev;
|
|
hash = "sha256:0rsf65fq9xm3qj77ig3s4wmmgm50jhvwrknr839hipjj5lj4x1hp";
|
|
};
|
|
|
|
|
|
rust169 = depot.third_party.nixpkgs.rust-bin.stable."1.69.0".default;
|
|
naersk = pkgs.callPackage depot.third_party.sources.naersk {
|
|
rustc = rust169;
|
|
cargo = rust169;
|
|
};
|
|
version = "git-${builtins.substring 0 8 rev}";
|
|
in
|
|
naersk.buildPackage {
|
|
pname = "josh";
|
|
inherit src version;
|
|
JOSH_VERSION = version;
|
|
|
|
buildInputs = with pkgs; [
|
|
libgit2
|
|
openssl
|
|
pkg-config
|
|
];
|
|
|
|
dontStrip = true;
|
|
cargoBuildOptions = x: x ++ [
|
|
"-p"
|
|
"josh-filter"
|
|
"-p"
|
|
"josh-proxy"
|
|
];
|
|
|
|
overrideMain = x: {
|
|
preBuild = x.preBuild or "" + ''
|
|
echo 'debug = true' >> Cargo.toml
|
|
'';
|
|
|
|
nativeBuildInputs = (x.nativeBuildInputs or [ ]) ++ [ pkgs.makeWrapper ];
|
|
postInstall = ''
|
|
wrapProgram $out/bin/josh-proxy --prefix PATH : "${pkgs.git}/bin"
|
|
'';
|
|
};
|
|
}
|