tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
dust: init at 0-91
Herwig Hochleitner
10 years ago
de5fa833
1c380842
+150
3 changed files
expand all
collapse all
unified
split
pkgs
development
interpreters
pixie
dust.nix
make-paths-configurable.patch
top-level
all-packages.nix
+27
pkgs/development/interpreters/pixie/dust.nix
···
1
1
+
{ stdenv, pixie, fetchgit }:
2
2
+
3
3
+
stdenv.mkDerivation {
4
4
+
name = "dust-0-91";
5
5
+
src = fetchgit {
6
6
+
url = "https://github.com/pixie-lang/dust.git";
7
7
+
rev = "efe469661e749a71e86858fd006f61464810575a";
8
8
+
sha256 = "0krh7ynald3gqv9f17a4kfx7sx8i31l6j1fhd5k8b6m8cid7f9c1";
9
9
+
};
10
10
+
buildInputs = [ pixie ];
11
11
+
patches = [ ./make-paths-configurable.patch ];
12
12
+
configurePhase = ''
13
13
+
pixiePath="${pixie}/bin/pxi" \
14
14
+
basePath="$out/share/dust" \
15
15
+
substituteAll dust.in dust
16
16
+
chmod +x dust
17
17
+
'';
18
18
+
# FIXME: AOT for dust
19
19
+
# buildPhase = ''
20
20
+
# find . -name "*.pxi" -exec pixie-vm -c {} \;
21
21
+
# '';
22
22
+
installPhase = ''
23
23
+
mkdir -p $out/bin $out/share/dust
24
24
+
cp -a src/ run.pxi $out/share/dust
25
25
+
mv dust $out/bin/dust
26
26
+
'';
27
27
+
}
+122
pkgs/development/interpreters/pixie/make-paths-configurable.patch
···
1
1
+
From 0cbb82e606610d36e52c70d888995fbbf9b0d7c8 Mon Sep 17 00:00:00 2001
2
2
+
From: Herwig Hochleitner <herwig@bendlas.net>
3
3
+
Date: Sun, 28 Feb 2016 16:34:14 +0100
4
4
+
Subject: [PATCH] make paths configurable
5
5
+
6
6
+
---
7
7
+
dust | 52 ----------------------------------------------------
8
8
+
dust.in | 43 +++++++++++++++++++++++++++++++++++++++++++
9
9
+
2 files changed, 43 insertions(+), 52 deletions(-)
10
10
+
delete mode 100755 dust
11
11
+
create mode 100755 dust.in
12
12
+
13
13
+
diff --git a/dust b/dust
14
14
+
deleted file mode 100755
15
15
+
index ffced9b..0000000
16
16
+
--- a/dust
17
17
+
+++ /dev/null
18
18
+
@@ -1,52 +0,0 @@
19
19
+
-#!/usr/bin/env bash
20
20
+
-
21
21
+
-base_path=$0
22
22
+
-if [ -L "$base_path" ]; then
23
23
+
- base_path=`readlink $base_path`
24
24
+
-fi
25
25
+
-base_path=`dirname $base_path`
26
26
+
-
27
27
+
-pixie_path=`which pixie-vm`
28
28
+
-if [ -z "$pixie_path" ]; then
29
29
+
- echo "Error: 'pixie-vm' must be on your PATH"
30
30
+
- exit 1
31
31
+
-fi
32
32
+
-
33
33
+
-function set_load_path() {
34
34
+
- load_path=""
35
35
+
- if ([ -f "project.edn" ] || [ -f "project.pxi" ]) && [ -f ".load-path" ]; then
36
36
+
- load_path="`cat .load-path`"
37
37
+
- fi
38
38
+
-}
39
39
+
-
40
40
+
-if [ ! -f "project.edn" ] && [ -f "project.pxi" ]; then
41
41
+
- echo "Warning: 'project.pxi' is deprecated, please use 'project.edn'."
42
42
+
- echo "To start you can run the following command:"
43
43
+
- echo " pixie-vm -l $base_path/src -e '(require dust.project :as p) (p/load-project!) (prn (dissoc @p/*project* :path))'"
44
44
+
- echo
45
45
+
-fi
46
46
+
-
47
47
+
-set_load_path
48
48
+
-run_dust="$pixie_path -l $base_path/src $load_path $base_path/run.pxi"
49
49
+
-
50
50
+
-case $1 in
51
51
+
- ""|"repl")
52
52
+
- rlwrap_cmd=""
53
53
+
- if [ -n "`which rlwrap`" ]; then
54
54
+
- rlwrap_cmd="rlwrap -aignored -n"
55
55
+
- fi
56
56
+
- $rlwrap_cmd $pixie_path $load_path
57
57
+
- ;;
58
58
+
- "run")
59
59
+
- shift
60
60
+
- file=$1
61
61
+
- shift
62
62
+
- $pixie_path $load_path $file $@
63
63
+
- ;;
64
64
+
- -h|--help)
65
65
+
- $run_dust help
66
66
+
- ;;
67
67
+
- *)
68
68
+
- $run_dust $@
69
69
+
- ;;
70
70
+
-esac
71
71
+
diff --git a/dust.in b/dust.in
72
72
+
new file mode 100755
73
73
+
index 0000000..44a7fbd
74
74
+
--- /dev/null
75
75
+
+++ b/dust.in
76
76
+
@@ -0,0 +1,43 @@
77
77
+
+#!/usr/bin/env bash
78
78
+
+
79
79
+
+base_path=@basePath@
80
80
+
+pixie_path=@pixiePath@
81
81
+
+
82
82
+
+function set_load_path() {
83
83
+
+ load_path=""
84
84
+
+ if ([ -f "project.edn" ] || [ -f "project.pxi" ]) && [ -f ".load-path" ]; then
85
85
+
+ load_path="`cat .load-path`"
86
86
+
+ fi
87
87
+
+}
88
88
+
+
89
89
+
+if [ ! -f "project.edn" ] && [ -f "project.pxi" ]; then
90
90
+
+ echo "Warning: 'project.pxi' is deprecated, please use 'project.edn'."
91
91
+
+ echo "To start you can run the following command:"
92
92
+
+ echo " pixie-vm -l $base_path/src -e '(require dust.project :as p) (p/load-project!) (prn (dissoc @p/*project* :path))'"
93
93
+
+ echo
94
94
+
+fi
95
95
+
+
96
96
+
+set_load_path
97
97
+
+run_dust="$pixie_path -l $base_path/src $load_path $base_path/run.pxi"
98
98
+
+
99
99
+
+case $1 in
100
100
+
+ ""|"repl")
101
101
+
+ rlwrap_cmd=""
102
102
+
+ if [ -n "`which rlwrap`" ]; then
103
103
+
+ rlwrap_cmd="rlwrap -aignored -n"
104
104
+
+ fi
105
105
+
+ $rlwrap_cmd $pixie_path $load_path
106
106
+
+ ;;
107
107
+
+ "run")
108
108
+
+ shift
109
109
+
+ file=$1
110
110
+
+ shift
111
111
+
+ $pixie_path $load_path $file $@
112
112
+
+ ;;
113
113
+
+ -h|--help)
114
114
+
+ $run_dust help
115
115
+
+ ;;
116
116
+
+ *)
117
117
+
+ $run_dust $@
118
118
+
+ ;;
119
119
+
+esac
120
120
+
--
121
121
+
2.7.1
122
122
+
+1
pkgs/top-level/all-packages.nix
···
5508
5508
};
5509
5509
5510
5510
pixie = callPackage ../development/interpreters/pixie { };
5511
5511
+
dust = callPackage ../development/interpreters/pixie/dust.nix { };
5511
5512
5512
5513
bundix = callPackage ../development/interpreters/ruby/bundix {
5513
5514
ruby = ruby_2_1_3;