diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/nosql/neo4j/default.nix')
-rw-r--r-- | nixpkgs/pkgs/servers/nosql/neo4j/default.nix | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/nosql/neo4j/default.nix b/nixpkgs/pkgs/servers/nosql/neo4j/default.nix new file mode 100644 index 000000000000..a3a8b49242cf --- /dev/null +++ b/nixpkgs/pkgs/servers/nosql/neo4j/default.nix @@ -0,0 +1,44 @@ +{ stdenv, lib, fetchurl, nixosTests, makeWrapper, openjdk17, which, gawk }: + +stdenv.mkDerivation rec { + pname = "neo4j"; + version = "5.18.0"; + + src = fetchurl { + url = "https://neo4j.com/artifact.php?name=neo4j-community-${version}-unix.tar.gz"; + hash = "sha256-XPpX6alLb81o5IBX16eHHkJMi8V/R/2YXWOCxEHKdU0="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p "$out/share/neo4j" + cp -R * "$out/share/neo4j" + + mkdir -p "$out/bin" + for NEO4J_SCRIPT in neo4j neo4j-admin cypher-shell + do + chmod +x "$out/share/neo4j/bin/$NEO4J_SCRIPT" + makeWrapper "$out/share/neo4j/bin/$NEO4J_SCRIPT" \ + "$out/bin/$NEO4J_SCRIPT" \ + --prefix PATH : "${lib.makeBinPath [ openjdk17 which gawk ]}" \ + --set JAVA_HOME "${openjdk17}" + done + + patchShebangs $out/share/neo4j/bin/neo4j-admin + + # user will be asked to change password on first login + # password must be at least 8 characters long + $out/bin/neo4j-admin dbms set-initial-password neo4jadmin + ''; + + passthru.tests.nixos = nixosTests.neo4j; + + meta = with lib; { + description = "A highly scalable, robust (fully ACID) native graph database"; + homepage = "https://neo4j.com/"; + license = licenses.gpl3; + maintainers = with maintainers; [ jonringer offline ]; + platforms = platforms.unix; + }; +} |