wayfire not running automatically?

I installed wayfire via desktop-installer (which only works after reebooting, not from the installation from usb as it will say that it cant fin auto-ask) then I rebooted and could install with desktop-installer, however it did not start in graphical mode, and if I try to run it from my user I get this


1789785470006.png


My computer has 2 nvidia cards

1789785546045.png


Also this freebsd version 15.1 release-p3 generic amd64
pkfinfo | egrep "nvidia|drm"
libdrm-2.4.134,1 direct rendering manager library and headers
nvidia-driver-595.99.02 nvidia graphics driver userland
nvidia-kmod-595.99.02.1500068 nvidia dgraphis driver kernel module
and this
1789811793222.png
 
I made this tutorial a couple of years ago
before the desktop-installer existed

 
One person on discord told me that the first error I got was because I got drivers for 15.0 instead of 15.1, then I made
/usr/ports/graphics/nvidia-drm-kmod/$ make reinstall and after setting export XDG_RUNTIME_DIR=/var/run/user/`id -u` and creating the folder for my 1001 user with 777 permissions I got this errors

By the way, I have 2 cards which I can see with nvidia-smi and two monitors... should I try removing and leaving one?

Should I reinstall all from scratch and not use desktop-installer (which installed incorrect drivers??? where I report that bug for that software?)

1789961269271.png


1789961301437.png



Should I try reinstalling again from scratchs??
 
Hi I helped the OP on discord to install the Nvidia Drivers for FreeBSD 15.1 on his Dual-GPU workstation.
the machine has one Proffesional and one Consumer ADA generation GPU. Error messages seems to originate from the
Consumer 4080 GPU.

He is getting errors with Extended Open GL (EGL) that i don have any experience on.

T-AOKI ? any insight here ?

//Regards.
 
For SLI (I guess Op wants it), NVIDIA has a document below in their readme (the URL is for 595.99.02). But not for Wayland.
Chapter 23. Configuring SLI MosaicREADME/sli.html

And unfortunately, I don't have SLI-capable computer in hand to try.

Note that the documented procedure uses x11/nvidia-xconfig, but it supports old-school monolithic /etc/X11/xorg.conf only (no supports for recent "modularlized" configs).

Text version of NVIDIA's readme should be installed as /usr/local/share/doc/NVIDIA_GLX-1.0/README for your installed version (and HTML version is in html subdirectory there).
 
And for Wayfire, I'm not actually using (installed just to confirm it startup or not before submitting upgraded driver ports), but I have a script to startup Wayfire like below (not exactly the same, maybe-excessive configurations for HiDPI and some others including commented out ones are dropped here).
Possibly you'll additionally need output configuration in ~/.config/wayfire/wayfire.ini, though, if not automatically detected properly.

Code:
#!/bin/sh
export XDG_RUNTIME_DIR=/tmp/`id -u`-xdg-runtime
export XDG_CONFIG_HOME=${HOME}/.config
export XDG_CACHE_HOME=${HOME}/.cache
export XDG_DATA_HOME=${HOME}/.local/share

export WLR_BACKENDS=libinput,drm

if [ ! -d ${XDG_RUNTIME_DIR} ] ; then mkdir -p ${XDG_RUNTIME_DIR} ; fi

chown -R ${USER}:`id -g` ${XDG_RUNTIME_DIR}
chmod 700 ${XDG_RUNTIME_DIR}

ck-launch-session dbus-run-session wayfire
 
You dont need to manually create the XDG_RUNTIME_DIR anymore
or export it in your shell, its done automatically

Code:
printenv

And the location is

Code:
XDG_RUNTIME_DIR=/var/run/xdg/username

where username is your username
 
In the /var/run/xdg/username directory

You should see the wayland-0 socket

Code:
[i] Yes Master ? doas ls -l /var/run/xdg/djwilcox
total 7
srwxr-xr-x  1 djwilcox djwilcox 0 21 Sep 12:27 Alacritty-wayland-0-12598.sock
drwx------  2 djwilcox djwilcox 3 21 Sep 12:28 at-spi
drwx------  3 djwilcox djwilcox 3 21 Sep 12:27 dbus-1
drwx------  2 djwilcox djwilcox 3 21 Sep 12:28 dconf
drwx------  2 djwilcox djwilcox 2 21 Sep 12:28 doc
drwx------  2 djwilcox djwilcox 3 21 Sep 12:27 dwlb
drwx------  2 djwilcox djwilcox 3 21 Sep 12:28 emacs
drwx------  2 djwilcox djwilcox 4 21 Sep 12:30 pulse
drwx------  4 djwilcox djwilcox 5 21 Sep 12:30 speech-dispatcher
srw-------  1 djwilcox djwilcox 0 21 Sep 12:27 ssh-agent.socket
-rw-------  1 djwilcox djwilcox 0 21 Sep 12:28 tofi.lock
srwxr-xr-x  1 djwilcox djwilcox 0 21 Sep 12:27 wayland-0
-rw-r-----  1 djwilcox djwilcox 0 21 Sep 12:27 wayland-0.lock
-rwx------  1 root     djwilcox 0 21 Sep 12:27 xdg_session.0

