thanks. this works. should have started off with this config instead of the default one. In anycase, i still need ck-launch-session and dbus-run-session to start sway, just for the authentication agents to work amongst others.

The fact that sway works without elogind/systemd does it translate to KDE/plasma working with wlroots and seatd as well?

I also wonder if this elaborate scheme can be summarized into a module for seatd/greetd, maybe call it wayl@ -66serv, maybe a modification of the boot-user@ module for wayland, or an addition to the module with extra options that are wayland specific.
you may hope that plasma will not work without systemd in the future not so away from us. The devs took the way to use it in their backend. They has began to replace their own init by services for systemd. Some tools are already broken if you don't have some components of systemd installed on your system.
I also wonder if this elaborate scheme can be summarized into a module for seatd/greetd, maybe call it wayl@ -66serv, maybe a modification of the boot-user@ module for wayland, or an addition to the module with extra options that are wayland specific.
This is exactly what module are used for. Accomplish complex configuration/task in simple way. A little tedious to do for the creator of the module but an easy way for the user to apply it.
Haha. Very flattering, thanks @ fungal_net. The genius here is Kenny Levinsen who created seatd/libseat and greetd. In particular libseat which provides a sane abstraction API that frees application developers from having to interact directly with elogind. Please do give him credit in your posting.
The point about sysdfree is for people to get engaged and contribute directly, criticize, exchange information, not a oneway channel and most definitely not moderated. I've had people threatening that "we will drown in our own blood" and I didn't remove their comments. If it is just commercial spam it is removed.
a month later
bbsg wroteI had been running sway for some time - in particular because my laptop display and my monitor have different screen resolutions. X does not seem to handle this well, no matter what I do via XRandR
this comment stayed in the back of my mind for quite a while but as I had no laptop or 2nd screen to try I took it for granted that 2 different resolutions didn't play well with X. Now I got to test with 3 monitors and all 3 had different resolutions.
1 is connected through vga at 1920, 1 with DP to DP @ 2560, 1 with DP to HDMI (screen) at 1600. One that swiveled +/- 90 I arranged as vertical, used the best one on the right as default, one on the left and one below. Except for having to resize and focus differently from one to the other I had no issues. This is integral i915 gfx.

When I switched to the same 1600 resolution on all three it became really fun just moving things around.
The only exception to this were a couple of old games which in full screen resolution want to only open up in the default display and can't be moved.

I did initially play with saving xrandr commands based on the help and trying to take advantage of options but some didn't make as much sense till I played with arandr.
5 aur/evdi 1.9.1-1 (42) (0.33)
    A Linux® kernel module that enables management of multiple screens.
6 aur/evdi-git 1.9.1.r4.gb0b3d13-1 (18) (1.64)
    kernel module that enables management of multiple screens, primarily for DisplayLink USB VGA DVI HDMI 
    DisplayPort video
I think this stuff was created for older kernels, in my tries with linux-lts it made no difference. Possibly the newer kernels have incorporated the ability.
bbsg wroteI had been running sway for some time - in particular because my laptop display and my monitor have different screen resolutions. X does not seem to handle this well, no matter what I do via XRandR
The problem with XRandR is that you can only set one DPI value that is applied to all monitors. Even employing complicated calculations to apply the highest dpi and then downscaling - as per the arch wiki - still results in slightly blurry text. Wayland allows setting a DPI per monitor, and so gives crisp text on all monitors. (Although I still had to spend time fiddling with fontconfig.)
That dpi setting measured as 96dpi = 100% or 1.00 is the same thing as --scale in xrandr that you can set for each port separately

example:
xrandr --output DP1 --primary --mode 2560x1440 --pos 0x0 --rotate normal --scale 0.75x0.75 --output DP2 --off --output HDMI1 --off --output HDMI2 --off --output VGA1 --mode 1920x1080 --scale 1.00x1.00 --pos 1920x0 --rotate --output VIRTUAL1 --off
Having mode = 2560x1440 and scale 0.75 is the same as 1920x1080 scale 1.00
I think the xrandr --dpi 144 can also be set within each port separately, but I don't have the monitors to play with right now.

