Comments

This profile is from a federated server and may be incomplete. Browse more on the original instance.

mmstick, (edited ) to linux in Linux Distros Evolution - January 2024 Update: Pop!_OS in Decline?
@mmstick@lemmy.world avatar

There are new versions released every two or three weeks. I’m about to release Linux 6.6.8 with Mesa 23.3.2. We have Pipewire 1.0.0 and NVIDIA 545. ISOs are regularly rebuilt with our latest updates.

mmstick, (edited ) to linux in December Updates: The Spirit of COSMIC
@mmstick@lemmy.world avatar

COSMIC Edit is being developed by our manager through personal motivation; who also developed cosmic-text, so this is the perfect playground for simultaneously advanced cosmic-text, and developing useful real world software with it. The git diff view was not yet part of planned designs, but it took only a portion of a day to implement. It adds a useful test case for the cosmic-text library, and improved cosmic-text as a result.

We’re all paid a full time salary to work on COSMIC and Pop!_OS. Each person on the team is going to spend a full day writing software, regardless of what they’re working on, so concerns about burnout are somewhat silly. Burnout is typically caused by working overtime for extended periods of time. System76 has never required developers to work overtime to meet a deadline, and variety of workload can alleviate mental fatigue, so burnout is not a thing here.

mmstick, (edited ) to linux in December Updates: The Spirit of COSMIC
@mmstick@lemmy.world avatar

You are heavily overestimating how much effort is required to develop a text editor. It’s a single person project using components that had to be developed for use in multiple applications; regardless of whether there is a text editor or not. Components that you’d be silly not to develop through a text editor project.

You are trying too hard to justify that we not make a text editor. It feels like you don’t want us to make a text editor at all. No one is on a path to burnout. Everyone is paid a full time salary to work on their respective areas. COSMIC development is doing really well.

mmstick, to linux in COSMIC: The Road to Alpha
@mmstick@lemmy.world avatar

As of today, pop-os.github.io/libcosmic/cosmic/ is now available.

mmstick, (edited ) to linux in Linux Distros Evolution - January 2024 Update: Pop!_OS in Decline?
@mmstick@lemmy.world avatar

I’m defining it the same way that Mint and Ubuntu is here. Which is when they release a new version of their ISO. We are currently on 22.04.37. Release date January of 2024. There are substantial changes since the first ISO build of 22.04

mmstick, to linux in December Updates: The Spirit of COSMIC
@mmstick@lemmy.world avatar

GNOME users wouldn’t be happy having to install KDE dependencies to use a KDE text editor which doesn’t have a consistent look and feel on their desktop. Same applies for KDE users.

mmstick, to linux in GNOME Sees Progress On Variable Refresh Rate Setting, Adding Battery Charge Control
@mmstick@lemmy.world avatar

It already supports VRR and DRM leasing. VRR monitors and VR headsets have been tested.

mmstick, (edited ) to linux in In-progress COSMIC apps: terminal, file manager, text editor, and settings
@mmstick@lemmy.world avatar

It’s been explained 100 times ad nauseam over the last two years. Go read comments from previous months’ updates if you want to catch up.

As for cross-platform compatibility, this should not come as a surprise because everything is written in Rust, and the libraries we use are already cross-platform by default in most instances. Supporting multiple platforms takes almost zero effort on our part. Especially when we could design something from the ground up that’s easy to adapt.

mmstick, to linux in December Updates: The Spirit of COSMIC
@mmstick@lemmy.world avatar

You can start with the libcosmic repository, and the examples contained within. We’re going to work on revamping our design demo application soon, which will be a learning resource for COSMIC application development

mmstick, to linux in COSMIC Edit with project-wide search
@mmstick@lemmy.world avatar

Yes, there are vim keybindings and some vim commands supported.

mmstick, (edited ) to linux in COSMIC: The Road to Alpha
@mmstick@lemmy.world avatar

The keyword is alternative. All first party applications are written natively with our libcosmic toolkit, which is based on iced-rs. We are using a fork of iced though because we needed to implement a custom runtime with the sctk (smithay client toolkit) for COSMIC applet development, but our desktop applications will use the original winit runtime.

mmstick, (edited ) to linux in December Updates: The Spirit of COSMIC
@mmstick@lemmy.world avatar

In my experience, that has never been an issue with any Rust-based projects. It’s quite the opposite. 80% of time is spent completing the first 20% of the project, and then the remaining 80% is quickly finished as everything fits into place. Most of our time is spent in foundational work getting widgets created that we can use with our theme system, and then the actual implementation of the interface in the application is stupid easy.

What you describe is what I felt developing the GNOME extensions. There’s very little you can do to resolve issues that you encounter there.

mmstick, (edited ) to linux in A COSMIC Thanksgiving
@mmstick@lemmy.world avatar

You don’t seem to realize that this is equivalent to that. The user already made the choice to install a desktop environment which generates themes. So if you make the choice to build an application with GTK, and you want users to be able to use system themes with it, then consider it done.

To argue otherwise would make you a hypocrite. It would mean that you don’t actually want users to use themes, so you take issue with desktop environments which make it easy to do so by default. So if you want people to be able to use themes, then you shouldn’t complain when people choose to use a desktop which enables that use case.

mmstick, (edited ) to linux in COSMIC: The Road to Alpha
@mmstick@lemmy.world avatar

The GTK4 project was cancelled for multiple reasons. We originally began working on Relm4 to use GTK4 for COSMIC applets. While others on the team were also experimenting with alternative Rust GUI libraries.

It required a lot of effort to patch GTK4 to support the Wayland layer shell protocol. Getting those patches merged into GTK4 was also taking a much longer time. There were long delays between code reviews; and they also wanted a series of much larger refactoring changes to be made to GTK4 before exposing the layer shell feature. It was much easier to get layer-shell working with iced, as it is a much leaner and concise code base.

GTK does not support fractional scaling, which is something we want our applets to support on day one. This was one of our major concerns. A concern that didn’t apply to iced.

It was also exceedingly difficult to create custom widgets with GTK in Rust. Even those of us with years of experience considered it to be unreasonably difficult. So it was not feasible to expect new hires on the team to be able to comfortably develop COSMIC components with it. In comparison, our team was able to develop custom widgets with iced with much less effort and with greater flexibility, so the demand for iced grew stronger.

At the end of the day, GTK is not a Rust toolkit, and its API is cumbersome to adapt to Rust. Use of GTK would always be a compromise that lessens the developer experience for COSMIC app and applet development. A compromise that would eventually require us to rewrite everything in a native Rust GUI library the moment it would become possible to do so.

Since we are developing a desktop environment from the ground up anyway, we decided that there would be much more value for our time if we contribute to the Rust ecosystem and utilize iced to make a fully featured GUI library for application development.

mmstick, (edited ) to linux in COSMIC: The Road to Alpha
@mmstick@lemmy.world avatar

That would compromise our vision of a GUI platform built from the ground up in Rust. It would also not be feasible to use Flutter for applet development. We can easily make modifications directly to iced for all the Wayland integrations that we need in COSMIC, as the iced code base is very lean, and written in Rust.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #