IceWM para Computadores Antigos

Montando um ambiente de trabalho básico e funcional para computadores com até 15 anos de idade.

por SilCarlos

Obsolescência programada

Com o avanço rápido da tecnologia, é comum que computadores fiquem desatualizados em termos de desempenho e capacidade, na contemporaneidade, fabricantes incentivam os consumidores a substituírem seus produtos antigos por modelos mais recentes, impulsionando o consumo e as vendas. Essa prática é geralmente chamada de “obsolescência programada ou Planejada”,

Essa pratica é amplamente utilizada em diversos setores da indústria, como: eletrônicos, eletrodomésticos, automóveis e até mesmo roupas desde a década de 1930. O argumento em defesa dessa pratica é de que isso impulsiona a inovação tecnológica e o progresso econômico.

Todavia, a obsolescência programada pode gerar sérios riscos ao meio ambiente, pois, uma vez que os produtos têm uma vida útil limitada e precisam ser substituídos com mais frequência, aumenta a demanda por matérias-primas e junto a isso, a degradação ambiental.

Os computadores antigos, também conhecidos como obsoletos ou legados, não fogem a esta regra. Muitas vezes, os fabricantes lançam atualizações de software (sistemas operacionais) ou hardware (RAM, CPU, GPU, etc.) que tornam os computadores mais antigos lentos ou incompatíveis, forçando os consumidores (vulgar: usuários) a atualizarem para os modelos mais recentes.

Por exemplo:

Em laptops, as baterias têm uma vida útil limitada e, após um determinado número de ciclos de recarga, começam a perder capacidade.

Outro exemplo:

Os componentes soldados (SMDs) em placas mães, ou integrados (sockets, slots, etc.), dificultam a substituição ou reparo, forçando a compra de novas placas.

A boa notícia e que existe um movimento nos Estados Unidos, na Europa e também no Brasil, chamado: “Direito de Reparo”, cujo objetivo é garantir que os consumidores tenham o direito de reparar seus próprios produtos eletrônicos (ou eletrodomésticos), além do acesso as peças de reposição, dos manuais de reparo e das informações técnicas necessárias.

Montando o ambiente de trabalho

Aderindo ao movimento “Direito de Reparo” vamos (você leitor e eu) construir um ambiente de trabalho básico, mas funcional com aquele computador obsoleto que ainda está funcionando.

Requisitos necessários:

Não irei abordar a instalação do Debian minimal (netinstall) e do NetBSD neste artigo, então, deixarei links para você acompanhar.

Como instalar Debian (Minimal):

https://invidious.io.lol/watch?v=Seqx3Oj5JRE

Como instalar NetBSD (Padrão):

https://yt.artemislena.eu/watch?v=Olbzb6trTaI&t=76

DICA DE OURO!

Durante a instalação do Debian minimal dê preferência ao sistema de arquivos Brtfs e no NetBSD escolha o sistema de arquivos LFS. Ambos são sistemas de arquivos que trabalham muito bem com uma quantidade grande de arquivos sem ficarem sobrecarregados (lento).

Gerenciador de Janelas IceWM

É um gerenciador de janelas leve e altamente configurável para sistemas GNU/Linux e BSD. Foi projetado para ser rápido, estável e consumir poucos recursos dos sistemas computacionais, tornando-se adequado para o uso em computadores mais antigos.

Desenvolvido por Marko Macek em 1997, foi lançado como uma alternativa ao gerenciador de janelas Window Maker, mas oferecendo recursos semelhantes. Desde então, tem sido desenvolvido e aprimorado por uma comunidade ativa de desenvolvedores, chegando a sua versão 3.0 em outubro de 2022.

Características:

IceWM no Debian ou NetBSD

IceWM é um gerenciador de janelas e não um ambiente de desktop, deste modo, precisaremos instalar pacotes que possibilitem usá-lo como tal.

Para o nosso Ambiente de trabalho, precisaremos:

  1. Gerenciador de Janelas
  2. Servidor de Exibição
  3. Servidor multimídia
  4. Gerenciador de Arquivos
  5. Gerenciador de Redes
  6. Gerenciador de Pacotes
  7. Gerenciador de Tarefas
  8. Gerenciador de Downloads
  9. Sistema de Impressão
  10. Daemon de notificação

Você sabia!?

Debian já utilizou o kernel NetBSD!!

A ideia por trás desse experimento era explorar as possibilidades de combinar os benefícios do NetBSD (estabilidade, segurança e portabilidade) com a vasta seleção de pacotes e a comunidade ativa do Debian. No entanto, o projeto enfrentou alguns desafios ao longo do tempo, a falta de suporte para drivers de hardware e algumas limitações de compatibilidade dos repositórios, limitaram sua adoção em grande escala.

O projeto foi abandonado em 2002 dando lugar ao Debian GNU/KFreeBSD em 2006.

Preparando o Ambiente de Trabalho – Debian

Apos instalação do Debian 11 Bullseye Minimal e logado como root, siga:

A) Primeiro: instalar sudo

apt install sudo

B) Segundo: adicionar nosso usuário ao grupo sudo:

usermod -aG sudo carlos

C) Terceiro: atualizar a lista de pacotes:

sudo apt update

D) Quarto: instalar os pacotes necessários para o ambiente de trabalho:

sudo apt install icewm icewm-common icewm-lite gmrun slim arandr remmina nano lxappearance htop xscreensaver pulseaudio pavucontrol volumeicon-alsa connman connman-gtk cups system-config-printer bluez-cups xorg xserver-xorg-input-synaptics lxinput pipewire pipewire-pulse mate-notification-daemon xcompmgr ufw gufw adduser scrot pcmanfm uget acetoneiso sakura feh debian-reference-pt

E) Quinto: Apos a instalação dos pacotes, inicie o ambiente:

startx

Preparando o Ambiente de Trabalho – NetBSD

Apos instalação do NetBSD 9.3 e logado como root, siga:

A) Primeiro: Adicionando o nosso usuário ao grupo Wheel:

pkg_add usermod -G wheel carlos

Nota: “wheel” têm permissão para executar comandos administrativos com o comando “su” (sudo).

B) Segundo: adicionando nosso usuário como operador e staff:

pkg_add usermod -G operator carlos

pkg_add usermod -G staff carlos

C) Terceiro: instalando o fronted pkgin:

sudo pkg_add pkgin

Nota: PKGIN é uma ferramenta que torna o gerenciador de pacotes PKGSRC semelhante ao APT do Debian.

Por exemplo:

instalar o pacote VLC, fica assim: “sudo pkgin install vlc” ou removê-lo: “sudo pkgin remove vlc”, tem mais! Remover dependências: “sudo pkgin autoremove”, etc.

Mais detalhes sobre o PKGIN você confere no endereço abaixo:

Gerenciador de pacotes, PKGIN: https://pkgin.net/

D) Quarto: Atualizar a lista de pacotes:

sudo pkgin update

E) Quinto: instalar os pacotes necessário para o ambiente.

pkgin install icewm icewmconf slim dmenu dbus avahi nano fam hal arandr lxappearance htop lxinput xscreensaver pulseaudio pavucontrol cups xorg xkeycaps alsa-utils alsa-plugins alsa-lib aumix aumix-gtk wpasupplicant wpagui mate-notification-daemon pcmanfm feh sakura

F) Sexto: Copie os aquivos fam, dbus e hal para o diretório rc.d

 cp usr/pkg/share/examples/rc.d/famd /etc/rc.d 
 cp usr/pkg/share/examples/rc.d/dbus /etc/rc.d
 cp usr/pkg/share/examples/rc.d/hal /etc/rc.d

Em seguida abra o arquivo de configuração rc.conf

G) Sétimo: Adicione fam, hal e dbus ao arquivo rc.conf

sudo nano /etc/rc.conf

Adicione:

rpcbind=YES
famd=YES
dbus=YES
hal=YES
sound_load=YES

Salve as mudanças no arquivo.

H) Oitavo: Abra e edite o arquivo xinitrc

sudo nano /home/carlos/.xinitrc

Adicione:

exec icewm

salve as mudanças no arquivo.

I) Nono: Abra e edite o aquivo xinitrc no root.

sudo nano /root/.xinitrc

Adicione:

exec icewm

salve as mudanças no arquivo.

J) Décimo: Abra e edite o aquivo rc.local

sudo nano /etc/rc.local

Adicione:

usr/local/bin/slim -d

salve as mudanças.

K) Décimo primeiro: Ative ou desative os serviços.

 sudo rcctl enable messagebus
 sudo rcctl enable avahi_daemon
 sudo rcctl disable xenodm 

Reinicie o sistema.

Configurando IceWM no Debian ou NetBSD

IceWM é um gerenciador de janelas personalizável e suas configurações originais são baseados em texto, por este motivo, será necessário utilizar um editor de textos para configurá-lo.

Eis, os aquivos de configurações:

Nesta etapa, utilizaremos o editor “nano” para as tarefas.

Para alterar a configuração padrão do IceWM, primeiro, copiaremos os arquivos de configuração para o diretório ~/.config/icewm.

cp -r /usr/share/icewm/ ~/.config/icewm/

Feito isto, poderemos prosseguir...

Preferences

sudo nano ~/.config/icewm/preferences

O arquivo preferences contem toda a configuração padrão do IceWM. Aqui pode-se mudar o formato ou cores das janelas, do painel, do menu, etc.

As mudanças que faremos neste arquivo, serão:

**Alt+Tab window switching**
QuickSwitch=1 
 
**Reload menu files automatically**
AutoReloadMenus=1 

**Show mailbox status on task bar**
TaskBarShowMailboxStatus=0 

**Show CPU status on task bar**
TaskBarShowCPUStatus=0

**Show RAM usage in CPU status tool tip**
CPUStatusShowRamUsage=0

**Show memory usage status on task bar (Linux only)**
TaskBarShowMEMStatus=0

**Show network status on task bar**
TaskBarShowNetStatus=0

**Allow to switch a window to fullscreen**
AllowFullscreen=1

**Command to shutdown the system**
 ShutdownCommand="test -e /run/systemd/system && systemctl poweroff || sudo -n /sbin/poweroff"

**Command to reboot the system**
 RebootCommand="test -e /run/systemd/system && systemctl reboot || sudo -n /sbin/reboot"

**Command to send the system to standby mode**
 SuspendCommand="test -e /run/systemd/system && systemctl suspend || sudon -n /usr/sbin/pm-suspend"

KeyWinClose="Alt+F4"
KeyWinRestore="Alt+F5"
KeyWinMinimize="Alt+F9"
KeyWinMaximize="Alt+F10"
KeyWinFullscreen="Alt+F11"

**WorkspacesNames**
WorkspacesNames="1", "2"  

Menu

sudo nano ~/.config/icewm/menu

O menu é gerado automaticamente. Os programas são adicionados ao menu depois de instalados no sistema operacional, Debian ou NetBSD.

Keys

sudo nano ~/.config/icewm/keys

IceWM permite lançar programas através de combinações de teclas. A sintax deste arquivo é mais ou menos assim:

“keys” “teclas” “programa”

Por exemplo:

keys "Print"  Scrot (capturar imagens do ambiente de trabalho)
keys "Alt+Ctrl+t" sakura (abre o terminal sakura)
keys "Ctrl+g" gmrun (abre o lançador de aplicativos)

Toolbar

sudo nano ~/.config/icewm/toolbar

O arquivo de configuração toolbar é usado para adicionar programas ao painel do IceWM. A syntax deste arquivo funciona da seguinte maneira:

“prog” “Titulo” “nome do Ícone” “programa”

Por exemplo:

prog "SeaMonkey" seamonkey seamonkey
prog "Claws-Mail" claws-mail claws-mail
prog "Pragha" pragha pragha
prog "Telegram-desktop" telegram-desktop telegram-desktop

e assim por diante. 

Theme