You may need to add the following to your ~/.zshenv
or whatever shell you use

Code:
export XDG_CURRENT_DESKTOP=wlroots
 
Things to check

1) remove export XDG_RUNTIME_DIR if its set in your shell

2) make sure you have seatd and dbus enabled

Code:
sudo sysrc seatd_enable="YES"
sudo sysrc dbus_enable="YES"

3) make sure you are in the video group

where username is your username

Code:
sudo pw groupmod video -m username

4) reboot to make sure it picks up the default

5) try starting wayfire with something like this

Code:
exec dbus-run-session wayfire
 
Things to check

1) remove export XDG_RUNTIME_DIR if its set in your shell

2) make sure you have seatd and dbus enabled

Code:
sudo sysrc seatd_enable="YES"
sudo sysrc dbus_enable="YES"

3) make sure you are in the video group

where username is your username

Code:
sudo pw groupmod video -m username

4) reboot to make sure it picks up the default

5) try starting wayfire with something like this

Code:
exec dbus-run-session wayfire
And for NVIDIA GPUs specific for Wayland (in general):
  • Not having neither nvidia_load, nvidia-modeset_load nor nvidia-drm_load to be "YES" in /boot/loader.conf (blocklisted by default in recent releases, though). If any, nvidia.ko is mandatorily loaded as a dependency but too large to be loaded in /boot/loader.conf.
  • Having hw.nvidiadrm.modeset=1 (recently default, but for in cases somehow needed to install older versions by overriding version, it would be needed)in /boot/loader.conf.
  • Having nvidia-drm included in kld_list variable in /etc/rc.conf.
Shoudn't be relevant for Op (RTX 4000 series), but for RTX 5000 (blackwell) series and maybe later, too, having:
  • hw.nvidia.registry.EnableGpuFirmware=1 in /boot/loader.conf.
This tunable should be 17 instead of 1 in cases for multi GPU and mixing up RTX 5000 series and GPUs in older generation of architectures.
 
ok, thanks for all the info, the only thing I see clearly is I only have `-rwx------ 1 root djwilcox 0 21 Sep 12:27 xdg_session.0` isnie the xdg of my user.

On the other side I did make reinstall on all of the referenced graphics packages and got this launch_st an launch_err as stin an stout for the command. The error I see is A connection to the bus can't be made (which I guess makes sense from only having sdg session and not the other files from doas ls -l /var/run/xdg/tyoc213.

In loader I have

  • hw.nvidiadrm.modeset="1"
  • hw.nvidia.registry.EnableGpuFirmware=1


In rc.conf I have

  • kl_lis="nvidia-rm nvidia-modeset coretemp cuse"

IIRC I have tried also without nvidia-modeset there...


So, wdyt? is fixable? should I try with only the 4080 which is my "main" gpu?


By the way, https://download.nvidia.com/XFree86/FreeBSD-x86_64/455.38/README/sli.html that nvidia-xconfig doesnt have multigpu option, I attach also the output of nvidia-xconfig --advanced-help
 

Attachments

Not sure on Wayland, but on X11, multi GPU configurations need to:
  • have per-GPU device section within configurations having definition for BusID
  • specify only one primary GPU by putting Option "PrimaryGPU" "yes" line in any of device or OutputClass section
If multiple Option "PrimaryGPU" "yes" line exists, would likely to fail to start X11. If none, likely to go into "undefined behavior" that maybe first detected one dictates.

I consider Wayland to have fatal design issue that (at least clearly) compositor-independent system configs cannot be specified as part of Wayland specs. FATAL. Need to have human-readable text configurations like in X11. Of course, having frontend to configure them on compositors or something running on specific compositor (or generic) is OK, but having such tools doesn't mean it's sufficient.
 
My d key is failing on my laptop along w and s, but on my pc I think it is written correctly as is other keyboar.

Here is the /etc/X11/xorg.conf that was generated, didnt pass any extra arg as multi GPU from the documentation is missing as you can see in the nvidia.txt help log above.

In resume the stdout

Im trying to run wayland on freebsd, I got this error

