Difference between pages "Package:Dwm" and "Install/pt-br/Kernel"

(Difference between pages)
(Updated to reflect changes in dwm ebuilds)
 
(Configurando e instalando o kernel Linux)
 
Line 1: Line 1:
{{Ebuild
+
=== Configurando e instalando o kernel Linux ===
|Summary=<code>dwm</code> is extremely fast and lightweight window manager. It manages windows in tiled, floating and monocle layouts.
+
|CatPkg=x11-wm/dwm
+
|Maintainer=Causes,
+
|Homepage=http://dwm.suckless.org/
+
}}
+
== Installation ==
+
  
Program launcher is needed to run programs from dwm. You can choose dmenu or rofi.
+
Agora é hora de construir e instalar um kernel Linux, o qual é o coração de qualquer sistema Funtoo Linux. O kernel é carregado pelo boot loader, e interfaces diretamente com o hardware do seu sistema, e permite programas regulares (userspace) serem executador.
{{file|name=/etc/portage/make.conf|desc=Set dmenu USE-flag|body=
+
USE="$USE dmenu"
+
}}
+
<console>
+
###i## emerge -av dwm
+
</console>
+
  
== Configuration ==
+
Um kernel deve ser configurado propriamente para o hardware do seu sistema, desse modo ele suporta seus hard drives, file systems, placas de rede, e assim por diante. Usuários de Linux mais experientes podem escolher instalar o kernel sources e configurar e instalar seu próprio kernel. Se você não sabe como fazer isso, nós fornecemos ebuilds que construirão automaticamente um kernel "universal", módulos e initramfs para a inicialização do seu sistema que suporte todo o hardware. Esse é um jeito extremamente simples de construção de um kernel que colocará seu sistema para inicializar.
  
dwm is configured by editing <code>/etc/portage/savedconfig/x11-wm/dwm-6.0</code> and rebuilding dwm.
+
Qual é o nosso objetivo? Construir um kernel que reconhecerá todo o hardware em seu sistema necessário para inicialização, você será cumprimentado por um prompt de login amigável depois que a instalação estiver completa. Estas instruções lhe guiarão através do processo de instalação de um kernel no modo "fácil" -- sem exigir configuração do usuário, ao utilizar um kernel "universal".
  
Enable savedconfig.
+
==== Package Sets ====
{{file|name=/etc/portage/package.use|lang=|desc=|body=
+
x11-wm/dwm savedconfig
+
}}
+
  
Edit configuration file.
+
Antes que instalemos um kernel, vamos cobrir um recurso do Portage chamado package sets. Portage, o sistema gerenciador/ports de pacotes para o Funtoo Linux, manterá rastro de pacotes do sistema assim como pacotes que você tem instalado ao invocar <code>emerge</code> diretamente. Esses pacotes que são parte do sistema base são considerados parte do conjunto de pacote do "sistema" (''system'' packages sets), enquanto pacotes que você tem instalado ao digitá-los na linha de comando (tal qual "gnome" em <code>emerge gnome</code>) serão adicionados ao conjunto de pacote "world". Isso proporciona um jeito fácil de atualizar o sistema inteiro.
<console>
+
###i## nano /etc/portage/savedconfig/x11-wm/dwm-6.0
+
</console>
+
  
Rebuild dwm.
+
No entanto, as vezes é bom ser capaz de atualizar o kernel todo por sim só, ou deixar uma atualização do kernel fora da sua regular atualização completa do sistema. Para fazer isso, criaremo uma nova configuração de pacote chamada "kernel".
<console>
+
###i## emerge dwm
+
</console>
+
  
== Basic usage ==
+
==== Configuração de Pacote do Kernel ====
{|class="table table-striped"
+
 
|| Shortcut || Description
+
Para criar a configuração de pacote do kernel, realize os seguintes passos:
|-
+
|| <code>Alt</code> || META
+
|-
+
|| <code>META+p</code> || Run program with dmenu
+
|-
+
|| <code>META+3</code> || Move to tag number 3
+
|-
+
|| <code>META+j / k</code> || Move to next / previous client
+
|-
+
|| <code>META+i / d</code> || Increase / decrease master clients
+
|-
+
|| <code>META+Enter</code> || Move client to master area
+
|-
+
|| <code>META+h / l</code> || Resize master area
+
|-
+
|| <code>META+t / f / m</code> || Switch to title / floating / monocle layout
+
|-
+
|| <code>shift+META+c</code> || Kill client
+
|-
+
|| <code>shift+META+3</code> || Move client to tag 3
+
|-
+
|| <code>shift+META+Enter</code> || Run terminal
+
|-
+
|| <code>shift+META+q</code> || Quit dwm
+
|}
+
  
