3bd's webpage    - - + { O 0 0 O } + - -    Blog | Projects | Contact | About
________________________________________________________________________________

It's time to ditch GUI and everything that is bloated

[000] Why?
[010] How?
      [011] Learn to do everything in the terminal.
      [012] Tmux, the terminal multiplexer.
      [013] Web browsing.

Yes, you read that right. I'm gonna ditch everything that is Xorg/GUI.

[000] Why?

If D&K did develop the entire UNIX system using punch cards,
physical terminals, and only using ED;
then I can do it too. (well... not the UNIX part, but living and common use)

[010] How?

[011] Learn to do everything in the terminal.

First thing first, learn to actually do everything in a terminal with no
graphical interface whatsoever, such as file management and text editing,
then disable the framebuffer in your TTY,
by adding the following to your kernel commandline arguments:

vga=0x0F00 nomodeset

vga=0x0F00 will setup the TTY to be in 80x25 mode
(the standard size of a terminal) and nomodeset will disable the
framebuffer (no fancy framebuffer hacks anymore!)

[012] Tmux, the terminal multiplexer.

Secondly, to actually be more productive, you need to multitask.
To do that on a simple TTY, you would use a terminal multiplexer like Tmux.
A terminal multiplexer allows you to use more than 1 program in
a single terminal by emulating a terminal for each one of them.
After installing Tmux, set it up without your own configuration.
Here's my Tmux config setup (no colors, C-a is the prefix
instead of C-b, and F1-F8 mapped to different windows):

unbind C-b
set -g prefix C-a
bind C-a send-prefix
unbind '"'
unbind %
bind | split-window -h
bind - split-window -v
set -g escape-time 10
set -g status-interval 5
set -g status-style reverse
set -g status-left "#I> "
set -g status-right " #h %H:%M-%d/%m/%y"
set -g status-right-style noreverse
set -g window-status-current-style fg=white,noreverse,bold
set -g window-status-style fg=black,noreverse,bold
set -g window-status-separator "|"
set -g base-index 1
setw -g pane-base-index 1
set -g renumber-windows on
bind -n F1 if-shell 'tmux select-window -t 1' '' 'new-window -t 1'
bind -n F2 if-shell 'tmux select-window -t 2' '' 'new-window -t 2'
bind -n F3 if-shell 'tmux select-window -t 3' '' 'new-window -t 3'
bind -n F4 if-shell 'tmux select-window -t 4' '' 'new-window -t 4'
bind -n F5 if-shell 'tmux select-window -t 5' '' 'new-window -t 5'
bind -n F6 if-shell 'tmux select-window -t 6' '' 'new-window -t 6'
bind -n F7 if-shell 'tmux select-window -t 7' '' 'new-window -t 7'
bind -n F8 if-shell 'tmux select-window -t 8' '' 'new-window -t 8'
bind -n S-F1 send-keys F1
bind -n S-F2 send-keys F2
bind -n S-F3 send-keys F3
bind -n S-F4 send-keys F4
bind -n S-F5 send-keys F5
bind -n S-F6 send-keys F6
bind -n S-F7 send-keys F7
bind -n S-F8 send-keys F8
bind -n M-h select-window -p
bind -n M-l select-window -n
bind r source-file ~/.config/tmux/tmux.conf

[013] Web browsing

Thirdly, you can't know everything about your computer, so you use the internet
to learn online from other people how to do stuff and fix problems.
There *is* a way to reach the world wide web through the terminal, and that is
by using a TUI web browser. I recommend W3M browser, it has what you'll expect
from a simple web browser, from cookies to cgi support.
It's quite good and very usable.

You shouldn't use google.com as your web engine, for both practical
and privacy concerns. Use lite.duckduckgo.com because it has support
for non-CSS and non-JavaScript browsers (such as W3M).

Most websites would look like non-sense at the beginning, because they cramp
all their headers in raw HTML and then hide it using CSS.
Scrolling down a page using ctrl+d will help a lot.

________________________________________________________________________________

Copyright (C) 2024 3bd <3bd3bdr@gmail.com> Licensed under CC BY-SA