Code:
EE 2026-09-22 18:35:26.344 - [src/core/core.cpp:123] Failed to create linux-drm-syncobj-v1 manager
II 2026-09-22 18:35:26.344 - [backend/headless/backend.c:60] Creating headless backend
II 2026-09-22 18:35:26.344 - [backend/headless/backend.c:17] Starting headless backend
II 2026-09-22 18:35:26.344 - [src/core/core.cpp:295] Renderer does not support input color transforms; wp_color_management_v1 will not be available.
II 2026-09-22 18:35:26.344 - [src/main.cpp:501] Using socket name wayland-1
II 2026-09-22 18:35:26.375 - [src/core/seat/input-manager.cpp:47] handle new input: System keyboard multiplexer
II 2026-09-22 18:35:26.376 - [src/core/seat/input-manager.cpp:47] handle new input: System mouse
II 2026-09-22 18:35:26.376 - [src/core/seat/input-manager.cpp:47] handle new input: SOAI USB Gaming Mouse System Control
II 2026-09-22 18:35:26.378 - [src/core/seat/input-manager.cpp:47] handle new input: SOAI USB Gaming Mouse Consumer Control
II 2026-09-22 18:35:26.379 - [src/core/seat/input-manager.cpp:47] handle new input: SOAI USB Gaming Mouse
II 2026-09-22 18:35:26.379 - [src/core/seat/input-manager.cpp:47] handle new input: Sleep Button
II 2026-09-22 18:35:26.380 - [src/core/seat/input-manager.cpp:47] handle new input: Power Button
II 2026-09-22 18:35:26.381 - [src/core/seat/input-manager.cpp:47] handle new input: AT keyboard
II 2026-09-22 18:35:26.383 - [src/core/seat/input-manager.cpp:47] handle new input: SINO WEALTH Bluetooth Keyboard
II 2026-09-22 18:35:26.384 - [src/core/seat/input-manager.cpp:47] handle new input: SINO WEALTH Bluetooth Keyboard
II 2026-09-22 18:35:26.385 - [src/core/seat/input-manager.cpp:47] handle new input: SINO WEALTH Bluetooth Keyboard System Control
II 2026-09-22 18:35:26.386 - [src/core/seat/input-manager.cpp:47] handle new input: SINO WEALTH Bluetooth Keyboard Consumer Control
II 2026-09-22 18:35:26.388 - [src/core/seat/input-manager.cpp:47] handle new input: SOAI USB Gaming Mouse Keyboard
II 2026-09-22 18:35:26.389 - [backend/drm/drm.c:1781] Scanning DRM connectors on /dev/dri/card0
II 2026-09-22 18:35:26.389 - [backend/drm/drm.c:1836] Found connector 'DP-1'
II 2026-09-22 18:35:26.390 - [backend/drm/drm.c:1836] Found connector 'DP-2'
II 2026-09-22 18:35:26.391 - [backend/drm/drm.c:1836] Found connector 'DP-3'
II 2026-09-22 18:35:26.392 - [backend/drm/drm.c:1836] Found connector 'DP-4'
II 2026-09-22 18:35:26.392 - [backend/drm/drm.c:1781] Scanning DRM connectors on /dev/dri/card1
II 2026-09-22 18:35:26.484 - [backend/drm/drm.c:1836] Found connector 'HDMI-A-1'
II 2026-09-22 18:35:26.484 - [backend/drm/drm.c:1861] 'HDMI-A-1' connected
II 2026-09-22 18:35:26.484 - [backend/drm/drm.c:1646] Detected modes:
II 2026-09-22 18:35:26.484 - [backend/drm/drm.c:1673]   3440x1440 @ 49.987 Hz (preferred)
...
II 2026-09-22 18:35:26.484 - [backend/drm/drm.c:1673]   640x480 @ 59.940 Hz
II 2026-09-22 18:35:26.484 - [backend/drm/drm.c:1708] Physical size: 800x330
II 2026-09-22 18:35:26.528 - [backend/drm/drm.c:1836] Found connector 'DP-5'
II 2026-09-22 18:35:26.528 - [backend/drm/drm.c:1861] 'DP-5' connected
II 2026-09-22 18:35:26.528 - [backend/drm/drm.c:1646] Detected modes:
II 2026-09-22 18:35:26.528 - [backend/drm/drm.c:1673]   3440x1440 @ 59.973 Hz (preferred)
...
II 2026-09-22 18:35:26.528 - [backend/drm/drm.c:1673]   640x480 @ 59.940 Hz
II 2026-09-22 18:35:26.528 - [backend/drm/drm.c:1708] Physical size: 800x330
II 2026-09-22 18:35:26.529 - [backend/drm/drm.c:1836] Found connector 'DP-6'
II 2026-09-22 18:35:26.530 - [backend/drm/drm.c:1836] Found connector 'DP-7'
II 2026-09-22 18:35:26.530 - [backend/drm/drm.c:1895] connector HDMI-A-1: Requesting modeset
II 2026-09-22 18:35:26.530 - [src/core/output-layout.cpp:1564] new output: HDMI-A-1 ("Samsung Electric Company S34J55x H4LTB09341")
II 2026-09-22 18:35:26.530 - [src/core/output-layout.cpp:1578] Adding with 0xa8b94060980
EE 2026-09-22 18:35:26.531 - [EGL] command: eglCreateImageKHR, error: EGL_BAD_ALLOC (0x3003), message: "EGL_BAD_ALLOC error: In eglCreateImageKHR: could not bind to DMA buffer
"
EE 2026-09-22 18:35:26.531 - [render/egl.c:818] eglCreateImageKHR failed
EE 2026-09-22 18:35:26.531 - [backend/drm/renderer.c:104] Failed to import source buffer into multi-GPU renderer
II 2026-09-22 18:35:26.531 - [backend/drm/drm.c:1895] connector DP-5: Requesting modeset
II 2026-09-22 18:35:26.531 - [src/core/output-layout.cpp:1564] new output: DP-5 ("Samsung Electric Company S34J55x H4LTB02387")
II 2026-09-22 18:35:26.531 - [src/core/output-layout.cpp:1578] Adding with 0xa8b94060980
EE 2026-09-22 18:35:26.531 - [EGL] command: eglCreateImageKHR, error: EGL_BAD_ALLOC (0x3003), message: "EGL_BAD_ALLOC error: In eglCreateImageKHR: could not bind to DMA buffer
"
EE 2026-09-22 18:35:26.531 - [render/egl.c:818] eglCreateImageKHR failed
EE 2026-09-22 18:35:26.531 - [backend/drm/renderer.c:104] Failed to import source buffer into multi-GPU renderer
EE 2026-09-22 18:35:26.531 - [EGL] command: eglCreateImageKHR, error: EGL_BAD_ALLOC (0x3003), message: "EGL_BAD_ALLOC error: In eglCreateImageKHR: could not bind to DMA buffer
"
EE 2026-09-22 18:35:26.531 - [render/egl.c:818] eglCreateImageKHR failed
EE 2026-09-22 18:35:26.531 - [backend/drm/renderer.c:104] Failed to import source buffer into multi-GPU renderer
EE 2026-09-22 18:35:26.635 - [src/main.cpp:144] Fatal error: Fatal error(SIGABRT)
EE 2026-09-22 18:35:26.635 - #1  0x353f30 <main+0x1f10> at /usr/local/bin/wayfire
EE 2026-09-22 18:35:26.635 - #2  0x82e3d044c <_pthread_sigmask+0x4fc> at /lib/libthr.so.3
EE 2026-09-22 18:35:26.635 - #3  0x82e3cfa5b <pthread_signals_unblock_np+0x5bb> at /lib/libthr.so.3
EE 2026-09-22 18:35:26.635 - #4  0x8217d22d3 <__vdso_sigcode+0x3> at [vdso]
EE 2026-09-22 18:35:26.635 - #5  0x8415d8cca <_thr_kill+0xa> at /lib/libsys.so.7
EE 2026-09-22 18:35:26.635 - #6  0x82e7fd954 <raise+0x34> at /lib/libc.so.7
EE 2026-09-22 18:35:26.635 - #7  0x82e8af919 <abort+0x49> at /lib/libc.so.7
EE 2026-09-22 18:35:26.635 - #8  0x82e7e03f1 <__assert+0x51> at /lib/libc.so.7
EE 2026-09-22 18:35:26.635 - #9  0x36c905 <_ZN2wf15output_layout_t4impl19find_closest_outputERKNS_8pointf_tERS2_+0x145> at /usr/local/bin/wayfire
EE 2026-09-22 18:35:26.635 - #10 0x36b4f9 <_ZN2wf15output_layout_t19find_closest_outputENS_8pointf_tE+0x39> at /usr/local/bin/wayfire
EE 2026-09-22 18:35:26.635 - #11 0x3a66a4 <_ZN2wf22compositor_core_impl_t9post_initEv+0x164> at /usr/local/bin/wayfire
EE 2026-09-22 18:35:26.635 - #12 0x353341 <main+0x1321> at /usr/local/bin/wayfire
EE 2026-09-22 18:35:26.635 - #13 0x82e7d223f <__libc_start1+0x12f> at /lib/libc.so.7

