-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wayland meta issue #134
Comments
That will go in the addon package bunsen-configs-wayland. (I don't know yet if we will need separate lite/base package variants, but I'm hoping not.) We can either install a physical symlink - there are a few already in bunsen-configs - or put a line in debian/bunsen-configs-wayland.links:
It should indeed - thanks for catching the omission! Now fixed and pushed. W: bunsen-configs: recursive-privilege-change "chown -R" [postinst:41] Do we know in advance the names of the files whose perms need changing? If so then this:
looks like the way to go.
As with the bunsenlabs-session-wayland symlink, it will be installed by the (as yet nonexistent) package bunsen-configs-wayland. It should not be installed by bunsen-configs because that would cause a non-functioning boot menu item to appear for users without bunsen-configs-wayland. As for its location in the source tree, I'm thinking of wayland/ as analagous with the root directory of the full source tree, so how about putting the .desktop file in wayland/ ? Its installed location will be determined by a line in debian/bunsen-configs-wayland.install so it could in principle go anywhere in the source. The final organization of files in the source tree can be changed if it seems desirable for some reason. There are quite a lot of them though! NOTE bunsen-configs-wayland will be an addon package that depends on bunsen-configs to provide most of the necessary files. Only the extra wayland-only files will be shipped in bunsen-configs-wayland.
Yes, the files in wayland/skel can be installed by bunsen-configs-wayland into /usr/share/bunsen/skel, just like those from bunsen-configs. I don't see there being any files installed by both bunsen-configs-wayland and bunsen-configs? |
Won't at all methinks. A meta package and a netinstall should both be fine dependent on any one of the parent
I prefer the latter.
Right: should be enough to do the following:
"each file" - probably forbidden. IIRC - we have to do something similar with
And we don't want that. Ok, so I'll think of something for that.
No need for that. Everthing wayland can go in
Yes, that makes sense.
Yes |
Sure, if greetd.conf is the only file that concerns us, that should be fine.
A wild card is effectively the same as the -R chown option. I think the issue is that arbitary files will have their permissions changed, so we need to explicitly name them.
Yes I remember having to do that so the greeter could remember the previous login.
I think it's OK. Let bunsen-configs-wayland install bunsenlabs-wayland.desktop in /usr/share/wayland-sessions. The file can go in wayland/ in the source tree.
That's what I thought. |
In fact, we ought to be testing for the existence of the file - not just the directory - greetd.conf before trying to operate on it. And if bunsen-configs happens to be installed before greetd then the file won't exist. Since greetd isn't a dependency of bunsen-configs (has no reason to be) then that isn't guaranteed at all. We need to think a bit more about this - at least move that postinst code from bunsen-configs to bunsen-configs-wayland and make greetd a Recommend of bunsen-configs-wayland. (It doesn't have to be a hard Depend because LightDM is an alternative.) The same all applies to /var/cache/nwg-hello/cache.json too. Actually I don't know if that file is installed at all or created on the fly when running nwg-hello. Ideally the Debian package maintainers of greetd and nwg-hello should handle these file permissions rather than us. Maybe that will happen in future releases? |
^I was thinking that. And nwg-hello.
I checked the package, and it is installed by the package. The thing is, we are the ones who discovered these things, well you for nwg-hello cache and @nwg-piotr about the About Since |
About greetd.conf, I was forgetting that it doesn't come with greetd, but as you say, has to be created. Presumably it will be installed by bunsen-configs-wayland, in which case it's our responsibility and no worries about whether greetd was previously installed or not. Still probably good practice to do a test for its existence before chowning it in .postinst though. (/var/cache/nwg-hello/cache.json)
In that case, as you say, it sounds as if nwg-hello should apply the right permissions to cache.json. |
My emphasis added. By that rationale, we should remove the greetd stuffs from An aside: how in
How does |
Yes, good question. I don't have much time today, but please let me think about that... I seem to remember there might have been a reason to put the greetd stuff in bunsen-configs & friends.
Looks right.
No user interaction. I think dpkg will check if any of the three is installed, and if not will install the first in the list. |
Yes, I was a bit careless above - it looks at first as if there's no need for greetd configs in the Carbon Xorg system, but what I was thinking is: we don't want to have to switch between Display Managers when installing bunsen-configs-wayland on top of bunsen-configs. In fact I'm not sure how changing between LightDM and greetd-cage-nwg-hello could even be done on the fly. https://forums.bunsenlabs.org/viewtopic.php?pid=136436#p136436 So I think we'll have to choose eventually one of those two options for Carbon, and make it the default for both Xorg and Wayland. So for now I wanted to have the config files for both options available in bunsen-configs. A couple of text files don't add much bloat. If it looks possible, I'd like to stay with LightDM even for launching Wayland sessions because it's better looking than nwg-hello, has more flexibility and the interface works a bit better. But if the annoyances prove unfixable* and we have to use greetd and friends, that option can be made available now to make things smoother down the road. *) The 1s delay in startup script helps a lot with LightDM. |
Changing is manual and painful! Done it a few times but can't recall the exact commands but pretty much disable lightdm service, enable greetd service, reboot and hope for the best! I know my way round different TTY's so that's partly why I didn't use cage to begin with because the TTY support was rather new.
That's fair. And I do hope we can make everything get along with lightdm.
I'm sure we'll figure it out. I have a few bare metal test beds (including the troublesome HP) so one way or another I think we'll get lightdm to work in 99.9% of cases.
Wouldn't matter if was 2 so long as it works. |
That pesky double-cursor thing doesn't seem to be LightDM - I got it today on a nwg-hello window. Probably qemu. |
Never seen that, maybe a graphics driver issue? What native machine you using? |
Deleted the proposed fixes for yaru/adwaita focus bug, the CSS breaks the rubberband. I'm afraid the CSS has to be fixed at the base level but I can't figure it out :( |
^ As you gents know, I've been dealing with other things. But... What fix is this? I saw briefly on the forums that there is a particular focus issue for a particular instance, but has anyone filed a bug with the Ubuntu Yaru team? The major reason I proposed using Yaru as the default theme, instead of us hacking a theme via Oomox or hacking another theme, was that Ubuntu has major resources and an astronomical user base, while we're a small team of eager, well informed hobbyists (no offense). So let's file a bug first, and we can hack this issue later if nothing happens upstream. |
^Of course you are 100% right. The bug starts at the |
@johnraff post on the forum yesterday illustrates the bug https://forums.bunsenlabs.org/viewtopic.php?pid=139467#p139467 I can get it looking much better with a small external CSS file - almost not noticeable and fixed the rubber band. So if bug reports fall on deaf ears at least we have a work around. |
It's also very easy to set file highlights off by default in the user Thunar configs: |
Isn't Adwaita now libadwaita? If so... https://gitlab.gnome.org/GNOME/libadwaita/-/issues But I think the Yaru git is a better place to post the bug, as it's the current default Ubuntu gnome-shell/GTK/icon theme. Nice job finding workarounds! A small team of eager, well informed hobbyists indeed! |
An oldish HP Desktop (HP ProDesk 600 G1 SFF)
on Carbon/Wayland VM:
on Carbon/Xorg VM:
The issue only occurs when running Wayland, either a logged-in session or sometimes nwg-hello too. I don't know if this could be a hint: |
Issue filed - ubuntu/yaru#4154 |
Could be as wayland relies a lot on EGL |
Same as I posted in the yaru bug report but does a decent job of working around the issue: /* goes to $HOME/.config/gtk-3.0/gtk.css */
.thunar .view:selected { background-color: @theme_selected_bg_color; }
.thunar .view { background-color: alpha(@theme_bg_color, 0.8); } |
So it looks as if we can deal with the Adwaita/Yaru highlights issue one way or another. :) Anyway, since /etc/greetd/greetd.conf will be installed by bunsen-configs, then each configs, configs-lite, configs-base .postinst file can have the code @01micko posted above, just with a changed test for the existence of the file instead of the directory. I'll edit the postinsts like this:
Since bunsen-meta-wayland-addon (see various notes and edits below) will Depend on one of the bunsen-configs packages it can count on that job already having been done. EDIT: after all, I don't think bunsen-configs-wayland-addon will be needed, if bunsen-meta-wayland-addon has the needed dependencies instead. Maybe more useful will be to later split off a bunsen-configs-xorg package that the pure Wayland session needn't install? Just something I thought of while writing about dependencies - maybe the Wayland configs package we're currently talking about should be named bunsen-configs-wayland-addon? Because some time in the future there might be a standalone BL Wayland setup depending on its own bunsen-configs-wayland package, with no Xorg-related dependencies. This way we'll avoid a possible name clash down the road. Dependencies Almost a topic in itself, but just to put down how I'm now thinking the pieces will fit together - of course this might turn out to need changing. EDIT: some rethinking of dependencies is needed, so please see the post I'm just about to add below. bunsen-meta-wayland-addon will Depend on bunsen-configs-wayland-addon will Depend on All the bunsen-configs variants will Depend on (or possibly Recommend) whichever Display Manager we choose for Carbon - either LightDm or a greetd-cage-<some wayland greeter> chain - and configs files for [i]both[/i] those options will be shipped. (Right now <some wayland greeter> looks like nwg-hello which is in Debian, but there are a couple of alternatives - eg ReGreet ) Does that make sense? |
Yes, but I can't have a good look until the WE. Busy IRL atm. |
Sure, there's no hurry - I just wanted to get something down "on paper". |
EDIT: I've finally realized that there's probably no need for a separate bunsen-configs-wayland-addon package at all.
Further thought: an example of a file that both bunsen-configs-wayland-addon and a hypothetical future bunsen-configs-wayland would have to ship is EDIT: I don't think there will be any need for bunsen-configs-wayland-addon
Packages' internal details can be tweaked later - we just want to avoid making things difficult for ourselves when we put out the "pure" Wayland system (I don't know if that will come with Carbon/Trixie or not). Probably just getting the package names and dependencies right will do for now. So another attempt at a provisional "Dependencies" map: Dependencies bunsen-meta-wayland-addon will Depend on
All the bunsen-configs variants will Depend on (or possibly Recommend) whichever Display Manager we choose for Carbon - either LightDm or a greetd-cage-<some wayland greeter> chain - and configs files for [i]both[/i] those options will be shipped. (Right now <some wayland greeter> looks like nwg-hello which is in Debian, but there are a couple of alternatives - eg ReGreet ) We want to keep code duplication to a minimum and there will be a lot of common config needed by both Xorg and Wayland sessions. This is starting to look to me as if we might need a bunsen-configs-xorg with Xorg-only stuff, along with bunsen-configs-wayland and also bunsen-configs to hold the stuff needed by both Xorg and Wayland. (That would include the Display Manager stuff I guess.) There's a lot of stuff in the -configs- package and I want to look it all over at some point, but I think most of it might turn out to be session-agnostic, at least wrt Xorg vs Wayland. I hope the light/base variants can be kept out of the Xorg/Wayland split - I'd hate to have to maintain all the permutations of bunsen-configs-wayland-lite, bunsen-configs-xorg-base... It's all rather complicated I'm afraid. Let's try and build it up bit by bit. |
Ok, a bit to digest there. Let's hope we don't need Q. Can we write a
So many things can be if [ X is true ]; then
do this
elif [ W is true ]; then
do that
else
do other
fi Part of the problem it seems is that only you, @hhhorb and me are working on any kind of wayland stuff, although I have seen the odd new forum member express some interest, Anyway, as you said..
This is where we have to K.I.S.S. and I think we are on the right track. |
It would be nice if we can continue using LightDm. I've reverted to the standard Debian version in my Carbon VM and right now I'm not getting any issues. If something should come up in the future we can try switching to the git HEAD version in your repo and see if any of the post-release commits have fixed things.
I'm hoping to get an improved bunsen-configs out soon with a cleaned-up startup script. (One think I want to look at is how much of the Debian Xsession script is Wayland-compatible.) If you were OK with a very-first-steps wayland config tree (like what you put in the netinstall script some time ago) being released in an alpha bunsen-configs-wayland-addon then maybe that could go out soon too? Using lightdm for now anyway. As we've discussed, it looks as if the DM is one thing that both the Xorg and Wayland sessions will need to agree on, at least for now.
As an alternative to nwg-greet that does have its appeal for sure. An in-house app means it can be exactly the way we want it, and shell is good for maintainability. But as long as LightDm is working I'd be for staying with that - all the features it offers would be a lot of coding work to emulate. BTW your recent work with gtk3dialog and the new wallpaper setter is truly impressive! I'm just about to install them both on my VM...
Yes indeed. Having all the code together in the same file makes life easier for devs, and the extra bloat for users is minimal.
We aren't exactly over-staffed. Then when users do come up with useful ideas, they so often seem to get dropped. To be honest, I think we might be getting more involvement from community members if we had discussions like this one over on the forum. I doubt if many people browse GitHub for interesting topics.
Yes I think so too. |
Before I forget, some of this was gone over a bit in July - I think it's still more or less in line with what we're saying now. |
Yes, just looked. All fairly relevant. |
I've been allowing myself to be distracted by one thing after another, but finally committed this:
|
Hopefully, with xfce working on wayland, lightdm issues will be solved and we won't need nwg-hello/greetd. I tried the xfce wayland session and while it uses labwc the xfce-panel was still thinking it was using X (and consequently did not show - it was however running) so they have some work to do, although they did have their menu working on right click. |
xfce committed a workaround for the lightdm VT-switch-time issue in November: xfce-mirror/xfce4-session@268e2fc So we can probably expect improvements to come down the pipe fairly quickly. |
BL threads, in case you have any comments to add: |
Just a TODO list for wayland stuffs
bunsenlabs-session-wayland -> bunsenlabs-session
bunsen-configs-[base|lite].postinst
should be GREETD="/etc/greetd"as in
bunsen-configs.postinst` or was there a reason for the omission?bunsen-configs/debian/bunsen-configs-base.postinst
Line 14 in 29f2893
/usr/share/wayland-sessions
wayland/skel
- (my job) - then figure out how to incorporate it - I'm guessing @johnraff you have an idea for that.If/when I think of more I'll add to this list.
The text was updated successfully, but these errors were encountered: