Aceasta e o versiune anterioară a paginii.
Instalare Adobe Lightroom CC pe Linux via Wine
Acest tutorial descrie instalarea și rularea Adobe Lightroom CC (varianta cloud, numită uneori „Lightroom Desktop“ - NU Lightroom Classic) pe Linux, folosind Wine 11.8 staging.
Stare confirmată: funcțional, testat cu Wine 11.8 staging și Lightroom CC 9.3.1.
Sursa originală a rețetei, cu toate scripturile și fișierele patch-uite: repo-ul lightroom-cc-on-linux.
Ce veți obține
- Programul desktop Creative Cloud complet funcțional (autentificare, panou de programe, instalare alte programe Adobe din catalog)
- Lightroom CC pornind, cu biblioteca sincronizată prin cloud vizibilă
- Modulul Edit cu toate panelurile randând corect (Light, Color, Effects, Detail, Optics, Geometry)
- Unealta Remove/Heal funcțională (perie, mască, aplicare)
Ce nu funcționează încă: câteva ferestre de dialog (de exemplu „What's New“) pot bloca programul, plus unele funcții avansate legate de accelerare GPU. Fluxul de bază pentru editare foto merge fără probleme.
Cerințe preliminare
- Distribuție Linux pe 64 de biți, kernel 6.x sau mai nou
- Wine 11.8 staging sau mai nou
- winetricks 20240105 sau mai nou
- GPU NVIDIA, AMD sau Intel cu drivere Vulkan (testat pe NVIDIA, dar DXVK acoperă toate trei)
- Abonament Adobe Creative Cloud activ care include Lightroom CC
- Circa 10 GB spațiu liber pe disc pentru prefix și instalarea Adobe
mingw-w64pentru compilarea DLL-urilor stub
Combinație testată:
| Componentă | Versiune |
|---|---|
| Wine | 11.8 (Staging) |
| Winetricks | 20240105 |
| DXVK | 2.7.1 |
| Wine Gecko | 2.47.4 |
| WebView2 | 148.0.3967.70 |
| Adobe CC | 6.9.1.1 sau mai nou |
| Lightroom CC | 9.3.1 |
Pasul 1: Instalare pachete de sistem
Comenzile diferă în funcție de distribuție. Mai jos sunt acoperite distribuțiile principale ale fiecărei familii - dacă folosiți alta, adaptați după cea mai apropiată din listă.
sudo dpkg --add-architecture i386 sudo apt update sudo apt install -y \ curl wget unzip git xz-utils ca-certificates \ build-essential pkg-config \ mingw-w64 \ winbind cabextract \ mesa-vulkan-drivers libvulkan1 vulkan-tools \ wmctrl imagemagick
Wine 11.8 staging trebuie instalat separat, din depozitul WineHQ (pasul 2). Dacă pachetele Vulkan/Mesa nu se găsesc, verificați că depozitul contrib non-free-firmware e activat în /etc/apt/sources.list.
sudo dpkg --add-architecture i386 sudo apt update sudo apt install -y \ curl wget unzip git xz-utils ca-certificates \ build-essential pkg-config \ mingw-w64 \ winbind cabextract \ mesa-vulkan-drivers libvulkan1 vulkan-tools \ wmctrl imagemagick
Wine 11.8 staging trebuie instalat separat, din depozitul WineHQ (pasul 2).
sudo dpkg --add-architecture i386 sudo apt update sudo apt install -y \ curl wget unzip git xz-utils ca-certificates \ build-essential pkg-config \ mingw-w64 \ winbind cabextract \ mesa-vulkan-drivers libvulkan1 vulkan-tools \ wmctrl imagemagick
Wine 11.8 staging trebuie instalat separat, din depozitul WineHQ (pasul 2).
sudo dnf install -y \ curl wget unzip git xz \ @development-tools \ mingw64-gcc mingw32-gcc \ samba-winbind cabextract \ mesa-vulkan-drivers vulkan-tools \ wmctrl ImageMagick
sudo pacman -S --needed \ curl wget unzip git \ base-devel \ mingw-w64-gcc \ samba cabextract \ vulkan-icd-loader vulkan-tools \ wmctrl imagemagick
Pachetul wine-staging din depozitele oficiale e potrivit dacă versiunea e 11.8 sau mai nouă (verificați cu pacman -Si wine-staging); altfel instalați manual din sursă sau din AUR (pasul 2).
sudo zypper install -y -t pattern devel_basis sudo zypper install -y \ curl wget unzip git-core cabextract \ mingw64-cross-gcc mingw32-cross-gcc \ Mesa-vulkan-drivers libvulkan1 vulkan-tools \ wmctrl ImageMagick
Pentru Wine staging la zi, activați depozitul Packman - versiunea din depozitul standard openSUSE e adesea mai veche decât 11.8 (pasul 2).
sudo apk update sudo apk add \ curl wget unzip git build-base pkgconf \ mingw-w64-gcc \ samba-client cabextract \ mesa-vulkan-generic vulkan-loader vulkan-tools \ wmctrl imagemagick
Atenție: Alpine folosește musl în loc de glibc, iar binarele Adobe (compilate pentru glibc) au nevoie de un strat de compatibilitate precum gcompat pentru a rula sub Wine. Pachetul wine din depozitele Alpine poate fi mai vechi decât 11.8 - verificați cu apk info wine și, dacă e nevoie, compilați din sursă (pasul 2).
Pe NixOS pachetele nu se instalează individual cu un manager clasic. Cea mai curată variantă e printr-un shell temporar:
nix-shell -p curl wget unzip git gnumake gcc pkg-config \ wineWowPackages.staging winetricks \ cabextract samba \ vulkan-loader vulkan-tools mesa \ wmctrl imagemagick \ pkgsCross.mingwW64.buildPackages.gcc
Pentru o instalare permanentă, adăugați pachetele echivalente în environment.systemPackages din /etc/nixos/configuration.nix și rulați sudo nixos-rebuild switch. wineWowPackages.staging aduce deja Wine staging, deci pasul 2 din acest ghid poate fi sărit pe NixOS.
sudo emerge --sync sudo emerge --ask \ net-misc/curl net-misc/wget app-arch/unzip dev-vcs/git \ app-arch/cabextract net-fs/samba \ media-libs/vulkan-loader media-libs/vulkan-tools \ x11-misc/wmctrl media-gfx/imagemagick
Compilatorul cross mingw-w64 nu e în arborele principal ca pachet simplu - de obicei se folosește un overlay (ex. crossdev) pentru toolchain-ul x86_64-w64-mingw32. Pentru Wine staging, folosiți app-emulation/wine-staging din portage, cu USE flag-urile vulkan și staging activate în /etc/portage/package.use (pasul 2).
Dacă distribuția nu are winetricks în versiune suficient de nouă (≥ 20240105), luați varianta cea mai recentă direct:
curl -L https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks \ -o ~/.local/bin/winetricks chmod +x ~/.local/bin/winetricks
Pasul 2: Instalare Wine 11.8 Staging
Urmați instrucțiunile per-distribuție de pe pagina de descărcare WineHQ. Pachetele căutate: winehq-staging (Ubuntu/Debian) sau wine-staging/wine-staging-common (Fedora), versiunea 11.8 sau mai nouă.
Verificare:
wine --version # rezultat așteptat: wine-11.8 (Staging) (sau mai nou)
Pasul 3: Configurare prefix Wine
Un prefix Wine e un disc C: independent, cu propriul registru - păstrați-l separat de ~/.wine ca să nu afecteze alte programe Wine deja instalate.
git clone https://github.com/sander110419/lightroom-cc-on-linux.git cd lightroom-cc-on-linux ./scripts/setup.sh
Scriptul face automat, în mod repetabil:
- Creează
wineprefix/(arhitectură win64, Windows 10) - Instalează prin winetricks:
corefonts vcrun2019 ucrtbase2019 msxml6 gdiplus dotnet48 atmlib fontsmooth=rgb dxvk - Descarcă Wine Gecko 2.47.4 (x86 și x86_64) și corectează calea din registru
- Scrie
wineprefix/dxvk.confcu opțiuneadxgi.enableDummyCompositionSwapchain = True - Aplică cheile de registru pentru ca CC să se raporteze corect ca fiind online
- Copiază DLL-urile stub în
system32/
Durează circa 30 de minute la prima rulare, mai ales din cauza pachetului dotnet48 și a fonturilor. Rerularea e sigură - fiecare pas detectează dacă a fost deja făcut.
Notă pentru utilizatorii Citrix Workspace: dacă /etc/ld.so.preload conține o bibliotecă de tip libAppProtection.so, Wine va afișa mii de linii cosmetice de tip „could not inject 32-bit lib into 64-bit process“ la pornire. Nu afectează funcționalitatea. Verificați cu:
cat /etc/ld.so.preload 2>/dev/null
Pasul 4: Descărcare pachet de instalare Creative Cloud
Adobe cere autentificare pentru descărcare, deci pasul e manual:
- Deschideți pagina de descărcare Creative Cloud într-un navigator
- Autentificați-vă cu contul Adobe
- Apăsați butonul de descărcare pentru Creative Cloud - veți primi un fișier de tip
ACCCx6_9_1_1.zip(cifrele reprezintă versiunea; una mai nouă e în regulă, dar nu folosiți nimic mai vechi de 6.9.1.x) - Mutați fișierul în directorul
installers/din repo:
mv ~/Downloads/ACCCx*.zip installers/
Important: nu folosiți fișierul vechi CreativeCloudSet-Up.exe de 800 KB - datează din 2018, punctele lui de conectare sunt învechite și eșuează cu eroarea 72. Pachetul offline ZIP e cel corect.
Descărcați și Microsoft Edge WebView2:
mkdir -p installers curl -L -o installers/MicrosoftEdgeWebview2Setup.exe \ https://go.microsoft.com/fwlink/p/?LinkId=2124703
Pasul 5: Instalare Creative Cloud desktop
./scripts/install-cc.sh
Scriptul dezarhivează pachetul, instalează WebView2 în prefix și pornește instalatorul Adobe. Veți vedea ecranul de autentificare Creative Cloud - conectați-vă cu contul Adobe. Programul CC va încărca apoi catalogul de aplicații.
- Dacă fereastra CC apare complet albă: verificați că
wineprefix/dxvk.confexistă și conținedxgi.enableDummyCompositionSwapchain = True, și că variabilaDXVK_CONFIG_FILEindică spre acest fișier la lansare. - Dacă după autentificare apare „Sorry, an error occurred“:
AdobeGrowthSDK.dllnu a fost dezactivat. Vezi pasul 6.1 mai jos.
Pasul 6: Aplicarea corecturilor (fix-urilor)
Majoritatea corecturilor sunt aplicate automat de setup.sh, dar două trebuie aplicate după instalarea Creative Cloud, pentru că fișierele vizate nu există înainte de asta.
6.1 Dezactivare AdobeGrowthSDK
Biblioteca Adobe de A/B testing apelează o funcție (SetThreadpoolTimerEx) pe care Wine 11.8 nu o implementează, ceea ce blochează procesul. Există două copii pe disc - una pentru CC, una pentru fiecare program Adobe instalat, inclusiv Lightroom.
cd wineprefix/drive_c # Copia din Creative Cloud for f in \ "Program Files/Common Files/Adobe/Adobe Desktop Common/GrowthSDK/AdobeGrowthSDK.dll" \ "Program Files/Adobe/Adobe Creative Cloud Experience/js/node_modules/@growthsdk/growthsdk/public/binaries/win.x64/Release/AdobeGrowthSDK.dll" \ "Program Files/Adobe/Adobe Creative Cloud Experience/js/node_modules/@growthsdk/growthsdk/public/binaries/win.x64/Release/growthsdk.node"; do [ -f "$f" ] && mv "$f" "$f.disabled" done # Copia din Lightroom CC (doar după instalarea LR, pasul 7) [ -f "Program Files/Adobe/Adobe Lightroom CC/AdobeGrowthSDK.dll" ] \ && mv "Program Files/Adobe/Adobe Lightroom CC/AdobeGrowthSDK.dll" \ "Program Files/Adobe/Adobe Lightroom CC/AdobeGrowthSDK.dll.disabled"
6.2 Symlink-uri lowercase pentru DLL-urile Adobe
Lightroom importă DLL-uri cu nume scrise cu litere mici (de exemplu agkernel.dll), dar Adobe livrează fișierele cu majuscule (AgKernel.dll). Pe Windows nu contează, dar pe Linux sistemul de fișiere e case-sensitive, deci importul eșuează.
cd "wineprefix/drive_c/Program Files/Adobe/Adobe Lightroom CC" for f in *.dll *.exe; do lower=$(echo "$f" | tr '[:upper:]' '[:lower:]') [ "$f" != "$lower" ] && [ ! -e "$lower" ] && ln -s "$f" "$lower" done
Scriptul scripts/install-lightroom.sh face acest pas automat.
6.3 DLL-uri stub
Trei DLL-uri mici sunt necesare pentru că Wine 11.8 nu le livrează, dar Lightroom le importă static: NDFAPI.DLL, wkscli.dll și ext-ms-win-uiacore-l1-1-2.dll. Sunt copiate automat de scriptul de instalare, fie din binarele precompilate din repo, fie recompilate local cu scripts/build-stubs.sh.
6.4 DLL patch-uit d2d1.dll
Lightroom cere la pornire efectul Direct2D CLSID_D2D1ColorManagement, pe care Wine 11.8 nu îl include. Fără el, apare eroarea:
Error initializing Lightroom CreateD2DDeviceResources failed. HResult: 0x88990028
Rezolvare, folosind binarul precompilat din repo:
cp stubs/binaries/d2d1-patched.dll wineprefix/drive_c/windows/system32/d2d1.dll WINEDLLOVERRIDES="d2d1=n" wine reg ADD \ "HKCU\Software\Wine\DllOverrides" /v d2d1 /d "native" /f
Alternativ, DLL-ul poate fi recompilat din sursele Wine - detalii în GUIDE.md din repo, secțiunea 6.4.
6.5 DLL patch-uit mfplat.dll (fix pentru unealta Remove/Heal)
Unealta Remove/Heal are nevoie de funcția MFCreateSampleCopierMFT din mfplat.dll, pe care Wine 11.8 nu o exportă. Fără fix, folosirea uneltei blochează procesul.
cp stubs/binaries/mfplat-patched.dll \ wineprefix/drive_c/windows/system32/mfplat.dll WINEDLLOVERRIDES="mfplat=n" wine reg ADD \ "HKCU\Software\Wine\DllOverrides" /v mfplat /d "native" /f
Important: Adobe livrează propria copie a mfplat.dll direct în directorul de instalare al Lightroom, iar ordinea de căutare Windows o preferă pe aceasta față de cea din system32/. Fără înlocuirea și a acestei copii, fix-ul de mai sus nu are niciun efect:
cp "wineprefix/drive_c/Program Files/Adobe/Adobe Lightroom CC/mfplat.dll" \ "wineprefix/drive_c/Program Files/Adobe/Adobe Lightroom CC/mfplat-ADOBE-ORIGINAL.dll" cp stubs/binaries/mfplat-patched.dll \ "wineprefix/drive_c/Program Files/Adobe/Adobe Lightroom CC/mfplat.dll"
Verificare că ambele copii sunt identice:
md5sum wineprefix/drive_c/windows/system32/mfplat.dll \ "wineprefix/drive_c/Program Files/Adobe/Adobe Lightroom CC/mfplat.dll"
Regulă generală valabilă și pentru alte programe Adobe pe Wine: când o corectură nu pare să aibă efect, verificați dacă programul livrează propria copie a acelui DLL în directorul de instalare.
Pasul 7: Instalare Lightroom CC din panoul Creative Cloud
- Deschideți programul Creative Cloud (relansați cu
./scripts/install-cc.sh) - Click pe fila Apps
- Derulați până la Lightroom (NU Lightroom Classic)
- Click pe Install
- CC descarcă circa 1.6 GB și instalează în
wineprefix/drive_c/Program Files/Adobe/Adobe Lightroom CC/
Poate apărea un mesaj despre KANC (Adobe Native Client) cu eroare HTTP 302 - e cosmetic, Lightroom se instalează corect oricum.
Nu apăsați „Open“ din interiorul CC după instalare, se poate bloca. Închideți CC și folosiți lansatorul dedicat de la pasul 8.
Înainte de prima rulare, completați și partea a doua din 6.1 (dezactivarea copiei Lightroom a AdobeGrowthSDK.dll) plus 6.2 (symlink-urile):
./scripts/install-lightroom.sh
Pasul 8: Rularea Lightroom
./scripts/run-lightroom.sh
Sau direct:
cd /calea/catre/lightroom-cc-on-linux LD_PRELOAD= \ DXVK_CONFIG_FILE=$PWD/wineprefix/dxvk.conf \ WINEPREFIX=$PWD/wineprefix WINEARCH=win64 \ wine "C:\\Program Files\\Adobe\\Adobe Lightroom CC\\lightroom.exe"
Comportament așteptat: apare ecranul de încărcare Lightroom, câteva linii cosmetice de eroare în stderr legate de anumite CLSID-uri (fără impact), apoi biblioteca de fotografii sincronizată din cloud. Click pe o fotografie și apoi pe Edit pentru a deschide panoul complet de editare.
Pentru lansator în meniul aplicațiilor:
[Desktop Entry] Name=Lightroom CC (Wine) Exec=/calea/catre/lightroom-cc-on-linux/scripts/run-lightroom.sh Icon=/calea/catre/lightroom-cc-on-linux/screenshots/lightroom-edit-mode.png Type=Application Categories=Graphics;Photography;
Depanare
| Simptom | Cauză și rezolvare |
|---|---|
| Fereastra CC apare albă | dxvk.conf lipsă sau DXVK_CONFIG_FILE greșit setat - vezi pasul 5 |
| Eroare 72 la instalarea CC | Se folosește instalatorul vechi mini-bootstrap - folosiți pachetul ZIP offline (pasul 4) |
| „Sorry, an error occurred“ după autentificare | AdobeGrowthSDK.dll încă activ - verificați cu find wineprefix -name AdobeGrowthSDK.dll -not -name *.disabled |
| CC blocat pe „Initializing Creative Cloud“ | Există override-uri Wine care dezactivează CCXProcess.exe, CCLibrary.exe sau CoreSync.exe - ștergeți-le din registru |
| KANC eșuează cu HTTP 302 | Cosmetic, ignorați |
| „CreateD2DDeviceResources failed“ | Lipsă d2d1.dll patch-uit - vezi pasul 6.4 |
| „module:import_dll … not found“ pe un DLL Adobe | Problemă de case-sensitivity - reaplicați symlink-urile din pasul 6.2 |
| „Unimplemented function KERNEL32.dll.SetThreadpoolTimerEx“ | Una din cele trei copii AdobeGrowthSDK.dll nu a fost dezactivată |
| Panoul Edit apare gol | Efectul ColorManagement nu e găsit în d2d1.dll - verificați md5-ul binarului patch-uit |
| Blocare la folosirea uneltei Remove/Heal | Lipsă mfplat.dll patch-uit, în ambele locații - vezi pasul 6.5 |
| Fereastra „What's New“ se randează greșit sau nu se închide | Același fix ca la Remove/Heal - pasul 6.5 |
Sursă și credite
Rețeta completă, scripturile și fișierele binare patch-uite sunt publicate de sander110419 în repo-ul lightroom-cc-on-linux, licențiate MIT (scripturi și stub-uri) respectiv LGPL-2.1+ pentru derivatele din Wine. Conform README-ului, cea mai mare parte a muncii de depanare, scriere a patch-urilor și verificare a fost realizată autonom de Claude Opus 4.7 prin Claude Code, pe baza obiectivului stabilit de autorul uman al proiectului.