this post was submitted on 11 Jan 2024
187 points (99.0% liked)

Linux

48655 readers
1528 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 7 points 11 months ago (14 children)

iced? Interesting. I though it's still pretty experimental. There's no official documentation yet, right? When I was looking at Rust UI libraries Yew and Leptos looked more mature. I guess you're confident iced have enough backing and isn't going anywhere.

How do you find working in Rust on a bigger UI project? Any issues?

[–] mmstick 9 points 11 months ago (13 children)

Iced is a lower level GUI library, similar to what GDK is to GTK. We built our own COSMIC-themed GUI toolkit around iced, which is called libcosmic. As we've gotten more and more widgets and application logic developed, actual application development with libcosmic is a breeze. Even if you do have to create a custom widget, it's much easier to creating custom widgets in GTK. We're able to develop much faster than we ever could with GTK now.

Yew and Leptos aren't comparable since they're not native GUI toolkits. These are for web developers rather than application development. It wouldn't be possible to use this for developing layer shell applets for COSMIC, either.

[–] [email protected] 3 points 11 months ago (4 children)

This sounds really cool. I don't see any documentation for libcosmic. Are you planning to promote it as an alternative toolkit for building desktop apps or do you see it more as an internal tool strictly for COSMIC DE development?

[–] mmstick 3 points 11 months ago* (last edited 11 months ago)

You can generate documentation by running cargo doc and browsing the generated web pages in target/doc. There are also examples in the examples directory of libcosmic, as well as a design demo example which is a WIP.

libcosmic is an alternative toolkit for building desktop applications and layer shell applets. It wouldn't make much sense to build a toolkit only for ourselves. It's the best way to develop layer shell applets for COSMIC, and other Wayland compositors that support the layer shell protocol.

load more comments (3 replies)
load more comments (11 replies)
load more comments (11 replies)