fork
Configure Feed
Select the types of activity you want to include in your feed.
lol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1{ stdenv, fetchurl, jre, makeDesktopItem }:
2
3stdenv.mkDerivation rec {
4 name = "alloy-${version}";
5 version = "4.2_2015-02-22";
6
7 src = fetchurl {
8 sha256 = "0p93v8jwx9prijpikkgmfdzb9qn8ljmvga5d9wvrkxddccjx9k28";
9 url = "http://alloy.mit.edu/alloy/downloads/alloy${version}.jar";
10 };
11
12 desktopItem = makeDesktopItem rec {
13 name = "alloy";
14 exec = name;
15 icon = name;
16 desktopName = "Alloy";
17 genericName = "Relational modelling tool";
18 comment = meta.description;
19 categories = "Development;IDE;Education;";
20 };
21
22 buildInputs = [ jre ];
23
24 phases = [ "installPhase" ];
25
26 installPhase = ''
27 jar=$out/share/alloy/alloy${version}.jar
28
29 install -Dm644 ${src} $jar
30
31 cat << EOF > alloy
32 #!${stdenv.shell}
33 exec ${jre}/bin/java -jar $jar "\''${@}"
34 EOF
35
36 install -Dm755 alloy $out/bin/alloy
37
38 install -Dm644 ${./icon.png} $out/share/pixmaps/alloy.png
39 cp -r ${desktopItem}/share/applications $out/share
40 '';
41
42 meta = with stdenv.lib; {
43 description = "Language & tool for relational models";
44 longDescription = ''
45 Alloy is a language for describing structures and a tool for exploring
46 them. An Alloy model is a collection of constraints that describes a set
47 of structures, e.g. all the possible security configurations of a web
48 application, or all the possible topologies of a switching network. The
49 Alloy Analyzer is a solver that takes the constraints of a model and
50 finds structures that satisfy them. Structures are displayed graphically,
51 and their appearance can be customized for the domain at hand.
52 '';
53 homepage = http://alloy.mit.edu/;
54 downloadPage = http://alloy.mit.edu/alloy/download.html;
55 license = licenses.mit;
56 platforms = platforms.linux;
57 maintainers = with maintainers; [ nckx ];
58 };
59}