💾 Archived View for gemini.rmf-dev.com › repo › Vaati › Vgmi › readme captured on 2023-07-22 at 16:20:24. Gemini links have been rewritten to link to archived content
View Raw
More Information
⬅️ Previous capture (2023-04-19)
➡️ Next capture (2023-12-28)
-=-=-=-=-=-=-
Go back
Vgmi by Vaati
View account
Gemini client written in C with vim-like keybindings
git clone https://gmi.rmf-dev.com/Vaati/Vgmi
Log
Files
Refs
License
Readme
Readme
Vgmi
Gemini client written in C with vim-like keybindings
Screenshots
On Konsole 1.6.6
On gnome terminal
On uxterm
Statically linked binaries
x86_64
Linux
OpenBSD
NetBSD
FreeBSD
Illumos
aarch64
Linux
FreeBSD
Bug reports
If you find a bug you can send an email at rawmonk@firemail.cc, or send a message to Vaati on GmiChat
GmiChat
It's also possible to open an issue on the Github page
Github
Keybindings
- k - Scroll up
- j - Scroll down
- gT - Switch to the previous tab
- gt - Switch to the next tab
- H - Go back in the history
- L - Go forward in the history
- gg - Go at the top of the page
- G - Go at the bottom of the page
- / - Open search mode
- : - Open input mode
- u - Open input mode with the current url
- f - Show the history
- r - Reload the page
- [number]Tab - Select link
- Tab - Scroll to the line number
- Shift+Tab - Open selected link in a new tab
- Del - Delete the selected link from the bookmarks
You can prefix a movement key with a number to repeat it.
Commands
- :q - Close the current tab
- :qa - Close all tabs, exit the program
- :o [url] - Open an url
- :s [search] - Search the Geminispace using geminispace.info
- :nt [url] - Open a new tab, the url is optional
- :add [name] - Add the current url to the bookmarks, the name is optional
- :[number] - Follow the link
- :gencert - Generate a certificate for the current capsule
- :forget [host] - Forget the certificate for the host
- :ignore [host] - Ignore expiration for the host certificate
- :download [name] - Download the current page, the name is optional
- :exec - Open the last downloaded file
Sandboxing
FreeBSD
On FreeBSD, Vgmi uses Capsicum to limit the filesystem and to enter capability mode, it also uses Casper for networking while in capability mode
OpenBSD
On OpenBSD, Vgmi uses Unveil to limit access to the filesystem and Pledge to restrict the capabilities of the program
Linux
On Linux, Vgmi uses Seccomp to restrict system calls and LandLock to restrict the filesystem
Illumos and Solaris
On Illumos and Solaris, Vgmi uses Privileges, separating read, write and networking privileges in different processes
Dependencies
LibreSSL - fork of OpenSSL developed by the OpenBSD project
termbox2 - terminal rendering library
Optional dependency
stb-image - image loading library
Building
Executing the build.sh script will download all dependencies and build Vgmi