I am trying to package the lua library lain which is not luarocks but provides a rockspec in the github repo.
I use luarock-nix and modified the generated code until it looks like this:
{ fetchFromGitHub , lua }:
lua.pkgs.buildLuarocksPackage {
pname = "lain";
version = "scm-1";
src = fetchFromGitHub {
owner = "lcpz";
repo = "lain";
rev = "0df20e38bbd047c1afea46ab25e8ecf758bb5d45";
sha256 = "sha256-SjlUbiWdLQrxhNIB7p9JvQGwxwcu/4f9LtwjW+LNu78=";
};
disabled = lua.pkgs.luaOlder "5.3";
propagatedBuildInputs = [
lua
lua.pkgs.dkjson
];
meta = {
homepage = "https://github.com/lcpz/lain";
description = "Layout, widgets and utilities for Awesome WM";
license.fullName = "GPL-2.0";
};
}
But this fails with following log (I build from my local flake):
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking sources
unpacking source archive /nix/store/1hkhykvlvqi5m1h2wnic59wkcdk4zfn9-source
source root is source
@nix { "action": "setPhase", "phase": "patchPhase" }
patching sources
@nix { "action": "setPhase", "phase": "configurePhase" }
configuring
@nix { "action": "setPhase", "phase": "buildPhase" }
building
@nix { "action": "setPhase", "phase": "installPhase" }
installing
Missing dependencies for lain scm-1:
dkjson >= 2.6-1 (not installed)
lain scm-1 depends on dkjson >= 2.6-1 (not installed)
Warning: Failed searching manifest: Failed fetching manifest for https://luarocks.org - Failed downloading https://luarocks.org/manifest-5.3 - https___luarocks.org/manifest-5.3
Warning: Failed searching manifest: Failed fetching manifest for https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/ - Failed downloading https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/manifest-5.3 - https___raw.githubusercontent.com_rocks-moonscript-org_moonrocks-mirror_master_/manifest-5.3
Warning: Failed searching manifest: Failed fetching manifest for http://luafr.org/moonrocks/ - Failed downloading http://luafr.org/moonrocks/manifest-5.3 - http___luafr.org_moonrocks_/manifest-5.3
Warning: Failed searching manifest: Failed fetching manifest for http://luarocks.logiceditor.com/rocks - Failed downloading http://luarocks.logiceditor.com/rocks/manifest-5.3 - http___luarocks.logiceditor.com_rocks/manifest-5.3
dkjson not found for Lua 5.3.
Checking if available for other Lua versions...
Checking for Lua 5.1...
Checking for Lua 5.2...
Checking for Lua 5.4...
Error: Could not satisfy dependency dkjson >= 2.6-1: No results matching query were found for Lua 5.3.
For the record I use nix build
and the lain.nix file from above is included in my flake.nix file like this:
packages.x86_64-linux.lain = pkgs.callPackage packages/lain.nix { lua = pkgs.lua5_3; };
I had a look at how dkjson is used in pkgs/development/lua-modules/generated-packages.nix in nixpkgs and was hoping that my code above would work but I have no idea what luarock or buildLuarocksPackage want from me at this point.
Any hints or ideas?