O arquivo theme contem a lista de todos os temas pré-instalados. O tema que estiver sem o comentário (#) é o que estará sendo utilizado no momento.

poderemos baixar temas personalizados para o nosso ambiente através do endereço:

Box-Look http://www.box-look.org/

Apos baixar o tema, descompacte-o e mova para o diretório Theme.

/home/carlos/.config/icewm/themes

Dica: Temas que gosto e recomendo: Nitrogen, BSD-CrossOver, Ubuntu20.04-Medium e iceux_pro.

Startup

sudo nano ~/.config/icewm/startup

O script de inicialização não é fornecido pelo pacote IceWM, então, precisaremos criá-lo.

No arquivo startup adicionaremos comandos para programas que iniciam junto a sessão IceWM, mas antes, precisamos torná-lo executável.

Criaremos um pequeno script (Debian):

#!/bin/sh
sleep 1
volumeicon &

connman-gtk &

mate-notification-daemon &

xscreensaver --no-splash &

xcompmgr &

feh --bg-fill /home/carlos/imagens/papel-de-parede.png &

~/.screenlayout/default.sh

Salve as mudanças no arquivo.

Em seguida precisamos alterar as permissões para que tudo seja executado corretamente. Com o terminal ainda aberto siga até o diretório onde se encontra o arquivo startup:

cd /home/carlos/.config/icewm

Use o comando chmod para alterar as permissões do arquivo:

chmod +x startup

Criaremos um pequeno script (NetBSD):

#!/bin/sh
sleep 1
aumix-gtk &

mate-notification-daemon &

xscreensaver --no-splash &

xcompmgr &

feh --bg-fill /home/carlos/imagens/papel-de-parede.png &

~/.screenlayout/default.sh

Com o terminal ainda aberto siga até o diretório onde se encontra o arquivo startup:

cd /home/carlos/.config/icewm

Use o comando chmod para alterar as permissões do arquivo:

chmod +x startup

Programas essenciais

São programas que desempenham funções básicas e necessárias para a maioria dos usuários em um ambiente computacional. Por exemplo: navegador web, reprodutor de mídia, cliente de e-mail, suíte de escritório, etc.

Essenciais no Debian ou NetBSD

Navegador web

SeaMonkey é leve e funciona sem muitos problemas em computadores com apenas 2GB de memória. Este navegador não se encontra nos repositórios do Debian. Será necessário utilizar um repositório não oficial.

Logo abaixo, há um endereço com um tutorial para instalar o SeaMonkey no Debian ou Ubuntu.

Recomendação: siga o método 2 do tutorial.

https://fostips.com/install-seamonkey-ubuntu-debian/

Disponível somente no NetBSD.

sudo pkgin install seamonkey

Cliente de E-mail

Claws-Mail é um cliente de e-mail e leitor de notícias leve, rápido, fácil configuração e interface intuitiva. Disponível no Debian, também no NetBSD.

sudo apt install claws-mail

sudo pkgin install claws-mail

Suíte de Escritório

LibreOffice é suíte de escritório poderosa, possuindo um editor de textos, editor de planilhas, editor de apresentação, etc. Se utilizar esta suíte num computador com 4GB de memoria poderá usá-lo sem muitos problemas, entretanto, funciona com apenas 2GB, mas a lentidão será perceptível.

Disponível no Debian e NetBSD.

sudo apt install libreoffice

sudo pkgin install libreoffice

Reprodutor de Mídia

VLC é reprodutor multimídia simples, rápido e poderoso. Reproduz SÓ TUDO! DVD, CD de áudio, VCD e vários protocolos de transmissão de rede.

Disponível no Debian, também NetBSD.

sudo apt install vlc

sudo pkgin install vlc

Reprodutor de Músicas

Pragha é um reprodutor de músicas muito leve, simples, rápido e cheio de recursos, como:

Disponível no Debian, também no NetBSD.

sudo apt install pragha

sudo pkgin install pragha

Gerenciador de Downloads

uGet é um gerenciador de download leve, poderoso e cheio de recursos, como: monitoramento da área de transferência, integração com navegador web (Firefox, Chromium, SeaMonkey, etc.) e suporte a múltiplos protocolos de download.

Disponível somente no Debian.

sudo apt install uget

UrlGfe é um gerenciador de downloads semelhante ao uGet, com os mesmos recursos, que utiliza libcurl, possui um interface gráfica GTK2+. Disponível somente NetBSD.

sudo pkgin install urlgre

Visualizador de PDF

QPdfView é um visualizador de arquivos PDF semelhante a muitos aplicativos PDF comuns. Possui dois dois modos: MultiPage, percorre todas as páginas do documento, com intervalos. SinglePage, mostra uma página de cada vez. Disponível no Debian, também no NetBSD.

sudo apt install qpdfview

sudo pkgin install qpdfview

Cliente de Mensagens

Telegram-desktop é um aplicativo de mensagens na forma de software livre (cliente) disponível para desktops/laptops e aparelhos moveis: Smartphone e Tablet.

Disponível somente no Debian.

sudo apt install telegram-desktop

Gajim é um cliente completo para rede descentralizada XMPP/Jabber. Oferece criptografia de ponta a ponta, traduzido para 30 idiomas, descentralizado, extensível e de código aberto.

Disponível para Debian e NetBSD.

sudo apt install gajim

sudo pkgin install gajim

Jogos de videogames

Mednafen e um emulador retrogaming multi-sistema (Atari, SNES, Saturn, PSXOne, etc), leve e poderoso. Suporta mapeamento teclas, controles usbs, salvamento de estado e muitos mais.

Disponível no Debian e NetBSD

sudo apt install mednafen mednaffe

sudo pkgin install mednafen mednaffe

MAME é um emulador de fliperama (arcade) que suporta os sistemas (de 1975 até o momento): Capcom System I, II e III; SNK NeoGeo, Aklain, Midway, Namco Bandai, PGM, etc..

Disponível no Debian e NetBSD

sudo apt install mame mame-tools mame-data

sudo pkgin install mame

FBNeo é um emulador de fliperama baseado no FinalBurn, este emula as velhas roms do MAME e alguns consoles retros: SNES e Genesis.

Disponível somente no NetBSD

sudo pkgin install fbneo


SilCarlos é técnico em redes de computadores com especialidade em segurança de redes de computadores.
Licença de Cultura livre
Licença Creative Commons
Esta obra está sob a Licença Creative Commons Atribuição 4.0 Internacional