💾 Archived View for gmi.noulin.net › 2024-02-11-my-tuis.gmi captured on 2024-08-18 at 17:22:20. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-07-08)

➡️ Next capture (2024-08-24)

-=-=-=-=-=-=-

My TUIs

Feed

date: 2024-07-05 09:32:10

categories: linux

firstPublishDate: 2024-02-11 20:51:50

2024-07-05 Update

These TUI apps are available in my open kiosk ssh service, connect like this:

ssh kiosk@apps.noulin.net
yes

About the SSH app service

My TUIs run in linux terminals and are built with:

There are no dependencies besides sheepy and gcc.

The terminal font has to support unicode 15 for the TUIs using the 2x3 pixel characters and the terminal is configured for RGB 24 bit colors, when using terminal multiplexers (screen, tmux) you might not get 24bit colors.

The TUIs built on twid have these common key shortcuts:

F1     - Help (blue box on screen top)
q      - Quit
esc    - Quit/Close help
`      - Disable/Enable mouse
ctrl+/ - Change colors (c+7, c+-, c+_)
ctrl+p - Take a screenshot (as text)

I use i3 and I have shortcuts to start my TUIs on terminal windows, I start my calendar in the st terminal with Win/Cmd Key + d:

bindsym $mod+d exec st -e calendar

After sheepy is installed, the TUIs below are installed like this:

sudo spm -g install PACKAGE_NAME

On my laptop, it takes less than 16ms to start these TUIs.

Sheepy

Sheepy is a build system for using C as a scripting language like python. It takes less than 5 minutes to install sheepy on a machine:

apt-get install gcc git
git clone https://spartatek.se/git/sheepy.git
cd sheepy
sudo -H ./install.sh

I noticed some people have issues with `git clone`.

I cant clone sheepy

An alternative is too download this tar file:

Sheepy and Libsheepy repositories (45MB)

And then run:

tar xf sheepyAndLibsheepy.tar.gz
cd sheepyAndLibsheepy/sheepy/
sudo -H ./install.sh

The readme has more details.

Sheepy Readme

alimer

`alimer` is a tui that has a list of alarms, timers and stopwatches. The alarms have weekly repeat, the timers and stopwatches can paused. The state of the app is saved on disk and restored when starting again.

sudo spm -g install alimer

alimer screenshot [IMG]

paku paku

`paku paku` is a 1D Pacman game created Aba games, to play it tap any button (except q) to turn. Press `q` to quit the game. It is a one button game.

Original paku paku game (javascript)

I reimplemented `paku paku` in C for the terminal (a font with unicode 15 is required to display correctly).

sudo spm -g install pakupaku

Precompiled executable for linux

paku paku screenshot [IMG]

Video of paku paku running on the librem5 phone

Aba games

Wikipedia article about Aba games

Aba games github

Missile Command

Missile Command is a clone of the Missile Command arcade game. I modified the code from `https://github.com/johnflakejr/MissileCommand` to run in the terminal.

Missile Command screenshot [IMG]

sudo spm -g install missileCommand

tcalc - terminal calculator

Basic tui calculator like the gui calculators. It has decimal, hexadecimal and binary numbers.

tcalc screenshot [IMG]

sudo spm -g install tcalc

manviewer

manviewer shows the man pages in a searchable tree (like a file explorer) for easy navigation.

manviewer screenshot [IMG]

sudo spm -g install manviewer

calendar

Calendar shows a month and highlights today's day. Use arrows to change month and year. Calendar supports small screens (5-6 inches).

calendar screenshot [IMG]

sudo spm -g install calendar

radio

radio is an encrypted chat system using UDP to transport the messages. There is only one broadcast channel.

radio screenshot [IMG]

Precompiled executable for linux

Client source code

patate

patate is an ascii art editor. It supports unicode, RGB colors, animations...

patate screenshot [IMG]

patate homepage

sudo spm -g install patate

bato

bato is spartan and gemini tui browser for terminals. It can parse gemtext and markdown and browse files on local disk.

bato depends on openssl for gemini.

bato screenshot [IMG]

bato displaying a markdown file [IMG]

bato.gz (gziped elf executable)

sudo spm -g install bato

heure

heure is a clock similar to tty-clock.

heure screenshot [IMG]

sudo spm -g install heure

mandelbrot

mandelbrot is a mandelbrot fractal set explorer.

mandelbrot screenshot [IMG]

mandelbrot homepage

sudo spm -g install mandelbrot

clop

clop is an asciinema player in the terminal.

clop screenshot (image from Star Wars) [IMG]

sudo spm -g install clop

timer

Timer shows a progress bar.

timer screenshot [IMG]

sudo spm -g install timer

plasma

plasma is a TUI showing the plasma demo effect.

Plasma effect article on wikipedia

plasma screenshot [IMG]

sudo spm -g install plasma

sip

sip is a Systematic Investment Planner. Enter the monthly investment, the period in years and the average yearly rate of return.

sip screenshot [IMG]

sudo spm -g install sip

Feed