and this is stderr



Code:
Assertion failed: (handle || is_shutting_down()), function find_closest_output, file ../src/core/output-layout.cpp, line 2047.
dbus-daemon[31391]: [session uid=1001 pid=31391] Activating service name='org.gtk.vfs.Daemon' requested by ':1.4' (uid=1001 pid=31408 comm="wf-background")
dbus-daemon[31391]: [session uid=1001 pid=31391] Successfully activated service 'org.gtk.vfs.Daemon'
A connection to the bus can't be made
 

Attachments

I didnt use


Code:
export XDG_CURRENT_DESKTOP=wlroots

But running this Im now on wayfire
Code:
WLR_DRM_DEVICES=/dev/dri/card1 dbus-run-session wayfire

Not sure how to take a screenshot here xD (gnome-screenshot failed with all the methods)

but nvidia-smi shows both cards and some processes


Code:
nvidia-smi
Wed Sep 23 16:10:52 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 595.99.02              Driver Version: 595.99.02      CUDA Version: N/A      |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA RTX 4000 SFF Ada ...    Off |   00000000:01:00.0 Off |                  Off |
| 30%   57C    P8              6W /   70W |     281MiB /  20475MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
|   1  NVIDIA GeForce RTX 4080        Off |   00000000:04:00.0  On |                  N/A |
|  0%   46C    P8             20W /  320W |     486MiB /  16376MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A           21120    C+G   wf-panel                                 34MiB |
|    0   N/A  N/A           21122    C+G   wf-background                           186MiB |
|    1   N/A  N/A           21106      G   wayfire                                  10MiB |
|    1   N/A  N/A           21122      G   wf-background                           219MiB |
|    1   N/A  N/A           21124      G   Xwayland                                  4MiB |
|    1   N/A  N/A           21498      G   /usr/local/bin/alacritty                 50MiB |
|    1   N/A  N/A           22480      G   /usr/local/bin/alacritty                 14MiB |
|    1   N/A  N/A           25991      G   /usr/local/bin/Telegram                  16MiB |
+-----------------------------------------------------------------------------------------+