== Patching ==
 
Patches in <code>/etc/portage/patches/x11-wm/dwm</code> gets applied when emerging dwm. Patches has to have .patch file extension.
 
 
<console>
 
<console>
###i## mkdir -p /etc/portage/patches/x11-wm/dwm
+
(chroot) # ##i##mkdir /etc/portage/sets
###i## cd /etc/portage/patches/x11-wm/dwm
+
(chroot) # ##i##echo sys-kernel/debian-sources > /etc/portage/sets/kernel
###i## wget -O dwm-6.0-pertag.patch http://dwm.suckless.org/patches/dwm-6.0-pertag.diff
+
 
</console>
 
</console>
  
Rebuild dwm.
+
Agora, vamos querer definir uma variável USE para dizer ao <code>debian-sources</code> que construa um kernel "universal" e o initramfs para nós, para levar Funtoo Linux a funcionamento na inicialização. Para fazer isso, vamos configurar a variável <code>binary</code> USE para <code>debian-sources</code>, como a seguir:
 +
 
 
<console>
 
<console>
###i## emerge dwm
+
(chroot) # ##i##echo "sys-kernel/debian-sources binary" >> /etc/portage/package.use
 
</console>
 
</console>
  
== Customize statusbar ==
+
Se as varáveis USE forem novas para você, você estará se familiarizando com elas um pouco mais enquanto utiliza o Funtoo Linux. Em sua essência, elas são "switches" que você pode definir para configurar opções que podem ser construídas em vários pacotes. Elas são utilizadas para assim personalizar seu Funtoo Linux system para que conheça as suas exatas necessidades. Nós adicionamos suporte para uma flag <code>binary</code> USE flag aos ebuilds <code>debian-sources</code>, assim como poucos outros de nossos kernel ebuilds, para tornar mais fácil para que novos usuários de consigam obter o Funtoo Linux funcionando e operando.
dwm has statusbar that can be customized with <code>xsetroot</code>. You can run xsetroot from <code>~/.xinitrc</code>.
+
You can start dwm by configuring <code>~/.xinitrc</code> and running <code>startx</code>.
+
{{file|name=~/.xinitrc|lang=|desc=|body=
+
ifname="wlan0"
+
interval=5
+
  
rxs=0
+
Agora, quando queremos somente atualizar os pacotes do nosso sistema, digitaremos <code>emerge -auDN @world</code>, e isso atualizará nossa configuração world, deixando de fora o kernel. Do mesmo modo, quando queremos atualizar somente o nosso kernel, digitaremos <code>emerge -au @kernel</code>, e isso atualizará nosso kernel, deixando de fora a configuração world.
txs=0
+
  
while true; do
+
==== Building the Kernel ====
        temp="$(cat /sys/class/thermal/thermal_zone1/temp {{!}} cut -b1,2)C"
+
        load="$(cat /proc/loadavg {{!}} cut -d " " -f 1)"
+
        bandwidth="${rxs}KiB/s ${txs}KiB/s"
+
        batusage="$(cat /sys/class/power_supply/BAT0/capacity)%"
+
        batstatus="$(cat /sys/class/power_supply/BAT0/status)"
+
        date="$(date +"%a %d.%m %H:%M")"
+
  
        xsetroot -name "$temp $load {{!}} $bandwidth {{!}} $batusage $batstatus {{!}} $date"
+
{{Fancynote|1=
 +
See [[Funtoo Linux Kernels]] for a full list of kernels supported in Funtoo Linux. We recommend <code>debian-sources</code> for new users.}}
  
        rx1=$(cat /sys/class/net/$ifname/statistics/rx_bytes)
+
{{fancyimportant|1=
        tx1=$(cat /sys/class/net/$ifname/statistics/tx_bytes)
+
<code>debian-sources</code> with <code>binary</code> USE flag requires at least 14GB free in <code>/var/tmp</code> and takes around 1 hour to build on a Intel Core i7 Processor.}}
        sleep $interval
+
        rx2=$(cat /sys/class/net/$ifname/statistics/rx_bytes)
+
        tx2=$(cat /sys/class/net/$ifname/statistics/tx_bytes)
+
        rxs=$(expr $rx2 - $rx1)
+
        txs=$(expr $tx2 - $tx1)
+
        rxs=$(expr $rxs / $interval)
+
        txs=$(expr $txs / $interval)
+
        rxs=$(expr $rxs / 1024)
+
        txs=$(expr $txs / 1024)
+
done &
+
  
exec dwm
+
Let's emerge our kernel:
}}
+
  
 +
