The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

gemini - a command line client for the Gemini protocol

SYNOPSIS

gemini [--help] [--verbose] [--cert_file=filename --key_file=filename] URL

DESCRIPTION

This is a very simple client. All it does is print the response. The header is printed to standard error so the rest can be redirected to get just the content.

Usage:

    gemini gemini://alexschroeder.ch/Test

Download an image:

    gemini gemini://alexschroeder.ch:1965/do/gallery/2016-aminona/thumbs/Bisse_de_Tsittoret.jpg \
      > Bisse_de_Tsittoret.jpg

Download all the images on a page:

    for url in $(./gemini gemini://alexschroeder.ch:1965/do/gallery/2016-aminona \
                 | grep thumbs | cut --delimiter=' ' --fields=2); do
      echo $url
      ./gemini "$url" > $(basename "$url")
    done

In the shell script above, the first call to gemini gets the page with all the links, grep then filters for the links to thumbnails, extract the URL using cut (assuming a space between "=>" and the URL), and download each URL, and save the output in the filename indicated by the URL.

Client Certificates

You can provide a certificate and a key file:

        gemini --cert_file=cert.pem --key_file=key.pem \
          gemini://campaignwiki.org/play/ijirait