blob: ce472b32c20b7eddad1bb01d5f56193348ec8c6b (
plain) (
tree)
|
|
# 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;
};
in
naersk.buildPackage {
inherit src;
JOSH_VERSION = "git-${builtins.substring 0 8 rev}";
buildInputs = with pkgs; [
libgit2
openssl
pkg-config
];
cargoBuildOptions = x: x ++ [
"-p"
"josh-filter"
"-p"
"josh-proxy"
];
overrideMain = x: {
nativeBuildInputs = (x.nativeBuildInputs or [ ]) ++ [ pkgs.makeWrapper ];
postInstall = ''
wrapProgram $out/bin/josh-proxy --prefix PATH : "${pkgs.git}/bin"
'';
};
}
|