Translate

Mostrando postagens com marcador ArchLinux. Mostrar todas as postagens
Mostrando postagens com marcador ArchLinux. Mostrar todas as postagens

quinta-feira, 9 de abril de 2026

Artix Linux com KDE Plasma, OpenRC e XLibre

KInfoCentre do Artix Linux com KDE Plasma, OpenRC e XLibre
Artix Linux com KDE Plasma, OpenRC e XLibre •

Há muito tempo, eu queria experimentar o Artix Linux — sem SystemD (SystemD-Free) — para conferir a viabilidade de substituir o Arch Linux como minha “distro principal”, que uso em 99% do tempo.

Fastfetch com as principais características do Artix Linux KDE Plasma, XLibre, OpenRC init
Artix Linux com XLibre — fork do X11

Como brinde, agora o Artix vem com XLibre — um fork do X11, com a perspectiva de correções e atualizações de segurança — embora o usuário possa escolher sessão Plasma Wayland, na tela de Login.

Monitoramento e previsão do clima com o Weather widget plus
Weather widget plus no Artix Linux

Instalei o Artix em outra partição (dualboot), para experimentar pelo tempo que for necessário, antes de deletar (ou não) meu Arch. — Gostei do Artix, desde o primeiro dia, e quase não quero sair dele — mas ainda pretendo testar e aprender muito mais.

Algumas distros “systemd-free”

Não confundir “Artix” (Arch systemd-free) — com “antiX” (anti-fascist, systemd-free, elogind-free, suitable for old and new computers), baseada no Debian, e parceira do “MX Linux” (sigla de “Mepis + antiX”).

Índice

  • Download, sha256sum, K3b
  • Instalação
  • Grub, X11 / XLibre, ajustes
  • pacman vs. Pac-Men
  • Repositórios do Arch Linux
  • Capturas de tela
  • Flatpaks-fantasma
  • Ajustes no Conky
  • Partição Swap
  • KDE Connect
  • lm_sensors
  • Locales

Download, sha256sum, K3b

Download e verificação da imagem ISO do Artix Linux

Minha intenção era fazer a instalação por comandos, como no Arch (2019, 2020), mas pensei: — Preciso? — Mais tarde, talvez.

A Wiki do Artix desestimula esse esforço: — “A menos que você (...) esteja realizando uma instalação em servidor sem interface gráfica, há poucos motivos para usar as imagens base”. — Então, examinei as imagens ISO com KDE Plasma, e optei pelas “semanais” (não-testadas), lançadas naquele mesmo dia.

Escolhi OpenRC init, por ser mais “conhecido” e me parecer que tem uma base maior de desenvolvedores e usuários (Gentoo). — Atualmente, já tenho o Runit no Void — e vejo falar pouco do “dinit” e do “s6”.

  • Já tive uma pequena experiência com OpenRC no Redcore (Gentoo).

Baixei a imagem “artix-plasma-openrc-20260407-x86_64.iso” da página de downloads do Artix; — fiz a verificação pelo “sha256sum”; — e “queimei” pelo K3b em DVD, para guardar.

O download direto prometia demorar horas, pois não há espelhos no Brasil. — Baixei por Torrent, em cerca de 1 minuto.

Configuração do Fuso Horário, Teclado, Localização da sessão Live

No menu de boot, alterei o Fuso Horário para BRT, o Teclado para ABNT2, o Idioma / Localização para Reino Unido (en_UK) — e a sessão Live já começou com o horário correto: 12:05.

$ whoami
artix

$ echo $XDG_SESSION_TYPE
x11

$ history
    5  2026-04-07_12-12-52 sudo pacman -Sy
    7  2026-04-07_12-18-10 sudo pacman -S gnome-screenshot
    9  2026-04-07_12-37-16 echo $XDG_SESSION_TYPE
   11  2026-04-07_12-38-50 sudo pacman -S conky
   13  2026-04-07_12-53-48 echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
   14  2026-04-07_12-54-03 source ~/.bashrc
   15  2026-04-07_12-54-08 history

A sessão Live já começou em XLibre (identificado como X11) — o que foi ótimo, para poder usar o “gnome-screenshot” e o Conky.

Não encontrei a senha do Live User (artix) — mas o “sudo” não pediu.

Instalei o “gnome-screenshot”, o Conky; — configurei os atalhos para salvar as capturas em um Pendrive de 2 GB; — e pude documentar tudo desde o início da sessão Live:

Configuração do gnome-screenshot para documentar a sessão Live

Usei uma configuração do Conky que tenho no Pendrive; — movi para o Pendrive os arquivos do ~/Desktop (manuais em PDF); — e instalei fontes Verdana, mais legíveis e econômicas de espaço na vertical.

Instalação

Iniciando a instalação do Artix pelo Calamares

Ao abir o instalador Calamares, ele já avisou que a opção “online” é experimental — e recomendou usar a opção “offline”.

Ainda no “Welcome”, eu já tinha alterado o Idioma para Inglês britânico (en_UK). — Ao escolher o Fuso Horário BRT, no instalador Calamares, não percebi que isto iria colocar Números e Datas em Português do Brasil. — Se percebesse, teria alterado, ali mesmo.

  • Ao pedir ou oferecer ajuda em qualquer fórum internacional, imagens em Português são uma barreira. — O Inglês é universal. — Na variante do Reino Unido (UK), as datas seguem um padrão familiar para nós, no Brasil. Melhor ainda, seria a variante da Irlanda (en_IE).

Mais tarde, corrigi isso, em algum momento entre 18 e 24 Maio.

Escolha manual de partições que já existiam

Selecionei layout de Teclado “Português (Brasil)”, “Default” (ABNT2); — e escolhi particionamento manual — pois eu já tinha as partições prontas. Só faltava escolher e configurar cada uma.

Resumo das configurações de instalação do Artix Linux

Marquei para formatar só a partição-raiz (Linux11), pois eu queria preservar a pasta pessoal existente partição Home11, com inúmeras configurações que vim fazendo ao longo dos anos; e também os bootloaders existentes na partição ESP (EFI2). — Essas opções só serão mostradas no “Resumo” (Summary) — e convém verificar com cuidado, para evitar algum desastre.

Se eu tivesse prestado atenção, veria que estava configurado “números e datas em Português do Brasil” — e poderia voltar atrás, para corrigir. — Mas isso não chega a ser um desastre.

Eu não configurei a partição Swap, porque não entendi como fazer isso, nesta versão do instalador Calamares. — Mas é muito simples e fácil configurar isso depois de instalar a distro.

A instalação no “disco” — etapa automática, com slide-show — foi feita em 7 minutos (DVD para SSD, ambos Sata3), das 14:22 às 14:29.

Grub, X11 / XLibre, ajustes

O Grub do Artix não detectou o openSUSE

Não cheguei a testar o Grub do Artix (instalado), para cada uma das distros que eu tinha em dualboot / multiboot. — Apenas constatei que ele não detectou o openSUSE, instalado em partição BtrFS — e que deveria aparecer logo acima do Arch Linux.

Essa falha é (ou, era) comum, no Grub de várias distros. — Por isso, o Grub do openSUSE é meu “Menu de inicialização”.

Novo Login, agora em sessão Plasma X11 (XLibre)

A sessão Live tinha entrado automaticamente em Plasma X11 — mas eu demorei uns 20 minutos para perceber que, depois de instalado, entrou em Plasma Wayland. — Apenas, nada acontecia como eu esperava, a começar pelo gnome-screenshot, que só funciona em X11 / XLibre.

Sem capturas, prefiro não seguir adiante, para não fazer configurações sem documentar. — Mesmo assim, fiquei sem registro da instalação das fontes Verdana — pouco antes do “killall conky” (15:38):

Instalando fontes pelo KDE System Settings, a partir de arquivos em Pendrive
(imagem posterior, meramente ilustrativa)

O que me resta daqueles 20 minutos iniciais são apenas os logs, algumas anotações em TXT, e uma ou outra foto — porque frustração não se fotografa. — O mais comum, é um iniciante xingar a distro, e procurar outra, que funcione como esperado, desde o primeiro minuto:

# history | grep '2026-04-07'
    1  2026-04-07_15-21-30 history
    2  2026-04-07_15-26-29 pacman -Syu
    3  2026-04-07_15-27-32 pacman -S gnome-screenshot
    4  2026-04-07_15-32-31 pacman -S conky

$ history | grep '2026-04-07'
  219  2026-04-07_15-33-51 gnome-screenshot -p -f /run/media/flavio/Warehouse/0_PrtScn/$(date +%F_%H-%M-%S)_Ax.jpg
  220  2026-04-07_15-33-59 gnome-screenshot -p -f /run/media/flavio/Warehouse/0_PrtScn/$(date +%F_%H-%M-%S)_Ax.jpg
  221  2026-04-07_15-38-02 killall conky
  222  2026-04-07_15-38-44 gnome-screenshot
  223  2026-04-07_15-42-32 echo $XDG_SESSION_TYPE

$ echo $XDG_SESSION_TYPE
wayland

2026-04-07 15:44:55 -- Logout, Login X11...

$ echo $XDG_SESSION_TYPE
x11

Na sessão Plasma X11, finalmente, as coisas funcionaram — quase como a distro anterior, ou qualquer outra dos últimos anos — Reaproveitar a plasta de usuário é uma grande economia de trabalho.

Naturalmente, faltava corrigir várias coisas — trocar o ícone do Menu; ajustar o Conky; ajustar scripts; — e instalar dezenas de pacotes, como LibreOffice, Gimp, KDE Connect (liberar portas), yay etc.

Listas comparadas dos pacotes instalados no Arch e no Artix

Para facilitar, gerei listas dos pacotes instalados no Arch e no Artix, e usei o comando “diff -y” para apontar as diferenças — mas há coisas que instalei no Arch, que perderam sentido, e não pretendo instalar no Artix.

pacman -Q  > Arch-all.txt
pacman -Qe > Arch-explicit.txt
pacman -Qm > Arch-foreign.txt

pacman -Q  > Artix-all.txt
pacman -Qe > Artix-explicit.txt
pacman -Qm > Artix-foreign.txt

diff -y Arch-all.txt      Artix-all.txt
diff -y Arch-explicit.txt Artix-explicit.txt
diff -y Arch-foreign.txt  Artix-foreign.txt

Atualização do Grub e correção da prioridade de boot

Depois, atualizei o Grub do openSUSE — meu “Menu de inicialização” — e recoloquei seu bootloader na prioridade, pelo comando “efibootmgr”.

Desabilitando a detecção de outras distros e atualizando o Grub

Dias depois, desabilitei a detecção de outras distros (os-prober) — e o tempo de atualização do Grub caiu de mais de 40 segundos para menos de 3 segundos. — Curiosamente, nesse dia detectou o openSUSE, mas não verifiquei se funcionaria corretamente.

Deletando pastas de usuários experimentais

Deletei as pastas pessoais de 2 usuários — criados numa distro anterior, apenas para teste — e que não existem nessa instalação do Artix.

pacman vs. Pac-Men

Pacman fazendo a festa

Instalei o Artix no dia 7 Abril (Terça-feira), com uma imagem ISO de horas antes. — No dia seguinte (Quarta-feira, 8), o pacman encontrou 87 atualizações — principalmente, pacotes do Plasma 6.6.4.

Wow...!

