59 lines
1.4 KiB
Nix
59 lines
1.4 KiB
Nix
{
|
|
description = "A very basic flake";
|
|
|
|
inputs = {
|
|
nixpkgs.url = github:NixOS/nixpkgs;
|
|
utils.url = github:numtide/flake-utils;
|
|
};
|
|
|
|
outputs = { self, nixpkgs, utils }: utils.lib.eachDefaultSystem(system:
|
|
let
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
lib = pkgs.lib;
|
|
# FIXME: Lua is borked at the moment :(
|
|
lua = pkgs.lua5_3.withPackages(ps: with ps; [
|
|
readline
|
|
cjson
|
|
http
|
|
luarocks
|
|
]);
|
|
fennel = pkgs.fennel.override { lua = lua; };
|
|
gambit = pkgs.callPackage "${nixpkgs.outPath}/pkgs/development/compilers/gambit/build.nix" rec {
|
|
version = "4.9.4";
|
|
git-version = version;
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "gambit";
|
|
repo = "gambit";
|
|
rev = "3bbd8a2959670c145f73cd25740d99a6834ac787";
|
|
sha256 = "111hhqkmn9knqbyfzxxg81sshyh3p6n7ywp32vrhx1ckqdk7rcjf";
|
|
};
|
|
};
|
|
in {
|
|
devShells.default = pkgs.mkShell rec {
|
|
buildInputs = [
|
|
lua
|
|
# fennel
|
|
pkgs.chicken
|
|
# pkgs.guile_3_0
|
|
# pkgs.gcc
|
|
# pkgs.gambit
|
|
];
|
|
LD_LIBRARY_PATH = "${lib.makeLibraryPath buildInputs}";
|
|
};
|
|
packages.default = pkgs.mkDerivation rec {
|
|
buildInputs = [
|
|
pkgs.chicken
|
|
# pkgs.guile_3_0
|
|
pkgs.gcc
|
|
pkgs.gambit
|
|
];
|
|
|
|
buildPhase = ''
|
|
chicken ./main.scm -explicit-use
|
|
gcc
|
|
'';
|
|
|
|
LD_LIBRARY_PATH = "${lib.makeLibraryPath buildInputs}";
|
|
};
|
|
});
|
|
}
|