Keystone

Self-sovereign infrastructure platform with secure, encrypted NixOS deployments


Project maintained by ncrmro Hosted on GitHub Pages — Theme by mattgraham

Terminal Module

The Keystone Terminal module (keystone.terminal) provides a comprehensive, opinionated command-line development environment. It is designed to work consistently across NixOS, macOS, and other Linux distributions via Home Manager.

Enable the Module

To enable the terminal environment in your Home Manager configuration:

keystone.terminal.enable = true;

This installs and configures:

Helix Editor

Keystone configures Helix as the default editor (EDITOR and VISUAL environment variables are set to hx).

Key Features

Keybindings (Normal Mode)

Key Action Description
Ret (Enter) :write Save the current buffer.
F6 Markdown Preview Selects all text, renders Markdown to HTML using Pandoc, opens it in the default browser, and copies the preview URL to the clipboard.
F7 Toggle Soft Wrap Toggles soft wrapping of text.

Markdown Preview

The Markdown preview feature (F6) uses a robust helper script (helix-preview-markdown) that:

  1. Pipes the full content of the current file (even if unsaved) to Pandoc.
  2. Renders it to /tmp/helix-preview.html.
  3. Opens the HTML file in your system’s default browser (via xdg-open).
  4. Copies the URL (file:///tmp/helix-preview.html) to your clipboard (using wl-copy on Linux or pbcopy on macOS) so you can paste it into a different browser if preferred.

Language Servers

The module installs and configures the following language servers automatically:

Shell Environment

Zsh

Zellij

Zellij is configured with sensible keybindings and acts as the default terminal multiplexer.