diff options
Diffstat (limited to 'pkgs/servers/keycloak/default.nix')
-rw-r--r-- | pkgs/servers/keycloak/default.nix | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/pkgs/servers/keycloak/default.nix b/pkgs/servers/keycloak/default.nix index 373a6d03d9de7..d4ec9d6e9ed7d 100644 --- a/pkgs/servers/keycloak/default.nix +++ b/pkgs/servers/keycloak/default.nix @@ -13,15 +13,21 @@ stdenv.mkDerivation rec { pname = "keycloak"; - version = "19.0.2"; + version = "20.0.0"; src = fetchzip { url = "https://github.com/keycloak/keycloak/releases/download/${version}/keycloak-${version}.zip"; - sha256 = "sha256-Ze9VE2gtLxoZpyqbeisvHdOu8yFPwAKnDMpfA3FXWy8="; + sha256 = "sha256-dJueuXKv3GoDnaQnvYMzIJJSr+NNSYgS7KY3MTGE37Y="; }; nativeBuildInputs = [ makeWrapper jre ]; + patches = [ + # Make home.dir and config.dir configurable through the + # KC_HOME_DIR and KC_CONF_DIR environment variables. + ./config_vars.patch + ]; + buildPhase = '' runHook preBuild '' + lib.optionalString (confFile != null) '' @@ -37,6 +43,8 @@ stdenv.mkDerivation rec { ${lib.concatMapStringsSep "\n" (pl: "install_plugin ${lib.escapeShellArg pl}") plugins} '' + '' patchShebangs bin/kc.sh + export KC_HOME_DIR=$(pwd) + export KC_CONF_DIR=$(pwd)/conf bin/kc.sh build runHook postBuild @@ -54,9 +62,6 @@ stdenv.mkDerivation rec { ''; postFixup = '' - substituteInPlace $out/bin/kc.sh --replace ${lib.escapeShellArg "-Dkc.home.dir='$DIRNAME'/../"} '-Dkc.home.dir=$KC_HOME_DIR' - substituteInPlace $out/bin/kc.sh --replace ${lib.escapeShellArg "-Djboss.server.config.dir='$DIRNAME'/../conf"} '-Djboss.server.config.dir=$KC_CONF_DIR' - for script in $(find $out/bin -type f -executable); do wrapProgram "$script" --set JAVA_HOME ${jre} --prefix PATH : ${jre}/bin done |