1010 cargo ,
1111 rustc ,
1212 rustPlatform ,
13+ luarocks ,
1314
1415 # buildInputs
1516 lua ,
1920 libiconv ,
2021 stylua ,
2122 typos ,
22- darwin ,
2323 # FONTCONFIG_FILE
2424 makeFontsConf ,
2525 gentium ,
3131
3232stdenv . mkDerivation ( finalAttrs : {
3333 pname = "sile" ;
34- version = "0.15.6 " ;
34+ version = "0.15.7 " ;
3535
3636 src = fetchurl {
3737 url = "https://github.com/sile-typesetter/sile/releases/download/v${ finalAttrs . version } /sile-${ finalAttrs . version } .tar.zst" ;
38- sha256 = "sha256-CtPvxbpq2/qwuANPp9XDJQHlxIbFiaNZJvYZeUx/wyE =" ;
38+ sha256 = "sha256-PjU6Qfn+FTL3vt66mkIAn/uXWMPPlH8iK6B264ekIis =" ;
3939 } ;
4040
4141 cargoDeps = rustPlatform . fetchCargoTarball {
4242 inherit ( finalAttrs ) src ;
4343 nativeBuildInputs = [ zstd ] ;
4444 dontConfigure = true ;
45- hash = "sha256-5SheeabI4SqJZ3edAvX2rUEGTdCXHoBTa+rnX7lv9Cg =" ;
45+ hash = "sha256-m21SyGtHwVCz+77pYq48Gjnrf/TLCLCf/IQ7AnZk+fo =" ;
4646 } ;
4747
4848 nativeBuildInputs = [
@@ -52,21 +52,20 @@ stdenv.mkDerivation (finalAttrs: {
5252 cargo
5353 rustc
5454 rustPlatform . cargoSetupHook
55+ luarocks
56+ ] ;
57+ # luarocks propagates cmake, but it shouldn't be used as a build system.
58+ dontUseCmakeConfigure = true ;
59+
60+ buildInputs = [
61+ finalAttrs . finalPackage . passthru . luaEnv
62+ harfbuzz
63+ icu
64+ fontconfig
65+ libiconv
66+ stylua
67+ typos
5568 ] ;
56-
57- buildInputs =
58- [
59- finalAttrs . finalPackage . passthru . luaEnv
60- harfbuzz
61- icu
62- fontconfig
63- libiconv
64- stylua
65- typos
66- ]
67- ++ lib . optionals stdenv . hostPlatform . isDarwin [
68- darwin . apple_sdk . frameworks . AppKit
69- ] ;
7069
7170 configureFlags =
7271 [
@@ -111,41 +110,48 @@ stdenv.mkDerivation (finalAttrs: {
111110 enableParallelBuilding = true ;
112111
113112 passthru = {
114- luaEnv = lua . withPackages (
115- ps :
116- with ps ;
113+ # Use this passthru variable to add packages to your lua environment. Use
114+ # something like this in your development environment:
115+ #
116+ # myLuaEnv = lua.withPackages (
117+ # ps: lib.attrVals (sile.passthru.luaPackages ++ [
118+ # "lua-cjson"
119+ # "lua-resty-http"
120+ # ]) ps
121+ # )
122+ luaPackages =
117123 [
118- cassowary
119- cldr
120- fluent
121- linenoise
122- loadkit
123- lpeg
124- lua-zlib
125- lua_cliargs
126- luaepnf
127- luaexpat
128- luafilesystem
129- luarepl
130- luasec
131- luasocket
132- luautf8
133- penlight
134- vstruct
124+ " cassowary"
125+ " cldr"
126+ " fluent"
127+ " linenoise"
128+ " loadkit"
129+ " lpeg"
130+ " lua-zlib"
131+ " lua_cliargs"
132+ " luaepnf"
133+ " luaexpat"
134+ " luafilesystem"
135+ " luarepl"
136+ " luasec"
137+ " luasocket"
138+ " luautf8"
139+ " penlight"
140+ " vstruct"
135141 # lua packages needed for testing
136- busted
137- luacheck
142+ " busted"
143+ " luacheck"
138144 # packages needed for building api docs
139- ldoc
145+ " ldoc"
140146 # NOTE: Add lua packages here, to change the luaEnv also read by `flake.nix`
141147 ]
142148 ++ lib . optionals ( lib . versionOlder lua . luaversion "5.2" ) [
143- bit32
149+ " bit32"
144150 ]
145151 ++ lib . optionals ( lib . versionOlder lua . luaversion "5.3" ) [
146- compat53
147- ]
148- ) ;
152+ " compat53"
153+ ] ;
154+ luaEnv = lua . withPackages ( ps : lib . attrVals finalAttrs . finalPackage . passthru . luaPackages ps ) ;
149155
150156 # Copied from Makefile.am
151157 tests . test = lib . optionalAttrs ( ! ( stdenv . hostPlatform . isDarwin && stdenv . hostPlatform . isAarch64 ) ) (
0 commit comments