Linux isn’t like commercial operating systems. The name is as much a shorthand for a particular community as it is a specific piece of code. In the free software world, you’re not limited to being a consumer of your favorite apps and interfaces. You can take part in creating them and you don’t have to be a developer to do so.
The biggest and smallest projects alike can use a helping hand. Here are ways you can get involved and make a difference.
1. Provide Feedback
Free software projects don’t treat users as consumers, so they can’t monitor sales. Most also don’t try to track your behavior. So developers don’t know what users want unless they receive feedback. You can help out a lot just by speaking up and helping projects establish a sense of direction.
While social media is one way to be heard, that environment is filled with noise. Many projects establish their own communities. Purism, for example, has a forum for people who purchase its products or use PureOS.
When the company was deciding whether to switch from a rolling release model to stable versions with longer support, it asked people in the Purism community forums. The company ultimately landed on defaulting to a stable version with a rolling release option for those who want newer software.
Seek out the avenues available for your project of choice. Sometimes this is a forum. Other times it’s a chat group in IRC or Telegram. Maybe it’s a Gitlab page. If all else fails, find an email address.
2. Answer Questions for New Users
When people switch to Linux for the first time, they often don’t have anyone, or anywhere, they can go to for help in person. Instead, search engines are their help desk.
These search engines point to forums alongside question and answer boards. One of the most prominent examples is Ask Ubuntu, which people turn to with concrete and specific questions. Such locations can be immense resources, but that’s only if knowledgeable people sign up and take the time to assist others.
You can be that person.
When you do take part in various community discussion boards, be sure to seek out the code of conduct. Your behavior doesn’t just reflect on you. It reflects on the entire community and can really turn new users away from a project.
3. Write Documentation
While it’s great to have users helping one another, nothing quite takes the place of having easy-to-read official documentation. Such guides can tell you how developers intend for you to use the desktop they’ve provided, how to overcome hurdles, and what bugs they’re aware of.
Documentation rarely gets the spotlight, but it can make or break your experience with a given Linux distribution. Many people love Arch Linux in part because of the sheer depth and usefulness of the ArchWiki. You can often turn to the Arch Wiki for help even if you’ve never installed Arch. Many instructions work for other distributions as well.
Speaking of Arch, EndeavourOS is a young project that continues the legacy of Antergos, an Arch Linux-based distro that’s easier and faster to get up and running. With so much that has to happen in order to begin a new distro, the team could use help documenting what users need to know.
4. Design Icons for Your Favorite Desktop or App
Design matters. Every few years, major Linux desktop environments revamp their icon themes in some form or fashion. Typically, designers make icons more distinct, flatter (to match design trends), simpler (for easier compliance), or all the above.
No matter the size of a project, they can use your help.
GNOME, for example, changed its icon theme in version 3.32. A major motivation for the revamp was to make new icons easier to create, as you can see in GNOME visual designer Jakub Steiner’s recorded talk from GUADEC 2019. Some apps, such a gThumb, don’t yet have an updated icon. That’s where you can step in.
elementaryOS has had a relatively consistent look since its inception, though its themes have not been without their tweaks. Still, with every aspect of the elementary desktop offering its own distinct character, there remain small system and interface icons still in need of an elementary-infused take.
When you’re lending a hand to shape the look of a project, it helps to first familiarize yourself with the relevant Human Interface Guidelines.
5. Test Out New Software
Developers need users to try out the latest versions of their programs. This is helpful with current stable version, and it’s especially useful with software that is still in the pre-release stages.
Free software developers generally work alone or in small remote teams. They don’t have access to various types of hardware and can’t possibly try out all of the different Linux desktop configurations that exist.
By testing apps, you give these developers insight into how their apps run on both your hardware and chosen desktop configuration (Linux distribution/desktop environment/display server/etc.). Of course, developers only get this insight if you reach out to them. So file bug reports, and please remember to be polite when you do.
6. Translate Apps or Improve Accessibility
If there’s one role that virtually any project can use help with, it’s translation. That’s because even if a team already has capable translators on board, there’s no way they speak every language. Few developers would take issue with you spending time to make the software more accessible to people where you live.
This doesn’t just refer to language. Developers also need help making their software more accessible to people who have a harder time seeing or hearing. Some apps simply won’t be usable under certain circumstances, but in other cases, a tweak or two can make a big difference.
Ready to Help Out With Linux Development?
Great! Now let’s act on that excitement while it’s burning bright and hot. Each free software project has its own preferred way of communication and different methods for getting involved, so you can start by hopping to your distro, app, theme, or component’s webpage and looking for instructions on how to contribute.
elementary OS offers some of the most detailed guidelines you will find from a Linux distro, but most of the ones that have been around a while provide instructions on how to help. The same is true of apps. The GIMP Project places a menu option at the top of its homepage that leads to a list of what you can do.
Note, love for Linux is not the only reason to get involved. There are many other benefits to contributing to open source projects.