O download foi uma festa para os olhos! — Um batalhão de Pac-Men engolindo dezenas de bolinhas, na velocidade da luz — e uma impressão (visual) de tirar o fôlego.

Alguns pacotes teriam sido baixados, supostamente, a 84,9 MiB/s — coisa que meu provedor de internet não permite.

Segundo o Conky, o download atingiu um pico de 63,7 MiB/s — o que é sensacional, mesmo assim, já que o Artix não tem espelhos (mirrors) no Brasil — e é muito raro eu conseguir downloads acima de 20 MiB/s a partir dos EUA ou da Europa.

Existe 1 espelho no Chile, mas a URL tem “cl” no meio (não no final); — e o ping nega sua existência. — Um colega no Rio Grande do Sul costumava obter ótimas velocidades de download desde o Chile; mas nunca consegui isso em Brasília.

Naquele dia, não seria possível fazer uma comparação com meu Arch Linux, que já tinha 3 dias sem atualização. — Então, atualizei o Arch, para colocá-lo em pé-de-igualdade com o Artix — preparando um teste em paridade de condições, para alguns dias depois.

Também precisava atualizar as configurações do pacman no Arch — que ainda estava limitado a 2 downloads em paralelo.

No Arch, mantive só 1 espelho — que me atende muito bem, há anos; — enquanto no Artix todos os espelhos estão habilitados, com destaque para 4 que desconheço (entre eles, 1 da República Tcheca):

------------------------------------------------------------------------     --------------------------------------------------------------------
Arch                                                                         Artix
------------------------------------------------------------------------     --------------------------------------------------------------------
/etc/pacman.d/mirrorlist                                                     /etc/pacman.d/mirrorlist

## Arch Linux repository mirrorlist                                          ## Artix Linux repository mirrorlist
## Generated on 2026-04-06                                                   ## Generated on 2026-03-24 by artix-mlg
...                                                                          ...
## Belgium                                                                   # Default mirrors
#Server = https://mirror.1ago.be/archlinux/$repo/os/$arch                    Server = https://mirrors.rit.edu/artixlinux/$repo/os/$arch
#Server = https://archlinux.mirror-services.net/archlinux/$repo/os/$arch     Server = https://ftp.crifo.org/artix/repos/$repo/os/$arch
                                                                             Server = https://ftp.sh.cvut.cz/artix-linux/$repo/os/$arch
## Brazil                                                                    Server = https://mirrors.dotsrc.org/artix-linux/repos/$repo/os/$arch
Server = https://archlinux.c3sl.ufpr.br/$repo/os/$arch
#Server = https://br.mirrors.cicku.me/archlinux/$repo/os/$arch               ## Europe
#Server = https://mirror.ufscar.br/archlinux/$repo/os/$arch                  # Bulgaria
#Server = https://mirrors.ic.unicamp.br/archlinux/$repo/os/$arch             Server = https://artix.arkhost.com/repos/$repo/os/$arch
                                                                             # Czech Republic
## Bulgaria                                                                  Server = https://ftp.sh.cvut.cz/artix-linux/$repo/os/$arch
#Server = https://mirror.telepoint.bg/archlinux/$repo/os/$arch               # Denmark
...                                                                          ...
------------------------------------------------------------------------     --------------------------------------------------------------------

No novo “/etc/pacman.conf” do Arch Linux, agora habilitei 5 downloads paralelos — contra 7 no Artix.

Mantive no Arch os repositórios Core, Extra — e desabilitei o Multilib (100 pacotes removidos); — enquanto no Artix estão habilitados System, World e Galaxy, cujos significados eu ainda não sabia.

Velocidade real de download de pacotes pelo pacman no Arch e no Artix

O Arch tem agora 1.293 pacotes instalados — enquanto o Artix ainda está com apenas 1.087 — mas a atualização geral no Domingo (12 Abril) foi bastante equilibrada (318 e 320 MiB), permitindo uma comparação razoável:

-----------------------------------------------       -----------------------------------------------
Arch                                                  Artix
-----------------------------------------------       -----------------------------------------------
# date; time pacman -Syu; date                        # date; time pacman -Syu; date
Sun 12 Apr 05:06:13 -03 2026                          Sun Apr 12 04:08:53 -03 2026
:: Synchronising package databases...                 :: Synchronizing package databases...

 core          ...                                     system        ...
 extra         ...                                     world         ...
                                                       galaxy        ...

Packages (136) ...                                    Packages (117) ...

Total Download Size:       318.15 MiB                 Total Download Size:       320.17 MiB
Total Installed Size:     1252.59 MiB                 Total Installed Size:     1287.86 MiB
...                                                   ...
Total (136/136)   318.1 MiB  40.0 MiB/s   00:08       Total (117/117)   320.2 MiB  24.7 MiB/s  00:13
...                                                   ...
real    0m 53.972s                                    real    1m 22.696s
user    0m 9.766s                                     user    0m 7.772s
sys     0m 8.634s                                     sys     0m 8.339s
Sun 12 Apr 05:07:07 -03 2026                          Sun Apr 12 04:10:16 -03 2026
-----------------------------------------------       -----------------------------------------------

Em resumo, o Artix alcançou um pico de velocidade um pouco maior (65,1 contra 64,6 MiB/s) — mas sua velocidade média foi de 24,7 MiB/s, baixando até 7 pacotes ao mesmo tempo, de servidores sabe-se lá onde — enquanto o Arch Linux apresentou velocidade média de 40,0 MiB/s, baixando até 5 pacotes simultâneos, de apenas 1 servidor.

Essa média de 24,7 MiB/s é uma boa marca, mesmo assim. — O Mirror Manager do Fedora (similar ao Mirror Brain do openSUSE) tem obtido pouco mais (29,0 MiB/s) — mesmo dispondo de um ótimo espelho no Brasil (o mesmo que eu uso no Arch, e em várias outras distros).

Repositórios do Arch Linux

Repositórios do Arch Linux — no final do “pacman.conf”

Após quase 2 semanas usando o Artix 99% do tempo, a única barreira que encontrei para adotá-lo como minha “distro principal” era a falta do Foliate — pois há muito tempo optei por livros em formato ePub — e do Sigil, para fazer algumas correções e ajustes nesses arquivos.

Por alguma razão, Foliate e Sigil não estão nos repositórios do Artix.

Instalei a infraestrutura do Flatpak, e tentei essa versão (do próprio desenvolvedor), mas me deparei com um problema — já encontrado, também, no PCLinuxOS. — Tenho a certeza de que “basta” descobrir alguma solução, mas desinstalei.

Tentei a versão do AUR (de 2023!). — Baixou toneladas de pacotes, ficou vários minutos compilando a 100ºC (ventoinha uivando), e por fim disse que não foi possível. — Gastei um tempo bem maior, para remover 135 pacotes órfãos, que foram o saldo dessa tentativa.

Felizmente, comentei no Fórum do Diolinux, e 2 colegas que usam Artix deram a solução: — Habilitar o repositório “Extra” do Arch Linux (jamais o “Core”!) — e mais algumas dicas preciosas (além da tranquilidade transmitida, que não tem preço).

Essas dicas estão muito bem explicadas na Wiki do Artix.

# history
  ...
  173  2026-04-19_03-06-52  pacman -Syu
  174  2026-04-19_03-09-19  pacman -S artix-archlinux-support
  175  2026-04-19_03-14-52  pacman-key --populate archlinux
  178  2026-04-19_03-35-07  pacman -Syu
  179  2026-04-19_03-35-43  pacman -S wget
  182  2026-04-19_03-38-50  wget https://archlinux.org/mirrorlist/all/ -O /etc/pacman.d/mirrorlist-arch
  183  2026-04-19_03-50-15  pacman -Syu
  184  2026-04-19_03-51-07  pacman -S foliate
  218  2026-04-21_19-40-43  pacman -S sigil
  ...

Os passos são simples:

Instalar o pacote “artix-archlinux-support”, do próprio Artix. — Ao final, ele mesmo já ensina os passos seguintes:

----------------------------------------
==> Add the arch repos in pacman.conf:

#[extra-testing]
#Include = /etc/pacman.d/mirrorlist-arch

[extra]
Include = /etc/pacman.d/mirrorlist-arch

#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch

#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch
----------------------------------------

==> run: 'pacman-key --populate archlinux'

Observe que esses repositórios devem ser adicionados no final do “pacman.conf” do Artix — abaixo dos seus repositórios — para ficarem com prioridade secundária em relação a eles.

Executar o comando “pacman-key”, para obter as chaves de segurança.

Lista de espelhos (mirrorlist) do Arch Linux, no Artix

Pelo comando wget, obtive a lista atualizada dos espelhos do Arch Linux.

Foliate instalado no Artix Linux

A instalação do Foliate exigiu apenas 10 dependências — todas dos repositórios do próprio Artix. — A instalação do Sigil exigiu apenas 4 dependências, também todas dos repositórios oficiais.

Naturalmente, não se recomenda abusar desse recurso — assim como não se recomenda abusar de AUR, Flatpaks etc.

Capturas de tela

Falha do gnome-screenshot com o parâmetro “-w” e formato JPG

Desde Outubro 2025, o parâmetro “-w” do gnome-screenshot — capturar só a janela ativa — começou a salvar arquivos JPG “vazios” (com 0 byte), no meu Arch Linux.

Captura de janela ativa em formato PNG, pelo gnome-screenshot

Depois de várias experiências, optei por salvar essas capturas de janela em formato PNG — e agora tive de fazer o mesmo no Artix.

Action                      Command
------                      -------
Fullscreen                  gnome-screenshot -p -f /run/media/flavio/Warehouse/0_PrtScn/$(date +%%F_%%H-%%M-%%S)_Ax.jpg
Fullscreen    - delay 7’’   gnome-screenshot -p -d 7 -f /run/media/flavio/Warehouse/0_PrtScn/$(date +%%F_%%H-%%M-%%S)_Ax.jpg
Active Window               gnome-screenshot -w -p -f /run/media/flavio/Warehouse/0_PrtScn/$(date +%%F_%%H-%%M-%%S)_Ax.png
Active Window - delay 7’’   gnome-screenshot -w -p -d 7 -f /run/media/flavio/Warehouse/0_PrtScn/$(date +%%F_%%H-%%M-%%S)_Ax.png

O parâmetro “-f” salva automaticamente (sem interação), na pasta indicada e com nome-de-arquivo no padrão indicado. — O parâmetro “-p” inclui o ponteiro do mouse; e o “-d” retarda pelo número indicado de segundos.

Flatpaks-fantasma

Remoção de Flatpaks herdados na partição /home

Eu tinha 9 flatpaks do sistema e 8 flatpaks do usuário, na distro que antecedeu o Artix nas partições Linux11 e Home11. — Ao reaproveitar a pasta pessoal na Home11 (não formatada), meu 2º Conky indicou a sobrevivência de 8 flatpaks de usuário — informação do Fastfetch.

Removing flatpaks:

$ flatpak list
Name                                       Application ID                             Version                      Branch          Installation
Easyflatpak                                org.dupot.easyflatpak                      4.0.29                       stable          user
Freedesktop Platform                       org.freedesktop.Platform                   freedesktop-sdk-25.08.8      25.08           user
Mesa                                       org.freedesktop.Platform.GL.default        25.3.5                       25.08           user
Mesa (Extra)                               org.freedesktop.Platform.GL.default        25.3.5                       25.08-extra     user
Intel VAAPI driver                         org.freedesktop.Platform.VAAPI.Intel                                    25.08           user
Codecs Extra Extension                     org.freedesktop.Platform.codecs-extra                                   25.08-extra     user
GNOME Application Platform version 49      org.gnome.Platform                                                      49              user
Adwaita dark GTK theme                     org.gtk.Gtk3theme.Adwaita-dark                                          3.22            user

  2026-04-10 - 14:20   # pacman -S flatpak
  2026-04-10 - 14:23   $ flatpak list
  2026-04-10 - 14:28   $ flatpak uninstall org.dupot.easyflatpak org.freedesktop.Platform org.freedesktop.Platform.GL.default org.freedesktop.Platform.GL.default org.freedesktop.Platform.VAAPI.Intel org.freedesktop.Platform.codecs-extra org.gnome.Platform org.gtk.Gtk3theme.Adwaita-dark

Para eliminá-los, instalei o Flatpak — listei seus pacotes pelo comando “flatpak list” — e eliminei todos pelo comando “flatpak uninstall”.

Ajustes no Conky

Contagem dos pacotes Artix, AUR, Arch, Flatpak no Conky (Junho)

Eu já monitorava, pelo Conky, o número de pacotes instalados em cada distro — antigamente, extraindo essa informação do Neofetch — e mais recentemente, do Fastfetch:

Distro      Fastfetch count - 2026-03-29

openSUSE    Packages: 4392 (rpm)
Arch        Packages: 1390 (pacman)
Debian      Packages: 3464 (dpkg)
Fedora      Packages: 3111 (rpm)
PCLinuxOS   Packages: 2381 (rpm), 13 (flatpak-system), 1 (flatp
PCLinuxOS   Packages: 2545 (rpm), 11 (flatpak-system), 8 (flatp
Mageia      Packages: 3493 (rpm)
Kubuntu (*) Packages: 2089 (dpkg)
Void        Packages: 1201 (xbps)
Mint    (*) Packages: 2495 (dpkg)
PCLinuxOS   Packages: 2365 (rpm), 9 (flatpak-system), 8 (flatpa
Mx25        Packages: 2803 (dpkg)

Artix  (**) Packages: 1076 (pacman), 8 (flatpak-user)

(*) Neofetch; (**) 2026-04-08.

Gostei de ver o Fastfetch discriminar os pacotes do Flatpak — e ainda por cima, discriminando os do sistema e os do usuário. — Mas, agora, achei mais interessante discriminar os pacotes do Artix, do Arch e do AUR.

$ pacman -Q | wc --lines                                           -- installed packages data base
   1149
$ pacman -Qm | wc --lines                                          -- foreign packages
      3
$ pacman -Qn | wc --lines                                          -- native packages
   1146
$ pacman -Qi | grep '@archlinux' | wc --lines                      -- pacages from Arch
      2
$ pacman -Qin | grep Packager | grep -v '@archlinux.org' | wc -l   -- native packages, except from Arch
   1144
$ flatpak list | wc --lines                                        -- Flatpak packages
      0

O comando “pacman -Qm” discrimina os pacotes “estrangeiros” (foreign) — que não se encontram nos repositórios sincronizados. — No meu caso, até hoje, só pacotes do AUR.

O comando “pacman -Qn” discrimina os pacotes “nativos” — dos repositórios sincronizados pelo “pacman” — mas isso inclui também os do Arch Linux.

Conky com o número dos pacotes instalados no Artix Linux

Usei o comando “pacman -Qi | grep '@archlinux'” para identificar aqueles cujos empacotadores assinam com o email institucional do Arch. — Isso não é garantido — mas entre os 1288 pacotes instalados no meu Arch, apenas 1 empacotador assinou com email externo. Portanto, as chances são grandes. 😇

Para os pacotes nativos do Artix, fiz o inverso: — “pacman -Qin | grep Packager | grep -v '@archlinux.org'” — pois nem todos os empacotadores do Artix assinam com o email institucional “@artixlinux”.

Conky (2) - before:

# ${execi 600 neofetch  --de_version on --stdout | grep "Packages:"}
(or)
# ${execi 600 fastfetch | grep -o -P '.{0,0}Packages.{0,43}'}

Conky (2) - now:

Packages: \
${execi 3600 pacman -Qin | grep Packager | grep -v '@archlinux.org' | wc --lines} (Artix), \
${execi 3600 pacman -Qm | wc --lines} (AUR),
                ${execi 3600 pacman -Qi | grep '@archlinux' | wc --lines} (Arch), \
${execi 3600 flatpak list | wc --lines} (flatpak)

Enfim, a contagem de “zero flatpaks” exigia que eu mantivesse instalada a infraestrutura do Flatpak — o que era um contra-senso. — Um dia, acabei eliminando isso.

Partição Swap

Adicionando e habilitando a partição Swap no Artix Linux

Depois de quase 2 meses, lembrei de habilitar a partição Swap. — Como ela é comum a todas as distros, apenas copiei a linha correspondente do arquivo /etc/fstab do Arch Linux — e colei no do Artix.

Em seguida executei, como super-usuário (root), o comando “swapon --all --verbose” — que monta todas as partições indicadas no fstab — e exibe os detalhes.

KDE Connect

Emparelhamento do celular e download de fotos pelo KDE Connect

Liberei as portas usadas pelo KDE Connect — e fiz o emparelhamento:

   88  2026-04-09_14-35-31 iptables -I INPUT -p tcp --dport 1714:1764 -j ACCEPT
   89  2026-04-09_14-35-40 iptables -I INPUT -p udp --dport 1714:1764 -j ACCEPT

$ iptables -V
iptables v1.8.13 (nf_tables)

$ pacman -Q | grep tables
iptables 1:1.8.13-1
nftables 1:1.1.6-3

Embora eu tenha usado comandos “iptables”, é o “nftables” que está atuando. — Ainda preciso estudar melhor as configurações do Firewall.

lm_sensors

“sensors” e “hwmon”, antes de configurar

Não encontro registro de que eu tivesse configurado o “lm_sensors” (pelo “sensors-detect”), até 25 Maio.

Eu também não tinha feito nenhuma configuração para iniciá-lo pelo OpenRC.

No entanto, ele parecia funcionar normalmente, embora com poucas informações. — A pasta “/sys/class/hwmon” tinha apenas 3 sub-pastas — com 6 itens, 5 itens, e 40 itens, respectivamente.

Pletora de informações do sensors no Arch Linux

Mas eu sentia falta de mais informações — como no Arch, no Debian e no openSUSE — onde a pasta “hwmon” continha uma 4ª sub-pasta, com 310 itens adicionais (no caso específico do meu hardware!).

Então, “descobri” que eu precisava instalar um pacote, para colocar o “lm_sensors” na inicialização pelo OpenRC:

# pacman -Qi lm_sensors-openrc

Name            : lm_sensors-openrc
Version         : 20210505-2
Description     : OpenRC lm_sensors init script

# pacman -Qi | grep '^\(Name\|Install Date\)\s*:' | grep -A2 'lm_sensors'

Name            : lm_sensors
Install Date    : Tue 07 Apr 2026 06:50:35

Name            : lm_sensors-openrc
Install Date    : Mon 25 May 2026 08:28:43

  334  2026-05-25_08-28-38 pacman -S lm_sensors-openrc
  335  2026-05-25_08-32-00 sensors-detect
  341  2026-05-25_08-46-02 rc-service lm_sensors start
  357  2026-05-25_09-42-13 rc-update add lm_sensors

Demorei um pouco para conseguir que os comandos “start” + “add” produzissem o efeito esperado — mas não sei por que demorei a conseguir isso, nem o quê (ou por que), no final deu certo.

O último comando (acima) deveria ser “rc-update add lm_sensors default” (Gentoo Wiki). — O fato de que “acabei por conseguir” pode até ser um consolo — mas ficou uma lacuna no meu entendimento.

Resultado após configurar o lm_sensors e reiniciar o Artix

E o fato é que tudo isso não fez diferença alguma: — Já funcionava, antes — e continuou incompleto, depois.

Deixei as coisas assim, 

Locales

\\\\

xxxx

___________________
• Publicado em 9 Abril 2026; e desenvolvido até...

— … ≠ “•” ≠ … —

PC desktop UEFI / GPT

sábado, 18 de abril de 2020

Arch Linux com KDE Plasma (UEFI-GPT)

Arch Linux KDE

Esta nova instalação do Arch Linux foi feita em cerca de 4 horas, — o dobro do tempo da instalação anterior, — devido a uma tentativa de “facilitar” o processo:

  • Preparei um roteiro em TXT, com todos os comandos, em Pendrive
  • Carreguei o Arch Linux a partir de um DVD
  • Usei o celular para navegar e tirar dúvidas na Arch Wiki
  • Aproveitei outro celular, antigo, para fotografar o processo

Desta vez, a preparação do roteiro foi rápida, — copiei os comandos do registro da instalação anterior, com pequenas adaptações ao novo hardware, — mas na hora de instalar, perdi muito tempo tentando copiar os comandos, do roteiro em TXT para o prompt do zsh, sem sucesso.

Semanas depois, repeti a experiência, — com outra estratégia, para recuperar os comandos do roteiro em TXT para o bash, — e terminei em 2 horas, sem me apressar.

  • Isto não é um “tutorial”. — Apenas um registro, para lembrar o que fiz (inclusive os erros), — e as estratégias que tentei para “facilitar” o processo.

Índice

  • Download, verificação, K3b
  • Roteiro inicial
  • Instalação (1)
  • Sessão Live
  • chroot
  • Instalação do KDE
  • UEFI, Grub, Login
  • Configuração do KDE
  • Pacotes instalados
  • Making of
  • Instalação (2)
  • Antes do chroot
  • chroot, reboot & KDE
  • Conclusão
  • Wallpaper
  • 2023 - Desastre e recuperação

Experiências anteriores

Download, verificação, K3b

Download da imagem ISO por KTorrent

Baixei a imagem archlinux-2020.04.01-x86_64.iso, — e deixei o KTorrent semeando por mais 7 horas, — um mínimo de contribuição, para aliviar a carga dos servidores da comunidade e das instituições que a apoiam.

Verificação da imagem ISO do Arch Linux por md5sum e sha1sum

Em seguida, verifiquei a integridade da imagem ISO por md5sum e sha1sum, — usando o CTRL-F do KWrite, para evitar a fadiga dos olhos.

Queimando a imagem archlinux-2020.04.01-x86_64.iso em DVD, pelo K3b

Por fim, usei o K3b para “queimar” a imagem archlinux-2020.04.01-x86_64.iso em DVD, para ficar à mão, caso eu ainda venha a precisar dele, depois da instalação.

Roteiro inicial

Arquivo TXT com os comandos copiados da instalação anterior e adaptados

Desta vez, não tive paciência para copiar o roteiro à mão. — Copiei os comandos para um arquivo TXT, — com as alterações necessárias para o novo hardware UEFI / GPT.

Considerei as seguintes partições:

    EFI      ---------   sda1
    Linux2   ---------   sda3
     Home2   ---------   sdb3
    Swap     ---------   sdb14

O roteiro em TXT ficou assim, — com várias correções feitas depois de concluir a instalação:

1) ========== Live DVD ==========

# ping google.com
# loadkeys br-abnt2
# mount /dev/sda3 /mnt
# mkdir /mnt/home
# mount /dev/sdb3 /mnt/home
# swapon /dev/sdb14
---------------------------
# mkdir /mnt/boot
# mkdir /mnt/boot/efi
# mount /dev/sda1 /mnt/boot/efi
---------------------------
# nano /etc/pacman.d/mirrorlist                  ###   moved Brazilian mirrors to top
# pacstrap /mnt base linux linux-firmware
# genfstab -U -p /mnt >> /mnt/etc/fstab
# arch-chroot /mnt


2) ========== chroot ==========

# echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
                                                 ###   it was zsh !
# ln -sf /usr/share/zoneinfo/America/Sao_Paulo/etc/localtime /etc/localtime
# hwclock --systohc
# timedatectl set-ntp true

# pacman -S nano
# pacman -S intel-ucode
# pacman -S man-db man-pages texinfo
# pacman -S dosfstools os-prober mtools
# pacman -S networkmanager network-manager-applet wpa_supplicant wireless_tools dialog sudo
# pacman -S grub-efi-x86_64 efibootmgr

# nano /etc/locale.gen                           ###   enabled:  "en_GB.UTF-8 UTF-8"

# locale-gen
# echo LANG=pt_BR.UTF-8 >> /etc/locale.conf
# echo KEYMAP=br-abnt2 >> /etc/vconsole.conf
# nano /etc/hostname                             ###   added:    "Linux2"

# nano /etc/hosts                                ###   added:    127.0.0.1 hostname.localdomain
                                                                 ::1
                                                                 127.0.1.1 Linux2.localdomain

# passwd
# useradd -m -g users -G wheel flavio
# nano /etc/sudoers                              ###   added:    flavio ALL=(ALL) ALL

# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
# grub-mkconfig -o /boot/grub/grub.cfg

# exit


3) ==== Exit chroot === REBOOT ====

# systemctl start NetworkManager
# systemctl enable NetworkManager

# ping google.com

# pacman -S xorg-server
# pacman -S xf86-video-intel libgl mesa
# pacman -S sddm
# systemctl enable sddm
# pacman -S plasma kdebase

# reboot


4) ========== KDE ===========

$ echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc

# nano /etc/polkit-1/rules.d/99-udisks2.rules
# pacman -S conky
# pacman -S ncurses
# pacman -S pcurses
# pacman -S lm_sensors
# sensors-detect
# echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc

# nano /etc/polkit-1/rules.d/99-udisks2.rules    ###   added:    // Allow udisks2 to mount devices without authentication
                                                                 polkit.addRule(function(action, subject) {
                                                                 if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" || action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-system-internal") { return polkit.Result.YES; } });

# pacman -S kwallet-manager

Como se vê, dividi o roteiro em 4 etapas, para maior clareza:

  1. Comandos a serem usados no início da sessão Live DVD
  2. Comandos a serem usados durante o chroot
  3. Instalação do KDE, — após encerrar o chroot, reiniciar o computador e carregar o Arch já instalado
  4. Configuração do KDE

Naturalmente, o roteiro “original” continha várias alternativas em aberto, para testar e decidir na hora, — além de vários erros, que tive de corrigir na hora. — Aqui (acima), optei por corrigir os erros e manter só as opções que de fato funcionaram.

Desse modo, fica menos confuso, — e talvez possa ser útil, para quem quiser aproveitá-lo como ponto de partida, com as devidas adaptações ao seu próprio hardware.

Acesso ao roteiro

O Arch Linux foi carregado a partir do DVD, — e automaticamente se loga como root, no tty1.

Para acessar o roteiro roteiro em TXT, montei o Pendrive em /media/pen.

Criei o usuário “flavio”, loguei no tty2 e abri o arquivo com o nano.

Infelizmente, não consegui descobrir um modo de copiar os comandos do TXT e colar no prompt do zsh, — e acabei optando por digitá-los, para não perder mais tempo.

Em alguns casos, usei o cat + grep para obter determinado comando no tty1, sem ter de ficar indo e vindo o tempo todo. — Isso foi útil no caso do comando echo quilométrico para datação do histórico do zsh / bash, em especial.

Teria sido mais prático imprimir o TXT em papel, como todos fazem, — mas há muitos anos deixei de usar impressora, e naquele momento de quarentena não havia lojas de conveniência (nem eu sairia de casa só para isso). — Também poderia mandar o TXT para o celular, mas isso não atendia às minhas expectativas naquele momento.

Tudo isso contribuiu para que a instalação demorasse 4 horas, — e continuei pensando no assunto, nos dias que se seguiram.

Duas semanas depois, fiz uma experiência de “importar” o roteiro em TXT para o histórico do zsh e do bash, — de modo que bastou usar as setas (↑↓) para dispor de todos os comandos pré-digitados, — e consegui instalar outra cópia do Arch em cerca de 2 horas.

Por acaso, deu ao roteiro o nome “Install.txt”. — Não confundir com o arquivo “install.txt” que vem na imagem ISO, — e que é considerado útil.

Instalação (1)

1) Início da sessão Live

Limitações do comando history no zsh

Apenas alguns comandos dessa primeira etapa não ficaram preservados, pois eu ignorava que a ISO Live do Arch Linux utiliza zsh — cujo comando history exibe só as últimas 16 entradas.

Tentei salvar o histórico dos comandos no Pendrive, várias vezes, — mas ficaram lacunas:
   # history >> /media/pen/history_01.txt
   # history >> /media/pen/history_02.txt
   # history >> /media/pen/history_03.txt

Para salvar o histórico inteiro, desde o primeiro comando, os comandos teriam de ser:

   # history 1 >> /media/pen/history_01.txt
   # history 1 >> /media/pen/history_02.txt
   # history 1 >> /media/pen/history_03.txt

Para simplificar a vida, eu poderia ter criado um alias especificando esse parâmetro:

   # alias history="history 1"

Por isso, tive de recuperar os comandos que faltavam, — e cuja numeração não sei, — pelas fotos feitas durante a instalação:

    (automatic login Root: tty1)

    # mkdir /media
    # mkdir /media/pen
    # mount /dev/sde1 /media/pen

15  # useradd flavio
16  # passwd flavio
-----------------
    (login flavio tty2)

    $ nano /media/pen/Install.txt
-----------------
18  # cat /media/pen/Install.txt | grep echo
20  # loadkeys br-abnt2
21  # echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
22  # source ~/.bashrc
23  # cat ~/.bashrc
24  # exec bash
26  # exit
-----------------
    (logout / login Root)

    (try bash history...)
-----------------
 31  # ping google.com

 35  # mount /dev/sda3 /mnt
 37  # mkdir /mnt/home
 38  # mount /dev/sdb3 /mnt/home
 45  # swapon /dev/sdb14

 50  # ls /
 52  # mkdir /mnt/boot
 53  # mkdir /mnt/boot/efi

 55  # ls /mnt/boot
 56  # mount /dev/sda1 /mnt/boot/efi
 57  # ls /mnt/boot/efi      ------------> EFI, System, mach_kernel

 58  # nano /etc/pacman.d/mirrorlist    -------- 11:40

 59  # cp /etc/pacman.d/mirrorlist /media/pen/

 61  # ip link

 63  # pacstrap /mnt base linux linux-firmware

     # genfstab -U -p /mnt >> /mnt/etc/fstab

     # cat /mnt/etc/fstab  --------------- Ok

     # mc     --------------- copy ~/.bashrc --> /mnt/root
                              (it was in / ─ not in /root)

     # ls -a /mnt/root     --------------- none .bashrc !

     # arch-root /mnt

Sem saber que estava usando o zsh, perdi um bom tempo tentando “datar” o histórico dos comandos, sem resultado algum, — até desistir, e prosseguir com o que importava, afinal.

Poderia ter usado o bash, em vez do zsh

No entanto, ao tentar um # exec bash, poderia ter entendido que este era um caminho possível.

Semanas depois, confirmei que — pelo comando # exec bash — poderia ter feito tudo pelo bash até o chroot.

Até então, tinha apenas carregado o teclado ABNT2.

Testei então a conexão pelo ping, montei a partição-raiz, a /home, ativei a partição Swap e montei a partição EFI.

Para uma medida do tempo que perdi, a sessão começou às 10:16, — e só às 11:40 abri o arquivo /etc/pacman.d/mirrorlist, — onde movi os 5 espelhos do Brasil para o topo.

O passo seguinte foi executar o pacstrap, para instalar os pacotes básicos do Arch na partição-raiz. — Desta vez, optei pelo kernel corrente (linux), em vez do LTS (linux-lts), — pois nunca tive problemas com isso em outras distros, como openSUSE Tumbleweed, PCLinuxOS, Void, Sabayon, Mageia, Fedora e Debian testing, no antigo PC.

Eu receei que o genfstab incorporasse o Pendrive, — mas afinal, ele estava montado em /media, — portanto, fora do parâmetro /mnt usado no comando.

Me parece que o chroot também não incluiu o usuário Live, — caso contrário eu teria perdido o acesso ao Pendrive.

Em boa hora, tive a ideia de copiar o arquivo “~/.bashrc” para /mnt/root.

Com isso, todos os comandos do chroot — onde finalmente reina o bash (não o zsh) — foram datados desde o início.

Pelas fotos do celular Nokia Lumia (NL), o tempo gasto nessa primeira etapa foi de 2h 14min:

10:16 - NL -   Arch-Linux-auto-Login-root-Live
10:23 - NL -   mkdir-media-Pen-mount-media-Pen
10:35 - NL -   useradd-flavio-passwd
11:12 - NL -   echo-export-HISTTIMEFORMAT-bashrc
11:19 - NL -   ping-Google
11:24 - NL -   mount-dev-sda3-OK-ls
11:37 - NL -   mkdir-mnt-boot-efi-Mount
11:40 - NL -   nano-etc-pacman-d-mirrorlist
11:48 - NL -   mirrorlist-OK-Brazil
11:56 - NL -   ip-link-pacstrap-mnt-base-linux-firmware
11:57 - NL -   pacstrapping-117-packages
12:13 - NL -   pacstrap-OK
12:20 - NL -   genfstab
12:29 - NL -   mc-copy-bashrc-mnt-root
12:30 - NL -   arch-chroot-mnt

2) chroot

Histórico e configuração do bash, desde o arch-root

A partir daqui, todos os comandos finalmente ficaram datados, desde o início, — e preservados no /mnt/root/.bash_history — o que simplifica rastrear o que foi feito, e quando.

12:31 -    1  # history
12:33 -    2  # ln -sf /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
12:33 -    3  # date
12:34 -    5  # hwclock --systohc
12:35 -    6  # timedatectl set-ntp true
12:35 -    7  # timedatectl status
12:37 -    8  # pacman -S nano mc
12:38 -    9  # pacman -S intel-ucode
12:39 -   10  # pacman -S man-db man-pages texinfo
12:40 -   11  # pacman -S dosfstools mtools os-prober
12:41 -   12  # pacman -S networkmanager network-manager-applet wpa_supplicant wireless_tools dialog sudo
13:00 -   13  # pacman -S grub efibootmgr
13:01 -   14  # pacman -S grub-efi-x86_64 efibootmgr
13:03 -   15  # nano /etc/locale.gen
13:05 -   17  # locale-gen
13:08 -   18  # echo LANG=pt_BR.UTF-8 >> /etc/locale.conf
13:09 -   19  # echo KEYMAP=br-abnt2 >> /etc/vconsole.conf
13:11 -   20  # nano /etc/hostname
13:11 -   21  # nano /etc/hosts
13:14 -   22  # passwd
13:35 -   29  # useradd -d /home/flavio -m flavio
13:35 -   30  # passwd flavio
13:37 -   34  # useradd -G wheel flavio
13:38 -   38  # nano /etc/sudoers
13:42 -   41  # mc
14:03 -   42  # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
14:05 -   43  # date && grub-mkconfig -o /boot/grub/grub.cfg && date
14:08 -   46  # exit

Pela numeração dos comandos:

2) Fuso horário configurado para BRT (UTC-0300)

5) Relógio do hardware definido para o relógio do sistema

6) Configurada a sincronização do relógio com servidores NTP

8 ~ 14) Instalação dos pacotes mais necessários — alguns já estavam instalados

15) Edição do /etc/locale.gen — habilitado en_GB.UTF-8 (retirar # do início da linha)

17) Geração do arquivo de localização

Correção do /etc/locale.conf, 3 dias depois

18) Configuração do idioma do sistema ---> LANG=pt_BR.UTF-8

Essa escolha resultou em uma interface parcialmente em Inglês e parcialmente em Português do Brasil, — o que torna as capturas de tela pouco inteligíveis, quando se tenta obter ou oferecer ajuda em fóruns internacionais. — Dias depois, alterei para en_GB.UTF-8.

19) Configuração do idioma do teclado ---> br-abnt2

20) Configuração do hostname “Linux2”

21) Inclusão de “Linux2” em /etc/hosts

22) Criação da senha de root

29 ~ 38) Criação do usuário, senha, inclusão no grupo Wheel.

A criação do usuário seria mais amigável pelo comando adduser, mas não estava disponível. — Perdi uns 15 minutos em luta com o comando useradd até conseguir (+/-) o que queria, — apesar de ter pesquisado antes, e anotado várias “receitas de bolo”.

No final, acabei apelando, — e editei o arquivo /etc/sudoers

Desabilitando os-prober em /etc/default/grub

41) Pelo mc, editei o /etc/default/grub — e desabilitei os-prober, pois não há necessidade de o Grub do Arch detectar outras distros, já que o Menu de inicialização da máquina é gerenciado pelo Grub do openSUSE (atualização: UEFI / GPT). — De qualquer modo, o Grub do Arch raramente se atualiza, pois o Kernel será sempre “linux” (ou “linux-lts”, por exemplo), sem referência aos números de versão / revisão.

42) Instalação do Grub do Arch Linux

43) Geração do arquivo de configuração /boot/grub/grub.cfg

46) Encerramento do chroot e...

... finalmente, Reboot — comando executado fora do chroot (de volta à sessão Live), e por isso, não preservado no histórico do Arch instalado.

3) Instalação do KDE

Histórico de comandos do usuário na sessão de instalação do Plasma KDE

A instalação do Plasma KDE demorou cerca de 40 minutos e envolveu tanto comandos executados pelo root quanto pelo usuário:

14:16 - NL -    tty2 login flavio
--    -    7  $ echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
14:25 -   12  $ systemctl start NetworkManager       ---> passwd
14:27 -   16  $ systemctl enable NetworkManager      ---> passwd
14:28 -   17  $ sudo su
14:29 -   50  # pacman -S xorg-server
14:31 -   51  # pacman -S xf86-video-intel libgl mesa
14:31 -   52  # pacman -S sddm
14:39 -   53  # systemctl enable sddm
14:40 -   54  # pacman -S plasma kdebase
14:54 -   19  $ history

Pela numeração dos comandos:

Data e hora (10-digit Posix time), do 10º comando em diante, no ~/.bash_history

7) Datação do ~/.bash_history do usuário. — Entrou em vigor a partir do comando nº 10, após um logout / login. — Os primeiros 9 comandos exibem sempre a data “atual”, a cada vez que se executa um novo comando history.

11 ~ 16) Ainda como usuário, iniciei o NetworkManager (start) e já o deixei habilitado (enable) para iniciar automaticamente desde a primeira sessão KDE

Deveria ter feito isso como root, mas me distraí, tentei como usuário, — o Arch pediu a senha de root, e seguiu em frente. — Depois usei sudo su, talvez por preguiça de ficar alternando entre os consoles virtuais, e segui adiante.

50 ~ 52) Instalação dos pacotes necessários ao KDE

A seleção levou em conta o processador Intel, — montado em placa-mãe Asus com vídeo integrado (iGPU), — sem placa de vídeo:

Mobo:     ASUSTeK TUF B360M-PLUS Gaming/BR    UEFI / Sata III / USB 3.1 (Gen 1, 2)
CPU:      6 × Intel® Core™ i5-9400 CPU @ 2.90 GHz (min/max: 800/4100 MHz)
Memory:   16 GiB speed: 2400 MT/s type: DDR4   (max: 4 x 16 = 64 GiB)
Graphics: Intel UHD Graphics 630 driver: i915 v: kernel
SSD:      480 GB Kingston A400 Sata III

53) Habilitação do SDDM

54) Instalação do Plasma e dos pacotes básicos do KDE

19) Um último history marcou o final desta sessão e fixou as atividades do usuário até ali.

UEFI, Grub, Login

Recolocando o Grub do openSUSE no topo das prioridades de Boot

Ao reiniciar o computador, apertei DEL, e entrei no UEFI Bios Utility para colocar o Grub do openSUSE no topo, novamente, — pois raramente vou usar o Grub do Arch.

Grub do openSUSE atualizado para detectar o Arch Linux

Carreguei o openSUSE e atualizei seu Grub, — para incluir o Arch Linux.

Já faz pelo menos 10 meses que o Grub do openSUSE Tumbleweed se mostra capaz de gerar entradas completas para o Arch Linux, — sem que eu precise editar manualmente o arquivo /boot/grub/grub.cfg para adicionar o caminho (path) do initramfs, após ucode.img.

Inclusão do Arch Linux no Conky das demais distros

Enfim, recuperei do Pendrive os arquivos com a documentação da instalação, — e ajustei o Conky do openSUSE, para incluir as partições do Arch Linux. — Sim, o Conky já estava no limite de altura da tela, e tive de reduzir o tamanho das letras no cabeçalho.

Meus arquivos de trabalho atuais ficam na partição “Storage” ext4, comum a todas as distros, — pois seria incômodo dispersá-los nas partições /home de cada uma delas.
O Pendrive Fat32 não conhece nem guarda atributos típicos do ext4 e outros sistemas de arquivos, tais como owner, permissions etc., — portanto, esses atributos foram criados pelo openSUSE, ao montar o Pendrive e copiar para “Storage”, — daí, o group ID (GID=100), que não afeta meu trabalho, desde que todos os arquivos agora pertencem ao mesmo user ID (UID=1000), comum a todas as distros, inclusive o PCLinuxOS instalado este ano, a partir de uma ISO Live KDE de 2019-07.
Tela de Login para iniciar a primeira sessão KDE Plasma no Arch Linux

Coloquei em dia alguns assuntos pessoais e, no final de 1 hora, voltei a carregar o Arch Linux, — e fiz o Login na sessão Plasma KDE, para iniciar sua configuração básica.

4) Configuração do KDE

Configuração de Login automático do usuário em sessão Plasma KDE

A configuração de uma distro Linux e do Plasma KDE é uma coisa que, há anos, tento anotar de modo sistemático, mas nunca consegui, — pois não vejo como seguir uma ordem rígida, passo-a-passo, do começo até o fim, — afinal, cada coisa depende de, primeiro, configurar parcialmente alguma outra coisa.

Por isso, no primeiro dia faço as configurações mais urgentes, — para retomar minhas atividades normais, logo após a instalação, — e sigo configurando por vários dias, semanas, meses.

A meu ver, a configuração de uma distro e do ambiente Plasma KDE nunca termina, — nem cabe numa postagem típica do Blogger. — Seria preciso desdobrar em várias postagens.

Portanto, as configurações do primeiro dia refletem o que considerei mais urgente:

  • Atualizar o sistema pelo # pacman -Syyu
  • Instalar gnome-screenshot e redefinir os atalhos de PrtScn, Shift-PrtScn
  • Instalar o Conky, criar e ajustar o arquivo ~/.config/conky/conky.conf
  • Configurar o lm_sensors pelo # sensors-detect
  • Instalar e configurar o Gwenview (Esc para fechar etc.)
  • Configurar Dolphin, Konsole, Kate
  • Configurar o ambiente Plasma KDE
  • Auto-Login no SDDM
  • Montagem automática de partições extras, sem autenticação
  • Desabilitar Busca de arquivos (File search)
  • Desabilitar a Carteira de senhas (KWallet)
  • Instalar pcurses, para pesquisa de pacotes
  • Instalar Chromium, VLC, Youtube-DL
  • Instalar fontes Verdana
  • Configurar o Chromium como navegador padrão
  • Instalar speedtest-cli, corona-cli

O Login automático é uma das coisas que costumo configurar logo na primeira sessão Plasma KDE, para evitar perda de tempo (sou o único usuário), e para poder medir o tempo de Boot (uptime) e o uso inicial de Memória RAM, pelo Conky, — mas evito Auto-Login após Log Out, pois há casos em que convém dispor de uma pausa, para logar como root em tty2 e realizar determinadas tarefas de manutenção, — sem nenhum ambiente gráfico em execução, por exemplo.

Criando arquivo que autoriza montagem de partições sem autenticação

Outra configuração urgente é a montagem automática de partições adicionais, — “Storage”, por exemplo, onde centralizo os arquivos de trabalho, — com permissão de gravação para o usuário UID=1000, comum a todas as distros em dualboot.

Até este momento, eu não tinha montado nenhuma partição adicional, — pois, ao digitar a senha, criaria pontos de montagem pertencentes ao root, — o que não resolve, e ainda gera mais trabalho para corrigir depois.

Nas distros como o Arch Linux, em que a montagem de partições adicionais pelo Dolphin / udisks2 exige senha, eu crio um arquivo de configuração /etc/polkit-1/rules.d/99-udisks2.rules, que autoriza a montagem sem autenticação:

// Allow udisks2 to mount devices without authentication
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" || action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-system-internal") { return polkit.Result.YES; } });
Atenção! - Não faça isto sem a supervisão de um adulto. — Ignoro se isto pode quebrar a segurança do sistema. — Consulte um perito.

Este é um dos muitos casos em que uso os relatos deste blog Byteria para recuperar recursos que usei em instalações anteriores. — Neste momento, usei o Konqueror, pois ainda não tinha instalado o Chromium. — Muitas coisas talvez pudessem ser mais fáceis, nos estágios iniciais da instalação, se eu já usasse navegadores web em modo texto, como Lynx ou ELinks, por exemplo; mas não tenho certeza.

Desabilitando Busca de arquivos (baloo_file) no KDE System settings

Por hábito, sempre desabilito a “Busca de arquivos” (File search) pelo KDE System settings, desde 2016, — e isto jamais afetou o desempenho ou a velocidade de buscas simples (CTRL-F), por nome ou conteúdo, no Dolphin, — nem a “Busca avançada”, por vários parâmetros, no KFind.

Desabilitando a “Carteira de senhas” do KDE, no System settings

Há vários anos adquiri o hábito de desabilitar a “Carteira de senhas” (KWallet), — embora eu não possa recomendar isso a ninguém, pois nunca estudei se isso afeta a segurança da navegação.

O KWallet veio ativado, mas sem seu módulo de gerenciamento pelo KDE System settings. — Esse módulo é o kwalletmanager (sem hífen!). — Tentei com hífen, não deu certo, então lembrei de instalar logo o pcurses, para facilitar a pesquisa de pacotes e de seus nomes exatos, dependências etc.

Instalando Verdana da pasta /usr/share/fonts/truetype/msttfcorefonts do KDE Neon (Linux5)

Eu costumava instalar fontes Verdana a partir da pasta /.wine na /home de outras distros, mas neste novo hardware parece que ainda não criei uma situação em que isto seja possível.

Fui encontrar os pacotes na pasta /usr/share/fonts/truetype/msttfcorefonts do KDE Neon (Linux5). — A necessidade é a mãe das descobertas.

Legibilidade no Chromium, antes e depois de instalar as fontes Verdana

Pessoalmente, acho textos em Verdana muito mais legíveis, na tela do computador, do que textos em qualquer outra fonte, no mesmo tamanho, — e escrever é minha atividade principal, por isso vale a pena cuidar do conforto dos olhos.

Economia de espaço vertical, alinhamento e legibilidade do Conky, com Verdana

Além de ser mais legível, mesmo a 60+ cm da tela do monitor, — por ter o corpo principal das letras maior, e serifas bem nítidas (só) nos caracteres que precisam delas, — as fontes Verdana apresentam ótimo aproveitamento de espaço, em especial na altura (entrelinhamento); e mono-espaçamento parcial (números, ponto, vírgula), ideal para o alinhamento das colunas do Conky.

Nas partições das distros, basta esperar que a nova /home ultrapasse 1 GiB, — para que surja o ponto separador das casas decimais e o M de MiB seja substituído pelo G de GiB, — e as colunas ficam alinhadas.

Infelizmente, ainda não encontrei fontes de código aberto que preencham todos esses requisitos.

Configurações de navegador-padrão dispersas no KDE System settings

Para tornar o Chromium meu “navegador-padrão”, no KDE, não basta só clicar no botão que ele mesmo apresenta, ao ser aberto pela primeira vez, — pois existem outras configurações dispersas no KDE System settings que, se não forem ajustadas, acabam gerando surpresas. — Por isso, costumo seguir esses passos:

1) No próprio Chromium: “Set as default browser”

2) No KDE System settings - Applications - Default applications - Web browser

3, 4) Idem, idem - File associations - filtrar “htm”: - xhtml-xml, html

5) Idem, idem - File associations - filtrar “bookmark”: - x-mozilla-bookmarks, x-xbel

Em 2), marcar Chromium como aplicativo-padrão para abrir URLs http e https.

Em 3), 4), 5), mover Chromium para o topo — acima do Konqueror e demais aplicativos.

Observações diárias da velocidade da conexão, IPv4, IPv6

Desde quando mudei minha conexão de “10 megas” para “200 megas”, com novo provedor, fiquei viciado em monitorar a velocidade da rede todos os dias, ao ligar o Modem e o computador, — e o speedtest-cli é a ferramenta mais prática que encontrei para medir rapidamente e copiar o resultado para um arquivo TXT.

Em outras distros, também anoto o IPv4 e o IPv6 do dia, pelo inxi, — mas no Arch tive de adotar o comando $ ip address show | grep inet, enquanto não ativo o AUR.

Instalação e atualização do corona-cli pelo npm

Em tempos de Covid19, o aplicativo corona-cli se mostrou o caminho mais simples para monitorar regularmente a situação. — Infelizmente, não oferece a opção de listar os estados do Brasil, — só os states dos Estados Unidos.

13 Jun 2020 - Até o momento, só não funcionou no KDE Neon e no Mageia.

Um resumo dessas configurações do primeiro dia, — em capturas de tela (A) e comandos de usuário ($) e de super-usuário (#), — mostra a alternância entre diferentes itens que preciso configurar por etapas, por serem requisitos para a configuração de outros itens:

15:56   55    # pacman -Syyu
16:00   56    # pacman -S gnome-screenshot
16:01   57    # pacman -S conky
16:09 -   A -   1st-PrtScn
16:12 -   A -   1st-Shift-PrtScn
16:15   58    # pacman -S gwenview
16:16   60    # sensors-detect
16:20 -   A -   Dolphin-toolbars
16:21 -   A -   Dolphin-View Properties         --> remember-each-folder
16:22 -   A -   Dolphin-Previews-config         --> enable TXT
16:22 -   A -   Dolphin-Services                --> enable DELETE
16:23 -   A -   Dolphin-View-Properties-default --> apply to all folders
16:24 -   A -   Conky-conf
16:29 -   A -   Konsole                         --> margin --> 10px
16:31   22    $ conky &
16:31 -   A -   Conky                           --> BEGIN config
16:35 -   A -   Gwenview
16:39 -   A -   Taskbar
16:42 -   A -   Audio
16:43 -   A -   Notifications-Plasma-Workspace  --> enable sound Login, Logout
16:45 -   A -   SDDM                            --> enable Auto-Login
16:47 -   A -   Conky                           --> Autostart at Login
16:48 -   A -   Background-Services             --> disable many
16:48 -   A -   Start-Empty-Session
16:50 -   A -   Polkit                          --> allow mount w/o auth
16:57   62    # nano /etc/polkit-1/rules.d/99-udisks2.rules
16:59 -   A -   global-Theme
16:59 -   A -   Plasma style                    --> Maia transparent
17:01 -   A -   Window decorations              --> Transparent oxygen
17:03 -   A -   Menu-icon                       --> Arch logo
17:04 -   A -   Menu-KFind-blur-ok
17:05 -   A -   Kate                            --> load-last-saved-session
17:07 -   A -   Kate                            --> Save session
17:08 -   A -   Restart
17:10 -   A -   Boot time: 14s                  --> 476 MiB RAM after 1 minute
17:12 -   A -   Keyboard                        --> Left-Win --> 3rd Level
17:15 -   A -   Night-color
17:16 -   A -   don't Lock screen
17:16 -   A -   Energy-saving
17:17 -   A -   Screen edges                    --> disable
17:18 -   A -   Desktop-effects                 --> disable many
17:18 -   A -   File search                     --> disable
17:22 -   A -   Dolphin                         --> hide most Places
17:26 -   A -   Restart
17:28 -   A -   Boot time: 26s                  --> 497 MiB RAM after 1 minute
17:32 -   A -   Removable devices               --> Auto-mount - Ok
17:33 -   A -   Restart
17:35 -   A -   Boot time: 21s                  --> 486 MiB RAM after 1 minute
17:39   63    # lsblk
17:40   64    # blkid
17:42 -   A -   Dolphin                         --> start-page: "Storage" partition
17:43 -   A -   Conky                           --> PATH to all partitions
17:51 -   A -   1st-PrtScn                      --> save to "Storage" partition
17:51 -   A -   1st-Shift-PrtScn                --> save to "Storage" partition
17:54   36    $ pacman -Q                        >> packages_2020-04-15_01.txt
18:07 -   A -   System settings                 --> KWallet - Oops
18:10   68    # pacman -S ncurses
18:10   69    # pacman -S pcurses
18:11   70    # pcurses                         --> search KWallet
18:13   71    # pacman -S kwalletmanager
18:15   72    # pacman -S chromium
18:23   73    # pacman -S speedtest-cli
18:26   39    $ date && speedtest-cli | grep "Hosted\|Download\|Upload" && date
18:28   40    $ ip link
18:30 -   A -   Conky                           --> eth0-eno1
18:35   77    # pacman -S chromium
18:35 -   A -   pcurses                         --> inxi - Not found
18:52   78    # pacman -S kdialog
18:52 -   A _   KWallet                         --> disable
18:54 -   A -   remove-Widget-Show-desktop
20:11 -   A -   Wallpaper Ok
20:14   79    # pacman -S youtube-dl
20:27 -   A -   Restart
20:30 -   A -   Boot time: 21s                  --> 479 MiB RAM after 1 minute
20:32 -   A -   Chromium                        --> set default browser
21:04 -   A -   Verdana-fonts                   --> install from Home1 (openSUSE)
21:07 -   A -   Chromium                        --> before & after Verdana
21:09 -   A -   Conky                           --> before & after Verdana
21:45   48    $ konsole -v
21:46   49    $ dolphin -v
21:46   50    $ kate -v
21:46   51    $ gwenview -v
21:49 -   A -   file-associations               --> set Chromium default browser
21:50 -   A -   file-associations               --> set Chromium default for *HTM* files
21:53   80    # pacman -S vlc
21:59   86    # pacman -S npm
22:09 -   A -   Audio-volume                    --> VLC vs. Chromium
22:15 -   A -   Wired-connection                --> IPv6, details
22:17 -   A -   Touch-screen                    --> disable

Pacotes instalados

Tenho uma planilha com todos os pacotes que costumo instalar em todas as distros, — com indicação de quais pacotes cada distro Linux não oferece (ou não precisa), — mas também neste caso evito seguir essa lista de modo rígido.

A tendência de uma lista como essa, após algum tempo, é acumular pacotes que já deixei de usar, ou que atualmente uso com pouca frequência.

Uma lista parcial, de um caso real e recente, — com os pacotes efetivamente instalados, à medida em que senti necessidade de cada um, — ajuda a visualizar os que de fato uso hoje em dia:

2020-04-15

12:37       8    # pacman -S nano mc
12:38       9    # pacman -S intel-ucode
12:39      10    # pacman -S man-db man-pages texinfo
12:40      11    # pacman -S dosfstools mtools os-prober
12:41      12    # pacman -S networkmanager network-manager-applet wpa_supplicant wireless_tools dialog sudo
13:00      13    # pacman -S grub efibootmgr
13:01      14    # pacman -S grub-efi-x86_64 efibootmgr
14:29      50    # pacman -S xorg-server
14:31      51    # pacman -S xf86-video-intel libgl mesa
14:31      52    # pacman -S sddm
14:40      54    # pacman -S plasma kdebase

16:00      56    # pacman -S gnome-screenshot
16:01      57    # pacman -S conky
16:15      58    # pacman -S gwenview
18:10      68    # pacman -S ncurses
18:10      69    # pacman -S pcurses
18:13      71    # pacman -S kwalletmanager
18:23      73    # pacman -S speedtest-cli
18:35      77    # pacman -S chromium
18:52      78    # pacman -S kdialog
20:14      79    # pacman -S youtube-dl
21:53      80    # pacman -S vlc

2020-04-18

15:52      99    # pacman -S libreoffice
16:39     100    # pacman -S okular
17:19     102    # pacman -S krename
17:20     103    # pacman -S kim4
19:27     106    # pacman -S qt5-xmlpatterns
22:57     113    # pacman -S android-file-transfer
23:06     115    # pacman -S mtpfs

2020-04-20

15:26     128    # pacman -S gimp
18:47     130    # pacman -S npm
18:53     134    # npm i -g corona-cli

2020-04-21

19:47     148    # pacman -S kruler

2020-04-22

18:29     157    # pacman -S dolphin-plugins
18:40     160    # pacman -S kdesdk-thumbnailers
18:44     162    # pacman -S marble
18:48     163    # pacman -S kdesdk-thumbnailers
18:49     165    # pacman -S ffmpegthumbs
18:51     168    # pacman -S kimageformats
18:57     170    # pacman -S kdegraphics-thumbnailers
19:29     172    # pacman -S qt5-imageformats
19:57     175    # pacman -S kdiff3
19:58     177    # pacman -S filelight

      uncomment [multilib] section in /etc/pacman.conf

20:33     183    # pacman -S wine-staging
20:37     186    # pacman -S wine-gecko
20:38     187    # pacman -S wine-mono
20:39     188    # pacman -S winetricks

20:57     190    # pacman -S xsane

2020-04-26 - Naturalmente, esta é uma lista incompleta, em atualização com o passar do tempo.

Making of

Cronologia dos comandos (numerados) e fotos (NL) da instalação do Arch

A estratégia de copiar o /root/.bashrc para /mnt/root fez com que todos os comandos usados no chroot fossem datados, desde o início, — e o /mnt/root/.bash_history ficou naturalmente preservado.

Histórico dos comandos com datação, desde o início do chroot

Como essa “datação” se faz em horário UTC (system clock), pode ser recuperada em hora local a qualquer momento, pelo comando history, para um arquivo TXT.

Renomeando as fotos (NL) para o mesmo formato de data+hora pelo KRename

As fotos de celular são facilmente renomeadas para o mesmo formato, usando o KRename. — Depois, bastou examinar todas as fotos pelo Gwenview, acrescentando palavras-chave no final dos nomes, — e listá-las pelo comando ls -1 para outro arquivo TXT.

Comandos e fotos reunidos para colocá-los em ordem cronológica

Uma vez coladas as 2 sequências em um arquivo TXT unificado, bastou um comando sort para colocar os comandos e as fotos em ordem cronológica, — com as fotos sempre mostrando os comandos executados imediatamente antes.

Antes de entremeá-los em ordem cronológica, eliminei a data e os segundos, e usei os recursos do KWrite para fazer alguns arranjos visuais, de modo a deixar a lista mais legível. — As linhas com “NL” são as fotos (Nokia Lumia) e as linhas com números indicam os comandos.

Restaram 6 comandos sem numeração e sem data, entre o nº 54 (14:40) e o nº 55 (15:56), — ou seja, entre a instalação do Plasma, a reinicialização do PC e o início da primeira sessão KDE.

Instalação (2)

Montagem do Pendrive para “importar” os comandos para o histórico do zsh e do bash

2020-04-30 - Duas semanas depois, fiz uma nova instalação, apenas para verificar a viabilidade de “importar” o roteiro em TXT para os históricos do zsh e do bash, — de modo que bastaria usar as setas (↑↓) para obter os comandos pré-digitados.

Para isso, copiei em papel apenas os comandos iniciais, — só o necessário para montar o Pendrive e “importar” os demais comandos do roteiro:

Comandos iniciais, ainda usando o zsh

Essa tentativa inutilizou o histórico do zsh, mas funcionou bem no histórico do bash, — então tentei um # exec bash, e segui com ele até o chroot, — onde o bash é o shell padrão.

Deixando de lado o que não deu certo, os comandos zsh efetivos foram:

# mkdir /media
# mount /dev/sde1 /media
# cat /media/Install.txt >> ~/.bash_history
# exec bash

Antes do chroot

Comandos bash, antes do chroot

Portanto, ao iniciar o bash, eu tinha um “histórico” com 89 linhas “importadas”, — incluindo os comandos que seriam utilizados em todas as etapas, — no chroot, ou após reiniciar o computador e carregar o Arch já instalado, e mesmo ao iniciar a primeira sessão KDE.

Naturalmente, essas primeiras 89 linhas, “importadas” do arquivo em TXT, não têm data, — pois não são comandos realmente executados.

Quase todas 89 linhas “importadas” começam por um “#”, — que eu devia eliminar, antes de usá-las como comandos efetivos.
# history
    1                       # alias history="history 1"
    2                       # mkdir /media
    3                       # mkdir /media/pen
    4                       # mount /dev/sde1 /media/pen
    5                       # ------------------------
    6                       # cat /media/pen/Install.txt >> ~/.zsh_history
    7                       # cat /media/pen/Install.txt >> ~/.bash_history
    8                       # history -n
    9                       # ------------------------
   10                       # echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.zshrc
   11                       # source ~/.zshrc
   12                       # echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
   13                       # ------------------------
   14                       # ping google.com
   15                       # loadkeys br-abnt2
   16                       # mount /dev/sda8 /mnt
   17                       # mkdir /mnt/home
   18                       # mount /dev/sdb8 /mnt/home
   19                       # swapon /dev/sdb14
   20                       # mkdir /mnt/boot
   21                       # mkdir /mnt/boot/efi
   22                       # mount /dev/sda1 /mnt/boot/efi
   23*                      cp ~/.zsh_history /mnt/root
   24                       # cp ~/.bash_history /mnt/root
   25                       # cp ~/.zshrc /mnt/root
   26                       # cp ~/.bashrc /mnt/root
   27                       # -----------------------------
   28                       # nano /etc/pacman.d/mirrorlist                  ###   move Brazilian mirrors to top
   29                       # pacstrap /mnt base linux-lts linux-firmware
   30                       # genfstab -U -p /mnt >> /mnt/etc/fstab
   31                       # arch-chroot /mnt
   32                       # ========== chroot ==========
   33                       # history -n                                                                  ###   is it needed?
   34                       # echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc                    ###   is it needed?
   35                       # ln -sf /usr/share/zoneinfo/America/Sao_Paulo/etc/localtime /etc/localtime
   36                       # hwclock --systohc
   37                       # timedatectl set-ntp true
   38                       # ------------------------
   39                       # pacman -S nano
   40                       # pacman -S intel-ucode
   41                       # pacman -S man-db man-pages texinfo
   42                       # pacman -S dosfstools os-prober mtools
   43                       # pacman -S networkmanager network-manager-applet wpa_supplicant wireless_tools dialog sudo
   44                       # pacman -S grub-efi-x86_64 efibootmgr
   45                       # ------------------------
   46                       # nano /etc/locale.gen                           ###   enabled:  "en_GB.UTF-8 UTF-8"
   47                       # ------------------------
   48                       # locale-gen
   49                       # echo LANG=pt_BR.UTF-8 >> /etc/locale.conf
   50                       # echo KEYMAP=br-abnt2 >> /etc/vconsole.conf
   51                       # nano /etc/hostname                             ###   add:    "Linux7"
   52                       # echo 'Linux7' >> /etc/hostname
   53                       # nano /etc/hosts                                ###   add:
   54                       # echo '127.0.0.1 hostname.localdomain' >> /etc/hosts
   55                       # echo '::1 >> /etc/hosts'
   56                       # echo '127.0.1.1 Linux2.localdomain' >> /etc/hosts
   57                       # ------------------------
   58                       # passwd
   59                       # useradd -m -g users -G wheel flavio
   60                       # nano /etc/sudoers                              ###   add:    flavio ALL=(ALL) ALL
   61                       # echo 'flavio ALL=(ALL) ALL' >> /etc/sudoers
   62                       # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
   63                       # grub-mkconfig -o /boot/grub/grub.cfg
   64                       # exit
   65                       # ==== Exit chroot === REBOOT ====
   66                       # systemctl start NetworkManager
   67                       # systemctl enable NetworkManager
   68                       # ping google.com
   69                       # pacman -S xorg-server
   70                       # pacman -S xf86-video-intel libgl mesa
   71                       # pacman -S sddm
   72                       # systemctl enable sddm
   73                       # pacman -S plasma kdebase
   74                       # reboot
   75                       # ========== KDE ===========
   76                       $ echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc       ###   is it needed?
   77                       # nano /etc/polkit-1/rules.d/99-udisks2.rules
   78                       # pacman -S conky
   79                       # pacman -S ncurses
   80                       # pacman -S pcurses
   81                       # pacman -S lm_sensors
   82                       # sensors-detect
   83                       # echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
   84                       # nano /etc/polkit-1/rules.d/99-udisks2.rules    ###   added:
   85                       # -----------------------
   86                       // Allow udisks2 to mount devices without authentication
   87                       polkit.addRule(function(action, subject) {
   88                       if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" || action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-system-internal") { return polkit.Result.YES; } });
   89                       # -----------------------
--------------------------
   91  2020-04-30_12-28-35  echo 'export HISTTIMEFORMAT="%F_%H-%M-%S "' >> ~/.bashrc
   95  2020-04-30_12-30-35  source ~/.bashrc
  100  2020-04-30_12-34-12  ping google.com
  101  2020-04-30_12-35-51  loadkeys br-abnt2
  106  2020-04-30_12-37-44  mkdir /mnt
  107  2020-04-30_12-42-46  mount /dev/sda8 /mnt
  109  2020-04-30_12-44-28  mkdir /mnt/home
  111  2020-04-30_12-45-58  mount /dev/sdb8 /mnt/home
  112  2020-04-30_12-47-08  swapon /dev/sdb14
  113  2020-04-30_12-47-40  mkdir /mnt/boot
  115  2020-04-30_12-48-38  mkdir /mnt/boot/efi
  116  2020-04-30_12-49-45  mount /dev/sda1 /mnt/boot/efi
  120  2020-04-30_12-56-28  mkdir /mnt/root
  121  2020-04-30_12-57-43  cp ~/.bash_history /mnt/root
  123  2020-04-30_12-58-50  cp ~/.bashrc /mnt/root
  124  2020-04-30_13-01-03  nano /etc/pacman.d/mirrorlist                ###   move Brazilian mirrors to top
  126  2020-04-30_13-06-19  pacstrap /mnt base linux-lts linux-firmware
--------------------------
  141  2020-04-30_13-19-55  genfstab -U -p /mnt >> /mnt/etc/fstab
  144  2020-04-30_13-23-25  history > /mnt/root/history-pre-chroot.txt
                            arch-chroot /mnt

Do nº 91 em diante, estão os comandos realmente executados, — para datar o histórico, testar a conexão, carregar o teclado ABNT2, montar as partições de destino / e /home, habilitar a partição Swap, montar a partição EFI, colocar os espelhos do Brasil no topo da mirrorlist, instalar os pacotes básicos do Arch pelo pacstrap, e gerar o arquivo /etc/fstab.

Aproveitei para copiar o bashrc e o bash_history para a partição de destino, para não ter de repetir esse trabalho, — configurar a datação, importar o TXT, — ao entrar no chroot.

Um erro de digitação no roteiro me fez gastar mais de 10 minutos (nº 127 ~ 140), até conseguir gerar o arquivo /etc/fstab. — Eliminei os comandos falhados (abaixo), bem como ls, cat, mc e outros, para não confundir a leitura. — Só o roteiro está mantido, incluindo os erros de digitação.

Por via das dúvidas, direcionei um comando history para um arquivo TXT, — antes de iniciar o chroot. — Foi a única documentação que ficou dessa etapa (além das fotos), em horário UTC:

chroot, reboot & KDE

Erro de digitação em comando importado do roteiro

Apesar de ter copiado o bash_history da sessão Live, — depois de já ter executado vários comandos, — ao entrar no chroot, o histórico apresentou só as linhas “importadas” (que agora eram 90).

Portanto, a numeração começou de novo (nº 91), — e isso foi o que ficou, ao reiniciar o computador e carregar o Arch instalado.

Um erro de digitação frustrou a configuração do fuso horário, — que só foi corrigido horas depois (comandos nº 172 a 174, após deletar o link errado).

   95  2020-04-30_10-26-50  ln -sf /usr/share/zoneinfo/America/Sao_Paulo/etc/localtime /etc/localtime
   97  2020-04-30_10-27-32  hwclock --systohc
   98  2020-04-30_10-27-48  timedatectl set-ntp true
--------------------------
  108  2020-04-30_10-34-05  pacman -S nano
  109  2020-04-30_10-34-33  pacman -S intel-ucode
  110  2020-04-30_10-34-57  pacman -S man-db man-pages texinfo
  111  2020-04-30_10-35-14  pacman -S dosfstools os-prober mtools
  112  2020-04-30_10-35-37  pacman -S networkmanager network-manager-applet wpa_supplicant wireless_tools dialog sudo
  113  2020-04-30_10-36-21  pacman -S grub-efi-x86_64 efibootmgr
  115  2020-04-30_10-37-31  nano /etc/locale.gen                           ###   enabled:  "en_GB.UTF-8 UTF-8"
  116  2020-04-30_10-39-03  locale-gen
  118  2020-04-30_10-40-26  echo KEYMAP=br-abnt2 >> /etc/vconsole.conf
  119  2020-04-30_10-40-55  echo 'Linux7' >> /etc/hostname
  122  2020-04-30_10-44-17  echo '127.0.0.1 hostname.localdomain' >> /etc/hosts
  124  2020-04-30_10-44-59  echo '::1' >> /etc/hosts
  126  2020-04-30_10-46-01  echo '127.0.1.1 Linux7.localdomain' >> /etc/hosts
  129  2020-04-30_10-47-15  passwd
  130  2020-04-30_10-48-31  echo LANG=en_GB.UTF-8 >> /etc/locale.conf
  139  2020-04-30_10-54-23  useradd -m -g users -G wheel flavio
  140  2020-04-30_10-54-52  echo 'flavio ALL=(ALL) ALL' >> /etc/sudoers
  141  2020-04-30_10-55-24  passwd flavio
  142  2020-04-30_10-56-38  grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
  143  2020-04-30_10-57-16  grub-mkconfig -o /boot/grub/grub.cfg
  144  2020-04-30_10-58-16  exit      ### Exit chroot & reboot
--------------------------
  146                       systemctl start NetworkManager
  147                       ping google.com
  148                       systemctl enable NetworkManager
  149                       pacman -S xorg-server
  150                       pacman -S xf86-video-intel libgl mesa
  151                       pacman -S sddm
  152                       systemctl enable sddm
  153                       pacman -S plasma kdebase
  154                       reboot
--------------------------
  156  2020-04-30_11-19-50  pacman -Syyu
  157  2020-04-30_11-20-30  pacman -S gnome-screenshot
  160  2020-04-30_11-26-52  pacman -S gwenview
  169  2020-04-30_23-53-57  date && pacman -Syyu && date
  170  2020-04-30_23-54-36  pacman -S mc
  172  2020-04-30_23-57-57  ln -sf /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime
  174  2020-04-30_23-58-49  timedatectl set-ntp true
  176  2020-05-01_00-10-26  nano /etc/polkit-1/rules.d/99-udisks2.rules
  177  2020-05-01_00-42-41  pacman -S chromium
--------------------------
  179  2020-05-01_08-19-41  date && pacman -Syyu && date
  180  2020-05-01_08-20-54  pacman -S speedtest-cli
  184  2020-05-01_09-25-41  pacman -S kwalletmanager
  185  2020-05-01_10-05-35  pacman -S qt5-xmlpatterns
  186  2020-05-01_10-14-04  date && pacman -Syyu && date
  187  2020-05-01_10-15-15  pacman -S conky
  191  2020-05-01_10-27-17  pacman -S ncurses
  192  2020-05-01_10-27-25  pacman -S pcurses
  193  2020-05-01_10-28-13  pcurses
  194  2020-05-01_10-28-45  pacman -S lsb-release
  195  2020-05-01_10-54-36  pacman -S npm
  196  2020-05-01_10-55-57  npm i -g corona-cli
  197  2020-05-01_13-12-27  pacman -S youtube-dl
  198  2020-05-01_13-13-15  pacman -S vlc
  199  2020-05-01_13-14-24  pacman -S libreoffice
  200  2020-05-01_13-16-07  pacman -S okular
  201  2020-05-01_13-17-02  pacman -S krename
  202  2020-05-01_13-17-30  pacman -S kim4
  203  2020-05-01_13-18-52  pacman -S android-file-transfer
  204  2020-05-01_13-19-25  pacman -S mtpfs
  205  2020-05-01_13-19-51  pacman -S gimp
  206  2020-05-01_13-20-42  pacman -S kruler
  207  2020-05-01_13-21-14  pacman -S dolphin-plugins
  208  2020-05-01_13-22-14  pacman -S kdesdk-thumbnailers
  209  2020-05-01_13-22-48  pacman -S marble
  210  2020-05-01_13-23-26  pacman -S kdesdk-thumbnailers
  211  2020-05-01_13-24-26  pacman -S ffmpegthumbs
  212  2020-05-01_13-25-06  pacman -S kimageformats
  213  2020-05-01_13-25-38  pacman -S kdegraphics-thumbnailers
  214  2020-05-01_13-26-21  pacman -S qt5-imageformats
  215  2020-05-01_13-26-48  pacman -S kdiff3
  216  2020-05-01_13-27-40  pacman -S filelight
  217  2020-05-01_13-28-09  pacman -S xsane
  219  2020-05-01_13-32-08  date && pacman -Syyu && date
  220  2020-05-01_13-32-27  pacman -S wine-staging
  221  2020-05-01_13-33-54  pacman -S wine-gecko
  222  2020-05-01_13-34-38  pacman -S wine-mono
  223  2020-05-01_13-35-10  pacman -S winetricks
  225  2020-05-01_20-36-40  history

Conclusão

Comando echo com várias linhas, delimitadas por aspas simples, no bash_history

Podem-se simplificar, ainda mais, algumas tarefas, — por exemplo, um comando echo permite criar arquivos com várias linhas, desde que enquadradas dentro de um par de aspas simples, — mesmo que dentro delas existam aspas duplas (mas não aspas simples).

O exame posterior do bash_history mostra como isso pode ser usado no roteiro em TXT, — em vez de recorrer ao nano e digitar ou colar várias linhas, manualmente:

 $ echo '// Allow udisks2 to mount devices without authentication
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" || action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-system-internal") { return polkit.Result.YES; } });' > Test.txt

$ cat Test.txt
// Allow udisks2 to mount devices without authentication
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" || action.id == "org.freedesktop.udisks2.filesystem-mount" || action.id == "org.freedesktop.udisks2.filesystem-mount-system-internal") { return polkit.Result.YES; } });

Enquanto batia cabeça, anotei alguns atalhos para console virtual, — tanto no bash, quanto no zsh:

Ctrl+k : Limpa o conteúdo da linha após o cursor e o copia na área de transferência.

Ctrl+y : (yank) Adiciona o conteúdo da área de transferência a partir da posição do cursor.

Não resolveram, porque não consegui descobrir um modo de trazer para esta “área de transferência” os comandos copiados do nano. — Ficam anotados, pois ainda podem ser úteis em outras situações.

Infelizmente, nunca investi tempo no vi / vim, — por isso, não sei se seria uma solução.

Entretanto, preparar previamente todos os comandos em um arquivo TXT — e “importar” para o bash_history — se mostrou o caminho mais simples e cômodo.

Wallpaper


Efeito fumê nas janelas, ao desdobrar o Conky

“Centro Histórico de Pacatu perspectiva”, by Ederlucio Melo, 20 November 2005, 14:20:17.

23 Julho 2020 - Ao desdobrar o Conky, foi necessário aplicar um efeito fumê na parte de baixo das janelas, para as informações ficarem legíveis.

2023 - Desastre e recuperação

“kernel doesn't support EFI handover”
“kernel doesn't support EFI handover”

No início de Março, ocorreu uma atualização do Kernel para a revisão linux-6.2.2, e depois isso o Grub do openSUSE e do Mageia não conseguia mais carregar o Arch Linux: — “kernel doesn't support EFI handover”.

Em resumo, o Kernel deixou de ser compilado com o “deprecated EFI handover protocol”, e o Arch Linux adotou essa novidade — o que o deixou incompatível com o Grub da maioria das outras distros.

Entrei nas configurações EFI da placa-mãe e selecionei o Grub do próprio Arch, mas tudo indica que o deletei em algum momento, por distração. — Ele ainda aparecia nas configurações, mas não existia mais, de fato.

Encontrei várias sugestões para solucionar o problema — fazer downgrade para Kernel 6.1, compilar com o suporte ao “EFI handover” habilitado etc. — mas decidi investir em 2 coisas mais simples:

  • Instalar o Kernel LTS
  • Reinstalar o Grub do Arch

Para isso, baixei uma imagem ISO atualizada do Arch Linux, “queimei” em DVD, e iniciei uma sessão Live:

                            ping google.com
                           mount /dev/sda3 /mnt
                           mount /dev/sdb3 /mnt/home
                           mount /dev/sda1 /mnt/boot/efi
                           arch-chroot /mnt

  488  2023-03-06_15-30-01 script
  479  2023-03-06_15-30-34 date; pacman -Syyu; date
  480  2023-03-06_15-32-15 pacman -S linux-lts
  481  2023-03-06_15-38-34 grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub2 --recheck
  482  2023-03-06_15-39-31 grub-mkconfig -o /boot/grub/grub.cfg
  483  2023-03-06_15-40-59 exit

  492  2023-03-06_15-49-30 chown 1000:1000 typescript

  498  2023-03-06_16-08-00 efibootmgr
  499  2023-03-06_16-10-05 efibootmgr -o 0000,0003,000A,0002,0005,000E,0004,000B,0001,000F,0007,0008,0009,0006

A sessão Live do Arch Linux já se loga automaticamente como Root, usando ZSH. — Comandei “bash” para mudar isso. — Em seguida, testei a Rede, montei as partições necessárias e fiz o “chroot” na partição-raiz do Arch instalado.

Executei o comando “script”, para salvar todas as saídas em um arquivo “typescript” — então, atualizei o Arch pelo “pacman”, instalei o Kernel LTS, reinstalei o Grub na partição EFI, atualizei o Grub e saí. — Mais tarde, passei a propriedade do arquivo “typescript” para o usuário.

Devolvendo o EFI para o Grub do openSUSE

Depois de testar o novo Grub do Arch Linux, devolvi o EFI para o Grub do openSUSE, atualizei o Grub do openSUSE — e tudo voltou a funcionar como antes.

____________________________
• Publicado em 18 Abril 2020.
• Desenvolvido até 26 Abril 2020.
• “Desastre e recuperação” em 6 Março 2023.

— … ≠ • ≠ … —

PC desktop UEFI / GPT

Não-debians