Xfce Wiki

Sub domains
 

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
releng:wayland_roadmap [2024/02/04 23:33] – [Applications] xfce4-screensaver gaelreleng:wayland_roadmap [2024/03/18 19:40] – [Native Wayland] Add note about Wayfire + Xfce4-Session andreldm
Line 2: Line 2:
 ====== Xfce Wayland Development Roadmap ====== ====== Xfce Wayland Development Roadmap ======
  
-<note important> This design document is intended for Xfce developers to begin brainstorming ideas for future development. This is a work in progress and does not imply any future implementation commitments.</note>+<note important> This document is intended for Xfce developers to keep track of Wayland development. This is a work in progress and does not imply any future implementation commitments.</note>
  
- +  * **[[#Overall Plans|Overall Plans]]** 
-  * **[[#Short Term Plans|Short Term Plans (Xfce 4.18)]]** +  * **[[#Long Term Goals|Long Term Goals]]**
-  * **[[#Long Term Goals|Long Term Goals (target release unknown)]]** +
-     * **[[#Agreed]]** +
-     * **[[#Topics under discussion]]**+
   * **[[#Component specific status]]**   * **[[#Component specific status]]**
      * **[[#Core components]]**      * **[[#Core components]]**
      * **[[#Applications]]**      * **[[#Applications]]**
-       * **[[#xfce4-screenshooter]]** 
      * **[[#Thunar Plugins]]**      * **[[#Thunar Plugins]]**
      * **[[#Panel Plugins]]**      * **[[#Panel Plugins]]**
   * **[[#Testing]]**   * **[[#Testing]]**
-     * **[[#native wayland ]]** 
-     * **[[#xwayland ]]** 
   * **[[#Links]]**   * **[[#Links]]**
  
 ---- ----
  
-===== Short Term Plans =====+===== Overall Plans =====
  
-For Xfce 4.18, the plan is to ensure our applications are working acceptably on Wayland (those that already work or can be made to work with low effort). So, basically start testing with Weston and see if all menus, etc behave normally and ifdef Xlib code.+For Xfce 4.20, the plan isto add preliminary support to Wayland to core components without losing X11 support. This doesn't mean that by the next major release an Xfce session on Wayland will offer all existing features, but we hope it will be minimally usable. We also intend to continue refining our applications to work acceptably on Wayland (those that already work or can be made to work with low effort).
  
-Check the table in the [[#component specific]] section for details and labelled issues by group:+Check the table in the [[#component specific status]] section for details and labelled issues by group:
  
-  * https://gitlab.xfce.org/groups/xfce/-/issues/?label_name%5B%5D=5.%20Wayland +  * [[https://gitlab.xfce.org/groups/xfce/-/issues/?label_name%5B%5D=5.%20Wayland|Core]] 
-  * https://gitlab.xfce.org/groups/apps/-/issues/?label_name%5B%5D=5.%20Wayland +  * [[https://gitlab.xfce.org/groups/apps/-/issues/?label_name%5B%5D=5.%20Wayland|Apps]] 
-  * https://gitlab.xfce.org/groups/panel-plugins/-/issues/?label_name%5B%5D=5.%20Wayland +  * [[https://gitlab.xfce.org/groups/panel-plugins/-/issues/?label_name%5B%5D=5.%20Wayland|Panel Plugins]] 
-  * https://gitlab.xfce.org/groups/thunar-plugins/-/issues/?label_name%5B%5D=5.%20Wayland+  * [[https://gitlab.xfce.org/groups/thunar-plugins/-/issues/?label_name%5B%5D=5.%20Wayland|Thunar Plugins]]
  
 ---- ----
Line 40: Line 34:
 Below is a list of larger tasks which would need to be done in some way for such a transition to occur. Below is a list of larger tasks which would need to be done in some way for such a transition to occur.
  
-Some of them are mostly agreed on by the Xfce devs, others are somewhat controversial (or no decision has been made so far).+Some of them are mostly agreed on by the Xfce devs.
  
----- +==== Agreed guidelines ====
- +
-==== Agreed ====+
  
   * Do not depend on XWayland   * Do not depend on XWayland
     * No xsettings     * No xsettings
   * Use wlroots over libmutter   * Use wlroots over libmutter
-    * keep posibillity to run xfdesktop and xfce4-panel as separate components+    * keep the possibility to run xfdesktop and xfce4-panel as separate components
     * Prevent dependency on libgnome-desktop     * Prevent dependency on libgnome-desktop
-    * xfce4-panel and xfdesktop have been ported to Wayland using wlroots. There is also an [[https://github.com/adlocode/xfwm4/tree/wayland|unofficial port of xfwm4]] in progress. +    * xfce4-panel and xfdesktop have been ported to Wayland assuming our compositor will be based on wlroots. 
- +    * There is also an [[https://github.com/adlocode/xfwm4/tree/wayland|unofficial port of xfwm4]] in progress. 
----- +  * Keep X11 compatibility for the foreseeable future 
- +    * Nvidia support to Wayland is still problematicone more reason to keep X11 backward compatibility (nouveau driver usually is slower)
-==== Topics under discussion ==== +
- +
-  * What about X11 backward compatibility? +
-    * As long as Nvidia does not support Wayland (by providing open drivers)it would be good to keep X11 backward compatibility (nouveau driver usually is slower)+
     * Wayland compositors which were written from scratch like Weston or sway will never run as a x11 window manager. But others which started as x11 window managers such as kwin or mutter still keep their x11 window management code     * Wayland compositors which were written from scratch like Weston or sway will never run as a x11 window manager. But others which started as x11 window managers such as kwin or mutter still keep their x11 window management code
-    * We do not have the resources to maintain our own Wayland compositor +    * FreeBSD has decent [[https://docs.freebsd.org/en/books/handbook/wayland/|support]] for Wayland, OpenBSD is still [[https://www.openbsd.org/papers/eurobsdcon2023-matthieu-wayland-openbsd.pdf|working on supporting]] Wayland
-    * FreeBSD provides https://hikari.acmelabs.space, not sure what is the situation for OpenBSD (possibly libinput missing?) +
- +
-[[|Back to Top]]+
  
 ---- ----
Line 71: Line 56:
 === Core components === === Core components ===
  
-^ Component ^ native wayland ^ xwayland ^ Issues ^ +This table reflects the current status of what's released as 4.19 or git master.
-| exo | ok | not used | - | +
-| libxfce4ui | essentially ok, X11 code paths properly protected in [[https://gitlab.xfce.org/xfce/libxfce4ui/-/merge_requests/110|libxfce4ui!110]] | | | +
-| libxfce4util | ok | | | +
-| thunar | ok (Missing icons will be fixed when xfsettingsd runs fine for wayland) | not used | - | +
-| xfce4-appfinder | ok | ? | - | +
-| [[#xfce4-panel]] ≤ 4.18.x | Wont start. Error related to libwnck (is X11 only) | malfunctions (no movement, rough click event, ...) | | +
-| xfce4-session | | | | +
-| [[#xfce4-settings]] ≤ 4.18.x | no (X11 code everywhere) | | | +
-| xfconf | ok | | | +
-| [[#xfdesktop]] ≤ 4.18.x | no (crash on startup) | | | +
-| [[#xfwm4]] | | | | +
-| [[#xfce4-power-manager]] ≤ 4.18.x | no (X11 code in essential features) | | | +
-| tumbler | ok | | | +
-| garcon | ok | | | +
-| thunar-volman | ok | | | +
-| xfce4-dev-tools | ok | | |+
  
-----+^ Component ^ Wayland Support ^ Remarks ^ 
 +| exo | yes | | 
 +| libxfce4ui | yes | X11 code paths properly protected in [[https://gitlab.xfce.org/xfce/libxfce4ui/-/merge_requests/110|libxfce4ui!110]] | 
 +| libxfce4util | yes | | 
 +| thunar | yes | | 
 +| xfce4-appfinder | yes | | 
 +| [[#xfce4-panel]] | yes | See below | 
 +| xfce4-session | yes | See [[https://gitlab.xfce.org/xfce/xfce4-session/-/merge_requests/49|xfce4-session!49]] about limitations and how to use it | 
 +| [[#xfce4-settings]] | yes | See below | 
 +| xfconf | yes | | 
 +| [[#xfdesktop]] | yes | See below | 
 +| [[#xfwm4]] | no | | 
 +| [[#xfce4-power-manager]] | yes | See below | 
 +| tumbler | yes | | 
 +| garcon | yes | | 
 +| thunar-volman | yes | | 
 +| xfce4-dev-tools | yes | |
  
 === xfce4-panel === === xfce4-panel ===
  
-  * Port to Wayland done (Wlroots-based, targeted compositors: Labwc, Wayfire): https://gitlab.xfce.org/xfce/xfce4-panel/-/merge_requests/103 +  * Port to Wayland done: [[https://gitlab.xfce.org/xfce/xfce4-panel/-/merge_requests/103|xfce4-panel!103]] 
-  * On Wayland the panel cannot use GtkSocket/GtkPlug any more to run plugins as external (separate processes). Initially, to advance in the porting of other features, it is enough to run them as internal (same process as the panel, so the crash of a plugin causes the panel to crash). If we want to get this back "natively" afterwards, it seems that we'll have to make the panel a Wayland compositor to some extent ([[https://wayland.freedesktop.org/docs/html/ch02.html#sect-Compositors-Embedding-Compositor|Embedding Compositor]], see also [[https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/74|Allow embedding foreign wl_surfaces]]). For the moment the socket/plug structure has been reproduced on Wayland using the layer-shell protocol and D-Bus, which, although not native, has the merit of simplicity and of reusing what exists (see also https://mail.xfce.org/pipermail/xfce4-dev/2022-October/033092.html).+    * Wlroots-based, targeted compositors: Labwc, Wayfire 
 +  * On Wayland the panel cannot use GtkSocket/GtkPlug any more to run plugins as external (separate processes). Initially, to advance in the porting of other features, it is enough to run them as internal (same process as the panel, so the crash of a plugin causes the panel to crash). If we want to get this back "natively" afterwards, it seems that we'll have to make the panel a Wayland compositor to some extent ([[https://wayland.freedesktop.org/docs/html/ch02.html#sect-Compositors-Embedding-Compositor|Embedding Compositor]], see also [[https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/74|Allow embedding foreign wl_surfaces]]). For the moment the socket/plug structure has been reproduced on Wayland using the layer-shell protocol and D-Bus, which, although not native, has the merit of simplicity and of reusing what exists (more details [[https://mail.xfce.org/pipermail/xfce4-dev/2022-October/033092.html|here]]).
  
 === xfdesktop === === xfdesktop ===
  
-  * Port to Wayland done: https://gitlab.xfce.org/xfce/xfdesktop/-/merge_requests/43+  * Port to Wayland done: [[https://gitlab.xfce.org/xfce/xfdesktop/-/merge_requests/43|xfdesktop!43]]
   * Workspaces support needs an X11/Wayland abstraction, and could use the wlr-workspace-unstable-v1 protocol on Wayland.   * Workspaces support needs an X11/Wayland abstraction, and could use the wlr-workspace-unstable-v1 protocol on Wayland.
   * Listing all toplevel windows (windowlist menu, window icons on desktop) needs an X11/Wayland abstraction, and could use the wlr-foreign-toplevel-management-unstable-v1 protocol on Wayland.   * Listing all toplevel windows (windowlist menu, window icons on desktop) needs an X11/Wayland abstraction, and could use the wlr-foreign-toplevel-management-unstable-v1 protocol on Wayland.
Line 114: Line 100:
 === xfce4-power-manager === === xfce4-power-manager ===
  
-  * Port to Wayland done: https://gitlab.xfce.org/xfce/xfce4-power-manager/-/merge_requests/54+  * Port to Wayland done: [[https://gitlab.xfce.org/xfce/xfce4-power-manager/-/merge_requests/54|xfce4-power-manager!54]]
   * The essential features of user inactivity monitoring and display power management have been restored via protocols [[https://wayland.app/protocols/ext-idle-notify-v1|ext-idle-notify]] and [[https://wayland.app/protocols/wlr-output-power-management-unstable-v1|wlr-output-power-management]].   * The essential features of user inactivity monitoring and display power management have been restored via protocols [[https://wayland.app/protocols/ext-idle-notify-v1|ext-idle-notify]] and [[https://wayland.app/protocols/wlr-output-power-management-unstable-v1|wlr-output-power-management]].
   * There's no real counterpart to brightness management (the [[https://wayland.app/protocols/wlr-gamma-control-unstable-v1|wlr-gamma-control]] protocol offers similar functionality in appearance, but in fact has nothing to do with power saving), but the existing Polkit implementation works independently of the windowing environment.   * There's no real counterpart to brightness management (the [[https://wayland.app/protocols/wlr-gamma-control-unstable-v1|wlr-gamma-control]] protocol offers similar functionality in appearance, but in fact has nothing to do with power saving), but the existing Polkit implementation works independently of the windowing environment.
Line 123: Line 109:
 ==== Applications ==== ==== Applications ====
  
-^ Component ^ native wayland  ^ xwayland Issues +^ Component ^ Wayland Support Remarks 
-| xfce4-terminal | drop-down requires layer-shell to work properly[[https://gitlab.xfce.org/apps/xfce4-terminal/-/merge_requests/72|!72]] | | +| xfce4-terminal | yes | drop-down requires layer-shell to work properly [[https://gitlab.xfce.org/apps/xfce4-terminal/-/merge_requests/72|xfce4-terminal!72]] | 
-| mousepad | ok | | | +| mousepad | yes | | 
-| [[#xfce4-notifyd]] | | | notifications show in middle of screen, are decorated, and aren't always-on-top (fixed in 0.9.x) +| [[#xfce4-notifyd]] | yes | | 
-| xfdashboard | | +| xfdashboard | no crash on startup 
-| xfce4-taskmanager | ok | | no libwnck (appicons, [[https://gitlab.xfce.org/apps/xfce4-taskmanager/-/issues/75|#75]]), no "identify window", no systray icon ([[https://gitlab.xfce.org/apps/xfce4-taskmanager/-/issues/78|#78]]) | +| xfce4-taskmanager | yes | no libwnck (appicons, [[https://gitlab.xfce.org/apps/xfce4-taskmanager/-/issues/75|xfce4-taskmanager#75]]), no "identify window", no systray icon ([[https://gitlab.xfce.org/apps/xfce4-taskmanager/-/issues/78|xfce4-taskmanager#78]]) | 
-| xfce4-mixer | | | +| xfce4-mixer | yes | | 
-| ristretto | ok | | | +| ristretto | yes | | 
-| catfish | ok | | | +| catfish | yes | | 
-| xfburn | | | +| xfburn | yes | | 
-| parole | ok ([[https://gitlab.xfce.org/apps/parole/-/merge_requests/22|crash on startup fixed]]) | | no systray icon ([[https://gitlab.xfce.org/apps/parole/-/issues/126|#126]]) | +| parole | yes | no systray icon ([[https://gitlab.xfce.org/apps/parole/-/issues/126|parole#126]]) | 
-**[[#xfce4-screenshooter]]** no (crash after region is selected) | [[https://gitlab.xfce.org/apps/xfce4-screenshooter/-/issues?label_name=5.+Wayland|Issues]] +| [[#xfce4-screenshooter]] | yes partial, see below 
-| xfce4-screensaver | Porting to Wayland is essentially accomplished in [[https://gitlab.xfce.org/apps/xfce4-screensaver/-/merge_requests/28|xfce4-screensaver!28]], but this requires [[https://gitlab.xfce.org/kelnos/libwlembed|libwlembed]], which is still experimental and has no release at this stage (2024-02-04) | | +| xfce4-screensaver | no | Port to Wayland is essentially done [[https://gitlab.xfce.org/apps/xfce4-screensaver/-/merge_requests/28|xfce4-screensaver!28]] \\ But this requires [[https://gitlab.xfce.org/kelnos/libwlembed|libwlembed]], which is still experimental and has no release at this stage (2024-02-04) | 
-| xfmpc | | | +| xfmpc | yes | | 
-| xfce4-volumed-pulse | | +| xfce4-volumed-pulse | no key bindings fail 
-| xfce4-dict | ok ? | - +| xfce4-dict | yes | | 
-| gigolo | ok | settings dialog crashes (segfault, [[https://gitlab.xfce.org/apps/gigolo/-/merge_requests/18|fixed]]) +| gigolo | yes | | 
-| xfce4-panel-profiles | ok | | +| xfce4-panel-profiles | yes | |
- +
-----+
  
 === xfce4-notifyd === === xfce4-notifyd ===
  
-GTK doesn't appear to do anything special if you set a window to be override-redirect or always-on-top.  Window positioning isn't (always) controllable by the app on Wayland. +GTK doesn't appear to do anything special if you set a window to be override-redirect or always-on-top.
- +
-MR for fixes: [[https://gitlab.xfce.org/apps/xfce4-notifyd/-/merge_requests/37|apps/xfce4-notifyd!37]]+
  
 === xfce4-screenshooter === === xfce4-screenshooter ===
  
-Wayland does not specify a native interface for the compositor for taking screenshots yet. Though there is a DBUS API offered by gnome(mutter?) for a [[https://github.com/flatpak/xdg-desktop-portal|desktop portal]] and as well wlroots has a screenshot protocol+Wayland does not specify a native interface for the compositor for taking screenshots and it [[https://gitlab.freedesktop.org/wayland/wayland/-/issues/32|looks like]] it never will. We decided to use wlroots' [[https://gitlab.freedesktop.org/wlroots/wlr-protocols/-/blob/master/unstable/wlr-screencopy-unstable-v1.xml|screencopy protocol]] because that's probably what our compositor will support.
  
-So for xfce4-screenshooter there are the following options: +At the moment only Entire Screen screenshots are supported ([[https://gitlab.xfce.org/apps/xfce4-screenshooter/-/merge_requests/52|xfce4-screenshooter!52]]), Rectangle Selection will be implemented next but Active Window is going to be much trickier, perhaps we'll need custom protocol for our compositor to take care of that.
-  * Add DBus Support for [[https://github.com/flatpak/xdg-desktop-portal|org.freedesktop.portal.Screenshot]] (like that afaik screenshots should work with mutter) +
-  * Add support for the wlroots screenshot protocol (link?) +
-  * wait until wayland specifies a native interface (see [[https://gitlab.freedesktop.org/wayland/wayland/-/issues/32|here]]), and use it when available (Would make alot of sense for many applications, e.g. any video conferencing tool for screencast, so they dont need to implement multiple API's) +
- +
-Note that backends for xdg-desktop-portals are as well in development for kde and wlroots: +
-  * [[https://github.com/KDE/xdg-desktop-portal-kde|xdg-desktop-portal-kde]] +
-  * [[https://github.com/emersion/xdg-desktop-portal-wlr|xdg-desktop-portal-wlr]] +
- +
-Currently (Feb 2020both API'will give screenshots of the whole screen to any client. So far the user has not to approve screenshot / give permission to specific applications (like e.g. on android). So the security is comparable to the X-Server. +
- +
-See as well: [[https://news.ycombinator.com/item?id=17777546|1]], [[https://news.ycombinator.com/item?id=22752131|2]]+
  
 +If we want to support compositors that don't implement the protocol above, we have to add DBus Support for [[https://github.com/flatpak/xdg-desktop-portal|org.freedesktop.portal.Screenshot]]. This however is not planned and it's unlikely we'll ever fully support other compositors.
  
 ---- ----
Line 172: Line 144:
 ==== Thunar Plugins ==== ==== Thunar Plugins ====
  
-^ Component ^ native wayland xwayland ^ Issues +^ Component ^ Wayland Support Remarks 
-| thunar-archive-plugin | ok not used | - +| thunar-archive-plugin | yes | | 
-| thunar-media-tags-plugin | | | +| thunar-media-tags-plugin | yes | | 
-| thunar-shares-plugin | | | +| thunar-shares-plugin | yes | | 
-| thunar-vcs-plugin | ok (tested git) not used | - |+| thunar-vcs-plugin | yes | |
  
 ---- ----
Line 182: Line 154:
 ==== Panel Plugins ==== ==== Panel Plugins ====
  
-See details in the **[[#xfce4-panel]]** section about how to run external plugins on Wayland. At first, "works" below simply means "doesn't crash", even after some elementary manipulations (eventually). It does not mean that everything works like on X11.+See details in the **[[#xfce4-panel]]** section about how to run external plugins on Wayland. At first, "yes" below simply means "doesn't crash", even after some elementary manipulations (eventually). It does not mean that everything works like on X11.
  
-The tests below were performed on 2022-10-12 by building from git-master for each plugin.+^ Component ^ Wayland Support ^ Remarks ^ 
 +| xfce4-battery-plugin | yes | | 
 +| xfce4-calculator-plugin | yes | insensitive text entry | 
 +| xfce4-clipman-plugin | yes | [[https://gitlab.xfce.org/panel-plugins/xfce4-clipman-plugin/-/merge_requests/26|Ported]] via wlr-data-control \\ TODO: [[https://gitlab.xfce.org/panel-plugins/xfce4-clipman-plugin/-/issues/87|use status notifier instead of status icon]] | 
 +| xfce4-cpufreq-plugin | yes | | 
 +| xfce4-cpugraph-plugin | yes | | 
 +| xfce4-diskperf-plugin | yes | | 
 +| xfce4-docklike-plugin | yes | Requires libxfce4windowing 4.19.3 | 
 +| xfce4-embed-plugin | no | unmaintained, gtk2 | 
 +| xfce4-eyes-plugin | yes | the pointer is not followed outside the panel | 
 +| xfce4-fsguard-plugin | yes | | 
 +| xfce4-generic-slider | yes | | 
 +| xfce4-genmon-plugin | yes | | 
 +| xfce4-indicator-plugin | yes | | 
 +| xfce4-mailwatch-plugin | yes | | 
 +| xfce4-mount-plugin | yes | | 
 +| xfce4-mpc-plugin | yes | though probably relying on non working stuff (?) | 
 +| xfce4-netload-plugin | yes | | 
 +| xfce4-notes-plugin | yes | | 
 +| xfce4-places-plugin | yes | icon issue, critical errors when removing the plugin | 
 +| xfce4-pulseaudio-plugin | yes | with warnings (needs to be rechecked) | 
 +| xfce4-sample-plugin | yes | | 
 +| xfce4-sensors-plugin | yes | | 
 +| xfce4-smartbookmark-plugin | yes | insensitive text entry | 
 +| xfce4-stopwatch-plugin | yes | | 
 +| xfce4-systemload-plugin | yes | | 
 +| xfce4-time-out-plugin | yes | coredumps on pause and critical errors when removing/re-adding the plugin | 
 +| xfce4-timer-plugin | yes | | 
 +| xfce4-verve-plugin | yes | insensitive text entry | 
 +| xfce4-wavelan-plugin | yes | | 
 +| xfce4-weather-plugin | yes | | 
 +| xfce4-whiskermenu-plugin | yes | icons issue, menu window floating | 
 +| xfce4-windowck-plugin | no | does not work (Libwnck) | 
 +| xfce4-xkb-plugin | no | crashes (Libwnck) |
  
-^ Component ^ native wayland ^ xwayland ^ Issues ^ 
-| xfce4-battery-plugin | works | | 
-| xfce4-calculator-plugin | works (insensitive text entry) | | 
-| xfce4-clipman-plugin | [[https://gitlab.xfce.org/panel-plugins/xfce4-clipman-plugin/-/merge_requests/26|Ported to Wayland]] for the main part (clipboard manager via wlr-data-control), remains to do: [[https://gitlab.xfce.org/panel-plugins/xfce4-clipman-plugin/-/issues/87|use status notifier instead of status icon]] | | 
-| xfce4-cpufreq-plugin | works | | 
-| xfce4-cpugraph-plugin | works | | 
-| xfce4-datetime-plugin | works (merged in clock plugin since 4.17.4) | | 
-| xfce4-diskperf-plugin | works | | 
-| xfce4-docklike-plugin | crashes (Libwnck) | | 
-| xfce4-embed-plugin | outdated, probably unusable on Wayland anyway | | 
-| xfce4-eyes-plugin | works (the pointer is not followed outside the panel) | | 
-| xfce4-fsguard-plugin | works | | 
-| xfce4-generic-slider | works | | 
-| xfce4-genmon-plugin | works | | 
-| xfce4-indicator-plugin | works | | 
-| xfce4-mailwatch-plugin | works | | 
-| xfce4-mount-plugin | works | | 
-| xfce4-mpc-plugin | works (though probably relying on non working stuff) | | 
-| xfce4-netload-plugin | works | | 
-| xfce4-notes-plugin | works (colors all the panel in yellow ([[https://gitlab.xfce.org/panel-plugins/xfce4-notes-plugin/-/merge_requests/8|fixed]]), removing the plugin makes the panel quit ([[https://gitlab.xfce.org/panel-plugins/xfce4-notes-plugin/-/merge_requests/13|fixed]])) | | 
-| xfce4-places-plugin | works (icon issue, criticals when removing the plugin) | | 
-| xfce4-pulseaudio-plugin | works (with warnings), can crash (Libwnck): [[https://gitlab.xfce.org/panel-plugins/xfce4-pulseaudio-plugin/-/merge_requests/22|fixed]] | | 
-| xfce4-sample-plugin | works | | 
-| xfce4-sensors-plugin | works | | 
-| xfce4-smartbookmark-plugin | works (insensitive text entry) | | 
-| xfce4-statusnotifier-plugin | crashes (gdk_x11 code, merged in systray plugin since 4.15.4 anyway) | | 
-| xfce4-stopwatch-plugin | works | | 
-| xfce4-systemload-plugin | works | | 
-| xfce4-time-out-plugin | works (coredumps on pause and criticals whem removing/re-adding the plugin) | | 
-| xfce4-timer-plugin | works (removing the plugin makes the panel quit ([[https://gitlab.xfce.org/panel-plugins/xfce4-timer-plugin/-/commit/8554435d51f43d94044009e3cceaa355e825ebc4|fixed]])) | | 
-| xfce4-verve-plugin | works (insensitive text entry) | | 
-| xfce4-wavelan-plugin | works | | 
-| xfce4-weather-plugin | works | | 
-| xfce4-whiskermenu-plugin | works (icons issue, menu window floating) | | 
-| xfce4-windowck-plugin | does not work (Libwnck) | | 
-| xfce4-xkb-plugin | crashes (Libwnck) | | 
- 
-[[|Back to Top]] 
 ---- ----
  
Line 230: Line 197:
 Info about testing specific components. Info about testing specific components.
  
-Regarding the version to test: master, or latest dev release would be best, though latest stable release as well will do. Currently there is not much difference for most components. If you dont test master, best add info on which version you tested.+Regarding the version to test: master, or latest dev release would be best, though latest stable release as well will do. Currently there is not much difference for most components. If you don'test master, best add info on which version you tested.
  
 If you run a NVidia GPU, you will need to use the "Nouveau" driver for testing, Since the proprietary NVidia driver does not provide Wayland support. (Though some things might work in some cases) If you run a NVidia GPU, you will need to use the "Nouveau" driver for testing, Since the proprietary NVidia driver does not provide Wayland support. (Though some things might work in some cases)
- 
-In general, XWayland only is relevant if native Wayland does not work. 
  
 ==== Native Wayland  ==== ==== Native Wayland  ====
Line 245: Line 210:
   * If run in a terminal emulator, make sure at least the component to test isn't already running in your X11 session (e.g Thunar as daemon)   * If run in a terminal emulator, make sure at least the component to test isn't already running in your X11 session (e.g Thunar as daemon)
   * Open a terminal in the Weston session and start the component which is to be tested   * Open a terminal in the Weston session and start the component which is to be tested
 +  * For Wayfire you need to run ''startxfce4 --wayland from a tty'' (or the equivalent via a Display Manager), but before that add the following configuration: <file ini ~/.config/wayfire.ini>
 +[autostart]
 +session = xfce4-session
 +</file>
  
-==== XWayland ==== 
- 
-  * Install the package ''xwayland'' 
-  * As above, but start weston with ''weston %%--%%xwayland'' and run the app with ''GDK_BACKEND=x11 app'' 
-  * Some additions may sometimes be necessary, like ''%%--%%backend=x11-backend.so''. See also https://wayland.freedesktop.org/xserver.html 
  
 ---- ----
Line 258: Line 222:
   * [[https://frontpagelinux.com/articles/a-deep-dive-into-the-wayland-protocol-for-linux|A deep dive into the wayland protocol]]   * [[https://frontpagelinux.com/articles/a-deep-dive-into-the-wayland-protocol-for-linux|A deep dive into the wayland protocol]]
   * [[https://gitlab.xfce.org/xfce/libxfce4ui/-/commit/57410e2dffde5271443809a0dbd0280be262ba47|Check if current display is a wayland display]]   * [[https://gitlab.xfce.org/xfce/libxfce4ui/-/commit/57410e2dffde5271443809a0dbd0280be262ba47|Check if current display is a wayland display]]
 +
 [[|Back to Top]] [[|Back to Top]]