mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-09-29 23:52:55 +00:00
global-platform-pro: 18.09.14 -> 20.01.23
The new version pulls in a prebuilt dependency, so add a mvn wrapper with proot for a minimal FHS env capable of completing the build.
This commit is contained in:
parent
18f8bf2150
commit
830612d109
@ -1,29 +1,50 @@
|
||||
{ lib, fetchFromGitHub, jdk8, maven, makeWrapper, jre8_headless, pcsclite }:
|
||||
{ lib, stdenv, fetchFromGitHub, jdk8, maven, makeWrapper, jre8_headless, pcsclite, proot, zlib }:
|
||||
|
||||
let
|
||||
mavenJdk8 = maven.override {
|
||||
jdk = jdk8;
|
||||
};
|
||||
|
||||
defineMvnWrapper = ''
|
||||
mvn()
|
||||
{
|
||||
# One of the deps that are downloaded and run needs zlib.
|
||||
export LD_LIBRARY_PATH="${lib.makeLibraryPath [zlib]}"
|
||||
# Give access to ELF interpreter under FHS path, to be able to run
|
||||
# prebuilt binaries.
|
||||
"${lib.getExe proot}" -b "${stdenv.cc.libc}/lib:/lib64" mvn "$@"
|
||||
}
|
||||
'';
|
||||
in
|
||||
mavenJdk8.buildMavenPackage rec {
|
||||
pname = "global-platform-pro";
|
||||
version = "18.09.14";
|
||||
GPPRO_VERSION = "18.09.14-0-gb439b52"; # git describe --tags --always --long --dirty
|
||||
version = "20.01.23";
|
||||
GPPRO_VERSION = "v20.01.23-0-g5ad373b"; # git describe --tags --always --long --dirty
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "martinpaljak";
|
||||
repo = "GlobalPlatformPro";
|
||||
rev = version;
|
||||
sha256 = "1vws6cbgm3mrwc2xz9j1y262vw21x3hjc9m7rqc4hn3m7gjpwsvg";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-z38I61JR4oiAkImkbwcvXoK5QsdoR986dDrOzhHsCeY=";
|
||||
};
|
||||
|
||||
mvnHash = "sha256-xFcEZpJ0+ApJTDTuA63LgvUwLrxATVKoj5Mh3WZyfq8=";
|
||||
mvnHash = "sha256-+297ttqBT4Q4NyNIvTYTtiDrB1dfmuu9iWmAxxBZiW8=";
|
||||
|
||||
nativeBuildInputs = [ jdk8 makeWrapper ];
|
||||
|
||||
# Fix build error due to missing .git directory:
|
||||
# Failed to execute goal pl.project13.maven:git-commit-id-plugin:4.0.0:revision (retrieve-git-info) on project gppro: .git directory is not found! Please specify a valid [dotGitDirectory] in your pom.xml -> [Help 1]
|
||||
mvnParameters = "-Dmaven.gitcommitid.skip=true";
|
||||
|
||||
mvnFetchExtraArgs = {
|
||||
preConfigure = defineMvnWrapper;
|
||||
};
|
||||
|
||||
preConfigure = defineMvnWrapper;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/lib/java" "$out/share/java"
|
||||
cp target/gp.jar "$out/share/java"
|
||||
cp tool/target/gp.jar "$out/share/java"
|
||||
makeWrapper "${jre8_headless}/bin/java" "$out/bin/gp" \
|
||||
--add-flags "-jar '$out/share/java/gp.jar'" \
|
||||
--prefix LD_LIBRARY_PATH : "${pcsclite.out}/lib"
|
||||
|
Loading…
Reference in New Issue
Block a user