Είσαι έμπειρος χρήστης; «Πιέζεις» το λειτουργικό σύστημα Linux να δώσει όσο περισσότερη μνήμη και πόρους στις εφαρμογές σου, αλλά σου αρέσει να έχεις ένα Desktop που δεν υπάρχει όμοιό του και δεν είναι για τους κοινούς θνητούς; Εδώ είσαι… το i3 σε συνδυασμό με το Arch Linux σε περιμένει.
Μια από τις δυσκολότερες εξισώσεις που καλούνται να λύσουν οι χρήστες παλιών συστημάτων (ή όχι και τόσο παλιών) είναι η εξοικονόμηση πόρων. Θα μου πείτε στην εποχή μας που η RAM είναι πιο φθηνή και από designer παντόφλες δεν υπάρχει δικαιολογία να μη βάλει κάποιος παραπάνω μνήμη αν έχει ανάγκη. Θα συμφωνήσω.
Αλλά επειδή στο Cerebrux μας αρέσουν τα μαθηματικά και οι εξισώσεις και επειδή «γιατί έτσι» , θα σας δείξουμε το απόλυτο low resource desktop με την αγαστή συμμαχία του Arch Linux και του i3 Window manager.
Τι είναι το i3 μάστορα;
Προφανώς και δεν αναφερόμαστε στο Ι3 του στρατού αλλά στον i3 window manager που σίγουρα δεν απευθύνεται στους αρχάριους. Ένα από τα βασικά πλεονεκτήματα του i3 κατά τους δημιουργούς του είναι ότι όλες οι ρυθμίσεις γίνονται μέσα από plain text files (απλά text αρχεία), γεγονός που επιτρέπει την ακραία παραμετροποίηση του. Δηλαδή κάτι σαν αυτό

να το μετατρέψουμε σε κάτι σαν αυτό

