diff --git a/recipes/libs/cairo/recipe.toml b/recipes/libs/cairo/recipe.toml index 47b1d5eb..a158b74b 100644 --- a/recipes/libs/cairo/recipe.toml +++ b/recipes/libs/cairo/recipe.toml @@ -5,30 +5,24 @@ patches = ["redox.patch"] [build] dependencies = [ - "expat", - "freetype2", - "fontconfig", - "gettext", + "fontconfig", + "freetype2", "glib", - "libffi", - "libiconv", - "libpng", - "libpthread-stubs", + "libpng", "libx11", - "libxau", "libxcb", "libxext", - "pcre2", - "pixman", - "x11proto", - "zlib", + "libxrender", + "pixman", +] +dev-dependencies = [ + # xext and xrender is required by pkg-config, don't move them here ] template = "custom" script = """ DYNAMIC_INIT -#TODO: fix mutex implementation #TODO: why are math defines missing? -CFLAGS="${CFLAGS} -DCAIRO_NO_MUTEX=1 -DM_SQRT2=1.41421356237309504880 -DM_LN2=0.69314718055994530942" +CFLAGS="${CFLAGS} -DM_SQRT2=1.41421356237309504880 -DM_LN2=0.69314718055994530942" cookbook_meson \ -Dxlib-xcb=enabled \ -Dtests=disabled diff --git a/recipes/libs/pango/recipe.toml b/recipes/libs/pango/recipe.toml index 8080ad3c..45b97903 100644 --- a/recipes/libs/pango/recipe.toml +++ b/recipes/libs/pango/recipe.toml @@ -6,30 +6,14 @@ patches = ["redox.patch"] [build] dependencies = [ "cairo", - "expat", "fontconfig", "freetype2", "fribidi", - "gettext", "glib", "harfbuzz", - "libffi", - "libiconv", - "libpng", - "libpthread-stubs", - "libx11", - "libxau", - "libxcb", - "libxext", - "libxft", - "libxrender", - "pcre", - "pcre2", - "pixman", - "x11proto", - "xcb-proto", - "xextproto", - "zlib", + # "libx11", + # "libxft", + # "libxrender", ] template = "custom" script = """ diff --git a/recipes/wip/libs/gnome/gtk3/recipe.toml b/recipes/wip/libs/gnome/gtk3/recipe.toml index 7e2b13a0..02631e99 100644 --- a/recipes/wip/libs/gnome/gtk3/recipe.toml +++ b/recipes/wip/libs/gnome/gtk3/recipe.toml @@ -1,8 +1,8 @@ #TODO promote [source] -tar = "https://download.gnome.org/sources/gtk+/3.24/gtk%2B-3.24.43.tar.xz" -blake3 = "5feab2bad81e6b5906895f70ddce6227cf96a6a14b16af0ef72c79991a48ddf4" -patches = ["redox.patch"] +git = "https://gitlab.redox-os.org/redox-os/gtk" +branch = "redox-3.24.43" +shallow_clone = true [build] dependencies = [ @@ -21,26 +21,19 @@ dependencies = [ "libffi", "libiconv", "libjpeg", + "liborbital", "libpng", - "libpthread-stubs", - "libwayland", - "libx11", - "libxau", - "libxkbcommon", - "libxcb", - "libxext", "libxfixes", + "libxkbcommon", "libxi", "libxrandr", - "libxrender", - "libxxf86vm", - "mesa-x11", + "libx11", + "libwayland", + "mesa", "pango", "pcre2", "pixman", - "shared-mime-info", "wayland-protocols", - "x11proto", "zlib", ] template = "custom" diff --git a/recipes/wip/libs/gnome/libepoxy/recipe.toml b/recipes/wip/libs/gnome/libepoxy/recipe.toml index d77fc9cb..7544bdc5 100644 --- a/recipes/wip/libs/gnome/libepoxy/recipe.toml +++ b/recipes/wip/libs/gnome/libepoxy/recipe.toml @@ -4,23 +4,14 @@ blake3 = "0ccee9635115fe417cfc4bc33ffd160bf1e2852bd6c03816b4af771d59462f53" patches = ["redox.patch"] [build] -template = "custom" -dependencies = [ - "libpthread-stubs", +template = "meson" +dev-dependencies = [ "libx11", - "libxau", - "libxcb", - "libxext", - "libxfixes", - "libxxf86vm", - "mesa-x11", - "x11proto", - "zlib", + "mesa", +] +mesonflags = [ + "-Degl=yes", +# we're forcing x11 backend via EGL + "-Dx11=true", + "-Dtests=false", ] -script = """ -DYNAMIC_INIT -cookbook_meson \ - -Degl=yes \ - -Dglx=yes \ - -Dtests=false -""" diff --git a/recipes/wip/libs/other/libicu/recipe.toml b/recipes/wip/libs/other/libicu/recipe.toml index f779b82e..87f7c09f 100644 --- a/recipes/wip/libs/other/libicu/recipe.toml +++ b/recipes/wip/libs/other/libicu/recipe.toml @@ -5,7 +5,7 @@ blake3 = "5657d84c78549f198f1335ec9d2f1de2b0ac2771fe081cbf00016370872c13f3" patches = ["redox.patch"] [build] -dependencies = [ +dev-dependencies = [ "host:libicu" ] template = "custom" @@ -28,5 +28,4 @@ if [ "$TARGET" = "$COOKBOOK_HOST_TARGET" ]; then # this is not ideal, but there's no other better way rsync -a ./ "${COOKBOOK_STAGE}/usr" fi - """ diff --git a/recipes/wip/libs/other/libxkbcommon/recipe.toml b/recipes/wip/libs/other/libxkbcommon/recipe.toml index d62aaec7..fae0ab88 100644 --- a/recipes/wip/libs/other/libxkbcommon/recipe.toml +++ b/recipes/wip/libs/other/libxkbcommon/recipe.toml @@ -2,15 +2,30 @@ [source] tar = "https://xkbcommon.org/download/libxkbcommon-1.7.0.tar.xz" blake3 = "5001ca0b8562feeef2010bf16c05657e3875fda3ed5fdedbf48b9135e5cdfcbc" +patches = [ + "redox.patch" +] [build] -template = "meson" -mesonflags = [ - "-Denable-wayland=false", - "-Denable-x11=false" -] +template = "custom" dependencies = [ "libxml2", "xz", "zlib", + "libpthread-stubs", + "libxau", + "x11proto", + "xcb-proto", + "libxcb", +] +script = """ +DYNAMIC_INIT +cookbook_meson \ + -Denable-wayland=false \ + -Denable-x11=true +""" + +[package] +dependencies = [ + "xkeyboard-config" ] diff --git a/recipes/wip/x11/libxkbcommon-x11/redox.patch b/recipes/wip/libs/other/libxkbcommon/redox.patch similarity index 96% rename from recipes/wip/x11/libxkbcommon-x11/redox.patch rename to recipes/wip/libs/other/libxkbcommon/redox.patch index 11a80ca9..0ec555c8 100644 --- a/recipes/wip/x11/libxkbcommon-x11/redox.patch +++ b/recipes/wip/libs/other/libxkbcommon/redox.patch @@ -1,4 +1,4 @@ -diff --color -ruwN source/meson.build source-new/meson.build +diff -ruwN source/meson.build source-new/meson.build --- source/meson.build 2024-03-24 04:23:43.000000000 +0700 +++ source-new/meson.build 2025-10-29 10:55:30.355297899 +0700 @@ -637,8 +637,6 @@ @@ -31,7 +31,7 @@ diff --color -ruwN source/meson.build source-new/meson.build if get_option('enable-xkbregistry') test( 'registry', -diff --color -ruwN source/src/x11/util.c source-new/src/x11/util.c +diff -ruwN source/src/x11/util.c source-new/src/x11/util.c --- source/src/x11/util.c 2024-03-24 04:23:43.000000000 +0700 +++ source-new/src/x11/util.c 2025-10-29 15:03:58.879274347 +0700 @@ -39,7 +39,7 @@ diff --git a/recipes/wip/net/onion-routing/tor-browser/recipe.toml b/recipes/wip/net/onion-routing/tor-browser/recipe.toml index 59e2e024..4c489a9d 100644 --- a/recipes/wip/net/onion-routing/tor-browser/recipe.toml +++ b/recipes/wip/net/onion-routing/tor-browser/recipe.toml @@ -15,7 +15,7 @@ dependencies = [ # "glib", "gtk3", "pango", - "libxkbcommon-x11", + "libxkbcommon", "libice", "mesa-x11", "x11proto-kb", diff --git a/recipes/wip/web/firefox-esr/recipe.toml b/recipes/wip/web/firefox-esr/recipe.toml index 54947da8..2ad0ebc0 100644 --- a/recipes/wip/web/firefox-esr/recipe.toml +++ b/recipes/wip/web/firefox-esr/recipe.toml @@ -17,7 +17,7 @@ dependencies = [ # "glib", "gtk3", "pango", - "libxkbcommon-x11", + "libxkbcommon", "libice", "mesa-x11", "x11proto-kb", diff --git a/recipes/wip/web/firefox/recipe.toml b/recipes/wip/web/firefox/recipe.toml index 24b5ff60..da4d72e4 100644 --- a/recipes/wip/web/firefox/recipe.toml +++ b/recipes/wip/web/firefox/recipe.toml @@ -13,7 +13,7 @@ dependencies = [ "freetype2", "gtk3", "pango", - "libxkbcommon-x11", + "libxkbcommon", "libice", "mesa-x11", "nspr", diff --git a/recipes/wip/x11/i3/i3/recipe.toml b/recipes/wip/x11/i3/i3/recipe.toml index 06758788..76dee3b5 100644 --- a/recipes/wip/x11/i3/i3/recipe.toml +++ b/recipes/wip/x11/i3/i3/recipe.toml @@ -7,7 +7,7 @@ blake3 = "3b54ed52759339e545a7a5f602946abc0164c37eb801e79c0cb40f93dbae53d2" dependencies = [ "cairo", "libev", - "libxkbcommon-x11", + "libxkbcommon", "pango", "pcre2", "startup-notification", diff --git a/recipes/wip/x11/libx11/recipe.toml b/recipes/wip/x11/libx11/recipe.toml index a56da978..04d6c029 100644 --- a/recipes/wip/x11/libx11/recipe.toml +++ b/recipes/wip/x11/libx11/recipe.toml @@ -7,9 +7,10 @@ autotools_recursive_regenerate [build] dependencies = [ - "libpthread-stubs", - "libxau", "libxcb", +] +dev-dependencies = [ + "libxau", "x11proto", "xtrans", ] diff --git a/recipes/wip/x11/libxft/recipe.toml b/recipes/wip/x11/libxft/recipe.toml index d671cadf..5edaef3e 100644 --- a/recipes/wip/x11/libxft/recipe.toml +++ b/recipes/wip/x11/libxft/recipe.toml @@ -7,20 +7,9 @@ autotools_recursive_regenerate [build] dependencies = [ - "expat", "fontconfig", "freetype2", - "libpng", - "libpthread-stubs", "libx11", - "libxau", - "libxcb", "libxrender", - "x11proto", - "zlib", ] -template = "custom" -script = """ -DYNAMIC_INIT -cookbook_configure -""" +template = "configure" diff --git a/recipes/wip/x11/libxkbcommon-x11/recipe.toml b/recipes/wip/x11/libxkbcommon-x11/recipe.toml deleted file mode 100644 index ea53a2ca..00000000 --- a/recipes/wip/x11/libxkbcommon-x11/recipe.toml +++ /dev/null @@ -1,25 +0,0 @@ -# TODO: Conflict with libxkbcommon-x11 -# TODO: Keyboard not working, see patches -[source] -tar = "https://xkbcommon.org/download/libxkbcommon-1.7.0.tar.xz" -blake3 = "5001ca0b8562feeef2010bf16c05657e3875fda3ed5fdedbf48b9135e5cdfcbc" -patches = [ "redox.patch" ] - -[build] -template = "custom" -dependencies = [ - "libxml2", - "xz", - "zlib", - "libpthread-stubs", - "libxau", - "x11proto", - "xcb-proto", - "libxcb", -] -script = """ -DYNAMIC_INIT -cookbook_meson \ - -Denable-wayland=false \ - -Denable-x11=true -""" diff --git a/recipes/wip/x11/libxrender/recipe.toml b/recipes/wip/x11/libxrender/recipe.toml index 4442e6a1..76f3467d 100644 --- a/recipes/wip/x11/libxrender/recipe.toml +++ b/recipes/wip/x11/libxrender/recipe.toml @@ -7,11 +7,7 @@ autotools_recursive_regenerate [build] dependencies = [ - "libpthread-stubs", "libx11", - "libxau", - "libxcb", - "x11proto", ] template = "custom" script = """ diff --git a/recipes/wip/x11/mesa-x11/recipe.toml b/recipes/wip/x11/mesa-x11/recipe.toml index dfb07c14..2bcc4a38 100644 --- a/recipes/wip/x11/mesa-x11/recipe.toml +++ b/recipes/wip/x11/mesa-x11/recipe.toml @@ -24,9 +24,11 @@ script = """ DYNAMIC_INIT cookbook_meson \ -Ddri-drivers-path=/usr/lib/dri \ - -Degl=enabled \ + -Degl=disabled \ -Dglx=dri \ -Dllvm=enabled \ + -Dgles1=disabled \ + -Dgles2=disabled \ -Dplatforms=x11 \ -Dshader-cache=disabled """ diff --git a/src/cook/script.rs b/src/cook/script.rs index b40d39ae..8b0791f2 100644 --- a/src/cook/script.rs +++ b/src/cook/script.rs @@ -34,7 +34,7 @@ function DYNAMIC_INIT { ) # TODO: check paths for spaces - export LDFLAGS="${USER_LDFLAGS}-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib -L${COOKBOOK_SYSROOT}/lib" + export LDFLAGS="${USER_LDFLAGS}-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib -L${COOKBOOK_SYSROOT}/lib -Wl,--export-dynamic" export RUSTFLAGS="-C target-feature=-crt-static -L native=${COOKBOOK_SYSROOT}/lib -C link-arg=-Wl,-rpath-link,${COOKBOOK_SYSROOT}/lib" export COOKBOOK_DYNAMIC=1