Sometime last year, I was challenged by the members of my local photo club to put together a low budget photo editing laptop. I surprised the group when I presented them with mid-level machine that was running completely free software. In fact, the money I saved from using FOSS (Free Open Source Software) instead of the usual Microsoft/Adobe/Apple software treadmill allowed me to upgrade the laptop with a 1TB SSD drive greatly improving its performance.
The laptop worked so well, that I decided not to stop there. I converted my main workstation to Linux and a FOSS workflow.
No, I am not crazy. The process of setting up the portable workstation gave me very good insight as to what my workstation needed to be in order to make this work.
The laptop was a typical mid-level Lenovo machine with a 7th generation i5 processor, 8GB of RAM, an Intel 620 GPU and the aforementioned 1TB SSD (my one upgrade). My workstation, on the other hand, is quite the heavy lift vehicle. Powered by an AMD Ryzen 1800X CPU, 32GB RAM, XFX RX580 GPU, 512GB NVMe SSD boot drive, 4TB working storage and 9TB of secondary RAID-5 storage, this thing could run the Space Program. Luckily for me, my research showed that this was an optimal configuration for running Linux with a minimum amount of fuss.
As I mentioned before, this system was going to be running Linux. For the uninitiated, Linux is a free, open-source operating system. It was created by Linus Torvalds who currently manages the kernel updates. It is not sponsored by any one company, nor it is owned by anyone in particular. Mr. Torvalds may manage the show, but he does not own the theater. No one does. The source code of the operating system is available for all to see and modify and any modifications are to be released freely back into the ecosystem.
Linux comes in the form of distributions which are built upon the work of many, many programmers. Each distribution (or distro) has its own name, design goals, and technological strengths and weaknesses. If the Linux community has a fundamental flaw, it is an over-abundance of choice.
In my case, I originally selected a distro called Solus which is designed for stability, ease of maintenance and high performance. The development team is small, but very responsive to the needs of the community. This distro uses a rolling release model meaning that there are no discrete versions or version numbers. You can pretty much grab any ISO image of Solus and install it on your computer. Within an update or two you will be current with all other Solus users. However, I had to abandon Solus because of an incompatibility with the
lensfun libraries. (More on that later.)
Since Solus could not meet my needs, I switched to Ubuntu Budgie, a new official flavor of the very popular Ubuntu distribution which shares the desktop environment created by the Solus folks. I loaded up the latest beta of the upcoming LTS (Long Term Support) release and setup my usual workflow without issues.
The Strange Case of the Desktop Environment
Linux, unlike Windows or macOS, comes with multiple desktop environments. The most popular are GNOME, KDE, Cinnamon, Mate, XFCE, i3 and Budgie. Linux Mint (the most popular distro in the world) has its own desktop environment called Cinnamon. Solus uses the Budgie Desktop Environment, but also has GNOME, Mate and KDE (coming soon). Some distros allow you to easily select from multiple desktop environments at install time. Each DE has its own strengths, weaknesses and design philosophy (sound familiar?) and is very much a matter of personal choice.
I chose the Budgie Desktop Environment.
It has (in my opinion) a nice clean design and is very responsive.
Since publishing this article, Ubuntu has released version 18.04 LTS (Long Term Support) in most of its flavors. After some experimentation, I have switched to Ubuntu Mate which uses the Mate Desktop Environment.
While it looks nearly identical to the Budgie desktop (a tribute to the hard work the Mate team has put into this release is its flexibility in appearance), the Mate Desktop provides a much smoother, faster, and better integrated experience than my previous favorite, Budgie. Hi-DPI support works across all controls and application, the Brisk Menu doesn’t run amok when non-DEB applications are installed and the menu edited, desktop notifications work consistently and above all it is very stable.
This is the version of Linux I have now installed on all of my machines.
In the Linux world Adobe products are nowhere to be found (natively). It is possible to run Adobe products in WINE (a Windows emulation layer) or in a virtual Windows machine, but that defeats the purpose of running Linux. After much research and actual use I have narrowed my photographic software choices to the following:
- RAWTHERAPEE – Rawtherapee is an open-source raw conversion software that is a veritable Swiss Army Knife of graphic functionality. While it uses a light-table metaphor similar to Adobe Lightroom, its interface is far more technical and requires a little getting used to. After working with several hundred photos, I can quite easily get my signature look and have it recorded as presets. The only thing missing is the ability to watermark my images and upload them to online galleries.
- digiKam – digiKam is an advanced open-source digital photo management application that runs on Linux, Windows, and MacOS. The application provides a comprehensive set of tools for importing, managing, editing, and sharing photos and raw files. I use digiKam to watermark my images and upload them to online galleries. digiKam is based on the QT libraries used by the KDE desktop environment. If it is not available for your distribution, you can download the AppImage.
- Rapid Photo Downloader – Rapid Photo Downloader is my go-to app for copying images from my memory cards to my computer. Highly customizable, RPD also makes backup at ingestion which is the absolute best time to do it.
- GNU Image Manipulation Program aka GIMP – GIMP is the Linux equivalent to Adobe Photoshop. I say equivalent because it does many of the same things that Photoshop can do just in a different way. If you are a dyed-in-the-wool Photoshop user, there is a theme package called PhotoGIMP that makes the GIMP interface look much more like Photoshop. It has certainly made my life easier.
- DisplayCAL – DisplayCAL allows me to color calibrate my display so that I can maintain a color-accurate workflow. A colorimeter is required for this. I use a Datacolor Spyder5 with great success and a ColorHug for my laptop when traveling.
Editor’s note: GIMP has recently announced version 2.10 which mimic the Photoshop interface more closely than previous versions. This may render the PhotoGIMP modification moot.
Cool! How do you print?
While Linux has some pretty amazing hardware support, esoteric devices like wide-format professional photo printers aren’t something that Linux devs have regular access to. In my case, my Epson SureColor P5000 17-inch Wide-Format Photo Printer sort of has drivers in
gutenprint. I say “sort of” because the P6000 24-inch printer has drivers listed, but the P5000 does not. However, the P6000 drivers work perfectly with the P5000 if you set the paper correctly. The sticky part is a software RIP (Raster Image Processor) which handles nesting images and generally manages the printer with a much finer degree of control than the drivers or photo apps can provide. The only FOSS apps I found had not been updated in eight years and didn’t look like they were getting any love.
So I took a 2010 Mac Mini I had laying about (it used to be my daughter’s), put an SSD into it (actually got the Geek Squad to do it) and loaded it up with macOS High Sierra. I plugged it into my network, popped a MiniDisplayPort dongle on it (Macs cannot run headless, something must be plugged into the graphics port), turned on Screen Sharing, loaded up the Epson drivers and installed Qimage 1 for Mac. Now when I need to print a photograph, I just export it as a 16-bit TIFF, save it to a shared folder on the Mac Mini and then use
remmina to remote into the Mac and print away. Works a treat.
Is there a conclusion? Linux on the desktop is happening more and more every day. It is quietly changing the landscape of personal computing. More and more, FOSS solutions to everyday needs are approaching (and even exceeding) the capabilities of paid software. Large corporations are quickly becoming the only customers that can afford the licensing and software costs associated with applications developed using classic revenue models.
Small businesses and freelancers are turning to the Open Source community for solutions and contributing their expertise to help refine the work being done there.
It’s professional grade, it’s coming and it’s free.
What’s not to love?