Free, fast, Lightroom-compatible RAW photo editor for Linux, macOS, and Windows.
See the codeRAWmakase is a fast, non-destructive RAW photo developer for Linux, macOS and Windows, written in Rust. It opens RAW files from any camera LibRaw supports, develops them with a Lightroom-style set of controls, and exports JPEG or 16-bit TIFF. It can also import a Lightroom Classic catalog with its ratings, flags, labels, keywords and compatible develop settings, without ever writing to the original catalog or your photos.

⬇ Download the latest version
macOS (Apple Silicon, Intel) · Linux (.deb, .rpm, Arch) · Windows (x86_64) · install notes
It is a personal project in active development. Rendering aims for close, not exact, Lightroom parity; see parity gaps.
.lrcat import with folder relinking.Download the package for your system from GitHub Releases. Older releases may have only the original Arch-built Linux archive; use the requirements in that release's notes.
Point your coding agent to GitHub Releases and tell it to install the latest version for your operating system, or give it this prompt:
Install the latest release of RAWmakase for my operating system from https://github.com/pch/rawmakase/releases. Pick the right package for my OS and CPU architecture, verify it against the release's checksums, install it, and tell me how to launch it.
Install with Homebrew:
brew install --cask pch/tap/rawmakase
Update with brew upgrade --cask rawmakase.
Or install the DMG directly:
Choose rawmakase-v<version>-macos-arm64.dmg for Apple Silicon or rawmakase-v<version>-macos-x86_64.dmg for Intel. Open the DMG, drag RAWmakase into Applications, and launch it there. Release DMGs are signed and notarized, and include their imaging libraries; Homebrew is not required.
Download the package for your architecture (amd64/x86_64 or arm64/aarch64), then run the matching command from its folder, replacing the filename with the one you downloaded:
| System | Package | Install |
|---|---|---|
| Ubuntu 24.04+ / Debian 13+ | .deb | sudo apt install ./rawmakase_<version>_amd64.deb |
| Fedora 43+ | .rpm | sudo dnf install ./rawmakase-<version>-1.x86_64.rpm |
| Arch Linux (x86_64) | .pkg.tar.zst | sudo pacman -U ./rawmakase-<version>-1-x86_64.pkg.tar.zst |
DEB/RPM packages include LibRaw and Little CMS. Arch packages use system dependencies. A working graphics driver is required; install your desktop's xdg-desktop-portal backend for native file dialogs.
AUR publication is paused. Install the Arch package directly, or (on Arch Linux ARM too) download and extract rawmakase-<version>-arch-recipe.tar.gz into an empty folder and build as a normal user:
makepkg -si
The development recipe is in packaging/arch/rawmakase-git.
The rawmakase-<version>-<arch>-linux.tar.gz download contains the same bundled imaging libraries as the DEB/RPM packages. Extract it and run ./usr/bin/rawmakase from the extracted folder. Keep the whole directory together. It requires the same OS/runtime baseline as the packages above; it is not a fully static build.
Run rawmakase-v<version>-x86_64-pc-windows-msvc-setup.exe. It installs for your user account only, without administrator rights, and adds RAWmakase to the Start menu. The installer is not code-signed yet, so Microsoft Defender SmartScreen may warn about an unrecognized app: choose More info → Run anyway. For a copy without installing, extract rawmakase-v<version>-x86_64-pc-windows-msvc.zip and run rawmakase.exe from the extracted folder.
To update, download a newer release and repeat the installation steps (replace the app in Applications on macOS). Settings and catalogs are kept separately from the installed application. There is currently no in-app updater or automatic package repository.
Each new packaged release includes SHA256SUMS. After downloading it beside your package, verify downloaded files on Linux with sha256sum --ignore-missing -c SHA256SUMS. On macOS, use shasum -a 256 <downloaded-file> and compare the result with that file's entry in SHA256SUMS.
You need Rust 1.98 or newer, a C++17 compiler with OpenMP, pkg-config, LibRaw 0.22 or newer, and Little CMS 2.
sudo pacman -S rust base-devel pkgconf libraw lcms2brew install pkg-config libraw little-cms2 libomp. Use a native rustup toolchain (aarch64-apple-darwin on Apple Silicon); LIBOMP_PREFIX points the build at a non-Homebrew OpenMP.make # cargo build --release --locked
make install PREFIX="$HOME/.local" # binary, desktop entry, icon and licenses
make install never builds, so make && sudo make install PREFIX=/usr does not compile as root. make uninstall removes the installed files.
On macOS, packaging/macos/app.sh builds target/release/RAWmakase.app, which you can open from Finder. It uses the Homebrew libraries installed on your Mac and is not a signed, self-contained distribution.
rawmakase # reopen the last catalog
rawmakase Photos.rawmakase # open a catalog
rawmakase photo.dng # add the photo's folder to the last catalog and edit it
Photos are edited through the Library. A photo dropped onto the window or passed on the command line has its folder added to the open catalog, then opens in Develop; edits it got in earlier releases (its photo.rawmakase.json) come along. You can also drop a catalog onto the window. The first launch offers to create a catalog or import a Lightroom catalog; both are available later from the Catalog menu. The camera's embedded JPEG shows immediately while the RAW develops.
Useful shortcuts:
| Key | Action |
|---|---|
| Left / Right | Previous / next photo |
| F / Z | Fit / toggle Fit and 100% |
| 0–5, 6–9 | Rating; red, yellow, green, blue label |
| P / X / U | Pick / reject / clear flag |
| Shift + rating, label or flag key | Apply and advance |
| R or C | Crop |
| J | Clipping indicators |
| Backslash | Before / after |
| Cmd/Ctrl+Z, Cmd/Ctrl+Shift+Z | Undo / redo |
| Cmd/Ctrl+Shift+U | Auto tone |
Double-click a slider to reset it, or type its value for precision.
RAWmakase does not ship any camera profiles. Without one, it renders with the camera matrix LibRaw provides. For Lightroom-like color, import DCP and XMP profiles you are licensed to use (for example from your own Lightroom or Camera Raw installation, or published third-party DCPs such as RawTherapee's) with Edit → Import profiles… or rawmakase import-profiles. They are copied into RAWmakase's own data directory. See Lightroom profiles.
rawmakase inspect photo.dng
rawmakase thumbnail photo.dng embedded.jpg
rawmakase render photo.dng edited.jpg --exposure 0.7 --max-edge 2400
rawmakase render photo.dng edited.tiff --xmp preset.xmp
rawmakase render photo.dng edited.jpg --auto
rawmakase import-catalog Lightroom.lrcat Photos.rawmakase
rawmakase help
render applies the photo's saved edits unless --recipe or --xmp supplies settings, and it needs --overwrite to replace an existing file.
.rawmakase file you choose.photo.dng.rawmakase.json, with spots and masks in photo.dng.rawmakase-local.json, or in the data directory's sidecars/ folder for read-only locations) are brought into the catalog when you add their folder, and left as they are.~/Library/Application Support/RAWmakase on macOS, $XDG_DATA_HOME/rawmakase (default ~/.local/share/rawmakase) on Linux, %APPDATA%\RAWmakase on Windows. RAWMAKASE_DATA_DIR overrides it.Exports are always sRGB. The display defaults to sRGB; pick a monitor ICC profile under More only if your compositor does not already manage color.
Start with the code map and the architecture guide.
make check # cargo fmt --check, clippy -D warnings, cargo test
The repository contains no RAW photos, Lightroom catalogs or camera profiles, so tests that need them are ignored by default. Run them with your own files:
| Environment variable | Test target | Needs |
|---|---|---|
RAWMAKASE_FIXTURES | --test raw_fixtures | A folder of RAW files (the test currently expects both a Bayer and an X-Trans file) |
RAWMAKASE_PROFILES | --test private_profiles | A folder of DCP files |
RAWMAKASE_TEST_DCP | --lib camera_profiles | A DCP file (the assertions currently match RawTherapee's SONY ILCE-7M2.dcp) |
RAWMAKASE_LRCAT | --lib catalog | A Lightroom catalog |
RAWMAKASE_FIXTURES=~/raw-fixtures cargo test --release --test raw_fixtures -- --ignored --nocapture
GPU tests are ignored as well; run them with cargo test --lib gpu -- --ignored on a machine with a compute adapter.
CI runs make check, a release build, an Arch package build and a cargo deny license and advisory audit on every push and pull request. A stable vX.Y.Z tag on main matching Cargo.toml builds both macOS DMGs, the Linux packages and the Windows installer. Publication waits for Apple notarization and package checks. See packaging/RELEASING.md for credentials, rehearsal runs, supported systems and the AUR pause.
RAWmakase is released under the MIT License. The DNG default tone curve and temperature table come from the Adobe DNG SDK, under the license in licenses/Adobe-DNG-SDK.txt. The interface font, Inter, is under the SIL Open Font License (licenses/Inter-OFL.txt), and the icons are Lucide's, under the ISC License (licenses/Lucide-ISC.txt). LibRaw, Little CMS and the Rust dependencies keep their own licenses; see dependencies.
Adobe, Lightroom and Camera Raw are trademarks of Adobe Inc. RAWmakase is not affiliated with or endorsed by Adobe.
Rust
92.1%
Python
3.3%
WGSL
2.8%
Free, fast, Lightroom-compatible RAW photo editor for Linux, macOS, and Windows.
See the codeRAWmakase is a fast, non-destructive RAW photo developer for Linux, macOS and Windows, written in Rust. It opens RAW files from any camera LibRaw supports, develops them with a Lightroom-style set of controls, and exports JPEG or 16-bit TIFF. It can also import a Lightroom Classic catalog with its ratings, flags, labels, keywords and compatible develop settings, without ever writing to the original catalog or your photos.

⬇ Download the latest version
macOS (Apple Silicon, Intel) · Linux (.deb, .rpm, Arch) · Windows (x86_64) · install notes
It is a personal project in active development. Rendering aims for close, not exact, Lightroom parity; see parity gaps.
.lrcat import with folder relinking.Download the package for your system from GitHub Releases. Older releases may have only the original Arch-built Linux archive; use the requirements in that release's notes.
Point your coding agent to GitHub Releases and tell it to install the latest version for your operating system, or give it this prompt:
Install the latest release of RAWmakase for my operating system from https://github.com/pch/rawmakase/releases. Pick the right package for my OS and CPU architecture, verify it against the release's checksums, install it, and tell me how to launch it.
Install with Homebrew:
brew install --cask pch/tap/rawmakase
Update with brew upgrade --cask rawmakase.
Or install the DMG directly:
Choose rawmakase-v<version>-macos-arm64.dmg for Apple Silicon or rawmakase-v<version>-macos-x86_64.dmg for Intel. Open the DMG, drag RAWmakase into Applications, and launch it there. Release DMGs are signed and notarized, and include their imaging libraries; Homebrew is not required.
Download the package for your architecture (amd64/x86_64 or arm64/aarch64), then run the matching command from its folder, replacing the filename with the one you downloaded:
| System | Package | Install |
|---|---|---|
| Ubuntu 24.04+ / Debian 13+ | .deb | sudo apt install ./rawmakase_<version>_amd64.deb |
| Fedora 43+ | .rpm | sudo dnf install ./rawmakase-<version>-1.x86_64.rpm |
| Arch Linux (x86_64) | .pkg.tar.zst | sudo pacman -U ./rawmakase-<version>-1-x86_64.pkg.tar.zst |
DEB/RPM packages include LibRaw and Little CMS. Arch packages use system dependencies. A working graphics driver is required; install your desktop's xdg-desktop-portal backend for native file dialogs.
AUR publication is paused. Install the Arch package directly, or (on Arch Linux ARM too) download and extract rawmakase-<version>-arch-recipe.tar.gz into an empty folder and build as a normal user:
makepkg -si
The development recipe is in packaging/arch/rawmakase-git.
The rawmakase-<version>-<arch>-linux.tar.gz download contains the same bundled imaging libraries as the DEB/RPM packages. Extract it and run ./usr/bin/rawmakase from the extracted folder. Keep the whole directory together. It requires the same OS/runtime baseline as the packages above; it is not a fully static build.
Run rawmakase-v<version>-x86_64-pc-windows-msvc-setup.exe. It installs for your user account only, without administrator rights, and adds RAWmakase to the Start menu. The installer is not code-signed yet, so Microsoft Defender SmartScreen may warn about an unrecognized app: choose More info → Run anyway. For a copy without installing, extract rawmakase-v<version>-x86_64-pc-windows-msvc.zip and run rawmakase.exe from the extracted folder.
To update, download a newer release and repeat the installation steps (replace the app in Applications on macOS). Settings and catalogs are kept separately from the installed application. There is currently no in-app updater or automatic package repository.
Each new packaged release includes SHA256SUMS. After downloading it beside your package, verify downloaded files on Linux with sha256sum --ignore-missing -c SHA256SUMS. On macOS, use shasum -a 256 <downloaded-file> and compare the result with that file's entry in SHA256SUMS.
You need Rust 1.98 or newer, a C++17 compiler with OpenMP, pkg-config, LibRaw 0.22 or newer, and Little CMS 2.
sudo pacman -S rust base-devel pkgconf libraw lcms2brew install pkg-config libraw little-cms2 libomp. Use a native rustup toolchain (aarch64-apple-darwin on Apple Silicon); LIBOMP_PREFIX points the build at a non-Homebrew OpenMP.make # cargo build --release --locked
make install PREFIX="$HOME/.local" # binary, desktop entry, icon and licenses
make install never builds, so make && sudo make install PREFIX=/usr does not compile as root. make uninstall removes the installed files.
On macOS, packaging/macos/app.sh builds target/release/RAWmakase.app, which you can open from Finder. It uses the Homebrew libraries installed on your Mac and is not a signed, self-contained distribution.
rawmakase # reopen the last catalog
rawmakase Photos.rawmakase # open a catalog
rawmakase photo.dng # add the photo's folder to the last catalog and edit it
Photos are edited through the Library. A photo dropped onto the window or passed on the command line has its folder added to the open catalog, then opens in Develop; edits it got in earlier releases (its photo.rawmakase.json) come along. You can also drop a catalog onto the window. The first launch offers to create a catalog or import a Lightroom catalog; both are available later from the Catalog menu. The camera's embedded JPEG shows immediately while the RAW develops.
Useful shortcuts:
| Key | Action |
|---|---|
| Left / Right | Previous / next photo |
| F / Z | Fit / toggle Fit and 100% |
| 0–5, 6–9 | Rating; red, yellow, green, blue label |
| P / X / U | Pick / reject / clear flag |
| Shift + rating, label or flag key | Apply and advance |
| R or C | Crop |
| J | Clipping indicators |
| Backslash | Before / after |
| Cmd/Ctrl+Z, Cmd/Ctrl+Shift+Z | Undo / redo |
| Cmd/Ctrl+Shift+U | Auto tone |
Double-click a slider to reset it, or type its value for precision.
RAWmakase does not ship any camera profiles. Without one, it renders with the camera matrix LibRaw provides. For Lightroom-like color, import DCP and XMP profiles you are licensed to use (for example from your own Lightroom or Camera Raw installation, or published third-party DCPs such as RawTherapee's) with Edit → Import profiles… or rawmakase import-profiles. They are copied into RAWmakase's own data directory. See Lightroom profiles.
rawmakase inspect photo.dng
rawmakase thumbnail photo.dng embedded.jpg
rawmakase render photo.dng edited.jpg --exposure 0.7 --max-edge 2400
rawmakase render photo.dng edited.tiff --xmp preset.xmp
rawmakase render photo.dng edited.jpg --auto
rawmakase import-catalog Lightroom.lrcat Photos.rawmakase
rawmakase help
render applies the photo's saved edits unless --recipe or --xmp supplies settings, and it needs --overwrite to replace an existing file.
.rawmakase file you choose.photo.dng.rawmakase.json, with spots and masks in photo.dng.rawmakase-local.json, or in the data directory's sidecars/ folder for read-only locations) are brought into the catalog when you add their folder, and left as they are.~/Library/Application Support/RAWmakase on macOS, $XDG_DATA_HOME/rawmakase (default ~/.local/share/rawmakase) on Linux, %APPDATA%\RAWmakase on Windows. RAWMAKASE_DATA_DIR overrides it.Exports are always sRGB. The display defaults to sRGB; pick a monitor ICC profile under More only if your compositor does not already manage color.
Start with the code map and the architecture guide.
make check # cargo fmt --check, clippy -D warnings, cargo test
The repository contains no RAW photos, Lightroom catalogs or camera profiles, so tests that need them are ignored by default. Run them with your own files:
| Environment variable | Test target | Needs |
|---|---|---|
RAWMAKASE_FIXTURES | --test raw_fixtures | A folder of RAW files (the test currently expects both a Bayer and an X-Trans file) |
RAWMAKASE_PROFILES | --test private_profiles | A folder of DCP files |
RAWMAKASE_TEST_DCP | --lib camera_profiles | A DCP file (the assertions currently match RawTherapee's SONY ILCE-7M2.dcp) |
RAWMAKASE_LRCAT | --lib catalog | A Lightroom catalog |
RAWMAKASE_FIXTURES=~/raw-fixtures cargo test --release --test raw_fixtures -- --ignored --nocapture
GPU tests are ignored as well; run them with cargo test --lib gpu -- --ignored on a machine with a compute adapter.
CI runs make check, a release build, an Arch package build and a cargo deny license and advisory audit on every push and pull request. A stable vX.Y.Z tag on main matching Cargo.toml builds both macOS DMGs, the Linux packages and the Windows installer. Publication waits for Apple notarization and package checks. See packaging/RELEASING.md for credentials, rehearsal runs, supported systems and the AUR pause.
RAWmakase is released under the MIT License. The DNG default tone curve and temperature table come from the Adobe DNG SDK, under the license in licenses/Adobe-DNG-SDK.txt. The interface font, Inter, is under the SIL Open Font License (licenses/Inter-OFL.txt), and the icons are Lucide's, under the ISC License (licenses/Lucide-ISC.txt). LibRaw, Little CMS and the Rust dependencies keep their own licenses; see dependencies.
Adobe, Lightroom and Camera Raw are trademarks of Adobe Inc. RAWmakase is not affiliated with or endorsed by Adobe.
Rust
92.1%
Python
3.3%
WGSL
2.8%