WEM: Wine Environment Manager

Latest release: ...

wem.cfg

The $HOME/.config/wem/wem.cfg file is the global configuration file for WEM.

CacheDir

Full path to the directory where archives should be cached to.

CLI flag: --cache-dir

Default: $HOME/.local/share/wem/cache

EnvRepoURL

URL of a repo containing data for use with the wem get subcommand

CLI flag: --env-repo-url

Default: https://wem.hristos.co/get

WineEnvDir

Full path to the directory where wem envs will be created by default.

CLI flag: --wine-env-dir

Default: $HOME/.local/share/wem/envs

Custom Runners

WEM allows you to configure custom runners via wem.cfg.

WARNING! When you configure a custom runner you give WEM the ability to download and extract archives. Use this feature at your own risk! Only use sources that you trust!

Example: Dosbox Staging

As an example, here's how you would configure DOSBox Staging as a runner. Add this to wem.cfg:

[[Runners]]
  BinPathFmt = "dosbox-staging-%[1]s/dosbox"
  Compression = "xz"
  DirFmt = "dosbox-staging-%[1]s"
  ExtractedDirGlob = "dosbox-staging-linux-x86_64-*"
  Name = "dosbox"
  ReleaseURL = "https://api.github.com/repos/dosbox-staging/dosbox-staging/releases"
  TarballFmt = "dosbox-staging-linux-x86_64-%[1]s.tar.xz"
  TarballURL = "https://github.com/dosbox-staging/dosbox-staging/releases/download/%[1]s/dosbox-staging-linux-x86_64-%[1]s.tar.xz"
Fields Explained

Also available is Variants, an array of strings that denote possible variants for a runner (e.g., Kron4ek's different variants as described in wem tutorial).

Format specifiers

The example above makes use of a format specifier: %[1]s

Custom runners can make use of two different format specifiers:

You can use these as needed in your custom runner's fields.