The package fails to build on ppc64el. See https://buildd.debian.org/status/fetch.php?pkg=sysdig&arch=ppc64el&ver=0.40.0%2Brepack-2&stamp=1744756834&raw=0. Able to reproduce the issue while building the package on pp64el. On checking the logs, it seems that the issue is because of a function "luaL_setfuncs" being undeclared. I will check more on this. /build/reproducible-path/sysdig-0.40.0+repack/userspace/chisel/chisel.cpp:985:9: error: ‘luaL_setfuncs’ was not declared in this scope; did you mean ‘lua_setfenv’? 985 | luaL_setfuncs(ls, ll_tool, 0); | ^~~~~~~~~~~~~ | lua_setfenv /build/reproducible-path/sysdig-0.40.0+repack/userspace/chisel/chisel.cpp: In member function ‘void sinsp_chisel::load(std::string, bool)’: /build/reproducible-path/sysdig-0.40.0+repack/userspace/chisel/chisel.cpp:1196:9: error: ‘luaL_setfuncs’ was not declared in this scope; did you mean ‘lua_setfenv’? 1196 | luaL_setfuncs(m_ls, ll_tool, 0); | ^~~~~~~~~~~~~ | lua_setfenv
Tried reproducing the issue of sysdig build failure on ppc64el. On checking the logs minutely, got to know that the issue is due to use of luaL_setfuncs(). The error was chisel.cpp:985:9: error: ‘luaL_setfuncs’ was not declared in this scope This happens because libluajit-5.1-dev does not support ppc64el. As a result, the current Build-Depends fallback to liblua5.1-0-dev and still causes incompatibility, since luaL_setfuncs is only available in Lua ≥5.2. I propose replacing the conditional dependency with a direct one on liblua5.3-dev, which provides full support for ppc64el and the required API. I have also tested cross-building sysdig for other architectures (including amd64, arm64, armel, armhf, mips64el, riscv64 and s390x) using sbuild, and all of them successfully build with liblua5.3-dev instead of libluajit-5.1-dev. This suggests that the switch does not break existing builds and improves compatibility for architectures like ppc64el that are not supported by LuaJIT. I have attached the patch in this mail.
Hello Dima, Did you get chance to look at the patch. Please let me know your thoughts on this.
Hi. Thank you for your patch. I just ran a few tests, and it seems to work. I see that this changes the resulting package to Depends:liblua5.3-0. I'm not super familiar with the lua ecosystem. Does this have downsides? Is there some situation where lua5.1 is available and usable, but lua5.3 isn't? Thank you for working on this.
Hello Dima,
Thank you for reviewing the patch.
yes, you are right the resulting package dependency changes to
Depends:liblua5.3-0. This change was necessary because
*l*ibluajit-5.1-dev does not support ppc64el and since luaL_setfuncs is
only available in Lua ≥5.2.
Lua 5.3 is the default version of Lua in Debian for general-purpose use
and is well-supported across all release architectures including ppc64el.
As per my knowledge, there is no major downside of using this version
unless:
* The package doesnt use Lua 5.1-specific features ( e.g., |setfenv|,
|getfenv) |that were either changed/removed in the later versions.
* It is not depending on binary Lua modules built against Lua 5.1 ABI
* And upstream doesn’t explicitly lock to Lua 5.1.
And, sysdig doesnt follow any of the above as of now.
The only one possible situation where I think lua5.1 will be required
specifically but not lua5.3 is for the packages depending on *LuaJIT*,
which is compatible with Lua 5.1 but not with Lua 5.3.
Hi. I just ran a few tests, and fixed something related. For sysdig, lua5.3 appears to work for multiple architectures, as you say. I also tried lua5.4, which also appears to work. 5.4 is greater than 5.3. Is there a reason to stick to 5.3 instead of moving up to 5.4? You said 5.3 is the default version of Lua in Debian for general-purpose use Is this the reason? I don't see any package dependency that says this. Is there some policy note or something that suggests that 5.3 is the default? Once we decide this, I'll check one more thing, and make the upload. Thanks for pushing on this.
Hello Dima, Thanks for testing it against 5.4. yeah, its correct there is no formal policy/document stating that but in practice Lua 5.3 is most widely used stable release. There are some Lua libs in debian still tested primarily against 5.3. In Lua 5.4, there were *some language-level *changes (like to GC behaviour. Reference: https://www.lua.org/manual/5.4/manual.html#8) that can cause subtle breakage with older modules. So, I thought to use 5.3 to avoid any runtime breakage. There are some API changes as well. So, I would suggest if we are going with 5.4 we should test runtime positive and negative scenarios as well.
OK. I'll move to 5.3, and make the upload. Thanks.
We believe that the bug you reported is fixed in the latest version of sysdig, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 1110505@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Dima Kogan <dkogan@debian.org> (supplier of updated sysdig package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@ftp-master.debian.org) Format: 1.8 Date: Wed, 20 Aug 2025 22:07:28 -0700 Source: sysdig Architecture: source Version: 0.40.0+repack-3 Distribution: unstable Urgency: medium Maintainer: Dima Kogan <dkogan@debian.org> Changed-By: Dima Kogan <dkogan@debian.org> Closes: 1110505 Changes: sysdig (0.40.0+repack-3) unstable; urgency=medium . * Build-Depends: liblua5.3-dev (Closes: #1110505) Checksums-Sha1: 43b83c22194c690a8b3bf0975772eb67ae1c7d78 2290 sysdig_0.40.0+repack-3.dsc 38c6c91966f067985763fa2f8b22d25106d3bd2b 7316 sysdig_0.40.0+repack-3.debian.tar.xz cf769fc6ceeac01bbe427bd50025035fe7fee9a3 9915 sysdig_0.40.0+repack-3_source.buildinfo Checksums-Sha256: aa2d5b1fc37e3e52fb8bd90fa6d49389cf1f80b7501278a1dde1cd7a5cc6c76f 2290 sysdig_0.40.0+repack-3.dsc 572f3537d31b50796def6660520e85ee86bfa075918fb1d90bedb1d5a4565606 7316 sysdig_0.40.0+repack-3.debian.tar.xz 4d3e60f3a4c51ed416078f888ca6fbdcbd9a1574f8b7ada8ab76f2435e736b03 9915 sysdig_0.40.0+repack-3_source.buildinfo Files: 1289d95773b7abf28246d0575fea4674 2290 admin optional sysdig_0.40.0+repack-3.dsc 1d0c83c7b0110cc9e6fbe3e368b94783 7316 admin optional sysdig_0.40.0+repack-3.debian.tar.xz 07486fb0749bd74e155a57f1e9567b6d 9915 admin optional sysdig_0.40.0+repack-3_source.buildinfo -----BEGIN PGP SIGNATURE----- iQJGBAEBCgAwFiEEteL6GQ/fmv4hiInPrMfCzzCUEYgFAmi15d8SHGRrb2dhbkBk ZWJpYW4ub3JnAAoJEKzHws8wlBGIr0AP/2g/kVHbvpLUI16ks8xUSHNNc3nn0Rtz UOJD6QRJ1GjrgX67fR6Vfb021fiI+75vPN76qqhXyaADCuy9bgwvcEDSOOXDM7Kh 0+N8VNfqjNUgPvdBzUwYdkLL2JvmKMG53bhCb7PJG09xBPyDAGIZKzg/JavrgZ2g HkWviGhbhfdQHjaHuI0bkQfuTaibcNXEhDtu/lo52UMbYDM1LrpL/NTvkV385Nun iDNY2DQHFumwwghFGORJCu6h+0lyJ1alAA9sYU8jGkyzNZcTUhhBAFTmopCQi2m8 84MkpEC5wtKvE04DDUlQOq40omb+ZHGBzlulbNyommJ8GauvJJq6+BfcV0haDcgH ZnciVJuzoaEKv0ZYpFTBlxUQHDyf/6Vdkzj04BWa5C8jZLWHceLX7liUGUVCCqCw AQYpjjkE5Fphdb/QLlh3b0yn9ZflpvBxEatewPWBIWLDnG2bqk6QWZnpo86cffza rowi4C0dm2rfFFEPCGKDDVud2rzxdFHdCS06mEk7y71uOAEfvdWUSKoPazeRd5ON N+2MzNH8hvbSLzd1vwNXlLFGb9Xccbf/UxvIsxUtuVMzeTXVRf6gXj649ir2C3HM IYNby9ZSGEyd0IOjZU4VKcinTTv/+k+fnJpihtO21jeAIU8ncyqQ8lx/+qnFDzgS +Nak5zQvPixY =8kZ1 -----END PGP SIGNATURE-----