diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 2d18d592e893..174c776b17a4 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -17,6 +17,7 @@ AndersonTorres = "Anderson Torres "; andres = "Andres Loeh "; antono = "Antono Vasiljev "; + ardumont = "Antoine R. Dumont "; aristid = "Aristid Breitkreuz "; arobyn = "Alexei Robyn "; asppsa = "Alastair Pharo "; diff --git a/pkgs/development/compilers/microscheme/default.nix b/pkgs/development/compilers/microscheme/default.nix new file mode 100644 index 000000000000..a9f2fba9409f --- /dev/null +++ b/pkgs/development/compilers/microscheme/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchgit, vim, avrdude, avrgcclibc, makeWrapper }: + +stdenv.mkDerivation rec { + name = "microscheme-${version}"; + version = "2015-02-04"; + + # externalize url/rev/sha256 to permit easier override + rev = "2f14781034a67adc081a22728fbf47a632f4484e"; + sha256 = "15bdlmchzbhxj262r2fj78wm4c4hfrap4kyzv8n5b624svszr0zd"; + url = https://github.com/ryansuchocki/microscheme.git; + + src = fetchgit { + inherit rev; + inherit sha256; + inherit url; + }; + + buildInputs = [ makeWrapper vim ]; + + installPhase = '' + mkdir -p $out/bin && make install PREFIX=$out + + mkdir -p $out/share/microscheme/ + cp -r examples/ $out/share/microscheme + + wrapProgram $out/bin/microscheme \ + --prefix PATH : "${avrdude}/bin:${avrgcclibc}/bin" + ''; + + meta = with stdenv.lib; { + homepage = http://microscheme.org; + description = "A Scheme subset for Atmel microcontrollers"; + longDescription = '' + Microscheme is a Scheme subset/variant designed for Atmel + microcontrollers, especially as found on Arduino boards. + ''; + license = licenses.mit; + platforms = platforms.linux; + maintainers = with maintainers; [ ardumont ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 629824b8205c..d4846cea0f67 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3720,6 +3720,8 @@ let mercury = callPackage ../development/compilers/mercury { }; + microscheme = callPackage ../development/compilers/microscheme { }; + mitscheme = callPackage ../development/compilers/mit-scheme { }; mlton = callPackage ../development/compilers/mlton { };