Rogallo is a terminal-based client for the Gemini Protocol. Key features include:
- A bookmark facility (with search)
- A location history facility (with search)
- A backward/forward navigation facility
- Support for setting a home page
- Support for user input (
1xresponses), including masked inputs for sensitive fields - Support for in-application generation of self-signed client certificates, with persistent per-capsule management
- Support for redirections (
3xresponses) - Copy-to-clipboard support for URIs or page contents
- Designed to work on macOS, GNU/Linux and Windows (and likely on other operating systems that support modern Python)
- Mouse support
- A view source facility
- A trust-on-first-use (TOFU) trust facility
- Has in-application help screens
- Has an easy-to-use command palette
- Hands unknown MIME types off to the operating system
- Optional support (on by default) for ANSI escape sequences in pages
- Support for viewing local Gemtext files
- Choice of themes
- Persistent user configuration across sessions
- Fully responsive layout that adjusts dynamically to terminal resizing
The application can be installed using pipx:
pipx install rogalloThe application can be installed using uv:
uv tool install rogalloIf you don't have uv installed you can use uvx.sh to
perform the installation. For GNU/Linux or macOS or similar:
curl -LsSf uvx.sh/rogallo/install.sh | shor on Windows:
powershell -ExecutionPolicy ByPass -c "irm https://uvx.sh/rogallo/install.ps1 | iex"Once installed run the rogallo command.
Rogallo stores files in an rogallo directory within both $XDG_DATA_HOME
and
$XDG_CONFIG_HOME.
If you wish to fully remove anything to do with Rogallo you will need to
remove those directories too.
Expanding for the common locations, the files normally created are:
~/.config/rogallo/configuration.json-- The configuration file.~/.local/share/rogallo/*-- The locally-held data.
If you need help, or have any ideas, please feel free to raise an issue or start a discussion.
See the TODO tag in issues to see what I'm planning.
