pinwheel: Use pkgs.buildFHSUserEnv for pants
This commit is contained in:
@@ -1,39 +1,47 @@
|
||||
{
|
||||
stdenv,
|
||||
fetchurl,
|
||||
writeShellScriptBin,
|
||||
nix-alien,
|
||||
...
|
||||
pkgs,
|
||||
lib,
|
||||
}:
|
||||
let
|
||||
version = "0.11.0";
|
||||
pname = "pants";
|
||||
version = "0.12.0";
|
||||
|
||||
unpatched = stdenv.mkDerivation {
|
||||
name = "scie-pants";
|
||||
version = version;
|
||||
sourceRoot = ".";
|
||||
phases = [
|
||||
"installPhase"
|
||||
"patchPhase"
|
||||
];
|
||||
scie-pants = pkgs.stdenv.mkDerivation {
|
||||
inherit pname version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/pantsbuild/scie-pants/releases/download/v${version}/scie-pants-linux-x86_64";
|
||||
sha256 = "sha256-ifP5gjTdLMXyVSKda6pPBNNcnJZ0giuqikFBk7cXgHI=";
|
||||
url = "https://github.com/pantsbuild/scie-pants/releases/download/v${version}/scie-${pname}-linux-x86_64";
|
||||
hash = "sha256-9PjgobndxVqDTYGtw1HESrtzwzH2qE9zFwR26xtwZrM=";
|
||||
};
|
||||
|
||||
phases = ["installPhase" "patchPhase"];
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
cp $src $out/bin/pants
|
||||
chmod +x $out/bin/pants
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
in
|
||||
writeShellScriptBin "pants" ''
|
||||
export LD_LIBRARY_PATH=$NIX_LD_LIBRARY_PATH
|
||||
${nix-alien}/bin/nix-alien ${unpatched}/bin/pants -- "$@"
|
||||
''
|
||||
pkgs.buildFHSUserEnv {
|
||||
name = "pants";
|
||||
|
||||
targetPackages = with pkgs; [
|
||||
python39
|
||||
];
|
||||
|
||||
runScript = "${scie-pants}/bin/pants";
|
||||
profile = ''
|
||||
export NIX_SSL_CERT_FILE="/etc/ssl/certs/ca-certificates.crt"
|
||||
export SSL_CERT_FILE="/etc/ssl/certs/ca-bundle.crt"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Protects your Pants from the elements";
|
||||
homepage = "https://github.com/pantsbuild/scie-pants";
|
||||
license = licenses.asl20;
|
||||
maintainers = [];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
mainProgram = "pants";
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user