diff --git a/runtimes/default.nix b/runtimes/default.nix index e1a1f9a..8730bff 100644 --- a/runtimes/default.nix +++ b/runtimes/default.nix @@ -17,4 +17,5 @@ args: { "ruby" = import ./ruby.nix args; "zig" = import ./zig.nix args; "vlang" = import ./vlang.nix args; + "swift" = import ./swift.nix args; } diff --git a/runtimes/ruby.nix b/runtimes/ruby.nix index 6673222..c2399e9 100644 --- a/runtimes/ruby.nix +++ b/runtimes/ruby.nix @@ -1,6 +1,6 @@ {pkgs, piston, ...}: let - pkg = pkgs.ruby_3_1; # ruby 3.1 stable from unstable channel + pkg = pkgs.ruby_3_1; in piston.mkRuntime { language = "ruby"; version = pkg.version; diff --git a/runtimes/swift.nix b/runtimes/swift.nix new file mode 100644 index 0000000..65c6a45 --- /dev/null +++ b/runtimes/swift.nix @@ -0,0 +1,27 @@ +{pkgs, piston, ...}: +let + pkg = pkgs.swift; +in piston.mkRuntime { + language = "swift"; + version = "5.4.2"; + aliases = []; + + run = '' + ls ${pkg} + ${pkg}/bin/swift -module-cache-path . "$@" + ''; + + tests = [ + (piston.mkTest { + files = { + "test.swift" = '' + print("OK"); + ''; + }; + args = []; + stdin = ""; + packages = []; + main = "test.swift"; + }) + ]; +} \ No newline at end of file