Here you go > Installing Steam on Zorin = Solved*

STEAM DOCTRINE — ZORIN (APT INSTALL) — STABLE ARCHITECTURE

This document exists because we debugged everything the hard way.
Steam was never the core issue.
Filesystem structure and broken symlinks were.

============================================================
I. INSTALLATION PRINCIPLES

  1. Install Steam via APT only:
    sudo apt install steam

  2. Do NOT mix:
    - Flatpak Steam
    - Snap Steam
    - Manual tar installs
    - Multiple Steam roots

  3. Steam root should be:
    ~/.steam/debian-installation
    (APT install default)

Do not reinstall Steam to solve library or filesystem problems.
Steam reinstall does NOT fix prefix or mount corruption.

============================================================
II. DRIVE + NTFS RULES

External drive mount must use correct ownership.

fstab entry example:

UUID=AC34CABA34CA86B4 /media/jon/4TBDATA ntfs-3g uid=1000,gid=1000,umask=0022,windows_names 0 0

Critical:

  • uid=1000
  • gid=1000
  • not mounted as root-only

Verify with:
mount | grep 4TBDATA

If mount shows user_id=0, group_id=0 without uid override,
Steam may fail writing prefixes.

Filesystem permissions always matter more than Steam version.

============================================================
III. LIBRARY STRUCTURE (CRITICAL)

Working library path:
/media/jon/4TBDATA/SteamLinux

Inside steamapps/ MUST exist:

steamapps/
    common/
    compatdata/
    shadercache/
    downloading/
    workshop/

compatdata must be:
- A REAL DIRECTORY
- Not a symlink
- Not pointing to another home path
- Not pointing to another user

We fixed:
compatdata -> /home/jon/.local/... (dead path)
compatdata_local -> /home/en/... (wrong user)

Broken symlink = Proton cannot create pfx.lock
Broken symlink = Cloud fails
Broken symlink = Game fails to launch

Fix method:

rm steamapps/compatdata
rm steamapps/compatdata_local
mkdir steamapps/compatdata
chmod 777 steamapps/compatdata

After this:
Proton can create prefix.
Cloud initializes.
Sync works.

============================================================
IV. libraryfolders.vdf RULES

File:
~/.steam/steam/steamapps/libraryfolders.vdf

Must not contain empty entries like:

"1"
{
}

That breaks library parsing.

Fix by removing empty blocks.

Steam does NOT require sequential numbering.
Gaps are fine.
Empty entries are not.

============================================================
V. PROTON ARCHITECTURE

Windows games require:

steamapps/compatdata/<AppID>/

Prefix created on first successful launch.

If game fails before prefix creation:
Cloud will not initialize.
userdata// will not exist.

If prefix corrupt:
Delete ONLY that game's compatdata/ folder.
Relaunch.

Never delete full compatdata unless required.

============================================================
VI. PROTON GE INSTALL (MANUAL METHOD)

Install GE into:

~/.steam/steam/compatibilitytools.d/

Manual method:

mkdir -p ~/.steam/steam/compatibilitytools.d
Download latest GE-Proton tar.gz
Extract into compatibilitytools.d
Restart Steam

Set per-game:
Properties → Compatibility → Force version → GE-Proton

GE often better for UE5 games like Manor Lords.

============================================================
VII. CLOUD SYNC ARCHITECTURE

Cloud location:

~/.steam/steam/userdata/<SteamID>/<AppID>/

Cloud errors mean:

Either prefix never created
Or Steam cannot write locally
Or directory missing

Cloud errors are a SYMPTOM.
Prefix or filesystem errors are the CAUSE.

We confirmed:
No userdata/ existed.
Because prefix never built.
Because compatdata symlink was broken.

Once compatdata was fixed:
Prefix created.
userdata folder appeared.
Sync succeeded.

============================================================
VIII. DEBUG ORDER (THE REAL ONE)

If game fails:

  1. Check compatdata exists and is real directory.
  2. Check libraryfolders.vdf for corruption.
  3. Check mount permissions.
  4. Launch game once.
  5. Confirm compatdata/ appears.
  6. Confirm userdata/ appears.
  7. THEN evaluate Proton version.

Filesystem > Library VDF > Proton > Cloud.

Never reverse that order.

============================================================
IX. DO NOT DO THIS AGAIN

Do NOT:

  • Create compatdata symlinks
  • Point compatdata to another home path
  • Mix users (/home/en vs /home/jon)
  • Reinstall Steam to solve prefix problems
  • Assume cloud error means Steam is broken

Steam is stable.
Structure is fragile.

============================================================
X. FINAL PRINCIPLE

When Steam behaves strangely on Linux:

It is almost always:
A path problem.
A mount problem.
Or a broken symlink.

Not Steam.
Not Proton.
Not Cloud.

Stability comes from:

Clean mount
Clean library path
Real compatdata directory
Controlled Proton versions

This system now works.
Do not destabilize it unnecessarily.

The Gaming category is fitting.
But I moved this to Tutorials & Guides as I believe this can be a major reference point many of us can point to.
This is a lengthy post; but I read through it, checking for accuracy.

1 Like

Simplified - just copy/paste the whole post into your local AI. ask it to guide you thru - simple.

монтування дисків для Steam.

lsblk - знайти правильні диски: sda/sdb/sdc

sudo mkfs.ext4 -F /dev/sda - форматування/монтування диска в Ext4
sudo mkdir /mnt/SteamGames - монтування/створення діректорії SteamGames

sudo blkid - знайти правильний UUID=дисків........
sudo nano /etc/fstab - налаштування, правильного монтування.
в самий низ додати:
UUID=........... /mnt/SteamGames ext4 defaults 0 2

sudo mkdir -p /mnt/SteamGames/SteamLibrary - монтування SteamLibrary.

sudo chown -R admin:admin /mnt/SteamGames - надати права до діректорії
admin:admin - замінити на ваші!!

sudo mount | grep SteamGames - монтування діректорії з правами.

ls /mnt/SteamGames/SteamLibrary - перевірка чи існує діректорія.

sudo chown -R admin:admin /mnt/SteamGames надання прав до діректорії на зміну.

PS: якщо у вас диски ntfs від Win10/11 - дуже рекомендую вимкнути "швидке завантаження у Windows" без цього любі дії з захищеним місцем не можливі!

якщо Windows була підключена на материнські платі у гріздо 2, у вас не вийде підключити цей диск у 1/3/4гніздо, як і інші диски оскільки у них є свої точки монтування!
тільки повне форматування дисків допоможе.