Getting started
Install
Download the package for your platform from the home page or the latest GitHub release.
| Platform | Package | Install |
|---|---|---|
| macOS 11 (Big Sur) or later, Intel and Apple Silicon | nuntio-<version>-macos-universal.dmg | Open the image and drag nuntio to Applications |
| Linux (Debian / Ubuntu) | nuntio_<version>-1_amd64.deb | sudo apt install ./nuntio_<version>-1_amd64.deb |
| Linux (any distribution) | nuntio-<version>-x86_64-linux.AppImage | chmod +x it and run it |
| Linux (any distribution) | nuntio-<version>-x86_64-linux.tar.gz | Unpack it; it contains bin/, a desktop file and icons |
| Windows | nuntio-<version>-x86_64-windows-setup.exe | Run the installer; it needs no admin rights and adds nuntio to the Start menu |
| Windows | nuntio-<version>-x86_64-windows.zip | Unpack it and run nuntio.exe |
First launch
The packages are not signed yet.
- macOS: the first start is blocked. Allow it in System Settings → Privacy & Security → Open Anyway, or run
xattr -dr com.apple.quarantine /Applications/nuntio.app. (Right-click → Open no longer works since macOS 15.) - Windows: SmartScreen may ask you to confirm with More info → Run anyway.
Build from source
You need current stable Rust; rust-toolchain.toml selects the stable channel with rustfmt and clippy, and rustup installs it automatically. On Linux you also need the windowing development packages:
# Debian / Ubuntu
sudo apt-get install libxkbcommon-dev libwayland-dev libx11-dev libxcursor-dev libxrandr-dev libxi-dev
Then:
git clone https://github.com/cebor/nuntio.git
cd nuntio
cargo run -r
Configure
nuntio runs with sensible defaults and needs no config file. To change something, create ~/.config/nuntio/config.toml (or ~/.nuntio.toml). The paths are the same on Linux, macOS and Windows, so one dotfiles repo works everywhere.
[font]
family = "JetBrains Mono"
size = 14.0
# Follow the OS appearance
[theme]
light = "Solarized Light"
dark = "Tokyo Night"
[panes]
dim_inactive = 0.2
[[keybindings]]
key = "Ctrl+Shift+O"
action = "new_tab"
Changes apply as soon as you save the file. If something is wrong, a banner in the window shows the error and the previous settings stay active. You can also run nuntio-config in a nuntio tab to change settings in a terminal UI (Editing in the terminal). The configuration reference covers every option with its default, custom themes, and all keybinding actions.
Keyboard shortcuts
On macOS, nuntio uses iTerm2's shortcuts. On Linux and Windows, most shortcuts add Shift so that plain Ctrl combinations still reach the shell. Exceptions are the font size (Ctrl+/-/0), Ctrl,, CtrlTab, CtrlPgUp/PgDn and Alt1–9; bind them to none to send them to the program. All shortcuts can be changed or disabled in the config.
| Action | Linux / Windows | macOS |
|---|---|---|
| Copy / paste | CtrlShiftC / CtrlShiftV | CmdC / CmdV |
| Paste | ShiftInsert | ShiftInsert |
| New tab | CtrlShiftT | CmdT |
| New tab with another shell | CtrlShiftAltT | CmdOptT |
| Close pane (or tab) | CtrlShiftW | CmdW |
| Next / previous tab | CtrlTab / CtrlShiftTab (also CtrlPgDn / CtrlPgUp) | CmdShift] / CmdShift[ (also Cmd→ / Cmd←) |
| Go to tab 1–9 | Alt1 … Alt9 | Cmd1 … Cmd9 |
| Split side by side | CtrlShiftD | CmdD |
| Split top / bottom | CtrlShiftE | CmdShiftD |
| Focus pane | CtrlAlt←↑→↓ | CmdOpt←↑→↓ |
| Resize pane | CtrlAltShift←↑→↓ | CmdCtrl←↑→↓ |
| Zoom pane | CtrlShiftEnter | CmdShiftEnter |
| Find | CtrlShiftF | CmdF |
| Font size bigger / smaller / reset | Ctrl+ / Ctrl- / Ctrl0 | Cmd+ / Cmd- / Cmd0 |
| Full screen | F11 | CmdEnter or CtrlCmdF |
| Clear scrollback | CtrlShiftK | CmdK |
| Scroll a page | ShiftPgUp / ShiftPgDn | ShiftPgUp / ShiftPgDn |
| Scroll a line | CtrlShift↑ / ↓ | Cmd↑ / ↓ |
| Reload config | CtrlShift, | CmdShift, |
Open nuntio-config | Ctrl, | Cmd, |
| Open the notes in a new tab / a split | CtrlShiftN / CtrlAltShiftN | CmdShiftN / CmdOptShiftN |
In the find bar, Enter jumps to the next match, ShiftEnter to the previous one, AltR toggles regex mode and Esc closes the bar.
Command line
nuntio [options] [[-e] <command> [<args>...]]
| Flag | Description |
|---|---|
-e, --command <command> [<args>...] | Run a command instead of the shell in the first tab, e.g. nuntio -e htop. Everything after it goes to the command. The window closes when it exits |
--working-directory <dir> | Start the first tab in this directory |
-T, --title <title> | Accepted and ignored, so callers of x-terminal-emulator that pass a window title keep working |
--config <path> | Use this config file instead of the default location |
--log-level <level> | Log filter such as debug or nuntio=trace (RUST_LOG also works) |
-V, --version | Print the version |
-h, --help | Print the options |
When nuntio is started without a terminal (from a desktop launcher, for example), it logs to nuntio/nuntio.log in the platform's cache directory, such as ~/.cache/nuntio/nuntio.log on Linux or ~/Library/Caches/nuntio/nuntio.log on macOS (the previous run's log is kept as nuntio.old.log). If something goes wrong, that's the first place to look, and the log is welcome in a bug report.
On a system with several GPUs, nuntio skips an adapter that can't draw to the window. To choose one yourself, set WGPU_ADAPTER_NAME to part of its name (for example WGPU_ADAPTER_NAME=nvidia) or WGPU_POWER_PREF=high; with --log-level debug the log lists the adapters found.