Impressione, boot di Arch Linux

Non so più che titoli inventarmi e spero che qualcuno colga la citazione colta(?) che potevo anche evitare.

Comunque, come anticipato alla fine dello scorso post, ho installato Arch, quindi ora vengo a vantarmene… ehm… faccio qualche commento sulla situazione generale e quella specifica.

Insomma, ci ho messo 5 giorni a passare dal sistema appena installato a qualcosa di vagamente utilizzabile, ora vi beccate i punti salienti di quest’esperienza mistica (perché alla fine avevo visioni della wiki di Arch e cose del genere).

Immancabili problemi con l’hardware

Ho impostato la modalità di avvio su UEFI (con Windows avevo lasciato legacy) perché secondo alcuni risolve gli assurdi problemi hardware che si manifestano quando si osa usare l’altra, che a quanto pare i produttori di BIOS e schede madri mettono ma poi non provano, o se la provano e trovano dei bug dicono «Massì, via, tanto non la usa nessuno».

Ciò non ha risolto minimamente il problema del controller USB3 che non funziona su Linux. Viene riconosciuto ma poi il kernel sputa fuori dei messaggi d’errore, asserisce di non riuscire a configurarlo e lo abbandona al suo destino.

Dopo un po’ di affannose ricerche su Google, ho concluso che a quanto pare nessun produttore di schede madri è in grado di implementare correttamente lo IOMMU, che è un coso che serve a fare cose con la virtualizzazione quindi sarebbe una cosa gradita che funzionasse (mi capita spesso di usare macchine virtuali). La maggioranza dei suggerimenti ingiunge perentoriamente e inderogabilmente di disattivarlo e usare l’implementazione puramente software che c’è nel kernel, ma esiste anche il parametro “iommu=pt” che lo disattiva solo in parte o non ho ben capito cosa fa. Beh, con quel parametro del kernel almeno le porte USB3 funzionano.

Funzionano male come hanno sempre funzionato. Questa scheda madre che ha ricevuto lodi spasmodiche e unanimi su internet è il peggior componente hardware che mi sia capitato tra le mani, è anche l’unico che in vita mia abbia mai dovuto spedire all’assistenza, in quanto non funzionava bene il chip audio.
Questo mesi fa, poi mi hanno spedito un’altra scheda madre in sostituzione che è quella che sto usando ora, e il controller USB3 ogni tanto non riconosce le periferiche e a un certo punto mi ha fatto crashare Linux con una brutalità tale che si è corrotto il journal di systemd quindi non ho nemmeno capito cos’è successo, probabilmente un kernel panic.

Immancabili non-problemi con altro hardware

La scheda grafica (AMD HD 7950) funziona subito e perfettamente e all’istante con i driver “radeon”, che sono pure open source, e ha una temperatura artica in idle.

Qualche mese fa avevo usato per un po’ Ubuntu in live con la vecchia scheda grafica (AMD HD 5770) e in idle aveva raggiunto temperature da altoforno; non so se perché era mesi fa, perché Ubuntu non aveva quel driver o perché era una vecchia scheda grafica, ma che importa.

Tutto il computer in idle assorbe 84 W, con Windows erano 64, probabilmente c’è ancora qualche ottimizzazione per il risparmio energetico da fare, anche se a dire il vero credo di aver tentato tutto. Tranne che installare il driver proprietario della scheda grafica (catalyst\fglrx), ma tutti quelli che ci hanno provato ne sono usciti pieni di graffi e contusioni e col kernel in fiamme…

Spazio occupato

io@calcolatore ~ % df -h /
File system     Dim. Usati Dispon. Uso% Montato su
/dev/sdb2        99G  9,8G     88G  11% /

Circa 10 GB occupati. Mancano ancora una manciata di programmi, ma dubito che andrò oltre i 15. Su Windows erano 80 GB, solo di OS e programmi; quello è l’SSD, i dati li tengo tutti su un disco rigido.

Il profilo di Firefox e altro ciarpame che i programmi gettano in /home ha più senso tenerlo sull’SSD, come d’altra parte facevo su Windows, quindi non ho montato il disco rigido come /home. Su Windows era S (S per Storage): ho continuato la tradizione mettendolo in /S. A quanto pare non c’è uno standard o una best practice generalmente accetta su cosa fare in questi casi, tutto è lecito e metterlo in /mnt era troppo rischioso perché ogni tanto mi capita di montare e smontare con foga della roba da root e non vorrei che restasse in mezzo a un erroneo rm -rf /mnt

Interfaccia grafica

Openbox + tint2, combinazione già sperimentata su quel portatile con Secure Boot non disattivabile, ma stavolta ho deciso di configurare Openbox e GTK in maniera dignitosa invece di lasciare i default orrendi a caso.

Il fatto che ci siano programmi GTK 2, GTK 3, Qt e GNOME (che vanno per conto loro sventolando il dito medio al resto dell’universo, pur essendo GTK 3) ha reso l’impresa molto più ardua del previsto.

L’unico tema GTK che riesce a far sembrare tutto vagamente simile è arc (anche perché da qualche parte ho trovato il relativo tema per Openbox), che non mi piace ma dovrò farmelo piacere. Ovviamente con “tutto” si intende “tutto tranne i programmi che usano Qt”, che sembrano appena usciti da Windows 95 e non riesco a capire se e come si possa fare qualcosa.

