nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 53 lines 1.8 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchzip, 5 jdk11, 6 makeWrapper, 7}: 8 9stdenv.mkDerivation (finalAttrs: { 10 pname = "janusgraph"; 11 version = "1.1.0"; 12 13 src = fetchzip { 14 url = "https://github.com/JanusGraph/janusgraph/releases/download/v${finalAttrs.version}/janusgraph-${finalAttrs.version}.zip"; 15 sha256 = "sha256-gEtiY/FXNCtpVlohcTTuZ1V/EHr/trqYQKYUKy9wN4U="; 16 }; 17 18 nativeBuildInputs = [ makeWrapper ]; 19 20 installPhase = '' 21 mkdir -p $out/bin $out/share/janusgraph 22 install -D $src/lib/*.jar $out/share/janusgraph 23 cd $src 24 find conf scripts -type f -exec install -D {} $out/share/janusgraph/{} \; 25 26 JANUSGRAPH_LIB=$out/share/janusgraph 27 classpath="" 28 # Add the slf4j-log4j12 binding 29 classpath="$classpath":$(find -L $JANUSGRAPH_LIB -name 'slf4j-log4j12*.jar' | sort | tr '\n' ':') 30 # Add the jars in $JANUSGRAPH_LIB that start with "janusgraph" 31 classpath="$classpath":$(find -L $JANUSGRAPH_LIB -name 'janusgraph*.jar' | sort | tr '\n' ':') 32 # Add the remaining jars in $JANUSGRAPH_LIB. 33 classpath="$classpath":$(find -L $JANUSGRAPH_LIB -name '*.jar' \ 34 \! -name 'janusgraph*' \ 35 \! -name 'slf4j-log4j12*.jar' | sort | tr '\n' ':') 36 37 makeWrapper ${jdk11}/bin/java $out/bin/janusgraph-server \ 38 --add-flags "-classpath $classpath org.janusgraph.graphdb.server.JanusGraphServer" 39 40 # temporary workaround for 41 # https://github.com/NixOS/nixpkgs/pull/244400#issuecomment-1667330430 42 cd "$TMPDIR" 43 ''; 44 45 meta = { 46 description = "Open-source, distributed graph database"; 47 homepage = "https://janusgraph.org/"; 48 mainProgram = "janusgraph-server"; 49 license = lib.licenses.asl20; 50 platforms = lib.platforms.unix; 51 maintainers = [ lib.maintainers.ners ]; 52 }; 53})