Gemini
Gemini 是一个新的、协作设计的互联网协议,它探索了 gopher 和 Web 之间的空间,力求解决前者的(感知到的)局限性,同时避免后者的(不可否认的)缺陷。
agate 服务器
agate 是一个简单的 Gemini 超文本协议服务器,使用 Rust 编写。Agate 功能非常少,只能提供静态文件服务。它使用异步 I/O,即使在低端硬件上运行并为许多并发请求提供服务时,也应该非常高效。
安装
配置
生成自签名 TLS 证书和私钥。例如,如果您安装了 OpenSSL 1.1,则可以使用如下命令。(将主机名 example.com
替换为您的 Gemini 服务器的地址。)
$ openssl req -x509 -newkey rsa:4096 -keyout key.rsa -out cert.pem \ -days 3650 -nodes -subj "/CN=example.com"
运行服务器。您可以使用以下参数来指定内容目录、证书和密钥文件、要监听的 IP 地址和端口、请求 URL 中期望的主机名以及要包含在 text/gemini 文件 MIME 类型中的默认语言代码:(再次将主机名 example.com
替换为您的 Gemini 服务器的地址。)
$ agate --content path/to/content/ \ --key key.rsa \ --cert cert.pem \ --addr [::]:1965 \ --addr 0.0.0.0:1965 \ --hostname example.com \ --lang en-US
Gemini 客户端
终端客户端
- amfora (Go),一个“花哨”的终端客户端。
- asuka-gitAUR (Rust),一个基于 NCurses 的终端客户端。
- av-98AUR (Python),一个从流行的 VF-1 Gopher 客户端派生而来的终端客户端。
- bombadillo-gitAUR (Go),一个结合了 Gopher 和 Gemini 的终端客户端,具有 vim 风格的按键映射。
- Elpher (Emacs),一个为流行的文本编辑器/操作系统设计的 Gopher 和 Gemini 客户端。
图形客户端
- castorAUR (Rust, GTK),最早的 GUI 客户端之一,支持 Gemini、Gopher 和 finger。
- kristallAUR (C++, Qt),一个结合了 Gopher 和 Gemini 的 GUI 客户端。
- lagrangeAUR (C, SDL),一个漂亮的标签式 GUI 客户端,为 Windows 和 MacOS 提供了预构建的二进制文件。
Web 代理
您可以使用以下 Web 代理之一从 Web 浏览器探索 Geminispace。
- Mozz.us portal
- geminize (Firefox 扩展)