mirror of
https://github.com/engineer-man/piston.git
synced 2025-05-07 12:26:26 +02:00
Convert some packages to nix-based
Affected packages: - crystal - dart - dash - deno - elixir - erlang - gawk
This commit is contained in:
parent
ddab59ccdd
commit
af5036d82c
60 changed files with 224 additions and 309 deletions
7
packages/crystal/0.36.1/build.sh
vendored
7
packages/crystal/0.36.1/build.sh
vendored
|
@ -1,7 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
PREFIX=$(realpath $(dirname $0))
|
||||
|
||||
curl -L "https://github.com/crystal-lang/crystal/releases/download/0.36.1/crystal-0.36.1-1-linux-x86_64.tar.gz" -o crystal.tar.gz
|
||||
tar xzf crystal.tar.gz --strip-components=1
|
||||
rm crystal.tar.gz
|
5
packages/crystal/0.36.1/compile
vendored
5
packages/crystal/0.36.1/compile
vendored
|
@ -1,5 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Compile crystal files into out file
|
||||
crystal build "$@" -o out --no-color && \
|
||||
chmod +x out
|
1
packages/crystal/0.36.1/environment
vendored
1
packages/crystal/0.36.1/environment
vendored
|
@ -1 +0,0 @@
|
|||
export PATH=$PWD/bin:$PATH
|
5
packages/crystal/0.36.1/metadata.json
vendored
5
packages/crystal/0.36.1/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "crystal",
|
||||
"version": "0.36.1",
|
||||
"aliases": ["crystal", "cr"]
|
||||
}
|
4
packages/crystal/0.36.1/run
vendored
4
packages/crystal/0.36.1/run
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
shift # Filename is only used to compile
|
||||
./out "$@"
|
1
packages/crystal/0.36.1/test.cr
vendored
1
packages/crystal/0.36.1/test.cr
vendored
|
@ -1 +0,0 @@
|
|||
puts("OK")
|
11
packages/dart/2.12.1/build.sh
vendored
11
packages/dart/2.12.1/build.sh
vendored
|
@ -1,11 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
curl -L "https://storage.googleapis.com/dart-archive/channels/stable/release/2.12.1/sdk/dartsdk-linux-x64-release.zip" -o dart.zip
|
||||
|
||||
unzip dart.zip
|
||||
rm dart.zip
|
||||
|
||||
cp -r dart-sdk/* .
|
||||
rm -rf dart-sdk
|
||||
|
||||
chmod -R +rx bin
|
4
packages/dart/2.12.1/environment
vendored
4
packages/dart/2.12.1/environment
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put 'export' statements here for environment variables
|
||||
export PATH=$PWD/bin:$PATH
|
5
packages/dart/2.12.1/metadata.json
vendored
5
packages/dart/2.12.1/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "dart",
|
||||
"version": "2.12.1",
|
||||
"aliases": []
|
||||
}
|
4
packages/dart/2.12.1/run
vendored
4
packages/dart/2.12.1/run
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put instructions to run the runtime
|
||||
dart run "$@"
|
3
packages/dart/2.12.1/test.dart
vendored
3
packages/dart/2.12.1/test.dart
vendored
|
@ -1,3 +0,0 @@
|
|||
void main() {
|
||||
print('OK');
|
||||
}
|
19
packages/dash/0.5.11/build.sh
vendored
19
packages/dash/0.5.11/build.sh
vendored
|
@ -1,19 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put instructions to build your package in here
|
||||
PREFIX=$(realpath $(dirname $0))
|
||||
|
||||
mkdir -p build
|
||||
|
||||
cd build
|
||||
|
||||
curl "http://gondor.apana.org.au/~herbert/dash/files/dash-0.5.11.tar.gz" -o dash.tar.gz
|
||||
tar xzf dash.tar.gz --strip-components=1
|
||||
|
||||
./configure --prefix "$PREFIX" &&
|
||||
make -j$(nproc) &&
|
||||
make install -j$(nproc)
|
||||
|
||||
cd ../
|
||||
|
||||
rm -rf build
|
4
packages/dash/0.5.11/environment
vendored
4
packages/dash/0.5.11/environment
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put 'export' statements here for environment variables
|
||||
export PATH=$PWD/bin:$PATH
|
5
packages/dash/0.5.11/metadata.json
vendored
5
packages/dash/0.5.11/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "dash",
|
||||
"version": "0.5.11",
|
||||
"aliases": ["dash"]
|
||||
}
|
4
packages/dash/0.5.11/run
vendored
4
packages/dash/0.5.11/run
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put instructions to run the runtime
|
||||
dash "$@"
|
1
packages/dash/0.5.11/test.dash
vendored
1
packages/dash/0.5.11/test.dash
vendored
|
@ -1 +0,0 @@
|
|||
echo "OK"
|
5
packages/deno/1.16.2/build.sh
vendored
5
packages/deno/1.16.2/build.sh
vendored
|
@ -1,5 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
curl -OL https://github.com/denoland/deno/releases/download/v1.16.2/deno-x86_64-unknown-linux-gnu.zip
|
||||
unzip -o deno-x86_64-unknown-linux-gnu.zip
|
||||
rm deno-x86_64-unknown-linux-gnu.zip
|
3
packages/deno/1.16.2/environment
vendored
3
packages/deno/1.16.2/environment
vendored
|
@ -1,3 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
export PATH=$PWD:$PATH
|
20
packages/deno/1.16.2/metadata.json
vendored
20
packages/deno/1.16.2/metadata.json
vendored
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
"language": "deno",
|
||||
"version": "1.16.2",
|
||||
"dependencies": {},
|
||||
"provides": [
|
||||
{
|
||||
"language": "typescript",
|
||||
"aliases": [
|
||||
"deno",
|
||||
"deno-ts"
|
||||
]
|
||||
},
|
||||
{
|
||||
"language": "javascript",
|
||||
"aliases": [
|
||||
"deno-js"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
3
packages/deno/1.16.2/run
vendored
3
packages/deno/1.16.2/run
vendored
|
@ -1,3 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
DENO_DIR=$PWD deno run $@
|
1
packages/deno/1.16.2/test.deno.ts
vendored
1
packages/deno/1.16.2/test.deno.ts
vendored
|
@ -1 +0,0 @@
|
|||
console.log("OK")
|
5
packages/deno/1.7.5/build.sh
vendored
5
packages/deno/1.7.5/build.sh
vendored
|
@ -1,5 +0,0 @@
|
|||
curl -L https://github.com/denoland/deno/releases/download/v1.7.5/deno-x86_64-unknown-linux-gnu.zip --output deno.zip
|
||||
unzip -o deno.zip
|
||||
rm deno.zip
|
||||
|
||||
chmod +x deno
|
1
packages/deno/1.7.5/environment
vendored
1
packages/deno/1.7.5/environment
vendored
|
@ -1 +0,0 @@
|
|||
export PATH=$PWD:$PATH
|
14
packages/deno/1.7.5/metadata.json
vendored
14
packages/deno/1.7.5/metadata.json
vendored
|
@ -1,14 +0,0 @@
|
|||
{
|
||||
"language": "deno",
|
||||
"version": "1.7.5",
|
||||
"provides": [
|
||||
{
|
||||
"language": "typescript",
|
||||
"aliases": ["deno-ts", "deno"]
|
||||
},
|
||||
{
|
||||
"language": "javascript",
|
||||
"aliases": ["deno-js"]
|
||||
}
|
||||
]
|
||||
}
|
2
packages/deno/1.7.5/run
vendored
2
packages/deno/1.7.5/run
vendored
|
@ -1,2 +0,0 @@
|
|||
#!/bin/bash
|
||||
DENO_DIR=$PWD deno run "$@"
|
1
packages/deno/1.7.5/test.deno.ts
vendored
1
packages/deno/1.7.5/test.deno.ts
vendored
|
@ -1 +0,0 @@
|
|||
console.log('OK');
|
25
packages/elixir/1.11.3/build.sh
vendored
25
packages/elixir/1.11.3/build.sh
vendored
|
@ -1,25 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
source ../../erlang/23.0.0/build.sh
|
||||
|
||||
export PATH=$PWD/bin:$PATH
|
||||
|
||||
PREFIX=$(realpath $(dirname $0))
|
||||
|
||||
mkdir -p build
|
||||
|
||||
cd build
|
||||
|
||||
curl -L "https://github.com/elixir-lang/elixir/archive/v1.11.3.tar.gz" -o elixir.tar.gz
|
||||
tar xzf elixir.tar.gz --strip-components=1
|
||||
rm elixir.tar.gz
|
||||
|
||||
./configure --prefix "$PREFIX"
|
||||
make -j$(nproc)
|
||||
|
||||
cd ..
|
||||
|
||||
cp -r build/bin .
|
||||
cp -r build/lib .
|
||||
|
||||
rm -rf build
|
5
packages/elixir/1.11.3/environment
vendored
5
packages/elixir/1.11.3/environment
vendored
|
@ -1,5 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put 'export' statements here for environment variables
|
||||
export LC_ALL=en_US.UTF-8
|
||||
export PATH=$PWD/bin:$PATH
|
5
packages/elixir/1.11.3/metadata.json
vendored
5
packages/elixir/1.11.3/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "elixir",
|
||||
"version": "1.11.3",
|
||||
"aliases": ["elixir", "exs"]
|
||||
}
|
4
packages/elixir/1.11.3/run
vendored
4
packages/elixir/1.11.3/run
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Put instructions to run the runtime
|
||||
elixir "$@"
|
1
packages/elixir/1.11.3/test.exs
vendored
1
packages/elixir/1.11.3/test.exs
vendored
|
@ -1 +0,0 @@
|
|||
IO.puts("OK")
|
21
packages/erlang/23.0.0/build.sh
vendored
21
packages/erlang/23.0.0/build.sh
vendored
|
@ -1,21 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
PREFIX=$(realpath $(dirname $0))
|
||||
|
||||
mkdir -p build
|
||||
|
||||
cd build
|
||||
|
||||
curl "http://erlang.org/download/otp_src_23.0.tar.gz" -o erlang.tar.gz
|
||||
tar xzf erlang.tar.gz --strip-components=1
|
||||
rm erlang.tar.gz
|
||||
|
||||
export ERL_TOP=$(pwd)
|
||||
./configure --prefix "$PREFIX"
|
||||
make -j$(nproc)
|
||||
make install -j$(nproc)
|
||||
|
||||
cd ..
|
||||
|
||||
rm -rf build
|
||||
|
4
packages/erlang/23.0.0/environment
vendored
4
packages/erlang/23.0.0/environment
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put 'export' statements here for environment variables
|
||||
export PATH=$PWD/bin:$PATH
|
5
packages/erlang/23.0.0/metadata.json
vendored
5
packages/erlang/23.0.0/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "erlang",
|
||||
"version": "23.0.0",
|
||||
"aliases": ["erlang", "erl", "escript"]
|
||||
}
|
4
packages/erlang/23.0.0/run
vendored
4
packages/erlang/23.0.0/run
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Put instructions to run the runtime
|
||||
escript "$@"
|
3
packages/erlang/23.0.0/test.erl
vendored
3
packages/erlang/23.0.0/test.erl
vendored
|
@ -1,3 +0,0 @@
|
|||
|
||||
main(_) ->
|
||||
io:format("OK~n").
|
3
packages/file/0.0.1/build.sh
vendored
3
packages/file/0.0.1/build.sh
vendored
|
@ -1,3 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Nothing to do here
|
3
packages/file/0.0.1/environment
vendored
3
packages/file/0.0.1/environment
vendored
|
@ -1,3 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
export PATH=$PWD:$PATH
|
5
packages/file/0.0.1/metadata.json
vendored
5
packages/file/0.0.1/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "file",
|
||||
"version": "0.0.1",
|
||||
"aliases": ["executable", "elf", "binary"]
|
||||
}
|
6
packages/file/0.0.1/run
vendored
6
packages/file/0.0.1/run
vendored
|
@ -1,6 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
filename="$1"
|
||||
chmod +x "$filename"
|
||||
shift
|
||||
./"$filename" "$@"
|
BIN
packages/file/0.0.1/test.file
vendored
BIN
packages/file/0.0.1/test.file
vendored
Binary file not shown.
21
packages/gawk/5.1.0/build.sh
vendored
21
packages/gawk/5.1.0/build.sh
vendored
|
@ -1,21 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put instructions to build your package in here
|
||||
PREFIX=$(realpath $(dirname $0))
|
||||
|
||||
mkdir -p build
|
||||
|
||||
cd build
|
||||
|
||||
curl "https://ftp.gnu.org/gnu/gawk/gawk-5.1.0.tar.gz" -o gawk.tar.gz
|
||||
|
||||
tar xzf gawk.tar.gz --strip-components=1
|
||||
|
||||
# === autoconf based ===
|
||||
./configure --prefix "$PREFIX"
|
||||
|
||||
make -j$(nproc)
|
||||
make install -j$(nproc)
|
||||
cd ../
|
||||
rm -rf build
|
||||
|
4
packages/gawk/5.1.0/environment
vendored
4
packages/gawk/5.1.0/environment
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put 'export' statements here for environment variables
|
||||
export PATH=$PWD/bin:$PATH
|
10
packages/gawk/5.1.0/metadata.json
vendored
10
packages/gawk/5.1.0/metadata.json
vendored
|
@ -1,10 +0,0 @@
|
|||
{
|
||||
"language": "gawk",
|
||||
"version": "5.1.0",
|
||||
"provides": [
|
||||
{
|
||||
"language": "awk",
|
||||
"aliases": ["gawk"]
|
||||
}
|
||||
]
|
||||
}
|
4
packages/gawk/5.1.0/run
vendored
4
packages/gawk/5.1.0/run
vendored
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Put instructions to run the runtime
|
||||
gawk-5.1.0 -f "$@"
|
1
packages/gawk/5.1.0/test.awk
vendored
1
packages/gawk/5.1.0/test.awk
vendored
|
@ -1 +0,0 @@
|
|||
{print "OK"}
|
21
packages/python/3.10.0/build.sh
vendored
21
packages/python/3.10.0/build.sh
vendored
|
@ -1,21 +0,0 @@
|
|||
#!/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
|
1
packages/python/3.10.0/environment
vendored
1
packages/python/3.10.0/environment
vendored
|
@ -1 +0,0 @@
|
|||
export PATH=$PWD/bin:$PATH
|
5
packages/python/3.10.0/metadata.json
vendored
5
packages/python/3.10.0/metadata.json
vendored
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"language": "python",
|
||||
"version": "3.10.0",
|
||||
"aliases": ["py", "py3", "python3", "python3.10"]
|
||||
}
|
3
packages/python/3.10.0/run
vendored
3
packages/python/3.10.0/run
vendored
|
@ -1,3 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
python3.10 "$@"
|
7
packages/python/3.10.0/test.py
vendored
7
packages/python/3.10.0/test.py
vendored
|
@ -1,7 +0,0 @@
|
|||
working = True
|
||||
|
||||
match working:
|
||||
case True:
|
||||
print("OK")
|
||||
case False:
|
||||
print()
|
31
runtimes/crystal.nix
Normal file
31
runtimes/crystal.nix
Normal file
|
@ -0,0 +1,31 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.crystal;
|
||||
in piston.mkRuntime {
|
||||
language = "crystal";
|
||||
version = pkg.version;
|
||||
|
||||
aliases = [
|
||||
"cr"
|
||||
];
|
||||
|
||||
compile = ''
|
||||
${pkg}/bin/crystal build "$@" -o out --no-color
|
||||
chmod +x out
|
||||
'';
|
||||
|
||||
run = ''
|
||||
shift
|
||||
./out "$@"
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.cr" = ''
|
||||
puts("OK")
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
25
runtimes/dart.nix
Normal file
25
runtimes/dart.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.dart;
|
||||
in piston.mkRuntime {
|
||||
language = "dart";
|
||||
version = pkg.version;
|
||||
|
||||
aliases = [];
|
||||
|
||||
run = ''
|
||||
${pkg}/bin/dart run "$@"
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.dart" = ''
|
||||
void main() {
|
||||
print('OK');
|
||||
}
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
22
runtimes/dash.nix
Normal file
22
runtimes/dash.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.dash;
|
||||
in piston.mkRuntime {
|
||||
language = "dash";
|
||||
version = pkg.version;
|
||||
|
||||
aliases = [];
|
||||
|
||||
run = ''
|
||||
${pkg}/bin/dash "$@"
|
||||
'';
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.dash" = ''
|
||||
echo "OK"
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
|
@ -5,4 +5,12 @@ args: {
|
|||
"bash" = import ./bash.nix args;
|
||||
"clojure" = import ./clojure.nix args;
|
||||
"cobol-gnu-cobol" = import ./cobol-gnu-cobol.nix args;
|
||||
"crystal" = import ./crystal.nix args;
|
||||
"dart" = import ./dart.nix args;
|
||||
"dash" = import ./dash.nix args;
|
||||
"deno-javascript" = import ./deno-javascript.nix args;
|
||||
"deno-typescript" = import ./deno-typescript.nix args;
|
||||
"elixir" = import ./elixir.nix args;
|
||||
"erlang" = import ./erlang.nix args;
|
||||
"gawk-awk" = import ./gawk-awk.nix args;
|
||||
}
|
||||
|
|
27
runtimes/deno-javascript.nix
Normal file
27
runtimes/deno-javascript.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.deno;
|
||||
in piston.mkRuntime {
|
||||
language = "javascript";
|
||||
version = pkg.version;
|
||||
runtime = "deno";
|
||||
|
||||
aliases = [
|
||||
"js"
|
||||
"deno-js"
|
||||
];
|
||||
|
||||
run = ''
|
||||
DENO_DIR=$PWD ${pkg}/bin/deno run $@
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.js" = ''
|
||||
console.log("OK");
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
27
runtimes/deno-typescript.nix
Normal file
27
runtimes/deno-typescript.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.deno;
|
||||
in piston.mkRuntime {
|
||||
language = "typescript";
|
||||
version = pkg.version;
|
||||
runtime = "deno";
|
||||
|
||||
aliases = [
|
||||
"ts"
|
||||
"deno-ts"
|
||||
];
|
||||
|
||||
run = ''
|
||||
DENO_DIR=$PWD ${pkg}/bin/deno run $@
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.ts" = ''
|
||||
console.log("OK");
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
30
runtimes/elixir.nix
Normal file
30
runtimes/elixir.nix
Normal file
|
@ -0,0 +1,30 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.elixir;
|
||||
in piston.mkRuntime {
|
||||
language = "elixir";
|
||||
version = pkg.version;
|
||||
|
||||
aliases = [
|
||||
"exs"
|
||||
];
|
||||
|
||||
run = ''
|
||||
export LC_ALL=en_US.UTF-8
|
||||
${pkg}/bin/elixir "$@"
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.exs" = ''
|
||||
IO.puts("OK")
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
|
||||
limitOverrides = {
|
||||
"max_file_size" = 100000000; # 100MB
|
||||
};
|
||||
}
|
28
runtimes/erlang.nix
Normal file
28
runtimes/erlang.nix
Normal file
|
@ -0,0 +1,28 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.erlang;
|
||||
in piston.mkRuntime {
|
||||
language = "erlang";
|
||||
version = pkg.version;
|
||||
|
||||
aliases = [
|
||||
"erl"
|
||||
"escript"
|
||||
];
|
||||
|
||||
run = ''
|
||||
${pkg}/bin/escript "$@"
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.erl" = ''
|
||||
|
||||
main(_) ->
|
||||
io:format("OK~n").
|
||||
'';
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
26
runtimes/gawk-awk.nix
Normal file
26
runtimes/gawk-awk.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{pkgs, piston, ...}:
|
||||
let
|
||||
pkg = pkgs.gawk;
|
||||
in piston.mkRuntime {
|
||||
language = "awk";
|
||||
version = pkg.version;
|
||||
runtime = "gawk";
|
||||
|
||||
aliases = [];
|
||||
|
||||
|
||||
run = ''
|
||||
${pkg}/bin/gawk -f "$@"
|
||||
'';
|
||||
|
||||
tests = [
|
||||
(piston.mkTest {
|
||||
files = {
|
||||
"test.awk" = ''
|
||||
{print "OK"}
|
||||
'';
|
||||
};
|
||||
stdin = "\n"; # awk needs some line input
|
||||
})
|
||||
];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue