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:
- Comandos a serem usados no início da sessão Live DVD
- Comandos a serem usados durante o chroot
- Instalação do KDE, — após encerrar o chroot, reiniciar o computador e carregar o Arch já instalado
- 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 / dash, 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=
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” |
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
- Transição para hardware UEFI-GPT
- Arch Linux - install, config
- Debian testing - install, config
- Linux Mint 20 (beta) "Ulyana" + Plasma KDE
- Upgrade para o Fedora 32
- Void + KDE
- MX Linux 19.2 KDE Beta 2
- KDE Neon upgrade 20.04 Focal Fossa
Não-debians
- Upgrade para o Fedora 32
- Arch KDE - install, config
- Transição para hardware UEFI / GPT
- Void Linux + KDE Plasma
- Arch Linux - instalação com KDE Plasma
- Exporando os galhos da árvore Linux
- Upgrade do Fedora 30 para Fedora 31
- Mandrake + Conectiva = Mandriva Linux
- PCLinuxOS KDE - instalação e configuração
- Fedora 30 KDE - instalação e configuração
- Upgrade do openSUSE Leap para Tumbleweed
- Mageia 7 (beta2) - Instalação e configuração
- Sabayon Linux Plasma KDE
- Fedora 28 KDE - install, config
- openSUSE: upgrade para Leap 15.0
- Slackware Plasma 5 KDE - reinstalação
- Manjaro - live, install, config (II)
- PCLinuxOS - Kernel patch Spectre Meltdown
- PCLinuxOS - Add Locale, LibreOffice manager & Software Center
- Mageia 6 - Kernel 4.14
- PCLinuxOS - instalação direta (sem sessão Live)
- PCLinuxOS - instalação e configuração
- Rosa Desktop Fresh R10 - live DVD, instalação e configuração
- openSUSE Tumbleweed - desastre e recuperação
- Slackware Plasma 5 KDE - instalação e configuração
- Slackware - instalação e aprendizado (interrompido)
- openSUSE - removendo Snapper, PIM, Baloo e Akonadi
- Escolhendo Grub entre vários Linux
- Escolhendo (e aprendendo) Linux conforme as necessidades
- Arch Linux KDE - Instalação e configuração
- Mageia 6 sta2 - Instalação e configuração
- Montagem de partições no Antergos e no Manjaro
- Transição do Manjaro (rolling-release) para 17.0
- Sabayon 16.11 KDE - Instalação e configuração
- Fedora 25 KDE - Instalação e configuração
- Consertando o Manjaro após erro em atualização
- openSUSE Leap 42.2 - Instalação e configuração
- Instalação do Manjaro KDE 16.10.3 stable
- Mageia 5 KDE Live USB
- Fedora 24 alpha KDE em sessão Live USB