my console env

Code:
printenv
LOGNAME=tyoc213
PAGER=less
LANG=C.UTF-8
MAIL=/var/mail/tyoc213
ALACRITTY_LOG=/tmp/Alacritty-21498.log
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/home/tyoc213/bin
XDG_SESSION_TYPE=wayland
XDG_RUNTIME_DIR=/var/run/xdg/tyoc213
EDITOR=vi
ENV=/home/tyoc213/.shrc
_JAVA_AWT_WM_NONREPARENTING=1
DISPLAY=:0
PWD=/home/tyoc213
XDG_CURRENT_DESKTOP=wayfire
TERM=xterm-256color
DBUS_SESSION_BUS_ADDRESS=unix:path=/tmp/dbus-VtqMvuMt6R,guid=a48eda7cce3ae5398ae460156ab449d6
USER=tyoc213
HOME=/home/tyoc213
GIO_LAUNCHED_DESKTOP_FILE=/usr/local/share/applications/Alacritty.desktop
XCURSOR_SIZE=24
WAYLAND_DISPLAY=wayland-1
WAYFIRE_CONFIG_FILE=/home/tyoc213/.config/wayfire/wayfire.ini
SHELL=/bin/sh
COLORTERM=truecolor
ALACRITTY_SOCKET=/var/run/xdg/tyoc213/Alacritty-wayland-1-21498.sock
ALACRITTY_WINDOW_ID=81300505640864
WLR_DRM_DEVICES=/dev/dri/card1
MM_CHARSET=UTF-8
WINDOWID=81300505640864
GIO_LAUNCHED_DESKTOP_FILE_PID=21498
BLOCKSIZE=K
 
But running this Im now on wayfire
The prefix WLR_ would mean it's configuration for wlroots, not the whole Wayland environment. So possibly you could be bitten on something NOT based on wlroots (possibly XWayland and others?).

x11-wm/wayfire is one of the compositors based on wlroots (there are multiple versions of wlroots in ports tree), thus, works with the environment variable. And wlroots is a toolkit to implement compositors, but not mandatory part of Wayland environment.

And the environment variable setting WLR_DRM_DEVICES=/dev/dri/card1 may be (not 100% sure, though) the equivalent of Option "PrimaryGPU" "yes" line in configuration section for the GPU corresponding to /dev/dri/card1 on X11 (/etc/X11/xorg.conf, corresponding one for XLibre or splitted ones).

According to the output by nvidia-smi you posted, /dev/dri/card1 would be corresponding to your NVIDIA GeForce RTX 4080.
 
Back
Top