# erickwendel/omarchy-gaming-setup architecture

> Architecture diagram of the GitHub repository erickwendel/omarchy-gaming-setup, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-10). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/erickwendel/omarchy-gaming-setup
- Repository: https://github.com/erickwendel/omarchy-gaming-setup

## Overview

Omarchy gaming setup is a machine-specific restoration and integration project. Its main workflow starts with setup.sh on a fresh Omarchy install, installs/configures hardware support and desktop services, then prepares Steam, emulators, and selected Proton games. The graph retains the documented hardware, guest-session, display, resolution, and game-specific branches. Many component implementations were not sampled, so their links reflect README statements rather than inspected call sites; the emulator generator and several configuration helpers were sampled directly.

Main entry points: [`setup.sh`](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/setup.sh) (System setup), [`components/pcsx2`](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/pcsx2) (PCSX2 integration), [`components/steam`](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/steam) (Steam integration), [`components/hypr`](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/hypr) (Hyprland integration)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_restore["System restoration"]
  node_setup["System setup<br/>[setup.sh]"]
  node_packages["Dependencies<br/>[packages.sh]"]
  node_storage["Games storage<br/>[storage.sh]"]
end

subgraph group_hardware["Hardware support"]
  node_openrgb["OpenRGB service<br/>[openrgb.sh]"]
  node_delta["Delta service<br/>[delta.sh]"]
  node_g29["G29 mode support<br/>[g29.sh]"]
  node_g923["G923 driver<br/>[g923.sh]"]
  node_handbrake["Handbrake bridge<br/>[handbrake.sh]"]
end

subgraph group_desktop["Desktop and Steam"]
  node_hypr["Hyprland integration"]
  node_steam["Steam integration"]
  node_guest["Steam guest session"]
  node_emulators["Emulator entries<br/>[emulators.py]"]
end

subgraph group_games["Game integrations"]
  node_pcsx2["PCSX2 integration"]
  node_pcsx2dlss["PCSX2 DLSS 5"]
  node_assetto["Assetto Corsa<br/>[assetto-corsa.sh]"]
  node_forza["Forza Horizon 5<br/>[forza-horizon-5.sh]"]
  node_nfsmw["NFS Most Wanted<br/>[nfsmw.sh]"]
  node_nfsu2["NFS Underground 2<br/>[nfsu2.sh]"]
end

node_user(("Machine owner"))
node_steamapp["Steam"]
node_omarchy["Omarchy install"]

node_user -->|"runs restore"| node_setup
node_setup -->|"installs"| node_packages
node_setup -->|"configures"| node_storage
node_setup -->|"installs"| node_openrgb
node_setup -->|"installs"| node_delta
node_setup -->|"configures"| node_g29
node_setup -->|"installs"| node_g923
node_setup -->|"configures"| node_handbrake
node_setup -->|"configures"| node_hypr
node_setup -->|"configures"| node_steam
node_setup -->|"installs"| node_guest
node_setup -->|"generates entries"| node_emulators
node_setup -->|"configures"| node_pcsx2
node_setup -->|"installs"| node_pcsx2dlss
node_setup -->|"configures"| node_assetto
node_setup -->|"configures"| node_forza
node_setup -->|"configures"| node_nfsmw
node_setup -->|"configures"| node_nfsu2
node_omarchy -->|"is restored by"| node_setup
node_steam -->|"shares install"| node_guest
node_steam -->|"configures"| node_steamapp
node_hypr -->|"supports windows"| node_pcsx2
node_steamapp -->|"launches wrapper"| node_pcsx2
node_steamapp -->|"launches game"| node_assetto
node_steamapp -->|"launches wrapper"| node_forza
node_steamapp -->|"launches wrapper"| node_nfsmw
node_steamapp -->|"launches game"| node_nfsu2
node_emulators -->|"creates launch entries"| node_steamapp
node_pcsx2 -->|"extends runtime"| node_pcsx2dlss

