Home » Guides » A Guide On How To Install Darktable On Linux: CentOS, Ubuntu, Debian, RHEL, Fedora, Arch Linux, etc.

A Guide On How To Install Darktable On Linux: CentOS, Ubuntu, Debian, RHEL, Fedora, Arch Linux, etc.

Darktable is a photography development and workflow tool made for Linux distributions. It is an open-source project developed and maintained by a devoted online community. You can use Darktable to manage your digital negatives, organize them in a database, and view them through a zoomable light table, thus allowing you to develop those negatives into raw images. You can also export these images to your local storage or on a remote device. Darktable is often thought of as a free open-source alternative to Adobe Lightroom and is suitable for professional photographers and enthusiasts alike. The following guide tries to help readers who want to install Darktable on Linux. 

What Is Darktable?

As mentioned, Darktable is a free and open-source photography workflow app that is primarily used for raw image development. It kind of acts as a digital darkroom for developing negatives, hence the name. The app can also be seen as a free alternative to Adobe Lightroom. The software allows users to edit and develop negatives into raw images without destroying the original. Furthermore, you can use the app to manage colors on the photos and even control your camera directly via your computer. 

The app serves as both, a photo development tool and a database management for said photos. As we already mentioned, it is maintained by a dedicated community of photographers and developers who provide regular updates and improvements to the app. 

Darktable
Darktable

Features

We have listed below a few features of Darktable:

  • You don’t have to worry about destroying your original images when editing them, as the original images are saved separately. 
  • The app works on 4×32-bit floating point pixel buffers and SSE instructions.
  • Supported by OpenCL, the images are processed very fast. 
  • The app supports various color schemes, such as built-in ICC for sRGB, Adobe RGB, XYZ, and linear RGB. 
  • You can run the app on multiple platforms, including Linux, macOS, Windows, Solaris, and GNOME.
  • You are able to search images via tags, image ratings, and even color labels.
  • The app supports different file formats such as JPEG, CR2, NEF, HDR, PFM, RAF, etc.
  • There is almost no latency and offers a zoomable UI. 
  • Dozens of languages are also supported.
  • And lastly, you can even automate tasks.

Supported platforms

Here is a list of platforms officially supported:

  • Linux
  • FreeBSD
  • NetBSD
  • OpenBSD
  • Windows 8.1 and later
  • macOS 13.5 and later

Note: Darktable doesn’t support Big-endian platforms or 32-bit platforms. Although, you can try using it on 32-bit platforms. Also, Darktable was primarily developed on and for Linux. Thus, other platforms might encounter some bugs that are absent on Linux. 

Minimum Requirements

  • RAM: 4 GB (8 GB Optimal)
  • CPU: Intel Pentium 4, Core 2 (Intel Core i5 4×2.4 GHz for best performance)
  • GPU: Not Required (However, for optimal use, try it with Nvidia: 1024 CUDA cores)
  • Disk space: 250 MB (1 GB for best performance)

Although you can run Darktable on lightweight systems, (even on a Raspberry Pi), you won’t be able to use modules like Denoise, Local Contrast, Contrast Equalizer, Retouch, or Liquify. Similarly, a GPU is not mandatory but is strongly recommended.

Build Dependencies

You will need the following to build Darktable from Source:

  • Clang
  • GCC
  • MinGW-w64
  • XCode
  • CMake 3.18
  • GTK 3.24.15
  • GLib 2.56
  • SQLite 3.26
  • libcurl 7.56
  • Exiv2 0.27.2 
  • pugixml 1.5
  • Lensfun (for automatic lens correction) 
  • Little CMS 2
  • OpenMP 4.5 (for CPU multi-threading and SIMD vectorization)
  • LLVM 7 
  • OpenCL 1.2 
  • Lua 5.4 (for plugins and extension scripting)
  • G’MIC 2.7.0 
  • libgphoto2 2.5
  • Imath 3.1.0 
  • libavif 0.9.3 
  • libheif 1.13.0 
  • libjxl 0.7.0 
  • WebP 0.3.0 
  • colord 
  • Xatom
  • PortMidi 
  • SDL2 
  • CUPS 
  • OpenEXR 
  • OpenJPEG 
  • GraphicsMagick or ImageMagick

Installing Darktable On Linux

Now, let us start with installing Darktable on Linux. We have listed a few methods you can use to install the app. All you have to do is follow the instructions provided below:

Method 1. Using Native Package Managers To Install Darktable On Linux

The recommended method is to use the package repositories of your Linux distribution to install Darktable. However, note that:

If you are using a pre-built package, ensure it the following:

  • Lua
  • OpenCL
  • OpenMP 
  • Colord support

Although these dependencies are optional, and won’t prevent you from installing Darktable, for a much richer experience, you will need them. 

Ubuntu/Debian

For Ubuntu or Debian distributions, just run the following command in the terminal:

