bine ați navigat pe insula mea de pe internet

A

Am transformat un ThinkPad T440p într-un dispozitiv de scris

De ceva vreme am citit despre conceptul de writerdeck - un dispozitiv dedicat exclusiv scrisului, fără distrageri, fără notificări, fără nimic altceva pe ecran în afară de cuvinte. Ideea mi s-a părut atrăgătoare tocmai pentru că știu cât de greu e să scrii când ai internetul la un tab distanță. Când am dat peste articolul Veronicăi care a transformat un laptop vechi într-un writerdeck cu Debian și TTY, am decis să încerc același lucru pe un ThinkPad T440p pe care nu-l mai foloseam.

writerdeck cu t440p si debian 13
writerdeck cu t440p si debian 13

Ce a urmat a fost o zi întreagă de depanare, greșeli și soluții care nu mergeau. Scriu acest articol ca să documentez tot procesul cinstit - atât ce a mers, cât și ce nu a mers.

Ideea de bază

Un writerdeck nu e complicat în teorie: instalezi un sistem de operare minimal, fără interfață grafică, și pui doar editorul de text pe el. Fără navigator, fără aplicații de chat, fără nimic care să te tragă în altă parte. Laptopul are un singur scop.

Am ales Debian Trixie (versiunea 13) cu instalare minimă - niciun mediu grafic, niciun utilitar suplimentar. Sistemul pornește direct în terminal și atât.

Prima problemă: WiFi-ul

Instalarea Debian netinstall necesită internet. La mine a funcționat parțial - WiFi-ul a mers în timpul instalării, dar după repornire nu mai mergea.

Motivul: pe o instalare minimă de Debian, interfața WiFi era declarată în /etc/network/interfaces cu credențialele rețelei introduse la instalare. NetworkManager, pe care l-am instalat ulterior pentru nmtui, nu preia interfețele declarate acolo și le lasă în starea unmanaged. Soluția a fost să elimin complet referințele la WiFi din acel fișier și să adaug managed=true în configurația NetworkManager.

Până am rezolvat toate acestea, am folosit un cablu de rețea de la PC ca să pot instala pachetele necesare.

Ce am instalat

sudo apt install micro tmux syncthing acpi network-manager

Pentru kmscon, care oferă fonturi mai frumoase și mai multe culori în TTY, e nevoie de backports pe Trixie:

sudo apt install -t trixie-backports kmscon

Bătălia cu autologinul

Aceasta a fost de departe partea cea mai complicată și unde am petrecut cel mai mult timp. Voiam ca laptopul să mă autentifice automat la pornire și să deschidă direct editorul.

Am început cu metoda descrisă în articolul Veronicăi - autologin prin kmscon, prin fișierul de override al serviciului kmsconvt@tty1.service. Problema a fost că editorul deschis de systemctl edit nu salva modificările persistent și am pierdut mult timp în cerc.

Am trecut atunci la autologin prin getty, metoda standard cu systemd drop-in. Am creat fișierul de override în /etc/systemd/system/getty@tty1.service.d/autologin.conf, am rulat daemon-reload, am repornit - și tot nu mergea. Am încercat variante cu autovt, cu activarea și dezactivarea serviciului, cu pam_autologin - nimic nu funcționa consistent.

La un moment dat am dezinstalat kmscon complet ca să elimin o variabilă din ecuație. Autologinul prin getty a funcționat imediat. Dar tmux nu a pornit automat. Motivul era că în .bashrc aveam condiția pentru pts/0 - tipul de terminal creat de kmscon - iar fără kmscon terminalul era tty1. Cele două nu se potriveau și tmux nu pornea.

Am reinstalat kmscon și am modificat condiția din .bashrc la tty1 în loc de pts/0. Deși kmscon rulează și creează terminale de tip pts, autologinul prin getty creează sesiunea pe tty1, iar din acel tty1 pornește tmux. Totul a funcționat.

Lecția: înainte să configurezi pornirea automată a oricărui program în .bashrc, verifică cu comanda tty ce tip de terminal folosești efectiv după autologin. Nu presupune.

Configurarea tmux

~/.tmux.conf pentru bara de status cu baterie și control pentru luminozitate:

set -g status-position top
set -g status-style bg=colour22,fg=white,bold
bind -n F8 run-shell 'light -U 10'
bind -n F9 run-shell 'light -A 10'
set-window-option -g status-right "#(acpi -b | grep -m1 -o -P '.{0,2}%')"

Bara apare sus, pe fond verde închis cu text alb, și afișează procentul bateriei în dreapta.

Ce urmează

Am instalat Syncthing pentru sincronizarea automată a articolelor cu serverul de acasă, dar nu l-am configurat încă. Asta rămâne pentru un articol separat.

Rezultatul

La pornire, laptopul se autentifică singur și deschide micro în tmux. Bara verde afișează ora și bateria. Nu există altceva pe acest laptop - niciun navigator, nicio aplicație de chat. Are un singur scop.

A durat o zi întreagă să ajung aici, cu multe fundături și reveniri. Dacă vrei să faci același lucru, articolul de pe wiki-ul Linux România despre autologin în TTY documentează toate metodele mai ordonat decât le-am încercat eu.

← Inapoi

Comentarii