tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
logisim: add darwin bundle
Emily Trau
2 years ago
0d9610c5
c87d0c29
+29
-15
1 changed file
expand all
collapse all
unified
split
pkgs
applications
science
logic
logisim
default.nix
+29
-15
pkgs/applications/science/logic/logisim/default.nix
···
1
1
-
{ lib, stdenv, fetchurl, jre, makeWrapper, copyDesktopItems, makeDesktopItem, unzip }:
1
1
+
{ lib
2
2
+
, stdenv
3
3
+
, fetchurl
4
4
+
, jre
5
5
+
, makeBinaryWrapper
6
6
+
, copyDesktopItems
7
7
+
, makeDesktopItem
8
8
+
, desktopToDarwinBundle
9
9
+
, unzip
10
10
+
}:
2
11
3
3
-
stdenv.mkDerivation rec {
12
12
+
stdenv.mkDerivation (finalAttrs: {
4
13
pname = "logisim";
5
14
version = "2.7.1";
6
15
7
16
src = fetchurl {
8
8
-
url = "mirror://sourceforge/project/circuit/${lib.versions.majorMinor version}.x/${version}/logisim-generic-${version}.jar";
9
9
-
sha256 = "1hkvc9zc7qmvjbl9579p84hw3n8wl3275246xlzj136i5b0phain";
17
17
+
url = "mirror://sourceforge/project/circuit/${lib.versions.majorMinor finalAttrs.version}.x/${finalAttrs.version}/logisim-generic-${finalAttrs.version}.jar";
18
18
+
hash = "sha256-Nip4wSrRjCA/7YaIcsSgHNnBIUE3nZLokrviw35ie8I=";
10
19
};
11
11
-
12
20
dontUnpack = true;
13
21
14
14
-
nativeBuildInputs = [ makeWrapper copyDesktopItems unzip ];
22
22
+
nativeBuildInputs = [
23
23
+
makeBinaryWrapper
24
24
+
copyDesktopItems
25
25
+
unzip
26
26
+
] ++ lib.optionals stdenv.isDarwin [
27
27
+
desktopToDarwinBundle
28
28
+
];
15
29
16
30
desktopItems = [
17
31
(makeDesktopItem {
18
18
-
name = pname;
32
32
+
name = "logisim";
19
33
desktopName = "Logisim";
20
34
exec = "logisim";
21
35
icon = "logisim";
22
22
-
comment = meta.description;
36
36
+
comment = finalAttrs.meta.description;
23
37
categories = [ "Education" ];
24
38
})
25
39
];
···
34
48
unzip $src "resources/logisim/img/*"
35
49
for size in 16 20 24 48 64 128
36
50
do
37
37
-
install -D "./resources/logisim/img/logisim-icon-$size.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/logisim.png"
51
51
+
install -Dm444 "./resources/logisim/img/logisim-icon-$size.png" "$out/share/icons/hicolor/''${size}x''${size}/apps/logisim.png"
38
52
done
39
53
40
54
runHook postInstall
41
55
'';
42
56
43
43
-
meta = with lib; {
57
57
+
meta = {
44
58
homepage = "http://www.cburch.com/logisim/";
45
59
description = "Educational tool for designing and simulating digital logic circuits";
46
60
mainProgram = "logisim";
47
47
-
maintainers = with maintainers; [ emilytrau ];
48
48
-
sourceProvenance = with sourceTypes; [ binaryBytecode ];
49
49
-
license = licenses.gpl2Plus;
50
50
-
platforms = platforms.unix;
61
61
+
maintainers = with lib.maintainers; [ emilytrau ];
62
62
+
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
63
63
+
license = lib.licenses.gpl2Only;
64
64
+
platforms = lib.platforms.unix;
51
65
};
52
52
-
}
66
66
+
})