You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Go to file
chris west 56274075ab (cargo-release) version 1.0.0 4 years ago
.cargo Have the linker strip the binary (cross-compile friendly) 4 years ago
.github/workflows build --locked --releaes 4 years ago
benches add some criterion benchmarks 4 years ago
doc update manual 4 years ago
img add terminalizer config 4 years ago
src strip unreadable characters (vs replace with ?) 4 years ago
.gitignore add criterion 4 years ago
CHANGELOG.md update changelog for 1.0.0 4 years ago
Cargo.lock (cargo-release) version 1.0.0 4 years ago
Cargo.toml (cargo-release) version 1.0.0 4 years ago
Cross.toml wrong file 4 years ago
LICENSE MIT 4 years ago
Makefile Have the linker strip the binary (cross-compile friendly) 4 years ago
README.md (cargo-release) version 1.0.0 4 years ago
build.rs char 4 years ago

README.md


phetch is a terminal client designed to help you quickly navigate the gophersphere.


demo of phetch in action

features

  • <1MB executable for Linux and Mac
  • Technicolor design (based on GILD)
  • No-nonsense keyboard navigation
  • Supports Gopher searches, text and menu pages, and downloads
  • Save your favorite Gopher sites with bookmarks
  • Opt-in history tracking
  • Secure Gopher support (TLS)
  • Tor support

usage

    phetch [options]       Launch phetch in interactive mode
    phetch [options] url   Open Gopher URL in interactive mode

Options:

    -s, --tls              Try to open Gopher URLs securely w/ TLS
    -o, --tor              Use local Tor proxy to open all pages
    -S, -O                 Disable TLS or Tor

    -r, --raw              Print raw Gopher response only
    -p, --print            Print rendered Gopher response only
    -l, --local            Connect to 127.0.0.1:7070

    -c, --config FILE      Use instead of ~/.config/phetch/phetch.conf
    -C, --no-config        Don't use any config file

    -h, --help             Show this screen
    -v, --version          Show phetch version

Command line options always override options set in phetch.conf.

Once you've launched phetch, use `ctrl-h` to view the on-line help.

installation

If you already have a Gopher client, download phetch here:

gopher://phkt.io/1/phetch/latest

On macOS you can install with Homebrew:

brew install xvxx/code/phetch

On Arch Linux, install phetch with your favorite AUR helper:

yay phetch

Binaries for Linux, Raspberry Pi, and Mac are available at https://github.com/xvxx/phetch/releases:

Just unzip/untar the phetch program into your $PATH and get going!

You can also build and install from source if you have cargo, make, and the other dependencies described in the next section:

git clone https://github.com/xvxx/phetch
cd phetch
env PREFIX=/usr/local make install

development

To build with TLS support on Linux, you need openssl and pkg-config:

sudo apt install -y pkg-config libssl-dev

Regular development uses cargo:

cargo run -- <gopher-url>

Pro-tip: Run a local gopher server (like phd) on 127.0.0.1:7070 and start phetch with -l or --local to quickly connect to it.

phetch builds with TLS and Tor support by default. To disable these features, or to enable only one of them, use the --no-default-features flag:

cargo build --no-default-features

You can check whether TLS is enabled by visiting the About page:

cargo run --no-default-features -- gopher://phetch/about

To enable just TLS support, or just Tor support, use --features:

cargo run --no-default-features --features tor -- gopher://phetch/about

todo

  • catch SIGWINCH

bugs

future features

  • track binary size per release
  • text views are menus when URLs are present (one per line max)
  • Find Text in Text views
  • fuzzy find incremental search
  • persistent history
  • bookmarks: toggle instead of just prepending to the file
  • bookmarks: save the title of the current page