tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
lobster: init at unstable-2020-07-27
Francesco Gazzetta
5 years ago
d4270070
55f52680
+85
3 changed files
expand all
collapse all
unified
split
pkgs
development
compilers
lobster
default.nix
test-can-run-hello-world.nix
top-level
all-packages.nix
+66
pkgs/development/compilers/lobster/default.nix
···
1
1
+
{ stdenv
2
2
+
, fetchFromGitHub
3
3
+
, cmake
4
4
+
, callPackage
5
5
+
6
6
+
# Linux deps
7
7
+
, libGL
8
8
+
, xorg
9
9
+
10
10
+
# Darwin deps
11
11
+
, cf-private
12
12
+
, Cocoa
13
13
+
, AudioToolbox
14
14
+
, OpenGL
15
15
+
, Foundation
16
16
+
, ForceFeedback
17
17
+
}:
18
18
+
19
19
+
stdenv.mkDerivation rec {
20
20
+
pname = "lobster";
21
21
+
version = "unstable-2020-07-27";
22
22
+
23
23
+
src = fetchFromGitHub {
24
24
+
owner = "aardappel";
25
25
+
repo = pname;
26
26
+
rev = "9d68171494a79c83931426b624a0249a9c51882c";
27
27
+
sha256 = "0d4gn71jym662i00rdmynv53ng1lgl81s5lw1sdddgn41wzs28dd";
28
28
+
};
29
29
+
30
30
+
nativeBuildInputs = [ cmake ];
31
31
+
buildInputs = if stdenv.isDarwin
32
32
+
then [
33
33
+
cf-private
34
34
+
Cocoa
35
35
+
AudioToolbox
36
36
+
OpenGL
37
37
+
Foundation
38
38
+
ForceFeedback
39
39
+
]
40
40
+
else [
41
41
+
libGL
42
42
+
xorg.libX11
43
43
+
xorg.libXext
44
44
+
];
45
45
+
46
46
+
preConfigure = "cd dev";
47
47
+
enableParallelBuilding = true;
48
48
+
49
49
+
passthru.tests = {
50
50
+
can-run-hello-world = callPackage ./test-can-run-hello-world.nix {};
51
51
+
};
52
52
+
53
53
+
meta = with stdenv.lib; {
54
54
+
homepage = "http://strlen.com/lobster";
55
55
+
description = "The Lobster programming language";
56
56
+
longDescription = ''
57
57
+
Lobster is a programming language that tries to combine the advantages of
58
58
+
very static typing and memory management with a very lightweight,
59
59
+
friendly and terse syntax, by doing most of the heavy lifting for you.
60
60
+
'';
61
61
+
license = licenses.asl20;
62
62
+
maintainers = with maintainers; [ fgaz ];
63
63
+
platforms = platforms.all;
64
64
+
};
65
65
+
}
66
66
+
+13
pkgs/development/compilers/lobster/test-can-run-hello-world.nix
···
1
1
+
{ stdenv, lobster }:
2
2
+
3
3
+
stdenv.mkDerivation {
4
4
+
name = "lobster-test-can-run-hello-world";
5
5
+
meta.timeout = 10;
6
6
+
buildCommand = ''
7
7
+
${lobster}/bin/lobster \
8
8
+
${lobster}/share/Lobster/samples/rosettacode/hello_world_test.lobster \
9
9
+
| grep 'Goodbye, World!'
10
10
+
touch $out
11
11
+
'';
12
12
+
}
13
13
+
+6
pkgs/top-level/all-packages.nix
···
8992
8992
8993
8993
lizardfs = callPackage ../tools/filesystems/lizardfs { };
8994
8994
8995
8995
+
lobster = callPackage ../development/compilers/lobster {
8996
8996
+
inherit (darwin) cf-private;
8997
8997
+
inherit (darwin.apple_sdk.frameworks)
8998
8998
+
Cocoa AudioToolbox OpenGL Foundation ForceFeedback;
8999
8999
+
};
9000
9000
+
8995
9001
lld = llvmPackages.lld;
8996
9002
lld_5 = llvmPackages_5.lld;
8997
9003
lld_6 = llvmPackages_6.lld;