mirror of
https://github.com/termux-pacman/termux-packages.git
synced 2026-02-10 03:40:52 +00:00
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
This commit is contained in:
@@ -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)"
|
||||
}
|
||||
|
||||
@@ -1,150 +0,0 @@
|
||||
From 5ae48086fbc87cc7086e9da43bfc1e3407214e5e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
|
||||
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?= <mail@3v1n0.net>
|
||||
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
|
||||
Reference in New Issue
Block a user