testsAndMisc/linux_configuration/gaming/README.md
Krzysztof kuhy Rudnicki f15f00f3fe Re-point paths for the ~ reorganisation (home-tidy)
Also bumps the 16 meta/requirements pins the freshness gate flagged
(anthropic 1.5.0, numpy 2.5.3, pytest-randomly 5, flake8-bugbear 26.9.9,
ruff 0.16.7, pyright 1.1.414, selenium 4.49.0, hypothesis 6.168.0, lxml
6.1.3, pipdeptree 4.2.5, the two types-* stubs) and Flutter 3.47.3 in
meta/.fvmrc. One test still expected the pre-move ~/mcp-servers path.

The pre-commit hook fed .zsh files to shfmt and shellcheck, neither of
which parses zsh (SC2148/SC1071), so no zsh file could be committed since
the hook was tightened on 2026-08-22; those now get `zsh -n` instead. The
hook's own shfmt pass also staged its reformat of 8 shell files.

CI_GREEN_SKIP because main is red on exactly the dependency-freshness
finding this commit fixes, which is the documented use of that flag.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AwtowrowDXx6ccmWVPkCaF
2026-09-11 20:50:19 +02:00

65 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Dual Steam Accounts (same PC, two monitors)
Runs a second Steam instance as `player2` on HDMI-0, alongside your main session on DP-0.
Both accounts play simultaneously with full GPU acceleration — no VT switching needed.
### One-time setup (fresh install)
**1. Create the player2 user:**
```bash
sudo useradd -m -G audio,video,input -s /bin/bash player2
sudo passwd player2
```
**2. Install dependencies:**
```bash
sudo pacman -S xorg-xhost
```
**3. Add passwordless sudoers rule** (allows launching Steam as player2 without a prompt):
```bash
echo "kuhy ALL=(player2) NOPASSWD: /usr/bin/steam" | sudo tee /etc/sudoers.d/player2-steam
sudo chmod 440 /etc/sudoers.d/player2-steam
```
**4. Symlink the script into PATH:**
```bash
sudo ln -sf ~/src/testsAndMisc/linux_configuration/gaming/start-player2.sh /usr/local/bin/start-player2
```
**5. Start the getty on tty2** (needed if LightDM autologin is configured, otherwise tty2 has no login prompt):
```bash
sudo systemctl enable getty@tty2
```
### Usage
```bash
start-player2
```
A Steam window opens as `player2`. Drag it to HDMI-0 and log into the second account.
Click whichever monitor you want to control — no switching needed.
To stop: close the Steam window or `pkill -u player2 -f steam`.
### How it works
- Steam is launched as `player2` via `sudo -H -u player2 steam` on `DISPLAY=:0` (your main X session).
- Because `player2` has a separate home directory (`~/.local/share/Steam/`), the two Steam
instances don't conflict — different PID locks, different configs, different accounts.
- `xhost +local:` grants local users access to your X display.
- Full GPU acceleration since there is no nesting — both instances hit the hardware directly.
### Monitor layout
| Output | Resolution | Session |
| ------ | ---------- | ----------- |
| DP-0 | 3840×2160 | kuhy (main) |
| HDMI-0 | 2560×1440 | player2 |