Add alloy 4.2_2015-02-22: relational modeller

This commit is contained in:
Tobias Geerinckx-Rice 2015-05-09 01:23:30 +02:00
parent 1f6c2a97ef
commit 4c5d3f5a71
4 changed files with 66 additions and 0 deletions

View file

@ -0,0 +1,16 @@
source $stdenv/setup
jar=${src##*/}
jar=$out/share/alloy/${jar#*-}
install -Dm644 $src $jar
cat << EOF > alloy
#! $SHELL
exec $jre/bin/java -jar $jar
EOF
install -Dm755 alloy $out/bin/alloy
install -Dm644 $icon $out/share/pixmaps/alloy.png
cp -r ${desktopItem}/share/applications $out/share

View file

@ -0,0 +1,48 @@
{ stdenv, fetchurl, jre, makeDesktopItem }:
let version = "4.2_2015-02-22"; in
stdenv.mkDerivation rec {
name = "alloy-${version}";
src = fetchurl {
sha256 = "0p93v8jwx9prijpikkgmfdzb9qn8ljmvga5d9wvrkxddccjx9k28";
url = "http://alloy.mit.edu/alloy/downloads/alloy${version}.jar";
};
meta = with stdenv.lib; {
inherit version;
description = "Language & tool for relational models";
longDescription = ''
Alloy is a language for describing structures and a tool for exploring
them. An Alloy model is a collection of constraints that describes a set
of structures, e.g. all the possible security configurations of a web
application, or all the possible topologies of a switching network. The
Alloy Analyzer is a solver that takes the constraints of a model and
finds structures that satisfy them. Structures are displayed graphically,
and their appearance can be customized for the domain at hand.
'';
homepage = http://alloy.mit.edu/;
downloadPage = http://alloy.mit.edu/alloy/download.html;
license = with licenses; mit;
platforms = with platforms; linux;
maintainers = with maintainers; [ nckx ];
};
desktopItem = makeDesktopItem rec {
name = "alloy";
exec = name;
icon = name;
desktopName = "Alloy";
genericName = "Relational modelling tool";
comment = meta.description;
categories = "Development;IDE;Education;";
};
buildInputs = [ jre ];
inherit jre;
icon = ./icon.png;
builder = ./builder.sh;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -4912,6 +4912,8 @@ let
### DEVELOPMENT / TOOLS
alloy = callPackage ../development/tools/alloy { };
augeas = callPackage ../tools/system/augeas { };
ansible = callPackage ../tools/system/ansible { };