{"id":84238,"date":"2022-10-01T23:56:05","date_gmt":"2022-10-01T23:56:05","guid":{"rendered":"https:\/\/harchi90.com\/system76s-pop_os-cosmic-desktop-to-make-use-of-iced-rust-toolkit-rather-than-gtk\/"},"modified":"2022-10-01T23:56:05","modified_gmt":"2022-10-01T23:56:05","slug":"system76s-pop_os-cosmic-desktop-to-make-use-of-iced-rust-toolkit-rather-than-gtk","status":"publish","type":"post","link":"https:\/\/harchi90.com\/system76s-pop_os-cosmic-desktop-to-make-use-of-iced-rust-toolkit-rather-than-gtk\/","title":{"rendered":"System76’s Pop!_OS COSMIC Desktop To Make Use Of Iced Rust Toolkit Rather Than GTK"},"content":{"rendered":"
\n
<\/div>\n

System76 has been developing their own COSMIC desktop as the next evolution for their Pop!_OS Linux distribution built atop an Ubuntu base. Interestingly with this big COSMIC desktop undertaking, which is being written in the Rust programming language, they have decided to shift away from using the GTK toolkit to instead make use of Iced-Rs as a Rust-native, multi-platform graphical toolkit.<\/p>\n

One of the System76 engineers involved commented on Reddit about the Iced toolkit usage by COSMIC:<\/p>\n

The UX team has been carefully designing widgets and applications over the last year. We are now at the point where it is critical for the engineering team to decide upon a GUI toolkit for COSMIC. After much deliberation and experimentation over the last year, the engineering team has decided to use Iced instead of GTK.<\/p>\n

Iced is a native Rust GUI toolkit that’s made enough progress lately to become viable for use in COSMIC. Various COSMIC applets have already been written in both GTK and Iced for comparison. The latest development versions of Iced have an API that’s very flexible, expressive, and intuitive compared to GTK. It feels very natural in Rust, and anyone familiar with Elm will appreciate its design.<\/p>\n<\/blockquote>\n

Iced is a cross-platform GUI library written for the Rust programming language and “focused on simplicity and type-safety.” Iced in turn is inspired by the Elm language. The Iced toolkit works not only for Linux, macOS, and Windows, but also web applications.<\/p>\n


System76 is beginning to transition their COSMIC desktop software to using the Rust-native Iced toolkit, as shown in this example by Reddit user edfloreshz.<\/em><\/p>\n

It will be quite interesting to see what System76 ultimately comes up with for their COSMIC desktop on Pop!_OS once finalized.<\/div>\n

.<\/p>\n","protected":false},"excerpt":{"rendered":"

System76 has been developing their own COSMIC desktop as the next evolution for their Pop!_OS Linux distribution built atop an Ubuntu base. Interestingly with this big COSMIC desktop undertaking, which is being written in the Rust programming language, they have decided to shift away from using the GTK toolkit to instead make use of Iced-Rs …<\/p>\n

System76’s Pop!_OS COSMIC Desktop To Make Use Of Iced Rust Toolkit Rather Than GTK<\/span> Read More »<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-global-header-display":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","spay_email":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true},"categories":[4],"tags":[1111,1110,1108,1107,1114,1112,1109,1113,1106,1117,1115,1116],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":77749,"url":"https:\/\/harchi90.com\/eager-to-try-pop_os-22-10-well-you-cant\/","url_meta":{"origin":84238,"position":0},"title":"Eager to Try Pop!_OS 22.10? Well, You Can’t\u2026","date":"September 25, 2022","format":false,"excerpt":"Don't hate me but I've some bad (if not entirely unsurprising) news for the Pop!_OS fans who plan to pounce on the presumed-to-be upcoming 22.10 release: you can't. Before anyone groans, I'm not about to deliver a trite \u201c\u2026cOz vAnILLa 'bUnTu is beTtEr\u201d punchline Sadly, I bring word that Pop!_OS\u2026","rel":"","context":"In "Technology"","img":{"alt_text":"popos 22.04","src":"https:\/\/i0.wp.com\/149366088.v2.pressablecdn.com\/wp-content\/uploads\/2022\/04\/pop-os-2204-upgrade.jpg?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":84108,"url":"https:\/\/harchi90.com\/debian-12-switches-to-pipewire-wireplumber-by-default-with-the-gnome-desktop\/","url_meta":{"origin":84238,"position":1},"title":"Debian 12 Switches To PipeWire & WirePlumber By Default With The GNOME Desktop","date":"October 1, 2022","format":false,"excerpt":"In addition to Ubuntu 22.10 switching to PipeWire as the default audio server replacement to PulseAudio, upstream Debian has done the same ahead of their Debian GNU\/Linux 12 release next year. Jeremy Bicha of Canonical ushered through the change for switching Debian's upstream default when using the GNOME desktop to\u2026","rel":"","context":"In "Technology"","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":83557,"url":"https:\/\/harchi90.com\/apple-m1-linux-gpu-drm-driver-now-running-gnome-various-apps\/","url_meta":{"origin":84238,"position":2},"title":"Apple M1 Linux GPU DRM Driver Now Running GNOME, Various Apps","date":"October 1, 2022","format":false,"excerpt":"It was just yesterday that reverse-engineering, open-source driver developer Asahi Lina got the display output working and running Wayland's Weston. After a long day hacking away on this first Rust-written Direct Rendering Manager (DRM) driver, the GNOME desktop is even running off this Apple M1 graphics driver as well as\u2026","rel":"","context":"In "Technology"","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"fifu_image_url":"https:\/\/www.phoronix.net\/image.php?id=2022&image=system76_cosmic_iced","_links":{"self":[{"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/posts\/84238"}],"collection":[{"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/comments?post=84238"}],"version-history":[{"count":0,"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/posts\/84238\/revisions"}],"wp:attachment":[{"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/media?parent=84238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/categories?post=84238"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/harchi90.com\/wp-json\/wp\/v2\/tags?post=84238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}