alloy: add alloy5 and take maintainership (#47262)

Add alloy5 (currently, 5.0.0.1), update homepage and downloadPage, and
take maintainership of the package.
This commit is contained in:
Amin Bandali 2018-09-26 12:46:58 -04:00 committed by Jörg Thalheim
parent e7ca9af4cc
commit 4586ff7395
3 changed files with 71 additions and 49 deletions

View file

@ -221,6 +221,11 @@
github = "amiloradovsky"; github = "amiloradovsky";
name = "Andrew Miloradovsky"; name = "Andrew Miloradovsky";
}; };
aminb = {
email = "amin@aminb.org";
github = "aminb";
name = "Amin Bandali";
};
aminechikhaoui = { aminechikhaoui = {
email = "amine.chikhaoui91@gmail.com"; email = "amine.chikhaoui91@gmail.com";
github = "AmineChikhaoui"; github = "AmineChikhaoui";

View file

@ -1,41 +1,32 @@
{ stdenv, fetchurl, jre, makeDesktopItem }: { stdenv, fetchurl, jre, makeWrapper, makeDesktopItem }:
let generic = { major, version, src }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "alloy-${version}"; name = "${nameMajor}-${version}";
version = "4.2_2015-02-22"; nameMajor = "alloy${major}";
src = fetchurl {
sha256 = "0p93v8jwx9prijpikkgmfdzb9qn8ljmvga5d9wvrkxddccjx9k28";
url = "http://alloy.mit.edu/alloy/downloads/alloy${version}.jar";
};
desktopItem = makeDesktopItem rec { desktopItem = makeDesktopItem rec {
name = "alloy"; name = "${nameMajor}";
exec = name; exec = name;
icon = name; icon = name;
desktopName = "Alloy"; desktopName = "Alloy ${major}";
genericName = "Relational modelling tool"; genericName = "Relational modelling tool";
comment = meta.description; comment = meta.description;
categories = "Development;IDE;Education;"; categories = "Development;IDE;Education;";
}; };
buildInputs = [ jre ]; nativeBuildInputs = [ makeWrapper ];
phases = [ "installPhase" ];
installPhase = ''
jar=$out/share/alloy/alloy${version}.jar
buildCommand = ''
jar=$out/share/alloy/${nameMajor}.jar
install -Dm644 ${src} $jar install -Dm644 ${src} $jar
cat << EOF > alloy mkdir -p $out/bin
#!${stdenv.shell} makeWrapper ${jre}/bin/java $out/bin/${nameMajor} --add-flags \
exec ${jre}/bin/java -jar $jar "\''${@}" "-jar $jar"
EOF
install -Dm755 alloy $out/bin/alloy install -Dm644 ${./icon.png} $out/share/pixmaps/${nameMajor}.png
install -Dm644 ${./icon.png} $out/share/pixmaps/alloy.png
cp -r ${desktopItem}/share/applications $out/share cp -r ${desktopItem}/share/applications $out/share
''; '';
@ -50,9 +41,32 @@ stdenv.mkDerivation rec {
finds structures that satisfy them. Structures are displayed graphically, finds structures that satisfy them. Structures are displayed graphically,
and their appearance can be customized for the domain at hand. and their appearance can be customized for the domain at hand.
''; '';
homepage = http://alloy.mit.edu/; homepage = http://alloytools.org/;
downloadPage = http://alloy.mit.edu/alloy/download.html; downloadPage = http://alloytools.org/download.html;
license = licenses.mit; license = licenses.mit;
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ aminb ];
}; };
};
in rec {
alloy4 = let version = "4.2_2015-02-22"; in generic {
major = "4";
inherit version;
src = fetchurl {
sha256 = "0p93v8jwx9prijpikkgmfdzb9qn8ljmvga5d9wvrkxddccjx9k28";
url = "http://alloytools.org/download/alloy${version}.jar";
};
};
alloy5 = let version = "5.0.0.1"; in generic {
major = "5";
inherit version;
src = fetchurl {
sha256 = "0kz6i9av9ksjk62lx0dxx8xr542iqvbqd14m1f9h8xpf72c25xw4";
url = "https://github.com/AlloyTools/org.alloytools.alloy/releases/download/v${version}/Alloy-${version}.jar";
};
};
alloy = alloy4;
} }

View file

@ -7932,7 +7932,10 @@ with pkgs;
for more information. for more information.
''; '';
alloy = callPackage ../development/tools/alloy { }; inherit (callPackage ../development/tools/alloy { })
alloy4
alloy5
alloy;
adtool = callPackage ../tools/admin/adtool { }; adtool = callPackage ../tools/admin/adtool { };