diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 7149ecb5d600..2ca08a3466e8 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1200,6 +1200,12 @@ githubId = 5525646; name = "Brice Waegeneire"; }; + bsima = { + email = "ben@bsima.me"; + github = "bsima"; + githubId = 200617; + name = "Ben Sima"; + }; bstrik = { email = "dutchman55@gmx.com"; github = "bstrik"; diff --git a/pkgs/development/interpreters/shen-sbcl/default.nix b/pkgs/development/interpreters/shen-sbcl/default.nix new file mode 100644 index 000000000000..6d10669d20d8 --- /dev/null +++ b/pkgs/development/interpreters/shen-sbcl/default.nix @@ -0,0 +1,32 @@ +{ stdenv +, fetchurl +, shen-sources +, sbcl +}: + +stdenv.mkDerivation rec { + name = "shen-sbcl-${version}"; + version = "3.0.3"; + src = fetchurl { + url = "https://github.com/Shen-Language/shen-cl/releases/download/v${version}/shen-cl-v${version}-sources.tar.gz"; + sha256 = "0mc10jlrxqi337m6ngwbr547zi4qgk69g1flz5dsddjy5x41j0yz"; + }; + buildInputs = [ + sbcl shen-sources + ]; + buildPhase = '' + ln -s ${shen-sources} kernel + make sbcl + ''; + installPhase = '' + mkdir -p $out + install -m755 -D bin/sbcl/shen $out/bin/shen-sbcl + ''; + meta = with stdenv.lib; { + homepage = https://shenlanguage.org; + description = "Port of Shen running on Steel Bank Common Lisp"; + platforms = sbcl.meta.platforms; + maintainers = with maintainers; [ bsima ]; + license = licenses.bsd3; + }; +} diff --git a/pkgs/development/interpreters/shen-sources/default.nix b/pkgs/development/interpreters/shen-sources/default.nix new file mode 100644 index 000000000000..f35631daa282 --- /dev/null +++ b/pkgs/development/interpreters/shen-sources/default.nix @@ -0,0 +1,28 @@ +{ stdenv +, fetchurl +}: + +stdenv.mkDerivation rec { + name = "shen-sources-${version}"; + version = "22.3"; + + src = fetchurl { + url = "https://github.com/Shen-Language/shen-sources/releases/download/shen-${version}/ShenOSKernel-${version}.tar.gz"; + sha256 = "16jaliga3bia0f8c8ja1y22wanbnbriv31qfqdc87a4p4dx9c77q"; + }; + + buildInputs = []; + buildPhase = ""; + installPhase = '' + mkdir -p $out + cp . $out -R + ''; + + meta = with stdenv.lib; { + homepage = https://shenlanguage.org; + description = "Source code for the Shen Language"; + platforms = platforms.all; + maintainers = with maintainers; [ bsima ]; + license = licenses.bsd3; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 77b25f0ea598..da2c58d2fbca 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6891,6 +6891,10 @@ in schema2ldif = callPackage ../tools/text/schema2ldif { }; + shen-sbcl = callPackage ../development/interpreters/shen-sbcl { }; + + shen-sources = callPackage ../development/interpreters/shen-sources { }; + shocco = callPackage ../tools/text/shocco { }; shopify-themekit = callPackage ../development/web/shopify-themekit { };