A useful security workstation is defined by how quickly you can move between tasks, how predictable the environment is, and how easily you can recover when a configuration change goes wrong.
1. Start with a known-good baseline
Before changing the desktop, record the current state. Keep a backup of the i3 configuration before editing it:mkdir -p ~/.config/i3/backup
cp ~/.config/i3/config ~/.config/i3/backup/config.$(date +%F-%H%M%S)Inspect custom installer scripts or dotfiles before running them. A configuration that works on one machine may assume different keycodes, display settings, or package versions.
2. Choose a modifier key that works in your VM
i3 commonly uses the Super/Windows key as its modifier. In a macOS-hosted virtual machine, key forwarding can differ: Option may arrive as Alt, while Command may be captured by the host. Test which key reaches the guest before adding more shortcuts. A common setting is:set $mod Mod1Mod1 is usually Alt; verify behavior in your hypervisor and keyboard layout.
3. Configure a reliable terminal workflow
Kitty can serve as a consistent terminal for shell work and lab sessions. Set a simple launch shortcut first:bindsym $mod+Return exec kittyChoose a font that supports your symbols, keep contrast high, and make sure transparency does not reduce readability. Test basic launch and focus behavior before building multi-pane shortcuts.
4. Build repeatable layouts
i3 can restore workspace layouts from JSON usingi3-msg append_layout. A launcher can create placeholder containers and then start terminal windows that match the expected window criteria. Test this in a dedicated workspace, inspect the tree with i3-msg -t get_tree, and confirm that each terminal lands in the intended pane. Window classes and startup timing may vary.
5. Validate and maintain the configuration
After each edit, check the configuration before reloading:i3 -C
i3-msg reloadKeep scripts in a dedicated directory such as ~/.config/i3/scripts/ and layouts in ~/.config/i3/layouts/. Group related keybindings, remove obsolete duplicates, and comment any workaround whose purpose might otherwise be forgotten.
6. Final checklist
- Terminal and launcher shortcuts work consistently.
- Keyboard layout matches the physical keyboard.
- Workspace switching and window focus are predictable.
- Scripts use stable paths and have the right permissions.
- Configuration changes can be rolled back from a backup.
- The desktop remains readable at the VM's actual resolution.
A polished i3 environment should make the work easier, not become a project that never ends. Build the minimum useful workflow first, document your shortcuts, then add visual customization.
These are general workstation configuration notes. Test changes in your own environment and use security tools only on systems you own or are explicitly authorized to assess.