Announcement

Collapse
No announcement yet.

System76's Pop!_OS COSMIC Desktop To Make Use Of Iced Rust Toolkit Rather Than GTK

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    Dunno why so much issues with Gnome, i'm using gnome wayland 43 and actually love it, the only missing feature i have is lack of HDR support because since Gnome 42 10 bits color works by default, damn even firefox/chromium(using ozone-wayland) on wayland automatically work on 10 bit color.

    Note: HDR actually works OOB with MPV on Wayland (gpu-next + Vulkan) for Videos at least is all good.

    Comment


    • #62
      Originally posted by nist View Post

      Same issues can happen with regular gtk3 applications. These artifacts where more frequently years ago.

      The Gtk3 libs do use opengl.

      Faster or smoother? It's not the same.
      At least when forcing GTK4 to use Vulkan (probably OpenGL is still default die whatever reason), it's actually both. You just have to install the gnome-session on Pop, your experience will be 10 times better. Sure, you'll want to add one or the other Extension to make it better, but that's what Pop tried and failed with with their Cosmic Theme for Pop

      Comment


      • #63
        This is just rich. Instead of ditiching their ugly Cosmic theme and switch to vanilla Gnome with just a few additions and put work into more urgent stuff like making a software store that actually works (imagine you say you want to cater to absolute beginners, yet your software shop is so riddled with bugs that one can only recommend using the terminal instead or at least Synaptics), instead they literally waste their time building yet another DE with yet another UI toolkit "bEcAuSe It'S rUst!!!!". They get more and more ridiculous by the day.

        Comment


        • #64
          Originally posted by mmstick View Post

          Internationalization and localization are already achieved with Project Fluent. All of the GUI projects that we've written in Rust are using Fluent for translation. This aspect is really not unique to the GUI toolkit. Fluent works in command line and TUI applications the same way it works in GTK or Iced.

          Accessibility is a solvable problem and there's already intent to use AccessKit. There's plenty of time to see AccessKit features implemented while COSMIC is in development.

          A GUI toolkit being bloated is not the reason to avoid using them. Rust applications need a Rust-based GUI toolkit. GTK was just a stopgap solution to cover until such a thing is ready.
          This is another thing that people kind of fail to understand what's different with Rust. C historically had terrible/non standard package managers and hence a lot of UI libraries had to use kitchen sink approach because of how annoying C dependency management is.

          Rust on the other hand has cargo which almost every Rust project uses, so things like internationalization can be deferred to another package.

          Comment


          • #65
            Michael

            Typo/Grammar

            remove erroneous "and"

            "Iced is a cross-platform GUI library written for the Rust programming language and "focused on simplicity and type-safety.""

            should be

            "Iced is a cross-platform GUI library written for the Rust programming language "focused on simplicity and type-safety.""

            Comment


            • #66
              Originally posted by Artim View Post
              This is just rich. Instead of ditiching their ugly Cosmic theme and switch to vanilla Gnome with just a few additions and put work into more urgent stuff like making a software store that actually works (imagine you say you want to cater to absolute beginners, yet your software shop is so riddled with bugs that one can only recommend using the terminal instead or at least Synaptics), instead they literally waste their time building yet another DE with yet another UI toolkit "bEcAuSe It'S rUst!!!!". They get more and more ridiculous by the day.
              I've submitted a PR to elementary to fix the segfaults in the appcenter when an error dialog is shown. What's humorous about your bad take is that COSMIC development is a vital first step towards "make a software store". When libcosmic is ready, it will be possible to develop a software shop with it with Rust all the way down.

              Comment


              • #67
                Good for System76 to try out something new, but I hope these kinds of usability issues won't be there when libcosmic hits stable:
                Screenshot from 2022-10-02 23-33-27.png Screenshot from 2022-10-02 23-32-32.png
                Last edited by rmnscnce; 02 October 2022, 12:49 PM. Reason: excess imagery

                Comment


                • #68
                  Originally posted by rmnscnce View Post
                  Good for System76 to try out something new, but I hope these kinds of usability issues won't be there when libcosmic hits stable:
                  Screenshot from 2022-10-02 23-33-27.png Screenshot from 2022-10-02 23-32-32.png
                  is this a picture for ants?

                  Originally posted by mmstick View Post

                  I've submitted a PR to elementary to fix the segfaults in the appcenter when an error dialog is shown. What's humorous about your bad take is that COSMIC development is a vital first step towards "make a software store". When libcosmic is ready, it will be possible to develop a software shop with it with Rust all the way down.
                  Doesnt elementary make heavy use of macros? Not exactly an example of good programming.

                  Comment


                  • #69
                    Originally posted by mmstick View Post

                    I've submitted a PR to elementary to fix the segfaults in the appcenter when an error dialog is shown. What's humorous about your bad take is that COSMIC development is a vital first step towards "make a software store". When libcosmic is ready, it will be possible to develop a software shop with it with Rust all the way down.
                    Now you really have to tell me how on earth Rust and a DE written from scratch can be a necessity to have a usable store? Worst case just use the default Gnome store, that still gives you a much better experience than that Frankenstein thing S76 half-assed ripped out of elwmentaryOS.

                    Comment


                    • #70
                      Originally posted by mmstick View Post

                      It's functional programming similar to most modern javaScript GUI frameworks based on Elm architecture. Utilizes trait-based polymorphism instead of inheritance or classes. At any given point in time, the UI can be fully reconstructed from scratch based on application state, making it somewhat stateless.

                      Code:
                      use apply::Apply;
                      use iced::{widget, Length};
                      
                      let button = icon("go-next-symbolic", 32)
                      .width(Length::Units(32))
                      .apply(widget::button)
                      .map(Message::Next);‚Äč
                      Now I've generated a custom button type containing a custom icon type that emits a Message type on click. This approach makes custom widgets easy to generate.
                      Another question. that I have on Rust is about libraries. Does everything in rust have to be statically linked? Can a gui library be a shared library? I'm guessing if every binary contains the gui code, I have to recompile everything on each bug fix in the gui library. That would be hell for package maintainers. Also shipping an entire gui framework in each single would mean enormous binaries.
                      Last edited by ClosedSource; 02 October 2022, 02:01 PM.

                      Comment

                      Working...
                      X