Skip to content

CLI tools ​

Catalog v8.

Installs tools for finding files, reading code and data, making HTTP requests, and inspecting the VM. Also enables Git and configures delta as its diff pager.

Select ​

Both shell presets include these tools; there is no selector for them:

toml
[shell]
preset = "terminal" # or "minimal"

Apply the change after editing limanix.toml.

Versions ​

These tools come from the catalog's base Nixpkgs revision. This module has no version lines.

Use ​

Run these commands inside the VM:

CommandPurpose
rgSearch file contents with ripgrep
fdFind files by name
fzfSelect from a list with fuzzy search
batRead files with syntax highlighting
ezaList directory contents
deltaRead highlighted diffs
jqQuery JSON
yqQuery YAML with Mike Farah's yq, packaged as yq-go
xhSend HTTP requests
btopInspect CPU, memory, and processes
dustInspect directory sizes
dufInspect filesystem space
tldrRead command examples with tealdeer

For example, search the current project and select a file:

console
rg TODO .
fd --type f | fzf

Download tealdeer's command examples before first use:

console
tldr --update
tldr tar

The update needs internet access and saves the pages in the VM user's cache.

Git ​

The VM does not copy your Mac's commit identity. Set it once inside the VM:

console
git config --global user.name "Your Name"
git config --global user.email "you@example.com"

Git writes these settings to ~/.gitconfig in the persistent home of the VM user, or to ~/.config/git/config when that file already exists. Run the same commands with --local inside a repository to use another identity there. Authentication for private repositories belongs to the guest account too: an SSH key mounted into the VM or a credential helper.

Git diffs ​

Inside a Git repository, git diff and git log -p use delta when Git opens a pager. Interactive staging uses delta's color-only filter. The settings are written to the VM's system Git configuration; a repository or user Git configuration can override them. With the default system theme flavor, BAT_THEME=ansi makes bat, and delta through it, highlight in the terminal's colors.

Configuration and integration
BoundaryContract
SettingsStandard programs.git.config controls the default delta pager and interactive filter
Personal stateGit settings in ~/.gitconfig; tealdeer pages in the user cache
IntegrationEnables Git; part of both shell presets, usable without an editor or tmux
Services and capabilitiesNo daemon or language-support declarations

Corner cases ​

CaseBehavior or next step
Missing tldr pagesRun tldr --update once with network access
Missing commit identitySet user.name and user.email in the guest; the Mac identity is not copied
Pager behaves differentlyCheck repository and user Git settings, which can override system defaults
System monitorbtop displays the guest workload; it does not monitor all Mac processes

Free and open source under the Apache License 2.0.