luaPackages replaced by generated ones:
- bit32
- compat53
- cqueues
- luacyrussasl -> cyrussasl (luarocks name)
- luaexpat
- luadbi -> luadbi front-end module + separate backend modules
luadbi-{mysql,postgresql,sqlite3}
- luafilesystem
- luaossl
- luasec
- luasocket
- luastdlib -> stdlib (luarocks name)
- lrexlib -> lrexlib-pcre (we already have lrexlib-gnu and
lrexlib-posix, lrexlib-pcre however appears to be the variant used in
mudlet, which is the only current dep in nixpkgs)
- luasqlite -> luasql-sqlite3 (luarocks name)
- lfs -> luafilesytem (we literally had two manually written
luafilesystem expressions, under different names)
Changes and additions to overrides to generated luarocks packgaes,
including:
- busted: Install bash completions along with the zsh ones
- cqueues:
- Perform minor surgery on the rockspec to allow using a single
rockspec to build for all supported Lua versions
- Add a patch by @vcunat to work around a build issue
- luuid: Wrote a tiny patch to allow for Lua 5.1/Luajit compatibility
- General changes:
- Sorted the packages
- Attempted to make the formatting consistent
- Preferenced `.override` instead of `.overrideAttrs` wherever
possible
Minor changes to other packages to adjust for the Lua package changes:
- luakit expression simplified
- prosody expression simplified; but users will now need to specify the
luadbi backend module they intend to use in withExtraLibs
- knot-resolver inputs correctd
- mudlet inputs corrected (although this package was and should still be
broken)
One bugfix patch is included - merged upstream but not released yet.
knot-resolver wrapper would need to add binaryheap explicitly,
so it's migrated to the automatic LUA path discovery instead.
Test case that should execute without an error:
echo "require('ssl.https')" | env NIX_PATH=nixpkgs=$(pwd) \
nix-shell --pure -p lua -p lua.pkgs.luasec --run lua
Test case that should execute without an error:
echo "require('compat53')" | env NIX_PATH=nixpkgs=$(pwd) \
nix-shell --pure -p lua -p lua.pkgs.compat53 --run lua
Similarly rename std.normalize to std_normalize.
Having a dot in the name prevents some changes to the lua infrastructure,
for instance passing attribute names { std._debug }: to a function would fail with
`syntax error, unexpected ',', expecting '.' or '=',`
* neovim-unwrapped: now use lua environments
* mpv: use lua environments
* luaPackages.inspect: init at 3.1.1-0
* luaPackages.lgi: mark as a lua module
* luaPackages.vicious: mark as a lua module
* lua: generate packages from luarocks
* luarocks-nix: update
* removed packages already available in nixpkgs
* adressing reviews
update script can now accept another csv file as input with -c
* Remove obsolete comment
luarocks-nix is a fork of luarocks that adds a "nix" command capable of
converting luarocks package descriptions into nix derivations (though nixpkgs is
still missing the lua infrastructure).
Set up lua packages for the v5.3.x interpreter.
Blacklist the set of lua-packages (luabitop, luaexpat, luazip,
luasqlite3) whose compilation fails against 5.3.4. The rest are at least
building.
Signed-off-by: Philipp Gesang <phg@phi-gamma.net>
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 0.9.2 with grep in /nix/store/q6lcshhmi0dn8ndz2jz9nlircfww4fcm-lgi-0.9.2
- directory tree listing: https://gist.github.com/48d4d638fbd1169b1c96b7e506202b93
Since commit e44038bcca, cairo-1.0.typelib contains an absolute
path to cairo in the nix store so that no $LD_LIBRARY_PATH hacks are
needed. However, this did not yet work for lgi, because lgi does
dlopen("libcairo.so.2") without a full path, too.
To make this work, this commit ensures that lgi first uses
gobject-introspection to load libcairo. This uses the full path provided
by the typelib. Afterwards, dlopen("libcairo.so.2") does not hit the
filesystem anymore since the library is already loaded.
This commit adds a patch that reorders some code in lgi's cairo
initialisation. Previously, this started with core.module('cairo', 2),
which is where the dlopen happens. Now, this code is moved down and
instead core.gi.cairo.resolve is used to load the definitions of some
enums first. This part of the code goes through gobject-introspection
and causes libcairo to be loaded.
Signed-off-by: Uli Schlachter <psychon@znc.in>
These involve:
- Formatting and spacing.
- Switching to using fetchFromGitHub where possible.
- Adding missing meta attributes.
- Correcting license values or adding missing license values.
- Adding vyp as maintainer for unmaintained packages.
None of these changes should affect the build result.
A different revision is used for luasqlite3, however, the source code
between these revisions is actually the same. (And the advantage is that
the new revision is a tagged release.)
The shared objects are not available in 'pcre.dev', so to build the rex_pcre.so
file we must specify 'pcre.out' as the directory to obtain shared objects
from, 'pcre.dev' is still needed for the header files though.