I think the dpi setting can be set at /etc/X11 and I think you are right, that setting applies to all monitors
If you only want to enter the specification of your monitor without creating a full xorg.conf create a new config file. For example (/etc/X11/xorg.conf.d/90-monitor.conf):

Section "Monitor"
    Identifier             "<default monitor>"
    DisplaySize            286 179    # In millimeters
EndSection
https://wiki.archlinux.org/title/xorg# Display_size_and_DPI


I think exploring sway/wlroots/seatd possibilities within obarun is great, I don't want to divert you from this. I am just trying this on X for first time. The monitor I have been using for some years now is one that blew out, and I helped a friend replace it with a new one. Then instead of throwing it away I discovered it was just a transformer and I replaced it and it has been running for years.
I have things come and go from in front of me but except for keyboard and mouse I haven't purchased anything new for years ... even Ram and HD are refurbished/used items.
6 months later
Anyone got a remastered Obarun ISO with a Sway desktop for those of us who don't have the time to go through so many steps? :) *hopeful eyes*
2 months later
4L1V3 wroteAnyone got a remastered Obarun ISO with a Sway desktop for those of us who don't have the time to go through so many steps? :) *hopeful eyes*
I second that. For next release of Obarun to support Wayland out of the box would be pretty cool (a man is allowed to dream). No pressure on the devs of course.

Lord, show us the way Eric, show us Wayland!
  • [deleted]

Yes Eric, show us Wayland .... :D

More seriously I can not help in this area. I'm using an old Nvidia graphic card (GTX660) and GBM from Nvidia has not been ported on my graphic card driver, thx to Nvidia ... :(

I would like to buy an AMD card, the 6700XT is a good candidate but my wallet is empty :(
10 months later
i've totally forgot how to properly do this. enabling greetd just boots to a black screen with blinking cursor at top left...

i can run sway fine from terminal launching with "sway-desktop"

btw, where these 66serv never added to main repo before?
a year later

With the shift to the more truly user-supported obcommunity repo and to help new & existing Obarun users interested in experimenting with Wayland, I've add the following packages to obcommunity:

basu
mako
greetd
xdg-desktop-portal
xdg-desktop-portal-wlr
sway

I'm also planning to add swayidle soon.

Still to be packaged are the OP's 66 service files for greetd & seatd, as well as the very helpful ob-gtkgreet-sway.

I wanted to shout-out this thread & the OP's work. Both were critical in getting Obarun to stick for me.

If anyone in the community is running other Wayland compositors like hyprland, wayfire, labwc, etc., please consider contacting Eric for a gitlab account & packaging them for obcommunity.

Cheers, nfg

Is there a way to contact eric outside of xmpp? I've no interest in learning about that platform for the moment but have been interested in setting up and account and getting some of my custom PKGBUILDs up.

7 months later

The new syntax for the 66 CLI introduced by 66 v0.7 broke the wayland session scripts installed via the ob-gtkgreet-sway package.

I have now updated the package accordingly.

For reference, the essential changes were:
1) For /usr/share/greetd/wayland-session

diff --git a/wayland-session b/wayland-session
index fe89715..38eb2d8 100755
--- a/wayland-session
+++ b/wayland-session
@@ -73,7 +73,7 @@ multisubstitute
 # conditionally redirect program outputs
 backtick -D1 -E fd_out
 {
-  if { s6-test -v USERSESSIONLOGDIR }
+  if { eltest -v USERSESSIONLOGDIR }
   66-echo \${log_write_fd}
 }

