mirror of
https://github.com/engineer-man/piston.git
synced 2025-04-20 12:07:49 +02:00
Compare commits
5 commits
5071acd587
...
7d9b4a81dd
Author | SHA1 | Date | |
---|---|---|---|
|
7d9b4a81dd | ||
|
1d55a41a2d | ||
|
6ef0cdf7b4 | ||
|
fc33860983 | ||
|
0a5a5cc2f8 |
8 changed files with 54 additions and 14 deletions
|
@ -156,7 +156,11 @@ class Job {
|
||||||
'-s',
|
'-s',
|
||||||
'-c',
|
'-c',
|
||||||
'/box/submission',
|
'/box/submission',
|
||||||
'-e',
|
'-E',
|
||||||
|
'HOME=/tmp',
|
||||||
|
...this.runtime.env_vars.flat_map(v => ['-E', v]),
|
||||||
|
'-E',
|
||||||
|
`PISTON_LANGUAGE=${this.runtime.language}`,
|
||||||
`--dir=${this.runtime.pkgdir}`,
|
`--dir=${this.runtime.pkgdir}`,
|
||||||
`--dir=/etc:noexec`,
|
`--dir=/etc:noexec`,
|
||||||
`--processes=${this.runtime.max_process_count}`,
|
`--processes=${this.runtime.max_process_count}`,
|
||||||
|
@ -175,10 +179,6 @@ class Job {
|
||||||
...args,
|
...args,
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
env: {
|
|
||||||
...this.runtime.env_vars,
|
|
||||||
PISTON_LANGUAGE: this.runtime.language,
|
|
||||||
},
|
|
||||||
stdio: 'pipe',
|
stdio: 'pipe',
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
|
@ -178,15 +178,7 @@ class Runtime {
|
||||||
const env_file = path.join(this.pkgdir, '.env');
|
const env_file = path.join(this.pkgdir, '.env');
|
||||||
const env_content = fss.read_file_sync(env_file).toString();
|
const env_content = fss.read_file_sync(env_file).toString();
|
||||||
|
|
||||||
this._env_vars = {};
|
this._env_vars = env_content.trim().split('\n');
|
||||||
|
|
||||||
env_content
|
|
||||||
.trim()
|
|
||||||
.split('\n')
|
|
||||||
.map(line => line.split('=', 2))
|
|
||||||
.forEach(([key, val]) => {
|
|
||||||
this._env_vars[key.trim()] = val.trim();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return this._env_vars;
|
return this._env_vars;
|
||||||
|
|
22
packages/hy/1.0a4/build.sh
Normal file
22
packages/hy/1.0a4/build.sh
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
PREFIX=$(realpath $(dirname $0))
|
||||||
|
|
||||||
|
mkdir -p build
|
||||||
|
|
||||||
|
cd build
|
||||||
|
|
||||||
|
curl "https://www.python.org/ftp/python/3.10.0/Python-3.10.0.tgz" -o python.tar.gz
|
||||||
|
tar xzf python.tar.gz --strip-components=1
|
||||||
|
rm python.tar.gz
|
||||||
|
|
||||||
|
./configure --prefix "$PREFIX" --with-ensurepip=install
|
||||||
|
make -j$(nproc)
|
||||||
|
make install -j$(nproc)
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
rm -rf build
|
||||||
|
|
||||||
|
bin/pip3 install numpy scipy pandas pycrypto whoosh bcrypt passlib sympy
|
||||||
|
bin/pip3 install --pre hy==1.0a4 hyrule==0.1 toolz multipledispatch funcy funcy_chain pyrsistent
|
1
packages/hy/1.0a4/environment
Normal file
1
packages/hy/1.0a4/environment
Normal file
|
@ -0,0 +1 @@
|
||||||
|
export PATH=$PWD/bin:$PATH
|
5
packages/hy/1.0a4/metadata.json
Normal file
5
packages/hy/1.0a4/metadata.json
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"language": "hy",
|
||||||
|
"version": "1.0a4",
|
||||||
|
"aliases": ["hy", "hy1.0", "hy1.0a4"]
|
||||||
|
}
|
3
packages/hy/1.0a4/run
Normal file
3
packages/hy/1.0a4/run
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
hy "$@"
|
16
packages/hy/1.0a4/test.hy
Normal file
16
packages/hy/1.0a4/test.hy
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
(print (cut "abcdef" 1 4))
|
||||||
|
|
||||||
|
(defn test [a b [c None] [d "x"] #* e]
|
||||||
|
[a b c d e])
|
||||||
|
(print (test 1 2)) ; => [1, 2, None, 'x', ()]
|
||||||
|
(print (test 1 2 3 4 5 6 7)) ; => [1, 2, 3, 4, (5, 6, 7)]
|
||||||
|
|
||||||
|
(import math)
|
||||||
|
(print (math.sqrt 2))
|
||||||
|
|
||||||
|
(import hyrule [inc])
|
||||||
|
(require hyrule [assoc])
|
||||||
|
(print (list (map inc [1 2 3])))
|
||||||
|
(setv d {})
|
||||||
|
(assoc d "a" 1 "b" 2)
|
||||||
|
(print d)
|
|
@ -398,6 +398,7 @@ Errors may return status codes as follows:
|
||||||
`groovy`,
|
`groovy`,
|
||||||
`haskell`,
|
`haskell`,
|
||||||
`husk`,
|
`husk`,
|
||||||
|
`hy`,
|
||||||
`iverilog`,
|
`iverilog`,
|
||||||
`japt`,
|
`japt`,
|
||||||
`java`,
|
`java`,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue