Port more xfce4 and add hashes

This commit is contained in:
Wildan M 2026-05-22 08:24:04 +02:00
parent 631ce38da3
commit c040d826c1
23 changed files with 183 additions and 20 deletions

View File

@ -14,7 +14,7 @@ filesystem_size = 2048
adwaita-icon-theme = {}
dbus = {}
gtk3 = {}
mate-common = {}
#mate-common = {}
mesa-demos-x11 = {}
#firefox = {}
#webkitgtk3 = {} # not compiling

View File

@ -2,9 +2,12 @@
dependencies = [
"thunar",
"xfconf",
"xfdashboard",
"xfdesktop",
"xfce4-appfinder",
"xfce4-session",
"xfce4-panel",
"xfce4-settings",
"xfce4-terminal",
"xfwm4",
]

View File

@ -12,5 +12,7 @@ dependencies = [
]
script = """
DYNAMIC_INIT
# TODO: sccache regression
export CC="$GNU_TARGET-gcc"
cookbook_configure
"""

View File

@ -1,7 +1,10 @@
#TODO not compiled or tested
#TODO compiled but not tested
# build instructions: https://gitlab.gnome.org/Archive/clutter#building-and-installation
[source]
tar = "https://download.gnome.org/sources/clutter/1.26/clutter-1.26.4.tar.xz"
blake3 = "d4f369fd488111ad3a954e831b2e5525731c9c2cbc3d6a17f94ee42e60705227"
patches = ["redox.patch"]
[build]
template = "configure"
dependencies = [
@ -9,11 +12,17 @@ dependencies = [
"json-glib",
"atk",
"cairo",
"gdk-pixbuf",
"pango",
"cogl",
"libxcb",
"libxcomposite
"libxcomposite",
"libxdamage",
"libxext",
"libxkbcommon",
]
configureflags = [
"--disable-wayland-compositor",
"--disable-egl-backend",
"--disable-examples"
]

View File

@ -0,0 +1,12 @@
diff -ruwN source/configure source-new/configure
--- source/configure 2020-03-09 17:33:16.000000000 +0100
+++ source-new/configure 2026-05-22 06:50:44.989886255 +0200
@@ -11645,7 +11645,7 @@
;;
# This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu* | redox*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no

View File

@ -1,13 +1,26 @@
#TODO not compiled or tested
#TODO compiled but not tested
[source]
tar = "https://download.gnome.org/sources/cogl/1.22/cogl-1.22.8.tar.xz"
blake3 = "223495ca6149877b76ca31b43d1e8a47f2983f4c6c2dfc3ec50239599daa14cd"
patches = ["redox.patch"]
[build]
template = "configure"
template = "custom"
dependencies = [
"mesa-x11",
"libxcomposite",
"libxdamage",
"libxext",
"libxfixes",
"glib",
"cairo",
"pango",
#"libwayland",
]
script = """
DYNAMIC_INIT
export CPPFLAGS="$CPPFLAGS -DSTBI_SIMD=0"
COOKBOOK_CONFIGURE_FLAGS+=(
--disable-maintainer-flags
)
cookbook_configure
"""

View File

@ -0,0 +1,21 @@
diff --color -ruwN source/configure source-new/configure
--- source/configure 2020-06-04 14:59:51.000000000 +0200
+++ source-new/configure 2026-05-22 07:29:04.630575353 +0200
@@ -10816,7 +10816,7 @@
lt_prog_compiler_static='-non_shared'
;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu* | redox*)
case $cc_basename in
# old Intel for x86_64, which still supported -KPIC.
ecc*)
@@ -13291,7 +13291,7 @@
;;
# This must be glibc/ELF.
-linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu* | redox*)
version_type=linux # correct to gnu/linux during the next big refactor
need_lib_prefix=no
need_version=no

View File

