Open-Source-Software
chbâs list of preferred open source software â This list is available at https://github.com/chunkyhairball/Open-Source-Software
Operating Systems
On operating systems, I like either super-reliable, never breaks, never crashes⌠or something thatâs great to tinker with. I donât really care for the in-between options so much.
Debian Linux - https://www.debian.org/
Debian is one of the very first Linux distributions, and features EXHAUSTIVE testing and amazing stability. If I had to provision a server, Debian would be my first choice.
Linux Mint https://linuxmint.com/
Mint is derived from Debian via Unbuntu. Itâs not quite as stable as Debian, but thatâs like saying quartz isnât as hard as diamond. If a personal machine needs to be up and available to work on, Iâd recommend Mint every time.
EndeavourOS https://endeavouros.com/
Endeavour is currently my daily driver simply because it occupies a sweet-spot of ease of use and tinkerability. Itâs derived from Arch Linux and uses the fantastic pacman/libalpm package-manager, which includes mkpkg.
Arch Linux https://archlinux.org/
Despite all the memes to the contrary, Arch Linux is not the cool Linux OS. Itâs a great OS for learning what the individual parts do and how to configure them to get exactly what you want. Importantly, the Arch Wiki is one of the single best resources for Linux configuration available: https://wiki.archlinux.org/ (Also, check the Gentoo wiki: https://wiki.gentoo.org/wiki/Main_Page )
Artix Linux https://artixlinux.org/
Artix Linux is a rolling-release distribution, based on Arch Linux.
It uses real init systems, because PID1 must be simple, secure and stable.
Artix is an Arch-based distribution that eschews the popular systemd init system in favor of less complex systems like runit and s6. Like Arch, itâs got great tinkerability.
OpenWRT https://openwrt.org
OpenWRT is aimed at embedded devices, and, in particular, ARM-based routers and firewalls. Itâs fantastically configurable, but also rock-solid stable. If you use the internet, you NEED a firewall, and it probably needs to be running OpenWRT.
Cinnamon Desktop Environment - https://github.com/linuxmint/cinnamon
Cinnamon is a Linux desktop that provides advanced innovative features and a traditional user experience. The desktop layout is similar to Gnome 2 with underlying technology forked from Gnome Shell. Cinnamon makes users feel at home with an easy-to-use and comfortable desktop experience.
(chbâs notes: Desktop preference is a very charged topic, almost as much as preferred text editor. Cinnamon is not perfect, but, for me, itâs the only Linux GUI DE that doesnât make me want to rip my hair out. Before Cinnamon, I worked with Linux at the command prompt, period. It works intuitively and allows for reasonable customization. Cinnamon comes by default with the excellent Nemo file manager.)
Media
gThumb - https://wiki.gnome.org/Apps/Gthumb
gThumb is an image viewer and browser for gtk environments with robust organization and image management features. It was originally a fork of Geeqie (https://www.geeqie.org/)
Inkscape - https://inkscape.org/
Inkscape is a Free and open source vector graphics editor for GNU/Linux, Windows and macOS. It offers a rich set of features and is widely used for both artistic and technical illustrations such as cartoons, clip art, logos, typography, diagramming and flowcharting. It uses vector graphics to allow for sharp printouts and renderings at unlimited resolution and is not bound to a fixed number of pixels like raster graphics. Inkscape uses the standardized SVG file format as its main format, which is supported by many other applications including web browsers.
(chbâs notes: Inkscape is one of those âBest of Breedâ applications that all other open source applications should look up to since it blows similar closed apps out of the water. Inkscape does one thing, vector drawing, and does it blindingly well.)
MComix - https://sourceforge.net/p/mcomix/wiki/Home/
MComix is a user-friendly, customizable image viewer. It is specifically designed to handle comic books (both Western comics and manga) and supports a variety of container formats (including CBR, CBZ, CB7, CBT, LHA and PDF)
mpv - https://mpv.io/
mpv is a free (as in freedom) media player for the command line. It supports a wide variety of media file formats, audio and video codecs, and subtitle types.
yt-dlp - https://github.com/yt-dlp/yt-dlp
yt-dlp is a youtube-dl fork based on the now inactive youtube-dlc. The main focus of this project is adding new features and patches while also keeping up to date with the original project.
(chbâs notes: If you werenât familiar with yt-dlp or youtube-dl, itâs a command-line utility to download videos from YT and MANY other sites. GUI front ends exist, but I use it primarily from the command-line and as an add-on for mpv. I download music and videos for later viewing because who knows when your internet is going to go out, or those videos just disappear forever.)
gallery-dl - https://github.com/mikf/gallery-dl
gallery-dl is a command-line program to download image galleries and collections from several image hosting sites. It is a cross-platform tool with many configuration options and powerful filenaming capabilities.
Intertubes
Librewolf - https://librewolf.net/
This project is a custom and independent version of Firefox, with the primary goals of privacy, security and user freedom. LibreWolf is designed to increase protection against tracking and fingerprinting techniques, while also including a few security improvements. This is achieved through our privacy and security oriented settings and patches. LibreWolf also aims to remove all the telemetry, data collection and annoyances, as well as disabling anti-freedom features like DRM.
Gaming
Retroarch - https://www.retroarch.com/
RetroArch is a frontend for emulators, game engines and media players. It enables you to run classic games on a wide range of computers and consoles through its slick graphical interface. Settings are also unified so configuration is done once and for all.
(chbâs notes: Retroarchâs setup and config is a PAIN. Itâs playlist-based console ROM selection is very counter-intuitive. However, once you do get it set up and configured, itâs pretty amazing. If thereâs an emulator available for whatever console game you want to play, Retroarch will absolutely handle it.)
Utilities
Baobob - https://apps.gnome.org/app/org.gnome.baobab/
A simple application to keep your disk usage and available space under control. Disk Usage Analyzer can scan specific folders, storage devices and online accounts. It provides both a tree and a graphical representation showing the size of each folder, making it easy to identify where disk space is wasted.
(chbâs notes: Baobob is already part of many default GTK-based Linux installs. If you see a âDisk Usage Analyzerâ in your launcher, itâs probably Baobob.)
Bulky - https://github.com/linuxmint/bulky
Bulky is used to rename files and directories.
Bulky is a bulk file renamer from the Linux Mint team. It allows you to rename multiple files based on several different conditions and with different patterns. Itâs very useful for, say, managing media collections, photographs, or the like.
Gnome Disk Utility - https://wiki.gnome.org/Apps/Disks
A GNOME utility for dealing with storage devices.
Gnome Disk Utility, often installed by default as âDisksâ in many Linux distributions, is an application for handling physical disks and disk images. It can be used to mount disks, format, create disk images, or otherwise maintain any of the above.
(chbâs notes: This is the best piece of software ever ripped off from Apple.)
GtkHash https://github.com/tristanheaven/gtkhash
GtkHash is a desktop utility for computing message digests or checksums. Most well-known hash functions are supported, including MD5, SHA1, SHA2 (SHA256/SHA512), SHA3 and BLAKE2.
(chbâs notes: An important part of the Linux ecosystem is the fact that we can verify the authenticity and correctness of downloads and any other file on our system with cryptographic hashes. Most of the time, with your package manager, this happens automatically. Sometimes you need to do it manually. GtkHash is what I use for that. Additionally, it integrates pretty seamlessly into Nemo and other GTK-based file managers.)
kitty - https://sw.kovidgoyal.net/kitty/
kitty is a feature-rich terminal emulator that takes advantage of OpenGL hardware video acceleration. Itâs capable of displaying images, 32-bit color, Unicode emojis and a lot more.
alacritty - https://alacritty.org/
alacritty is a very fast terminal emulator written in Rust.
htop - https://htop.dev/
htop is a cross-platform, interactive process viewer. It is a text-mode application for consoles or terminals.
btop++ - https://github.com/aristocratos/btop
btop++, like htop, is a text-mode, interactive process viewer with a highly configurable interface and an aesthetic user interface.
(chbâs notes: btop is pretty bloat!)
Qalculate! - https://qalculate.github.io/
Qalculate! is a multi-purpose cross-platform desktop calculator. It is simple to use but provides power and versatility normally reserved for complicated math packages, as well as useful tools for everyday needs (such as currency conversion and percent calculation).
(chbâs notes: Qualculate! comes in command-line, GTK, and Qt versions. Youâd want to use the Qt version if youâre also using KDE. I find myself having bound a lot of features to command-line aliases and using it there more than via the GUI.)
Fonts
Iosevka - https://typeof.net/Iosevka/
Iosevka is an open-source typeface family, designed for writing code, using in terminals, and preparing technical documents.
Comfortaa - https://fonts.google.com/specimen/Comfortaa
Comfortaa is a rounded, geometric, sans-serif type design intended for large sizes. It is absolutely free, both for personal and commercial use.
(chbâs notes: As the name suggests, Comfortaâs rounded glyphs are very low-stress and comforting. Itâs very comfy.)
Raleway - https://fonts.google.com/specimen/Raleway
Raleway is an elegant sans-serif typeface family. Initially designed by Matt McInerney as a single thin weight, it was expanded into a 9 weight family by Pablo Impallari and Rodrigo Fuenzalida in 2012 and iKerned by Igino Marini. A thorough review and italic was added in 2016.
Rowdies - https://fonts.google.com/specimen/Rowdies
Rowdies is a Latin display typeface inspired by the rough & tough Indian action cinema. Roughness and oddness of each individual letter contribute collectively as a typeface to the fantasy of being bold, fearless and strong. Designed by Jaikishan Patel for action, drama, adventure, thriller, noir & crime genres of storytelling.
(chbâs notes: Rowdies is AESTHETIC. I use it for game splash text.)
System
VirtualBox - https://www.virtualbox.org/
VirtualBox is a powerful x86 and AMD64/Intel64 virtualization product for enterprise as well as home use.
QEMU- https://www.qemu.org/
QEMU is a generic and open source machine emulator and virtualizer.
(chbâs notes: VirtualBox vs. Qemu. Yeah. This is a charged subject. When it comes to actual virtualization, Qemu does a better job. VirtualBoxâs config is FANTASTICALLY better, IMO, especially when it comes to Network handling. If you use Qemu, get ready to install some drivers and hunt for cryptic configs if you need the niceties.)
ufw & gufw - https://gufw.org/
ufw is the uncomplicated firewall interface for iptables, allowing quick firewall administration on Linux. gufw is ufwâs graphical front-end
s6 - https://skarnet.org/software/s6/ & https://www.skarnet.org/software/s6-linux-init/
s6 is a small suite of programs for UNIX, designed to allow process supervision (a.k.a service supervision), in the line of daemontools and runit, as well as various operations on processes and daemons. It is meant to be a toolbox for low-level process and service administration, providing different sets of independent tools that can be used within or without the framework, and that can be assembled together to achieve powerful functionality with a very small amount of code.
(chbâs notes: Itâs a good idea to use s6 as part of a Linux distribution that has already integrated it, such as Artix Linux: https://artixlinux.org/ . I donât recommend using this on distributions that use systemd)
Programming
Ruby - https://www.ruby-lang.org/en/
Ruby is a dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. Ruby is an interpreted language with duck typing (https://en.wikipedia.org/wiki/Duck_typing).
Crystal - https://crystal-lang.org/
Crystal is a statically typed (https://en.wikipedia.org/wiki/Type_system#Static_type_checking), compiled programming language with syntax heavily inspired by Rubyâs, so it feels natural to read and easy to write, and has the added benefit of a lower learning curve for experienced Ruby devs.
No GIMP đŽ. Will definitely be taking a look at Inkscape the next time Iâm doing vector art work thoughâŚ
Iâm⌠very frustrated with GIMP and its development team. I really badly need a good raster editor and GIMP is just not that editor. The GIMP team tends to discourage suggestions and volunteer work that does not originate from within their group, so I donât have a lot of hope of that changing.
Photoshop on WINE can be made to work, but itâs a terribly bad solution for many reasons.
I certainly donât want to recommend either of them the way I do other applications and OSes in my list. Even the ones I mention that have frustrations are things Iâm still willing to use (and enjoy) on a daily basis.
LEX writes in another reply:
Dump Gimp. Krita is the way.
Krita is great. Itâs not perfect, and doesnât provide some functionality I personally need. However, the Krita team really does seem intent on improving it and making it a better application, and that shows in its development and featureset. In time, I hope to completely replace anything I have to go back to GIMP or PS for.
Inkscape simply eliminated any dependence I had on other vector editors like Visio or Illustrator. Itâs amazingly good. Iâm hoping that Krita gets to that same place in the future.
GIMP
Anything in particular you think should be on this roadmap that isnât?
The most immediate thing I canât find on that list that I need and have run into recently is better single-channel editing. For example, by default you canât just edit a channelâs alpha/transparency. This makes it very difficult for me to do additive masks. There are ways to do this, but they are much more difficult for me.
One I ran into yesterday, and doesnât seem to be on the list is an inability to edit gradients in a live manner. Clicking âEdit this gradientâ brings up the gradient palette, but most of its menu options simply donât respond.
There are lines in the roadmap list about improving the tool palettes, but nothing pertaining to these issues.
In the past, Iâve attempted to submit feature requests for selection handling, only to have those requests ignored, or in one case being directly told, âThatâs not something weâre interested in working on or accepting patches for.â Investigating othersâ requests led me to understand that was a very common thing to hear from the GIMP team.
That was about three years ago. Iâd LOVE to know that stance has changed, but hearing âYeah, weâll never do that,â is the point at which you start looking for other projects to try to use and help with.
Photoshop on WINE can be made to work, but itâs a terribly bad solution for many reasons.
May I ask the main reasons? This is probably the most important point regarding my migration to linux and I thought that Wine would be a proper solution for Photoshop.
Thanks!
The last version of PS I seriously spent time to try to get working on WINE was CS2, which is now âEOLâ according to Adobe. Itâs quite a few years old at this point, so things may be different with newer versions.
There are technical issues, which may have changed since, like PSâs scratch file handling. Adobe stuff in general tends (tended) to simply ignore the fact that modern operating systems all do swap files or partitions and do all their own virtual memory. WINE just didnât work well with this approach, and various memory-related errors were common, especially when working with larger files.
The single biggest issue for me actually working with the painting tools was WINE tended to vomit when PS wanted to display any kind of hardware-accelerated cursor on screen, like for most painting brushes. Selection tools tended to be okay, but my experience was that when you wanted a painting brush, WINE would simply not render what PS was trying to do, even for things as simple as the round brush outline.