Είσαι έμπειρος χρήστης; «Πιέζεις» το λειτουργικό σύστημα Linux να δώσει όσο περισσότερη μνήμη και πόρους στις εφαρμογές σου, αλλά σου αρέσει να έχεις ένα Desktop που δεν υπάρχει όμοιό του και δεν είναι για τους κοινούς θνητούς; Εδώ είσαι… το i3 σε συνδυασμό με το Arch Linux σε περιμένει.

Μια από τις δυσκολότερες εξισώσεις που καλούνται να λύσουν οι χρήστες παλιών συστημάτων (ή όχι και τόσο παλιών) είναι η εξοικονόμηση πόρων. Θα μου πείτε στην εποχή μας που η RAM είναι πιο φθηνή και από designer παντόφλες δεν υπάρχει δικαιολογία να μη βάλει κάποιος παραπάνω μνήμη αν έχει ανάγκη. Θα συμφωνήσω.

Αλλά επειδή στο Cerebrux μας αρέσουν τα μαθηματικά και οι εξισώσεις και επειδή «γιατί έτσι» , θα σας δείξουμε το απόλυτο low resource desktop με την αγαστή συμμαχία του Arch Linux και του i3 Window manager.

Advertisements

Τι είναι το i3 μάστορα;

Προφανώς και δεν αναφερόμαστε στο Ι3 του στρατού αλλά στον i3 window manager που σίγουρα δεν απευθύνεται στους αρχάριους. Ένα από τα βασικά πλεονεκτήματα του i3 κατά τους δημιουργούς του είναι ότι όλες οι ρυθμίσεις γίνονται μέσα από plain text files (απλά text αρχεία), γεγονός που επιτρέπει την ακραία παραμετροποίηση του. Δηλαδή κάτι σαν αυτό

Το default desktop του i3wm

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

Το desktop του i3 ύστερα από αρκετές τροποποιήσεις

Αξίζει να σημειωθεί ότι ο 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).

Advertisements

Ξεκινώντας με τον 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

για να έχουμε ήχο και να τον ρυθμίζουμε μέσω τερματικού αν χρειαστεί.

Advertisements

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

Κατανάλωση πόρων σε i3
Κατανάλωση πόρων Arch

Επίλογος

Προφανώς δεν ξύσαμε ούτε την επιφάνεια με αυτά που κάναμε και μπορούμε να κάνουμε πολύ περισσότερα εφόσον ανατρέξουμε στο documentation του i3wm ή και στο πολύ καλό site dotshare όπου μπορούμε να βρούμε έτοιμα configurations.

Βασικά συστατικά η έμπνευση και η φαντασία μας. Το Arch Linux και το i3 δεν θα μπλέξουν στα πόδια σας, αλλά θα τα «προσκυνάνε» σε κάθε αίτημα σας για περισσότερους διαθέσιμους πόρους.