@ -2,15 +2,13 @@
# build instructions: https://gitlab.gnome.org/GNOME/json-glib/#build-and-installation
[source]
tar = "https://download.gnome.org/sources/json-glib/1.8/json-glib-1.8.0.tar.xz"
blake3 = "6e2373041a935f622f71fbe3827a4921cceac662de15791b1fd10fc6d710307c"
[build]
template = "meson"
mesonflags = [
"-Dintrospection=false",
"-Ddocumentation=false",
"-Dgtk_doc=false",
"-Dintrospection=disabled",
"-Dgtk_doc=disabled",
"-Dtests=false",
"-Dconformance=false",
"-Dinstalled_tests=false",
]
dependencies = [
"glib",

View File

@ -1,5 +1,6 @@
#TODO compiled but not tested
[source]
tar = "https://www.x.org/releases/individual/xcb/libpthread-stubs-0.5.tar.xz"
blake3 = "e282d49eda2bbbc76345e68a9413a132b734033562d9ef56c4140912fa906a12"
[build]
template = "configure"

View File

@ -1,5 +1,6 @@
#TODO compiled but not tested
[source]
tar = "http://pyyaml.org/download/libyaml/yaml-0.2.5.tar.gz"
blake3 = "64cd0f69eb55904fdf4a6f20d46d565ab2433ae494e76edbdf835a25b57c98d9"
[build]
template = "configure"

View File

@ -2,6 +2,7 @@
#TODO: F_DUPFD_CLOEXEC, MSG_CMSG_CLOEXEC, MSG_NOSIGNAL TFD_TIMER_ABSTIME
[source]
tar = "https://gitlab.freedesktop.org/wayland/wayland/-/releases/1.24.0/downloads/wayland-1.24.0.tar.xz"
blake3 = "8c3b2bc792e5e262e9fb821fb8222b376de6fdf5d7af9b86d46e51ecf79704b9"
patches = [
#FIXME: This patch is just a shim. Remove this patch
"redox.patch"

View File

@ -1,5 +1,6 @@
[source]
tar = "https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/1.32/downloads/wayland-protocols-1.32.tar.xz"
blake3 = "7ae608d3b04be91e89fd07b8e326fa6dcf718beda85cccc33e7cc2afe746a8ba"
[build]
template = "meson"
mesonflags = [

View File

@ -1,5 +1,6 @@
[source]
tar = "https://www.x.org/releases/individual/lib/libxshmfence-1.3.tar.gz"
blake3 = "17784f567543f3cdf4ee7b0a45f30dbb91acd1fd4f5f398e274376f301da6df8"
script = """
autotools_recursive_regenerate
"""

View File

@ -1,5 +1,6 @@
[source]
tar = "https://archive.xfce.org/src/xfce/exo/4.21/exo-4.21.0.tar.bz2"
blake3 = "431f43ef89b9c84aa548732cc2099b0279fc5cfc7f7c83b47392decfd0fe096e"
[build]
dependencies = [
"atk",

View File

@ -1,5 +1,6 @@
[source]
tar = "https://archive.xfce.org/src/xfce/thunar/4.21/thunar-4.21.5.tar.xz"
blake3 = "3e7572c5c4c2621acc8bf743565b727af4b37bbe27bd07ce8a8d8def37a8a8c3"
[build]
dependencies = [
"atk",

View File

@ -0,0 +1,16 @@
[source]
tar = "https://archive.xfce.org/src/xfce/xfce4-appfinder/4.21/xfce4-appfinder-4.21.1.tar.xz"
blake3 = "45da27a937fec50d5721937b07ade3c05ac8d91c2656e76bd98a0b7215f45c15"
[build]
dependencies = [
"cairo",
"garcon",
"gdk-pixbuf",
"glib",
"gtk3",
"libxfce4ui",
"libxfce4util",
"xfconf",
]
template = "meson"
mesonflags = []

View File

@ -1,5 +1,6 @@
[source]
tar = "https://archive.xfce.org/src/xfce/xfce4-session/4.21/xfce4-session-4.21.1.tar.xz"
blake3 = "9f485ef972e8d5b75e0a9cd499e2cd1afd6d76afe3e6713d202f84e9943e28b3"
patches = [ "redox.patch" ]
[build]
dependencies = [
@ -19,5 +20,9 @@ dependencies = [
"xfconf",
]
template = "meson"
mesonflags = [
mesonflags = []
[package]
dependencies = [
# todo: port xorg-iceauth
]

View File

@ -1,6 +1,6 @@
diff --color -ruwN source/meson.build source-new/meson.build
--- source/meson.build 2025-12-29 23:51:03.000000000 +0700
+++ source-new/meson.build 2026-05-21 21:53:44.879480320 +0700
diff -ruwN source/meson.build source-new/meson.build
--- source/meson.build 2025-12-29 17:51:03.000000000 +0100
+++ source-new/meson.build 2026-05-22 05:50:54.280346791 +0200
@@ -47,8 +47,6 @@
libxfce4windowing = dependency('libxfce4windowing-0', version: dependency_versions['libxfce4windowing'])
xfconf = dependency('libxfconf-0', version: dependency_versions['xfce4'])
@ -10,9 +10,27 @@ diff --color -ruwN source/meson.build source-new/meson.build
# Feature: 'x11'
x11_deps = []
x11_deps += dependency('gdk-x11-3.0', version: dependency_versions['gtk'], required: get_option('x11'))
diff --color -ruwN source/xfce4-session/meson.build source-new/xfce4-session/meson.build
--- source/xfce4-session/meson.build 2025-12-29 23:51:03.000000000 +0700
+++ source-new/xfce4-session/meson.build 2026-05-21 21:53:55.246584551 +0700
@@ -75,8 +73,6 @@
feature_cflags += '-DHAVE__ICETRANSNOLISTEN=1'
endif
- iceauth = find_program('iceauth', required: true)
-
xsession_prefix = get_option('xsession-prefix')
if xsession_prefix == ''
xsession_prefix = '/usr'
diff -ruwN source/xfce4-session/meson.build source-new/xfce4-session/meson.build
--- source/xfce4-session/meson.build 2025-12-29 17:51:03.000000000 +0100
+++ source-new/xfce4-session/meson.build 2026-05-22 05:51:20.133774608 +0200
@@ -42,7 +42,7 @@
if enable_x11
c_args += [
- '-DICEAUTH_CMD="@0@"'.format(iceauth.full_path()),
+ '-DICEAUTH_CMD="@0@"'.format('/usr/bin/iceauth'),
]
session_sources += [
@@ -89,7 +89,7 @@
'xfsm-chooser-icon.h',
input: 'xfsm-chooser-icon.png',
@ -22,9 +40,9 @@ diff --color -ruwN source/xfce4-session/meson.build source-new/xfce4-session/mes
capture: true,
)
diff --color -ruwN source/xfce4-session/xfsm-manager.h source-new/xfce4-session/xfsm-manager.h
--- source/xfce4-session/xfsm-manager.h 2025-12-29 23:51:03.000000000 +0700
+++ source-new/xfce4-session/xfsm-manager.h 2026-05-21 21:54:38.971024148 +0700
diff -ruwN source/xfce4-session/xfsm-manager.h source-new/xfce4-session/xfsm-manager.h
--- source/xfce4-session/xfsm-manager.h 2025-12-29 17:51:03.000000000 +0100
+++ source-new/xfce4-session/xfsm-manager.h 2026-05-22 05:43:17.663128999 +0200
@@ -26,6 +26,7 @@
#include <glib-object.h>
#include <libxfce4util/libxfce4util.h>

View File

@ -1,6 +1,7 @@
[source]
tar = "https://archive.xfce.org/src/xfce/xfce4-settings/4.21/xfce4-settings-4.21.1.tar.xz"
blake3 = "41c37ce199e809e6c143f7cae041d4bddc33cea8e1505937c3c33fec79538d58"
[build]
dependencies = [
"host:libxml2",

View File

@ -0,0 +1,20 @@
[source]
tar = "https://archive.xfce.org/src/apps/xfce4-terminal/1.2/xfce4-terminal-1.2.0.tar.xz"
blake3 = "24b1ad1f765b99eef694909d4a59cdbbcfaedfdb4ba5c97c21741d047dabe533"
patches = ["redox.patch"] # https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293731
[build]
dependencies = [
"cairo",
"gdk-pixbuf",
"glib",
"gtk3",
"libxfce4ui",
"libxfce4util",
"vte",
"xfconf",
]
dev-dependencies = [
"libstdcxx"
]
template = "meson"
mesonflags = []

View File

@ -0,0 +1,17 @@
diff -ruwN source/terminal/terminal-window-dropdown.c source-new/terminal/terminal-window-dropdown.c
--- source/terminal/terminal-window-dropdown.c 2026-03-08 12:12:45.000000000 +0100
+++ source-new/terminal/terminal-window-dropdown.c 2026-05-22 06:23:12.563462784 +0200
@@ -567,11 +567,13 @@
if (dropdown->animation_timeout_id != 0)
g_source_remove (dropdown->animation_timeout_id);
+#ifdef HAVE_GTK_LAYER_SHELL
if (dropdown->set_monitor_idle_id != 0)
g_source_remove (dropdown->set_monitor_idle_id);
if (dropdown->monitor_removed_idle_id != 0)
g_source_remove (dropdown->monitor_removed_idle_id);
+#endif
if (dropdown->status_icon != NULL)
g_object_unref (G_OBJECT (dropdown->status_icon));

View File

@ -0,0 +1,20 @@
[source]
tar = "https://archive.xfce.org/src/apps/xfdashboard/1.1/xfdashboard-1.1.0.tar.xz"
blake3 = "8d8d9fbd138105a52002df63652c570e43dc9a6729c859aff321519c8b2aeada"
[build]
dependencies = [
"cairo",
"gdk-pixbuf",
"glib",
"gtk3",
"libxfce4ui",
"libxfce4util",
"vte",
"xfconf",
"libwnck3",
"garcon",
"cogl",
"clutter",
]
template = "meson"
mesonflags = []

View File

@ -1,5 +1,6 @@
[source]
tar = "https://archive.xfce.org/src/xfce/xfdesktop/4.20/xfdesktop-4.20.2.tar.bz2"
blake3 = "b263f84181023186df1a37e2b2b4a2b61eb63d8f27862c4fbbd5fc4c563d7e0e"
[build]
dependencies = [
"atk",