@@ -85,7 +85,7 @@ fdmove -c 2 1
 # set up logging to read from pipe
 background -d
 {
-  if -t { s6-test -v USERSESSIONLOGDIR }
+  if -t { eltest -v USERSESSIONLOGDIR }
   importas -iu logdir USERSESSIONLOGDIR
   execl-toc -d \${logdir}
   fdmove 0 \${log_read_fd}
@@ -97,13 +97,13 @@ background -d
 # Run the command line, optionally starting session services
 #
 emptyenv -c
-ifelse -n { s6-test -v USERSESSIONSERVICETREE }
+ifelse -n { eltest -v USERSESSIONSERVICETREE }
 {
   execl-cmdline -s { $@ }
 }
 importas tree USERSESSIONSERVICETREE
-foreground { 66-all -t \${tree} up }
+foreground { 66 tree start \${tree} }
 foreground { execl-cmdline -s { $@ } }
-foreground { 66-all -t \${tree} down }
+foreground { 66 tree stop \${tree} }

 EOF

2) For the gtkgreet sway config in /etc/greetd/config.obgreet.toml:

diff --git a/obgreet/sway.config b/obgreet/sway.config
index d79d376..4885548 100644
--- a/obgreet/sway.config
+++ b/obgreet/sway.config
@@ -14,8 +14,8 @@ exec "gtkgreet -l $gtkgreet_css_opts; swaymsg exit"
 bindsym Ctrl+$mod+q exec swaynag \
  -t warning \
  -m 'What do you want to do?' \
- -b 'Poweroff' 'sudo /sbin/poweroff' \
- -b 'Reboot' 'sudo /sbin/reboot'
+ -b 'Poweroff' 'sudo 66 poweroff' \
+ -b 'Reboot' 'sudo 66 reboot'

 include /etc/sway/config.d/*
 include ./sway.config.d/*

Finally, to work with the seatd from the obextra repo, I had to add the obgreet user to the seat group:

# usermod -aG seat obgreet

The updated package should take care of all of these changes.

    about time these services would be officially in repo

    RE: still getting PGP issues with [obcommunity]:

    resolving dependencies...
    looking for conflicting packages...
    :: greetd-0.10.0-2 and greetd-nosystemd-git-0.10.0+1.g247c399f48-1 are in conflict. Remove greetd-nosystemd-git? [y/N] y
    warning: dependency cycle detected:
    warning: greetd-agreety will be installed before its greetd dependency

    Packages (3) greetd-agreety-0.10.0-2 greetd-nosystemd-git-0.10.0+1.g247c399f48-1 [removal] greetd-0.10.0-2

    Total Download Size: 0.46 MiB
    Total Installed Size: 1.12 MiB
    Net Upgrade Size: -0.01 MiB

    :: Proceed with installation? [Y/n]
    :: Retrieving packages...
    greetd-agreety-0.10.0-2-x86_64 193.3 KiB 62.7 KiB/s 00:03 [########################################] 100%
    greetd-0.10.0-2-x86_64 276.4 KiB 77.0 KiB/s 00:04 [########################################] 100%
    Total (2/2) 469.7 KiB 120 KiB/s 00:04 [########################################] 100%
    (2/2) checking keys in keyring [########################################] 100%
    (2/2) checking package integrity [########################################] 100%
    error: greetd-agreety: signature from "GPG_SIGN_KEY (Obcommunity GPG key) pkg@obarun.org" is unknown trust
    :: File /var/cache/pacman/pkg/greetd-agreety-0.10.0-2-x86_64.pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).
    Do you want to delete it? [Y/n] y
    error: greetd: signature from "GPG_SIGN_KEY (Obcommunity GPG key) pkg@obarun.org" is unknown trust
    :: File /var/cache/pacman/pkg/greetd-0.10.0-2-x86_64.pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).
    Do you want to delete it? [Y/n] y
    error: failed to commit transaction (invalid or corrupted package (PGP signature))
    Errors occurred, no packages were upgraded.

    5 days later

    Powered by Obarun