Ubuntu 23.04
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable:/stable/xUbuntu_23.04/ /' | sudo tee /etc/apt/sources.list.d/graphics:darktable:stable.list
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable:stable/xUbuntu_23.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/graphics_darktable_stable.gpg > /dev/null
sudo apt update
sudo apt install darktable
Ubuntu 22.04
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable:/stable/xUbuntu_22.04/ /' | sudo tee /etc/apt/sources.list.d/graphics:darktable:stable.list
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable:stable/xUbuntu_22.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/graphics_darktable_stable.gpg > /dev/null
sudo apt update
sudo apt install darktable
Debian Unstable
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable:/stable/Debian_Unstable/ /' | sudo tee /etc/apt/sources.list.d/graphics:darktable:stable.list
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable:stable/Debian_Unstable/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/graphics_darktable_stable.gpg > /dev/null
sudo apt update
sudo apt install darktable
Debian Testing
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable:/stable/Debian_Testing/ /' | sudo tee /etc/apt/sources.list.d/graphics:darktable:stable.list
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable:stable/Debian_Testing/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/graphics_darktable_stable.gpg > /dev/null
sudo apt update
sudo apt install darktable
On Debian 11
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable:/stable/Debian_11/ /' | sudo tee /etc/apt/sources.list.d/graphics:darktable:stable.list
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable:stable/Debian_11/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/graphics_darktable_stable.gpg > /dev/null
sudo apt update
sudo apt install darktable
Using Binary Package (Ubuntu)

You can always download the pre-built binary package and unpack it:

Step 1. First, download the Binary Package (Deb file) from the official Darktable website.

Or, use the following command:

wget https:// https://download.opensuse.org/repositories/graphics:/darktable:/stable/xUbuntu_23.04/amd64/darktable_4.2.0~git4.64041571-1+77.1_amd64.deb 

Step 2. Now, use DPKG to install the file:

sudo dpkg -i ~/Downloads/darktable_4.2.0~git4.64041571-1+77.1_amd64.deb

Step 3. Then, install the missing dependencies:

sudo apt-get install -f

Note: You can get all the binary packages on the official website. The steps are the same as mentioned above, just use the appropriate command, e.g. for Fedora use DNF instead of APT. 

Fedora

The process is similar for Fedora or any other distro, just run the following command:

For Fedora Rawhide
dnf config-manager --add-repo https://download.opensuse.org/repositories/graphics:darktable:stable/Fedora_Rawhide/graphics:darktable:stable.repo
dnf install darktable
On Fedora 39
dnf config-manager --add-repo https://download.opensuse.org/repositories/graphics:darktable:stable/Fedora_39/graphics:darktable:stable.repo
dnf install darktable
On Fedora 38
dnf config-manager --add-repo https://download.opensuse.org/repositories/graphics:darktable:stable/Fedora_38/graphics:darktable:stable.repo
dnf install darktable

OpenSUSE

On openSUSE Tumbleweed PowerPC
zypper addrepo https://download.opensuse.org/repositories/graphics:darktable:stable/openSUSE_Tumbleweed_PowerPC/graphics:darktable:stable.repo
zypper refresh
zypper install darktable
For openSUSE Tumbleweed ARM
zypper addrepo https://download.opensuse.org/repositories/graphics:darktable:stable/openSUSE_Tumbleweed_ARM/graphics:darktable:stable.repo
zypper refresh
zypper install darktable
For openSUSE Tumbleweed
zypper addrepo https://download.opensuse.org/repositories/graphics:darktable:stable/openSUSE_Tumbleweed/graphics:darktable:stable.repo
zypper refresh
zypper install darktable

Arch Linux

sudo pacman -S darktable

Linux Mint

sudo apt update
sudo apt install darktable

Gentoo

sudo emerge --sync
sudo emerge media-gfx/darktable

NixOS

nix-env -iA nixpkgs.darktable

FreeBSD

sudo pkg install darktable

Alpine Linux

sudo apk add darktable

Solus

sudo eopkg install darktable

Void Linux

sudo xbps-install -S darktable

Mageia

sudo urpmi darktable

Method 2. Install Darktable With Flatpak

To install Darktable using Flatpak, you will need to do the following:

Step 1. First, install Flatpak:

sudo apt install flatpak

Step2. Now, add the Flathub repository 

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Step 3. Finally, install Darktable using Flathub:

flatpak install flathub org.darktable.Darktable

Method 3. Install Darktable on Linux using AppImage

Step 1. Go to the official Darktable website and download the latest AppImage.

Step 2. Now, make the AppImage executable:

chmod +x darktable-<version>.AppImage

Step 3. Lastly, run the AppImage:

./darktable-<version>.AppImage

Method 4. Compile Darktable From Source

Step 1. First, install the required dependencies for your system:

Ubuntu

sed -e '/^#\sdeb-src /s/^# *//;t;d' "/etc/apt/sources.list" \
  | sudo tee /etc/apt/sources.list.d/darktable-sources-tmp.list > /dev/null \
  && (
    sudo apt-get update
    sudo apt-get build-dep darktable
  )
sudo rm /etc/apt/sources.list.d/darktable-sources-tmp.list

Debian

sudo apt-get build-dep darktable

Fedora/CentOS/RHEL

sudo dnf builddep darktable

OpenSUSE

sudo zypper si -d darktable

Step 2. Now, clone the Darktable repository from GitHub:

git clone --recurse-submodules --depth 1 https://github.com/darktable-org/darktable.git
cd darktable
git fetch --tags
git checkout tags/release-4.8.1

Step 3. You will also need the submodules from Git:

git submodule update --init

Step 4. Now compile your build:

./build.sh --prefix /opt/darktable --build-type Release --install --sudo

Note: This is a shell script that automatically builds Darktable on Linux in a single command.

Step 4.1- Alternatively, you can always use a manual build:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/darktable/ ..
cmake --build 
sudo cmake --install

Method 5. Install Darktable On Linux via Snap

Step 1. First, install Snap on your system:

sudo apt install snapd

Step 2. Then, install Darktable via Snap:

sudo snap install darktable --stable
Gilbert John Avatar