One-click installer and launcher for Affinity v3 on Linux. Handles system dependencies, Wine, winetricks, .NET 4.8, GPU backends and post-install fixes, then keeps the install healthy with repair, update and uninstall.
Written in Rust with a native Slint (Fluent) interface. Clean-room implementation of the Wine pipeline.
- Dependency installation for Arch, Ubuntu-family, Fedora and openSUSE
- Wine prefix bootstrap with dotnet48 verification
- Automatic Wine DPI from the display's resolution and scale
- GPU acceleration via vkd3d-proton or DXVK, optional OpenCL
- Desktop entries, corruption guard, live log and visible errors
- Every action supports
--dry-run
Packages are attached to each release.
Arch and derivatives:
git clone https://github.com/360900/Affinity-Linux
cd Affinity-Linux/packaging/arch && makepkg -siDebian, Ubuntu and derivatives:
sudo apt install ./affinity-linux_<version>-1_amd64.debFedora:
sudo dnf install ./affinity-linux-<version>-1.x86_64.rpmopenSUSE:
sudo zypper install ./affinity-linux-<version>-1.x86_64.rpmAny distro, AppImage (no arguments opens the GUI, arguments go to the CLI):
chmod +x Affinity_Linux-<version>-x86_64.AppImage
./Affinity_Linux-<version>-x86_64.AppImage
./Affinity_Linux-<version>-x86_64.AppImage install --dry-runOther distros, from the release tarball (or after make build):
sudo make install # PREFIX=/usr/local by default
sudo make uninstallRequires Rust 1.85+.
cargo build --release --workspaceBuilding the GUI needs fontconfig headers (libfontconfig1-dev,
fontconfig-devel).
GUI:
affinity-linux-guiCLI:
affinity-linux install # --installer <setup.exe>, --gpu vkd3d|dxvk, --opencl true|false, --dpi <96-480>
affinity-linux launch # --wayland (experimental)
affinity-linux update
affinity-linux repair # re-apply fixes without reinstalling, --dpi <96-480>
affinity-linux uninstallAdd --dry-run to preview changes and --yes to skip prompts. Hidden
diagnostics: doctor, deps, wine-setup.
| Path | Purpose |
|---|---|
crates/core |
Headless engine |
crates/cli |
affinity-linux CLI, used by the desktop entry |
crates/app |
Slint GUI |
ui/main.slint |
Window layout |
packaging |
Desktop entry, icon, PKGBUILD, AppImage |
- Config:
~/.config/affinity-linux/config.toml(respectsXDG_CONFIG_HOME) - Wine prefix:
~/.AffinityLinux(override with--prefix) - Logs:
<prefix>/logs - Download cache:
~/.cache/affinity-linux(respectsXDG_CACHE_HOME)
GPL-3.0-or-later. See LICENSE.