click node_setup "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/setup.sh"
click node_packages "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/packages.sh"
click node_storage "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/storage.sh"
click node_openrgb "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/openrgb.sh"
click node_delta "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/delta.sh"
click node_g29 "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/g29/g29.sh"
click node_g923 "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/g923/g923.sh"
click node_handbrake "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/handbrake/handbrake.sh"
click node_hypr "https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/hypr"
click node_steam "https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/steam"
click node_guest "https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/steam-guest"
click node_emulators "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/emulators/emulators.py"
click node_pcsx2 "https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/pcsx2"
click node_pcsx2dlss "https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/pcsx2-dlss5"
click node_assetto "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/assetto-corsa/assetto-corsa.sh"
click node_forza "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/forza-horizon-5/forza-horizon-5.sh"
click node_nfsmw "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/nfsmw/nfsmw.sh"
click node_nfsu2 "https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/nfsu2/nfsu2.sh"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_setup,node_packages,node_storage toneBlue
class node_openrgb,node_delta,node_g29,node_g923,node_handbrake toneAmber
class node_hypr,node_steam,node_guest,node_emulators toneMint
class node_pcsx2,node_pcsx2dlss,node_assetto,node_forza,node_nfsmw,node_nfsu2 toneRose
class node_user,node_steamapp,node_omarchy toneIndigo
```

## Components

### System restoration

- [System setup](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/setup.sh): `setup.sh`
- [Dependencies](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/packages.sh): `scripts/packages.sh`
- [Games storage](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/storage.sh): `scripts/storage.sh`

### Hardware support

- [OpenRGB service](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/openrgb.sh): `scripts/openrgb.sh`
- [Delta service](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/scripts/delta.sh): `scripts/delta.sh`
- [G29 mode support](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/g29/g29.sh): `components/g29/g29.sh`
- [G923 driver](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/g923/g923.sh): `components/g923/g923.sh`
- [Handbrake bridge](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/handbrake/handbrake.sh): `components/handbrake/handbrake.sh`

### Desktop and Steam

- [Hyprland integration](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/hypr): `components/hypr`
- [Steam integration](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/steam): `components/steam`
- [Steam guest session](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/steam-guest): `components/steam-guest`
- [Emulator entries](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/emulators/emulators.py): `components/emulators/emulators.py`

### Game integrations

- [PCSX2 integration](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/pcsx2): `components/pcsx2`
- [PCSX2 DLSS 5](https://github.com/erickwendel/omarchy-gaming-setup/tree/main/components/pcsx2-dlss5): `components/pcsx2-dlss5`
- [Assetto Corsa](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/assetto-corsa/assetto-corsa.sh): `components/assetto-corsa/assetto-corsa.sh`
- [Forza Horizon 5](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/forza-horizon-5/forza-horizon-5.sh): `components/forza-horizon-5/forza-horizon-5.sh`
- [NFS Most Wanted](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/nfsmw/nfsmw.sh): `components/nfsmw/nfsmw.sh`
- [NFS Underground 2](https://github.com/erickwendel/omarchy-gaming-setup/blob/main/components/nfsu2/nfsu2.sh): `components/nfsu2/nfsu2.sh`

### Other components

- **Machine owner**
- **Steam**
- **Omarchy install**

## Connections

- Machine owner → System setup: runs restore (evidence: `README.md`)
- System setup → Dependencies: installs (evidence: `README.md`)
- System setup → Games storage: configures (evidence: `README.md`)
- System setup → OpenRGB service: installs (evidence: `README.md`)
- System setup → Delta service: installs (evidence: `README.md`)
- System setup → G29 mode support: configures (evidence: `README.md`)
- System setup → G923 driver: installs (evidence: `README.md`)
- System setup → Handbrake bridge: configures (evidence: `README.md`)
- System setup → Hyprland integration: configures (evidence: `README.md`)
- System setup → Steam integration: configures (evidence: `README.md`)
- System setup → Steam guest session: installs (evidence: `README.md`)
- System setup → Emulator entries: generates entries (evidence: `README.md`)
- System setup → PCSX2 integration: configures (evidence: `README.md`)
- System setup → PCSX2 DLSS 5: installs (evidence: `README.md`)
- System setup → Assetto Corsa: configures (evidence: `README.md`)
- System setup → Forza Horizon 5: configures (evidence: `README.md`)
- System setup → NFS Most Wanted: configures (evidence: `README.md`)
- System setup → NFS Underground 2: configures (evidence: `README.md`)
- Omarchy install → System setup: is restored by (evidence: `README.md`)
- Steam integration → Steam guest session: shares install (evidence: `README.md`)
- Steam integration → Steam: configures (evidence: `README.md`)
- Hyprland integration → PCSX2 integration: supports windows (evidence: `README.md`)
- Steam → PCSX2 integration: launches wrapper (evidence: `README.md`)
- Steam → Assetto Corsa: launches game (evidence: `README.md`)
- Steam → Forza Horizon 5: launches wrapper (evidence: `README.md`)
- Steam → NFS Most Wanted: launches wrapper
- Steam → NFS Underground 2: launches game (evidence: `README.md`)
- Emulator entries → Steam: creates launch entries (evidence: `components/emulators/emulators.py`)
- PCSX2 integration → PCSX2 DLSS 5: extends runtime (evidence: `README.md`)