<console>
 +
(chroot) # ##i##emerge -1 @kernel
 +
</console>
  
== Starting ==
+
{{Important|Right now, the <code>-1</code> option is required to not add our <code>@kernel</code> set to <code>world-sets</code>. This allows you to emerge it independently from @world. If you forget to use this option, edit <code>/var/lib/portage/world-sets</code> and remove the <code>@kernel</code> line. This will prevent kernel updates from being included in @world updates.}}
You can start dwm by configuring <code>~/.xinitrc</code> and running <code>startx</code>.
+
{{file|name=~/.xinitrc|lang=|desc=|body=
+
exec dwm
+
}}
+
  
<console>
+
Note that while use of the <code>binary</code> USE flag makes installing a working kernel extremely simple, it is one part of Funtoo Linux that takes a ''very'' long time to build from source, because it is building a kernel that supports ''all'' hardware that Linux supports! So, get the build started, and then let your machine compile. Slower machines can take up to several hours to build the kernel, and you'll want to make sure that you've set <code>MAKEOPTS</code> in <code>/etc/portage/make.conf</code> to the number of processing cores/threads (plus one) in your system before starting to build it as quickly as possible -- see the [[#/etc/portage/make.conf|/etc/portage/make.conf section]] if you forgot to do this.
$##i## startx
+
 
</console>
+
{{fancynote|NVIDIA card users: the <code>binary</code> USE flag installs the Nouveau drivers which cannot be loaded at the same time as the proprietary drivers, and cannot be unloaded at runtime because of KMS. You need to blacklist it under <code>/etc/modprobe.d/</code>.}}
 +
 
 +
{{fancynote|For an overview of other kernel options for Funtoo Linux, see [[Funtoo Linux Kernels]]. There may be modules that the Debian kernel doesn't include, a situation where [http://www.funtoo.org/wiki/Funtoo_Linux_Kernels#Using_Debian-Sources_with_Genkernel genkernel] would be useful. Also be sure to see [[:Category:Hardware Compatibility|hardware compatibility]] information.}}
  
To autostart dwm on login see [[Getty as display manager]].
+
Once <code>emerge</code> completes, you'll have a brand new kernel and initramfs installed to <code>/boot</code>, plus kernel headers installed in <code>/usr/src/linux</code>, and you'll be ready to configure the boot loader to load these to boot your Funtoo Linux system.
{{EbuildFooter}}
+

Revision as of 14:58, February 26, 2015

Configurando e instalando o kernel Linux

Agora é hora de construir e instalar um kernel Linux, o qual é o coração de qualquer sistema Funtoo Linux. O kernel é carregado pelo boot loader, e interfaces diretamente com o hardware do seu sistema, e permite programas regulares (userspace) serem executador.

Um kernel deve ser configurado propriamente para o hardware do seu sistema, desse modo ele suporta seus hard drives, file systems, placas de rede, e assim por diante. Usuários de Linux mais experientes podem escolher instalar o kernel sources e configurar e instalar seu próprio kernel. Se você não sabe como fazer isso, nós fornecemos ebuilds que construirão automaticamente um kernel "universal", módulos e initramfs para a inicialização do seu sistema que suporte todo o hardware. Esse é um jeito extremamente simples de construção de um kernel que colocará seu sistema para inicializar.

Qual é o nosso objetivo? Construir um kernel que reconhecerá todo o hardware em seu sistema necessário para inicialização, você será cumprimentado por um prompt de login amigável depois que a instalação estiver completa. Estas instruções lhe guiarão através do processo de instalação de um kernel no modo "fácil" -- sem exigir configuração do usuário, ao utilizar um kernel "universal".

Package Sets

Antes que instalemos um kernel, vamos cobrir um recurso do Portage chamado package sets. Portage, o sistema gerenciador/ports de pacotes para o Funtoo Linux, manterá rastro de pacotes do sistema assim como pacotes que você tem instalado ao invocar emerge diretamente. Esses pacotes que são parte do sistema base são considerados parte do conjunto de pacote do "sistema" (system packages sets), enquanto pacotes que você tem instalado ao digitá-los na linha de comando (tal qual "gnome" em emerge gnome) serão adicionados ao conjunto de pacote "world". Isso proporciona um jeito fácil de atualizar o sistema inteiro.

No entanto, as vezes é bom ser capaz de atualizar o kernel todo por sim só, ou deixar uma atualização do kernel fora da sua regular atualização completa do sistema. Para fazer isso, criaremo uma nova configuração de pacote chamada "kernel".

Configuração de Pacote do Kernel

Para criar a configuração de pacote do kernel, realize os seguintes passos:

(chroot) # mkdir /etc/portage/sets
(chroot) # echo sys-kernel/debian-sources > /etc/portage/sets/kernel

Agora, vamos querer definir uma variável USE para dizer ao debian-sources que construa um kernel "universal" e o initramfs para nós, para levar Funtoo Linux a funcionamento na inicialização. Para fazer isso, vamos configurar a variável binary USE para debian-sources, como a seguir:

(chroot) # echo "sys-kernel/debian-sources binary" >> /etc/portage/package.use

Se as varáveis USE forem novas para você, você estará se familiarizando com elas um pouco mais enquanto utiliza o Funtoo Linux. Em sua essência, elas são "switches" que você pode definir para configurar opções que podem ser construídas em vários pacotes. Elas são utilizadas para assim personalizar seu Funtoo Linux system para que conheça as suas exatas necessidades. Nós adicionamos suporte para uma flag binary USE flag aos ebuilds debian-sources, assim como poucos outros de nossos kernel ebuilds, para tornar mais fácil para que novos usuários de consigam obter o Funtoo Linux funcionando e operando.

Agora, quando queremos somente atualizar os pacotes do nosso sistema, digitaremos emerge -auDN @world, e isso atualizará nossa configuração world, deixando de fora o kernel. Do mesmo modo, quando queremos atualizar somente o nosso kernel, digitaremos emerge -au @kernel, e isso atualizará nosso kernel, deixando de fora a configuração world.

Building the Kernel

Note

See Funtoo Linux Kernels for a full list of kernels supported in Funtoo Linux. We recommend debian-sources for new users.

Important

debian-sources with binary USE flag requires at least 14GB free in /var/tmp and takes around 1 hour to build on a Intel Core i7 Processor.

Let's emerge our kernel:

(chroot) # emerge -1 @kernel
Important

Right now, the -1 option is required to not add our @kernel set to world-sets. This allows you to emerge it independently from @world. If you forget to use this option, edit /var/lib/portage/world-sets and remove the @kernel line. This will prevent kernel updates from being included in @world updates.

Note that while use of the binary USE flag makes installing a working kernel extremely simple, it is one part of Funtoo Linux that takes a very long time to build from source, because it is building a kernel that supports all hardware that Linux supports! So, get the build started, and then let your machine compile. Slower machines can take up to several hours to build the kernel, and you'll want to make sure that you've set MAKEOPTS in /etc/portage/make.conf to the number of processing cores/threads (plus one) in your system before starting to build it as quickly as possible -- see the /etc/portage/make.conf section if you forgot to do this.

Note

NVIDIA card users: the binary USE flag installs the Nouveau drivers which cannot be loaded at the same time as the proprietary drivers, and cannot be unloaded at runtime because of KMS. You need to blacklist it under /etc/modprobe.d/.

Note

For an overview of other kernel options for Funtoo Linux, see Funtoo Linux Kernels. There may be modules that the Debian kernel doesn't include, a situation where genkernel would be useful. Also be sure to see hardware compatibility information.

Once emerge completes, you'll have a brand new kernel and initramfs installed to /boot, plus kernel headers installed in /usr/src/linux, and you'll be ready to configure the boot loader to load these to boot your Funtoo Linux system.