User's banner
Avatar

Michael Murphy (S76)

mmstick@lemmy.world
Joined
59 posts • 330 comments

I’m a System76 engineer / Pop!_OS maintainer. I’ve been a Linux user since 2007; and Rust since 2015. I’m currently working on COSMIC-related projects.

Direct message

Not ready to release yet

permalink
report
reply

Wayland compositors use IPC over a UNIX socket to communicate with Wayland clients. To increase security and enable sandboxed applet support, COSMIC applets use the security-context protocol for their IPC connection to the compositor. To be an applet, COSMIC applications use the layer-shell protocol to behave as an applet. Neither of which were made for COSMIC. Some other Wayland compositors support these protocols. You can see which compositors support the protocols at the bottom of the wayland.app protocol pages.

permalink
report
parent
reply

In practice, because Rust libraries are always statically-linked, the MPL-2.0 is equivalent to the LGPL in spirit. Meanwhile, because of the static linking restrictions in the LGPL, the LGPL is effectively no different from the GPL. Hence, you’re going to find a lot of open source copyleft projects from the Rust ecosystem preferring either GPL or MPL-2.0, where MPL-2.0 is used in libraries where LGPL would have used previously in C projects. Dynamic linking is essentially going the way of the Dodo.

permalink
report
parent
reply

The Linux kernel already allows proprietary modules via DKMS, and a handful of vendors have been using this for decades, so this is no different. Case in point: NVIDIA driver, and Android vendor drivers.

permalink
report
parent
reply

All source code in Rust is statically-linked when compiled, which thereby renders the LGPL no different from the GPL in practice. For Rust, the MPL-2.0 is a better license because it does not have the linking restriction.

permalink
report
parent
reply

Niri is also based on the smithay library we use for COSMIC, so there’s some collaborative work between COSMIC and Niri on Smithay.

permalink
report
parent
reply

applets live in their own process and communicate via Wayland protocols (behind a COSMIC API)

Even better. A COSMIC API was not necessary since Wayland protocols already exist for this (layer-shell and security-context).

permalink
report
parent
reply

It already is available. See the links on the COSMIC webpage: https://system76.com/cosmic

permalink
report
parent
reply

No, we won’t be spending any development time on porting all of the patches in 22.04 to 24.04. GNOME is done.

permalink
report
reply

You should stop using Linux then. The Linux kernel, along with many open source software, is developed and sponsored by for-profit organizations. Either directly or indirectly. Without them, open source wouldn’t be able to thrive.

permalink
report
parent
reply