termux
Some stuff I have found using termux terminal on my tablet. All of this stuff can be found on github and other websites and are probably a better source for the materials found here. I just copied and pasted stuff for my own personal use.
I am NOT a terminal (or linux) user. I dabble from time to time.
calcurse
Calcurse is a calendar and scheduling application for the command line. see more here.
To get it, you can install it in termux by typing:
pkg install calcurse
wordgrinder
WordGrinder is a Unicode-aware character cell word processor that runs in a terminal (or a Windows console). It is designed to get the hell out of your way and let you get some work done. You can see more here.
Install:
pkg install wordgrinder
wttr.in
Great way to get the local weather...if you happen to live in a town that has really recognizable name like Chicago or Berlin. Otherwise, you have to kinda play with it until it gets something close to what you want. Also, the ?u sets the temps to American units of F(reedom).
curl -s wttr.in/warsaw,IN?u
fastfetch
Fastfetch displays what's going on.
fastfetch --list-modules
Note that a lot of these do not work on Android.
1) Battery : Print battery capacity, status, etc
2) Bios : Print information of 1st-stage bootloader (name, version, release date, etc)
3) Bluetooth : List (connected) bluetooth devices
4) BluetoothRadio: List bluetooth radios width supported version and vendor
5) Board : Print motherboard name and other info
6) Bootmgr : Print information of 2nd-stage bootloader (name, firmware, etc)
7) Break : Print a empty line
8) Brightness : Print current brightness level of your monitors
9) Btrfs : Print Linux BTRFS volumes
10) Camera : Print available cameras
11) Chassis : Print chassis type (desktop, laptop, etc)
12) Command : Run custom shell scripts
13) Colors : Print some colored blocks
14) CPU : Print CPU name, frequency, etc
15) CPUCache : Print CPU cache sizes
16) CPUUsage : Print CPU usage. Costs some time to collect data
17) Cursor : Print cursor style name
18) Custom : Print a custom string, with or without key
19) DateTime : Print current date and time
20) DE : Print desktop environment name
21) Display : Print resolutions, refresh rates, etc
22) Disk : Print partitions, space usage, file system, etc
23) DiskIO : Print physical disk I/O throughput
24) DNS : Print configured DNS servers
25) Editor : Print information of the default editor ($VISUAL or $EDITOR)
26) Font : Print system font names
27) Gamepad : List (connected) gamepads
28) GPU : Print GPU names, graphic memory size, type, etc
29) Host : Print product name of your computer
30) Icons : Print icon style name
31) InitSystem : Print init system (pid 1) name and version
32) Kernel : Print system kernel version
33) Keyboard : List (connected) keyboards
34) LM : Print login manager (desktop manager) name and version
35) Loadavg : Print system load averages
36) Locale : Print system locale name
37) LocalIp : List local IP addresses (v4 or v6), MAC addresses, etc
38) Media : Print playing song name
39) Memory : Print system memory usage info
40) Monitor : Alias of Display module
41) Mouse : List connected mouses
42) NetIO : Print network I/O throughput
43) OpenCL : Print highest OpenCL version supported by the GPU
44) OpenGL : Print highest OpenGL version supported by the GPU
45) OS : Print operating system name and version
46) Packages : List installed package managers and count of installed packages
47) PhysicalDisk : Print physical disk information
48) PhysicalMemory: Print system physical memory devices
49) Player : Print music player name
50) PowerAdapter : Print power adapter name and charging watts
51) Processes : Print number of running processes
52) PublicIp : Print your public IP address, etc
53) Separator : Print a separator line
54) Shell : Print current shell name and version
55) Sound : Print sound devices, volume, etc
56) Swap : Print swap (paging file) space usage
57) Terminal : Print current terminal name and version
58) TerminalFont : Print font name and size used by current terminal
59) TerminalSize : Print current terminal size
60) TerminalTheme : Print current terminal theme (foreground and background colors)
61) Title : Print title, which contains your user name, hostname
62) Theme : Print current theme of desktop environment
63) TPM : Print info of Trusted Platform Module (TPM) Security Device
64) Uptime : Print how long system has been running
65) Users : Print users currently logged in
66) Version : Print Fastfetch version
67) Vulkan : Print highest Vulkan version supported by the GPU
68) Wallpaper : Print image file path of current wallpaper
69) Weather : Print weather information
70) WM : Print window manager name and version
71) Wifi : Print connected Wi-Fi info (SSID, connection and security protocol)
72) WMTheme : Print current theme of window manager
73) Zpool : Print ZFS storage pools
My current fastfetch:
fastfetch --logo none -s OS:Host:Memory:CPU:Battery:Disk:DateTime:Uptime
If you want to mess around with fastfetch logos (and there are a ton of them), check out:
fastfetch --list-logos
irssi
I don't normally use a CLI based irc client, but when I do, it is either irssi or weechat. Below you will find some irssi cheats.
pkg install irssi
When I use irssi, I don't like all the crap they put in the way. I just want text on a screen. Here are some things that will remove stuff that gets in the way:
/STATUSBAR MODIFY -disable info
This gets rid of the info bar at the bottom that tells you stuff like how many users are in the channel.
/STATUSBAR MODIFY -disable window status bar
This will remove the bar at the top that has the title in it.
fastfetch in irssi
I tried making a script that would output a fastfetch into a channel on irc:
use strict;
use vars qw($VERSION %IRSSI);
$VERSION = '1.5';
%IRSSI = (
contact => 'N/A',
name => 'Flexible Fastfetch Sysinfo',
description => 'Displays system info on separate colored lines with fallbacks',
license => 'Public Domain',
);
sub fetch_sysinfo {
my ($server, $witem) = @_;
return unless $witem; # Ensure we're in a channel/window
# Run fastfetch and capture output
my $sysinfo = `fastfetch --logo none -s OS:Memory:CPU:Battery:Disk:DateTime 2>/dev/null`;
chomp($sysinfo);
my %data;
if ($sysinfo) {
# Split by " - " and populate data hash
my @sections = split / - /, $sysinfo;
$data{'OS'} = $sections[0] if @sections > 0;
$data{'Memory'} = $sections[1] if @sections > 1;
$data{'CPU'} = $sections[2] if @sections > 2;
$data{'Battery'} = $sections[3] if @sections > 3;
$data{'Disk'} = $sections[4] if @sections > 4;
$data{'Date & Time'} = $sections[5] if @sections > 5;
}
# Fallbacks for missing or incomplete data
$data{'OS'} ||= `uname -o -r -m` || 'Unknown OS';
$data{'Memory'} ||= `free -h | grep Mem | awk '{print \$3 "/" \$2}'` || 'Unknown Memory';
$data{'CPU'} ||= `cat /proc/cpuinfo | grep "model name" | head -n 1 | cut -d: -f2-` || 'Unknown CPU';
$data{'Battery'} ||= `termux-battery-status 2>/dev/null | grep percentage | cut -d: -f2 | tr -d '",'` || 'Unknown Battery';
$data{'Disk (/)'}= `df -h / | tail -n 1 | awk '{print \$3 "/" \$2 " (" \$5 ")"}'` || 'Unknown Disk (/)';
$data{'Disk (/storage/emulated)'} = `df -h /storage/emulated | tail -n 1 | awk '{print \$3 "/" \$2 " (" \$5 ")"}'` || 'Unknown Disk (/storage/emulated)';
$data{'Date & Time'} ||= `date +"%Y-%m-%d %H:%M:%S"` || 'Unknown Date & Time';
# Define colors and labels
my @colors = (4, 7, 3, 12, 6, 9, 11); # Red, Orange, Green, Blue, Purple, Cyan, Light Cyan
my @labels = ('OS:', 'Memory:', 'CPU:', 'Battery:', 'Disk (/):', 'Disk (/storage/emulated):', 'Date & Time:');
# Send each line with colored values
my $i = 0;
for my $key ('OS', 'Memory', 'CPU', 'Battery', 'Disk (/)', 'Disk (/storage/emulated)', 'Date & Time') {
chomp($data{$key}); # Remove newlines from fallback commands
my $colored_value = "\x03" . $colors[$i % @colors] . $data{$key} . "\x0f";
$witem->command("MSG " . $witem->{name} . " $labels[$i] " . $colored_value);
$i++;
}
}
- Register the /sysinfo command
Irssi::command_bind 'sysinfo' => sub {
my ($data, $server, $witem) = @_;
fetch_sysinfo($server, $witem);
};
print "Flexible Fastfetch Sysinfo script loaded. Use /sysinfo to display detailed system info!";
It kinda works. Some stuff runs together a bit.
curl wttr.in in irssi
Same thing as above, I tried getting a script to work that would display the current weather in my location in irssi.
use strict;
use vars qw($VERSION %IRSSI);
$VERSION = '1.1';
%IRSSI = (
contact => 'N/A',
name => 'Current Weather Fetcher',
description => 'Fetches current weather for Warsaw, IN and sends it to the channel',
license => 'Public Domain',
);
sub fetch_weather {
my ($server, $witem) = @_;
return unless $witem; # Ensure we're in a channel/window
# Fetch only current weather using ?0 parameter
my $weather = `curl -s wttr.in/warsaw,IN?u?0`;
chomp($weather);
if ($weather) {
# Send the single-line current weather to the channel
$witem->command("MSG " . $witem->{name} . " Current weather in Warsaw, IN: " . $weather);
} else {
$witem->command("MSG " . $witem->{name} . " Error: Could not fetch weather data.");
}
}
- Register the /weather command
Irssi::command_bind 'weather' => sub {
my ($data, $server, $witem) = @_;
fetch_weather($server, $witem);
};
print "Current Weather Fetcher script loaded. Use /weather to display current Warsaw, IN weather!";
This one also half-ass works. I can't strip out the clouds/sun/rain that wttr.in displays.
lynx
Lynx is a text-based web browser designed for use in terminal environments, emphasizing accessibility, speed, and minimal resource usage. It renders web pages as plain text, stripping away images, JavaScript, and complex formatting, making it ideal for users who prioritize content over visual design or work in low-bandwidth or text-only systems.
I use it to access Gopher pages. To access them, you must type "lynx (address) into the termux command line.
Example:
lynx gopher://mozz.us:7003/
termux IRC client
See Termux IRC Client as all the code was moved there and will be updated more than this article.
bombadillo
Bombadillo is another Gopher browser for termux. It sucks. Don't use it.
AL east mlb standings
# Fetch AL East standings (division ID 201) echo -e "${BLUE}${BOLD}MLB AL East Standings:${RESET}" response=$(curl -s "http://statsapi.mlb.com/api/v1/standings?leagueId=103&season=2025") teams=$(echo "$response" | jq '.records[] | select(.division.id==201)') if [[ -n "$teams" && "$teams" != "null" ]]; then echo -e "${CYAN}Team W L PCT GB${RESET}" echo -e "${YELLOW}--------------------------------------------------------------------------------------------------------${RESET}" echo "$teams" | jq -r '.teamRecords[] | "\(.team.name)|\(.wins)|\(.losses)|\(.winningPercentage)|\(.gamesBack)"' | while IFS='|' read -r team wins losses pct gb; do pct=$(echo "$pct" | sed 's/^\.//') if [[ "$gb" == "-" ]]; then printf "${GREEN}${BOLD}%-25s${RESET}${GREEN} %-3s %-3s .%-3s %-5s${RESET}\n" "$team" "$wins" "$losses" "$pct" "$gb" else printf "${BOLD}%-25s${RESET} %-3s %-3s .%-3s %-5s\n" "$team" "$wins" "$losses" "$pct" "$gb" fi done else echo -e "${RED}Standings unavailable${RESET}" fi echo
Welcome
# Network Status echo -e "${BLUE}${BOLD}Network Status:${RESET}" echo -e "${YELLOW}--------------------------------------------------------------------> if curl -s --connect-timeout 3 google.com &> /dev/null; then ssid=$(termux-wifi-connectioninfo 2>/dev/null | jq -r '.ssid // "Unknown"' || echo> echo -e "${CYAN}Connected - Wi-Fi: ${ssid}${RESET}" else echo -e "${RED}No internet connection${RESET}" fi echo # Fetch historical event for today month=$(date +%m | sed 's/^0//') # Remove leading zero day=$(date +%d | sed 's/^0//') # Remove leading zero echo -e "${BLUE}${BOLD}Happened on This Day:${RESET}" echo -e "${YELLOW}--------------------------------------------------------------------> history=$(curl -s "https://byabbe.se/on-this-day/$month/$day/events.json" | jq -r '.ev> if [[ -n "$history" && ! "$history" =~ "null" ]]; then echo -e "${CYAN}${history}${RESET}" else echo -e "${RED}No historical events available${RESET}" fi echo # Show Quick Links echo -e "${BLUE}${BOLD}Quick Links:${RESET}" echo -e "${YELLOW}--------------------------------------------------------------------> echo -e echo -e "${RED}${BOLD} • https://bloggin.space/home/index.php/Main_Page${RESET}" echo -e echo -e "${CYAN}${BOLD} • https://bloggin.space/wiki/index.php/Main_Page${RESET}" echo -e echo -e "${GREEN}${BOLD} • https://x.com/home${RESET}" echo -e echo -e "${RED}${BOLD} • https://search.brave.com${RESET}" echo -e echo -e "${CYAN}${BOLD} • https://mail.hostinger.com/?_task=mail&_mbox=INBOX${RESET}" echo
Welcome 2 (for the small tablet)
#!/data/data/com.termux/files/usr/bin/bashin # Welcome Screen for Termux: Weather in Fort Wayne, IN and AL East MLB Standings # Define ANSI color codes BLUE="\033[0;34m" CYAN="\033[0;36m" YELLOW="\033[1;33m" GREEN="\033[0;32m" RED="\033[0;31m" BOLD="\033[1m" RESET="\033[0m" echo -e "${BLUE}${BOLD}=== Sup Fuckos? ===${RESET}" # Fetch weather for Fort Wayne, Indiana using wttr.in echo -e "\n${CYAN}${BOLD}Current Weather in Fort Wayne, IN:${RESET}" WEATHER=$(curl -s 'wttr.in/fort-wayne_indiana?0' 2>/dev/null) if [ -z "$WEATHER" ]; then echo -e "${RED}Unable to fetch weather data. Check your internet connection.${RESET}" else echo -e "${GREEN}${WEATHER}${RESET}" fi # Fetch AL East standings (division ID 201) echo -e "\n${CYAN}${BOLD}MLB AL East Standings:${RESET}" response=$(curl -s "http://statsapi.mlb.com/api/v1/standings?leagueId=103&season=2025" 2>/dev/null) teams=$(echo "$response" | jq '.records[] | select(.division.id==201)') if [[ -n "$teams" && "$teams" != "null" ]]; then echo -e "${CYAN}Team W L PCT GB${RESET}" echo -e "${YELLOW}--------------------------------------------------------------------------------------------------------${RESET}" echo "$teams" | jq -r '.teamRecords[] | "\(.team.name)|\(.wins)|\(.losses)|\(.winningPercentage)|\(.gamesBack)"' | while IFS='|' read -r team wins losses pct gb; do # Remove leading dot from PCT and format to three digits pct=$(echo "$pct" | sed 's/^\.//') # Highlight leader (GB = "-") if [[ "$gb" == "-" ]]; then printf "${GREEN}${BOLD}%-25s %-3s %-3s .%-3s %-5s${RESET}\n" "$team" "$wins" "$losses" "$pct" "$gb" else printf "%-25s %-3s %-3s .%-3s %-5s\n" "$team" "$wins" "$losses" "$pct" "$gb" fi done else echo -e "${RED}Standings unavailable. Check your internet connection or API status.${RESET}" fi echo -e "\n${BLUE}${BOLD}============================${RESET}"
• The Moon • The Science • Green Leaf Volatiles • EGF & Foreskin Cosmetics • Panpsychism • The Scoville UNIT • Microwave Oven • Heaven's Gate • Timelines • Red Maps • The SPARS Pandemic 2025-2028 • Leidenfrost Effect • A Screwdriver • Euler's Disk • Roko's Basilisk • Worlds In Collision • Uranus • ChatGPT Phrases • DignifAI • Soft Water • Blue Seven • Voyager 1 & Voyager 2 • 52 Factorial • Ramirez • Elections • Termux •