Tuxedo-rs status update

This week I was talking to a fellow student at my university. He was thinking about buying a laptop to replace his aging Microsoft Surface device. He also expressed interest in trying Linux and asked specifically which laptop I was using. So I said: “That’s a laptop made by TUXEDO Computers. It’s actually pretty cool because the company is located here in Augsburg and they even sponsor our Formula Student team. They ship laptops with Linux pre-installed if you want. Also, you’ll get a discount as a student.” ...

November 16, 2024 · 8 min · Aaron Erhardt

The potential of mediation for free software development

Recently, I’ve been introduced to a communication technique called mediation, which is a process often used to avoid lawsuits or to resolve conflicts within companies or families. Mediation is far better than other options in almost every single aspect and typically concludes with a win-win situation for all parties. This made me wonder whether some conflicts that happened in the free software community could have been avoided by utilizing this technique. Therefore, in this blog post, I will have closer look at mediation and its potential specifically regarding free software development. Even if you don’t plan on using mediation yourself, there is a lot to be learned from its concepts. ...

June 6, 2024 · 14 min · Aaron Erhardt

Announcing tuxedo-rs

I’m excited to announce tuxedo-rs, a collection of Rust crates for interacting with hardware from TUXEDO Computers. Some background TUXEDO Computers is a PC and notebook vendor from Germany that sells hardware optimized for Linux. TUXEDO Computers are customizable Linux notebooks and Desktop PCs optimized in the first place to run with Ubuntu-based Linux operating systems. Literally Linux hardware in a tailor-made suit. I think that’s pretty neat! For me, having a small local hardware vendor that focuses on Linux is basically all I could wish for. ...

March 15, 2023 · 8 min · Aaron Erhardt

Does Rust need proc-macros 2.0?

Without any doubt, macros are an important feature of the Rust programming language. Macros like println!, lazy_static!, various derive-macros and many others have saved countless hours of writing tedious boilerplate code. However, not everything is perfect yet. You might have heard about the declarative macros 2.0 effort to fix some longstanding issues with macro_rules!. The new macro syntax is still WIP, but I hope it will be stabilized soon. However, that just improves declarative macros, but Rust also has proc-macros (procedural macros). ...

July 27, 2022 · 7 min · Aaron Erhardt

Plotters is back!

This is a short update on my recent post regarding the plotters crate. The maintainer of plotters did respond and fortunately all plans for forking the project are dropped. Now all repositories live in the plotters-rs organization and can be maintained by members of the community. Also, we’re looking for people who want to join the maintenance team (#345). What can we learn from this? Open source projects often start as personal projects. Sometimes they grow bigger over time. People start using and depending on the project, yet still only a single person has all the responsibility. Often unexpected things happen in our lives and projects are suddenly left unmaintained. ...

April 27, 2022 · 2 min · Aaron Erhardt

Planning the future of plotters

With over 1900 stars on GitHub and over 600.000 downloads per month, plotters is a very prominent and widely used Rust crate. By a huge margin it is the most used plotting library for Rust and covers a lot of different use-cases and back-ends. Yet, since roughly June 2021, almost 10 months ago, there hasn’t been any considerable activity on the main branch of the repository. At the same time, the community has been very active with 22 pull requests submitted since then, but none of them was reviewed or merged. Everything looks like the project was discontinued by its original creator. ...

April 12, 2022 · 2 min · Aaron Erhardt

A new Relm 4 you: announcing Relm4 v0.4!

A new realm is here for you to explore! I’m happy to announce Relm4 v0.4, our biggest release so far! About Relm4 Relm4 is an idiomatic GUI library inspired by Elm and based on gtk4-rs. We believe that GUI development should be easy, productive and delightful. The gtk4-rs crate already provides everything you need to write modern, beautiful and cross-platform applications. Built on top of this foundation, Relm4 makes developing more idiomatic, simpler and faster and enables you to become productive in just a few hours. ...

January 17, 2022 · 5 min · Aaron Erhardt

Speedrunning GUI development in Rust

On the evening of the 30th November, I had a few hours to spare and came up with the idea to write a small advent calendar example application for Relm4. There wasn’t much time left before the first door of the calendar could be opened and I wanted to stay on schedule, so I had to be very quick with the implementation. That gave me the idea to use this opportunity for a GUI implementation speedrun using Rust. After all, many wouldn’t consider Rust as a good choice for rapid GUI development. ...

December 5, 2021 · 7 min · Aaron Erhardt

Announcing Relm4 v0.2

Roughly one month after the first stable release a I’m happy to announce the second stable release of Relm4! 🚀🚀🚀 About Relm4 We believe that GUI development should be easy, productive and delightful. The gtk4-rs crate already provides everything you need to write modern, beautiful and cross-platform applications. Built on top of this foundation, Relm4 makes developing more idiomatic, simpler and faster and enables you to become productive in just a few hours. ...

October 9, 2021 · 2 min · Aaron Erhardt

Announcing Relm4 v0.1

Roughly one month after the first beta release and countless hours of work I’m happy to announce the first stable release of Relm4! 🎉🎉🎉 About Relm4 Relm4 is an idiomatic GUI library inspired by Elm and based on gtk4-rs. It is a new version of relm that’s built from scratch and is compatible with GTK4 and libadwaita. The main goals are productivity, flexibility, simplicity and maintainability. Over the last beta releases, the development slowly calmed down up to a point where I’m comfortable releasing the first stable version. I’ve already started porting my existing app I wrote with GTK3 and relm to use GTK4, libadwaita and Relm4 and I was very pleased with the productivity I was able to archive. I believe Relm4 offers a truly outstanding experience for GUI development in Rust. ...

September 6, 2021 · 2 min · Aaron Erhardt