From 7a7917b3616caf464592255e6e222aa9fe275195 Mon Sep 17 00:00:00 2001 From: kptltd00m Date: Sun, 28 Jun 2026 16:59:06 +0200 Subject: [PATCH] feat(star-citizen): enabled star citizen on pc and created documentation for install --- home/programs/star-citizen/README.md | 110 +++++++++++++++++++++++++++ hosts/home-pc/home.nix | 4 + 2 files changed, 114 insertions(+) create mode 100644 home/programs/star-citizen/README.md diff --git a/home/programs/star-citizen/README.md b/home/programs/star-citizen/README.md new file mode 100644 index 0000000..01e08bc --- /dev/null +++ b/home/programs/star-citizen/README.md @@ -0,0 +1,110 @@ +# Star Citizen on Nixy + +This repo already includes Star Citizen support through `nix-citizen`. + +Relevant files: + +- `flake.nix` — declares the `nix-citizen` and `nix-gaming` inputs +- `home/programs/star-citizen/default.nix` — Home Manager module that installs the chosen Star Citizen package +- `home/programs/steam/system.nix` — Steam / gamescope / gamemode setup +- `home/programs/group/gaming-apps.nix` — extra gaming tools such as `lutris`, `mangohud`, `protonup-qt`, and `wine` + +## Recommended package + +For most setups, start with: + +- `rsi-launcher-umu` + +If you want the game package instead of just the launcher, try: + +- `star-citizen-umu` + +The `*-umu` variants are usually the safest choice on Nix-based gaming setups because they are designed around UMU/Proton style runtime handling. + +## How to enable it + +Your laptop and home-pc profiles already import the module: + +- `hosts/laptop/home.nix` +- `hosts/home-pc/home.nix` + +So you only need to turn it on in the relevant Home Manager config. + +Add or update: + +```nix +programs.star-citizen = { + enable = true; + package = "rsi-launcher-umu"; +}; +``` + +If you want the packaged game instead of the launcher, use: + +```nix +programs.star-citizen = { + enable = true; + package = "star-citizen-umu"; +}; +``` + +## Rebuild + +This flake exposes NixOS host outputs, so apply the change with your normal host rebuild command from the repo root: + +```bash +sudo nixos-rebuild switch --flake .#thinkpad +``` + +or: + +```bash +sudo nixos-rebuild switch --flake .#home-pc +``` + +If you’re building from one of the host directories directly, use the host-specific `nixos-rebuild` flow you already use in this repo. + +## First launch checklist + +Before launching the game, make sure: + +- `Steam` module is enabled +- `gamescope` and `gamemode` are available +- `protonup-qt` is installed so you can manage `GE-Proton` / `Wine-GE` +- you have enough disk space for the launcher and game files +- your GPU drivers are set up properly + +Useful tools already included in this repo: + +- `lutris` +- `mangohud` +- `goverlay` +- `gamescope` +- `gamemode` +- `protonup-qt` +- `winetricks` +- `protontricks` + +## Notes + +- Star Citizen is a Windows game, so the launcher/game still downloads its own data after installation. +- If the launcher starts but the game fails to launch, try switching the package to another `nix-citizen` option from `home/programs/star-citizen/default.nix`. +- If you want overlay/performance debugging, launch the game with `MANGOHUD=1` or use the included `mangohud` / `goverlay` tools. + +## Troubleshooting + +### Launcher doesn’t appear + +- Rebuild the Home Manager profile +- Check that `programs.star-citizen.enable = true;` +- Confirm the module is imported in the host profile you are using + +### Launcher opens but game fails + +- Try `rsi-launcher-umu` or `star-citizen-umu` +- Verify `protonup-qt` has a current `GE-Proton` +- Make sure `gamescope` / `gamemode` are enabled in your gaming setup + +### Need a clean reset + +If you want to switch package variants, change `programs.star-citizen.package` and rebuild again. The package selection is the only thing the module installs. diff --git a/hosts/home-pc/home.nix b/hosts/home-pc/home.nix index 0910d70..ddd2b25 100644 --- a/hosts/home-pc/home.nix +++ b/hosts/home-pc/home.nix @@ -60,6 +60,10 @@ programs = { home-manager.enable = true; + star-citizen = { + enable = true; + package = "rsi-launcher-umu"; + }; nixy = { enable = true; configDirectory = config.var.configDirectory;