diff --git a/config/x11.toml b/config/x11.toml index 026c34c4..627fa985 100644 --- a/config/x11.toml +++ b/config/x11.toml @@ -14,7 +14,7 @@ filesystem_size = 2048 adwaita-icon-theme = {} dbus = {} gtk3 = {} -mate-common = {} +#mate-common = {} mesa-demos-x11 = {} #firefox = {} #webkitgtk3 = {} # not compiling diff --git a/recipes/groups/xfce4-common/recipe.toml b/recipes/groups/xfce4-common/recipe.toml index 85f5bd68..f85288ec 100644 --- a/recipes/groups/xfce4-common/recipe.toml +++ b/recipes/groups/xfce4-common/recipe.toml @@ -2,9 +2,12 @@ dependencies = [ "thunar", "xfconf", + "xfdashboard", "xfdesktop", + "xfce4-appfinder", "xfce4-session", "xfce4-panel", "xfce4-settings", + "xfce4-terminal", "xfwm4", ] diff --git a/recipes/libs/libnettle/recipe.toml b/recipes/libs/libnettle/recipe.toml index 7f1ba112..29d81817 100644 --- a/recipes/libs/libnettle/recipe.toml +++ b/recipes/libs/libnettle/recipe.toml @@ -12,5 +12,7 @@ dependencies = [ ] script = """ DYNAMIC_INIT +# TODO: sccache regression +export CC="$GNU_TARGET-gcc" cookbook_configure """ diff --git a/recipes/wip/libs/gnome/clutter/recipe.toml b/recipes/wip/libs/gnome/clutter/recipe.toml index 975ec92d..7b335f5f 100644 --- a/recipes/wip/libs/gnome/clutter/recipe.toml +++ b/recipes/wip/libs/gnome/clutter/recipe.toml @@ -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" +] \ No newline at end of file diff --git a/recipes/wip/libs/gnome/clutter/redox.patch b/recipes/wip/libs/gnome/clutter/redox.patch new file mode 100644 index 00000000..36a34055 --- /dev/null +++ b/recipes/wip/libs/gnome/clutter/redox.patch @@ -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 diff --git a/recipes/wip/libs/gnome/cogl/recipe.toml b/recipes/wip/libs/gnome/cogl/recipe.toml index 346d3fd0..51fc6dd3 100644 --- a/recipes/wip/libs/gnome/cogl/recipe.toml +++ b/recipes/wip/libs/gnome/cogl/recipe.toml @@ -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 +""" diff --git a/recipes/wip/libs/gnome/cogl/redox.patch b/recipes/wip/libs/gnome/cogl/redox.patch new file mode 100644 index 00000000..c0e713b9 --- /dev/null +++ b/recipes/wip/libs/gnome/cogl/redox.patch @@ -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 diff --git a/recipes/wip/libs/gnome/json-glib/recipe.toml b/recipes/wip/libs/gnome/json-glib/recipe.toml index cf0e8ed6..0eb010f8 100644 --- a/recipes/wip/libs/gnome/json-glib/recipe.toml +++ b/recipes/wip/libs/gnome/json-glib/recipe.toml @@ -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", diff --git a/recipes/wip/libs/other/libpthread-stubs/recipe.toml b/recipes/wip/libs/other/libpthread-stubs/recipe.toml index 878a40f4..5c5472f3 100644 --- a/recipes/wip/libs/other/libpthread-stubs/recipe.toml +++ b/recipes/wip/libs/other/libpthread-stubs/recipe.toml @@ -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" diff --git a/recipes/wip/libs/other/libyaml/recipe.toml b/recipes/wip/libs/other/libyaml/recipe.toml index ba2c19b2..87fb0236 100644 --- a/recipes/wip/libs/other/libyaml/recipe.toml +++ b/recipes/wip/libs/other/libyaml/recipe.toml @@ -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" diff --git a/recipes/wip/wayland/libwayland/recipe.toml b/recipes/wip/wayland/libwayland/recipe.toml index 78fa82c9..39dc7696 100644 --- a/recipes/wip/wayland/libwayland/recipe.toml +++ b/recipes/wip/wayland/libwayland/recipe.toml @@ -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" diff --git a/recipes/wip/wayland/wayland-protocols/recipe.toml b/recipes/wip/wayland/wayland-protocols/recipe.toml index 593e24bc..4fc0fc87 100644 --- a/recipes/wip/wayland/wayland-protocols/recipe.toml +++ b/recipes/wip/wayland/wayland-protocols/recipe.toml @@ -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 = [ diff --git a/recipes/wip/x11/libxshmfence/recipe.toml b/recipes/wip/x11/libxshmfence/recipe.toml index 00e41e2c..cc6623b8 100644 --- a/recipes/wip/x11/libxshmfence/recipe.toml +++ b/recipes/wip/x11/libxshmfence/recipe.toml @@ -1,5 +1,6 @@ [source] tar = "https://www.x.org/releases/individual/lib/libxshmfence-1.3.tar.gz" +blake3 = "17784f567543f3cdf4ee7b0a45f30dbb91acd1fd4f5f398e274376f301da6df8" script = """ autotools_recursive_regenerate """ diff --git a/recipes/wip/x11/xfce4/libexo/recipe.toml b/recipes/wip/x11/xfce4/libexo/recipe.toml index 4c1017a0..ff7687c4 100644 --- a/recipes/wip/x11/xfce4/libexo/recipe.toml +++ b/recipes/wip/x11/xfce4/libexo/recipe.toml @@ -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", diff --git a/recipes/wip/x11/xfce4/thunar/recipe.toml b/recipes/wip/x11/xfce4/thunar/recipe.toml index aa40985f..c6402913 100644 --- a/recipes/wip/x11/xfce4/thunar/recipe.toml +++ b/recipes/wip/x11/xfce4/thunar/recipe.toml @@ -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", diff --git a/recipes/wip/x11/xfce4/xfce4-appfinder/recipe.toml b/recipes/wip/x11/xfce4/xfce4-appfinder/recipe.toml new file mode 100644 index 00000000..74e554d1 --- /dev/null +++ b/recipes/wip/x11/xfce4/xfce4-appfinder/recipe.toml @@ -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 = [] diff --git a/recipes/wip/x11/xfce4/xfce4-session/recipe.toml b/recipes/wip/x11/xfce4/xfce4-session/recipe.toml index f7f2ef95..2d7f3de3 100644 --- a/recipes/wip/x11/xfce4/xfce4-session/recipe.toml +++ b/recipes/wip/x11/xfce4/xfce4-session/recipe.toml @@ -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 ] diff --git a/recipes/wip/x11/xfce4/xfce4-session/redox.patch b/recipes/wip/x11/xfce4/xfce4-session/redox.patch index c0d53cd0..6235b5ce 100644 --- a/recipes/wip/x11/xfce4/xfce4-session/redox.patch +++ b/recipes/wip/x11/xfce4/xfce4-session/redox.patch @@ -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 #include diff --git a/recipes/wip/x11/xfce4/xfce4-settings/recipe.toml b/recipes/wip/x11/xfce4/xfce4-settings/recipe.toml index 8b6ff5ee..f6e23f01 100644 --- a/recipes/wip/x11/xfce4/xfce4-settings/recipe.toml +++ b/recipes/wip/x11/xfce4/xfce4-settings/recipe.toml @@ -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", diff --git a/recipes/wip/x11/xfce4/xfce4-terminal/recipe.toml b/recipes/wip/x11/xfce4/xfce4-terminal/recipe.toml new file mode 100644 index 00000000..b79bedc2 --- /dev/null +++ b/recipes/wip/x11/xfce4/xfce4-terminal/recipe.toml @@ -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 = [] diff --git a/recipes/wip/x11/xfce4/xfce4-terminal/redox.patch b/recipes/wip/x11/xfce4/xfce4-terminal/redox.patch new file mode 100644 index 00000000..5a26b638 --- /dev/null +++ b/recipes/wip/x11/xfce4/xfce4-terminal/redox.patch @@ -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)); diff --git a/recipes/wip/x11/xfce4/xfdashboard/recipe.toml b/recipes/wip/x11/xfce4/xfdashboard/recipe.toml new file mode 100644 index 00000000..fa385d6a --- /dev/null +++ b/recipes/wip/x11/xfce4/xfdashboard/recipe.toml @@ -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 = [] diff --git a/recipes/wip/x11/xfce4/xfdesktop/recipe.toml b/recipes/wip/x11/xfce4/xfdesktop/recipe.toml index 0cf12b6f..70d63eae 100644 --- a/recipes/wip/x11/xfce4/xfdesktop/recipe.toml +++ b/recipes/wip/x11/xfce4/xfdesktop/recipe.toml @@ -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",