Add Readme.md
Signed-off-by: Philipp <philipp+dev@xndr.de>
This commit is contained in:
parent
32a252e9a4
commit
dff0dbccd9
63
README.md
Normal file
63
README.md
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
# Idea
|
||||||
|
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](https://github.com/doitsujin/dxvk)
|
||||||
|
is compiled with nix and copied into each prefix and fonts are handled in a
|
||||||
|
similar manner
|
||||||
|
|
||||||
|
# Installation
|
||||||
|
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`
|
||||||
|
|
||||||
|
# Disclaimer
|
||||||
|
This repository does not host any copyrighted content. All contend 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.
|
Loading…
Reference in a new issue