@doniks said in 2019: Time to make Unity8 great again?:
Wouldn't it then be more logical to have a greeter that is a wayland client? Or maybe the login managers from some other desktop environment could be used.
Curious what you think.
The Canonical design was for unity-system-compositor [USC] to be a system wide Mir server that supported both the greeter and login session based shells. Only USC would interact with the hardware, it would see the greeter and session shells as Mir clients. The session shells would use the mirclient API (a.k.a. "Mir-on-Mir") but that requires "Mir EGL" and is no longer possible.
This architecture has a number of desirable features: only one system-wide task has to negotiate access to the hardware, and that task also controls transitions between user sessions, login screens and lock screens.
Once Mir has a Mir-on-Wayland platform it will be possible to retain that architecture and use Wayland instead of the mirclient API.
Unity8 is open source, and anyone can package it for their favorite distro and help do the work to make it usable. There's already work done on bringing it to Debian, Arch, Fedora, and SUSE, and that presumably means any derivatives thereof as well. However, the core UBports developers are not responsible for packaging it on other distros and integrating with them. There's also too much work to still be done with keeping the phones working and fixing issues there, to really concentrate on making Unity8 usable as a daily on PCs. There are also lots of changes on more recent distro releases which significantly impact Unity8/Mir usability, as described in the other thread started about Unity8 in 2019.
@marc_aurel I'm not very familiar with it, and haven't used it myself, so unfortunately not. It seems like maybe there is an issue with the version of lxd in use on your system. Probably should ask about that separately.
But as I said, there isn't really much useful in terms of documentation in the unity8 tree. So for what you are looking for, is likely a waste of time to build it. Also, as scopes are going away, I suppose it doesn't make sense to publish the documentation. IIRC, most of the documentation is about widgets provided by Unity which scopes can "use" in their search results and previews.
So, I've had a chat with Gerry Boland (former primary developer of QtMir) and while this is not entirely straightforward to adapt QtMir to it does look feasible.
The relevant changes would be in MirSurfaceItem. Excerpts of the relevant IRC log:
to provide shaders, need to implement QSGMaterial somehow - https://doc.qt.io/qt-5/qsgsimplematerialshader.html
and then use it in https://doc.qt.io/qt-5/qsggeometrynode.html#setMaterial
https://codereview.qt-project.org/#/c/70577/7/lib/yuv_video_node.cpp looks vaguely appropriate.
YUVAVideoMaterial is an implementation of QSGMaterial, whose createShader() implementation returns that handy QSGMaterialShader
I think that's a good template to follow
QtMir would need to have a QSGMaterial that also derived from mir::graphics::gl::Program, and took the necessary shader fragments and smushed them into the shader source it returns.
Provide that as the mir::graphics::gl::ProgramFactory and then the Texture will supply you with the appropriate QSGMaterial
@gizmochicken said in 18.04 desktop - getting it working again:
Note that, in addition to posting results for Mir 0.32.1 RC4 (installed from ppa:mir-team/rc), I also posted results for Mir 0.32.0 (installed from the UBports repo). Hope that helps.
Just to follow up on this here: Unity8 is working for me with (or without) the Mir release 0.32.1 from ppa:mir-team/release.
However, it isn't working with the gdm greeter, just lightdm. (I've not experimented with further greeters.)
@gizmochicken said in No more "Mir EGL" on 1804LTS (Bionic):
At the risk of revealing the I understand less than I purport to understand, I have one more question: I know this calls for speculation, but do you anticipate that the above mentioned problematic Qt based applications will behave reasonably well (as a stopgap) under the XWayland solution that you are currently developing for Mir?
That is a reasonable expectation, although don't expect immediate progress! (We've not started coding yet,) But Qt applications are largely usable already (and Qt 5.9.4 was a significant improvement on 5.9.3).
@webdrake said in Organizing Unity8 work:
@alan_g I'll reach out to @mariogrip directly w.r.t. all things UBPorts.
You've been more than generous with your time, but is it OK to still ping you about Mir(AL)-related issues w.r.t. the USC refactoring? No worries if not.
Yes, I'm still happy to receive pings about Mir(AL) related stuff (USC or otherwise).
@alan_g and you're completely right in doing so. I just wanted to link to your post here in case someone came to https://forums.ubports.com/category/36/unity8 looking for the latest news.
Thank you for your work!