# steam-frame-nix [Home Manager](https://github.com/nix-community/home-manager) modules for the Valve Steam Frame: SteamOS on `aarch64-linux`, standalone home-manager on a non-NixOS system. They work around quirks of the Frame's two graphical sessions (portal config, keyboard layout, VR keyboard, "+" menu, clipboard, Firefox) declaratively, so every change can be reverted by activating an older home-manager generation. All options live under `steamFrame.*`. The portal fix and clipboard sync are on by default; everything else is opt-in. ## Install On the Frame (or a Steam Deck), open a terminal (Konsole in the desktop mode / nested desktop) and run: ```sh curl -fsSL https://raw.githubusercontent.com/lhns/steam-frame-nix/main/install.sh | bash -s -- install ``` `sudo` needs a password: if you never set one, run `passwd` first. What it does: 1. Installs Nix with the [NixOS nix-installer](https://github.com/NixOS/nix-installer) (`steam-deck` planner: the store lives in `/home/nix`, which survives SteamOS updates; flakes enabled). The read-only root filesystem is unlocked only for the installation. Skipped if Nix already works. 2. Uses the Home Manager configuration in `~/.config/home-manager`, or `--flake `. If there is none, it creates one in `~/nix-config` from this repo's template (a git repo, linked to `~/.config/home-manager`) with your user name filled in. 3. Activates it (`home-manager switch`); existing dotfiles that conflict are renamed to `*.hm-backup-