Merge branch 'master' of github.com:Limvot/kraken

This commit is contained in:
2023-01-16 18:55:54 -05:00
2 changed files with 88 additions and 68 deletions

20
flake.lock generated
View File

@@ -65,7 +65,22 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs_stable_new": {
"locked": {
"lastModified": 1673800717,
"narHash": "sha256-SFHraUqLSu5cC6IxTprex/nTsI81ZQAtDvlBvGDWfnA=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2f9fd351ec37f5d479556cd48be4ca340da59b8f",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-22.11",
"type": "indirect"
}
},
"nixpkgs_stable_old": {
"locked": { "locked": {
"lastModified": 1659446231, "lastModified": 1659446231,
"narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=", "narHash": "sha256-hekabNdTdgR/iLsgce5TGWmfIDZ86qjPhxDg/8TlzhE=",
@@ -84,7 +99,8 @@
"inputs": { "inputs": {
"flake-utils": "flake-utils", "flake-utils": "flake-utils",
"moz_overlay": "moz_overlay", "moz_overlay": "moz_overlay",
"nixpkgs": "nixpkgs_2" "nixpkgs_stable_new": "nixpkgs_stable_new",
"nixpkgs_stable_old": "nixpkgs_stable_old"
} }
} }
}, },

128
flake.nix
View File

@@ -2,86 +2,90 @@
description = "Env for Kraken and the extacted Koka bencmarks"; description = "Env for Kraken and the extacted Koka bencmarks";
inputs = { inputs = {
# For some reason the newer one has broken koka/emscripten (probs same change) # For some reason the newer one has broken koka/emscripten (probs same change)
#nixpkgs.url = "nixpkgs/nixos-22.11"; nixpkgs_stable_new.url = "nixpkgs/nixos-22.11";
nixpkgs.url = "nixpkgs/nixos-21.11"; nixpkgs_stable_old.url = "nixpkgs/nixos-21.11";
#nixpkgs.url = "github:NixOS/nixpkgs"; #nixpkgs.url = "github:NixOS/nixpkgs";
moz_overlay.url = "github:oxalica/rust-overlay"; moz_overlay.url = "github:oxalica/rust-overlay";
flake-utils.url = "github:numtide/flake-utils"; flake-utils.url = "github:numtide/flake-utils";
}; };
outputs = { self, nixpkgs, moz_overlay, flake-utils }: outputs = { self, nixpkgs_stable_new, nixpkgs_stable_old, moz_overlay, flake-utils }:
(flake-utils.lib.eachDefaultSystem (system: (flake-utils.lib.eachDefaultSystem (system:
let let
pkgs = import nixpkgs { pkgs_new = import nixpkgs_stable_new {
inherit system; inherit system;
overlays = [ moz_overlay.overlay ]; overlays = [ moz_overlay.overlay ];
}; };
newlisp = pkgs.stdenv.mkDerivation rec { pkgs_old = import nixpkgs_stable_old {
pname = "newLisp"; inherit system;
version = "10.7.5"; overlays = [ moz_overlay.overlay ];
src = pkgs.fetchurl {
url = "http://www.newlisp.org/downloads/newlisp-10.7.5.tgz";
sha256 = "sha256-3C0P9lHCsnW8SvOvi6WYUab7bh6t3CCudftgsekBJuw=";
}; };
#newlisp = pkgs.stdenv.mkDerivation rec {
#pname = "newLisp";
#version = "10.7.5";
nativeBuildInputs = [ #src = pkgs.fetchurl {
pkgs.autoPatchelfHook #url = "http://www.newlisp.org/downloads/newlisp-10.7.5.tgz";
]; #sha256 = "sha256-3C0P9lHCsnW8SvOvi6WYUab7bh6t3CCudftgsekBJuw=";
#};
buildInputs = [ #nativeBuildInputs = [
pkgs.stdenv.cc.cc.lib #pkgs.autoPatchelfHook
pkgs.libffi #];
pkgs.readline
];
installPhase = '' #buildInputs = [
mkdir -p $out/bin #pkgs.stdenv.cc.cc.lib
cp newlisp $out/bin #pkgs.libffi
''; #pkgs.readline
#];
meta = with pkgs.lib; { #installPhase = ''
homepage = "http://www.newlisp.org/index.cgi"; #mkdir -p $out/bin
description = "A Lisp-like, general-purpose scripting language"; #cp newlisp $out/bin
platforms = platforms.linux; #'';
};
};
wavm = pkgs.stdenv.mkDerivation rec {
pname = "wavm";
version = "0.0.0";
src = pkgs.fetchurl { #meta = with pkgs.lib; {
url = "https://github.com/WAVM/WAVM/releases/download/nightly%2F2022-05-14/wavm-0.0.0-prerelease-linux.tar.gz"; #homepage = "http://www.newlisp.org/index.cgi";
sha256 = "sha256-+PpnwPJDty6XCjjuHVFwiHc1q+k0zPF11EbRpqSKfyY="; #description = "A Lisp-like, general-purpose scripting language";
}; #platforms = platforms.linux;
#};
#};
#wavm = pkgs.stdenv.mkDerivation rec {
#pname = "wavm";
#version = "0.0.0";
nativeBuildInputs = [ #src = pkgs.fetchurl {
pkgs.autoPatchelfHook #url = "https://github.com/WAVM/WAVM/releases/download/nightly%2F2022-05-14/wavm-0.0.0-prerelease-linux.tar.gz";
]; #sha256 = "sha256-+PpnwPJDty6XCjjuHVFwiHc1q+k0zPF11EbRpqSKfyY=";
#};
buildInputs = [ #nativeBuildInputs = [
pkgs.stdenv.cc.cc.lib #pkgs.autoPatchelfHook
]; #];
sourceRoot = "."; #buildInputs = [
#pkgs.stdenv.cc.cc.lib
#];
installPhase = '' #sourceRoot = ".";
mkdir -p $out/bin
cp -r bin/wavm $out/bin/
cp -r include/ $out
cp -r lib64/ $out
cp -r share/ $out
#install -m755 -D studio-link-standalone-v${version} $out/bin/studio-link
'';
meta = with pkgs.lib; { #installPhase = ''
homepage = "https://wavm.github.io/"; #mkdir -p $out/bin
description = "WAVM WebAssembly Engine"; #cp -r bin/wavm $out/bin/
platforms = platforms.linux; #cp -r include/ $out
}; #cp -r lib64/ $out
}; #cp -r share/ $out
##install -m755 -D studio-link-standalone-v${version} $out/bin/studio-link
#'';
#meta = with pkgs.lib; {
#homepage = "https://wavm.github.io/";
#description = "WAVM WebAssembly Engine";
#platforms = platforms.linux;
#};
#};
in { in {
devShell = pkgs.mkShell { devShell = pkgs_old.mkShell {
buildInputs = with pkgs; [ buildInputs = with pkgs_old; [
which # used for shell stuff when inside pure env which # used for shell stuff when inside pure env
hyperfine hyperfine
@@ -97,10 +101,10 @@
(rust-bin.stable.latest.default.override { targets = [ "wasm32-wasi" ]; }) (rust-bin.stable.latest.default.override { targets = [ "wasm32-wasi" ]; })
#stack (haskellPackages.ghcWithPackages (p: [p.parallel])) #stack (haskellPackages.ghcWithPackages (p: [p.parallel]))
koka koka
emscripten pkgs_old.emscripten
picolisp #picolisp
newlisp #newlisp
]; ];
}; };
} }