From 5d9fac00a27f0b3f41e80b762377aa52f1bc7494 Mon Sep 17 00:00:00 2001 From: termux-pacman-bot Date: Wed, 21 Jan 2026 14:46:07 +0000 Subject: [PATCH] bump(x11/awesome): 2026.01.04 - Build with correctly-specified Lua version, including building `lua-lgi` from source with that Lua version during the hostbuild --- x11-packages/awesome/build.sh | 51 +++++++-- x11-packages/awesome/glib-2.86.patch | 150 --------------------------- 2 files changed, 40 insertions(+), 161 deletions(-) delete mode 100644 x11-packages/awesome/glib-2.86.patch diff --git a/x11-packages/awesome/build.sh b/x11-packages/awesome/build.sh index f3809b7de5..76fc1ad91d 100644 --- a/x11-packages/awesome/build.sh +++ b/x11-packages/awesome/build.sh @@ -3,16 +3,20 @@ TERMUX_PKG_DESCRIPTION="A highly configurable, next generation framework window TERMUX_PKG_LICENSE="GPL-2.0" TERMUX_PKG_MAINTAINER="@termux" # Latest release version 4.3 does not support Lua 5.4. -_COMMIT=f009815cb75139acf4d8ba3c1090bf2844d13f4c -TERMUX_PKG_VERSION=2025.05.17 -TERMUX_PKG_REVISION=2 +_COMMIT=cab3e81dc6071e3c1c4bd15cf8fab91236c7f2bd +TERMUX_PKG_VERSION="2026.01.04" TERMUX_PKG_SRCURL=git+https://github.com/awesomeWM/awesome -TERMUX_PKG_SHA256=d56f6ab4e9d820504509599279904b17e4bd2b4a37edab1adb43b3ecabd70893 +TERMUX_PKG_SHA256=f601c5e937d5e0ac5adfc8cf87692f56d3f08c2baa502d6fafd52e666d6cadde TERMUX_PKG_GIT_BRANCH=master TERMUX_PKG_DEPENDS="dbus, gdk-pixbuf, glib, libcairo, lua54, libx11, libxcb, libxdg-basedir, libxkbcommon, lua-lgi, pango, startup-notification, xcb-util, xcb-util-cursor, xcb-util-keysyms, xcb-util-wm, xcb-util-xrm" +TERMUX_PKG_BUILD_DEPENDS="imagemagick" +TERMUX_PKG_BREAKS="awesome-luajit" +TERMUX_PKG_CONFLICTS="awesome-luajit" TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" -DLUA_MATH_LIBRARY= -DCMAKE_POLICY_VERSION_MINIMUM=3.5 +-DLUA_INCLUDE_DIR=$TERMUX_PREFIX/include/lua5.4 +-DLUA_LIBRARY=$TERMUX_PREFIX/lib/liblua5.4.so " TERMUX_PKG_HOSTBUILD=true @@ -31,10 +35,15 @@ termux_step_post_get_source() { if [[ "${s}" != "${TERMUX_PKG_SHA256} "* ]]; then termux_error_exit "Checksum mismatch for source files." fi + + find "$TERMUX_PKG_SRCDIR" -type f -print0 | \ + xargs -0 sed -i \ + -e "s|/usr/bin/env lua|/usr/bin/env lua5.4|g" \ + -e "s|/usr/bin/lua|/usr/bin/lua5.4|g" } _load_ubuntu_packages() { - local hostbuild_lua_version="$(echo 'print(_VERSION)' | lua - | cut -d' ' -f2)" + local hostbuild_lua_version="5.4" export HOSTBUILD_ROOTFS="${TERMUX_PKG_HOSTBUILD_DIR}/ubuntu_packages" export LD_LIBRARY_PATH="${HOSTBUILD_ROOTFS}/usr/lib/x86_64-linux-gnu" LD_LIBRARY_PATH+=":${HOSTBUILD_ROOTFS}/usr/lib" @@ -50,8 +59,7 @@ termux_step_host_build() { return fi - local hostbuild_lua_version - hostbuild_lua_version="$(echo 'print(_VERSION)' | lua - | cut -d' ' -f2)" + local hostbuild_lua_version="5.4" local -a ubuntu_packages=( "imagemagick" @@ -113,7 +121,6 @@ termux_step_host_build() { "lua-expat" "lua-filesystem" "lua-ldoc" - "lua-lgi" "lua-penlight" ) @@ -126,23 +133,43 @@ termux_step_host_build() { find "${HOSTBUILD_ROOTFS}/usr/lib/x86_64-linux-gnu" -xtype l \ -exec sh -c "ln -snvf /usr/lib/x86_64-linux-gnu/\$(readlink \$1) \$1" sh {} \; ln -sf convert-im6.q16 "${HOSTBUILD_ROOTFS}/usr/bin/convert" + ln -sf $(command -v "lua$hostbuild_lua_version") "${HOSTBUILD_ROOTFS}/usr/bin/lua-any" _load_ubuntu_packages termux_setup_cmake termux_setup_ninja + # XXX: termux_setup_meson is not expected to be called in host build + AR=;CC=;CFLAGS=;CPPFLAGS=;CXX=;CXXFLAGS=;LD=;LDFLAGS=;PKG_CONFIG=;STRIP= + termux_setup_meson + unset AR CC CFLAGS CPPFLAGS CXX CXXFLAGS LD LDFLAGS PKG_CONFIG STRIP export PKG_CONFIG_PATH="${HOSTBUILD_ROOTFS}/usr/lib/x86_64-linux-gnu/pkgconfig" export CFLAGS="-I${HOSTBUILD_ROOTFS}/usr/include/x86_64-linux-gnu" CFLAGS+=" -I/usr/include/xcb" + + LUA_LGI="$TERMUX_PKG_HOSTBUILD_DIR/lua-lgi" + (. "$TERMUX_SCRIPTDIR/packages/lua-lgi/build.sh"; TERMUX_PKG_SRCDIR="$LUA_LGI" termux_step_get_source) + $TERMUX_MESON setup \ + "$LUA_LGI" \ + "$LUA_LGI/build" \ + --prefix "$HOSTBUILD_ROOTFS/usr" \ + -Dlua-pc=lua"${hostbuild_lua_version//./}" \ + -Dlua-bin=lua"${hostbuild_lua_version}" + $TERMUX_MESON compile -C "$LUA_LGI/build" + $TERMUX_MESON install -C "$LUA_LGI/build" + cmake \ -G Ninja \ - -S ${TERMUX_PKG_SRCDIR} \ + -S "${TERMUX_PKG_SRCDIR}" \ -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ -DCMAKE_PREFIX_PATH="${HOSTBUILD_ROOTFS}/usr" \ - -DCMAKE_INSTALL_PREFIX="${HOSTBUILD_ROOTFS}/usr" + -DCMAKE_INSTALL_PREFIX="${HOSTBUILD_ROOTFS}/usr" \ + -DLUA_INCLUDE_DIR="${HOSTBUILD_ROOTFS}/usr/include/lua$hostbuild_lua_version" \ + -DLUA_LIBRARY="/usr/lib/x86_64-linux-gnu/liblua$hostbuild_lua_version.so.0" \ + -DLUA_EXECUTABLE=$(command -v "lua$hostbuild_lua_version") ninja \ - -j ${TERMUX_PKG_MAKE_PROCESSES} \ + -j "${TERMUX_PKG_MAKE_PROCESSES}" \ install unset PKG_CONFIG_PATH CFLAGS } @@ -152,4 +179,6 @@ termux_step_pre_configure() { _load_ubuntu_packages export PATH="$TERMUX_PKG_HOSTBUILD_DIR:$PATH" fi + + TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" -DLUA_EXECUTABLE=$(command -v lua5.4)" } diff --git a/x11-packages/awesome/glib-2.86.patch b/x11-packages/awesome/glib-2.86.patch deleted file mode 100644 index b1fef7d8c8..0000000000 --- a/x11-packages/awesome/glib-2.86.patch +++ /dev/null @@ -1,150 +0,0 @@ -From 5ae48086fbc87cc7086e9da43bfc1e3407214e5e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= -Date: Sat, 17 May 2025 20:32:58 +0200 -Subject: [PATCH 1/2] lib, tests: use GioUnix to use platform-specific Gio - classes - -In newest glib GioUnix symbols are not anymore exposed in GioUnix, -while lua-lgi should handle the change transparently, it's better to -adapt awesome to just use the right namespace. ---- - lib/awful/spawn.lua | 5 +++-- - tests/_client.lua | 11 ++++++----- - tests/test-spawn.lua | 8 ++++---- - 3 files changed, 13 insertions(+), 11 deletions(-) - -diff --git a/lib/awful/spawn.lua b/lib/awful/spawn.lua -index 7d3e945087..8eb7847627 100644 ---- a/lib/awful/spawn.lua -+++ b/lib/awful/spawn.lua -@@ -225,6 +225,7 @@ local capi = - } - local lgi = require("lgi") - local Gio = lgi.Gio -+local GioUnix = lgi.GioUnix - local GLib = lgi.GLib - local util = require("awful.util") - local gtable = require("gears.table") -@@ -418,11 +419,11 @@ function spawn.with_line_callback(cmd, callbacks) - end - end - if have_stdout then -- spawn.read_lines(Gio.UnixInputStream.new(stdout, true), -+ spawn.read_lines(GioUnix.InputStream.new(stdout, true), - stdout_callback, step_done, true) - end - if have_stderr then -- spawn.read_lines(Gio.UnixInputStream.new(stderr, true), -+ spawn.read_lines(GioUnix.InputStream.new(stderr, true), - stderr_callback, step_done, true) - end - assert(stdin == nil) -diff --git a/tests/_client.lua b/tests/_client.lua -index 3eb015f312..d45786bb28 100644 ---- a/tests/_client.lua -+++ b/tests/_client.lua -@@ -16,6 +16,7 @@ local GLib = lgi.require('GLib') - local Gdk = lgi.require('Gdk') - local Gtk = lgi.require('Gtk', '3.0') - local Gio = lgi.require('Gio') -+local GioUnix = lgi.require('GioUnix') - Gtk.init() - - local function open_window(class, title, options) -@@ -88,7 +89,7 @@ end) - coro() - - -- Read lines from stdin and feed them to the coroutine --local stdin = Gio.UnixInputStream.new(0, false) -+local stdin = GioUnix.InputStream.new(0, false) - stdin = Gio.DataInputStream.new(stdin) - - local read_start, read_finish -@@ -116,7 +117,7 @@ Gtk:main{...} - ]] - - local lgi = require("lgi") --local Gio = lgi.require("Gio") -+local GioUnix = lgi.require("GioUnix") - - local initialized = false - local pipe, pid -@@ -126,10 +127,10 @@ local function init() - initialized = true - local cmd = { lua_executable, "-e", test_client_source } - local _pid, _, stdin, stdout, stderr = awesome.spawn(cmd, false, true, true, true) -- pipe = Gio.UnixOutputStream.new(stdin, true) -+ pipe = GioUnix.OutputStream.new(stdin, true) - pid = _pid -- stdout = Gio.UnixInputStream.new(stdout, true) -- stderr = Gio.UnixInputStream.new(stderr, true) -+ stdout = GioUnix.InputStream.new(stdout, true) -+ stderr = GioUnix.InputStream.new(stderr, true) - spawn.read_lines(stdout, function(...) print("_client", ...) end) - spawn.read_lines(stderr, function(...) print("_client", ...) end) - end -diff --git a/tests/test-spawn.lua b/tests/test-spawn.lua -index dfc3cc5f8d..a24a94238a 100644 ---- a/tests/test-spawn.lua -+++ b/tests/test-spawn.lua -@@ -109,7 +109,7 @@ local steps = { - local pid, _, _, stdout = awesome.spawn({ "sh", "-c", "echo $AWESOME_SPAWN_TEST_VAR $HOME $USER" }, - false, false, true, false, nil, { "AWESOME_SPAWN_TEST_VAR=42" }) - assert(type(pid) ~= "string", pid) -- spawn.read_lines(require("lgi").Gio.UnixInputStream.new(stdout, true), -+ spawn.read_lines(require("lgi").GioUnix.InputStream.new(stdout, true), - function(line) - assert(not read_line) - read_line = true -@@ -171,7 +171,7 @@ local steps = { - false, false, true, "DEV_NULL") - assert(type(pid) ~= "string", pid) - assert(stderr == nil) -- spawn.read_lines(require("lgi").Gio.UnixInputStream.new(stdout, true), -+ spawn.read_lines(require("lgi").GioUnix.InputStream.new(stdout, true), - function(line) - assert(not read_line) - read_line = true -@@ -189,7 +189,7 @@ local steps = { - false, "INHERIT", true, false) - assert(type(pid) ~= "string", pid) - assert(stdin == nil) -- spawn.read_lines(require("lgi").Gio.UnixInputStream.new(stdout, true), -+ spawn.read_lines(require("lgi").GioUnix.InputStream.new(stdout, true), - function(line) - assert(not read_line) - read_line = true -@@ -215,7 +215,7 @@ local steps = { - assert(stdin ~= nil) - assert(stdout ~= nil) - assert(stderr ~= nil) -- spawn.read_lines(require("lgi").Gio.UnixInputStream.new(stdout, true), -+ spawn.read_lines(require("lgi").GioUnix.InputStream.new(stdout, true), - function(line) - assert(not read_line) - read_line = true - -From 80b7fa8262495e331da3c98a48adf94a5a806fef Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= -Date: Sat, 13 Sep 2025 02:13:01 +0200 -Subject: [PATCH 2/2] awesomeConfig: Bump dependency on GLib 2.79.2 - -This is the version that provided GioUnix symbols, so we need to depend -on that ---- - awesomeConfig.cmake | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/awesomeConfig.cmake b/awesomeConfig.cmake -index 592c2b2526..b27baa456c 100644 ---- a/awesomeConfig.cmake -+++ b/awesomeConfig.cmake -@@ -132,7 +132,7 @@ pkg_check_modules(AWESOME_COMMON_REQUIRED REQUIRED - - set(AWESOME_DEPENDENCIES - glib-2.0 -- glib-2.0>=2.40 -+ glib-2.0>=2.79.2 - gdk-pixbuf-2.0 - cairo - x11