f_ changed the topic of #wayback to: Wayback - a wayland-based X11 environment | https://wayback.freedesktop.org/ | src: https://gitlab.freedesktop.org/wayback/wayback | logs: https://libera.catirclogs.org/wayback | matrix bridge: #wayback:catircservices.org
grufwub has quit [Remote host closed the connection]
grufwub has joined #wayback
<axtlos> navi: not necessarily, it allows you to have a smaller, more generic kernel build and supply the required kernel modules in the initramfs and is practically required for a luks encrypted root
_whitelogger has joined #wayback
<Saijin_Naib[m]1> @f_ the log from trying to run wayland, current version as of a few minutes ago
aren has quit [Server closed connection]
aren has joined #wayback
<Saijin_Naib[m]1> https://bpa.st/6HDQ
<axtlos> Saijin_Naib[m]1: Are you trying to run it nested in another WM/DE?
<Saijin_Naib[m]1> Nope, I killed lightdm from openrc runlevel, rebooted to terminal, logged into terminal and then ran the command ariadne suggested
<Saijin_Naib[m]1> wayback-session dbus-run-session startxfce4
<axtlos> are you able to launch any other compositor from the tty?
<axtlos> like sway for example
<Saijin_Naib[m]1> no idea, I only have wayback, xfce, and whatever else setup-wayland-base provided
<Saijin_Naib[m]1> I can try sway, I guess
<Saijin_Naib[m]1> sway gives similar xcb error
<Saijin_Naib[m]1> Openbox works
<axtlos> ok so its not a wayback issue but a general wayland issue for you
<axtlos> is DISPLAY set?
<Saijin_Naib[m]1> Mmm
<axtlos> only reason i can think of why its trying to open in a nested X11 window is that it sees DISPLAY being set
<Saijin_Naib[m]1> echo $DISPLAY shows :0.0
<axtlos> yeah that would be the issue then
<Saijin_Naib[m]1> I shouldn't have that?
<axtlos> well assuming you're in a tty, and there is no display manager or X session running, no
<axtlos> optimally you should figure out why its still set to :0.0, but if you just wanna get wayback running you can simply unset DISPLAY and it should work
<Saijin_Naib[m]1> https://bpa.st/OA6A
<Saijin_Naib[m]1> had to install seatd, start it, and add doas to my prior cmdline and got that log
<Saijin_Naib[m]1> I think maybe XFCE4 isn't XWayback friendly yet
<axtlos> no you shouldn't need doas
<axtlos> xfce defiently works with wayback
<Saijin_Naib[m]1> if I didn't it said that I couldn't connect to the seatd socket
<axtlos> make sure you're added to the seat group
<Saijin_Naib[m]1> ahhhhhhhhh
<Saijin_Naib[m]1> that'll be it
<axtlos> also are you sure that there is no other X session running?
<Saijin_Naib[m]1> Yes? All 6 F1-F7 are tty, I took out that envvar for display, and I disabled my DM
<axtlos> ok weird that xfce sees something running at :0 then
<Saijin_Naib[m]1> Could it be my saved xfce session itself?
<axtlos> unless xfce is actively running, probably not
<Saijin_Naib[m]1> Sway runs now
<axtlos> ok try wayback then
<Saijin_Naib[m]1> So, your rec to remove envvar plus I guess adding seatd helped
<axtlos> also you're on alpine, right?
<Saijin_Naib[m]1> Yep, edge x86_64, updated a half hour ago
<Saijin_Naib[m]1> Oh god, sway is like vim, how do I quit 😭
<axtlos> press win+ctrl+e
<axtlos> or win+shift+e
<axtlos> it should show a "do you want to quit" dialog
<Saijin_Naib[m]1> Yes
<Saijin_Naib[m]1> Xwayback shows empty hashed background and X cursor
<Saijin_Naib[m]1> Working?
<axtlos> yeah that means its working
<axtlos> although it seems that startxfce4 doesn't work anymore, wayback-session xfce4-session does
<Saijin_Naib[m]1> That worked‽
<Saijin_Naib[m]1> About XFCE shows X11 Windowing, I guess as designed
<axtlos> alright it seems that something about the way we set the DISPLAY envvar broke startxfce4
<Saijin_Naib[m]1> Let me try after rebooting so no xwayland or sway or whatever is maybe running
<Saijin_Naib[m]1> startxfce4 works from a clean reboot from a logged-in tty
<axtlos> as in startxfce4 in a wayback-session?
<Saijin_Naib[m]1> No, just invoked by itself
<axtlos> oh yeah, it starts xorg itself when it notices no display being set
<Saijin_Naib[m]1> wayback-session xfce4-session worked
<Saijin_Naib[m]1> But keyring didnt login, touchpad gestures dont work, etc
<axtlos> which is why it not working properly with wayback is weird, it seems that at some point the DISPLAY envvar gets lost
<axtlos> xfce has touchpad gestures?
<Saijin_Naib[m]1> Minimal, yeah. Tap to click, two finger tap, scrolling
<axtlos> oh those
<axtlos> yeah input handling isn't properly implemented yet
<Saijin_Naib[m]1> Well, that is exciting that it worked
__0x1eaf has joined #wayback
norwoodites has joined #wayback
pinskia has quit [Ping timeout: 265 seconds]
pinskia has joined #wayback
norwoodites has quit [Ping timeout: 272 seconds]
<navi> axtlos: i meant that in a "if you setup already builds a minimal kernel that does all you need it to
<navi> " kinda way
<f_> I wonder if I should write docs on how to get wayback running on 'bare' alpine
<f_> its requirements are nothing special but might be for people who never tried wayland before
f_|ic has joined #wayback
<dok> i would be interested to read such thing
<axtlos> navi: oh yeah then you're right
<Consolatis[m]1> that hardcoded libexec path for wayback-compositor is slightly weird IMHO. Why not a usual executable in $PATH? makes testing much easier as one doesn't need to meson install nor needs to set env vars but just symlink the 3 executables into ~/bin/. Ended up modifying meson.build to make that work.
<Consolatis[m]1> another thing I noticed is that currently its not possible to use the nested wayland backend of wlroots because the WAYLAND_DISPLAY env var is cleaned too early, so it falls back to the nested X11 backend. are you up for an MR to allow using the wayland backend?
<f_> Consolatis[m]1: Well we need to make sure it's unset for things running in the compositor..
<f_> Maybe the compositor can explicitely clean it up for things running inside it instead of having Xwayland do that
<axtlos> Consolatis[m]1: RE: libexec stuff; this is done on purpose, wayback-compositor isn't meant to be executed by the user directly, which is what libexec is made for
<f_> But we also need to ensure that it is not set in the session
<Consolatis[m]1> f_: from a quick glance it looks like wayback-compositor doesn't actually start anything. and when testing WAYLAND_DISPLAY is not set within the x11 session
<f_> Yes, it doesn't start anything
<f_> hm, maybe it's enough to just unset it in wayback-session before running the env
<Consolatis[m]1> i just moved unsetenv("WAYLAND_DISPLAY") after the wayback-compositor fork and things seem to work well
<f_> awesome.
<f_> Yeah so feel free to submit an MR
<Consolatis[m]1> done
<Consolatis[m]1> re libexec: alright, if that is how things are intended I'll just keep my meson.build changes locally or use the env var
<f_> I personally use the envvar when I need to use a specific binary
<f_> MR LGTM, by the way
<f_> now we just wait for someone to merge it :p
<Consolatis[m]1> i do have to modify my local meson.build anyway because I build wlroots as subproject and my meson version doesn't appear to like a add_global_arguments() after executing a subproject
<Consolatis[m]1> could also create a PR to fix that if interested
fitrh has joined #wayback
<navi> Consolatis[m]1: re: why not an exectuable in PATH -- because wayback-compositor is an implementation detail that should not be invoked by users, binary in PATH share a global namespace and are meant to be user facing, like Xwayback and wayback-session
<navi> i do intend to improve how meson handles the wayback-compositor though
<navi> to make non-installed uses easier
<f_> It's supposed to be working as an X Server, it using wayland internally is just a minor detail ;)
__0x1eaf has quit [Quit: leaving]
fitrh has quit [Ping timeout: 272 seconds]
<f_> Been having some fun
<f_> wayback in wayback in wayback in wayback
<f_> or: WindowMaker in IceWM in WindowMaker in IceWM
HadiChokr[m]1 has quit [Quit: Idle timeout reached: 172800s]
__0x1eaf has joined #wayback
<Consolatis[m]1> being able to run nested eases testing future multiple output support btw, WLR_WL_OUTPUTS=2 for the wayland backend and WLR_X11_OUTPUTS=2 for the X11 backend. resizing the nested window is also fun
<Consolatis[m]1> resizing nested outputs can be handled via the wlr_output->events.request_state event
<Consolatis[m]1> oh, sorry. request_state is actually already implemented
<Consolatis[m]1> there still seems to be missing something, at least mate-session is just scaled weirdly if decreasing the nested window height
<axtlos> Consolatis[m]1: yes, the actual x display doesn't change its resolution with the wayback compositor window, so it'll always stay with the initial geometry when first launching it
f_|ic has quit [Quit: Connection closed for inactivity]
<Consolatis[m]1> i see. just playing around with this a bit. seems all that is required is for the compositor to reconfigure the toplevel to the new layout size
<Consolatis[m]1> I don't intend to work on it further but feel free to take things you want from the branch (or not), up to you
<axtlos> what do you mean with "adds multiple outputs"?
<Consolatis[m]1> well, support for running with multiple monitors
<axtlos> as in xinerama support?
<Consolatis[m]1> no, nothing on the X11 side
<axtlos> oh
<Consolatis[m]1> it basically just stops using fullscreen and hardcoding the geometry for Xwayland and instead updates the size of the xwayland xdg toplevel dynamically
tomate has quit [Quit: The Lounge - https://thelounge.chat]
<Consolatis[m]1> so it will likely have issues with differently sizes outputs without some X11 side support for xinerama
<Consolatis[m]1> ^ a proper implementation should also use the wlr_output_layout.events.change signal instead of sprinkling update_xwayland_size() everywhere, one is also missing for the output destroy handler. As said, its really just a quick proof-of-concept
<axtlos> ohh ok i see so it just stretches the xwayland window over every monitor
<Consolatis[m]1> basically
tomate has joined #wayback
<Consolatis[m]1> I think that is the only option wayback has. It just needs to somehow tell the X11 side about the actual screen layout so "dead" zones aren't used
<axtlos> i mean yeah, that's how xinerama works
<Consolatis[m]1> force pushed a fixup for the missing output destroy handler and also added output mapping for absolute pointers so nested multi-output mouse events work correctly
<f_> axtlos: RE !67, why are you getting rid of getopt?
<f_> getopt_long_only supports '-opt thing', that's why I switched to it
<axtlos> because getopt doesn't allow for the argument style that xorg has
<axtlos> xorg also does '+opt'
<f_> Aha
<f_> got it then
<axtlos> im not sure if anyone actually uses XDM, but it works with Xwayback at /usr/bin/X now
<f_> oh awesome
<axtlos> lightdm doesn't properly launch the greeter for some reason
<f_> I just use greetd myself
<axtlos> yeah same
<f_> kinda cheating with sway running for the greeter hehe
<axtlos> just wanted to see how many X programs work with Xwayback at /usr/bin/X
<f_> yeah that's nice
<f_> tbh xorg's args style is weird
<axtlos> yeah i dont like it
<axtlos> Xorg compat makes me program things i would never dare to do
<f_> but eh, we're aiming for compat, so don't have other choices :p
* f_ wondering if we can't somehow add some stuff here and there that's not in xorg, wrt to CLI, while still being compatible with whatever xorg does
<axtlos> as in arguments?
<f_> yeah that kind of thing
<f_> but maybe for later
<axtlos> yeah that should be possible
<f_> left some review comments in your MR, ty!
<f_> ^^
<f_> also !65
<axtlos> can issuses be pinned in gitlab?
<f_> idk
<f_> What do you want pinned?
<axtlos> i think #44 would make sense to pin
<axtlos> so that it doesn't get buried
<axtlos> and maybe also #14
<ConanKudo[m]1> here's no such thing as pinning in gitlab
<f_> At that point I think a 1.0 milestone on gitlab would be a good idea
<f_> where we can put stuff we absolutely need for a 1.0 release
<axtlos> oh yeah that'd work
<f_> (note, 1.0, not 0.1)
<f_> I think Wayback in its current state should be good for a 0.1 release
<axtlos> yeah with being able to be somewhat used as /usr/bin/X it should be a good time to make a release
<f_> yep
<f_> We just need someone to write the announcement :p
<axtlos> probably Ariadne if she has the time/wants to
<f_> yeah I think she's pretty good at writing announcements
<f_> Anyway whoever does it feel free to open an MR/issue in the wayback site repo :P
<f_> Also maybe we should try to agree upon some release schedule, what do you think?
<f_> I think it'd be nice to make releases every few .. months?
<f_> Obviously they'd all be alpha-quality releases at least until 1.0
<axtlos> yeah semi regular releases would make sense as 'snapshots' while we implement X compat
<f_> I mean, releasing e.g. 0.2 in a few months, 0.3 in a few more months, etc
<f_> or maybe some different versioning
<f_> I don't know
<f_> Anyway I think let's create a 1.0 milestone to put the stuff we'd need for a stable release
<f_> off the top of my head #51, #22, #14, #8 are important IMO
<f_> anything else?
<f_> Oh, also #44
<f_> or maybe not, that's for 0.1
<Consolatis[m]1> some IRC bot resolving issues and mrs would really be great here
<Consolatis[m]1> wlroots uses https://gitlab.freedesktop.org/emersion/glhf
<Consolatis[m]1> it seems to also provide a webhook target for gitlab events
__0x1eaf has quit [Quit: Lost terminal]
<ConanKudo[m]1> "gitlab hook forwarder" is definitely not what comes to mind when I see "glhf"
<f_> Consolatis: I'll see if I can bring one sometime.
<f_> Oh sounds easy to do, that's nice
<f_> With approval from the others I'll see if I can bring mine in upcoming days.
<axtlos> would certainly be useful for linking issues and merge requests
<axtlos> i wouldnt mind it
<ConanKudo[m]1> I don't care one way or another
anabelae[m] has joined #wayback
<anabelae[m]> Hi. Pardon my stubbornness, but is Wayback a compositor running xwayland in rootful mode? Quoting the wayland book "Xwayland compatibility compared to a native X server will probably never reach 100%. Desktop environment (DE) components, specifically X11 window managers, are practically never supported. An X11 window manager would not know about native Wayland windows, so it could manage only X11 windows." <- is this what Wayback is
<anabelae[m]> going to do, reach 100% compatibility? If so, has it ever been attempted before, when I searched it up I only really found this article https://www.phoronix.com/news/XWayland-Rootful-Useful
bigmac has joined #wayback
<navi> that quote is about rootless xwayland
<navi> it doesn't apply to wayback since, wayback does not handle Wayland clients (that aren't xwayland that is)
<Consolatis[m]1> https://git.linuxping.win/12to11/12to11 could potentially be something to look into long-term
<Consolatis[m]1> or accepting wayland clients via the usual compositor but create fake X11 windows for them and synchronize their state
<Consolatis[m]1> but that would mean that not all X11 functions would work correctly like screensharing. with something like 12to11 I assume that would work as well
<ari> out of curiosity, what currently happens under wayback (+ some X11 WM running in the rootful Xwayland) if someone runs a wayland-native app?
<navi> nothing
<Consolatis[m]1> nothing, it wouldn't work because the wayland compositor is not exposed to the X11 environment
<navi> wayback doesn't create a socket in rundir
<navi> so the client would not find any way to talk to the compositor, the only socket we make is inherited directly to xwayland via exec
<ari> ok, thanks