You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Philipp 7f5223acb6
Install vcrun2019
2 years ago
patches Add wine patches needed for 3.14. 2 years ago Add help text to script. 2 years ago
captureMouse.reg Capture mouse by default. 2 years ago
default.nix Install vcrun2019 2 years ago
dxvk.nix dxvk: 1.9.0 -> 1.9.1 2 years ago
fonts.nix Initial commit 2 years ago
helpText.txt Add help text to script. 2 years ago
win10.reg Initial commit 2 years ago


Nixcitizen is an attempt to package a wine application in a sensible and practical way with nix. The idea that the WINEPREFIX is handled by a script that lives inside the nix store which derives the WINEPREFIX from it's own path inside the store, leading to a creation and setup of a new WINEPREFIX as soon as the script, it's dependencies or any configuration changes.

The volatile nature of the WINEPREFIX leads to challenges in regards to preservation of needed state, this is handled in the following ways:

  • The Application in itself and the launcher folder containing the session data are created in the users home directory and symlinked into each prefix.
  • Internal wine settings are handled as registry files and automatically applied when a new prefix is created.

All dependencies are handled by wine. dxvk is compiled with nix and copied into each prefix and fonts are handled in a similar manner


First clone this repository, then

On nixos

  • Put (pkgs.callPackage ./path/to/repo { }) into environment.systemPackages or users.extraUsers.<name>.packages or into your home-manager configuration packages

with nix-env

  • plz no!

Installation parameters

  • installDir: Contains the Roberts Space Industries folder that is being linked into the Program Files folder of the prefixs.
  • launcherCache: AppData folder of the launcher. Holds the session data.
  • prefixBaseDir: Where all the prefixes are installed under.
  • binName: Name of the generated executable.
  • launcherArgs: Arguments the RSI Launcher is called with.
  • winePackage: Package of wine to use.
  • wineGlobalEnv: Global variables that are exported at script startup.
  • winePatches: List of patches for wine for easier access.
  • virtualDesktop: NULL or a string in the form AxB with A and B being positive Integers that define the height and width of the wine virtual desktop.
  • registryFiles: Additional registry files to add to each prefix.
  • captureMouse: Whether wine captures fullscreen windows.

Script parameters

  • --install-prefix: Installs the prefix if needed.
  • --install-launcher: Installs the launcher. Can be used to reinstall.
  • --clean: Deletes all but the currently used prefixes of the game.
  • --remove-prefix: Deletes the currently used prefix. Use with care.
  • --run-game: Runs the game (after installing the prefix if needed). Default behaviour.
  • --print-prefix: Prints the current prefix path.
  • --help: Prints help text.
  • --wine: Runs a wine executable inside the context of the script. Example: starcitizen --wine winecfg


This repository does not host any copyrighted content. All content is fetched from official sources and is never redistributed by the author of this software. It does not help in any way to cheat or pirate the game. A normal account is still needed to install or play the game.