biscuit

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

shell.nix (1883B)


      1 with import <nixpkgs> {};
      2 let
      3   package = pkgs.callPackage ./. {};
      4   fennel-ls1 =
      5     let inherit (pkgs) stdenv pandoc;
      6     in stdenv.mkDerivation {
      7       name = "fennel-ls";
      8       buildInputs = [ package.lua ];
      9       nativeBuildInputs = [ pandoc ];
     10       makeFlags = [ "PREFIX=\\$out" ];
     11       src = fetchFromSourcehut {
     12         owner ="~xerool";
     13         repo ="fennel-ls";
     14         rev = "552b03b983c18d7db5053350711bef9088cc9110";
     15         hash = "sha256-npR10hzPYgDPbKWB5ueq8cXAWYvUEbVVJ1R/EEdCnVY=";
     16       };
     17     };
     18   fennel-ls = pkgs.fennel-ls.override { inherit (package) lua luaPackages; };
     19   luaProfiler =
     20     let
     21       inherit (pkgs) stdenv cmake;
     22       inherit (package) lua;
     23     in stdenv.mkDerivation {
     24       name = "LuaProfiler";
     25       src = fetchFromGitHub {
     26         owner = "Patrick08T";
     27         repo = "LuaProfiler";
     28         rev = "abb989337f6f46b820c9d2eb1e1d339e8f6f3760";
     29         hash = "sha256-43kwZCZZmWD5ens1qCzD7LTg/jKMfcb9Vw/DBiN2sSo=";
     30       };
     31       buildInputs = [ lua ];
     32       postPatch = ''
     33         sed -i.bak -e 's/VERSION 2.8/VERSION 3.5/' CMakeLists.txt
     34       '';
     35       installPhase = ''
     36         mkdir -p "$out/lib/lua/${lua.luaversion}"
     37         echo cp /build/source/bin/release/libluaperf.so "$out/lib/lua/${lua.luaversion}"
     38         cp /build/source/bin/release/libluaperf.so "$out/lib/lua/${lua.luaversion}"
     39       '';
     40       nativeBuildInputs = [ cmake ];
     41     };
     42 in
     43 package.overrideAttrs(o: {
     44   nativeBuildInputs = [
     45     # fennel-ls luaProfiler flamegraph
     46     tmux
     47   ] ++ o.nativeBuildInputs;
     48   shellHook = ''
     49     mkdir -p bin
     50     ( cd bin && ln -sf `type -p fennel-ls` `type -p fennel` . )
     51     export LUA_CPATH=$(lua -e "print(package.cpath)")\;${luaProfiler}/lib/lua/${package.lua.luaversion}/\?.so
     52     export LUA_PATH=$(lua -e "print(package.path)")\;$RXI_JSON/share/lua/5.3/?.lua
     53     XDG_DATA_DIRS=$GSETTINGS_SCHEMAS_PATH:$XDG_DATA_DIRS
     54   '';
     55 })