Affinity na Linuxie — instalacja przez Wine i Lutris

Affinity na Linuxie — instalacja przez Wine i Lutris

Serif przestał sprzedawać licencje Affinity v1 po przejściu na subskrypcję w wersji 2. Jeśli masz starą licencję i chcesz uruchomić Affinity na Linuxie — da się to zrobić przez Wine. Droga nie jest prosta, ale działa.

Testowane na CachyOS (Arch-based) z Intel Iris Xe, Lutris 0.5.22 i runnerem ElementalWarriorWine.

Wymagania

  • System: Arch Linux / CachyOS (powinno działać też na Debian/Ubuntu z odpowiednimi pakietami)
  • RAM: minimum 8 GB
  • GPU: Intel, AMD lub NVIDIA — Vulkan nie jest potrzebny
  • Zależności: lutris, winetricks, wine
  • Pliki: installer Affinity x64.exe (z własnej licencji)

Krok 1 — zainstaluj Lutris i pobierz runner

Zainstaluj Lutris przez menedżer pakietów:

# Arch / CachyOS
sudo pacman -S lutris winetricks

Uruchom Lutris, wejdź w Runners i pobierz ElementalWarriorWine-x86_64. To fork Wine-GE z dodatkowymi patchami dla aplikacji .NET.

Krok 2 — przygotuj YAML

Utwórz plik affinity.yaml o treści:

name: Affinity Suite
slug: affinity-suite
game_slug: affinity-suite
arch: win64
runner: wine
version: ElementalWarriorWine-x86_64
description: Affinity Suite via Wine

script:
  wine:
    version: ElementalWarriorWine-x86_64
    battleye: false
    d3d_extras: false
    dxvk: false
    vkd3d: false
    dxvk_nvapi: false
    eac: false
    fsr: false

  game:
    prefix: $GAMEDIR

  system:
    gamescope: false
    xephyr_fullscreen: false

  installer:
    - task:
        name: create_prefix
        description: Creating prefix...
    - merge:
        description: Copying WinMetadata
        src: WinMetadata
        dst: $GAMEDIR
    - extract:
        filename: WinMetadata.zip
        description: Extracting WinMetadata...
        file: $GAMEDIR/WinMetadata.zip
        dst: $GAMEDIR/drive_c/windows/system32/WinMetadata
    - task:
        name: winetricks
        description: Installing winetricks packages...
        app: --unattended --force vcrun2022 dotnet7 corefonts tahoma
    - task:
        name: winetricks
        description: Setting Windows 11 mode...
        app: --unattended --force win11
    - task:
        name: wineexec
        description: Installing Affinity...
        executable: setup
        prefix: $GAMEDIR

  files:
    - setup: "N/A:Select the Affinity's setup file"
    - WinMetadata: https://archive.org/download/win-metadata/WinMetadata.zip
⚠️ Uwaga: Nie dodawaj renderer=vulkan do linii winetricks. Na kartach Intel i wielu AMD ten parametr crashuje Lutris w trakcie instalacji bez żadnego komunikatu błędu.

Krok 3 — uruchom instalację

W Lutris: przycisk +Install from local file → wybierz swój plik YAML.

Lutris pobierze WinMetadata (~2 MB), a następnie przez ~15 minut zainstaluje vcrun2022, dotnet7, corefonts i tahoma. Gdy pojawi się prośba o plik setup — wskaż Affinity x64.exe.

Instalacja Affinity zajmuje kolejne kilka minut.

Krok 4 — ustaw ścieżkę wykonywalną

Po zakończeniu instalacji Lutris zgłosi błąd: "gra nie ma pliku wykonywalnego". To normalne — YAML nie ustawia tej ścieżki automatycznie.

Prawym na Affinity SuiteConfigure → zakładka Game options → pole Executable:

drive_c/Program Files/Affinity/Affinity/Affinity.exe

Zapisz.

Krok 5 — doinstaluj .NET Framework 4.8 (obowiązkowe)

Bez tego kroku Affinity uruchomi się pod Wine Mono i crashuje z błędem Invalid IL code in MonitorCollection. Trzeba doinstalować prawdziwy .NET Framework 4.8:

WINEPREFIX=~/affinity \
WINE=~/.local/share/lutris/runners/wine/ElementalWarriorWine-x86_64/bin/wine \
winetricks --unattended --force dotnet48

Instalacja trwa 15–20 minut. Po zakończeniu uruchom Affinity przez Lutris.

Weryfikacja

Jeśli Affinity się otworzył i pokazuje splash screen a potem interfejs — wszystko działa. Przetestuj otwarcie pliku .afphoto lub .afdesign.

Troubleshooting

Problem: Lutris crashuje podczas instalacji, log urywa się po "win64 Prefix created"
Przyczyna: renderer=vulkan w linii winetricks — crashuje na Intel Iris Xe
Rozwiązanie: Upewnij się, że YAML nie zawiera renderer=vulkan. Usuń prefix i zainstaluj ponownie:

rm -rf ~/affinity

Problem: Invalid IL code in Serif.Win32.MonitorCollection:UpdateDisplays()
Przyczyna: Affinity uruchamia się pod Wine Mono zamiast .NET Framework 4.8
Rozwiązanie: Wykonaj Krok 5 — doinstaluj dotnet48


Problem: FileLoadException: The given assembly name or codebase was invalid (0x80131047)
Przyczyna: dotnet48 nie zainstalowany lub WinMetadata brakuje w system32
Rozwiązanie: Sprawdź czy katalog istnieje:

ls ~/affinity/drive_c/windows/system32/WinMetadata/

Jeśli pusty — zainstaluj ponownie od Kroku 3


Problem: Lutris zgłasza "brak pliku wykonywalnego" przy każdym uruchomieniu mimo ustawionej ścieżki
Przyczyna: Spacje na początku ścieżki w polu Executable w konfiguracji Lutris
Rozwiązanie: Configure → Game options → usuń spacje przed drive_c/...

Podsumowanie

Po instalacji masz działające Affinity v1 na Linuxie. Kluczowe rzeczy do zapamiętania:

  • Nigdy renderer=vulkan na Intel/AMD bez dedykowanej karty z pełnym Vulkan
  • dotnet7 z YAML to tylko runtime — dotnet48 trzeba doinstalować osobno
  • Lutris nie ustawia ścieżki exe automatycznie — zawsze trzeba ją wpisać ręcznie

Tytuł SEO: Affinity na Linuxie — instalacja przez Wine i Lutris
Meta opis: Kompletna instrukcja uruchomienia Affinity v1 na Linuxie przez Lutris i Wine. Gotowy YAML, typowe błędy i ich naprawy.
Tagi: linux, homelab, self-hosting
URL slug: affinity-linux-wine-lutris
Feature image alt: Ekran aplikacji Affinity uruchomionej na Linuxie w środowisku Wine