commit
ba70a79f3c
13 changed files with 121 additions and 28 deletions
|
@ -35,6 +35,7 @@ gccStdenv.mkDerivation rec {
|
|||
#runtimeDeps = [ gnused gnugrep ];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-targets=${gambit-params.targets}"
|
||||
"--enable-single-host"
|
||||
"--enable-c-opt=${optimizationSetting}"
|
||||
"--enable-gcc-opts"
|
||||
|
@ -94,6 +95,7 @@ gccStdenv.mkDerivation rec {
|
|||
|
||||
# Now use the bootstrap compiler to build the real thing!
|
||||
make -j$NIX_BUILD_CORES from-scratch
|
||||
${lib.optionalString gambit-params.modules "make -j$NIX_BUILD_CORES modules"}
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
|
|
|
@ -2,12 +2,16 @@
|
|||
|
||||
rec {
|
||||
stable-params = {
|
||||
stable = true;
|
||||
defaultRuntimeOptions = "f8,-8,t8";
|
||||
buildRuntimeOptions = "f8,-8,t8";
|
||||
fix-stamp = git-version : "";
|
||||
targets = "java,js,php,python,ruby";
|
||||
modules = false;
|
||||
};
|
||||
|
||||
unstable-params = {
|
||||
stable = false;
|
||||
defaultRuntimeOptions = "iL,fL,-L,tL";
|
||||
buildRuntimeOptions = "i8,f8,-8,t8";
|
||||
fix-stamp = git-version : ''
|
||||
|
@ -15,6 +19,8 @@ rec {
|
|||
--replace "$(grep '^PACKAGE_VERSION=.*$' configure)" 'PACKAGE_VERSION="v${git-version}"' \
|
||||
--replace "$(grep '^PACKAGE_STRING=.*$' configure)" 'PACKAGE_STRING="Gambit v${git-version}"' ;
|
||||
'';
|
||||
targets = "arm,java,js,php,python,riscv-32,riscv-64,ruby,x86,x86-64"; # eats 100% cpu on _digest
|
||||
modules = false;
|
||||
};
|
||||
|
||||
export-gambopt = params : "export GAMBOPT=${params.buildRuntimeOptions} ;";
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
{ callPackage, fetchFromGitHub, gambit-support }:
|
||||
|
||||
callPackage ./build.nix {
|
||||
version = "unstable-2020-07-29";
|
||||
git-version = "4.9.3-1232-gbba388b8";
|
||||
version = "unstable-2020-09-20";
|
||||
git-version = "4.9.3-1234-g6acd87df";
|
||||
src = fetchFromGitHub {
|
||||
owner = "feeley";
|
||||
repo = "gambit";
|
||||
rev = "bba388b80ca62a77883a8936d64b03316808696a";
|
||||
sha256 = "0iqlp1mvxz8g32kqrqm0phnnp1i5c4jrapqh2wqwa8fh1vgnizg1";
|
||||
rev = "6acd87dfa95bfca33082a431e72f023345dc07ee";
|
||||
sha256 = "0a3dy4ij8hzlp3sjam4b6dp6yvyz5d7g2x784qm3gp89fi2ck56r";
|
||||
};
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "gerbil-ethereum";
|
||||
version = "unstable-2020-08-02";
|
||||
git-version = "0.0-15-g7cd2dd7";
|
||||
version = "unstable-2020-10-18";
|
||||
git-version = "0.0-26-gf27ada8";
|
||||
gerbil-package = "mukn/ethereum";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = with gerbil-support.gerbilPackages-unstable;
|
||||
|
@ -15,8 +15,8 @@ gerbil-support.gerbilPackage {
|
|||
src = fetchFromGitHub {
|
||||
owner = "fare";
|
||||
repo = "gerbil-ethereum";
|
||||
rev = "7cd2dd7436b11917d0729dbafe087cfa8ec38f86";
|
||||
sha256 = "0qq3ch2dg735yrj3l2c9pb9qlvz98x3vjfi2xyr4fwr78smpqgb5";
|
||||
rev = "f27ada8e7f4de4f8fbdfede9fe055914b254d8e7";
|
||||
sha256 = "1lykjqim6a44whj1r8kkpiz68wghkfqx5vjlrc2ldxlmgd4r9gvd";
|
||||
};
|
||||
meta = {
|
||||
description = "Gerbil Ethereum: a Scheme alternative to web3.js";
|
||||
|
|
27
pkgs/development/compilers/gerbil/gerbil-libp2p.nix
Normal file
27
pkgs/development/compilers/gerbil/gerbil-libp2p.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "gerbil-libp2p";
|
||||
version = "unstable-2018-12-27";
|
||||
git-version = "2376b3f";
|
||||
gerbil-package = "vyzo";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = [];
|
||||
buildInputs = []; # Note: at *runtime*, depends on go-libp2p-daemon
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = "version";
|
||||
softwareName = "Gerbil-libp2p";
|
||||
src = fetchFromGitHub {
|
||||
owner = "vyzo";
|
||||
repo = "gerbil-libp2p";
|
||||
rev = "2376b3f39cee04dd4ec455c8ea4e5faa93c2bf88";
|
||||
sha256 = "0jcy7hfg953078msigyfwp2g4ii44pi6q7vcpmq01cbbvxpxz6zw";
|
||||
};
|
||||
meta = {
|
||||
description = "Gerbil libp2p: use libp2p from Gerbil";
|
||||
homepage = "https://github.com/vyzo/gerbil-libp2p";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
};
|
||||
}
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "gerbil-persist";
|
||||
version = "unstable-2020-08-02";
|
||||
git-version = "0.0-4-ga3b2bd1";
|
||||
version = "unstable-2020-08-31";
|
||||
git-version = "0.0-8-gd211390";
|
||||
gerbil-package = "clan/persist";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = with gerbil-support.gerbilPackages-unstable; [gerbil-utils gerbil-crypto gerbil-poo];
|
||||
|
@ -14,8 +14,8 @@ gerbil-support.gerbilPackage {
|
|||
src = fetchFromGitHub {
|
||||
owner = "fare";
|
||||
repo = "gerbil-persist";
|
||||
rev = "a3b2bd104612db0e4492737f09f72adea6684483";
|
||||
sha256 = "0mc01wva26ww1i7n8naa95mfw7i6lj8qg0bwsik7gb3dsj2acjvh";
|
||||
rev = "d211390c8a199cf2b8c7400cd98977524e960015";
|
||||
sha256 = "13s6ws8ziwalfp23nalss41qnz667z2712lr3y123sypm5n5axk7";
|
||||
};
|
||||
meta = {
|
||||
description = "Gerbil Persist: Persistent data and activities";
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "gerbil-ethereum";
|
||||
version = "unstable-2020-08-02";
|
||||
git-version = "0.0-13-g1014154";
|
||||
version = "unstable-2020-10-17";
|
||||
git-version = "0.0-35-g44d490d";
|
||||
gerbil-package = "clan/poo";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = with gerbil-support.gerbilPackages-unstable; [gerbil-utils gerbil-crypto];
|
||||
|
@ -14,8 +14,8 @@ gerbil-support.gerbilPackage {
|
|||
src = fetchFromGitHub {
|
||||
owner = "fare";
|
||||
repo = "gerbil-poo";
|
||||
rev = "1014154fe4943dfbec7524666c831b601ba88559";
|
||||
sha256 = "0g8l5mi007n07qs79m9h3h3am1p7h0kzq7yb49h562b8frh5gp97";
|
||||
rev = "44d490d95b9d1b5d54eaedf2602419af8e086837";
|
||||
sha256 = "082ndpy281saybcnp3bdidcibkk2ih6glrkbb5fdj1524ban4d0k";
|
||||
};
|
||||
meta = {
|
||||
description = "Gerbil POO: Prototype Object Orientation for Gerbil Scheme";
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
{ pkgs, gccStdenv, callPackage, fetchFromGitHub }:
|
||||
{ pkgs, lib, gccStdenv, callPackage, fetchFromGitHub }:
|
||||
# See ../gambit/build.nix regarding gccStdenv
|
||||
|
||||
rec {
|
||||
# Gerbil libraries
|
||||
gerbilPackages-unstable = {
|
||||
gerbil-libp2p = callPackage ./gerbil-libp2p.nix { };
|
||||
gerbil-utils = callPackage ./gerbil-utils.nix { };
|
||||
gerbil-crypto = callPackage ./gerbil-crypto.nix { };
|
||||
gerbil-poo = callPackage ./gerbil-poo.nix { };
|
||||
gerbil-persist = callPackage ./gerbil-persist.nix { };
|
||||
gerbil-ethereum = callPackage ./gerbil-ethereum.nix { };
|
||||
smug-gerbil = callPackage ./smug-gerbil.nix { };
|
||||
};
|
||||
|
||||
# Use this function in any package that uses Gerbil libraries, to define the GERBIL_LOADPATH.
|
||||
|
@ -23,6 +25,7 @@ rec {
|
|||
gambit-params ? pkgs.gambit-support.stable-params,
|
||||
gerbilInputs ? [],
|
||||
buildInputs ? [],
|
||||
buildScript ? "./build.ss",
|
||||
softwareName ? ""} :
|
||||
let buildInputs_ = buildInputs; in
|
||||
gccStdenv.mkDerivation rec {
|
||||
|
@ -33,8 +36,8 @@ rec {
|
|||
set -e ;
|
||||
if [ -n "${version-path}.ss" ] ; then
|
||||
echo -e '(import :clan/versioning${builtins.concatStringsSep ""
|
||||
(map (x : if x.passthru.version-path != ""
|
||||
then " :${x.passthru.gerbil-package}/${x.passthru.version-path}" else "")
|
||||
(map (x : lib.optionalString (x.passthru.version-path != "")
|
||||
" :${x.passthru.gerbil-package}/${x.passthru.version-path}")
|
||||
gerbilInputs)
|
||||
})\n(register-software "${softwareName}" "v${git-version}")\n' > "${passthru.version-path}.ss"
|
||||
fi
|
||||
|
@ -50,7 +53,7 @@ rec {
|
|||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
./build.ss
|
||||
${buildScript}
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "gerbil-utils";
|
||||
version = "unstable-2020-08-02";
|
||||
git-version = "0.2-21-g7e7d053";
|
||||
version = "unstable-2020-10-18";
|
||||
git-version = "0.2-36-g8b481b7";
|
||||
gerbil-package = "clan";
|
||||
gerbil = gerbil-unstable;
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
|
@ -12,8 +12,8 @@ gerbil-support.gerbilPackage {
|
|||
src = fetchFromGitHub {
|
||||
owner = "fare";
|
||||
repo = "gerbil-utils";
|
||||
rev = "7e7d053ec5e78cc58d38cb03baf554d83b31b0c6";
|
||||
sha256 = "078vqdcddfavqq0d9pw430iz1562cgx1ck3fw6dpwxjkyc6m4bms";
|
||||
rev = "8b481b787e13e07e14d0718d670aab016131a090";
|
||||
sha256 = "0br8k5b2wcv4wcp65r2bfhji3af2qgqjspf41syqslq9awx47f3m";
|
||||
};
|
||||
meta = {
|
||||
description = "Gerbil Clan: Community curated Collection of Common Utilities";
|
||||
|
|
30
pkgs/development/compilers/gerbil/smug-gerbil.nix
Normal file
30
pkgs/development/compilers/gerbil/smug-gerbil.nix
Normal file
|
@ -0,0 +1,30 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "smug-gerbil";
|
||||
version = "unstable-2019-12-24";
|
||||
git-version = "95d60d4";
|
||||
gerbil-package = "drewc/smug";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = [];
|
||||
buildInputs = [];
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = ""; #"version";
|
||||
softwareName = "Smug-Gerbil";
|
||||
src = fetchFromGitHub {
|
||||
owner = "drewc";
|
||||
repo = "smug-gerbil";
|
||||
rev = "95d60d486c1603743c6d3c525e6d5f5761b984e5";
|
||||
sha256 = "0ys07z78gq60z833si2j7xa1scqvbljlx1zb32vdf32f1b27c04j";
|
||||
};
|
||||
meta = {
|
||||
description = "Super Monadic Über Go-into : Parsers and Gerbil Scheme";
|
||||
homepage = "https://github.com/drewc/smug-gerbil";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
};
|
||||
buildScript = ''
|
||||
for i in primitive simple tokens smug ; do gxc -O $i.ss ; done
|
||||
'';
|
||||
}
|
|
@ -1,13 +1,13 @@
|
|||
{ callPackage, fetchFromGitHub, gambit-unstable, gambit-support }:
|
||||
|
||||
callPackage ./build.nix rec {
|
||||
version = "unstable-2020-08-02";
|
||||
git-version = "0.16-120-g3f248e13";
|
||||
version = "unstable-2020-11-05";
|
||||
git-version = "0.16-152-g808929ae";
|
||||
src = fetchFromGitHub {
|
||||
owner = "vyzo";
|
||||
repo = "gerbil";
|
||||
rev = "3f248e139dfa11be74284fc812253fbecafbaf31";
|
||||
sha256 = "18v192cypj0nbmfcyflm8qnwp27qwy65m0a19ggs47wwbzhgvgqh";
|
||||
rev = "808929aeb8823959191f35df53bc0c0150911b4b";
|
||||
sha256 = "0d9k2gkrs9qvlnk7xa3gjzs3gln3ydds7yd2313pvbw4q2lcz8iw";
|
||||
};
|
||||
inherit gambit-support;
|
||||
gambit = gambit-unstable;
|
||||
|
|
23
pkgs/servers/go-libp2p-daemon/default.nix
Normal file
23
pkgs/servers/go-libp2p-daemon/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule {
|
||||
pname = "go-libp2p-daemon";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libp2p";
|
||||
repo = "go-libp2p-daemon";
|
||||
rev = "bfa207ed34c27947f0828a4ae8d10bda62aa49a9";
|
||||
sha256 = "1f3gjkmpqngajjpijpjdmkmsjfm9bdgakb5r28fnc6w9dmfyj51x";
|
||||
};
|
||||
|
||||
vendorSha256 = "0g25r7wd1hvnwxxq18mpx1r1wig6dnlnvzkpvgw79q6nymxlppmv";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/libp2p/go-libp2p-daemon";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
|
@ -20750,6 +20750,8 @@ in
|
|||
|
||||
exercism = callPackage ../applications/misc/exercism { };
|
||||
|
||||
go-libp2p-daemon = callPackage ../servers/go-libp2p-daemon { };
|
||||
|
||||
go-motion = callPackage ../development/tools/go-motion { };
|
||||
|
||||
gpg-mdp = callPackage ../applications/misc/gpg-mdp { };
|
||||
|
|
Loading…
Reference in a new issue