The installer had no LICENSE file and only a vague "provided as-is" line in the README. Adds MIT (matching the Intel Arc sibling repo) and a third-party tools table making clear that davinci-resolve-checker (GPL-3.0) and Resolve itself are fetched from upstream at install time, not bundled or redistributed by this installer. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| install-davinci-resolve.sh | ||
| LICENSE | ||
| NOTES.md | ||
| README.md | ||
DaVinci Resolve - AMD Omarchy
Video Guide
Install DaVinci Resolve on Omarchy (Arch Linux + Hyprland) on AMD GPUs — RDNA 2, RDNA 3, and the new RDNA 4 cards (RX 9060 / 9070 / 9080).
The script does a manual install to /opt/resolve (no AUR PKGBUILD), pins ROCm 7.1.1 from the Arch Linux Archive (current 7.2.x is broken with Resolve), patches every ELF's RPATH, fixes audio (DeckLink → ALSA + snd-aloop + PipeWire bridge), and writes a launcher with the right HSA_OVERRIDE / DRI_PRIME / MESA_VK_DEVICE_SELECT env vars baked in.
For the full design rationale, root-cause analysis, and recovery procedures see NOTES.md.
Requirements
- OS: Omarchy (Arch Linux) or any Arch-based distro
- GPU: AMD RDNA 2 / 3 / 4 (see GPU support below)
- Compositor: Hyprland (optional — script adds window rules if detected)
- DaVinci Resolve ZIP in
~/Downloads/— Blackmagic gates this behind a registration form, no direct link
Quick Start
# 1. Download DaVinci Resolve from blackmagicdesign.com into ~/Downloads/
# 2. Clone and run:
git clone https://git.no-signal.uk/nosignal/DaVinci-Resolve-AMD-Omarchy.git
cd DaVinci-Resolve-AMD-Omarchy
chmod +x install-davinci-resolve.sh
./install-davinci-resolve.sh
The script scans your system, shows what it found, asks before making changes, and is idempotent — safe to re-run any time.
Why ROCm 7.1.1 (and not the current 7.2.x)
ROCm 7.2.x's OpenCL stack breaks DaVinci Resolve on every AMD GPU — clCreateContext either fails outright or hangs on the Color page. ROCm 7.1.1 is the last known-good release.
The script downloads 7.1.1 from the Arch Linux Archive, installs via pacman -U, and adds an IgnorePkg line to /etc/pacman.conf so pacman -Syu won't quietly upgrade you back into the broken stack.
References:
- ROCm/ROCm#5982 — upstream issue, still open
- CachyOS thread — community recipe
- NixOS#481483 — RDNA4-specific report
When ROCm 7.3+ ships and is verified working, the pin can be lifted — see NOTES.md.
What it does
- System scan — kernel, GPU(s) with gfx target + PCI bus address, audio stack, display server, existing Resolve install
- ROCm 7.1.1 pinned install — downloads from Arch Linux Archive,
pacman -U, addsIgnorePkgto/etc/pacman.conf. Aborts on partial-downgrade failure (won't silently leave you on a broken stack) - Manual Resolve install —
unzip→.runAppImage →--appimage-extract→rsyncto/opt/resolve→patchelf --set-rpathevery ELF - glib-family symlink swap — replaces all five bundled glib libs (
libglib-2.0,libgio-2.0,libgmodule-2.0,libgobject-2.0,libgthread-2.0) with system symlinks. Bundledlibc++/libc++abiare deliberately kept (Resolve was compiled against specific ABI versions; replacing them crashes on launch) - Audio fixes — DeckLink → ALSA backend, snd-aloop kernel module, PipeWire loopback bridge, wireplumber rule keeping aloop off the default-sink rotation
- Hyprland window rules — v3 syntax (not deprecated
windowrulev2), cosmetic-only on the modal dialogs to avoid the trapped-cursor problem - Launcher at
~/.local/bin/davinci-resolvewithHSA_OVERRIDE_GFX_VERSION,ROCR_VISIBLE_DEVICES,DRI_PRIME=pci-<bus>(explicit tag, not=1— see below), andMESA_VK_DEVICE_SELECTbaked in - Stale-config wipe — clears
~/.local/share/DaVinciResolve/{configs,logs}if it sees a known crash marker, and unconditionally on fresh installs
Hybrid GPU note (Intel iGPU + AMD dGPU)
On hybrid laptops where the monitor is wired to the AMD discrete card, Mesa already defaults OpenGL to the AMD card. Setting DRI_PRIME=1 in this scenario actually flips OpenGL to the Intel iGPU — Resolve then has OpenGL on Intel and OpenCL on AMD, CL/GL interop fails, and Resolve hangs on the Color page.
The launcher uses the explicit PCI tag form (DRI_PRIME=pci-0000_BB_DD_F) derived from the AMD card's lspci ID. switcherooctl is not used — it internally sets DRI_PRIME=1 and inherits the same flip bug.
GPU support
The script auto-detects the gfx target and applies the right HSA override unattended.
Confirmed working (tested directly)
| Card | gfx target | HSA value |
|---|---|---|
| RX 9060 / 9060 XT (Navi 44) | gfx1200 | 12.0.0 |
Should work — natively supported by ROCm 7.1.1
| Card | gfx target | HSA value |
|---|---|---|
| RX 9070 / 9070 XT (Navi 48) | gfx1201 | 12.0.1 |
| RX 7900 / 7900 XT / 7900 XTX (Navi 31) | gfx1100 | 11.0.0 |
| RX 7700 XT / 7800 XT (Navi 32) | gfx1101 | 11.0.1 |
| RX 6800 / 6800 XT / 6900 XT / 6950 XT (Navi 21) | gfx1030 | 10.3.0 |
Should work via HSA spoof — not natively supported, spoofed to nearest target
| Card | Real gfx | Spoofs as | HSA value |
|---|---|---|---|
| RX 7600 / 7600 XT (Navi 33) | gfx1102 | gfx1100 | 11.0.0 |
| RX 6700 / 6750 XT (Navi 22) | gfx1031 | gfx1030 | 10.3.0 |
| RX 6600 / 6650 XT (Navi 23) | gfx1032 | gfx1030 | 10.3.0 |
| RX 6500 XT / 6400 (Navi 24) | gfx1034 | gfx1030 | 10.3.0 |
Not supported — ROCm 7.x dropped these before our pinned baseline
- RX 5000 series (RDNA 1)
- Vega
- Polaris and earlier (rusticl-only path, this script isn't tuned for it)
Free-version codec limitation
DaVinci Resolve Free on Linux can't decode H.264/H.265. Convert media first:
resolve-convert video.mp4 # writes video_dnxhr.mov (DNxHR)
Environment variables
| Var | Effect |
|---|---|
RESOLVE_NO_ALOOP=1 |
Skip the snd-aloop / PipeWire bridge audio setup (use this if you have a real audio interface) |
Uninstall
The script does not track itself with pacman. To remove cleanly:
sudo rm -rf /opt/resolve
sudo rm -f /usr/share/applications/{DaVinciResolve,blackmagicraw-*}.desktop
sudo rm -f /usr/lib/udev/rules.d/{99-BlackmagicDevices,99-ResolveKeyboardHID,99-DavinciPanel}.rules
rm -f ~/.local/bin/davinci-resolve ~/.local/bin/davinci-resolve-rusticl ~/.local/bin/davinci-resolve-igpu
rm -f ~/.local/bin/resolve-convert ~/.local/bin/davinci-resolve-checker
# Optional — also remove user data (DELETES ALL PROJECTS)
rm -rf ~/.local/share/DaVinciResolve
To lift the ROCm pin:
sudo sed -i '/^IgnorePkg.*rocm-/d' /etc/pacman.conf
sudo pacman -Syu
Troubleshooting
If first launch fails or Resolve hangs on the Color page, NOTES.md has the full recovery playbook — quick sanity checks at the bottom let you verify the OpenCL stack, launcher env vars, and PipeWire bridge in a few lines of paste.
Common quick checks:
clinfo -l # should show your AMD gfx target
pacman -Q rocm-core rocm-opencl-runtime # should show 7.1.1
grep IgnorePkg /etc/pacman.conf # should pin the rocm packages
grep -E 'DRI_PRIME|HSA_OVERRIDE' ~/.local/bin/davinci-resolve # DRI_PRIME must be pci-... form, NEVER =1
Credits
- Omarchy — the Arch + Hyprland distribution this targets
- davincibox — patchelf RPATH technique, OpenCL conflict references
- davinci-resolve-checker — diagnostic tool, installed by this script
- Arch Wiki — DaVinci Resolve — community documentation
License
This installer is MIT — © 2026 Gavin Nugent / NO SIGNAL.
Third-party tools
The installer does not bundle or redistribute any of the projects below; it fetches each from upstream at install time, and they remain under their own licenses.
| Tool | License | How it's used |
|---|---|---|
| davinci-resolve-checker | GPL-3.0 | git cloned to ~/.local/share/davinci-resolve-checker and symlinked into ~/.local/bin/ |
| davincibox | Apache-2.0 | Technique reference only (patchelf RPATH method, OpenCL conflict list) — no code copied |
| DaVinci Resolve | Blackmagic EULA | User downloads the ZIP themselves into ~/Downloads/; the installer extracts and patches the local copy. Not redistributed. |