Merge pull request #330420 from AlexSKaye/update-juniper
Update juniper
This commit is contained in:
@@ -963,6 +963,12 @@
|
||||
matrix = "@alexshpilkin:matrix.org";
|
||||
name = "Alexander Shpilkin";
|
||||
};
|
||||
AlexSKaye = {
|
||||
email = "AlexSKaye@proton.me";
|
||||
github = "AlexSKaye";
|
||||
githubId = 3017212;
|
||||
name = "Alex S. Kaye";
|
||||
};
|
||||
alexvorobiev = {
|
||||
email = "alexander.vorobiev@gmail.com";
|
||||
github = "alexvorobiev";
|
||||
|
||||
@@ -1,42 +1,40 @@
|
||||
{ lib, stdenv, fetchzip, makeWrapper, mono }:
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
buildDotnetModule,
|
||||
dotnetCorePackages,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
buildDotnetModule rec {
|
||||
pname = "juniper";
|
||||
version = "2.3.0";
|
||||
version = "4.0.0";
|
||||
|
||||
src = fetchzip {
|
||||
url = "http://www.juniper-lang.org/installers/Juniper-${version}.zip";
|
||||
sha256 = "10am6fribyl7742yk6ag0da4rld924jphxja30gynzqysly8j0vg";
|
||||
stripRoot = false;
|
||||
src = fetchFromGitHub {
|
||||
owner = "calebh";
|
||||
repo = "Juniper";
|
||||
rev = "286050d6be5606db0973feda556d8fbc48b4566c";
|
||||
hash = "sha256-b+aDDz46Hxgt+Oh2fNMiXFfXhuy16mzauousQGq9+dg=";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
projectFile = "Juniper/Juniper.fsproj";
|
||||
nugetDeps = ./deps.nix;
|
||||
dotnet-sdk = dotnetCorePackages.sdk_8_0;
|
||||
dotnet-runtime = dotnetCorePackages.runtime_8_0;
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = [ mono ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
rm juniper # original script with regular Linux assumptions
|
||||
mkdir -p $out/bin
|
||||
cp -r ./* $out
|
||||
makeWrapper ${mono}/bin/mono $out/bin/juniper \
|
||||
--add-flags "$out/Juniper.exe \$@"
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Functional reactive programming language for programming Arduino";
|
||||
mainProgram = "juniper";
|
||||
longDescription = ''
|
||||
Juniper targets Arduino and supports many features typical of functional programming languages, including algebraic data types, tuples, records,
|
||||
pattern matching, immutable data structures, parametric polymorphic functions, and anonymous functions (lambdas).
|
||||
Some imperative programming concepts are also present in Juniper, such as for, while and do while loops, the ability to mark variables as mutable, and mutable references.
|
||||
The purpose of Juniper is to provide a functional reactive programming
|
||||
platform for designing Arduino projects. FRP's high-level approach to
|
||||
timing-based events fits naturally with Arduino, with which programming
|
||||
almost entirely revolves around reacting to realtime events. Juniper
|
||||
transpiles to Arduino C++, which is then compiled to an Arduino
|
||||
executable.
|
||||
'';
|
||||
homepage = "https://www.juniper-lang.org/";
|
||||
license = licenses.mit;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ AlexSKaye ];
|
||||
mainProgram = "Juniper";
|
||||
inherit (dotnet-sdk.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
+203
@@ -0,0 +1,203 @@
|
||||
{ fetchNuGet }:
|
||||
[
|
||||
(fetchNuGet {
|
||||
pname = "FParsec";
|
||||
version = "1.1.1";
|
||||
sha256 = "01s3zrxl9kfx0264wy0m555pfx0s0z165n4fvpgx63jlqwbd8m04";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "Microsoft.AspNetCore.App.Runtime.linux-x64";
|
||||
version = "8.0.5";
|
||||
sha256 = "1m9gp68z0wyv0xxr4aqc1c2v6v8grml3jxkiqabddn46d6gsisqh";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "Microsoft.NETCore.App.Runtime.linux-x64";
|
||||
version = "8.0.5";
|
||||
sha256 = "15vadqfi0w7sdq0rh35rb9ph4h4qbal2i5m5ifabbfwjp7348z9c";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "Microsoft.NETCore.Platforms";
|
||||
version = "1.1.0";
|
||||
sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "Microsoft.NETCore.Targets";
|
||||
version = "1.1.0";
|
||||
sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "QuikGraph";
|
||||
version = "2.5.0";
|
||||
sha256 = "0xjg7pxmmz5a1mmsxlpgbl6la4wrrjmpdijhjwqi42v88yqr4gd7";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Globalization";
|
||||
version = "4.3.0";
|
||||
sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.IO";
|
||||
version = "4.3.0";
|
||||
sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Reflection";
|
||||
version = "4.3.0";
|
||||
sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Reflection.Primitives";
|
||||
version = "4.3.0";
|
||||
sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Resources.ResourceManager";
|
||||
version = "4.3.0";
|
||||
sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Runtime";
|
||||
version = "4.3.0";
|
||||
sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Text.Encoding";
|
||||
version = "4.3.0";
|
||||
sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.any.System.Threading.Tasks";
|
||||
version = "4.3.0";
|
||||
sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.native.System";
|
||||
version = "4.3.0";
|
||||
sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl";
|
||||
version = "4.3.0";
|
||||
sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.unix.System.Private.Uri";
|
||||
version = "4.3.0";
|
||||
sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "runtime.unix.System.Runtime.Extensions";
|
||||
version = "4.3.0";
|
||||
sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "Symbolism";
|
||||
version = "1.0.4";
|
||||
sha256 = "0da9g424x043bbd4pbgj7rsnpyvlbfmvxkyny7b3xd9smjx3dpr5";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Globalization";
|
||||
version = "4.3.0";
|
||||
sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.IO";
|
||||
version = "4.3.0";
|
||||
sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Private.Uri";
|
||||
version = "4.3.0";
|
||||
sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Reflection";
|
||||
version = "4.3.0";
|
||||
sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Reflection.Primitives";
|
||||
version = "4.3.0";
|
||||
sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Resources.ResourceManager";
|
||||
version = "4.3.0";
|
||||
sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Runtime";
|
||||
version = "4.3.0";
|
||||
sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Runtime.Extensions";
|
||||
version = "4.3.0";
|
||||
sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Runtime.Numerics";
|
||||
version = "4.3.0";
|
||||
sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Text.Encoding";
|
||||
version = "4.3.0";
|
||||
sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr";
|
||||
})
|
||||
(fetchNuGet {
|
||||
pname = "System.Threading.Tasks";
|
||||
version = "4.3.0";
|
||||
sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7";
|
||||
})
|
||||
]
|
||||
Reference in New Issue
Block a user