From e40eb38dd4880da3a7357083c0b585d70abf4676 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maximilian=20G=C3=BCntner?= Date: Sun, 4 Nov 2018 22:12:59 +0100 Subject: [PATCH] mxisd: init at 1.2.0 --- pkgs/servers/mxisd/0001-gradle.patch | 22 +++++++++ pkgs/servers/mxisd/default.nix | 70 ++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 94 insertions(+) create mode 100644 pkgs/servers/mxisd/0001-gradle.patch create mode 100644 pkgs/servers/mxisd/default.nix diff --git a/pkgs/servers/mxisd/0001-gradle.patch b/pkgs/servers/mxisd/0001-gradle.patch new file mode 100644 index 000000000000..55ff6ead22d4 --- /dev/null +++ b/pkgs/servers/mxisd/0001-gradle.patch @@ -0,0 +1,22 @@ +--- a/build.gradle 2018-11-16 15:15:29.021469758 +0100 ++++ b/build.gradle 2018-11-16 15:16:50.982289782 +0100 +@@ -64,7 +64,7 @@ + + buildscript { + repositories { +- mavenCentral() ++ REPLACE + } + + dependencies { +@@ -73,9 +73,7 @@ + } + + repositories { +- mavenCentral() +- maven { url "https://kamax.io/maven/releases/" } +- maven { url "https://kamax.io/maven/snapshots/" } ++REPLACE + } + + dependencies { diff --git a/pkgs/servers/mxisd/default.nix b/pkgs/servers/mxisd/default.nix new file mode 100644 index 000000000000..0d3bc4f3e08b --- /dev/null +++ b/pkgs/servers/mxisd/default.nix @@ -0,0 +1,70 @@ +{ stdenv, fetchFromGitHub, jdk, jre, git, gradle_2_5, perl, makeWrapper, writeText }: + +let + name = "mxisd-${version}"; + version = "1.2.0"; + rev = "8c4ddd2e6526c1d2b284ba88cce3c2b926d99c62"; + + src = fetchFromGitHub { + inherit rev; + owner = "kamax-matrix"; + repo = "mxisd"; + sha256 = "083plqg0rxsqwzyskin78wkmylhb7cqz37lpsa1zy56sxpdw1a3l"; + }; + + + deps = stdenv.mkDerivation { + name = "${name}-deps"; + inherit src; + nativeBuildInputs = [ gradle_2_5 perl git ]; + + buildPhase = '' + export MXISD_BUILD_VERSION=${rev} + export GRADLE_USER_HOME=$(mktemp -d); + gradle --no-daemon build -x test + ''; + + # perl code mavenizes pathes (com.squareup.okio/okio/1.13.0/a9283170b7305c8d92d25aff02a6ab7e45d06cbe/okio-1.13.0.jar -> com/squareup/okio/okio/1.13.0/okio-1.13.0.jar) + installPhase = '' + find $GRADLE_USER_HOME/caches/modules-2 -type f -regex '.*\.\(jar\|pom\)' \ + | perl -pe 's#(.*/([^/]+)/([^/]+)/([^/]+)/[0-9a-f]{30,40}/([^/\s]+))$# ($x = $2) =~ tr|\.|/|; "install -Dm444 $1 \$out/$x/$3/$4/$5" #e' \ + | sh + ''; + + dontStrip = true; + + outputHashAlgo = "sha256"; + outputHashMode = "recursive"; + outputHash = "0shshn05nzv23shry1xpcgvqg59gx929n0qngpfjhbq0kp7px68m"; + }; + +in +stdenv.mkDerivation { + inherit name src version; + nativeBuildInputs = [ gradle_2_5 perl makeWrapper ]; + buildInputs = [ jre ]; + + patches = [ ./0001-gradle.patch ]; + + buildPhase = '' + export MXISD_BUILD_VERSION=${rev} + export GRADLE_USER_HOME=$(mktemp -d) + + sed -ie "s#REPLACE#mavenLocal(); maven { url '${deps}' }#g" build.gradle + gradle --offline --no-daemon build -x test + ''; + + installPhase = '' + install -D build/libs/source.jar $out/lib/mxisd.jar + makeWrapper ${jre}/bin/java $out/bin/mxisd --add-flags "-jar $out/lib/mxisd.jar" + ''; + + meta = with stdenv.lib; { + description = "a federated matrix identity server"; + homepage = https://github.com/kamax-matrix/mxisd; + license = licenses.agpl3; + maintainers = with maintainers; [ mguentner ]; + platforms = platforms.all; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index be30a885759a..86046ca7c96f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3762,6 +3762,8 @@ with pkgs; mxt-app = callPackage ../misc/mxt-app { }; + mxisd = callPackage ../servers/mxisd { }; + nagstamon = callPackage ../tools/misc/nagstamon { pythonPackages = python3Packages; };