BuddiesOfBudgie / budgie-desktop

Budgie Desktop is a familiar, modern desktop environment.
https://buddiesofbudgie.org
GNU General Public License v2.0
912 stars 46 forks source link

[Bug] FTBFS with libxfce4windowing 4.19.3: undefined reference to `xfw_window_get_id' #546

Closed bobby285271 closed 4 months ago

bobby285271 commented 4 months ago

Description

xfw_(window|application)_get_id() is removed in libxfce4windowing 4.19.3: https://gitlab.xfce.org/xfce/libxfce4windowing/-/commit/d7d9bae6294df6fb0b6cefa50d6fe8ee3d1ce800

This causes FTBFS as:

[287/478] Linking target src/daemon/budgie-daemon
FAILED: src/daemon/budgie-daemon 
gcc  -o src/daemon/budgie-daemon src/daemon/budgie-daemon.p/meson-generated_endsession.c.o src/daemon/budgie-daemon.p/meson-generated_notifications_dbus.c.o src/daemon/budgie-daemon.p/meson-generated_notifications_popup.c.o src/daemon/budgie-daemon.p/meson-generated_screenshot.c.o src/daemon/budgie-daemon.p/meson-generated_statusnotifier.c.o src/daemon/budgie-daemon.p/meson-generated_main.c.o src/daemon/budgie-daemon.p/meson-generated_manager.c.o src/daemon/budgie-daemon.p/meson-generated_menus.c.o src/daemon/budgie-daemon.p/meson-generated_osd.c.o src/daemon/budgie-daemon.p/meson-generated_settings.c.o src/daemon/budgie-daemon.p/meson-generated_tabswitcher.c.o src/daemon/budgie-daemon.p/meson-generated_xdgdirtracker_dbus.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,--whole-archive -Wl,--start-group src/daemon/libbudgie-daemon-resources.a -Wl,--no-whole-archive '-Wl,-rpath,$ORIGIN/../lib:$ORIGIN/../plugin/panel:$ORIGIN/../theme' -Wl,-rpath-link,/build/source/build/src/lib -Wl,-rpath-link,/build/source/build/src/plugin/panel -Wl,-rpath-link,/build/source/build/src/theme src/lib/libbudgie-private.so.0.0.0 src/plugin/panel/libbudgie-plugin.so.0.0.0 src/appsys/libappsys.a src/config/libconfig.a src/theme/libbudgietheme.so.0.0.0 src/libsession/libsession.a /nix/store/rblppj260x50jd53dr1zgrs5q9aj4myx-libcanberra-0.30/lib/libcanberra.so /nix/store/rblppj260x50jd53dr1zgrs5q9aj4myx-libcanberra-0.30/lib/libcanberra-gtk3.so /nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib/libgtk-3.so /nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib/libgdk-3.so /nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib/libpangocairo-1.0.so /nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib/libpango-1.0.so /nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib/libharfbuzz.so /nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib/libatk-1.0.so /nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib/libcairo-gobject.so /nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib/libcairo.so /nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib/libgdk_pixbuf-2.0.so /nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib/libgio-2.0.so /nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib/libgobject-2.0.so /nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib/libglib-2.0.so -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -L/nix/store/rblppj260x50jd53dr1zgrs5q9aj4myx-libcanberra-0.30/lib -lX11 -lz -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -lz -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -lz /nix/store/2d3x7vlpgxmg68aq6zsaspz12gh8nc7j-libnotify-0.8.3/lib/libnotify.so /nix/store/zvilx2vl50a2dmabfrraw6fsd69y5wdv-libwnck-43.0/lib/libwnck-3.so -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -L/nix/store/zvilx2vl50a2dmabfrraw6fsd69y5wdv-libwnck-43.0/lib -lz /nix/store/9rjhwfasx8wbfpb7j5c908c20dx1ria2-libxfce4windowing-4.19.3/lib/libxfce4windowing-0.so -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -L/nix/store/9rjhwfasx8wbfpb7j5c908c20dx1ria2-libxfce4windowing-4.19.3/lib -lz /nix/store/9yx2a6qmpg42mp0nqr6qh75imdqdbfwk-gstreamer-1.22.9/lib/libgstreamer-1.0.so /nix/store/nh3w2ckfcwi9lvysyrg2l394a4ckw2gi-libpeas-1.36.0/lib/libpeas-1.0.so -Wl,--export-dynamic /nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib/libgmodule-2.0.so -pthread /nix/store/bg3qymmzpfmv8n0bj8kbv3ha6nas85hf-gobject-introspection-1.78.1/lib/libgirepository-1.0.so -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -lz -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -lz -L/nix/store/lk8kgif9ynk1l6aiqnbvzvys83n0h956-gtk+3-3.24.41/lib -L/nix/store/gqf5ixhbfsizc15ndmdnir8bir5b87qj-at-spi2-core-2.50.0/lib -L/nix/store/g0gc1ls4p1rwcx7k5qr153rs71ir8ixn-glib-2.78.4/lib -L/nix/store/jp83hbx84zxiqmpprcj8g5ff0jlmh7rz-cairo-1.18.0/lib -L/nix/store/jrlkyy3pzizi39lywafsd1psd9vg3p9b-gdk-pixbuf-2.42.10/lib -L/nix/store/ahf3r66zp3c8hg0y9b151xr29x8b6gjv-pango-1.51.0/lib -L/nix/store/c7m7x38l8xlxlgqfgca0753pzzhki90r-harfbuzz-8.3.0/lib -L/nix/store/zvilx2vl50a2dmabfrraw6fsd69y5wdv-libwnck-43.0/lib -lz -Wl,--end-group
/nix/store/p0p56gzz837fgmfd7lyisghcd7x2fdlc-binutils-2.40/bin/ld: src/daemon/budgie-daemon.p/meson-generated_tabswitcher.c.o: in function `_budgie_tab_switcher_window_set_window_as_activated_budgie_tab_switcher_widget_window_activated':
tabswitcher.c:(.text+0x71f): undefined reference to `xfw_window_get_id'
/nix/store/p0p56gzz837fgmfd7lyisghcd7x2fdlc-binutils-2.40/bin/ld: src/daemon/budgie-daemon.p/meson-generated_tabswitcher.c.o: in function `budgie_tab_switcher_widget_construct':
tabswitcher.c:(.text+0xc50): undefined reference to `xfw_window_get_id'
/nix/store/p0p56gzz837fgmfd7lyisghcd7x2fdlc-binutils-2.40/bin/ld: src/daemon/budgie-daemon.p/meson-generated_tabswitcher.c.o: in function `budgie_tab_switcher_window_focus_item':
tabswitcher.c:(.text+0x2062): undefined reference to `xfw_window_get_id'
collect2: error: ld returned 1 exit status

Full log: https://gist.github.com/bobby285271/6ad799ceae415f6f32a472eaac06cbe1

Budgie version

10.9.1

Operating System

NixOS (using custom checkout)

Steps to reproduce the issue

  1. Build budgie-desktop with libxfce4windowing 4.19.3

Actual result

FTBFS.

Expected result

Builds.

Additional information

No response

Phantop commented 4 months ago

Can report that this issue breaks Budgie on Arch if you let libxfce4windowing update :/

serebit commented 4 months ago

@Phantop I've patched the Arch libxfce4windowing package to add the function back while we work on addressing this in Budgie (package version 4.19.3-2). It should be safe to update now.