Montando um ambiente minimalista com Debian Linux
Nesse texto explicarei como ajustar um ambiente minimalista e de alta performance com o Debian.
Consegui um sistema altamente estável, leve e funcional, consumindo menos de 130M de RAM quando ocioso.
Tive o cuidado de testar todos os passos e compartilhar as configurações usadas pelos principais programas.
As dicas expostas podem ser ridiculamente fáceis ou extremamente complicadas para algumas pessoas, especialmente para as não habituadas ao Linux.
O texto considera que o aventureiro tenha feito uma instalação limpa do Debian, sem ter selecionado a coleção de software indicada como Debian desktop evironment durante o procedimento; Os utilitários standard de sistema são aconselháveis.
SUPER USUÁRIO
Antes de tentar algo configure o comando sudo. Considero perigoso ficar como root por muito tempo, tenho receio de assumir privilégios de super usuário e esquecer de abandona-los.
# apt-get install sudo
Descrição do pacote:
Provide limited super user privileges to specific users Sudo is a program designed to allow a sysadmin to give limited root privileges to users and log root activity. The basic philosophy is to give as few privileges as possible but still allow people to get their work done.
Após a instalação abra o visudo para editar o arquivo /etc/sudoers de forma segura. É só digitar visudo como root.
# visudo
Com o arquivo aberto adicione a seguinte linha:
usuário ALL=(ALL:ALL) ALL
Mude a palavra “usuário” pelo nome do utilizador, salve as modificações pressionando Ctrl+o; sair é Ctrl+x.
É recomendado adicionar no local destacado para manter o layout do sudoers organizado.
# User privilege specification root ALL=(ALL:ALL) ALL --ADICIONAR AQUI--
MEDO DA ESCURIDÃO
Se um gerenciador de janelas não foi escolhido durante a instalação é provável que o sistema careça do Xorg e seus afins.
– Afinal, o que é o Xorg ?
– Também conhecido como Xserver, trata-se da implementação aberta do X window system version 11, vital para correr aplicações GUI (Graphical User Interface). O pacote traz um conjunto de ferramentas e bibliotecas responsáveis por desenhar as aplicações na tela, sejam elas feitas com GTK, Qt ou outra toolkit.
Instalando:
$ sudo apt-get install xorg
GERENCIADOR DE JANELAS, ARQUIVOS E LOGIN.
![]() |
![]() |
![]() |
Execute:
$ sudo apt-get install openbox obconf obmenu menu thunar thunar-archive-plugin slim
openbox | Gestor de janelas. |
obconf | Utilitário gráfico para configurar as preferências do openbox. |
obmenu | Ferramenta gráfica para editar menus do Openbox |
menu | Gera e sincroniza menus de programas para todas as aplicações sensíveis a menu |
thunar | Gerenciador de arquivos. |
thunar-archive-plugin | Plugin de extração e criação de arquivos para o Thunar. |
slim | Login manager |
Escreva startx para subir o modo gráfico ou reinicie o sistema com o comando “sudo shutdown -r now”.
O primeiro contato com a área de trabalho pode chocar, é perceptível a crueza do sistema, não existe nada além do menu principal do Openbox. Mas calma, não é hora de desesperar, o esforço vai valer a pena.
A falta de um sub-menu dinâmico abrigando atalhos para os softwares é perceptível, o menu padrão não é muito organizado. Tal contratempo pode ser resolvido com o openbox-menu (A fast and lightweight pipe-menu for Openbox).
Obtendo os sources:
$ wget https://mimarchlinux.googlecode.com/files/openbox-menu-0.3.6.7.tar.bz2
Certamente você precisará resolver algumas dependências para gerar o binário:
$ sudo apt-get install build-essential libgtk2.0-dev libmenu-cache1-dev
Descompactando, compilando e instalando:
$ tar -jxvf openbox-menu-0.3.6.7.tar.bz2 $ cd openbox-menu-0.3.6.7 $ make $ sudo make install
É opcional, mas é possível construir um pacote Debian e facilitar futuras instalações:
$ sudo apt-get install checkinstall $ sudo checkinstall -D --install=no --pkgarch=all $ sudo dpkg -i openbox-menu_0.3.6.7-1_all.deb
Isso vai recompilar o programa.
Depois da instalação crie um novo pipe-menu através do programa obmenu (instalado anteriormente), é só clicar sobre o botão add nele e escolher Pipemenu. O campo id deve ser preenchido com o valor “desktop-app-menu”, enquanto o campo execute recebe o comando “/usr/bin/openbox-menu /etc/xdg/menus/xfce-applications.menu”. Ambos sem aspas.
Nada impede a inserção do novo pipe-menu diretamente no documento ~/.config/openbox/menu.xml
:
<menu id="desktop-app-menu" label="Applications" execute="/usr/bin/openbox-menu /etc/xdg/menus/xfce-applications.menu" />
O Openbox deve ser reiniciado em caso de erro.
BARRA DE TAREFAS, SYSTRAY, VOLUME E CONEXÕES DE REDE
O sistema ainda não possui barra de tarefas e systray (área de notificação). Instale:
$ sudo apt-get install tint2 trayer
Para deixar semelhante ao da imagem acima as linhas ulteriores deverão ser copiadas para ~/.config/tint2/tint2rc
# Tint2 config file # Generated by tintwizard (http://code.google.com/p/tintwizard/) # For information on manually configuring tint2 see http://code.google.com/p/tint2/wiki/Configure # Background definitions # ID 1 rounded = 0 border_width = 0 background_color = #000000 100 border_color = #414140 100 # ID 2 rounded = 0 border_width = 0 background_color = #1F262E 100 border_color = #232426 100 # ID 3 rounded = 0 border_width = 0 background_color = #000000 100 border_color = #232426 1000 # Panel panel_monitor = all panel_position = bottom center horizontal panel_size = 100% 26 panel_margin = 0 0 panel_padding = 7 0 7 panel_dock = 0 wm_menu = 0 panel_layer = top panel_background_id = 1 # Panel Autohide autohide = 0 autohide_show_timeout = 0.3 autohide_hide_timeout = 2 autohide_height = 2 strut_policy = follow_size # Taskbar taskbar_mode = single_desktop taskbar_padding = 2 3 2 taskbar_background_id = 0 taskbar_active_background_id = 0 # Tasks urgent_nb_of_blink = 8 task_icon = 1 task_text = 1 task_centered = 1 task_maximum_size = 140 35 task_padding = 6 2 task_background_id = 3 task_active_background_id = 2 task_urgent_background_id = 2 task_iconified_background_id = 3 task_tooltip = 0 # Task Icons task_icon_asb = 70 0 0 task_active_icon_asb = 100 0 0 task_urgent_icon_asb = 100 0 0 task_iconified_icon_asb = 70 0 0 # Fonts task_font = sans 10 task_font_color = #FFFFFF 68 task_active_font_color = #FFFFFF 83 task_urgent_font_color = #FFFFFF 83 task_iconified_font_color = #FFFFFF 68 font_shadow = 0 # System Tray systray = 1 systray_padding = 0 4 5 systray_sort = ascending systray_background_id = 0 systray_icon_size = 16 systray_icon_asb = 70 0 0 # Clock time1_format = %H:%M time1_font = sans 10 time2_format = %A %d %B time2_font = sans 8 clock_font_color = #FFFFFF 74 clock_padding = 1 0 clock_background_id = 0 clock_rclick_command = orage # Tooltips tooltip_padding = 2 2 tooltip_show_timeout = 0.7 tooltip_hide_timeout = 0.3 tooltip_background_id = 1 tooltip_font = sans 10 tooltip_font_color = #000000 80 # Mouse mouse_middle = none mouse_right = close mouse_scroll_up = toggle mouse_scroll_down = iconify # Battery #battery = 0 #battery_low_status = 10 #battery_low_cmd = notify-send "battery low" #battery_hide = 98 #bat1_font = sans 8 #bat2_font = sans 6 #battery_font_color = #FFFFFF 74 #battery_padding = 1 0 #battery_background_id = 0 # End of config
Leia a documentação da tint2 AQUI.
Penso que você também queira aplicações para controlar o volume e gerir as conexões de rede
$ sudo apt-get install alsa-base volumeicon-alsa wicd-gtk
– Instalei tudo, mas a barra de tarefas não apareceu ?
– Calma. Não vai aparecer automaticamente, adiante ensino como resolver.
FIXANDO OS APLICATIVOS PARA ABRIREM NA INICIALIZAÇÃO DO OPENBOX
Antes de sair invocando tint2, trayer e volumeicon pelo terminal, saiba, existe a possibilidade de despertá-los junto ao Openbox.
Durante o carregamento do Openbox é executado o script autostart.sh, nele é inserido comandos que correrão paralelamente ao carregamento sessão.
Para editá-lo:
$ nano ~/.config/openbox/autostart.sh
O conteúdo depende da necessidade pessoal, todavia, esse serve de base:
# thunar no modo daemon thunar --daemon & # barra de tarefas tint2 && # systray trayer --expand true --transparent true --alpha 255 --edge bottom --align right --expand true --SetDockType true --widthtype request && # controle de volume volumeicon &
Dê permissão:
$ chmod 755 ~/.config/openbox/autostart.sh
A sessão deve ser reiniciada para surgir efeito. O comando “openbox –exit” forçaria a retomada para a tela de login, mas não é o mais recomendado. Você pode contemplar os novos ajustes executando o script manualmente.
PAPEL DE PAREDE
O plano de fundo é setado com o Nitrogen:
$ sudo apt-get install nitrogen
Abra utilitário gráfico e escolha o papel de parede.
A fim de exibir a imagem durante a inicialização acrescente no começo do seu script ~/.config/openbox/autostart.sh
:
nitrogen --restore &
ATALHOS DE TECLADO
Os atalhos vão dentro de ~/.config/openbox/rc.xml
Exemplo para abrir o Thunar pressionando Alt+F
<keybind key="A-F"> <action name="execute"> <execute>thunar</execute> </action> </keybind>
PERSONALIZANDO O SISTEMA COM TEMAS GTK, ÍCONES, CURSORES E FONTES.
Os temas e cursores baixados manualmente devem ficar na pasta ~/.themes
, os ícones na ~/.icons
, enquanto as fontes vão para ~/.fonts
Comece as personalizações com os utilitários:
$ sudo apt-get install lxappearance gtk2-engines
NA UNHA
O lxappearance fornece uma GUI muito intuitiva para customizar o Desktop, mas acredito que a configuração manual contribui para o conhecimento do fuçador.
Segue o esquema para as configurações manuais:
No terminal:
$ touch ~/.gtkrc-2.0 $ touch ~/.gtkrc-2.0.mine
O meu ~/.gtkrc-2.0
guarda as linhas:
include "/home/fm4lloc/.themes/Bridge/gtk-2.0/gtkrc" include "/home/fm4lloc/.gtkrc-2.0.mine"
Mude os caminhos para as correspondências equivalentes no seu computador.
A substituição dos ícones e fontes limita-se em tecer dentro do ~/.gtkrc-2.0.mine
uma estrutura próxima de:
style "Sans" { font_name = "Sans 13" } widget_class "*" style "Sans" gtk-font-name = "Sans 12" gtk-icon-sizes = "panel-menu=16,16:panel=16,16:gtk-button=13,13" gtk-fallback-icon-theme = "Faenza" gtk-icon-theme-name = "Faenza-Darkest" gtk-toolbar-style = GTK_TOOLBAR_ICONS #Only icons gtk-toolbar-style = GTK_TOOLBAR_TEXT #Only text gtk-toolbar-style = GTK_TOOLBAR_BOTH #Both icons and text; default, used if nothing is specified. gtk-toolbar-style = GTK_TOOLBAR_BOTH_HORIZ #Icons and text next to the icons
Faça as modificações necessárias. O pacote de ícones usado no exemplo é o Faenza, o nome colocado nos campos pertinentes aos ícones é o mesmo das respectivas pastas situadas em ~/.icons
.
Exemplo:
~/.icons/
Faenza
~/.icons/
Faenza-Darkest
Você não terá muita dificuldade, a sintaxe do documento é instrutiva.
Para mudar o tema dos cursores abra o documento .Xresources
$ nano ~/.Xresources
E escreva nele:
Xcursor.theme: DMZ-White Xcursor.size: 16
O tema do cursor definido no exemplo faz parte do pacote dmz-cursor-theme.
Para pesquisar outros estilos de cursor presentes na maquina:
$ find /usr/share/icons -type d -iname "*cursors*" $ find ~/.icons -type d -iname "*cursors*"
Exemplo de saída:
/usr/share/icons/Adwaita/cursors
/usr/share/icons/DMZ-White/cursors
/usr/share/icons/DMZ-Black/cursors
DESLIGAR, REINICIAR E HIBERNAR COM OBSHUTDOWN
Não gosto de desligar o computador escrevendo shutdown ou halt, prefiro encerrar as sessões usando o obshutdown, ele mostra uma tela limpa e intuitiva para apagar a maquina.
Infelizmente ele não existe no repositório estável, será preciso compila-lo.
As dependências:
$ sudo apt-get install libgtk2.0-dev git automake autoconf
Obtenha os sources e deixe o processador com o trabalho duro.
$ git clone https://github.com/panjandrum/obshutdown.git $ cd obshutdown $ ./configure $ make $ sudo make install
Lembrando, para criar um .deb:
$ sudo checkinstall -D --install=no --pkgarch=all $ sudo dpkg -i obshutdown_0.1-rc1-1_all.deb
Copie a configuração default para $HOME:
$ mkdir -p ~/.config/obshutdown/ $ cp /usr/local/share/obshutdown/example.rc ~/.config/obshutdown/obshutdown.rc
A configuração do meu Obshutdown com os botões em português:
# # Openbox shutdown dialog # This is example obshutdown rc file # Copy this file to ~/.obshutdown.rc and customise # [general] version = 0.1-rc1 verbose = false default_action = shutdown composite = false theme = oxygen buttons = cancel logout shutdown restart #buttons = cancel logout shutdown restart suspend hibernate [actions] logout = openbox --exit shutdown = dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop restart = dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart lock = switch = suspend = dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend hibernate = dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Hibernate custom = [shortcuts] logout = l shutdown = s restart = r lock = switch = suspend = u hibernate = h custom = [labels] cancel = CANCELAR logout = LOGOUT restart = RESETAR shutdown = DESLIGAR lock = TRAVAR switch = TROCAR USUARIO suspend = SUSPENDER hibernate = HIBERNAR
Não esqueça de incluir o obshutdown ao menu do openbox.
MONITOR DE SISTEMA
Quando se pensa em monitor de sistema altamente configurável, a palavra que galga na cabeça dos usuários Linux é a conky.
$ sudo apt-get install conky
Conky é um caso a parte no texto, não vou me aprofundar nele, a página dos desenvolvedores fornece vários tutoriais de como configurá-lo. Porém, como é de praxe, disponibilizarei o meu:
Salvar o conteúdo para ~/.conkyrc
# Minimalist conkyrc # used font #---------------------------------------------------------------------# # PF Tempesta Seven => http://www.dafont.com/pf-tempesta-seven.font #---------------------------------------------------------------------# #avoid flicker double_buffer yes #own window to run simultanious 2 or more conkys own_window yes own_window_transparent true own_window_type normal own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager # Contour draw_outline no # Shades draw_shades no default_shade_color 000000 # Position gap_y 10 gap_x 10 # Alignment alignment top_left # alignment botton_left # Interval update_interval 2 # Colors default_color FFFFFF color1 1793D1 color2 535353 color3 F0F0F0 color4 D9D9D9 color5 1793D1 # Font use_xft yes xftfont PF Tempesta Seven:pixelsize=8 # Text alpha when using Xft #xftalpha 0.10 # to prevent window from moving use_spacer none minimum_size 1024 0 TEXT ${color2}CPU1: ${color3}${cpu cpu1}% \ ${color2}CPU2: ${color3}${cpu cpu2}% \ ${color2}CPU1: ${color3}${cpu cpu2}% \ ${color2}CPU4: ${color3}${cpu cpu4}% ${color5} | \ ${color2}Ram: ${color3}${mem}/${memmax} ${color5} | \ ${color2}Swap: ${color3}${swapperc}% ${color5} | \ ${color2}Home: ${color3}${fs_free_perc /home}% ${color4}free ${color5} | \ ${color2}Root: ${color3}${fs_free_perc /root}% ${color4}free ${color5} | \ ${color2}Eth0: ${color4}DOWN ${color3}${downspeed eth0} ${color4}UP ${color3}${upspeed eth0} ${color5} | \ ${color2}Uptime: ${color3}${uptime}${color5} | \ ${color2}Top: ${color3} ${top name 1}${top cpu 1}${top mem 1}
Pesquise mais sobre o conky e conheça as possibilidades.
OS INDISPENSÁVEIS
Para fechar, coloco os aplicativos que considero fundamentais para ter no sistema:
$ sudo apt-get install sakura volumeicon-alsa wicd-gtk evince mirage gmrun geany scrot file-roller brasero audacious vlc galculator transmission-gtk nitrogen iceweasel iceweasel-l10n-pt-br icedove icedove-l10n-pt-br xscreensaver ntfs-config gimp inkscape
sakura | Emulador de terminal decente |
volumeicon-alsa | Indicador de volume |
wicd-gtk | Gestor de Redes |
evince | Leitor de PDF |
mirage | Visualizador de imagem |
gmrun | Lançador de aplicativo |
geany | Editor de texto/IDE |
scrot | Capturador de tela |
file-roller | Manipulador de arquivos compactados |
brasero | Gravador de CD/DVD |
audacious | Player MP3 |
vlc | Player multimédia, ideal para assistir vídeos |
galculator | Calculadora |
transmission-gtk | Cliente Torrent |
nitrogen | Gerenciador de papéis de parede |
iceweasel | Navegador |
iceweasel-l10n-pt-br | Linguagem português para o iceweasel |
icedove | Cliente de e-mail |
icedove-l10n-pt-br | Linguagem português para o icedove |
xscreensaver | Protetor e travador de tela |
ntfs-config | Utilitário gráfico para montar partições NTFS |
gimp | Editor de imagens |
inkscape | Editor vetorial |
Simples escaneador de documentos | simple-scan |
Libre Office em português
$ sudo apt-get install libreoffice libreoffice-l10-pt-br libreoffice-gtk
Vulto 1:06 pm em 15 de março de 2016 Link Permanente |
Excelente tutorial.
Me fez conhecer mais do Debian e acabei de fazer minha instalação.
Acabei tendo várias ideias depois disso.
Valeu