La configurazione di tint2 l’ho copiata a caso da internet e modificata ancor più a caso finché non è venuto fuori qualcosa di guardabile.

Uno screen del risultato finale:

PCManFM e tint2

PCManFM e tint2, il tema delle icone è quello di Deepin (deepin-icon-theme nei repo). Il “2” c’è perché è il secondo spazio di lavoro\desktop virtuale.

Programmi vari

Quelli che esistono uguali, identici, sia su Linux che su Windows stanno funzionando come funzionavano su Windows. Tranne che KeePass, che girando su Mono va pianissimo ed è una collezione di bug assurdi, ma KeepassX fa le stesse cose e funziona bene e va a velocità folli, anche se ha la grafica in stile Windows 95 (perché usa Qt, credo).

VirtualBox come avevo già appurato funziona meglio, perché riesce a dare il controllo delle periferiche USB alle macchine virtuali e gli appunti condivisi semplicemente funzionano invece di fingere di funzionare.

Redshift è un clone assai spartano di f.lux, ma funziona meglio. Nel senso che quello che fa mi sembra avere un qualche effetto; f.lux mi è sempre sembrato che non servisse a nulla. Non so perché.

Notepadqq (clone dichiarato di notepad++) ha più o meno le stesse funzioni di Notepad2 quindi non me lo fa rimpiangere, peccato che sia graficamente inguardabile e con un font orrendo che mi fa incrociare gli occhi e non sembra si possa cambiare e non si possono nascondere i numeri delle righe.

Quello che ancora manca e probabilmente macherà per sempre è un degno sostituto di Everything e Greenshot.

L’unica cosa che vagamente si avvicina a Everything è ANGRYsearch, che ne è dichiaratamente un clone, ma richiede di aggiornare il database ogni tanto, non lo aggiorna in automatico in tempo reale come Everything. E il database occupa 117 MB, quello di Everything occpava molto meno; non che lo spazio sia un problema, ma non è proprio la stessa cosa; probabilmente su Linux non si possono fare le cose che Everything faceva col journal NTFS, o forse non si possono fare senza mettere mano al kernel.
D’altra parte anche “find” ha performance accettabili sul mio computer, “locate” andrebbe ancora meglio, ANGRYsearch è in pratica un programma dotato di GUI che fa le stesse cose di “locate” anche se un po’ più velocemente…
Ah, ed è lentissimo. Si pianta continuamente durante la ricerca. Probabilmente sarebbe davvero più veloce aprire un terminale e usare “find”.

Quanto a Greenshot, il miglior sostituto che ho trovato è Lightscreen. Peccato che riesca a prodursi in un catastrofico bug mai visto da occhi umani all’infuori dei miei: se è aperto, non mi funzionano più le combinazioni di tasti con ctrl e\o alt e\o altro. Libinput continua a ricevere i tasti e le combinazioni, l’ho verificato, ma poi succede qualcos’altro di ignoto e si perde tutto nel vuoto cosmico.
Un’alternativa più usata e più funzionante è Shutter, che trovo scomodissimo e assurdo perché cerca anche di fare da visualizzatore di immagini. Ma la filosofia UNIX che fine ha fatto? Va beh, almeno funziona…

Varie ed eventuali

Usare il terminale è bello.
Per certe cose. Per altre è più comodo\meno rischioso (specialmente quando si fa “rm”) usare una GUI.

“notify-send” è un comando utile da mettere in coda a qualche altro comando che fa operazioni lunghissime: rsync che mi fa i backup totali di /S, grep sui file di 4 GB (vi prego non chiedetemi come mi sono ritrovato a fare cose del genere), etc….

Pacman è il miglior package manager di tutti i tempi e già si sapeva.

Su Arch c’è ogni pacchetto possibile e immaginabile, male che vada sta nell’AUR. Niente “make && make install” che sparpagliano file ovunque come a volte delle guide demenziali suggeriscono di fare su altre distro! Cioè di fatto si fa, ma in maniera automatizzata secondo il PKGBUILD e nella chroot di makepkg, così ne viene fuori un pacchetto gestibile con pacman.

Il client Telegram per desktop richiede di patchare e ricompilare Qt; il pacchetto che sta nell’AUR fa tutto, ma ci mette un’eternità e arriva a occupare 6 GB di RAM. Ma è C++, è “normale” che C++ per ragioni ignote ai più richieda quantità folli di RAM per compilare pure gli hello world…

Uno script bash con rsync e qualche altro comando è un sistema di backup avanti anni luce rispetto a Cobian Backup, paradossalmente.

ALSA è bello\a, per evitare di metterci PulseAudio sopra ho installato Skype (che tanto non uso praticamente mai e richiede obbligatoriamente PulseAudio perché evidentemente Microsoft si stancava troppo a supportare anche ALSA nudo e crudo) dentro a una macchina virtuale con Ubuntu, così può insozzare quella. Quindi Skype usa PulseAudio che a sua volta usa ALSA che passa attraverso VirtualBox che usa di nuovo ALSA.

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...