Αξίζει να σημειωθεί ότι ο i3 σε σχέση με τους «ανταγωνιστές» του, επιτρέπει στο χρήστη να διαχειριστεί τα παράθυρα του όπως επιθυμεί. Τα παράθυρα τοποθετούνται μέσα σε «containers» και μπορούν να αλλάζουν μέγεθος, να τοποθετηθούν οριζοντίως ή καθέτως ή ακόμη σε στοιβάδες ή με την μορφή καρτελών.
Εγκατάσταση i3 στο Arch Linux
Εφόσον εγκαταστήσαμε επιτυχώς το arch linux στο σύστημα μας, ήρθε η ώρα να βάλουμε και «γραφικό περιβάλλον» (τα «» εμπεριέχουν μια μικρή δόση ειρωνείας). Στη γραμμή εντολών του arch δίνουμε
sudo pacman -S i3 dmenu xorg xorg-xinit feh
Στις ερωτήσεις που θα σας κάνει αν πρέπει να εγκατασταθούν όλα απαντήστε θετικά. Στη συνέχεια πρέπει να ενημερώσουμε το .xinitrc να ξεκινάει με το i3wm. Αυτό γίνεται δίνοντας
sudo nano ~/.xinitrc
και μέσα στο αρχείο προσθέτουμε
#! /bin/bash exec i3
Πλέον δίνοντας startx ξεκινάμε στο νέο μας desktop.
Εκκίνηση του i3 αυτόματα με την είσοδο χρήστη
Στόχος μας είναι ένα σύστημα με χαμηλή κατανάλωση πόρων. Για αυτό το λόγο δε θα μπούμε στη διαδικασία εγκατάστασης login managers αφενός γιατί δε θα έχουμε παραπάνω από 1 γραφικό περιβάλλον, αφετέρου γιατί δε θέλουμε να χαραμίσουμε ΜΒ για να έχουμε ένα login manager να τρέχει στο background. Για να το επιτύχουμε αυτό δίνουμε στη γραμμή εντολών
sudo nano /etc/profile
και στο τέλος του αρχείου προσθέτουμε
# autostart systemd default session on tty1 if [[ "$(tty)" == '/dev/tty1' ]]; then exec startx fi
Με αυτό τον τρόπο με την είσοδο του χρήστη θα ξεκινάει αυτόματα το desktop.
Ωραία μπήκαμε στο desktop και τώρα τι;
Όπως αναφέρθηκε και στον πρόλογο του άρθρου, το i3 δεν απευθύνεται σε αρχάριους. Όχι τόσο λόγω της δυσκολίας του στην παραμετροποίηση αλλά για την διαφορετική προσέγγιση στη χρήση του desktop η οποία καθιστά τη χρήση του ποντικιού εντελώς (μα εντελώς) προαιρετική.
Η πρώτη εικόνα που θα δείτε μόλις μπείτε στο desktop θα είναι ένα παράθυρο που είναι κάτι σαν config wizard που θα δημιουργήσει ένα αρχείο (το text file που αναφέραμε προηγουμένως) με τις βασικές ρυθμίσεις του i3 προκειμένου να ξεκινήσουμε. Σε ένα από τα βήματα θα ερωτηθούμε για το ποιο $modkey να επιλέξουμε. Πάνω σε αυτό στηρίζεται ολόκληρη η φιλοσοφία του i3. Το modkey είναι στην ουσία το hotkey που σε συνδυασμό με άλλα ενεργοποιεί όλες τις δυνατότητες του desktop μας. Εμείς επιλέξαμε το πλήκτρο win έτσι ώστε να μην χρησιμοποιήσουμε πλήκτρα που ενδεχομένως να έχουν άλλη ιδιότητα (όπως πχ το alt).
Ξεκινώντας με τον i3
Έχουμε μπει στο desktop, έχουμε κάνει τις βασικές ρυθμίσεις και το μόνο που βλέπουμε είναι μια μαύρη οθόνη και πουθενά ούτε ένα menu. Μὴ φοβοῦ! Όλα γίνονται με τη χρήση του modkey που ορίσαμε παραπάνω και με το κατάλληλο πλήκτρο.
Βασικές μακροεντολές
Για να μην μπερδευτούμε ανάλογα με το ποιο modkey έχει ορίσει ο καθένας (εμείς ορίσαμε το πλήκτρο Win) θα αναφερόμαστε με τον γενικό του ορισμό, δηλαδή modkey.
$modkey+enter
— εκκίνηση τερματικού$modkey+shift+q
— κλείσιμο παραθύρου$modkey+d
— άνοιγμα dmenu (lightweigh app launcher, πληκτρολογούμε το όνομα της εφαρμογής που θέλουμε να ανοίξουμε)$modkey+f
— μετάβαση παραθύρου σε πλήρη οθόνη (fullscreen)$modkey+v
— άνοιγμα παραθύρου καθέτως (όταν δίνουμε την εντολή δε συμβαίνει κάτι παρά μόνο όταν ανοίξουμε νέο παράθυρο/εφαρμογή)$modkey+h
— άνοιγμα παραθύρου οριζοντίως (ομοίως με πριν)$modkey+shift+r
— επαναφόρτωση του αρχείου ρυθμίσεων του i3 (αρκετά χρήσιμο)$modkey+shift+e
— log out από τον i3$modkey+shift+space
— μικραίνει το παράθυρο για μετακίνηση στο desktop είτε με mouse ή με …$modkey+shift+arrow keys
ή (jkl;) — μετακίνηση του παραθύρου$modkey+r
— κάνουμε resize το παράθυρο (εμφανίζεται με κόκκινο χρώμα κάτω αριστερά το reisize) με τη χρήση των arrow keys ή me (jkl;), επιβεβαιώνουμε το μέγεθος με enter$modkey+#
(όπου # ο αριθμός του desktop στο οποίο βρισκόμαστε) — αλλαγή desktops
Βασικές ρυθμίσεις
Για να φέρουμε το i3 στα μέτρα μας πρέπει να εξοικειωθούμε με το αρχείο ~/.config/i3/config . Το αρχείο αυτό είναι αυτό που δημιουργήθηκε ύστερα από την πρώτη είσοδο μας στο i3 desktop και περιέχει τις βασικές ρυθμίσεις.
Στο τερματικό ($modkey+enter) δίνουμε
vim ~/.config/i3/config
και μόλις το αποθηκεύσουμε, βλέπουμε τις αλλαγές με $modkey+shift+r . Μέσα στο αρχείο μπορούμε να κάνουμε ένα πλήθος αλλαγών, μερικές εκ των οποίων θα δούμε στη συνέχεια.
Αλλάξτε το default τερματικό
Για να αλλάξουμε το τερματικό σε αυτό της αρεσκείας μας (πχ terminator)
bindsym $mod+Return exec i3-sensible-terminal
και το αλλάζουμε σε
bindsym $mod+Return exec terminator
Ορίστε το dmenu να απεικονίζει μόνο τις εφαρμογές με γραφικό περιβάλλον
To dmenu εξ ορισμού απεικονίζει όλα τα εκτελέσιμα στο σύστημα μας. Για να το αναγκάσουμε να απεικονίζει μόνο αυτά με γραφική απεικόνιση, αναζητουμε το σημείο που αναφέρει
#start dmenu (a program launcher)
και αλλάζουμε τη γραμμή από κάτω σε
# bindsym $mod+d exec dmenu_run
και την 4η γραμμή σε
bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
Φτιάξτε τα δικά σας shortcuts
Στην περίπτωση που θέλουμε να προσθέσουμε κάποια δικά μας προγράμματα να εκκινούν κατευθείαν με τη χρήση του modkey χωρίς να τα αναζητήσουμε από το dmenu, αρκεί να προσθέσουμε στο τέλος του αρχείου config
bindsym $mod+<γράμμα> exec <εφαρμογή>
Έτσι μπορούμε να έχουμε άμεσα τις αγαπημένες μας εφαρμογές, προσοχή όμως να είστε σίγουροι ότι το πλήκτρο που θα ορίσετε δε χρησιμοποιείται από κάποια άλλη μακροεντολή.
Προσθήκη wallpaper
Τίποτε δεν αναδεικνύει περισσότερο ένα όμορφο desktop από ένα εντυπωσιακό wallpaper. Στο τέλος του αρχείου config προσθέτουμε
exec --no-startup-id feh --bg-scale ~/φάκελος/wallpaper.png
και στην περίπτωση που έχετε και conky
exec --no-startup-id conky -c ~/φάκελος/.conkyrc
Αυτόματη έναρξη εφαρμογών
Αν θέλουμε να προσθέσουμε εφαρμογές κατά την εκκίνηση του συστήματος, όπως και πριν προσθέτουμε στο config αρχείο μας
exec --no-startup-id <εφαρμογή> start
Γραμματοσειρές και εμφάνιση
Όπως θα διαπιστώσατε από μούρη δε λέει και πολύ το i3 και ειδικά στο πως εμφανίζει τις γραφικές εφαρμογές. Ευτυχώς αυτό διορθώνεται εύκολα. Στο τερματικό δίνουμε
sudo pacman -S lxappearance ttf-dejavu ttf-inconsolata
και στη συνέχεια
yay -S xfce-theme-greybird
ή όποιο άλλο θέμα θέλουμε. Ανοίγουμε μέσω του dmenu το lxappearance και επιλέγουμε το θέμα που μόλις κατεβάσαμε.
Ενεργοποίηση ήχου
Στο τερματικό δίνουμε
sudo pacman -S alsa-utils alsactl init alsamixer
για να έχουμε ήχο και να τον ρυθμίζουμε μέσω τερματικού αν χρειαστεί.
Terminal + i3 = F.F.E.
Είναι λογικό επόμενο ότι αν επιλέξουμε να χρησιμοποιήσουμε τον i3 για βασικό μας γραφικό περιβάλλον, τότε το μόνο σίγουρο είναι ότι «τη βρίσκουμε» με τη χρήση του τερματικού. Ακολουθούν κάποια βασικά προγράμματα που θα κάνουν την εμπειρία μας στο νέο μας desktop ακόμη καλύτερη
- xbacklight Αλλαγή φωτεινότητας μέσω τερματικού
- nmcli Διαχείριση του NetworkManager από τερματικό
- irssi CLI-based IRC client
- mc Midnight Manager. Προηγμένος διαχειριστής αρχείων μέσω τερματικού
- glances Εποπτεία πόρων και κατάστασης του συστήματος
Arch Linux + i3 = extreme customization
Στο παρόν άρθρο κάναμε μια προσπάθεια να φέρουμε τη διανομή Arch Linux και το γραφικό περιβάλλον i3 στα μέτρα μας. Πετύχαμε να έχουμε ένα σύστημα που σε idle να καταναλώνει 71.1 ΜΒ την ίδια στιγμή που το Arch προτού μπούμε στο γραφικό περιβάλλον κατανάλωνε 33.5


Επίλογος
Προφανώς δεν ξύσαμε ούτε την επιφάνεια με αυτά που κάναμε και μπορούμε να κάνουμε πολύ περισσότερα εφόσον ανατρέξουμε στο documentation του i3wm ή και στο πολύ καλό site dotshare όπου μπορούμε να βρούμε έτοιμα configurations.
Βασικά συστατικά η έμπνευση και η φαντασία μας. Το Arch Linux και το i3 δεν θα μπλέξουν στα πόδια σας, αλλά θα τα «προσκυνάνε» σε κάθε αίτημα σας για περισσότερους διαθέσιμους πόρους.
Η δύναμη της συνήθειας επιτάσσει να βάλεις το γραφικό περιβάλλον στο tty7.
Ένα ακόμα σημαντικό πλεονέκτημα του i3 είναι η διαχείριση πολλαπλών οθονών, κάτι που στην εποχή μας δεν το κάνουν πολλοί WMs τόσο καλά.
Eλληνικα με alt+caps:
exec –no-startup-id setxkbmap -layout us,gr -option grp:alt_caps_toggle
στο i3 config