Skip to content

Environment and theme ​

Three small tables shape the VM around you. [env] sets environment variables, [theme] picks the colors, and [user] sets up the account you work in.

Set environment variables ​

toml
[env]
APP_ENV = "development"
APP_PORT = "8080"
OPTIONAL_SETTING = ""

The variables apply to the whole VM: login sessions and system and user services. Apply a change with limanix update --config limanix.toml; see Changing a VM.

RuleExample
Every value is a string, numbers includedAPP_PORT = "8080"
An empty string is a valueOPTIONAL_SETTING = ""
Names use ASCII letters, digits and _, and do not start with a digitAPP_ENV
Values are literal text: they do not read the Mac's variables or run commandsTOKEN = "$TOKEN" sets the text $TOKEN

Without an [env] table, the VM gets APP_ENV = "development" and APP_LOG_LEVEL = "debug". A table with entries sets exactly those entries. For no variables, write an empty [env] table, or env = {} before the first table.

WARNING

[env] is plain text, not secret storage. The values are written to files under /etc/limanix in the VM, readable by root and your account's group.

Choose a theme ​

toml
[theme]
flavor = "system"
FlavorColors
system, the defaultYour terminal's own 16 colors and its background
latteCatppuccin, light
frappeCatppuccin, dark
macchiatoCatppuccin, darker
mochaCatppuccin, darkest

lmx and the catalog tools with colors share the theme, among them the Zsh prompt, tmux, AstroNvim, Yazi, Lazygit, Posting and Harlequin.

With system, the VM draws in the colors of your terminal's theme on the Mac, on its background. When you change that theme, or the terminal switches between light and dark, the VM follows at once; there is nothing to apply. A few tools keep colors of their own:

ToolWith system
AstroNvimCatppuccin text colors on a transparent background: Latte on a light terminal background, Mocha on a dark one
HarlequinCatppuccin Mocha

A Catppuccin flavor sets its colors in every tool, and several tools also paint its background: choose the flavor that matches your terminal. Apply it with limanix update --config limanix.toml; the VM restarts with the new colors. Settings you make in a tool itself still take precedence. NO_COLOR or TERM=dumb turn the colors of lmx off.

Set up your account ​

toml
[user]
name = "dev"
home = "/home/dev"
sudo = true
KeyDefaultWhat it sets
namedevThe account limanix shell logs you in as
home/home/devYour home folder in the VM, kept on the Mac under ~/.limanix
sudotruePasswordless sudo in the VM; false leaves it out

A name starts with a lowercase letter or _, followed by lowercase letters, digits, _ or -, up to 32 characters. root and limanix-admin are reserved. The name can differ from your Mac account's name; the account uses your Mac account's numeric user ID for the ownership of shared files. LimaNix creates a group for it.

home follows the rules of paths in the VM, and Files and storage explains where it lives on the Mac. sudo applies only in the VM and grants no administrator rights on the Mac.

name and home are fixed when you create the VM; changing them needs a new VM. sudo changes with limanix update.

Free and open source under the Apache License 2.0.