about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/servers/keycloak/default.nix34
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 36 insertions, 0 deletions
diff --git a/pkgs/servers/keycloak/default.nix b/pkgs/servers/keycloak/default.nix
new file mode 100644
index 000000000000..5fe684cfe31f
--- /dev/null
+++ b/pkgs/servers/keycloak/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchzip, makeWrapper, jre }:
+
+stdenv.mkDerivation rec {
+  pname   = "keycloak";
+  version = "9.0.0";
+
+  src = fetchzip {
+    url    = "https://downloads.jboss.org/keycloak/${version}/keycloak-${version}.zip";
+    sha256 = "1w2d76v1rjghvdks1w32qi08gh88cd37vbf6vx0kq9a2gnhn7hip";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir $out
+    cp -r * $out
+
+    rm -rf $out/bin/*.{ps1,bat}
+    rm -rf $out/bin/add-user-keycloak.sh
+    rm -rf $out/bin/jconsole.sh
+
+    chmod +x $out/bin/standalone.sh
+    wrapProgram $out/bin/standalone.sh \
+      --prefix PATH ":" ${jre}/bin ;
+  '';
+
+  meta = with stdenv.lib; {
+    homepage    = "https://www.keycloak.org/";
+    description = "Identity and access management for modern applications and services";
+    license     = licenses.asl20;
+    maintainers = [ maintainers.ngerstle ];
+  };
+
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4fff36312704..8c33eb8517ea 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -15375,6 +15375,8 @@ in
 
   jetty = callPackage ../servers/http/jetty { };
 
+  keycloak = callPackage ../servers/keycloak { };
+
   knot-dns = callPackage ../servers/dns/knot-dns { };
   knot-resolver = callPackage ../servers/dns/knot-resolver { };