<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Conocimientos Libres</title><link href="https://conocimientoslibres.tuxfamily.org/" rel="alternate"></link><link href="https://conocimientoslibres.tuxfamily.org/feeds/all.atom.xml" rel="self"></link><id>https://conocimientoslibres.tuxfamily.org/</id><updated>2022-03-22T05:57:00+01:00</updated><subtitle></subtitle><entry><title>Cómo agregar o eliminar una entrada ARP estática en GNU+Linux</title><link href="https://conocimientoslibres.tuxfamily.org/como-agregar-o-eliminar-una-entrada-arp-estatica-en-gnu-linux/" rel="alternate"></link><published>2021-05-08T05:00:00+02:00</published><updated>2021-05-08T05:00:00+02:00</updated><author><name>Anonymous</name></author><id>tag:conocimientoslibres.tuxfamily.org,2021-05-08:/como-agregar-o-eliminar-una-entrada-arp-estatica-en-gnu-linux/</id><summary type="html">&lt;p&gt;ARP (abreviatura de "Protocolo de resolución de direcciones") es un
protocolo de red que se utiliza para asignar una dirección de red IP
a una dirección MAC de hardware correspondiente.&lt;/p&gt;
&lt;p&gt;Cuando el host X quiere comunicarse con el host Y, X primero transmite
una solicitud ARP en su red local …&lt;/p&gt;</summary><content type="html">&lt;p&gt;ARP (abreviatura de "Protocolo de resolución de direcciones") es un
protocolo de red que se utiliza para asignar una dirección de red IP
a una dirección MAC de hardware correspondiente.&lt;/p&gt;
&lt;p&gt;Cuando el host X quiere comunicarse con el host Y, X primero transmite
una solicitud ARP en su red local para obtener la dirección MAC de Y.&lt;/p&gt;
&lt;p&gt;Una vez que X recibe la respuesta ARP que contiene la dirección MAC
de Y, X usa la información para construir tramas Ethernet
destinadas a Y.&lt;/p&gt;
&lt;p&gt;La información de mapeo de direcciones IP/MAC así obtenida se
almacena en caché en la tabla ARP local, de modo que el proceso de
consulta ARP se puede omitir posteriormente.&lt;/p&gt;
&lt;p&gt;Pueden surgir problemas cuando, por cualquier motivo, el host X no
recibe respuestas ARP para un host de destino Y con el que desea
comunicarse. En otros casos, las respuestas ARP entran, pero
contienen una dirección MAC asociada con un host Z incorrecto.&lt;/p&gt;
&lt;p&gt;Tales respuestas ARP corruptas resultarán en secuestro de tráfico,
donde el tráfico que debería haber sido enviado a Y termina
llegando al host Z.&lt;/p&gt;
&lt;p&gt;Al tratar con este tipo de situaciones anormales inducidas por ARP,
es útil poder agregar entradas ARP estáticas manualmente en la
tabla ARP almacenada en caché local. Cuando se encuentra una
dirección MAC de un host de destino Y en la tabla ARP local,
no es necesario enviar solicitudes ARP.&lt;/p&gt;
&lt;h2 id="agregar-una-entrada-arp-estatica-a-la-tabla-arp-local"&gt;Agregar una entrada ARP estática a la tabla ARP local&lt;a class="headerlink" href="#agregar-una-entrada-arp-estatica-a-la-tabla-arp-local" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas arp -s &lt;span class="m"&gt;10&lt;/span&gt;.0.0.2 &lt;span class="m"&gt;00&lt;/span&gt;:0c:29:c0:94:bf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Este comando le dice a la tabla ARP local que el host con la
dirección IP 10.0.0.2 tiene la dirección MAC 00:0c:29:c0:94:bf.
Una vez que haya configurado una entrada ARP estática,
puede verificar que&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;arp -a -n
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;salida:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;? &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;192&lt;/span&gt;.168.10.47&lt;span class="o"&gt;)&lt;/span&gt; at e0:db:55:ce:13:f1 &lt;span class="o"&gt;[&lt;/span&gt;ether&lt;span class="o"&gt;]&lt;/span&gt; on eth0
? &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;192&lt;/span&gt;.168.10.1&lt;span class="o"&gt;)&lt;/span&gt; at &lt;span class="m"&gt;00&lt;/span&gt;:e0:b1:cb:07:30 &lt;span class="o"&gt;[&lt;/span&gt;ether&lt;span class="o"&gt;]&lt;/span&gt; on eth0
? &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;.0.0.2&lt;span class="o"&gt;)&lt;/span&gt; at &lt;span class="m"&gt;00&lt;/span&gt;: 0c: &lt;span class="m"&gt;29&lt;/span&gt;: c0: &lt;span class="m"&gt;94&lt;/span&gt;: bf &lt;span class="o"&gt;[&lt;/span&gt;ether&lt;span class="o"&gt;]&lt;/span&gt; PERM on eth1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Como puede ver arriba, la entrada ARP configurada estáticamente
aparece correctamente, marcada como "PERM" en la tabla ARP.&lt;/p&gt;
&lt;h2 id="eliminar-una-entrada-arp-estatica-de-la-tabla-arp-local"&gt;Eliminar una entrada ARP estática de la tabla ARP local&lt;a class="headerlink" href="#eliminar-una-entrada-arp-estatica-de-la-tabla-arp-local" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas arp -d &lt;span class="m"&gt;10&lt;/span&gt;.0.0.2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Verificar:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;arp -a -n
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;salida:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;? &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;135&lt;/span&gt;.112.29.47&lt;span class="o"&gt;)&lt;/span&gt; at e0:db:55:ce:13:f1 &lt;span class="o"&gt;[&lt;/span&gt;ether&lt;span class="o"&gt;]&lt;/span&gt; on eth0
? &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;135&lt;/span&gt;.112.29.1&lt;span class="o"&gt;)&lt;/span&gt; at &lt;span class="m"&gt;00&lt;/span&gt;:e0:b1:cb:07:30 &lt;span class="o"&gt;[&lt;/span&gt;ether&lt;span class="o"&gt;]&lt;/span&gt; on eth0
? &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;.0.0.2&lt;span class="o"&gt;)&lt;/span&gt; at &amp;lt;incomplete&amp;gt; on eth1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Tenga en cuenta que cualquier entrada de ARP agregada por el
comando arp en tiempo de ejecución como el anterior no
permanece de manera persistente entre los reinicios.
Para agregar una entrada ARP estática de forma permanente,
lo que puede hacer es cargar entradas ARP desde un archivo
externo automáticamente cuando una interfaz de red está
activa. Para eso, primero cree un archivo que contenga
entradas ARP estáticas.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas nano -w /etc/ethers
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Entrada de ejemplo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="m"&gt;00&lt;/span&gt;:0c:29:c0:94:bf &lt;span class="m"&gt;10&lt;/span&gt;.0.0.2
&lt;span class="m"&gt;00&lt;/span&gt;:0c:59:44:f0:a0 &lt;span class="m"&gt;10&lt;/span&gt;.0.0.5
. . . .
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;El comando &lt;code&gt;arp&lt;/code&gt; le permite cargar cualquier archivo
externo usando la opción &lt;code&gt;-f&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas arp -f /etc/ethers
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ahora debe configurar el comando anterior para que
se ejecute automáticamente cuando una interfaz de red
determinada (por ejemplo, eth0) esté activa.
Hay formas específicas de distribución para ejecutar
un comando de inicio para interfaces de red.
A continuación se muestran ejemplos específicos
de la distribución.&lt;/p&gt;
&lt;p&gt;Aquí supongo que no está utilizando NetworkManager en
su sistema GNU con Linux. Entonces, si está utilizando
NetworkManager, primero tendrá que deshabilitarlo.&lt;/p&gt;
&lt;p&gt;En Trisquel o Debian, agregue la siguiente entrada
en &lt;code&gt;/etc/network/interfaces&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;iface wlan0 inet dhcp
. . .
post-up arp -f /etc/ethers
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;En CentOS, RHEL o Fedora, escriba el siguiente script ejecutable:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas nano -w /sbin/ifup-local
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Entrada:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="o"&gt;[[&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;&lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;eth0&amp;quot;&lt;/span&gt; &lt;span class="o"&gt;]]&lt;/span&gt;
&lt;span class="k"&gt;then&lt;/span&gt;
arp -f /etc/ethers
&lt;span class="k"&gt;else&lt;/span&gt;
&lt;span class="c1"&gt;#DO_NOTHING&lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Asignamos persmisos de ejecución:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas chmod +x /sbin/ifup-local
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Tengo algunos dispositivos IP bastante tontos en una subred
con un servidor Trisquel, y el servidor recibe datos de
transmisión de cada dispositivo. Me he encontrado con un
problema en el sentido de que cuando se emite una solicitud
ARP al dispositivo mientras está transmitiendo datos
al servidor, la solicitud se ignora, la entrada de caché
se agota y el servidor deja de recibir la transmisión.&lt;/p&gt;
&lt;p&gt;Entonces, para evitar que el servidor envíe solicitudes ARP
a estos dispositivos por completo, me gustaría agregar
una entrada ARP estática para cada uno, algo como&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas arp -i eth2 -s ip.of.the.device mac:of:the:device
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Pero estas entradas ARP "estáticas" se pierden si la red
está deshabilitada/habilitada o si se reinicia el servidor.&lt;/p&gt;
&lt;p&gt;¿Cuál es el mejor lugar para agregar automáticamente estas
entradas, preferiblemente en algún lugar que las vuelva a
agregar cada vez que se abra la interfaz eth2?&lt;/p&gt;
&lt;p&gt;Realmente no quiero tener que escribir un script que
monitoree la salida de arp y vuelva a agregar las
entradas de caché si faltan.&lt;/p&gt;
&lt;p&gt;Edite para agregar cuál fue mi script final:&lt;/p&gt;
&lt;p&gt;Escribí este archivo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas nano -w /etc/network/if-up.d/add-my-static-arp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Con el contenido:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
arp -i eth0 -s &lt;span class="m"&gt;192&lt;/span&gt;.168.0.4 &lt;span class="m"&gt;00&lt;/span&gt;:50:cc:44:55:55
arp -i eth0 -s &lt;span class="m"&gt;192&lt;/span&gt;.168.0.5 &lt;span class="m"&gt;00&lt;/span&gt;:50:cc:44:55:56
arp -i eth0 -s &lt;span class="m"&gt;192&lt;/span&gt;.168.0.6 &lt;span class="m"&gt;00&lt;/span&gt;:50:cc:44:55:57
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Y luego, obviamente, agregue el permiso para permitir
que se ejecute:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;doas chmod +x /etc/network/if-up.d/add-my-static-arp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Y estas entradas arp se agregarán o volverán a agregar
manualmente cada vez que se abra cualquier interfaz de red.&lt;/p&gt;</content><category term="education"></category><category term="arp"></category><category term="arp estática"></category><category term="arp quitar"></category></entry><entry><title>Instalar un gestor de máquinas virtuales en Hyperbola GNU/Linux-libre</title><link href="https://conocimientoslibres.tuxfamily.org/instalar-un-gestor-de-maquinas-virtuales-en-hyperbola-gnulinux-libre/" rel="alternate"></link><published>2020-05-03T03:12:00+02:00</published><updated>2022-03-22T05:55:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2020-05-03:/instalar-un-gestor-de-maquinas-virtuales-en-hyperbola-gnulinux-libre/</id><summary type="html">&lt;p&gt;Tu sistema principal puede ser Hyperbola GNU/Linux-libre de arquitectura
x86_64, por ejemplo, pero con suficiente memoria y poder de procesamiento
usted pordría ejecutar
&lt;a href="https://trisquel.info" rel="noopener noreferrer" target="_blank"&gt;Trisquel&lt;/a&gt; y
&lt;a href="https://dragora.org" rel="noopener noreferrer" target="_blank"&gt;Dragora&lt;/a&gt;
al mismo tiempo, dentro de la misma máquina.&lt;/p&gt;
&lt;h2 id="que-es-un-maquina-virtual"&gt;¿Qué es un máquina virtual?&lt;a class="headerlink" href="#que-es-un-maquina-virtual" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una máquina virtual es un software que simula un sistema …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Tu sistema principal puede ser Hyperbola GNU/Linux-libre de arquitectura
x86_64, por ejemplo, pero con suficiente memoria y poder de procesamiento
usted pordría ejecutar
&lt;a href="https://trisquel.info" rel="noopener noreferrer" target="_blank"&gt;Trisquel&lt;/a&gt; y
&lt;a href="https://dragora.org" rel="noopener noreferrer" target="_blank"&gt;Dragora&lt;/a&gt;
al mismo tiempo, dentro de la misma máquina.&lt;/p&gt;
&lt;h2 id="que-es-un-maquina-virtual"&gt;¿Qué es un máquina virtual?&lt;a class="headerlink" href="#que-es-un-maquina-virtual" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una máquina virtual es un software que simula un sistema de computación
y puede ejecutar programas como si fuese una computadora real.
Este software en un principio fue definido como
"un duplicado eficiente y aislado de una máquina física".&lt;/p&gt;
&lt;h2 id="que-programas-me-permiten-ejecutar-una-maquina-virtual"&gt;¿Qué programas me permiten ejecutar una máquina virtual?&lt;a class="headerlink" href="#que-programas-me-permiten-ejecutar-una-maquina-virtual" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;En los sistemas operativos totalmente libres existe un
programa llamado &lt;code&gt;qemu&lt;/code&gt; que nos permite virtualizar.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://wiki.qemu.org/Main_Page" rel="noopener noreferrer" target="_blank"&gt;Qemu&lt;/a&gt;
funciona a través de línea de comandos.&lt;/p&gt;
&lt;h2 id="habilitando-la-virtualizacion"&gt;Habilitando la Virtualización&lt;a class="headerlink" href="#habilitando-la-virtualizacion" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="revisar-si-su-pc-soporta-virtualizacion"&gt;Revisar si su PC soporta virtualización&lt;a class="headerlink" href="#revisar-si-su-pc-soporta-virtualizacion" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;&lt;span class="nv"&gt;LC_ALL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;C lscpu &lt;span class="p"&gt;|&lt;/span&gt; grep Virtualization
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;o ejecutar el comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;lsmod &lt;span class="p"&gt;|&lt;/span&gt; grep kvm
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Si su computadora admite virtualización, debería ver
la salida como &lt;code&gt;Virtualización: VT-x&lt;/code&gt; o &lt;code&gt;Virtualización: AMD-V&lt;/code&gt;,
caso contrario su ordenador no es capaz de virtualizar.&lt;/p&gt;
&lt;h3 id="instalando-qemu"&gt;Instalando qemu&lt;a class="headerlink" href="#instalando-qemu" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -Sy

&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S qemu vde2 dnsmasq bridge-utils

&lt;span class="gp"&gt;# &lt;/span&gt;gpasswd -a &amp;lt;tu-usuario&amp;gt; kvm
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3 id="habilitar-modulos-del-kernel-para-virtualizacion"&gt;Habilitar módulos del kernel para virtualización&lt;a class="headerlink" href="#habilitar-modulos-del-kernel-para-virtualizacion" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Módulo kvm_intel (procesadores Intel)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_intel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Módulo kvm_amd (procesadores AMD)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_amd
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="habilitar-la-virtualizacion-anidada-en-kvm"&gt;Habilitar la virtualización anidada en KVM&lt;a class="headerlink" href="#habilitar-la-virtualizacion-anidada-en-kvm" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;La virtualización anidada le permite ejecutar una máquina virtual (VM)
dentro de otra VM mientras sigue utilizando la aceleración de hardware
del host.&lt;/p&gt;
&lt;h4 id="comprobando-si-la-virtualizacion-anidada-es-compatible"&gt;Comprobando si la virtualización anidada es compatible&lt;a class="headerlink" href="#comprobando-si-la-virtualizacion-anidada-es-compatible" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Para los procesadores Intel, verifique el archivo
&lt;code&gt;/sys/module/kvm_intel/parameters/nested&lt;/code&gt;.
Para procesadores AMD, verifique el archivo
&lt;code&gt;/sys/module/kvm_amd/parameters/nested&lt;/code&gt;.
Si ve &lt;code&gt;1&lt;/code&gt; o &lt;code&gt;Y&lt;/code&gt;, se admite la virtualización anidada;
si ve &lt;code&gt;0&lt;/code&gt; o &lt;code&gt;N&lt;/code&gt;, la virtualización anidada no es compatible.&lt;/p&gt;
&lt;p&gt;Por ejemplo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;cat /sys/module/kvm_intel/parameters/nested
&lt;span class="go"&gt;Y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id="habilitar-la-virtualizacion-anidada-para-procesadores-intel"&gt;Habilitar la virtualización anidada para procesadores Intel:&lt;a class="headerlink" href="#habilitar-la-virtualizacion-anidada-para-procesadores-intel" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Apague todas las máquinas virtuales en ejecución y recargue el módulo &lt;code&gt;kvm_intel&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe -r kvm_intel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activa la función de anidamiento&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_intel &lt;span class="nv"&gt;nested&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;La virtualización anidada se habilita hasta que se reinicia el host.
   Para habilitarlo permanentemente, agregue la siguiente línea al
   archivo &lt;code&gt;/etc/modprobe.d/kvm.conf&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/modprobe.d/kvm.conf
&lt;span class="go"&gt;----------------------------------&lt;/span&gt;
&lt;span class="go"&gt;options kvm_intel nested=1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id="habilitar-la-virtualizacion-anidada-para-procesadores-amd"&gt;Habilitar la virtualización anidada para procesadores AMD:&lt;a class="headerlink" href="#habilitar-la-virtualizacion-anidada-para-procesadores-amd" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Apague todas las máquinas virtuales en ejecución y recargue el módulo &lt;code&gt;kvm_amd&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe -r kvm_amd
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activa la función de anidamiento&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_amd &lt;span class="nv"&gt;nested&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;La virtualización anidada se habilita hasta que se reinicia el host.
   Para habilitarlo permanentemente, agregue la siguiente línea al
   archivo &lt;code&gt;/etc/modprobe.d/kvm.conf&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/modprobe.d/kvm.conf
&lt;span class="go"&gt;----------------------------------&lt;/span&gt;
&lt;span class="go"&gt;options kvm_amd nested=1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="uso-de-qemu"&gt;Uso de Qemu&lt;a class="headerlink" href="#uso-de-qemu" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Escribir el disco virtual a usar por la máquina virtual.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;qemu-img create hyper.qcow2 10G
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3 id="uso-simple"&gt;Uso simple:&lt;a class="headerlink" href="#uso-simple" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash&lt;/span&gt;
qemu-system-x86_64 &lt;span class="se"&gt;\&lt;/span&gt;
  -monitor stdio &lt;span class="se"&gt;\&lt;/span&gt;
  --enable-kvm -m &lt;span class="m"&gt;512&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cpu host -smp &lt;span class="m"&gt;4&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cdrom /path/to/hyperbola-milky-way-v0.4-dual.iso &lt;span class="se"&gt;\&lt;/span&gt;
  -drive &lt;span class="nv"&gt;file&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/path/to/hyper.qcow2,if&lt;span class="o"&gt;=&lt;/span&gt;virtio &lt;span class="se"&gt;\&lt;/span&gt;
  -boot c -rtc &lt;span class="nv"&gt;base&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;localtime &lt;span class="se"&gt;\&lt;/span&gt;
  -device virtio-keyboard-pci &lt;span class="se"&gt;\&lt;/span&gt;
  -net nic &lt;span class="se"&gt;\&lt;/span&gt;
  -net user &lt;span class="se"&gt;\&lt;/span&gt;
  -vga virtio
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;code&gt;-cpu host -smp 4&lt;/code&gt; para usar 4 CPUs con el nombre original del
CPU-hostpedador.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;-net user&lt;/code&gt; es importante para tener acceso a Internet dentro
de su nuevo sistema. &lt;code&gt;-m 512&lt;/code&gt; es el tamaño de RAM virtual
establecido (megabytes), el valor predeterminado es 128 MB,
elegí 512.&lt;/p&gt;
&lt;p&gt;Usted puede agregar &lt;code&gt;-vga virtio -display sdl,gl=on&lt;/code&gt; para la emulación 3D&lt;/p&gt;
&lt;p&gt;También usted puede agregar &lt;code&gt;-device intel-hda -device hda-duplex&lt;/code&gt; para el soporte
de audio en tarjetas de audio de Intel.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Véase &lt;a href="https://wiki.archlinux.org/title/QEMU#Audio"&gt;https://wiki.archlinux.org/title/QEMU#Audio&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="qemu-vnc-como-servidor"&gt;Qemu + VNC como servidor&lt;a class="headerlink" href="#qemu-vnc-como-servidor" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash&lt;/span&gt;
qemu-system-x86_64 &lt;span class="se"&gt;\&lt;/span&gt;
  -monitor stdio &lt;span class="se"&gt;\&lt;/span&gt;
  --enable-kvm -m &lt;span class="m"&gt;512&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cpu host -smp &lt;span class="m"&gt;4&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cdrom /path/to/hyperbola-milky-way-v0.4-dual.iso &lt;span class="se"&gt;\&lt;/span&gt;
  -drive &lt;span class="nv"&gt;file&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/path/to/hyper.qcow2,if&lt;span class="o"&gt;=&lt;/span&gt;virtio &lt;span class="se"&gt;\&lt;/span&gt;
  -boot c -rtc &lt;span class="nv"&gt;base&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;localtime &lt;span class="se"&gt;\&lt;/span&gt;
  -device virtio-keyboard-pci &lt;span class="se"&gt;\&lt;/span&gt;
  -net nic -net user &lt;span class="se"&gt;\&lt;/span&gt;
  -vga virtio -display none &lt;span class="se"&gt;\&lt;/span&gt;
  -vnc :0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Se puede agregar la opción &lt;code&gt;-vnc :X&lt;/code&gt; para que QEMU redirija la pantalla VGA a la sesión VNC.
Sustituya X por el número de la pantalla (0 entonces escuchará en 5900, 1 en 5901,
2 en 5902, etc).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Recuerda! Ctrl + Alt + G para salir de la captura del mouse, Ctrl + Alt + F para pantalla
completa!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;
&lt;blockquote&gt;
&lt;p&gt;Advertencia: la configuración predeterminada del servidor VNC no
utiliza ninguna forma de autenticación. Cualquier usuario puede
conectarse desde cualquier host.
Puedes revisar: &lt;a href="https://wiki.archlinux.org/title/QEMU#Basic_password_authentication"&gt;https://wiki.archlinux.org/title/QEMU#Basic_password_authentication&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="capturas-de-pantalla-de-qemu"&gt;Capturas de pantalla de Qemu&lt;a class="headerlink" href="#capturas-de-pantalla-de-qemu" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;figure&gt;
    &lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-hyperbola.png"&gt;
        &lt;img src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-hyperbola.png" alt="Hyperbola en Qemu"&gt;
    &lt;/a&gt;
    &lt;figcaption&gt;Captura de pantalla de Hyperbola GNU/Linux en Qemu&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;figure&gt;
    &lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-trisquel.png"&gt;
        &lt;img src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-trisquel.png" alt="Trisquel en Qemu"&gt;
    &lt;/a&gt;
    &lt;figcaption&gt;Captura de pantalla de Trisquel GNU/Linux en Qemu&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;h3 id="modulos-con-problemas-de-seguridad"&gt;Módulos con problemas de seguridad&lt;a class="headerlink" href="#modulos-con-problemas-de-seguridad" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;El módulo &lt;code&gt;vhost_net&lt;/code&gt; tiene problemas de seguridad
&lt;a href="https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html" rel="noopener noreferrer" target="_blank"&gt;CVE-2018-3646&lt;/a&gt;
que es un error de CPU L1TF y SMT con posible fuga
de datos. Lo recomendable es desactivarlo de la
siguiente manera:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe -r vhost_net
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Si estás en Hyperbola GNU/Linux-libre este módulo
viene desactivado.&lt;/p&gt;</content><category term="Tutorial"></category><category term="maquinas virtuales"></category><category term="tutorial"></category></entry><entry><title>Install a virtual machine manager in Hyperbola GNU/Linux-libre</title><link href="https://conocimientoslibres.tuxfamily.org/en/install-a-virtual-machine-manager-on-hyperbola-gnulinux-libre/" rel="alternate"></link><published>2020-05-03T03:12:00+02:00</published><updated>2022-03-22T05:57:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2020-05-03:/en/install-a-virtual-machine-manager-on-hyperbola-gnulinux-libre/</id><summary type="html">&lt;p&gt;Your host may be Hyperbola GNU/Linux-libre x86_64 architecture, for example,
but with enough memory and processing power you could run
&lt;a href="https://trisquel.info" rel="noopener noreferrer" target="_blank"&gt;Trisquel&lt;/a&gt; and
&lt;a href="https://dragora.org" rel="noopener noreferrer" target="_blank"&gt;Dragora&lt;/a&gt;
at the same time, on the same machine.&lt;/p&gt;
&lt;h2 id="what-is-a-virtual-machine"&gt;What is a virtual machine?&lt;a class="headerlink" href="#what-is-a-virtual-machine" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A virtual machine is software that simulates a computer system and can
execute …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Your host may be Hyperbola GNU/Linux-libre x86_64 architecture, for example,
but with enough memory and processing power you could run
&lt;a href="https://trisquel.info" rel="noopener noreferrer" target="_blank"&gt;Trisquel&lt;/a&gt; and
&lt;a href="https://dragora.org" rel="noopener noreferrer" target="_blank"&gt;Dragora&lt;/a&gt;
at the same time, on the same machine.&lt;/p&gt;
&lt;h2 id="what-is-a-virtual-machine"&gt;What is a virtual machine?&lt;a class="headerlink" href="#what-is-a-virtual-machine" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A virtual machine is software that simulates a computer system and can
execute programs as if it were a real computer. This software was
originally defined as "an efficient and isolated duplicate of a
physical machine".&lt;/p&gt;
&lt;h2 id="what-programs-allow-me-to-run-a-virtual-machine"&gt;What programs allow me to run a virtual machine?&lt;a class="headerlink" href="#what-programs-allow-me-to-run-a-virtual-machine" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;In totally free operating systems there is a program
called &lt;code&gt;qemu&lt;/code&gt; that allows us to virtualize.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://wiki.qemu.org/Main_Page" rel="noopener noreferrer" target="_blank"&gt;Qemu&lt;/a&gt;
works through the command line.&lt;/p&gt;
&lt;h2 id="enable-virtualization"&gt;Enable virtualization&lt;a class="headerlink" href="#enable-virtualization" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="check-if-your-pc-supports-virtualization"&gt;Check if your PC supports virtualization&lt;a class="headerlink" href="#check-if-your-pc-supports-virtualization" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;&lt;span class="nv"&gt;LC_ALL&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;C lscpu &lt;span class="p"&gt;|&lt;/span&gt; grep Virtualization
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;or run the command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;lsmod &lt;span class="p"&gt;|&lt;/span&gt; grep kvm
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;If your computer supports virtualization, you should see the
output as &lt;code&gt;Virtualization: VT-x&lt;/code&gt; or &lt;code&gt;Virtualization: AMD-V&lt;/code&gt;,
otherwise your computer is not capable of virtualizing.&lt;/p&gt;
&lt;h3 id="qemu-installing"&gt;Qemu Installing&lt;a class="headerlink" href="#qemu-installing" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -Sy

&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S qemu vde2 dnsmasq bridge-utils

&lt;span class="gp"&gt;# &lt;/span&gt;gpasswd -a &amp;lt;your-user&amp;gt; kvm
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3 id="enable-kernel-modules-for-virtualization"&gt;Enable kernel modules for virtualization&lt;a class="headerlink" href="#enable-kernel-modules-for-virtualization" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;kvm_intel module (Intel processors)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_intel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;kvm_amd module (AMD processors)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_amd
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="enable-nested-virtualization-in-kvm"&gt;Enable nested virtualization in KVM&lt;a class="headerlink" href="#enable-nested-virtualization-in-kvm" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Nested virtualization allows you to run a virtual machine (VM)
within another VM while still using host hardware acceleration.&lt;/p&gt;
&lt;h4 id="checking-if-nested-virtualization-is-supported"&gt;Checking if nested virtualization is supported&lt;a class="headerlink" href="#checking-if-nested-virtualization-is-supported" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;For Intel processors, check the
&lt;code&gt;/sys/module/kvm_intel/parameters/nested&lt;/code&gt; file.
For AMD processors, check the
&lt;code&gt;/sys/module/kvm_amd/parameters/nested&lt;/code&gt;.
If you see &lt;code&gt;1&lt;/code&gt; or &lt;code&gt;Y&lt;/code&gt;, nested virtualization is supported;
if you see &lt;code&gt;0&lt;/code&gt; or &lt;code&gt;N&lt;/code&gt;, nested virtualization is not supported.&lt;/p&gt;
&lt;p&gt;For example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;cat /sys/module/kvm_intel/parameters/nested
&lt;span class="go"&gt;Y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4 id="enable-nested-virtualization-for-intel-processors"&gt;Enable nested virtualization for Intel processors:&lt;a class="headerlink" href="#enable-nested-virtualization-for-intel-processors" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Turn off all running virtual machines and reload &lt;code&gt;kvm_intel&lt;/code&gt; module:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe -r kvm_intel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activate the nesting function&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_intel &lt;span class="nv"&gt;nested&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Nested virtualization is enabled until the host is restarted.
   To enable it permanently, add the following line to
   &lt;code&gt;/etc/modprobe.d/kvm.conf&lt;/code&gt; file:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/modprobe.d/kvm.conf
&lt;span class="go"&gt;----------------------------------&lt;/span&gt;
&lt;span class="go"&gt;options kvm_intel nested=1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id="enable-nested-virtualization-for-amd-processors"&gt;Enable nested virtualization for AMD processors:&lt;a class="headerlink" href="#enable-nested-virtualization-for-amd-processors" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Turn off all running virtual machines and reload &lt;code&gt;kvm_amd&lt;/code&gt; module:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe -r kvm_amd
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activate the nesting function&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe kvm_amd &lt;span class="nv"&gt;nested&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Nested virtualization is enabled until the host is restarted.
   To enable it permanently, add the following line to
   &lt;code&gt;/etc/modprobe.d/kvm.conf&lt;/code&gt; file:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/modprobe.d/kvm.conf
&lt;span class="go"&gt;----------------------------------&lt;/span&gt;
&lt;span class="go"&gt;options kvm_intel nested=1&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="qemu-usage"&gt;Qemu usage&lt;a class="headerlink" href="#qemu-usage" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Make virtual disk to use Virtual Machine.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;qemu-img create hyper.qcow2 10G
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h3 id="simple-usage"&gt;Simple usage&lt;a class="headerlink" href="#simple-usage" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash&lt;/span&gt;
qemu-system-x86_64 &lt;span class="se"&gt;\&lt;/span&gt;
  -monitor stdio &lt;span class="se"&gt;\&lt;/span&gt;
  --enable-kvm -m &lt;span class="m"&gt;512&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cpu host -smp &lt;span class="m"&gt;4&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cdrom /path/to/hyperbola-milky-way-v0.4-dual.iso &lt;span class="se"&gt;\&lt;/span&gt;
  -drive &lt;span class="nv"&gt;file&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/path/to/hyper.qcow2,if&lt;span class="o"&gt;=&lt;/span&gt;virtio &lt;span class="se"&gt;\&lt;/span&gt;
  -boot c -rtc &lt;span class="nv"&gt;base&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;localtime &lt;span class="se"&gt;\&lt;/span&gt;
  -device virtio-keyboard-pci &lt;span class="se"&gt;\&lt;/span&gt;
  -net nic -net user &lt;span class="se"&gt;\&lt;/span&gt;
  -vga virtio
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;code&gt;-cpu host -smp 4&lt;/code&gt; to use 4 cpus with original CPU-host name&lt;/p&gt;
&lt;p&gt;&lt;code&gt;-net user&lt;/code&gt; is important to have internet access within your new system.
&lt;code&gt;-m 512&lt;/code&gt; is the set virtual RAM size (megabytes), default is 128 MB,
I chose 512&lt;/p&gt;
&lt;p&gt;You can set &lt;code&gt;-vga virtio -display sdl,gl=on&lt;/code&gt; for 3D emulation support&lt;/p&gt;
&lt;p&gt;Also you can set &lt;code&gt;-device intel-hda -device hda-duplex&lt;/code&gt; for audio support
on intel audio-card.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;For audio support check &lt;a href="https://wiki.archlinux.org/title/QEMU#Audio"&gt;https://wiki.archlinux.org/title/QEMU#Audio&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="qemu-vnc-as-server"&gt;Qemu + VNC as server&lt;a class="headerlink" href="#qemu-vnc-as-server" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash&lt;/span&gt;
qemu-system-x86_64 &lt;span class="se"&gt;\&lt;/span&gt;
  -monitor stdio &lt;span class="se"&gt;\&lt;/span&gt;
  --enable-kvm -m &lt;span class="m"&gt;512&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cpu host -smp &lt;span class="m"&gt;4&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  -cdrom /path/to/hyperbola-milky-way-v0.4-dual.iso &lt;span class="se"&gt;\&lt;/span&gt;
  -drive &lt;span class="nv"&gt;file&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/path/to/hyper.qcow2,if&lt;span class="o"&gt;=&lt;/span&gt;virtio &lt;span class="se"&gt;\&lt;/span&gt;
  -boot c -rtc &lt;span class="nv"&gt;base&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;localtime &lt;span class="se"&gt;\&lt;/span&gt;
  -device virtio-keyboard-pci &lt;span class="se"&gt;\&lt;/span&gt;
  -net nic -net user &lt;span class="se"&gt;\&lt;/span&gt;
  -vga virtio -display none &lt;span class="se"&gt;\&lt;/span&gt;
  -vnc :0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;One can add the &lt;code&gt;-vnc :X&lt;/code&gt; option to have QEMU redirect the VGA display to
the VNC session. Substitute X for the number of the display (0 will
then listen on 5900, 1 on 5901, 2 on 5902, etc).&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Remember: Ctrl + Alt + G to exit capture, Ctrl + Alt + F to fullscreen!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;
&lt;blockquote&gt;
&lt;p&gt;Warning: The default VNC server setup does not use any form of
authentication. Any user can connect from any host.
Maybe check: &lt;a href="https://wiki.archlinux.org/title/QEMU#Basic_password_authentication"&gt;https://wiki.archlinux.org/title/QEMU#Basic_password_authentication&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="qemu-screenshots"&gt;Qemu screenshots&lt;a class="headerlink" href="#qemu-screenshots" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;figure&gt;
    &lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-hyperbola.png"&gt;
        &lt;img src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-hyperbola.png" alt="Hyperbola in Qemu"&gt;
    &lt;/a&gt;
    &lt;figcaption&gt;Screenshot of Hyperbola GNU/Linux-libre in Qemu&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;figure&gt;
    &lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-trisquel.png"&gt;
        &lt;img src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2020/05/vm-trisquel.png" alt="Trisquel in Qemu"&gt;
    &lt;/a&gt;
    &lt;figcaption&gt;Screenshot of Trisquel GNU/Linux in Qemu&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;h3 id="modules-with-security-issues"&gt;Modules with security issues&lt;a class="headerlink" href="#modules-with-security-issues" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;The &lt;code&gt;vhost_net&lt;/code&gt; module has
&lt;a href="https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html" rel="noopener noreferrer" target="_blank"&gt;CVE-2018-3646&lt;/a&gt;
security issues which is L1TF and SMT CPU error
with possible data leak.
It's recommended to disable it as follows:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;modprobe -r vhost_net
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;If you are in Hyperbola GNU/Linux-libre
this module comes disabled.&lt;/p&gt;</content><category term="Tutorial"></category><category term="virtual machine"></category><category term="tutorial"></category></entry><entry><title>El Gobierno de España promete liberar el programa Autoevaluación COVID-19</title><link href="https://conocimientoslibres.tuxfamily.org/autoevaluaci%C3%B3n-covid-19/" rel="alternate"></link><published>2020-04-06T00:00:00+02:00</published><updated>2020-04-06T00:00:00+02:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2020-04-06:/autoevaluación-covid-19/</id><summary type="html">&lt;p&gt;Ha lanzado recientemente el Gobierno de España una &lt;a href="https://asistencia.covid19.gob.es/"&gt;página
web&lt;/a&gt; y una aplicación para el
autodiagnóstico del COVID-19, software privativo, al menos por ahora.
Dicen:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Nuestra intención es liberar el código fuente para que otros organismos
oficiales puedan implementar sus propias versiones de la aplicación,
cada uno adaptando la herramienta …&lt;/p&gt;&lt;/blockquote&gt;</summary><content type="html">&lt;p&gt;Ha lanzado recientemente el Gobierno de España una &lt;a href="https://asistencia.covid19.gob.es/"&gt;página
web&lt;/a&gt; y una aplicación para el
autodiagnóstico del COVID-19, software privativo, al menos por ahora.
Dicen:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Nuestra intención es liberar el código fuente para que otros organismos
oficiales puedan implementar sus propias versiones de la aplicación,
cada uno adaptando la herramienta a su protocolo sanitario de
autoevaluación y triaje, asegurando la accesibilidad y la igualdad de
oportunidades poniendo tecnología al servicio de la lucha contra la
pandemia.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Según he visto, parte del
código de la página enlaza a librerías externas que se encuentran en
servidores de Google. El código que se carga, aunque pertenece a una
librería libre llamada &lt;a href="https://github.com/typekit/webfontloader"&gt;Web Font
Loader&lt;/a&gt;, está ofuscado.&lt;/p&gt;
&lt;p&gt;Ya que tienen un correo de contacto, les he hecho llegar el siguiente
mensaje con el asunto «Sugerencia de seguridad y cuestiones»:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Le he echado un vistazo al código de la página principal. No se
debería ejecutar código de servidores externos, sino alojarlo todo en
el propio servidor. Hablo de recursos externos como
https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js, que
debería ser alojado en un servidor bajo el control del Gobierno de
España, no en el de una empresa de EE. UU., si es que se toman la
seguridad en serio. Si no, desde el servidor de Google pueden cambiar
el código en cualquier momento.&lt;/p&gt;
&lt;p&gt;A propósito, ¿cuánto dinero público se ha invertido para el
desarrollo, de esta aplicación y página web? ¿Y en los otros proyectos
redundantes de las demás Comunidades Autónomas? ¿Dónde se publicará el
código fuente? ¿Por qué no se ha hecho aún?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Como mencioné en &lt;a href="https://conocimientoslibres.tuxfamily.org/rastreo-exclusión-y-censura-con-la-excusa-del-covid19/"&gt;un artículo anterior&lt;/a&gt;,
esta aplicación no ofrece nada nuevo: toda la información sobre el
COVID-19 se encuentra fácilmente en Internet.&lt;/p&gt;
&lt;p&gt;Las palabras en relación a la privacidad en este caso son más bonitas
que las de la aplicación de la Comunidad de Madrid, que daba a empresas
privadas datos públicos de salud:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;el único responsable de los datos es el Ministerio de Sanidad&lt;/p&gt;
&lt;/blockquote&gt;</content><category term="Noticias"></category><category term="aplicación"></category><category term="COVID-19"></category><category term="España"></category><category term="Google"></category><category term="página web"></category><category term="privacidad"></category><category term="seguridad"></category></entry><entry><title>Rastreo, exclusión y censura con la excusa del COVID-19</title><link href="https://conocimientoslibres.tuxfamily.org/rastreo-exclusi%C3%B3n-y-censura-con-la-excusa-del-covid19/" rel="alternate"></link><published>2020-04-04T00:00:00+02:00</published><updated>2020-04-04T00:00:00+02:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2020-04-04:/rastreo-exclusión-y-censura-con-la-excusa-del-covid19/</id><summary type="html">&lt;p&gt;La excusa del &lt;a href="https://es.wikipedia.org/wiki/COVID-19"&gt;COVID-19&lt;/a&gt;
se está utilizando mucho para invadir la
privacidad y censurar los puntos de vista críticos mediante el uso de
tecnologías digitales de empresas que pretenden sacar el máximo
beneficio de la pandemia.&lt;/p&gt;
&lt;p&gt;La cuarentena impuesta ha dejado a gente encerrada (sin empleo o con
teletrabajo) y …&lt;/p&gt;</summary><content type="html">&lt;p&gt;La excusa del &lt;a href="https://es.wikipedia.org/wiki/COVID-19"&gt;COVID-19&lt;/a&gt;
se está utilizando mucho para invadir la
privacidad y censurar los puntos de vista críticos mediante el uso de
tecnologías digitales de empresas que pretenden sacar el máximo
beneficio de la pandemia.&lt;/p&gt;
&lt;p&gt;La cuarentena impuesta ha dejado a gente encerrada (sin empleo o con
teletrabajo) y a estudiantes sin clases, pues aunque dicen que hay clases
digitales, mucha gente no tiene Internet y los puntos de acceso públicos
están cerrados. Los estados no hacen nada para solucionar la brecha
digital.&lt;/p&gt;
&lt;p&gt;Las empresas tecnológicas están utilizando la situación para blanquear
su imagen y obtener dinero público, como &lt;a href="https://www.eldiario.es/tecnologia/privacidad-Gobierno-iniciativas-tecnologicas-coronavirus_0_1007900137.html"&gt;han advertido ya muchos
expertos&lt;/a&gt;.
En España encontramos un caso de estos en el pago de dinero público a
empresas privadas para desarrollar una página web y aplicaciones móviles
en la Comunidad de Madrid cuyos objetivos son recopilar datos de sus
ciudadanos y mantenerlos en manos de empresas privadas. Estos recursos
ofrecen información que ya se encuentra por doquier en Internet, es
decir, no aportan nada útil.&lt;/p&gt;
&lt;p&gt;Si su objetivo hubiera sido facilitar un autodiagnóstico por Internet e
informar al mayor número de personas, no habrían puesto como condición
previa introducir datos personales, la página funcionaria sin
JavaScript para ser más accesible (un ciego, por ejemplo, encontrará
dificultades para usar la página) ni habría elementos de rastreo de
Google en el código fuente. Los datos personales que recogen son el
nombre, apellidos, número de teléfono móvil, DNI, fecha de nacimiento,
correo electrónico, dirección completa, código postal, género y
geolocalización. Estos datos privados están ahora en las manos de
Google, Telefónica o Ferrovial, quienes aparecen en la
&lt;a href="https://coronavirus.comunidad.madrid/proteccion-de-datos"&gt;política de privacidad&lt;/a&gt;
como «proveedores y colaboradores».&lt;/p&gt;
&lt;p&gt;Las grandes empresas tecnológicas &lt;a href="https://www.20minutos.es/noticia/4133023/0/facebook-twitter-y-google-se-unen-a-la-lucha-contra-el-coronavirus-combatiendo-las-fake-news/"&gt;se han puesto también de acuerdo para
censurar los puntos de vista
diferentes&lt;/a&gt;,
diciendo que son noticias «falsas». Un ejemplo es la censura de la
canción de rap &lt;em&gt;El peor virus&lt;/em&gt; de Pablo Hasél en que se critica al
Gobierno de España, aunque en ella no aparecía ninguna afirmación falsa.
Esta ha vuelto a aparecer en YouTube tras unos días.&lt;/p&gt;
&lt;p&gt;Asimismo, gran parte de la población
está recomendando el uso de herramientas no libres para
videoconferencias, cuya seguridad deja mucho que desear. Por un lado,
&lt;a href="https://www.theguardian.com/technology/2020/apr/02/zoom-technology-security-coronavirus-video-conferencing"&gt;crece el uso del &lt;em&gt;malware&lt;/em&gt; Zoom durante la
cuarentena&lt;/a&gt;
y el de otros programas privativos. Por otro lado, también está
aumentando mucho el uso de programas libres como
&lt;a href="https://jitsi.org/"&gt;Jitsi&lt;/a&gt;, &lt;a href="https://jami.net/"&gt;Jami&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;La recesión económica que está produciéndose supone numerosas
dificultades para todos los sectores, incluido el tecnológico.&lt;/p&gt;</content><category term="Noticias"></category><category term="brecha digital"></category><category term="España"></category><category term="Jami"></category><category term="Jitsi"></category><category term="Madrid"></category><category term="software libre"></category><category term="software privativo"></category><category term="teletrabajo"></category><category term="virus"></category></entry><entry><title>Entrevista sobre HyperbolaBSD</title><link href="https://conocimientoslibres.tuxfamily.org/entrevista-sobre-hyperbolabsd/" rel="alternate"></link><published>2020-01-17T07:32:00+01:00</published><updated>2020-01-17T07:32:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2020-01-17:/entrevista-sobre-hyperbolabsd/</id><summary type="html">&lt;p&gt;A fines de diciembre de 2019, Hyperbola anunció que realizarían
cambios importantes en su proyecto. Han decidido abandonar el
kernel Linux a favor de bifurcar el kernel de OpenBSD.
Este anuncio solo llegó meses después de que Project Trident
anunciara que iban en la dirección opuesta (de BSD a GNU …&lt;/p&gt;</summary><content type="html">&lt;p&gt;A fines de diciembre de 2019, Hyperbola anunció que realizarían
cambios importantes en su proyecto. Han decidido abandonar el
kernel Linux a favor de bifurcar el kernel de OpenBSD.
Este anuncio solo llegó meses después de que Project Trident
anunciara que iban en la dirección opuesta (de BSD a GNU/Linux).&lt;/p&gt;
&lt;p&gt;Hyperbola también planea reemplazar todo el software que no sea
compatible con GPLv3 con las nuevas versiones que sí lo son.&lt;/p&gt;
&lt;p&gt;Para obtener más información sobre el futuro de su nuevo proyecto,
entrevisté a André, cofundador de Hyperbola.&lt;/p&gt;
&lt;h3 id="por-que-hyperbola-gnulinux-libre-se-convirtira-en-hyperbolabsd"&gt;¿Por qué Hyperbola GNU/Linux-libre se convirtirá en HyperbolaBSD?&lt;a class="headerlink" href="#por-que-hyperbola-gnulinux-libre-se-convirtira-en-hyperbolabsd" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="en-su-anuncio-declara-que-el-kernel-linux-avanza-rapidamente-por-un-camino-inestable-podria-explicar-que-quiere-decir-con-eso"&gt;En su anuncio, declara que el kernel Linux "avanza rápidamente por un camino inestable". ¿Podría explicar qué quiere decir con eso?&lt;a class="headerlink" href="#en-su-anuncio-declara-que-el-kernel-linux-avanza-rapidamente-por-un-camino-inestable-podria-explicar-que-quiere-decir-con-eso" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;En primer lugar, incluye la adaptación de funciones
DRM como &lt;a href="https://patchwork.kernel.org/patch/10084131/"&gt;HDCP&lt;/a&gt;
(Protección de contenido digital de alto ancho de banda).
Actualmente hay una opción para deshabilitarlo en el momento de la
compilación, sin embargo, no existe una política que nos garantice
que será opcional para siempre.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Históricamente, algunas características comenzaron como opcionales
hasta que alcanzaron la funcionalidad total. Luego se volvieron
forzados y difíciles de arreglar. Incluso si esto no sucede en el
caso de HDCP, seguimos siendo cautelosos acerca de tales
implementaciones.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Otra de las razones es que el kernel Linux ya no se está endureciendo
adecuadamente. &lt;a href="https://grsecurity.net/"&gt;Grsecurity&lt;/a&gt; dejó de ofrecer
parches públicos hace varios años, y dependíamos de eso para la
seguridad de nuestro sistema. Aún si podríamos usar sus parches para
una suscripción muy costosa, la suscripción finalizaría si
decidiéramos hacer públicos esos parches.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Dichas restricciones van en contra de los principios de FSDG que
requieren que proporcionemos código fuente completo, desbloqueado y
sin restricciones a nuestros usuarios.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project"&gt;KSPP&lt;/a&gt;
es un proyecto que tenía la intención de subir Grsec al kernel,
pero hasta ahora no ha llegado a alcanzar el nivel de endurecimiento
del kernel de Grsec/PaX. Tampoco ha habido muchos desarrollos recientes,
lo que nos lleva a creer que ahora es un proyecto inactivo en su mayor
parte.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Por último, el interés en &lt;a href="https://lwn.net/Articles/797828/"&gt;permitir que los módulos de Rust&lt;/a&gt;
ingresen al kernel es un problema para nosotros, debido a las
restricciones de marcas registradas de Rust que nos impiden aplicar
parches en nuestra distribución sin permiso expreso. Aplicamos
parches para eliminar software no libre, archivos sin licencia y
mejoras a la privacidad del usuario donde sea aplicable. También
esperamos que nuestros usuarios puedan reutilizar nuestro código
sin restricciones o permisos adicionales requeridos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Esto también se debe en parte a que utilizamos UXP, un motor de
navegador totalmente libre y un kit de herramientas de aplicación
sin Rust, para nuestras aplicaciones de correo y navegador.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Debido a estas restricciones, y la preocupación de que en algún
momento se convierta en una dependencia forzada del tiempo de
compilación del kernel, necesitábamos otra opción.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="tambien-dijo-en-el-anuncio-que-estaria-bifurcando-el-kernel-de-openbsd-por-que-elegiste-openbsd-sobre-freebsd-el-kernel-dragonflybsd-o-el-kernel-midnightbsd"&gt;También dijo en el anuncio que estaría bifurcando el kernel de OpenBSD. ¿Por qué elegiste OpenBSD sobre FreeBSD, el kernel DragonflyBSD o el kernel MidnightBSD?&lt;a class="headerlink" href="#tambien-dijo-en-el-anuncio-que-estaria-bifurcando-el-kernel-de-openbsd-por-que-elegiste-openbsd-sobre-freebsd-el-kernel-dragonflybsd-o-el-kernel-midnightbsd" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://www.openbsd.org/"&gt;OpenBSD&lt;/a&gt; fue elegido como
nuestra base para el hard-forking porque es un sistema que
siempre ha tenido en cuenta el código de calidad y la seguridad.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Algunas de sus ideas que nos interesaron enormemente fueron las
nuevas llamadas al sistema, incluidas pledge y unveil, que agrega
un endurecimiento adicional al espacio del usuario y la eliminación
de la herramienta de aplicación de políticas del sistema systrace.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;También son conocidos por &lt;a href="https://www.xenocara.org/"&gt;Xenocara&lt;/a&gt;
y &lt;a href="https://www.libressl.org/"&gt;LibreSSL&lt;/a&gt;, los cuales ya
habíamos estado usando después de portarlos a GNU/Linux-libre.
Los encontramos bien escritos y generalmente más estables que
Xorg/OpenSSL respectivamente.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Ninguna de las otras implementaciones de BSD que conocemos tiene
ese nivel de seguridad. También sabíamos que &lt;a href="https://libertybsd.net/"&gt;LibertyBSD&lt;/a&gt;
ha estado trabajando para liberar el kernel de OpenBSD, lo
que nos permitió usar sus parches para comenzar el
desarrollo inicial.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="por-que-bifurcar-el-kernel-en-primer-lugar-como-mantendra-actualizado-el-nuevo-kernel-con-soporte-de-hardware-mas-nuevo"&gt;¿Por qué bifurcar el kernel en primer lugar? ¿Cómo mantendrá actualizado el nuevo kernel con soporte de hardware más nuevo?&lt;a class="headerlink" href="#por-que-bifurcar-el-kernel-en-primer-lugar-como-mantendra-actualizado-el-nuevo-kernel-con-soporte-de-hardware-mas-nuevo" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;El kernel es una de las partes más importantes de
cualquier sistema operativo, y consideramos que es fundamental
comenzar con una base firme para avanzar.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Para la primera versión, planeamos mantenernos sincronizados
con OpenBSD donde sea posible. En futuras versiones, podemos adaptar
el código de otros BSD e incluso el kernel Linux donde sea necesario
para mantenernos al día con el soporte y las características
del hardware.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Estamos trabajando en coordinación con &lt;a href="https://en.libreware.info/"&gt;Libreware Group&lt;/a&gt;
(nuestro representante para actividades comerciales) y
tenemos planes de abrir nuestra fundación pronto.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Esto ayudará a mantener el desarrollo, contratar futuros desarrolladores
y alentar a los nuevos entusiastas a obtener soporte y código de hardware
más nuevos. Sabemos que el desbloqueo no es suficiente porque es
una mitigación, no una solución para nosotros. Entonces, por esa
razón, necesitamos mejorar nuestra estructura y pasar a la siguiente
etapa de desarrollo de nuestros proyectos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="usted-declara-que-planea-reemplazar-las-partes-del-kernel-de-openbsd-y-el-espacio-de-usuario-que-no-son-compatibles-con-gpl-o-que-no-son-libres-con-los-que-si-lo-son-que-porcentaje-del-codigo-cae-en-la-zona-no-gpl"&gt;Usted declara que planea reemplazar las partes del kernel de OpenBSD y el espacio de usuario que no son compatibles con GPL o que no son libres con los que sí lo son. ¿Qué porcentaje del código cae en la zona no GPL?&lt;a class="headerlink" href="#usted-declara-que-planea-reemplazar-las-partes-del-kernel-de-openbsd-y-el-espacio-de-usuario-que-no-son-compatibles-con-gpl-o-que-no-son-libres-con-los-que-si-lo-son-que-porcentaje-del-codigo-cae-en-la-zona-no-gpl" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Es alrededor del 20% en el núcleo de OpenBSD y el espacio de usuario.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;En su mayoría, las partes con licencia no compatibles con GPL están bajo la
licencia BSD original, a veces llamada la "licencia BSD de 4 cláusulas"
que contiene una falla grave: la cláusula "obnoxious BSD advertising".
No es fatal, pero nos causa problemas prácticos porque genera
incompatibilidad con nuestro código y desarrollo futuro bajo GPLv3 y LGPLv3.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Los archivos no libres en OpenBSD incluyen archivos sin un encabezado
de licencia apropiado, o sin una licencia en la carpeta que contiene
un componente en particular.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Si esos archivos no contienen una licencia para dar a los usuarios las
cuatro libertades esenciales o si no se ha agregado explícitamente en el
dominio público, no es software libre. Algunos desarrolladores piensan
que el código sin licencia está automáticamente en el dominio público.
Eso no es cierto según la ley de derechos de autor de hoy; más bien,
todos los trabajos con derechos de autor tienen derechos de autor
por defecto.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Los blobs de firmware no libres en OpenBSD incluyen varios firmwares
de hardware. Estos blobs de firmware también se producen en el kernel
de Linux y han sido eliminados manualmente por el Linux-libre project
durante años después de cada nueva versión del kernel.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Por lo general, tienen la forma de un binario codificado hexadecimal
y se proporcionan a los desarrolladores del kernel sin fuente para
proporcionar soporte para hardware de diseño exclusivo. Estos blobs
pueden contener vulnerabilidades o puertas traseras además de violar
su libertad, pero nadie lo sabría ya que el código fuente no está
disponible para ellos. Deben eliminarse para respetar la
libertad del usuario.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="estaba-hablando-con-alguien-sobre-hyperbolabsd-y-mencionaron-hardenedbsd-has-considerado-hardenedbsd"&gt;Estaba hablando con alguien sobre HyperbolaBSD y mencionaron &lt;a href="https://hardenedbsd.org/"&gt;HardenedBSD&lt;/a&gt;. ¿Has considerado HardenedBSD?&lt;a class="headerlink" href="#estaba-hablando-con-alguien-sobre-hyperbolabsd-y-mencionaron-hardenedbsd-has-considerado-hardenedbsd" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Hemos investigado HardenedBSD, pero fue bifurcado de FreeBSD.
FreeBSD tiene una base de código mucho más grande. Si bien
HardenedBSD es probablemente un buen proyecto, requeriría mucho
más esfuerzo para desbloquear y verificar las licencias de
todos los archivos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Decidimos usar OpenBSD como base para bifurcar en lugar de
FreeBSD debido a su compromiso anterior con la calidad
del código, la seguridad y el minimalismo.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="usted-menciono-uxp-o-plataforma-xul-unificada-parece-que-esta-utilizando-el-fork-de-moonchild-de-la-base-de-codigo-pre-servo-mozilla-para-escribir-un-conjunto-de-aplicaciones-para-la-web-es-por-el-tamano-de-la-misma"&gt;Usted mencionó UXP (o &lt;a href="http://thereisonlyxul.org/"&gt;plataforma XUL unificada&lt;/a&gt;). Parece que está utilizando el &lt;a href="https://github.com/MoonchildProductions/UXP"&gt;fork de Moonchild de la base de código pre-Servo Mozilla&lt;/a&gt; para escribir un conjunto de aplicaciones para la web. ¿Es por el tamaño de la misma?&lt;a class="headerlink" href="#usted-menciono-uxp-o-plataforma-xul-unificada-parece-que-esta-utilizando-el-fork-de-moonchild-de-la-base-de-codigo-pre-servo-mozilla-para-escribir-un-conjunto-de-aplicaciones-para-la-web-es-por-el-tamano-de-la-misma" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Sí. Nuestra decisión de usar UXP fue por varias razones.
Ya estuvimos renombrando Firefox como Iceweasel durante varios
años para eliminar DRM, deshabilitar la telemetría y aplicar
opciones de privacidad preestablecidas. Sin embargo, se hizo cada
vez más difícil para nosotros mantenerlo cuando Mozilla seguía
agregando anti-funciones, eliminando la personalización del usuario
y rompiendo rápidamente nuestros parches de cambio de marca y privacidad.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Después de FF52, todas las extensiones XUL se eliminaron a favor
de WebExt y Rust se hizo dependencia en el momento de la compilación.
Mantenemos varios complementos XUL para mejorar la privacidad/seguridad
del usuario que ya no funcionaría en el nuevo motor.
También nos preocupaba que los complementos limitados de WebExt
presentaran problemas de privacidad adicionales. Por ejemplo:
cada complemento WebExt instalado contiene un UUID que se puede
utilizar para identificar de forma única y precisa a los usuarios
(consulte Bugzilla &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1372288"&gt;1372288&lt;/a&gt;).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Después de un poco de investigación, descubrimos UXP y que
regularmente se mantiene al día con las correcciones de seguridad
sin apresurarse a implementar nuevas funciones. Ya habían
deshabilitado la telemetría en el kit de herramientas y siguen
comprometidos a eliminarlo de la base de código.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Sabíamos que esto estaba bien alineado con nuestros objetivos,
pero aún necesitábamos aplicar algunos parches para ajustar la
configuración de privacidad y eliminar DRM. Por lo tanto,
comenzamos a escribir nuestras propias aplicaciones en la parte
superior del kit de herramientas.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Esto nos ha permitido ir mucho más allá del rebranding/deblobbing
básico como lo hacíamos antes y escribir nuestras propias aplicaciones
XUL totalmente personalizadas. Actualmente mantenemos
&lt;a href="https://wiki.hyperbola.info/doku.php?id=en:project:iceweasel-uxp"&gt;Iceweasel-UXP&lt;/a&gt;,
&lt;a href="https://wiki.hyperbola.info/doku.php?id=en:project:icedove-uxp"&gt;Icedove-UXP&lt;/a&gt;
e &lt;a href="https://wiki.hyperbola.info/doku.php?id=en:project:iceape-uxp"&gt;Iceape-UXP&lt;/a&gt;,
además de compartir las mejoras del kit de herramientas de regreso a UXP.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="en-una-publicacion-del-foro-note-menciones-de-hyperrc-hyperblibc-e-hyperman-son-estos-forks-o-reescrituras-de-herramientas-bsd-actuales-compatibles-con-gpl"&gt;En una &lt;a href="https://forums.hyperbola.info/viewtopic.php?id=315"&gt;publicación del foro&lt;/a&gt;, noté menciones de HyperRC, HyperBLibC e hyperman. ¿Son estos forks o reescrituras de herramientas BSD actuales compatibles con GPL?&lt;a class="headerlink" href="#en-una-publicacion-del-foro-note-menciones-de-hyperrc-hyperblibc-e-hyperman-son-estos-forks-o-reescrituras-de-herramientas-bsd-actuales-compatibles-con-gpl" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Son forks de proyectos existentes.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Hyperman es un fork de nuestro actual administrador de paquetes, pacman.
Como pacman no funciona actualmente en BSD, y el soporte mínimo que tenía
en el pasado se eliminó en versiones recientes, se requería un fork.
Hyperman ya tiene una implementación funcional con el soporte de LibreSSL y BSD.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;HyperRC será una versión parcheada de OpenRC init. HyperBLibC será un fork de BSD LibC.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="desde-el-principio-de-los-tiempos-linux-ha-defendido-la-licencia-gpl-y-bsd-ha-defendido-la-licencia-bsd-ahora-esta-trabajando-para-escribir-un-bsd-con-licencia-gpl-como-responderia-a-aquellos-en-la-comunidad-bsd-que-no-estan-de-acuerdo-con-este-movimiento"&gt;Desde el principio de los tiempos, Linux ha defendido la licencia GPL y BSD ha defendido la licencia BSD. Ahora, está trabajando para escribir un BSD con licencia GPL. ¿Cómo respondería a aquellos en la comunidad BSD que no están de acuerdo con este movimiento?&lt;a class="headerlink" href="#desde-el-principio-de-los-tiempos-linux-ha-defendido-la-licencia-gpl-y-bsd-ha-defendido-la-licencia-bsd-ahora-esta-trabajando-para-escribir-un-bsd-con-licencia-gpl-como-responderia-a-aquellos-en-la-comunidad-bsd-que-no-estan-de-acuerdo-con-este-movimiento" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Somos conscientes de que hay desacuerdos entre el mundo
GPL y BSD. Incluso hay desacuerdos sobre llamar a nuestra distribución
anterior "GNU/Linux" en lugar de simplemente "Linux", ya que la última
definición ignora que el espacio de usuario de GNU fue escrito en 1984,
varios años antes de que Linus Torvalds escribiera el kernel Linux.
Fueron los dos software diferentes combinados los que formaron un
sistema completo.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Algunas de las principales diferencias con respecto a BSD,
es que la GPL requiere que nuestro código fuente se haga público,
incluidas las versiones futuras, y que solo se pueda usar junto
con archivos con licencia compatible. Los sistemas BSD no tienen
que compartir su código fuente públicamente, y pueden agruparse
con varias licencias y software no libre sin restricciones.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Dado que apoyamos firmemente el Movimiento de Software Libre y
deseamos que nuestro código futuro permanezca siempre en el
espacio público, elegimos la GPL.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="se-que-en-este-momento-recien-esta-comenzando-el-proceso-pero-tiene-alguna-idea-de-quien-podria-tener-una-version-utilizable-de-hyperbolabsd-disponible"&gt;Sé que en este momento recién está comenzando el proceso, pero ¿tiene alguna idea de quién podría tener una versión utilizable de HyperbolaBSD disponible?&lt;a class="headerlink" href="#se-que-en-este-momento-recien-esta-comenzando-el-proceso-pero-tiene-alguna-idea-de-quien-podria-tener-una-version-utilizable-de-hyperbolabsd-disponible" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Esperamos tener una versión alfa lista para 2021 (Q3)
para la prueba inicial.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="cuanto-tiempo-continuara-admitiendo-la-version-actual-de-hyperbola-para-linux-sera-facil-para-los-usuarios-actuales-cambiar"&gt;¿Cuánto tiempo continuará admitiendo la versión actual de Hyperbola para Linux? ¿Será fácil para los usuarios actuales cambiar?&lt;a class="headerlink" href="#cuanto-tiempo-continuara-admitiendo-la-version-actual-de-hyperbola-para-linux-sera-facil-para-los-usuarios-actuales-cambiar" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Según nuestro anuncio, continuaremos admitiendo
Hyperbola GNU/Linux-libre hasta 2022 (Q4). Esperamos que haya
alguna dificultad en la migración debido a los cambios de ABI,
pero prepararemos un anuncio e información en nuestro wiki una
vez que esté listo.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="si-alguien-esta-interesado-en-ayudarlo-a-trabajar-en-hyperbolabsd-como-puede-hacerlo-que-tipo-de-experiencia-estarias-buscando"&gt;Si alguien está interesado en ayudarlo a trabajar en HyperbolaBSD, ¿cómo puede hacerlo? ¿Qué tipo de experiencia estarías buscando?&lt;a class="headerlink" href="#si-alguien-esta-interesado-en-ayudarlo-a-trabajar-en-hyperbolabsd-como-puede-hacerlo-que-tipo-de-experiencia-estarias-buscando" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Cualquiera que esté interesado y pueda aprender es
bienvenido. Necesitamos programadores y usuarios de C que
estén interesados en mejorar la seguridad y la privacidad del
software. Los desarrolladores deben seguir los principios FSDG
de desarrollo de software libre, así como el principio YAGNI,
lo que significa que implementaremos nuevas funciones solo
cuando las necesitemos.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Los usuarios pueden bifurcar nuestro repositorio git y
enviarnos parches para su inclusión.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="tienes-algun-plan-para-soportar-zfs-que-sistemas-de-archivos-admitiran"&gt;¿Tienes algún plan para soportar ZFS? ¿Qué sistemas de archivos admitirán?&lt;a class="headerlink" href="#tienes-algun-plan-para-soportar-zfs-que-sistemas-de-archivos-admitiran" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;El soporte de &lt;a href="https://itsfoss.com/what-is-zfs/"&gt;ZFS&lt;/a&gt;
no está planeado actualmente, porque usa la Licencia de
Desarrollo y Distribución Común, versión 1.0 (CDDL).
Esta licencia es incompatible con todas las versiones
de la GNU General Public License (GPL).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Sería posible escribir un nuevo código bajo GPLv3 y
liberarlo con un nuevo nombre (por ejemplo, HyperZFS),
sin embargo, no hay una decisión oficial de incluir el
código de compatibilidad ZFS en HyperbolaBSD en este momento.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Tenemos planes de portar BTRFS, JFS2, CHFS de NetBSD, HAMMER/HAMMER2
de DragonFlyBSD y JFFS2 del kernel Linux, todos los cuales tienen
licencias compatibles con GPLv3. A largo plazo, también podemos
admitir Ext4, F2FS, ReiserFS y Reiser4, pero deberán reescribirse
debido a que tienen licencia exclusiva bajo GPLv2, que no permite
su uso con GPLv3. Todos estos sistemas de archivos requerirán
pruebas de desarrollo y estabilidad, por lo que estarán en versiones
posteriores de HyperbolaBSD y no para nuestras versiones
estables iniciales.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Me gustaría agradecer a &lt;a href="https://www.hyperbola.info/members/founders/#Emulatorman"&gt;André Silva&lt;/a&gt;
por tomarse el tiempo para responder mis preguntas y por revelar
más sobre el futuro de HyperbolaBSD.&lt;/p&gt;
&lt;p&gt;¿Qué piensa usted sobre Hyperbola para cambiar a un kernel BSD?
¿Qué opinas sobre un BSD lanzado bajo la GPL? Por favor háznoslo
saber en los comentarios más abajo.&lt;/p&gt;
&lt;p&gt;Fuente: &lt;a href="https://itsfoss.com/hyperbola-linux-bsd/"&gt;https://itsfoss.com/hyperbola-linux-bsd/&lt;/a&gt;&lt;/p&gt;</content><category term="Hyperbola"></category><category term="HyperbolaBSD"></category><category term="Entrevista"></category></entry><entry><title>HyperbolaBSD interview</title><link href="https://conocimientoslibres.tuxfamily.org/en/interview-about-hyperbolabsd/" rel="alternate"></link><published>2020-01-17T07:32:00+01:00</published><updated>2020-01-17T07:32:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2020-01-17:/en/interview-about-hyperbolabsd/</id><summary type="html">&lt;p&gt;In late December 2019, Hyperbola announced that they would be
making major changes to their project. They have decided to
drop the Linux kernel in favor of forking the OpenBSD kernel.
This announcement only came months after Project Trident
announced that they were going in the opposite direction
(from BSD …&lt;/p&gt;</summary><content type="html">&lt;p&gt;In late December 2019, Hyperbola announced that they would be
making major changes to their project. They have decided to
drop the Linux kernel in favor of forking the OpenBSD kernel.
This announcement only came months after Project Trident
announced that they were going in the opposite direction
(from BSD to GNU/Linux).&lt;/p&gt;
&lt;p&gt;Hyperbola also plans to replace all software that
is not GPL v3 compliant with new versions that are.&lt;/p&gt;
&lt;p&gt;To get more insight into the future of their new project,
I interviewed Andre, co-founder of Hyperbola.&lt;/p&gt;
&lt;h3 id="why-hyperbola-gnulinux-turned-into-hyperbola-bsd"&gt;Why Hyperbola GNU/Linux Turned into Hyperbola BSD?&lt;a class="headerlink" href="#why-hyperbola-gnulinux-turned-into-hyperbola-bsd" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="in-your-announcement-you-state-that-the-linux-kernel-is-rapidly-proceeding-down-an-unstable-path-could-you-explain-what-you-mean-by-that"&gt;In your announcement, you state that the Linux kernel is “rapidly proceeding down an unstable path”. Could you explain what you mean by that?&lt;a class="headerlink" href="#in-your-announcement-you-state-that-the-linux-kernel-is-rapidly-proceeding-down-an-unstable-path-could-you-explain-what-you-mean-by-that" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;First of all, it's including the adaption of DRM features such as
&lt;a href="https://patchwork.kernel.org/patch/10084131/"&gt;HDCP&lt;/a&gt;
(High-bandwidth Digital Content Protection). Currently there is
an option to disable it at build time, however there isn't a
policy that guarantees us that it will be optional forever.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Historically, some features began as optional ones until they
reached total functionality. Then they became forced and
difficult to patch out. Even if this does not happen in
the case of HDCP, we remain cautious about such
implementations.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Another of the reasons is that the Linux kernel is no longer getting
proper hardening. &lt;a href="https://grsecurity.net/"&gt;Grsecurity&lt;/a&gt;
stopped offering public patches several
years ago, and we depended on that for our system’s security.
Although we could use their patches still for a very expensive
subscription, the subscription would be terminated if we
chose to make those patches public.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Such restrictions goes against the FSDG principles that
require us to provide full source code, deblobbed,
and unrestricted, to our users.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project"&gt;KSPP&lt;/a&gt;
is a project that was intended to upstream Grsec into the kernel, but
thus far it has not come close to reaching Grsec/PaX level of kernel
hardening. There also has not been many recent developments,
which leads us to believe it is now an inactive project
for the most part.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Lastly, the interest in
&lt;a href="https://lwn.net/Articles/797828/"&gt;allowing Rust modules&lt;/a&gt;
into the kernel are a problem for us, due to Rust trademark
restrictions which prevent us from applying patches in
our distribution without express permission.
We patch to remove non-free software, unlicensed files,
and enhancements to user-privacy anywhere it is applicable.
We also expect our users to be able to re-use our code
without any additional restrictions or permission required.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;This is also in part why we use UXP, a fully free browser
engine and application toolkit without Rust,
for our mail and browser applications.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Due to these restrictions, and the concern that it
may at some point become a forced build-time
dependency for the kernel we needed another option.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="you-also-said-in-the-announcement-that-you-would-be-forking-the-openbsd-kernel-why-did-you-pick-the-openbsd-kennel-over-the-freebsd-the-dragonflybsd-kernel-or-the-midnightbsd-kernel"&gt;You also said in the announcement that you would be forking the OpenBSD kernel. Why did you pick the OpenBSD kennel over the FreeBSD, the DragonflyBSD kernel or the MidnightBSD kernel?&lt;a class="headerlink" href="#you-also-said-in-the-announcement-that-you-would-be-forking-the-openbsd-kernel-why-did-you-pick-the-openbsd-kennel-over-the-freebsd-the-dragonflybsd-kernel-or-the-midnightbsd-kernel" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://www.openbsd.org/"&gt;OpenBSD&lt;/a&gt; was chosen as our base
for hard-forking because it’s a system that
has always had quality code and security in mind.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Some of their ideas which greatly interested us were
new system calls, including pledge and unveil which
adds additional hardening to userspace and the
removal of the systrace system policy-enforcement tool.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;They also are known for &lt;a href="https://www.xenocara.org/"&gt;Xenocara&lt;/a&gt;
and &lt;a href="https://www.libressl.org/"&gt;LibreSSL&lt;/a&gt;, both of which
we had already been using after porting them to
&lt;a href="https://en.wikipedia.org/wiki/Linux-libre"&gt;GNU/Linux-libre&lt;/a&gt;.
We found them to be well written and generally more
stable than Xorg/OpenSSL respectively.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;None of the other BSD implementations we are aware of
have that level of security. We also were aware
&lt;a href="https://libertybsd.net/"&gt;LibertyBSD&lt;/a&gt; has been working
on liberating the OpenBSD kernel,
which allowed us to use their patches
to begin the initial development.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="why-fork-the-kernel-in-the-first-place-how-will-you-keep-the-new-kernel-up-to-date-with-newer-hardware-support"&gt;Why fork the kernel in the first place? How will you keep the new kernel up-to-date with newer hardware support?&lt;a class="headerlink" href="#why-fork-the-kernel-in-the-first-place-how-will-you-keep-the-new-kernel-up-to-date-with-newer-hardware-support" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The kernel is one of the most important parts of any
operating system, and we felt it is critical to start
on a firm foundation moving forward.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;For the first version we plan to keep in synchronization with
OpenBSD where it is possible. In future versions we may
adapt code from other BSDs and even the Linux kernel
where needed to keep up with hardware support and features.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;We are working in coordination with
&lt;a href="https://en.libreware.info/"&gt;Libreware Group&lt;/a&gt;
(our representative for business activities)
and have plans to open our foundation soon.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;This will help to sustain development, hire future
developers and encourage new enthusiasts for
newer hardware support and code. We know that
deblobbing isn't enough because it's a mitigation,
not a solution for us. So, for that reason, we need
to improve our structure and go to the next stage
of development for our projects.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="you-state-that-you-plan-to-replace-the-parts-of-the-openbsd-kernel-and-userspace-that-are-not-gpl-compatible-or-non-free-with-those-that-are-what-percentage-of-the-code-falls-into-the-non-gpl-zone"&gt;You state that you plan to replace the parts of the OpenBSD kernel and userspace that are not GPL compatible or non-free with those that are. What percentage of the code falls into the non-GPL zone?&lt;a class="headerlink" href="#you-state-that-you-plan-to-replace-the-parts-of-the-openbsd-kernel-and-userspace-that-are-not-gpl-compatible-or-non-free-with-those-that-are-what-percentage-of-the-code-falls-into-the-non-gpl-zone" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It's around 20% in the OpenBSD kernel and userspace.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Mostly, the non-GPL compatible licensed parts are under the Original
BSD license, sometimes called the "4-clause BSD license" that
contains a serious flaw: the "obnoxious BSD advertising clause".
It isn't fatal, but it does cause practical problems for us because
it generates incompatibility with our code and future development
under GPLv3 and LGPLv3.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;The non-free files in OpenBSD include files without an
appropriate license header, or without a license in the
folder containing a particular component.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;If those files don't contain a license to give users the four
essential freedoms or if it has not been explicitly added in the
public domain, it isn't free software. Some developers think
that code without a license is automatically in the public domain.
That isn't true under today's copyright law; rather,
all copyrightable works are copyrighted by default.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;The non-free firmware blobs in OpenBSD include various hardware
firmwares. These firmware blobs occur in Linux kernel also and
have been manually removed by the Linux-libre project for years
following each new kernel release.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;They are typically in the form of a hex encoded binary and are
provided to kernel developers without source in order to
provide support for proprietary-designed hardware.
These blobs may contain vulnerabilities or backdoors in addition
to violating your freedom, but no one would know since the
source code is not available for them.
They must be removed to respect user freedom.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="i-was-talking-with-someone-about-hyperbolabsd-and-they-mentioned-hardenedbsd-have-you-considered-hardenedbsd"&gt;I was talking with someone about HyperbolaBSD and they mentioned &lt;a href="https://hardenedbsd.org/"&gt;HardenedBSD&lt;/a&gt;. Have you considered HardenedBSD?&lt;a class="headerlink" href="#i-was-talking-with-someone-about-hyperbolabsd-and-they-mentioned-hardenedbsd-have-you-considered-hardenedbsd" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;We had looked into HardenedBSD, but it was forked from FreeBSD.
FreeBSD has a much larger codebase. While HardenedBSD is
likely a good project, it would require much more effort
for us to deblob and verify licenses of all files.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;We decided to use OpenBSD as a base to fork from instead
of FreeBSD due to their past commitment to code quality,
security, and minimalism.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="you-mentioned-uxp-or-unified-xul-platform-it-appears-that-you-are-using-moonchilds-fork-of-the-pre-servo-mozilla-codebase-to-create-a-suite-of-applications-for-the-web-is-that-about-the-size-of-it"&gt;You mentioned UXP (or &lt;a href="http://thereisonlyxul.org/"&gt;Unified XUL Platform&lt;/a&gt;). It appears that you are using &lt;a href="https://github.com/MoonchildProductions/UXP"&gt;Moonchild's fork of the pre-Servo Mozilla&lt;/a&gt; codebase to create a suite of applications for the web. Is that about the size of it?&lt;a class="headerlink" href="#you-mentioned-uxp-or-unified-xul-platform-it-appears-that-you-are-using-moonchilds-fork-of-the-pre-servo-mozilla-codebase-to-create-a-suite-of-applications-for-the-web-is-that-about-the-size-of-it" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Yes. Our decision to use UXP was for several reasons.
We were already rebranding Firefox as Iceweasel for
several years to remove DRM, disable telemetry,
and apply preset privacy options. However, it became
harder and harder for us to maintain when Mozilla
kept adding anti-features, removing user customization,
and rapidly breaking our rebranding and privacy patches.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;After FF52, all XUL extensions were removed in favor
of WebExt and Rust became enforced at compile time.
We maintain several XUL addons to enhance
user-privacy/security which would no longer work
in the new engine. We also were concerned that
the feature limited WebExt addons were introducing
additional privacy issues. E.g. each installed
WebExt addon contains a UUID which can be used
to uniquely and precisely identify users
(see Bugzilla &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1372288"&gt;1372288&lt;/a&gt;).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;After some research, we discovered UXP and that it was
regularly keeping up with security fixes without rushing
to implement new features. They had already disabled
telemetry in the toolkit and remain committed to
deleting all of it from the codebase.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;We knew this was well-aligned with our goals, but still
needed to apply a few patches to tweak privacy settings
and remove DRM. Hence, we started creating our own
applications on top of the toolkit.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;This has allowed us to go far beyond basic
rebranding/deblobbing as we were doing before
and create our own fully customized XUL applications.
We currently maintain
&lt;a href="https://wiki.hyperbola.info/doku.php?id=en:project:iceweasel-uxp"&gt;Iceweasel-UXP&lt;/a&gt;,
&lt;a href="https://wiki.hyperbola.info/doku.php?id=en:project:icedove-uxp"&gt;Icedove-UXP&lt;/a&gt;
and &lt;a href="https://wiki.hyperbola.info/doku.php?id=en:project:iceape-uxp"&gt;Iceape-UXP&lt;/a&gt;,
in addition to sharing toolkit improvements back to UXP.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="in-a-forum-post-i-noticed-mentions-of-hyperrc-hyperblibc-and-hyperman-are-these-forks-or-rewrites-of-current-bsd-tools-to-be-gpl-compliant"&gt;In a &lt;a href="https://forums.hyperbola.info/viewtopic.php?id=315"&gt;forum post&lt;/a&gt;, I noticed mentions of HyperRC, HyperBLibC, and hyperman. Are these forks or rewrites of current BSD tools to be GPL compliant?&lt;a class="headerlink" href="#in-a-forum-post-i-noticed-mentions-of-hyperrc-hyperblibc-and-hyperman-are-these-forks-or-rewrites-of-current-bsd-tools-to-be-gpl-compliant" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;They are forks of existing projects.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Hyperman is a fork of our current package manager, pacman.
As pacman does not currently work on BSD, and the minimal
support it had in the past was removed in recent versions,
a fork was required. Hyperman already has a working
implementation using LibreSSL and BSD support.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;HyperRC will be a patched version of OpenRC init. HyperBLibC will be a fork from BSD LibC.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="since-the-beginning-of-time-linux-has-championed-the-gpl-license-and-bsd-has-championed-the-bsd-license-now-you-are-working-to-create-a-bsd-that-is-gpl-licensed-how-would-you-respond-to-those-in-the-bsd-community-who-dont-agree-with-this-move"&gt;Since the beginning of time, Linux has championed the GPL license and BSD has championed the BSD license. Now, you are working to create a BSD that is GPL licensed. How would you respond to those in the BSD community who don’t agree with this move?&lt;a class="headerlink" href="#since-the-beginning-of-time-linux-has-championed-the-gpl-license-and-bsd-has-championed-the-bsd-license-now-you-are-working-to-create-a-bsd-that-is-gpl-licensed-how-would-you-respond-to-those-in-the-bsd-community-who-dont-agree-with-this-move" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;We are aware that there are disagreements between the GPL
and BSD world. There are even disagreements over calling
our previous distribution "GNU/Linux" rather than simply
"Linux", since the latter definition ignores that the
GNU userspace was created in 1984, several years prior
to the Linux kernel being created by Linus Torvalds.
It was the two different software combined that make
a complete system.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Some of the primary differences from BSD, is that the GPL
requires that our source code must be made public,
including future versions, and that it can only be used
in tandem with compatibly licensed files. BSD systems
do not have to share their source code publicly,
and may bundle themselves with various licenses
and non-free software without restriction.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Since we are strong supporters of the
Free Software Movement and wish that our future
code remain in the public space always, we chose the GPL.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="i-know-at-this-point-you-are-just-starting-the-process-but-do-you-have-any-idea-who-you-might-have-a-usable-version-of-hyperbolabsd-available"&gt;I know at this point you are just starting the process, but do you have any idea who you might have a usable version of HyperbolaBSD available?&lt;a class="headerlink" href="#i-know-at-this-point-you-are-just-starting-the-process-but-do-you-have-any-idea-who-you-might-have-a-usable-version-of-hyperbolabsd-available" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;We expect to have an alpha release ready by 2021 (Q3)
for initial testing.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="how-long-will-you-continue-to-support-the-current-linux-version-of-hyperbola-will-it-be-easy-for-current-users-to-switch-over-to"&gt;How long will you continue to support the current Linux version of Hyperbola? Will it be easy for current users to switch over to?&lt;a class="headerlink" href="#how-long-will-you-continue-to-support-the-current-linux-version-of-hyperbola-will-it-be-easy-for-current-users-to-switch-over-to" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;As per our announcement, we will continue to support
Hyperbola GNU/Linux-libre until 2022 (Q4).
We expect there to be some difficulty in migration
due to ABI changes, but will prepare an announcement
and information on our wiki once it is ready.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="if-someone-is-interested-in-helping-you-work-on-hyperbolabsd-how-can-they-go-about-doing-that-what-kind-of-expertise-would-you-be-looking-for"&gt;If someone is interested in helping you work on HyperbolaBSD, how can they go about doing that? What kind of expertise would you be looking for?&lt;a class="headerlink" href="#if-someone-is-interested-in-helping-you-work-on-hyperbolabsd-how-can-they-go-about-doing-that-what-kind-of-expertise-would-you-be-looking-for" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Anyone who is interested and able to learn is welcome.
We need C programmers and users who are interested in
improving security and privacy in software.
Developers need to follow the FSDG principles of free
software development, as well as the YAGNI principle
which means we will implement new features only as
we need them.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;Users can fork our git repository and submit
patches to us for inclusion.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;It's FOSS,&lt;/strong&gt;&lt;/p&gt;
&lt;h6 id="do-you-have-any-plans-to-support-zfs-what-filesystems-will-you-support"&gt;Do you have any plans to support ZFS? What filesystems will you support?&lt;a class="headerlink" href="#do-you-have-any-plans-to-support-zfs-what-filesystems-will-you-support" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;p&gt;&lt;strong&gt;André Silva,&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://itsfoss.com/what-is-zfs/"&gt;ZFS&lt;/a&gt;
support is not currently planned,
because it uses the Common Development
and Distribution License, version 1.0 (CDDL).
This license is incompatible with all
versions of the GNU General Public License (GPL).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;It would be possible to write new code under GPLv3
and release it under a new name (eg. HyperZFS),
however there is no official decision to include
ZFS compatibility code in HyperbolaBSD at this time.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!--- --&gt;

&lt;blockquote&gt;
&lt;p&gt;We have plans on porting BTRFS, JFS2, NetBSD's CHFS,
DragonFlyBSD's HAMMER/HAMMER2 and the Linux kernel's
JFFS2, all of which have licenses compatible
with GPLv3. Long term, we may also support Ext4,
F2FS, ReiserFS and Reiser4, but they will need
to be rewritten due to being licensed exclusively
under GPLv2, which does not allow use with GPLv3.
All of these file systems will require development
and stability testing, so they will be in later
HyperbolaBSD releases and not for our
initial stable version(s).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I would like to thank &lt;a href="https://www.hyperbola.info/members/founders/#Emulatorman"&gt;André Silva&lt;/a&gt;
for taking the time to answer my questions and
for revealing more about the future of HyperbolaBSD.&lt;/p&gt;
&lt;p&gt;What are your thoughts on Hyperbola switching to a BSD kernel?
What do you think about a BSD being released under the GPL?
Please let us know in the comments below.&lt;/p&gt;
&lt;p&gt;Source: &lt;a href="https://itsfoss.com/hyperbola-linux-bsd/"&gt;https://itsfoss.com/hyperbola-linux-bsd/&lt;/a&gt;&lt;/p&gt;</content><category term="Hyperbola"></category><category term="HyperbolaBSD"></category><category term="Entrevista"></category></entry><entry><title>Guia de instalación de Hyperbola [Modo Legacy/MBR-DOS]</title><link href="https://conocimientoslibres.tuxfamily.org/guia-de-instalacion-de-hyperbola/" rel="alternate"></link><published>2019-11-11T08:41:00+01:00</published><updated>2019-11-11T08:41:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2019-11-11:/guia-de-instalacion-de-hyperbola/</id><summary type="html">
&lt;p&gt;Primero debemos construir una unidad de instalación de Hyperbola,
puede ser en una memoria &lt;a href="https://wiki.hyperbola.info/doku.php?id=es:guide:beginners#write_the_image_to_your_usb" rel="noopener noreferrer" target="_blank"&gt;USB&lt;/a&gt;
o en &lt;a href="https://wiki.hyperbola.info/doku.php?id=es:guide:beginners#burn_the_image_to_your_optical_disk" rel="noopener noreferrer" target="_blank"&gt;CD&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;También existe un &lt;a href="https://lablibre.tuxfamily.org/hyperbola-gnu-linux-libre-base/" rel="noopener noreferrer" target="_blank"&gt;vídeo de instalación&lt;/a&gt;
que se irá actualizando.&lt;/p&gt;
&lt;h3 id="primeros-pasos"&gt;Primeros pasos&lt;a class="headerlink" href="#primeros-pasos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Configuración teclado temporal&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;loadkeys es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Comprobamos si hay conexión a Internet&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ping -c &lt;span class="m"&gt;3&lt;/span&gt; gnu.org
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Particionar disco&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;cfdisk
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;En …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">
&lt;p&gt;Primero debemos construir una unidad de instalación de Hyperbola,
puede ser en una memoria &lt;a href="https://wiki.hyperbola.info/doku.php?id=es:guide:beginners#write_the_image_to_your_usb" rel="noopener noreferrer" target="_blank"&gt;USB&lt;/a&gt;
o en &lt;a href="https://wiki.hyperbola.info/doku.php?id=es:guide:beginners#burn_the_image_to_your_optical_disk" rel="noopener noreferrer" target="_blank"&gt;CD&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;También existe un &lt;a href="https://lablibre.tuxfamily.org/hyperbola-gnu-linux-libre-base/" rel="noopener noreferrer" target="_blank"&gt;vídeo de instalación&lt;/a&gt;
que se irá actualizando.&lt;/p&gt;
&lt;h3 id="primeros-pasos"&gt;Primeros pasos&lt;a class="headerlink" href="#primeros-pasos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Configuración teclado temporal&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;loadkeys es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Comprobamos si hay conexión a Internet&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ping -c &lt;span class="m"&gt;3&lt;/span&gt; gnu.org
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Particionar disco&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;cfdisk
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;En el caso de la partición elegida como &lt;strong&gt;swap&lt;/strong&gt; ir a la opción "Type" y seleccionar &lt;strong&gt;82 (Linux swap)&lt;/strong&gt; de la lista.&lt;/li&gt;
&lt;li&gt;En el caso de la partición elegida como &lt;strong&gt;/boot&lt;/strong&gt;, se selecciona &lt;strong&gt;"bootable"&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ejemplo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;sda1&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/boot
&lt;span class="nv"&gt;sda2&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/
&lt;span class="nv"&gt;sda3&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/home
&lt;span class="nv"&gt;sda4&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;swap

Recomendaciones:
/boot   &lt;span class="o"&gt;=&lt;/span&gt; 300MB
/       &lt;span class="o"&gt;=&lt;/span&gt; 40GB
/home   &lt;span class="o"&gt;=&lt;/span&gt; personalizado
&lt;span class="nv"&gt;swap&lt;/span&gt;    &lt;span class="o"&gt;=&lt;/span&gt; igual a la RAM
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="conexion-por-wi-fi"&gt;Conexión por Wi-fi&lt;a class="headerlink" href="#conexion-por-wi-fi" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Detectar &lt;code&gt;wifi&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;iw dev
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Activar dispositivo de Red&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ip link &lt;span class="nb"&gt;set&lt;/span&gt; &amp;lt;nombre-del-dispositivo&amp;gt; up
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Activar Internet con &lt;code&gt;wpa_supplicant&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;wpa_supplicant -B -i &amp;lt;nombre-de-dispositivo&amp;gt; -c &amp;lt;&lt;span class="o"&gt;(&lt;/span&gt;wpa_passphrase &lt;span class="s2"&gt;"ssid"&lt;/span&gt; &lt;span class="s2"&gt;"psk"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Renovar IPv4 con &lt;code&gt;dhcpcd&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;dhcpcd &amp;lt;nombre-de-dispositivo&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3 id="formateo-de-particiones"&gt;Formateo de Particiones&lt;a class="headerlink" href="#formateo-de-particiones" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;En &lt;code&gt;/boot&lt;/code&gt; se utilizará &lt;strong&gt;ext4&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkfs -t ext4 /dev/sda1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;En &lt;code&gt;/&lt;/code&gt; se utilizará &lt;strong&gt;ext4&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkfs -t ext4 /dev/sda2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;En &lt;code&gt;/home&lt;/code&gt;, se utilizará &lt;strong&gt;ext4&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkfs -t ext4 /dev/sda3
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;En &lt;code&gt;swap&lt;/code&gt;, se utilizará &lt;strong&gt;mkswap&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkswap /dev/sda4
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activamos la partición swap&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;swapon /dev/sda4
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="organizacion-de-particiones"&gt;Organización de Particiones&lt;a class="headerlink" href="#organizacion-de-particiones" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Montamos root en /mnt&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mount /dev/sda2 /mnt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Creamos los directorios de las otras particiones&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;boot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkdir /mnt/boot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;home&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkdir /mnt/home
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Montamos las particiones correspondientes&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Montar boot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mount /dev/sda1 /mnt/boot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Montar home&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mount /dev/sda3 /mnt/home
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="instalacion-del-sistema-base"&gt;Instalación del Sistema Base&lt;a class="headerlink" href="#instalacion-del-sistema-base" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Actualizamos las llaves de la iso:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -Sy hyperbola-keyring
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Instalamos los paquetes base:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacstrap /mnt base base-devel grub-bios wpa_supplicant iw kernel-firmware ldns xenocara-input-synaptics
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Instalar &lt;code&gt;xenocara-input-synaptics&lt;/code&gt; Solo en laptops (ordenadores portátiles)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="configuracion-principal"&gt;Configuración Principal&lt;a class="headerlink" href="#configuracion-principal" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Generar el archivo fstab&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;genfstab -U -p /mnt &amp;gt;&amp;gt; /mnt/etc/fstab
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Efectuar chroot y configurar el sistema base&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;arch-chroot /mnt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Establecer nombre del equipo para esto tenemos que editar el archivo &lt;code&gt;/etc/hostname&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;Ejemplo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; hyperpc &amp;gt; /etc/hostname
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Configurar lugar&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ln -s /usr/share/zoneinfo/America/Lima /etc/localtime
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Actualizar hora del sistema (Opcional)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;hwclock --systohc --utc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Activar nuestra localización, descomentar&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -e &lt;span class="s1"&gt;'s/^#es_ES.UTF-8 UTF-8/es_ES.UTF-8 UTF-8/g'&lt;/span&gt; -i /etc/locale.gen
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Establecer las preferencias de localización&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;LANG&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;es_ES.UTF-8 &amp;gt; /etc/locale.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Generamos la localización&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;locale-gen
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Como la configuración regional, debe configurar el mapa de teclas en el archivo &lt;code&gt;/etc/conf.d/keymaps&lt;/code&gt;.
  Ver lista completa con &lt;code&gt;cat /usr/share/X11/xkb/rules/evdev.lst&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -e &lt;span class="s1"&gt;'s/^keymap="us"/keymap="es"/g'&lt;/span&gt; -i /etc/conf.d/keymaps
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Instalación del Grub&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;grub-install --target&lt;span class="o"&gt;=&lt;/span&gt;i386-pc --recheck /dev/sda
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Creamos el archivo grub.cfg&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;grub-mkconfig -o /boot/grub/grub.cfg
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Editar ramdisk&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/mkinitcpio.conf
&lt;span class="go"&gt;-----------------------------&lt;/span&gt;
&lt;span class="go"&gt;HOOKS="base udev autodetect modconf block filesystems keyboard fsck"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Generar ramdisk&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkinitcpio -p linux-libre-lts
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Establecer contraseña del usuario root&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;passwd
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Configurar &lt;a href="https://wiki.archlinux.org/index.php/WPA_supplicant" rel="noopener noreferrer" target="_blank"&gt;wpa_supplicant&lt;/a&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/wpa_supplicant/wpa_supplicant.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;y dentro:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;ctrl_interface&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/var/run/wpa_supplicant
&lt;span class="nv"&gt;ctrl_interface_group&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;wheel
&lt;span class="nv"&gt;update_config&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;

&lt;span class="nv"&gt;network&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;ssid&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"lynx"&lt;/span&gt;
    &lt;span class="nv"&gt;psk&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"your-pass"&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Agregar a servicio por defecto&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add wpa_supplicant default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://wiki.archlinux.org/index.php/Dhcpcd" rel="noopener noreferrer" target="_blank"&gt;DHCPCD&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Agregar a servicio por defecto&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add dhcpcd default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cerrar chroot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Desmontar particiones&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;umount &lt;span class="s1"&gt;'/mnt/{boot,home,}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reiniciar&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;reboot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="creacion-de-usuario"&gt;Creación de usuario&lt;a class="headerlink" href="#creacion-de-usuario" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Crear el grupo de usuario, por ejemplo: &lt;code&gt;libre&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;groupadd libre
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Creamos el usuario &lt;code&gt;freedom&lt;/code&gt; y lo agregamos a los grupos básicos&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;useradd -m -G audio,disk,games,http,input,lp,network,optical,power,scanner,storage,sys,video,wheel -g libre -s /bin/bash freedom
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Asignamos contraseña&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;passwd freedom
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Editamos el archivo &lt;code&gt;/etc/sudoers&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -i /etc/sudoers -e &lt;span class="s1"&gt;'s/^# %wheel ALL=(ALL) ALL/%wheel ALL=(ALL) ALL/g'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reiniciamos el equipo&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;reboot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Actualización del sistema&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;sudo pacman -Syu
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="interfaz-grafica-base"&gt;Interfaz gráfica BASE&lt;a class="headerlink" href="#interfaz-grafica-base" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;h4 id="instalar-paquete-de-video-segun-marca-de-su-tarjeta-de-video"&gt;Instalar paquete de vídeo (según marca de su tarjeta de vídeo)&lt;a class="headerlink" href="#instalar-paquete-de-video-segun-marca-de-su-tarjeta-de-video" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Comprobar marca:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;lspci &lt;span class="p"&gt;|&lt;/span&gt; grep -e VGA
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Instalar una de ellas dependiendo de la marca:&lt;/p&gt;
&lt;p&gt;AMD:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xorg-video-amdgpu
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ati:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xenocara-video-ati
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Intel:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xorg-video-intel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Nvidia:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xorg-video-nouveau
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Vesa (genérico):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xenocara-video-vesa
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="componentes-xenocara"&gt;Componentes Xenocara&lt;a class="headerlink" href="#componentes-xenocara" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xenocara-server xenocara-xinit xenocara
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="mesa-demos"&gt;Mesa demos&lt;a class="headerlink" href="#mesa-demos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mesa mesa-demos
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="ajuste-en-el-idioma-de-teclado-para-xenocara"&gt;Ajuste en el idioma de teclado para Xenocara&lt;a class="headerlink" href="#ajuste-en-el-idioma-de-teclado-para-xenocara" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;La sintaxis de los archivos de configuración de X se explica
en &lt;a href="https://fedoraproject.org/wiki/Input_device_configuration#xorg.conf.d" rel="noopener noreferrer" target="_blank"&gt;Xenocara#Configuration&lt;/a&gt;.
Este método crea la configuración para todo el sistema, que se mantiene después de los reinicios.&lt;/p&gt;
&lt;p&gt;He aquí un ejemplo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/X11/xorg.conf.d/00-keyboard.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;y dentro colocar:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Section &lt;span class="s2"&gt;"InputClass"&lt;/span&gt;
    Identifier &lt;span class="s2"&gt;"system-keyboard"&lt;/span&gt;
    MatchIsKeyboard &lt;span class="s2"&gt;"on"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbLayout"&lt;/span&gt;  &lt;span class="s2"&gt;"es,us"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbModel"&lt;/span&gt;   &lt;span class="s2"&gt;"pc105"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbVariant"&lt;/span&gt; &lt;span class="s2"&gt;"deadtilde,dvorak"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbOptions"&lt;/span&gt; &lt;span class="s2"&gt;"grp:alt_shift_toggle"&lt;/span&gt;
EndSection
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;XkbOptions puede recibir varios parámetros por ejemplo:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;"grp:alt_shift_toggle,compose:rwin,lv3:ralt_switch,numpad:pc"&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Tenemos 2 diseños de teclado: español (es) e inglés (us), y que para pasar de uno
al otro solo basta usar la combinación de teclas &lt;code&gt;ALT+SHIFT&lt;/code&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Comprobar la configuración del teclado:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;setxkbmap -print -verbose &lt;span class="m"&gt;10&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Tipografías&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ttf-liberation ttf-bitstream-vera ttf-dejavu ttf-droid
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A continuación, procederemos a crear las carpetas personales.
En caso de tener planeado instalar &lt;strong&gt;GNOME&lt;/strong&gt; o &lt;strong&gt;PLASMA KDE&lt;/strong&gt; como entorno de escritorio,
obvie este paso, puesto que la instalación de &lt;strong&gt;GNOME&lt;/strong&gt; o &lt;strong&gt;PLASMA KDE&lt;/strong&gt; generan de forma
automática los directorios.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Instalación del generador de directorios:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xdg-user-dirs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Creación automática de directorios:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;xdg-user-dirs-update
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="soporte-de-audio"&gt;Soporte de audio&lt;a class="headerlink" href="#soporte-de-audio" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Instalar &lt;code&gt;pulseadio&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S pulseaudio pulseaudio-alsa alsa-utils pavucontrol
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Agregar el servicio de audio a por defecto&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add alsasound default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="configurar-pulseaudio"&gt;Configurar pulseaudio&lt;a class="headerlink" href="#configurar-pulseaudio" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -e &lt;span class="s1"&gt;'s/^; autospawn = yes/autospawn = yes/g'&lt;/span&gt; -i /etc/pulse/client.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3 id="entornos-de-escritorio-soportados-oficialmente"&gt;Entornos de escritorio soportados oficialmente&lt;a class="headerlink" href="#entornos-de-escritorio-soportados-oficialmente" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;h4 id="instalar-mate"&gt;Instalar MATE&lt;a class="headerlink" href="#instalar-mate" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;El entorno de escritorio MATE es la continuación de GNOME 2 (Basado en Gnome 2).
Provee un entorno intuitivo y atractivo. MATE está siendo desarrollado activamente
para añadir apoyo para tecnologías nuevas, y a la misma vez preservar la experiencia
tradicional de un escritorio.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Instalación:&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mate mate-extra
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Donde:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mate: Contiene el entorno de escritorio básico y aplicaciones necesarias para la experiencia estándar de MATE.&lt;/li&gt;
&lt;li&gt;mate-extra: Contiene un conjunto de paquetes y herramientas opcionales, como un salvapantallas, una calculadora,
un editor y otras aplicaciones no problemáticas que van bien con el escritorio MATE.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="instalar-xfce"&gt;Instalar XFCE&lt;a class="headerlink" href="#instalar-xfce" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Xfce es un entorno de escritorio ligero para sistemas tipo UNIX.
Su objetivo es ser rápido y usar pocos recursos del sistema,
sin dejar de ser visualmente atractivo y fácil de usar.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Instalación&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xfce4 xfce4-goodies
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Donde:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;xfce4: es el grupo básico de paquetes de xfce4.&lt;/li&gt;
&lt;li&gt;xfce4-goodies: es un grupo de paquetes adicionales, como plugins para el panel,
notificaciones y otras herramientas del sistema.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="instalar-lxde"&gt;Instalar LXDE&lt;a class="headerlink" href="#instalar-lxde" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;LXDE es un entorno de escritorio libre. Su nombre proviene de «Lightweight X11 Desktop Environment»,
que en español significa: Entorno de escritorio X11 ligero.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Instalación&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S lxde
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="instalar-kde-plasma"&gt;Instalar KDE Plasma&lt;a class="headerlink" href="#instalar-kde-plasma" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;KDE es un proyecto de software que actualmente comprende un
entorno de escritorio conocido como Plasma, una colección de librerías
y frameworks (KDE Frameworks) y también una gran cantidad de
aplicaciones (KDE Applications).&lt;/p&gt;
&lt;p&gt;El entorno de escritorio creado por KDE principalmente para sistemas GNU/Linux,
KDE Plasma 5, es el sucesor de KDE Plasma Workspaces y se lanzó
inicialmente el 15 de julio de 2014.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Instalación&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S plasma kde-applications plasma-wayland-session
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Donde:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;plasma: contiene el grupo de paquetes que instalaran el D.E. con algunas aplicaciones y herramientas basicas.&lt;/li&gt;
&lt;li&gt;kde-applications: instala todas las aplicaciones de KDE contenidas en el grupo.&lt;/li&gt;
&lt;li&gt;plasma-wayland-session: Para habilitar el soporte para Wayland en Plasma.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="como-iniciar-xenocara"&gt;¿Cómo iniciar Xenocara?&lt;a class="headerlink" href="#como-iniciar-xenocara" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Escribir un archivo &lt;code&gt;~/.xinitrc&lt;/code&gt; (opción 1)&lt;/p&gt;
&lt;p&gt;Descomentar el escritorio que usted instaló, ejemplo de archivo &lt;code&gt;~/.xinitrc&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="c1"&gt;# ~/.xinitrc&lt;/span&gt;
&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="c1"&gt;# Executed by startx (run your window manager from here)&lt;/span&gt;
&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="c1"&gt;# exec enlightenment_start&lt;/span&gt;
&lt;span class="c1"&gt;# exec i3&lt;/span&gt;
&lt;span class="c1"&gt;# exec mate-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec xmonad&lt;/span&gt;
&lt;span class="c1"&gt;# exec startlxqt&lt;/span&gt;
&lt;span class="c1"&gt;# exec startlxde&lt;/span&gt;
&lt;span class="c1"&gt;# exec awesome&lt;/span&gt;
&lt;span class="c1"&gt;# exec bspwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec gnome-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec gnome-session --session=gnome-classic&lt;/span&gt;
&lt;span class="c1"&gt;# exec startkde&lt;/span&gt;
&lt;span class="nb"&gt;exec&lt;/span&gt; startxfce4
&lt;span class="c1"&gt;# exec startfluxbox&lt;/span&gt;
&lt;span class="c1"&gt;# exec openbox-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec cinnamon-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec pekwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec catwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec dwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec startede&lt;/span&gt;
&lt;span class="c1"&gt;# exec icewm-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec jwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec monsterwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec notion&lt;/span&gt;
&lt;span class="c1"&gt;# exec startdde #deepin-session&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Luego desde una tty, usted puede ejecutar &lt;code&gt;startx&lt;/code&gt; y se iniciará su escritorio.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Instalar gestor de inicio de sesión (opción 2)&lt;/p&gt;
&lt;p&gt;Ejemplo: &lt;code&gt;lightdm&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S lightdm lightdm-gtk-greeter
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Agregar servicio lightdm&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add lightdm default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reiniciar&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;reboot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="utilidades"&gt;UTILIDADES&lt;a class="headerlink" href="#utilidades" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;h4 id="discos"&gt;Discos&lt;a class="headerlink" href="#discos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;gvfs para montar discos&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S gamin gvfs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="red"&gt;Red&lt;a class="headerlink" href="#red" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;dhcpcd-ui para gestión de IP's&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S dhcpcd-ui
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="gestor-de-claves"&gt;Gestor de claves&lt;a class="headerlink" href="#gestor-de-claves" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;gnome-kering&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S gnome-keyring
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="applet-de-volumen"&gt;Applet de volumen&lt;a class="headerlink" href="#applet-de-volumen" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Ícono de volumen&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S volumeicon
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="sincronizar-el-horario-local"&gt;Sincronizar el Horario Local&lt;a class="headerlink" href="#sincronizar-el-horario-local" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Instalar NTP&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ntp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Sincronizar Hora&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ntpdate -u hora.roa.es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="compresores-de-archivos"&gt;Compresores de archivos&lt;a class="headerlink" href="#compresores-de-archivos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Normalmente nos topamos con archivos comprimidos en ZIP, RAR y/u otro formato que
se suelen intercambiar en Internet. En muchos entornos de escritorio, suelen
incluir el suyo (File Roller en GNOME, Engrampa en MATE, Ark en KDE y XArchiver
en XFCE/LXDE). Para mejorar la funcionalidad de estos compresores de archivos,
le añadiremos el soporte para 7Z, RAR, ZIP y otros.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;GZip (conocidos por la extensión ".tar.gz"):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S zlib haskell-zlib
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;BZip2:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S bzip2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RAR:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S unar
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;7Zip:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S p7zip lrzip
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ZIP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S zip libzip unzip
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="detector-de-particiones"&gt;Detector de particiones&lt;a class="headerlink" href="#detector-de-particiones" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Utilitario Udisk:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S udevil autofs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lectura y escritura de sistemas de archivos NTFS:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ntfs-3g
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lectura y escritura de sistema de archivos FAT32:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S fatsort exfat-utils dosfstools
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lectura y escritura de sistemas de archivos XFS:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xfsprogs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="soporte-multimedia"&gt;Soporte multimedia&lt;a class="headerlink" href="#soporte-multimedia" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Para poder reproducir archivos multimedia, es necesario poder tener los códecs y el
reproductor. Para ello, procederemos a instalar los códecs ffmpeg y gstreamer,
además de los reproductores.
Aquí les sugiero algunos reproductores que les puede resultar útiles.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Códecs:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ffmpeg gstreamer gst-libav gst-plugins-bad gst-plugins-good gst-plugins-ugly gst-plugins-base gstreamer-vaapi gst-transcoder ffms2 x264 libvorbis libvpx libtheora opus vorbis-tools
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reproductor Audacious:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S audacious
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reproductor SMPlayer:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S smplayer smplayer-themes smplayer-skins
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reproductor VLC:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S vlc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reproductor MPV:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mpv
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Visor de imagenes ligero&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S viewnior
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Visor PDF&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S epdfview
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="aplicaciones-uxp"&gt;Aplicaciones UXP&lt;a class="headerlink" href="#aplicaciones-uxp" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Existen navegadores incluidos por los entornos de escritorio como GNOME con Epiphany
o KDE con Konqueror. No obstante, gracias a los desarrolladores en Hyperbola tenemos
&lt;strong&gt;&lt;a href="https://wiki.hyperbola.info/doku.php?id=es:project:iceweasel-uxp" rel="noopener noreferrer" target="_blank"&gt;Iceweasel-UXP&lt;/a&gt;&lt;/strong&gt; un
navegador web,
&lt;strong&gt;&lt;a href="https://wiki.hyperbola.info/doku.php?id=es:project:iceape-uxp" rel="noopener noreferrer" target="_blank"&gt;Iceape-UXP&lt;/a&gt;&lt;/strong&gt; suite de internet
y  un gestor de correos llamado &lt;strong&gt;&lt;a href="https://wiki.hyperbola.info/doku.php?id=es:project:icedove-uxp" rel="noopener noreferrer" target="_blank"&gt;Icedove-UXP&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Iceweasel-UXP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S iceweasel-uxp iceweasel-uxp-l10n-es-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Iceape-UXP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S iceape-uxp iceape-uxp-l10n-es-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Icedove-UXP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S icedove-uxp icedove-uxp-l10n-es-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="libreoffice"&gt;LibreOffice&lt;a class="headerlink" href="#libreoffice" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Por lo general, a la hora de usar un Sistema Operativo, por lo menos se tiene una suite de oficina.
En GNU/Linux, se acostumbra a tener una. Felizmente en Hyperbola, Libreoffice se presenta es su versión estable.
Lo único que necesitaríamos es efectuar el siguiente comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S libreoffice-still libreoffice-still-l10n-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h5 id="correccion-de-ortografia"&gt;Corrección de ortografía&lt;a class="headerlink" href="#correccion-de-ortografia" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h5&gt;
&lt;p&gt;Para revisar la ortografía necesitará hunspell y un diccionario de hunspell (como hunspell-es, hunspell-en, etc.)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S hunspell hunspell-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h5 id="reglas-de-division-de-palabras"&gt;Reglas de división de palabras&lt;a class="headerlink" href="#reglas-de-division-de-palabras" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h5&gt;
&lt;p&gt;Para disponer de las reglas de división también necesitará hyphen + un conjunto de reglas (hyphen-en, hyphen-de)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S hyphen hyphen-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h5 id="sinonimos"&gt;Sinónimos&lt;a class="headerlink" href="#sinonimos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h5&gt;
&lt;p&gt;Para la opción Sinónimos necesitará &lt;code&gt;mythes&lt;/code&gt; + un libro de sinónimos de mythes (&lt;code&gt;mythes-en mythes-es&lt;/code&gt;)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mythes mythes-es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="seguridad"&gt;Seguridad&lt;a class="headerlink" href="#seguridad" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;La seguridad es importante al navegar por Internet es por ello que Hyperbola provee de una herramienta
llamada &lt;strong&gt;&lt;a href="https://github.com/netblue30/firejail" rel="noopener noreferrer" target="_blank"&gt;firejail&lt;/a&gt;&lt;/strong&gt;
en combinación con una interfaz gráfica
&lt;strong&gt;&lt;a href="https://l3net.wordpress.com/projects/firejail/#firetools" rel="noopener noreferrer" target="_blank"&gt;firetools&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S firejail firetools
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="comunicacion"&gt;Comunicación&lt;a class="headerlink" href="#comunicacion" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;La comunicación a través de Internet es requerida a día de hoy. En Hyperbola tenemos programas para la comunicación a través de Internet:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Gajim&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S gajim python2-axolotl
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Tox&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;qtox:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S qtox
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;toxic:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S toxic
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="identificando-keycodes"&gt;Identificando keycodes&lt;a class="headerlink" href="#identificando-keycodes" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;La utilidad &lt;code&gt;showkey&lt;/code&gt; informa los códigos de teclas para la consola virtual.
showkey espera a que se presione una tecla y, si no hay ninguna durante 10 segundos,
se cierra. Para ejecutar showkey necesita estar en una consola virtual,
no en un entorno gráfico. Ejecute el siguiente comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;showkey --keycodes
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="tutorials"></category><category term="hyperbola"></category><category term="guia"></category></entry><entry><title>Hyperbola installation guide [Legacy/MBR-DOS mode]</title><link href="https://conocimientoslibres.tuxfamily.org/en/hyperbola-installation-guide/" rel="alternate"></link><published>2019-11-11T08:41:00+01:00</published><updated>2019-11-11T08:41:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2019-11-11:/en/hyperbola-installation-guide/</id><summary type="html">
&lt;p&gt;First we must build a Hyperbola installation device,
it can be on a &lt;a href="https://wiki.hyperbola.info/doku.php?id=en:guide:beginners#write_the_image_to_your_usb" rel="noopener noreferrer" target="_blank"&gt;USB&lt;/a&gt;
memory or &lt;a href="https://wiki.hyperbola.info/doku.php?id=en:guide:beginners#burn_the_image_to_your_optical_disk" rel="noopener noreferrer" target="_blank"&gt;CD&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There is also an &lt;a href="https://lablibre.tuxfamily.org/hyperbola-gnu-linux-libre-base/" rel="noopener noreferrer" target="_blank"&gt;installation video&lt;/a&gt;
that will be updated.&lt;/p&gt;
&lt;h3 id="first-steps"&gt;First steps&lt;a class="headerlink" href="#first-steps" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;We check if there is an Internet connection&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ping -c &lt;span class="m"&gt;3&lt;/span&gt; gnu.org
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Partition disk&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;cfdisk
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;In case of the partition …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">
&lt;p&gt;First we must build a Hyperbola installation device,
it can be on a &lt;a href="https://wiki.hyperbola.info/doku.php?id=en:guide:beginners#write_the_image_to_your_usb" rel="noopener noreferrer" target="_blank"&gt;USB&lt;/a&gt;
memory or &lt;a href="https://wiki.hyperbola.info/doku.php?id=en:guide:beginners#burn_the_image_to_your_optical_disk" rel="noopener noreferrer" target="_blank"&gt;CD&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There is also an &lt;a href="https://lablibre.tuxfamily.org/hyperbola-gnu-linux-libre-base/" rel="noopener noreferrer" target="_blank"&gt;installation video&lt;/a&gt;
that will be updated.&lt;/p&gt;
&lt;h3 id="first-steps"&gt;First steps&lt;a class="headerlink" href="#first-steps" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;We check if there is an Internet connection&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ping -c &lt;span class="m"&gt;3&lt;/span&gt; gnu.org
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Partition disk&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;cfdisk
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;In case of the partition chosen as &lt;strong&gt;swap&lt;/strong&gt; go to "Type" option and select &lt;strong&gt;82 (Linux swap)&lt;/strong&gt; from list.&lt;/li&gt;
&lt;li&gt;In case of the partition chosen as &lt;strong&gt;/boot&lt;/strong&gt;, select &lt;strong&gt;"bootable"&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;sda1&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/boot
&lt;span class="nv"&gt;sda2&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/
&lt;span class="nv"&gt;sda3&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/home
&lt;span class="nv"&gt;sda4&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;swap

Recommendations:
/boot   &lt;span class="o"&gt;=&lt;/span&gt; 300MB
/       &lt;span class="o"&gt;=&lt;/span&gt; 40GB
/home   &lt;span class="o"&gt;=&lt;/span&gt; customized
&lt;span class="nv"&gt;swap&lt;/span&gt;    &lt;span class="o"&gt;=&lt;/span&gt; equivalent to RAM
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="wi-fi-connection"&gt;Wi-fi connection&lt;a class="headerlink" href="#wi-fi-connection" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;wifi&lt;/code&gt; detect&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;iw dev
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Enable device of network&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ip link &lt;span class="nb"&gt;set&lt;/span&gt; &amp;lt;device-name&amp;gt; up
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Enable Internet with &lt;code&gt;wpa_supplicant&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;wpa_supplicant -B -i &amp;lt;device-name&amp;gt; -c &amp;lt;&lt;span class="o"&gt;(&lt;/span&gt;wpa_passphrase &lt;span class="s2"&gt;"ssid"&lt;/span&gt; &lt;span class="s2"&gt;"psk"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Renew IPv4 with &lt;code&gt;dhcpcd&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;dhcpcd &amp;lt;device-name&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3 id="partition-formatting"&gt;Partition Formatting&lt;a class="headerlink" href="#partition-formatting" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;/boot&lt;/code&gt;, &lt;strong&gt;ext4&lt;/strong&gt; will be used&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkfs -t ext4 /dev/sda1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;/&lt;/code&gt;, &lt;strong&gt;ext4&lt;/strong&gt; will be used&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkfs -t ext4 /dev/sda2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;/home&lt;/code&gt;, &lt;strong&gt;ext4&lt;/strong&gt; will be used&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkfs -t ext4 /dev/sda3
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;swap&lt;/code&gt;, &lt;strong&gt;mkswap&lt;/strong&gt; will be used&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkswap /dev/sda4
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enable swap partition&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;swapon /dev/sda4
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="organization-of-partitions"&gt;Organization of Partitions&lt;a class="headerlink" href="#organization-of-partitions" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Mount root in /mnt&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mount /dev/sda2 /mnt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Make directories of other partitions&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;boot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkdir /mnt/boot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;home&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkdir /mnt/home
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Mount other partitions&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Mount boot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mount /dev/sda1 /mnt/boot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Mount home&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mount /dev/sda3 /mnt/home
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="base-system-installation"&gt;Base System Installation&lt;a class="headerlink" href="#base-system-installation" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Update keys of hyperiso:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -Sy hyperbola-keyring
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Install base packages:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacstrap /mnt base base-devel grub-bios wpa_supplicant iw kernel-firmware ldns xenocara-input-synaptics
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Install &lt;code&gt;xenocara-input-synaptics&lt;/code&gt; only on laptops&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="main-configuration"&gt;Main Configuration&lt;a class="headerlink" href="#main-configuration" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Generate fstab file&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;genfstab -U -p /mnt &amp;gt;&amp;gt; /mnt/etc/fstab
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Inside chroot and configure base system&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;arch-chroot /mnt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set hostname, to edit &lt;code&gt;/etc/hostname&lt;/code&gt; file:&lt;/p&gt;
&lt;p&gt;Example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; hyperpc &amp;gt; /etc/hostname
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set localtime&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ln -s /usr/share/zoneinfo/America/Chicago /etc/localtime
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Update system time to UTC (Optional)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;hwclock --systohc --utc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enable our location, uncomment&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -e &lt;span class="s1"&gt;'s|^#en_US.UTF-8 UTF-8|en_US.UTF-8 UTF-8|g'&lt;/span&gt; -i /etc/locale.gen
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set location preferences&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;LANG&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;en_US.UTF-8 &amp;gt; /etc/locale.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Generate location&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;locale-gen
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you need to change keymap, configure in &lt;code&gt;/etc/conf.d/keymaps&lt;/code&gt; file&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -e &lt;span class="s1"&gt;'s/^keymap="us"/keymap="uk"/g'&lt;/span&gt; -i /etc/conf.d/keymaps
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Install Grub&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;grub-install --target&lt;span class="o"&gt;=&lt;/span&gt;i386-pc --recheck /dev/sda
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Create grub.cfg file&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;grub-mkconfig -o /boot/grub/grub.cfg
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Edit ramdisk&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/mkinitcpio.conf
&lt;span class="go"&gt;-----------------------------&lt;/span&gt;
&lt;span class="go"&gt;HOOKS="base udev autodetect modconf block filesystems keyboard fsck"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Generate ramdisk&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;mkinitcpio -p linux-libre-lts
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set root user password&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;passwd
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Configure &lt;a href="https://wiki.archlinux.org/index.php/WPA_supplicant" rel="noopener noreferrer" target="_blank"&gt;wpa_supplicant&lt;/a&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/wpa_supplicant/wpa_supplicant.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;and inside:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;ctrl_interface&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/var/run/wpa_supplicant
&lt;span class="nv"&gt;ctrl_interface_group&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;wheel
&lt;span class="nv"&gt;update_config&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;

&lt;span class="nv"&gt;network&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="nv"&gt;ssid&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"lynx"&lt;/span&gt;
    &lt;span class="nv"&gt;psk&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"your-pass"&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Add to service by default&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add wpa_supplicant default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://wiki.archlinux.org/index.php/Dhcpcd" rel="noopener noreferrer" target="_blank"&gt;DHCPCD&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Add to service by default&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add dhcpcd default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Close chroot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;&lt;span class="nb"&gt;exit&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Unmount partitions&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;umount &lt;span class="s1"&gt;'/mnt/{boot,home,}'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reboot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;reboot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="adding-a-user"&gt;Adding a user&lt;a class="headerlink" href="#adding-a-user" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Create user group, for example: &lt;code&gt;libre&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;groupadd libre
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Create user &lt;code&gt;freedom&lt;/code&gt; and add it to basic groups&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;useradd -m -G audio,disk,games,http,input,lp,network,optical,power,scanner,storage,sys,video,wheel -g libre -s /bin/bash freedom
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Assign password&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;passwd freedom
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Edit &lt;code&gt;/etc/sudoers&lt;/code&gt; file&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -i /etc/sudoers -e &lt;span class="s1"&gt;'s|^# %wheel ALL=(ALL) ALL|%wheel ALL=(ALL) ALL|g'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reboot pc&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;reboot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Upgrade system&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;sudo pacman -Syu
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="base-graphical-interface"&gt;BASE graphical interface&lt;a class="headerlink" href="#base-graphical-interface" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;h4 id="install-video-package-depending-trademark-of-your-video-card"&gt;Install video package (depending trademark of your video card)&lt;a class="headerlink" href="#install-video-package-depending-trademark-of-your-video-card" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Check video trademark:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;lspci &lt;span class="p"&gt;|&lt;/span&gt; grep -e VGA
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Install one, depending of trademark:&lt;/p&gt;
&lt;p&gt;AMD:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xorg-video-amdgpu
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ati:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xenocara-video-ati
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Intel:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xorg-video-intel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Nvidia:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xorg-video-nouveau
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Vesa (generic):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xenocara-video-vesa
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="xenocara-components"&gt;Xenocara components&lt;a class="headerlink" href="#xenocara-components" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xenocara-server xenocara-xinit xenocara
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="mesa-demos"&gt;Mesa demos&lt;a class="headerlink" href="#mesa-demos" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mesa mesa-demos
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="setting-in-keyboard-language-for-xenocara"&gt;Setting in keyboard language for Xenocara&lt;a class="headerlink" href="#setting-in-keyboard-language-for-xenocara" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Syntax of X configuration files is explained in
&lt;a href="https://fedoraproject.org/wiki/Input_device_configuration#xorg.conf.d" rel="noopener noreferrer" target="_blank"&gt;Xenocara#Configuration&lt;/a&gt;.
Method creates configuration for entire system, which is
maintained after reboot.&lt;/p&gt;
&lt;p&gt;Here's an example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;nano -w /etc/X11/xorg.conf.d/00-keyboard.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;and inside write:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Section &lt;span class="s2"&gt;"InputClass"&lt;/span&gt;
    Identifier &lt;span class="s2"&gt;"system-keyboard"&lt;/span&gt;
    MatchIsKeyboard &lt;span class="s2"&gt;"on"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbLayout"&lt;/span&gt;  &lt;span class="s2"&gt;"us,uk"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbModel"&lt;/span&gt;   &lt;span class="s2"&gt;"pc105"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbVariant"&lt;/span&gt; &lt;span class="s2"&gt;"deadtilde,dvorak"&lt;/span&gt;
    Option &lt;span class="s2"&gt;"XkbOptions"&lt;/span&gt; &lt;span class="s2"&gt;"grp:alt_shift_toggle"&lt;/span&gt;
EndSection
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;XkbOptions can receive various parameters for example:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;"grp:alt_shift_toggle,compose:rwin,lv3:ralt_switch,numpad:pc"&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;We have 2 keyboard layouts: English US (us) and English UK (uk),
and to go from one to the other just use the &lt;code&gt;ALT+SHIFT&lt;/code&gt;
key combination.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Check keyboard settings:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;setxkbmap -print -verbose &lt;span class="m"&gt;10&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Typefaces&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ttf-liberation ttf-bitstream-vera ttf-dejavu ttf-droid
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Next, we will proceed to create the personal folders.
In case you have planned to install &lt;strong&gt;GNOME&lt;/strong&gt; or &lt;strong&gt;PLASMA KDE&lt;/strong&gt;
as a desktop environment, skip this step, since the
&lt;strong&gt;GNOME&lt;/strong&gt; or &lt;strong&gt;PLASMA KDE&lt;/strong&gt; installation automatically
generates this directories.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Directory generator installation:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xdg-user-dirs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Automatic directory creation:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;xdg-user-dirs-update
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="audio-support"&gt;Audio support&lt;a class="headerlink" href="#audio-support" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Install &lt;code&gt;pulseadio&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S pulseaudio pulseaudio-alsa alsa-utils pavucontrol
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Add audio service to default&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add alsasound default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="configure-pulseaudio"&gt;Configure pulseaudio&lt;a class="headerlink" href="#configure-pulseaudio" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;sed -e &lt;span class="s1"&gt;'s/^; autospawn = yes/autospawn = yes/g'&lt;/span&gt; -i /etc/pulse/client.conf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h3 id="officially-supported-desktop-environments"&gt;Officially supported desktop environments&lt;a class="headerlink" href="#officially-supported-desktop-environments" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;h4 id="install-mate"&gt;Install MATE&lt;a class="headerlink" href="#install-mate" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;MATE desktop environment is the continuation of GNOME 2 (Based on Gnome 2).
It provides an intuitive and attractive environment. MATE is actively being
developed to add support for new technologies, while preserving the
traditional desktop experience.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Installation&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mate mate-extra
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mate: contains basic desktop environment and applications necessary for the standard MATE experience.&lt;/li&gt;
&lt;li&gt;mate-extra: contains a set of packages and optional tools, like a screensaver, a calculator,
an editor and other non-problematic applications that go well with the MATE desktop.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="install-xfce"&gt;Install XFCE&lt;a class="headerlink" href="#install-xfce" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Xfce is a lightweight desktop environment for UNIX-like systems.
Its goal is to be fast and use few system resources, while
remaining visually attractive and easy to use.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Installation&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xfce4 xfce4-goodies
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;xfce4: is basic group of xfce4 packages.&lt;/li&gt;
&lt;li&gt;xfce4-goodies: is a group of additional packages, such as panel plugins,
notifications and other system tools.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="install-lxde"&gt;Install LXDE&lt;a class="headerlink" href="#install-lxde" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;LXDE is a free desktop environment. Abbreviation means
«Lightweight X11 Desktop Environment»&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Installation&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S lxde
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="install-kde-plasma"&gt;Install KDE Plasma&lt;a class="headerlink" href="#install-kde-plasma" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;KDE is a software project that currently comprises a
desktop environment known as Plasma, a collection of
libraries and frameworks (KDE Frameworks) and also a
large number of applications (KDE Applications).&lt;/p&gt;
&lt;p&gt;The desktop environment created by KDE primarily for GNU/Linux systems,
KDE Plasma 5, is successor to KDE Plasma Workspaces and is primarily
released on July 15, 2014.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Installation&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S plasma kde-applications plasma-wayland-session
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Where:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;plasma: contains group of packages to install desktop. with some basic applications and tools.&lt;/li&gt;
&lt;li&gt;kde-applications: installs all KDE applications contained in group (kcal, amarok, etc).&lt;/li&gt;
&lt;li&gt;plasma-wayland-session: enable support for Wayland in Plasma.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="how-to-start-xenocara"&gt;How to start Xenocara?&lt;a class="headerlink" href="#how-to-start-xenocara" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Write a &lt;code&gt;~/.xinitrc&lt;/code&gt; file (option 1)&lt;/p&gt;
&lt;p&gt;Uncomment your desktop installed, example file &lt;code&gt;~/.xinitrc&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="c1"&gt;# ~/.xinitrc&lt;/span&gt;
&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="c1"&gt;# Executed by startx (run your window manager from here)&lt;/span&gt;
&lt;span class="c1"&gt;#&lt;/span&gt;
&lt;span class="c1"&gt;# exec enlightenment_start&lt;/span&gt;
&lt;span class="c1"&gt;# exec i3&lt;/span&gt;
&lt;span class="c1"&gt;# exec mate-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec xmonad&lt;/span&gt;
&lt;span class="c1"&gt;# exec startlxqt&lt;/span&gt;
&lt;span class="c1"&gt;# exec startlxde&lt;/span&gt;
&lt;span class="c1"&gt;# exec awesome&lt;/span&gt;
&lt;span class="c1"&gt;# exec bspwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec gnome-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec gnome-session --session=gnome-classic&lt;/span&gt;
&lt;span class="c1"&gt;# exec startkde&lt;/span&gt;
&lt;span class="nb"&gt;exec&lt;/span&gt; startxfce4
&lt;span class="c1"&gt;# exec startfluxbox&lt;/span&gt;
&lt;span class="c1"&gt;# exec openbox-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec cinnamon-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec pekwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec catwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec dwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec startede&lt;/span&gt;
&lt;span class="c1"&gt;# exec icewm-session&lt;/span&gt;
&lt;span class="c1"&gt;# exec jwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec monsterwm&lt;/span&gt;
&lt;span class="c1"&gt;# exec notion&lt;/span&gt;
&lt;span class="c1"&gt;# exec startdde #deepin-session&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Then from a tty, you can run &lt;code&gt;startx&lt;/code&gt; and your desktop will start.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Install login manager (option 2)&lt;/p&gt;
&lt;p&gt;Example: &lt;code&gt;lightdm&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S lightdm lightdm-gtk-greeter
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Add to service by default&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;rc-update add lightdm default
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reboot&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;reboot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="tools"&gt;Tools&lt;a class="headerlink" href="#tools" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h3&gt;
&lt;h4 id="disks"&gt;Disks&lt;a class="headerlink" href="#disks" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;gvfs to mount disks&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S gamin gvfs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="net"&gt;Net&lt;a class="headerlink" href="#net" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;dhcpcd-ui for IP management&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S dhcpcd-ui
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="key-manager"&gt;Key manager&lt;a class="headerlink" href="#key-manager" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;gnome-kering&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S gnome-keyring
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="volume-applet"&gt;Volume applet&lt;a class="headerlink" href="#volume-applet" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;Volume icon&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S volumeicon
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="synchronize-local-time"&gt;Synchronize Local Time&lt;a class="headerlink" href="#synchronize-local-time" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Install NTP&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ntp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Synchronize Time&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;ntpdate -u hora.roa.es
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="file-compressors"&gt;File compressors&lt;a class="headerlink" href="#file-compressors" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Normally we come across files compressed in ZIP, RAR and/or another
format that are usually exchanged on the Internet. In many desktop
environments, usually include theirs (File Roller in GNOME, Engrampa
in MATE, Ark in KDE, and XArchiver in XFCE/LXDE). To improve functionality
of these file compressors, we will add support for 7Z, RAR, ZIP and others.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;GZip (known with extension ".tar.gz"):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S zlib haskell-zlib
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;BZip2:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S bzip2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;RAR:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S unar
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;7Zip:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S p7zip lrzip
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ZIP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S zip libzip unzip
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="partition-detector"&gt;Partition detector&lt;a class="headerlink" href="#partition-detector" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Udisk utility:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S udevil autofs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reading and writing NTFS file systems:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ntfs-3g
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;FAT32 file system read and write:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S fatsort exfat-utils dosfstools
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reading and writing XFS file systems:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S xfsprogs
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="multimedia-support"&gt;Multimedia support&lt;a class="headerlink" href="#multimedia-support" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;To play multimedia files, you need to be able to have the codecs and player.
To do this, we will proceed to install ffmpeg and gstreamer codecs, in addition
to players.
Here I suggest some players that you may find useful.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Codecs:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S ffmpeg gstreamer gst-libav gst-plugins-bad gst-plugins-good gst-plugins-ugly gst-plugins-base gstreamer-vaapi gst-transcoder ffms2 x264 libvorbis libvpx libtheora opus vorbis-tools
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Audacious player:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S audacious
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;SMPlayer:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S smplayer smplayer-themes smplayer-skins
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;VLC player:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S vlc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;MPV player:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mpv
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lightweight image viewer&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S viewnior
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;PDF viewer&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S epdfview
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="aplicaciones-uxp"&gt;Aplicaciones UXP&lt;a class="headerlink" href="#aplicaciones-uxp" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;There are browsers included by desktop environments like GNOME with Epiphany
or KDE with Konqueror. However, thanks to the developers, in Hyperbola
we have &lt;strong&gt;&lt;a href="https://wiki.hyperbola.info/iceweasel-uxp" rel="noopener noreferrer" target="_blank"&gt;Iceweasel-UXP&lt;/a&gt;&lt;/strong&gt;
a web browser, &lt;strong&gt;&lt;a href="https://wiki.hyperbola.info/iceape-uxp" rel="noopener noreferrer" target="_blank"&gt;Iceape-UXP&lt;/a&gt;&lt;/strong&gt;
internet suite and a email-manager called
&lt;strong&gt;&lt;a href="https://wiki.hyperbola.info/icedove-uxp" rel="noopener noreferrer" target="_blank"&gt;Icedove-UXP&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Iceweasel-UXP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S iceweasel-uxp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Iceape-UXP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S iceape-uxp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Icedove-UXP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S icedove-uxp
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="libreoffice"&gt;LibreOffice&lt;a class="headerlink" href="#libreoffice" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;In general, when using an Operating System, at least you have an office suite.
In GNU/Linux, it's customary to have one. Fortunately in Hyperbola, Libreoffice
is presented in its stable version. For install, run:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S libreoffice-still
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h5 id="spell-check"&gt;Spell check&lt;a class="headerlink" href="#spell-check" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h5&gt;
&lt;p&gt;To check spelling you will need hunspell and a hunspell dictionary (such as hunspell-en_US, hunspell-es, etc)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S hunspell hunspell-en_US
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h5 id="hyphenation-and-justification"&gt;Hyphenation and justification&lt;a class="headerlink" href="#hyphenation-and-justification" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h5&gt;
&lt;p&gt;To have provide rules you also need &lt;code&gt;hyphen&lt;/code&gt; + a set of rules (hyphen-en, hyphen-de, etc)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S hyphen hyphen-en
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h5 id="synonyms"&gt;Synonyms&lt;a class="headerlink" href="#synonyms" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h5&gt;
&lt;p&gt;For Synonyms option you will need &lt;code&gt;mythes&lt;/code&gt; + a mythes synonym library (&lt;code&gt;mythes-en&lt;/code&gt; &lt;code&gt;mythes-es&lt;/code&gt;)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S mythes mythes-en
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="security"&gt;Security&lt;a class="headerlink" href="#security" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Security is important when browsing the Internet, that's why Hyperbola provides
a tool called &lt;strong&gt;&lt;a href="https://github.com/netblue30/firejail" rel="noopener noreferrer" target="_blank"&gt;firejail&lt;/a&gt;&lt;/strong&gt;
in combination with a graphical interface
&lt;strong&gt;&lt;a href="https://l3net.wordpress.com/projects/firejail/#firetools" rel="noopener noreferrer" target="_blank"&gt;firetools&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S firejail firetools
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;h4 id="social"&gt;Social&lt;a class="headerlink" href="#social" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Hyperbola have programs for communication:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Gajim&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S gajim python2-axolotl
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Tox&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;qtox:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S qtox
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;toxic:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pacman -S toxic
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="identifying-keycodes"&gt;Identifying keycodes&lt;a class="headerlink" href="#identifying-keycodes" title="Permanent link"&gt;¶&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Showkey utility reports key codes for the virtual console. showkey waits
for a key to be pressed and, if there is none for 10 seconds, closes.
To run showkey you need to be in a virtual console, not in a graphical
environment:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;showkey --keycodes
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content><category term="tutorials"></category><category term="hyperbola"></category><category term="guia"></category></entry><entry><title>Clonar disco duro con dd en GNU</title><link href="https://conocimientoslibres.tuxfamily.org/clonar-disco-duro-con-dd-en-gnu/" rel="alternate"></link><published>2019-08-24T12:47:00+02:00</published><updated>2019-08-24T12:47:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2019-08-24:/clonar-disco-duro-con-dd-en-gnu/</id><summary type="html">&lt;p&gt;El programa &lt;code&gt;dd&lt;/code&gt; nos permite convertir y copiar archivos,
pero no un simple copiado de archivos sino que &lt;code&gt;dd&lt;/code&gt; también
sirve para clonar discos duros enteros.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Este comando se ejecuta como superusuario.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id="parametros"&gt;Parámetros&lt;a class="headerlink" href="#parametros" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Los parámetros más importantes son 3:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;if: archivo de origen&lt;/li&gt;
&lt;li&gt;of: archivo de destino&lt;/li&gt;
&lt;li&gt;bs: límite de …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;El programa &lt;code&gt;dd&lt;/code&gt; nos permite convertir y copiar archivos,
pero no un simple copiado de archivos sino que &lt;code&gt;dd&lt;/code&gt; también
sirve para clonar discos duros enteros.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Este comando se ejecuta como superusuario.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id="parametros"&gt;Parámetros&lt;a class="headerlink" href="#parametros" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Los parámetros más importantes son 3:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;if: archivo de origen&lt;/li&gt;
&lt;li&gt;of: archivo de destino&lt;/li&gt;
&lt;li&gt;bs: límite de bytes que se leen y escriben cada momento, es decir velocidad de grabado.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Por supuesto, podéis ver más opciones con el comando &lt;code&gt;dd --help&lt;/code&gt;.&lt;/p&gt;
&lt;h4 id="ejemplo"&gt;Ejemplo&lt;a class="headerlink" href="#ejemplo" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Antes de comenzar, hay que saber qué discos duros o memorias
USB hay conectadas al equipo.
Para ello, ejecutamos el comando &lt;code&gt;lsblk&lt;/code&gt;.
Suponiendo que el disco duro que queremos clonar está en &lt;code&gt;/dev/sda&lt;/code&gt;
y el disco duro de destino está en &lt;code&gt;/dev/sdb&lt;/code&gt;, para realizar el
clonado debemos ejecutar el siguiente comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;dd &lt;span class="nv"&gt;bs&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1M &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/dev/sda &lt;span class="nv"&gt;of&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/dev/sdb
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Con la opción &lt;code&gt;bs=1M&lt;/code&gt; estamos diciendo que la velocidad de
lectura y escritura se realicen en bloques de 1 Megabyte.
Cuanto más bajo, más lento y más seguro. Cuanto más alto más rápido,
pero nos arriesgamos a que no se copie bien.&lt;/p&gt;
&lt;p&gt;Para crear una imagen ISO a partir de un CD se ejecutaría este comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;dd &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/dev/cdrom &lt;span class="nv"&gt;of&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/home/usuario/imagendeldisco.iso
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Para guardar una ISO en un DVD se intercambiarían origen y destino:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;dd &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/home/usuario/imagendeldisco.iso &lt;span class="nv"&gt;of&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/dev/cdrom
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;El programa dd ofrece muchas posibilidades a la hora de trabajar con
discos duros, memorias externas y CDs o DVDs. Yo lo utilizo mucho y
la verdad es que es más cómodo que cualquier otro programa para grabar discos.&lt;/p&gt;</content><category term="tutorials"></category><category term="dd"></category><category term="grabar disco duro"></category></entry><entry><title>Vulnerabilidad MDS en procesadores Intel</title><link href="https://conocimientoslibres.tuxfamily.org/ataque-mds/" rel="alternate"></link><published>2019-05-18T12:17:00+02:00</published><updated>2019-05-18T12:17:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2019-05-18:/ataque-mds/</id><summary type="html">&lt;p&gt;Se han descubierto nuevos fallos de seguridad en los procesadores de Intel
que tienen que ver con la ejecución especulativa, pero esta vez son más
graves que los que habíamos visto antes, al punto en que Intel está
recomendando desactivar el HyperThreading.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Intel denomina al fallo como 'MDS' y recomienda …&lt;/p&gt;&lt;/blockquote&gt;</summary><content type="html">&lt;p&gt;Se han descubierto nuevos fallos de seguridad en los procesadores de Intel
que tienen que ver con la ejecución especulativa, pero esta vez son más
graves que los que habíamos visto antes, al punto en que Intel está
recomendando desactivar el HyperThreading.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Intel denomina al fallo como 'MDS' y recomienda desactivar el HyperThreading&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Los 4 fallos de seguridad han sido anunciados por Intel en coordinación
con la universidad austriaca TU Graz, Vrije Universiteit Amsterdam,
la Universidad de Michigan, la Universidad de Adelaida, KU Leuven en Bélgica,
el Instituto Politécnico de Worcester, la Universidad del Sarre en Alemania
y las empresas de seguridad Cyberus, BitDefender, Qihoo360 y Oracle.
Mientras que algunos de ellos nombrado los cuatro defectos como "ZombieLoad",
"Fallout", RIDL, o "Rogue In-Flight Data Load", Intel está nombrando al
conjunto como &lt;strong&gt;PEGI-13 Microarchitectural Data Sampling&lt;/strong&gt; (MDS).&lt;/p&gt;
&lt;p&gt;Al igual que otros ataques de ejecución especulativa, estos fallos pueden
permitir a los cibercriminales obtener información que de otro modo se
consideraría segura si no se hubiera ejecutado a través de los procesos
de ejecución especulativa de la CPU.
&lt;strong&gt;Meltdown&lt;/strong&gt; leía información sensible que estaba siendo almacenada en la memoria,
pero los ataques MDS podrían leer los datos en los diferentes búferes
de la CPU (Hilos).&lt;/p&gt;
&lt;h2 id="ejemplo-de-ataque"&gt;Ejemplo de ataque:&lt;a class="headerlink" href="#ejemplo-de-ataque" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="url-recovery"&gt;URL Recovery&lt;a class="headerlink" href="#url-recovery" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h3&gt;
&lt;figure&gt;
&lt;video controls playsinline&gt;
  &lt;source src="https://archive.org/download/libreweb/zombieLoad-in-action-spying-on-your-visited-websites.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;
&lt;figcaption&gt;
&lt;p&gt;Autor del vídeo: [Cyberus Technology GmbH][cyberus]. Programa usado para el test [Proof-of-concept for the ZombieLoad attack](https://github.com/IAIK/ZombieLoad)&lt;/p&gt;
&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/zombieLoad-in-action-spying-on-your-visited-websites.webm"&gt;Vídeo&lt;/a&gt; (1080p)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Los investigadores dicen que esta falla se puede utilizar para desviar datos
de la CPU a una velocidad casi en tiempo real, y se puede utilizar para extraer
selectivamente la información que se considera importante, podrían ser
contraseñas o los sitios web que el usuario está visitando
en el momento del ataque.&lt;/p&gt;
&lt;p&gt;Intel dice que se van a necesitar parches significativos para cerrar esta
enorme brecha de seguridad y que repercutirá en el rendimiento.
El &lt;em&gt;modus operandi&lt;/em&gt; sería que, dentro del CPU, se reinicie todo el ciclo de
recopilación y escritura de datos cada vez que se llama a un proceso diferente.
Es decir, los búferes deben ser borrados o sobrescritos cada vez que se pase
de una aplicación a otra, incluso de un servicio a otro que no sea del propio sistema.&lt;/p&gt;
&lt;p&gt;La compañía Intel estima que la pérdida de rendimiento sería de un 9%.
Una solución más drástica es la de desactivar la función de HyperThreading
como protección garantizada a los ataques MDS en los procesadores.&lt;/p&gt;
&lt;h2 id="hyperbola-gnulinux-libre"&gt;Hyperbola GNU/Linux-libre&lt;a class="headerlink" href="#hyperbola-gnulinux-libre" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Desde Hyperbola ya se ha estado &lt;a href="https://git.hyperbola.info:50100/packages/core.git/commit/?id=25b9c740344ffc4bbdbe128794fc24c3b990ae59"&gt;trabajando en Mitigar&lt;/a&gt; este fallo a nivel de hardware
de Intel al mismo tiempo se publicó una &lt;a href="https://www.hyperbola.info/news/hyperbola-users-are-now-mitigated-against-microarchitectural-data-sampling-mds-vulnerabilities/"&gt;noticia&lt;/a&gt; en su web oficial.&lt;/p&gt;
&lt;h2 id="vulnerabilidades"&gt;Vulnerabilidades&lt;a class="headerlink" href="#vulnerabilidades" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;CVE-2018-12126&lt;/strong&gt; Microarchitectural Store Buffer Data Sampling (MSBDS)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CVE-2018-12130&lt;/strong&gt; Microarchitectural Fill Buffer Data Sampling (MFBDS)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CVE-2018-12127&lt;/strong&gt; Microarchitectural Load Port Data Sampling (MLPDS)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CVE-2019-11091&lt;/strong&gt; Microarchitectural Data Sampling Uncacheable Memory (MDSUM)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://software.intel.com/security-software-guidance/insights/deep-dive-intel-analysis-microarchitectural-data-sampling"&gt;Intel Analysis &lt;/a&gt;&lt;/p&gt;</content><category term="Seguridad"></category><category term="Intel"></category><category term="Ataque a procesadores Intel"></category></entry><entry><title>Contra las redes 5G</title><link href="https://conocimientoslibres.tuxfamily.org/contra-las-redes-5g/" rel="alternate"></link><published>2019-03-17T00:00:00+01:00</published><updated>2019-03-17T00:00:00+01:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2019-03-17:/contra-las-redes-5g/</id><summary type="html">&lt;p&gt;Las llamadas redes de quinta generación (abreviadas 5G) están siendo
impulsadas y propuestas por las grandes empresas de telecomunicaciones
con una gran agresividad. Con ellas se quiere reducir la latencia,
transmitir más datos por segundo y lograr una conectividad masiva de
dispositivos.&lt;/p&gt;
&lt;p&gt;Sin embargo, poco hablan quienes publicitan estas tecnologías …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Las llamadas redes de quinta generación (abreviadas 5G) están siendo
impulsadas y propuestas por las grandes empresas de telecomunicaciones
con una gran agresividad. Con ellas se quiere reducir la latencia,
transmitir más datos por segundo y lograr una conectividad masiva de
dispositivos.&lt;/p&gt;
&lt;p&gt;Sin embargo, poco hablan quienes publicitan estas tecnologías sobre los
grandes peligros que conllevan, entre otras cosas, para la salud, el
medio ambiente y la libertad individual. Para las empresas de
telecomunicaciones y gobiernos resulta muy rentable obtener tan grandes
cantidades de datos, porque sabrán constantemente lo que hace la gente.&lt;/p&gt;
&lt;p&gt;La tecnología 5G supondrá una mucho mayor exposición a los campos
electromagnéticos de radiofrecuencia respecto a las ya existentes (2G,
3G, 4G, Wi-Fi...). Desplegar esta tecnología supone también grandes
costes económicos y ecológicos asociados a la construcción e instalación
de nuevas atenas, satélites y dispositivos.&lt;/p&gt;
&lt;p&gt;Los &lt;a href="https://ehtrust.org/key-issues/cell-phoneswireless/5g-networks-iot-scientific-overview-human-health-risks/"&gt;efectos de la radiación electromagnética para los seres
vivos&lt;/a&gt;
son desastrosos: daño oxidativo, roturas de
&lt;abbr title="ácido desoxirribonucleico"&gt;ADN&lt;/abbr&gt; de cadenas simple y
doble, reducción de metabolismo celular, aumento de la permeabilidad de
barrera hematoencefálica, reducción de melatonina, interrupción del
metabolismo de la glucosa del cerebro, generación de proteinas de
estrés... Esta nueva tecnología aumenta enormemente los niveles de dicha
radiación.&lt;/p&gt;
&lt;p&gt;Las tecnologías móviles actuales &lt;strong&gt;ya&lt;/strong&gt; suponen riesgos para la salud.
La &lt;a href="https://www.iarc.fr/wp-content/uploads/2018/07/pr208_E.pdf"&gt;Agencia Internacional para la Investigación del Cáncer clasificó la
radiofrecuencia de los campos
electromagnéticos&lt;/a&gt;,
asociados con el teléfono inalámbrico, como posible cancerígeno para
humanos.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://drmicozzi.com/breast-cancer-from-contact-with-cell-phones"&gt;Cuatro mujeres jóvenes que llevaban el celular en el sujetador
desarrollaron cáncer de mama en el área donde llevaban el
celular&lt;/a&gt;,
a falta de factores de riesgo como factores hereditarios o edad superior
a los cuarenta años concluyeron que la causa del cáncer era la radiación
de los celulares.&lt;/p&gt;
&lt;p&gt;Se ha demostrado también que el &lt;a href="https://www.excelsior.com.mx/global/2016/02/04/1073076"&gt;uso del celular afecta a la fertilidad
de los hombres&lt;/a&gt;,
que &lt;a href="http://www.curiosidadsq.com/2013/09/Radiacion-del-telefono-movil.html"&gt;produce insomnio, dolores de cabeza y
confusión&lt;/a&gt;.
Existen muchos estudios que establecen una relación entre la exposición
prolongada a la radiación de los celulares; otros estudios de
mayor duración se están llevando a cabo en la actualidad.&lt;/p&gt;
&lt;p&gt;Permitir el uso de una tecnología que aumenta los riesgos de salud es
extremadamente imprudente. Más aún teniendo en cuenta que sus
consecuencias afectarían a todos los seres vivos.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Artículo Original:&lt;/strong&gt; &lt;a href="https://freakspot.net/contra-las-redes-5g/"&gt;https://freakspot.net/contra-las-redes-5g/&lt;/a&gt;&lt;/p&gt;</content><category term="Opinión"></category><category term="celular"></category><category term="datos"></category><category term="móvil"></category><category term="redes"></category><category term="salud"></category><category term="telefonía"></category></entry><entry><title>Hyperbola GNU/Linux-libre es aprobada por la FSF</title><link href="https://conocimientoslibres.tuxfamily.org/hyperbola-gnu-linux-libre-es-aprobada-por-la-fsf/" rel="alternate"></link><published>2018-12-08T11:25:00+01:00</published><updated>2018-12-08T11:25:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-12-08:/hyperbola-gnu-linux-libre-es-aprobada-por-la-fsf/</id><summary type="html">&lt;p&gt;La distribución &lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt; ha sido aceptada
por la &lt;strong&gt;Free Software Foundation&lt;/strong&gt; (FSF) en su lista de
distribuciones 100% software libre.&lt;/p&gt;
&lt;figure class="has-text-center is-table"&gt;
    &lt;img src="https://static.fsf.org/nosvn/images/hyperbola_logo.png" alt="Logo de Hyperbola" height="50" width="276"&gt;
    &lt;figcaption&gt;Hyperbola GNU con Linux libre&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;Después de varios meses, &lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt; una
distribución basada en &lt;strong&gt;Arch GNU/Linux&lt;/strong&gt; y con la estabilidad
de &lt;strong&gt;Debian&lt;/strong&gt; ahora es parte …&lt;/p&gt;</summary><content type="html">&lt;p&gt;La distribución &lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt; ha sido aceptada
por la &lt;strong&gt;Free Software Foundation&lt;/strong&gt; (FSF) en su lista de
distribuciones 100% software libre.&lt;/p&gt;
&lt;figure class="has-text-center is-table"&gt;
    &lt;img src="https://static.fsf.org/nosvn/images/hyperbola_logo.png" alt="Logo de Hyperbola" height="50" width="276"&gt;
    &lt;figcaption&gt;Hyperbola GNU con Linux libre&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;Después de varios meses, &lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt; una
distribución basada en &lt;strong&gt;Arch GNU/Linux&lt;/strong&gt; y con la estabilidad
de &lt;strong&gt;Debian&lt;/strong&gt; ahora es parte de &lt;a href="https://www.gnu.org/distros/free-distros.es.html"&gt;lista de distribuciones libres&lt;/a&gt;
siendo avalada por la FSF.&lt;/p&gt;
&lt;figure class="has-text-center is-table"&gt;
    &lt;img src="https://static.fsf.org/common/img/logo-new.png" alt="Logo de FSF"&gt;
    &lt;figcaption&gt;Fundación de Software Libre (FSF por sus siglas en inglés)&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;&lt;strong&gt;John Sullivan&lt;/strong&gt; director ejecutivo de la FSF dijo al respecto:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;En un mundo donde los sistemas operativos privativos
están en constante expansión en términos de abuso de sus
propios usuarios, el añadir otra distribución a la lista
de sistemas completamente libres es bienvenido. Hyperbola
representa otro hogar seguro para las personas que busquen
un control completo de su computación.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;André Silva&lt;/strong&gt;, co-fundador y desarrollador del proyecto Hyperbola menciona al respecto:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Hyperbola es una distribución totalmente libre basada en
snapshots de Arch y desarrollo de Debian sin software no libre,
documentación o cualquier tipo de soporte para la instalación
o ejecución de software no libre. A diferencia de Arch, que es
una distribución de lanzamiento continuo, Hyperbola es una
solución a largo plazo centrada en la estabilidad y la seguridad
inspirado en Debian y Devuan.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Donald Robertson&lt;/strong&gt;, gerente de licencias y cumplimiento de la FSF agregó:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Fue un placer trabajar con el equipo detrás de Hyperbola
durante todo este proceso. Realmente van más allá de lo
que respecta a los derechos de sus usuarios.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Hyperbola&lt;/strong&gt; es la primera distribución completamente libre nacida en &lt;strong&gt;FISL17&lt;/strong&gt;
(Porto Alegre, Brasil). Tienes más información en la propia web de &lt;a href="https://www.hyperbola.info"&gt;Hyperbola&lt;/a&gt;,
desde donde podrás &lt;a href="https://www.hyperbola.info/download/"&gt;descargar&lt;/a&gt; las imágenes para
&lt;a href="https://conocimientoslibres.tuxfamily.org/guia-de-instalacion-de-hyperbola/"&gt;instalar&lt;/a&gt;
o probar la distro en modo "live".&lt;/p&gt;</content><category term="Noticias"></category><category term="fsf"></category><category term="hyperbola"></category><category term="gnu"></category></entry><entry><title>FSF-Approved Hyperbola</title><link href="https://conocimientoslibres.tuxfamily.org/en/fsf-approved-hyperbola/" rel="alternate"></link><published>2018-12-08T11:25:00+01:00</published><updated>2018-12-08T11:25:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-12-08:/en/fsf-approved-hyperbola/</id><summary type="html">&lt;p&gt;&lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt; distribution has been accepted
by the &lt;strong&gt;Free Software Foundation&lt;/strong&gt; (FSF) to its list of 100%
free software distributions.&lt;/p&gt;
&lt;figure class="has-text-center is-table"&gt;
    &lt;img src="https://static.fsf.org/nosvn/images/hyperbola_logo.png" alt="Hyperbola logo" height="50" width="276"&gt;
    &lt;figcaption&gt;Hyperbola GNU plus Linux-libre&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;After several months, &lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt;, a distribution
based on &lt;strong&gt;Arch GNU/Linux&lt;/strong&gt; and with the stability of &lt;strong&gt;Debian&lt;/strong&gt;,
is now part of the &lt;a href="https://www.gnu.org/distros/free-distros.html"&gt;list …&lt;/a&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;&lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt; distribution has been accepted
by the &lt;strong&gt;Free Software Foundation&lt;/strong&gt; (FSF) to its list of 100%
free software distributions.&lt;/p&gt;
&lt;figure class="has-text-center is-table"&gt;
    &lt;img src="https://static.fsf.org/nosvn/images/hyperbola_logo.png" alt="Hyperbola logo" height="50" width="276"&gt;
    &lt;figcaption&gt;Hyperbola GNU plus Linux-libre&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;After several months, &lt;strong&gt;Hyperbola GNU/Linux-libre&lt;/strong&gt;, a distribution
based on &lt;strong&gt;Arch GNU/Linux&lt;/strong&gt; and with the stability of &lt;strong&gt;Debian&lt;/strong&gt;,
is now part of the &lt;a href="https://www.gnu.org/distros/free-distros.html"&gt;list of free distributions&lt;/a&gt;
being endorsed by FSF.&lt;/p&gt;
&lt;figure class="has-text-center is-table"&gt;
    &lt;img src="https://static.fsf.org/common/img/logo-new.png" alt="FSF logo"&gt;
    &lt;figcaption&gt;Free Software Foundation&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;&lt;strong&gt;John Sullivan&lt;/strong&gt; FSF's executive director, said about it:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;In a world where proprietary operating systems continually
up the ante in terms of the abuse they heap on their users,
adding another distribution to the list of fully free systems
is a welcome development. Hyperbola represents another safe
home for users looking for complete control over their own
computing.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;André Silva&lt;/strong&gt;, Hyperbola co-founder and developer, said about it:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Hyperbola is a fully free distribution based on Arch snapshots
and Debian development without nonfree software, documentation,
or any type of support for the installation or execution of
nonfree software. Unlike Arch, which is a rolling release
distribution, Hyperbola is a long-term one focused on stability
and security inspired from Debian and Devuan.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Donald Robertson&lt;/strong&gt;, FSF's licensing and compliance manager, added:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It was a pleasure working with the team behind Hyperbola
throughout this process. They really go above and beyond
in terms of looking out for the rights of their users.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Hyperbola&lt;/strong&gt; is the first completely free distribution born in
&lt;strong&gt;FISL17&lt;/strong&gt; (Porto Alegre, Brazil). You have more information on
Hyperbola website, from where you can &lt;a href="https://www.hyperbola.info/download/"&gt;download&lt;/a&gt;
the images to &lt;a href="https://conocimientoslibres.tuxfamily.org/en/hyperbola-installation-guide/"&gt;install&lt;/a&gt;
or test the distro in "live" mode.&lt;/p&gt;</content><category term="Noticias"></category><category term="fsf"></category><category term="hyperbola"></category><category term="gnu"></category></entry><entry><title>Citizenfour</title><link href="https://conocimientoslibres.tuxfamily.org/citizenfour/" rel="alternate"></link><published>2018-09-25T11:05:00+02:00</published><updated>2018-09-25T11:05:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-09-25:/citizenfour/</id><summary type="html">&lt;p&gt;En enero de 2013, &lt;strong&gt;Laura Poitras&lt;/strong&gt; comenzó a recibir correos electrónicos
cifrados firmados por un tal  &lt;strong&gt;"Citizenfour"&lt;/strong&gt;, que le aseguraba tener
pruebas de los programas de vigilancia ilegales dirigidos por la NSA
en colaboración con otras agencias de inteligencia en todo el mundo.
Cinco meses más tarde, junto con los …&lt;/p&gt;</summary><content type="html">&lt;p&gt;En enero de 2013, &lt;strong&gt;Laura Poitras&lt;/strong&gt; comenzó a recibir correos electrónicos
cifrados firmados por un tal  &lt;strong&gt;"Citizenfour"&lt;/strong&gt;, que le aseguraba tener
pruebas de los programas de vigilancia ilegales dirigidos por la NSA
en colaboración con otras agencias de inteligencia en todo el mundo.
Cinco meses más tarde, junto con los periodistas &lt;strong&gt;Glenn Greenwald&lt;/strong&gt; y
&lt;strong&gt;Ewen MacAskill&lt;/strong&gt; voló a &lt;strong&gt;Hong Kong&lt;/strong&gt; para el primero de muchos encuentros
con un hombre anónimo que resultó ser &lt;strong&gt;Edward Snowden&lt;/strong&gt;.
Para sus encuentros, viajó siempre con una cámara.
La película resultante es la historia que se desarrolla ante nuestros
ojos en este documental.&lt;/p&gt;
&lt;video playsinline controls poster='https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2018/09/preview-snowden.jpg'&gt;
  &lt;source src="https://archive.org/download/libreweb/citizenfour-spanish.webm" type="video/webm"/&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;p class="has-text-right"&gt;
  &lt;small&gt;&lt;strong&gt;VideoTime: &lt;/strong&gt;1h 48min 40sec&lt;/small&gt;
&lt;/p&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/citizenfour-spanish.webm"&gt;Vídeo&lt;/a&gt; (480p)&lt;/li&gt;
&lt;/ul&gt;</content><category term="Cine"></category><category term="snowden"></category><category term="citizenfour"></category><category term="libertad"></category></entry><entry><title>Montar Android en Hyperbola</title><link href="https://conocimientoslibres.tuxfamily.org/montar-android-en-hyperbola/" rel="alternate"></link><published>2018-08-22T10:52:00+02:00</published><updated>2018-08-22T10:52:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-08-22:/montar-android-en-hyperbola/</id><content type="html">&lt;p&gt;En esta oportunidad se enseña cómo montar los dispositivos
Android en Hyperbola.&lt;/p&gt;
&lt;video playsinline controls&gt;
  &lt;source src="https://archive.org/download/libreweb/android-uucp-480.webm" data-res="480" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;p class="has-text-right"&gt;
  &lt;small&gt;&lt;strong&gt;VideoTime: &lt;/strong&gt;4min 54sec&lt;/small&gt;
&lt;/p&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/android-uucp.webm"&gt;Vídeo&lt;/a&gt; (1080p)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/android-uucp-480.webm"&gt;Vídeo&lt;/a&gt; (480p)&lt;/li&gt;
&lt;/ul&gt;</content><category term="Tutorial"></category><category term="android"></category><category term="mtp"></category><category term="hyperbola"></category><category term="usb"></category></entry><entry><title>Entrevista sobre el proyecto Uruk</title><link href="https://conocimientoslibres.tuxfamily.org/entrevista-uruk/" rel="alternate"></link><published>2018-06-20T12:50:00+02:00</published><updated>2018-06-20T12:50:00+02:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-06-20:/entrevista-uruk/</id><summary type="html">&lt;p&gt;El Proyecto Uruk incluye muchas aplicaciones útiles y una distribución
de GNU/Linux basada en Trisquel. He entrevistado a Hayder Majid, una de
las iniciadoras, para conocer más.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;¿Puedes presentar brevemente el Proyecto Uruk y la distribución
Uruk GNU/Linux?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;El proyecto nació en 2016, pero la historia empezó días …&lt;/p&gt;</summary><content type="html">&lt;p&gt;El Proyecto Uruk incluye muchas aplicaciones útiles y una distribución
de GNU/Linux basada en Trisquel. He entrevistado a Hayder Majid, una de
las iniciadoras, para conocer más.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;¿Puedes presentar brevemente el Proyecto Uruk y la distribución
Uruk GNU/Linux?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;El proyecto nació en 2016, pero la historia empezó días atrás de ese
año. Mi amigo alimiracle y yo estábamos pensando en crear una
distribución completamente libre para satisfacer nuestras necesidades y
compartirla con otras, así que nos reunimos con un pequeño equipo con la
misma idea y rápidamente nos unimos a él. El equipo dividió el trabajo
de forma incorrecta, y el proyecto falló. Después de eso, hasta 2016,
hicimos algunas aplicaciones como Uruk cleaner, el
&lt;a href="https://www.gnome-look.org/content/show.php/Masalla+Icon+Theme?content=170321"&gt;tema de iconos Masalla&lt;/a&gt;,
&lt;a href="https://notabug.org/alimiracle/UPMS"&gt;UPMS&lt;/a&gt; y otras cosas,
así que decidimos hacer estos programas bajo un techo común. Lo llamamos
Proyecto Uruk e hicimos una distribución completamente libre con el
mismo nombre que respeta la libertad y la privacidad de las usuarias.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;¿Cuáles son los antecedentes de las contribuidoras al proyecto y sus
motivaciones?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Tenemos muchas personas que nos ayudan en el Proyecto Uruk, y que
comparten nuestras metas y motivaciones sobre el software libre, pero
principalmente tenemos dos tipos de cotribuidoras: primero, las
integrantes del equipo del proyecto; tienen proyectos bajo el Proyecto
Uruk o desarrollados en uno o más de los subproyectos de Uruk, que
hicieron un cambio sustancial en el Proyecto Uruk, las integrantes
activas del equipo son las siguientes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Ali Abdul Ghani (Ali Miracle)&lt;/em&gt;: programador y fundador del Proyecto
  Uruk y Desarrollador de Uruk GNU/Linux y muchos otros subproyectos.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Hayder Majid (Hayder Ctee)&lt;/em&gt;: ingeniero informático, programador y
  diseñador, fundador del Proyecto Uruk y Uruk GNU/Linux, y muchos
  otros.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Rosa&lt;/em&gt;: Programadora, empaquetadora, administradora del servidor y
  desarrolladora del Proyecto Uruk y Uruk GNU/Linux.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Ahmed Nourllah&lt;/em&gt;: Programador y desarrollador del Proyecto Uruk y
  desarrollador principal del wiki de Uruk.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;El segundo es otro tipo de contribuidoras, que pueden apoyar el proyecto
traduciendo o escribiendo código, empaquetando, etc.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Como usuaria de GNU/Linux, lo ejecuto en un viejo portátil Thinkpad
X60 y tengo aún así una experiencia de uso fluida. Gracias por hacer
el tema de iconos Masalla que mencionaste antes. Siendo Uruk GNU/Linux
una distribución basada en Trisquel, me pregunto por qué no elegisteis
Debian para basaros en esta o contribuisteis directamente a Trisquel en
vez de crear una nueva distribución.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Como dijo Rosa, «no puedes hacer que todo el mundo coma un tipo de
tarta».&lt;/p&gt;
&lt;p&gt;Elegimos Trisquel porque creemos en la filosofía del software libre.
Trisquel es una distribución completamente libre que cumple con nuestros
objetivos, pero no con nuestras necesidades, así que hicimos nuestra
distribución. Si probaste Uruk y Trisquel antes, encontrarás algunas
diferencias entre ellas porque Uruk es más personalizable y tiene muchas
aplicaciones creadas por el equipo de Uruk (como upms, ucc y otros
programas). También tratamos la opinión de la comunidad como la base de
nuestras publicaciones y creo que influimos a Trisquel, pero
indirectamente: después de todo, puedes verlo en Trisquel 8, que usa el
&lt;a href="https://es.wikipedia.org/wiki/MATE"&gt;escritorio MATE&lt;/a&gt; como el entorno de escritorio predeterminado y VLC como
un reproductor multimedia [Uruk hizo eso antes].&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Estáis tomando medidas para ganar el reconocimiento de la &lt;em&gt;Free
Software Foundation&lt;/em&gt; [Fundación del Software Libre] y que sea añadida a
la lista de distribuciones que son completamente libres&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Sí, realizamos un paso serio para añadir Uruk GNU/Linux a la lista de
distribuciones libres de GNU, pero tarda mucho tiempo, o como dijo mi
amigo Ali «mil años [sonrisa]».&lt;/p&gt;
&lt;figure&gt;
    &lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2018/06/Uruk-2.0.captura.png"&gt;
    &lt;img src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2018/06/Uruk-2.0.captura.png" alt="Uruk" width="1025" height="768"&gt;
    &lt;/a&gt;
    &lt;figcaption class="wp-caption-text"&gt;Captura de pantalla de Uruk
    GNU/Linux 2.0&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;&lt;strong&gt;La última publicación fue GNU/Linux Uruk 2.0, basada en Trisquel 8.
¿Cuáles son vuestros planes para el futuro?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Tenemos muchos planes para el futuro, como añadir más sabores a nuestras
publicaciones de Uruk GNU/Linux, mejorar la infraestructura del
proyecto, añadir nuevas aplicaciones creadas por el equipo del proyecto
y algunas otras sorpresas [guiño].&lt;/p&gt;</content><category term="GNU/Linux"></category><category term="entrevista"></category><category term="GNU/Linux"></category><category term="proyecto"></category><category term="software libre"></category><category term="Trisquel"></category><category term="Uruk"></category></entry><entry><title>RMS en Dominio digital</title><link href="https://conocimientoslibres.tuxfamily.org/rms-en-dominio-digital/" rel="alternate"></link><published>2018-06-09T10:07:00+02:00</published><updated>2018-06-09T10:07:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-06-09:/rms-en-dominio-digital/</id><summary type="html">&lt;p&gt;El pasado 30 de mayo, &lt;a href="https://es.wikipedia.org/wiki/Richard_Stallman"&gt;Richard M. Stallman&lt;/a&gt; se presentó en Argentina
en el programa radial Dominio Digital. Dado que hay bastantes
puntos importantes que se tomaron en cuenta durante el programa
aquí os dejamos una copia de la Entrevista en vídeo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dominio Digital&lt;/strong&gt; es un programa sobre informática, emitido …&lt;/p&gt;</summary><content type="html">&lt;p&gt;El pasado 30 de mayo, &lt;a href="https://es.wikipedia.org/wiki/Richard_Stallman"&gt;Richard M. Stallman&lt;/a&gt; se presentó en Argentina
en el programa radial Dominio Digital. Dado que hay bastantes
puntos importantes que se tomaron en cuenta durante el programa
aquí os dejamos una copia de la Entrevista en vídeo.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dominio Digital&lt;/strong&gt; es un programa sobre informática, emitido en Televisión
Argentina entre 1996 y 2011. En el año 2018 volvió en formato de radio.&lt;/p&gt;
&lt;p&gt;Sus integrantes son &lt;strong&gt;Claudio Regis&lt;/strong&gt; (Conductor) y &lt;strong&gt;Daniela Gastaminza&lt;/strong&gt;,
&lt;strong&gt;Alejandro Ponike&lt;/strong&gt; y &lt;strong&gt;Daniel "Chacal"&lt;/strong&gt; Sentinelli (columnistas).&lt;/p&gt;
&lt;video playsinline controls poster='https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2018/06/rms-screen-1.jpg'&gt;
  &lt;source src="https://archive.org/download/libreweb/StallmanenDominioDigital.webm" type="video/webm"/&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;p class="has-text-right"&gt;
  &lt;small&gt;&lt;strong&gt;VideoTime: &lt;/strong&gt;56min 07sec&lt;/small&gt;
&lt;/p&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/StallmanenDominioDigital.webm"&gt;Vídeo&lt;/a&gt; (720p)&lt;/li&gt;
&lt;/ul&gt;</content><category term="Opinión"></category><category term="GNU/Linux"></category></entry><entry><title>Curso de Instalación de Hyperbola</title><link href="https://conocimientoslibres.tuxfamily.org/curso-de-instalacion-de-hyperbola/" rel="alternate"></link><published>2018-05-29T08:57:00+02:00</published><updated>2018-05-29T08:57:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-05-29:/curso-de-instalacion-de-hyperbola/</id><summary type="html">&lt;p&gt;Después de algunos meses, he decidido realizar esta serie de vídeos
sobre la instalación de &lt;a href="https://www.hyperbola.info/"&gt;Hyperbola GNU+Linux-Libre&lt;/a&gt;,
una de las distros 100 % libres, el método de Instalación se basa
en una guía de instalación, bien abajo se encuentra una lista
de 6 vídeos:&lt;/p&gt;
&lt;video id="videoplaylist" playsinline controls poster='https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2018/05/curso-hyperbola-1.png'&gt;
    &lt;source src="https://archive.org/download/hyperbola-video-1/Hyperbola%20Base%20%2B%20Usuario%201%E2%81%846.webm" type="video/webm"/&gt;
    &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta …&lt;/em&gt;&lt;/p&gt;&lt;/video&gt;</summary><content type="html">&lt;p&gt;Después de algunos meses, he decidido realizar esta serie de vídeos
sobre la instalación de &lt;a href="https://www.hyperbola.info/"&gt;Hyperbola GNU+Linux-Libre&lt;/a&gt;,
una de las distros 100 % libres, el método de Instalación se basa
en una guía de instalación, bien abajo se encuentra una lista
de 6 vídeos:&lt;/p&gt;
&lt;video id="videoplaylist" playsinline controls poster='https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2018/05/curso-hyperbola-1.png'&gt;
    &lt;source src="https://archive.org/download/hyperbola-video-1/Hyperbola%20Base%20%2B%20Usuario%201%E2%81%846.webm" type="video/webm"/&gt;
    &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;h2 id="lista-de-videos"&gt;Lista de vídeos&lt;a class="headerlink" href="#lista-de-videos" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;aside class="menu"&gt;
    &lt;ul id="playlist" class="menu-list play-menu"&gt;
        &lt;li class="is-active-play"&gt;
            &lt;a href="https://archive.org/download/hyperbola-video-1/Hyperbola%20Base%20%2B%20Usuario%201%E2%81%846.webm"&gt;
                Hyperbola [Base + Usuario] 1⁄6 | Time: 1:06:45
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href="https://archive.org/download/hyperbola-video-2/Hyperbola%20Xorg%202%E2%81%846.webm"&gt;
                Hyperbola [Xorg] 2⁄6 | Time: 23:38
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href="https://archive.org/download/hyperbola_20180527/Hyperbola%20XFCE%203%E2%81%846.webm"&gt;
                Hyperbola [XFCE] 3⁄6 | Time: 20:06
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href="https://archive.org/download/hyperbola_20180527_2333/Hyperbola%20Fixed%20Idioma%204%E2%81%84%E2%81%846.webm"&gt;
                Hyperbola [Fixed Idioma] 4⁄6 | Time: 6:31
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href="https://archive.org/download/hyperbola-video-5/Hyperbola%20Gestor%20de%20Inicio%20de%20Sesi%C3%B3n%20SLIM%205%E2%81%846.webm"&gt;
                Hyperbola [Gestor de Inicio de Sesión SLIM] 5⁄6 | Time: 7:23
            &lt;/a&gt;
        &lt;/li&gt;
        &lt;li&gt;
            &lt;a href="https://archive.org/download/hyperbola-video-6/Hyperbola%20-%20Utilidades%206%E2%81%846.webm"&gt;
                Hyperbola [Utilidades] 6⁄6 | Time: 34:14
            &lt;/a&gt;
        &lt;/li&gt;
    &lt;/ul&gt;
&lt;/aside&gt;

&lt;blockquote&gt;
&lt;p&gt;Y, bien hasta aquí ya es posible instalar Hyperbola GNU+Linux-Libre, de manera sencilla.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;!-- playlist --&gt;
&lt;script src="https://conocimientoslibres.tuxfamily.org/vendor/aplaylist/videoplaylist.js"&gt;&lt;/script&gt;
&lt;!-- /playlist --&gt;</content><category term="GNU/Linux"></category><category term="hyperbola"></category><category term="linux"></category><category term="linux-libre"></category><category term="parabola"></category></entry><entry><title>Facebook legitima la violencia estatal</title><link href="https://conocimientoslibres.tuxfamily.org/facebook-legitima-la-violencia-estatal/" rel="alternate"></link><published>2018-04-25T00:37:00+02:00</published><updated>2018-04-25T00:37:00+02:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-04-25:/facebook-legitima-la-violencia-estatal/</id><summary type="html">&lt;p&gt;Facebook se ha sumado a Twitter
&lt;a href="https://newsroom.fb.com/news/2018/04/keeping-terrorists-off-facebook/"&gt;legitimando la violencia estatal&lt;/a&gt;.
Pero ha ido un paso más allá: define como terroristas a quienes tratan
de acabar con los estados o la propiedad, como es el caso de personas
que comparten las ideologías anarquista y comunista.&lt;/p&gt;
&lt;p&gt;Así definen el terrorismo:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Definimos el …&lt;/p&gt;&lt;/blockquote&gt;</summary><content type="html">&lt;p&gt;Facebook se ha sumado a Twitter
&lt;a href="https://newsroom.fb.com/news/2018/04/keeping-terrorists-off-facebook/"&gt;legitimando la violencia estatal&lt;/a&gt;.
Pero ha ido un paso más allá: define como terroristas a quienes tratan
de acabar con los estados o la propiedad, como es el caso de personas
que comparten las ideologías anarquista y comunista.&lt;/p&gt;
&lt;p&gt;Así definen el terrorismo:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Definimos el terrorismo como: «Cualquier organización no gubernamental
que se involucra en actos premeditados de violencia contra personas
o propiedad para intimidar a una población civil, gobierno u
organización internacional para lograr un objetivo político, religioso
o ideológico».&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Y así legitiman la violencia del estado:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Nuestra política antiterrorista no se aplica a gobiernos. Esto refleja
un consenso académico general y legal de que los estados nacionales
pueden usar legítimamente la violencia bajo ciertas circunstancias. No
obstante, cierto contenido sobre violencia patrocinada por el estado
sería eliminado por nuestras otras políticas, como nuestra política de
violencia gráfica.&lt;/p&gt;
&lt;/blockquote&gt;</content><category term="Noticias"></category><category term="capitalismo"></category><category term="estado"></category><category term="Facebook"></category><category term="página web"></category><category term="represión"></category><category term="redes sociales"></category><category term="violencia"></category></entry><entry><title>¿Por qué no Windows?</title><link href="https://conocimientoslibres.tuxfamily.org/por-que-no-windows/" rel="alternate"></link><published>2018-02-17T08:14:00+01:00</published><updated>2018-02-17T08:14:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-02-17:/por-que-no-windows/</id><summary type="html">&lt;p&gt;Windows y Office funcionan bien, entonces: &lt;strong&gt;¿cómo pueden ser tan malos?&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="restricciones"&gt;Restricciones&lt;a class="headerlink" href="#restricciones" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una copia legal de Windows es costosa, pero ¿qué obtienes realmente?
Ni Windows ni Office son verdaderamente vendidos, en realidad solo se
vende la licencia para usarlos.&lt;/p&gt;
&lt;p&gt;Para usar esos productos, se debe aceptar &lt;strong&gt;varias restricciones muy
fuertes …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;Windows y Office funcionan bien, entonces: &lt;strong&gt;¿cómo pueden ser tan malos?&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="restricciones"&gt;Restricciones&lt;a class="headerlink" href="#restricciones" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una copia legal de Windows es costosa, pero ¿qué obtienes realmente?
Ni Windows ni Office son verdaderamente vendidos, en realidad solo se
vende la licencia para usarlos.&lt;/p&gt;
&lt;p&gt;Para usar esos productos, se debe aceptar &lt;strong&gt;varias restricciones muy
fuertes&lt;/strong&gt;. En la mayoría de las licencias de Windows, no puedes conservar
el software cuando cambias de computador. A veces ni siquiera puedes
regalar el software. Microsoft te impone quién puede usar el software,
en qué computador y para qué propósitos; la lista de restricciones es
larga y en ocasiones aberrante.&lt;/p&gt;
&lt;h2 id="que-hay-de-la-eleccion"&gt;¿Qué hay de la elección?&lt;a class="headerlink" href="#que-hay-de-la-eleccion" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El software debería venir sin mecanismos para atar a los usuarios
a los productos de una compañía.&lt;/p&gt;
&lt;p&gt;¿Por qué los documentos de Office son tan difíciles de exportar?
¿Por qué sus formatos están constantemente cambiando? ¿Por qué no
siquiera puedes desinstalar algunos programas? Si buscas el control,
los productos de Microsoft no son para usted.&lt;/p&gt;
&lt;h2 id="sin-codigo-fuente"&gt;Sin código fuente&lt;a class="headerlink" href="#sin-codigo-fuente" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;El código fuente (los detalles del funcionamiento de un programa) de
Windows y Office están ocultos, y además &lt;strong&gt;nadie tiene permiso legal
para averiguar cómo funcionan&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Si no tienes derecho a inspeccionar el código fuente (la descripción
del funcionamiento de un programa), no puedes pedirle a un informático
que modifique el software ni que evalúe cómo el software protege tu privacidad.&lt;/p&gt;
&lt;p&gt;Y adivina qué: En el software que cuyo código fuente está disponible,
los programas maliciosos (como los malware o virus) no logran su objetivo,
es decir, aquí la seguridad no se compra por separado. La industria de
los antivirus en la cual Microsoft juega un papel crucial, prefiere que
tú uses Windows.&lt;/p&gt;
&lt;h2 id="por-una-sociedad-libre"&gt;Por una sociedad Libre&lt;a class="headerlink" href="#por-una-sociedad-libre" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Un sociedad libre requiere Software Libre. Piensa en "Libre" como en
libertad, no de precio: la libertad para inspeccionar, aprender y
modificar el software que utilice.&lt;/p&gt;
&lt;p&gt;Las computadoras se usan para compartir ideas, cultura e información.
Sin estas libertades sobre el software, estamos en riesgo de perder
el control sobre lo que compartimos.&lt;/p&gt;
&lt;p&gt;Esto ya está sucediendo hoy, desde tecnologías evidentemente fastidiosas
como la &lt;a href="https://www.gnu.org/proprietary/proprietary-drm.html"&gt;Gestión Digital de Restricciones&lt;/a&gt; (DRM) hasta las
completamente espantosas como la &lt;a href="https://www.gnu.org/philosophy/can-you-trust.es.html"&gt;Computación Confiable&lt;/a&gt; (TC).
El derecho que tiene cualquiera de participar en la cultura se está
viendo amenazado.&lt;/p&gt;
&lt;p&gt;Si tienes que renunciar a tu libertad para usar un software, quizá
entonces no estés contento con el software privativo.&lt;/p&gt;
&lt;p&gt;Fuente: &lt;a href="https://www.getgnulinux.org/es/windows/"&gt;https://www.getgnulinux.org/es/windows/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Noticias relacionadas:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.20minutos.es/noticia/3332612/0/prision-duena-locutorio-tenia-copias-ilicitas-windows-instaladas/"&gt;Piden prisión para la dueña de un locutorio que tenía copias ilícitas de Windows instaladas&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><category term="Opinión"></category><category term="libre"></category><category term="libertad"></category><category term="gnu"></category><category term="linux-libre"></category></entry><entry><title>Why not Windows?</title><link href="https://conocimientoslibres.tuxfamily.org/en/why-not-windows/" rel="alternate"></link><published>2018-02-17T08:14:00+01:00</published><updated>2018-02-17T08:14:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-02-17:/en/why-not-windows/</id><summary type="html">&lt;p&gt;Windows and Office work well, then: &lt;strong&gt;how can this be so bad?&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="restrictions"&gt;Restrictions&lt;a class="headerlink" href="#restrictions" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A legal copy of Windows is expensive, but what do you get?
Windows and Office are licensed, not sold.&lt;/p&gt;
&lt;p&gt;By using these products, we have to agree &lt;strong&gt;to a number of
harsh restrictions&lt;/strong&gt;. For most Windows licenses …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Windows and Office work well, then: &lt;strong&gt;how can this be so bad?&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="restrictions"&gt;Restrictions&lt;a class="headerlink" href="#restrictions" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A legal copy of Windows is expensive, but what do you get?
Windows and Office are licensed, not sold.&lt;/p&gt;
&lt;p&gt;By using these products, we have to agree &lt;strong&gt;to a number of
harsh restrictions&lt;/strong&gt;. For most Windows licenses, you can't
keep the software when you change the hardware. You
sometimes can't even give your software away. Who can run
the software? On which computer? What can you do with it?
The list of restrictions is long and some items are
outrageous.&lt;/p&gt;
&lt;h2 id="cant-we-choose"&gt;Can't we choose?&lt;a class="headerlink" href="#cant-we-choose" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Software should come without mechanisms to tie users
to a company's products.&lt;/p&gt;
&lt;p&gt;Why are Office documents difficult to export?
Why are the formats continually changing? Why can
you not even uninstall some programs? It might be
that if you look for choice, Microsoft products
aren't for you.&lt;/p&gt;
&lt;h2 id="without-source-code"&gt;Without source code&lt;a class="headerlink" href="#without-source-code" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The source code (the details of how a program works) of Windows
and Office are hidden, and also &lt;strong&gt;nobody has legal permission
to find out how this work&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If you don't have the right to inspect the source code
(the description of how a program works), you can't ask a
developer to modify the software or evaluate how
the software protects your privacy.&lt;/p&gt;
&lt;p&gt;And guess what? On software that comes with source code,
viruses and spyware aren't effective, and security isn't
bought on extra. The antivirus software industry, in which
Microsoft is now a significant player, prefers you
to use Windows.&lt;/p&gt;
&lt;h2 id="for-a-free-society"&gt;For a Free Society&lt;a class="headerlink" href="#for-a-free-society" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;A free society requires Free Software. Think of "Free" as freedom,
not price: the freedom to inspect, learn, and modify the
software you use.&lt;/p&gt;
&lt;p&gt;Computers are used to share ideas, culture, and information.
Without these liberties over software, we are at risk of
losing control over what we share.&lt;/p&gt;
&lt;p&gt;This is happening today. From plain annoying technologies
such as &lt;a href="https://www.gnu.org/proprietary/proprietary-drm.html"&gt;Digital Restrictions Management&lt;/a&gt; (DRM) to
downright frightening ones like &lt;a href="https://www.gnu.org/philosophy/can-you-trust.html"&gt;Trusted Computing&lt;/a&gt;,
everyone's ability to participate in culture is threatened.&lt;/p&gt;
&lt;p&gt;If you have to give up your freedoms to use software,
maybe you should not be happy with it.&lt;/p&gt;
&lt;p&gt;Original publish: &lt;a href="https://www.getgnulinux.org/windows/"&gt;https://www.getgnulinux.org/windows/&lt;/a&gt;&lt;/p&gt;</content><category term="Opinión"></category><category term="libre"></category><category term="libertad"></category><category term="gnu"></category><category term="linux-libre"></category></entry><entry><title>¿Cómo generar Freak Spot?</title><link href="https://conocimientoslibres.tuxfamily.org/como-generar-freakspot/" rel="alternate"></link><published>2018-02-15T08:08:00+01:00</published><updated>2018-02-15T08:08:00+01:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2018-02-15:/como-generar-freakspot/</id><summary type="html">&lt;p&gt;Muchas veces alguno que otro usuario se ha preguntado alguna vez
cómo se genera este sitio web, la verdad es que es bastante sencillo
una vez explicado. Es por ello que en el siguiente vídeo se detallan
los pasos a seguir.&lt;/p&gt;
&lt;video playsinline controls&gt;
  &lt;source src="https://archive.org/download/libreweb/freakspot.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el …&lt;/em&gt;&lt;/p&gt;&lt;/source&gt;&lt;/video&gt;</summary><content type="html">&lt;p&gt;Muchas veces alguno que otro usuario se ha preguntado alguna vez
cómo se genera este sitio web, la verdad es que es bastante sencillo
una vez explicado. Es por ello que en el siguiente vídeo se detallan
los pasos a seguir.&lt;/p&gt;
&lt;video playsinline controls&gt;
  &lt;source src="https://archive.org/download/libreweb/freakspot.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/freakspot.webm"&gt;Vídeo&lt;/a&gt; (1080p)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Durante el vídeo se explican los comandos para su generación, utilizando
un entorno virtual con python-virtualenv.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Clonación del repositorio e ingreso al directorio de trabajo&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;git clone https://notabug.org/Freak-Spot/Freak-Spot
&lt;span class="nb"&gt;cd&lt;/span&gt; Freak-Spot
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Generar el entorno virtual y activarlo&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;virtualenv env
&lt;span class="nb"&gt;source&lt;/span&gt; env/bin/activate
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Instalación de dependencias pip y npm&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;sudo npm install uglifycss uglify-js -g
pip install -U pelican beautifulsoup4 markdown babel
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Generar el sitio web&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; freak-theme &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; make compile&lt;span class="o"&gt;)&lt;/span&gt;
$ make html
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;</content><category term="Desarrollo web"></category><category term="educación"></category><category term="GNU/Linux"></category><category term="Pelican"></category><category term="Python"></category><category term="software libre"></category><category term="tutorial"></category><category term="video"></category></entry><entry><title>Prompt avanzado</title><link href="https://conocimientoslibres.tuxfamily.org/prompt-avanzado/" rel="alternate"></link><published>2017-12-05T11:34:00+01:00</published><updated>2021-08-21T13:28:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-12-05:/prompt-avanzado/</id><summary type="html">&lt;p&gt;Muchas veces necesitamos del &lt;a href="https://es.wikipedia.org/wiki/Bash"&gt;intérprete de comandos&lt;/a&gt;
para realizar una que otra tarea, quizás resulte tedioso armar
nuestra propia configuración de &lt;code&gt;.bashrc&lt;/code&gt;.
Pero como en la &lt;a href="https://es.wikipedia.org/wiki/World_Wide_Web"&gt;World Wide Web&lt;/a&gt; existe mucha información
útil, se ha logrado escribir una configuración prudente del ya
mencionado &lt;code&gt;.bashrc&lt;/code&gt; para distros basadas en Arch como …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Muchas veces necesitamos del &lt;a href="https://es.wikipedia.org/wiki/Bash"&gt;intérprete de comandos&lt;/a&gt;
para realizar una que otra tarea, quizás resulte tedioso armar
nuestra propia configuración de &lt;code&gt;.bashrc&lt;/code&gt;.
Pero como en la &lt;a href="https://es.wikipedia.org/wiki/World_Wide_Web"&gt;World Wide Web&lt;/a&gt; existe mucha información
útil, se ha logrado escribir una configuración prudente del ya
mencionado &lt;code&gt;.bashrc&lt;/code&gt; para distros basadas en Arch como
&lt;a href="https://hyperbola.info/"&gt;Hyperbola&lt;/a&gt; o &lt;a href="https://parabola.nu/"&gt;Parabola&lt;/a&gt;, en efecto estas
2 últimas son distros 100 % Libres.&lt;/p&gt;
&lt;p&gt;¿Y dónde consigo una copia?, sencillo puedes descargarlo desde
&lt;a href="https://notabug.org/heckyel/hyperterm"&gt;notabug&lt;/a&gt; bajo la Licencia &lt;a href="https://www.gnu.org/licenses/gpl-3.0.html"&gt;GPLv3&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;¿Existe algún vídeo, mostrando su uso? sí, a continuación te
mostramos cómo instalarlo:&lt;/p&gt;
&lt;video playsinline controls&gt;
  &lt;source src="https://archive.org/download/libreweb/hyperterm.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/hyperterm.webm"&gt;Vídeo&lt;/a&gt; (1080p)&lt;/li&gt;
&lt;/ul&gt;</content><category term="GNU/Linux"></category><category term="bash"></category><category term="hyperbash"></category><category term="hyperterm"></category><category term="shell"></category></entry><entry><title>Advanced prompt</title><link href="https://conocimientoslibres.tuxfamily.org/en/advanced-prompt/" rel="alternate"></link><published>2017-12-05T11:34:00+01:00</published><updated>2021-08-21T13:28:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-12-05:/en/advanced-prompt/</id><summary type="html">&lt;p&gt;Many times we need the &lt;a href="https://en.wikipedia.org/wiki/Bash"&gt;command interpreter&lt;/a&gt; to perform
the odd task, perhaps it is tedious to put together our
own &lt;code&gt;.bashrc&lt;/code&gt; configuration. But since there is a lot of
useful information on the &lt;a href="https://en.wikipedia.org/wiki/World_Wide_Web"&gt;World Wide Web&lt;/a&gt;, it has been
possible to write a prudent configuration of the
aforementioned &lt;code&gt;.bashrc …&lt;/code&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;Many times we need the &lt;a href="https://en.wikipedia.org/wiki/Bash"&gt;command interpreter&lt;/a&gt; to perform
the odd task, perhaps it is tedious to put together our
own &lt;code&gt;.bashrc&lt;/code&gt; configuration. But since there is a lot of
useful information on the &lt;a href="https://en.wikipedia.org/wiki/World_Wide_Web"&gt;World Wide Web&lt;/a&gt;, it has been
possible to write a prudent configuration of the
aforementioned &lt;code&gt;.bashrc&lt;/code&gt; for Arch-based distros such as
&lt;a href="https://hyperbola.info/"&gt;Hyperbola&lt;/a&gt; or &lt;a href="https://parabola.nu/"&gt;Parabola&lt;/a&gt;, in fact
these last 2 are 100% Free distros.&lt;/p&gt;
&lt;p&gt;And where do I get a copy? You can easily download it from
&lt;a href="https://notabug.org/heckyel/hyperterm"&gt;notabug&lt;/a&gt; under the &lt;a href="https://www.gnu.org/licenses/gpl-3.0.html"&gt;GPLv3&lt;/a&gt; License.&lt;/p&gt;
&lt;p&gt;Is there a video, showing its use? yes, although the video
is in spanish language:&lt;/p&gt;
&lt;video playsinline controls&gt;
  &lt;source src="https://archive.org/download/libreweb/hyperterm.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Your browser does not support the video tag, please download the video instead.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;h6 id="downloads"&gt;Downloads&lt;a class="headerlink" href="#downloads" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/hyperterm.webm"&gt;Vídeo&lt;/a&gt; (1080p)&lt;/li&gt;
&lt;/ul&gt;</content><category term="GNU/Linux"></category><category term="bash"></category><category term="hyperbash"></category><category term="hyperterm"></category><category term="shell"></category></entry><entry><title>Sayonara OpenMailBox</title><link href="https://conocimientoslibres.tuxfamily.org/sayonara-openmailbox/" rel="alternate"></link><published>2017-08-14T11:09:00+02:00</published><updated>2017-08-14T11:09:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-08-14:/sayonara-openmailbox/</id><summary type="html">&lt;p&gt;OpenMailBox, llevaba operando desde 2012, pero a fecha de este artículo
año 2017, ha cambiado las políticas de sus servicios, lo que ha provocado
el descontento en la mayoría de sus usuarios, y la migración notoria
hacia otros servicios.&lt;/p&gt;
&lt;p&gt;La comunicación con sus usuarias y usuarios no ha sido el …&lt;/p&gt;</summary><content type="html">&lt;p&gt;OpenMailBox, llevaba operando desde 2012, pero a fecha de este artículo
año 2017, ha cambiado las políticas de sus servicios, lo que ha provocado
el descontento en la mayoría de sus usuarios, y la migración notoria
hacia otros servicios.&lt;/p&gt;
&lt;p&gt;La comunicación con sus usuarias y usuarios no ha sido el punto fuerte
de este servicio.
Al principio sí que había un foro oficial que con el tiempo desapareció
sin más explicaciones.&lt;/p&gt;
&lt;p&gt;La única vía de comunicación oficial de OpenMailBox era mediante su cuenta
de Twitter (una red social No libre y centralizada), y tampoco parecen
prodigarse demasiado en explicaciones.&lt;/p&gt;
&lt;p&gt;Los cambios más notables consisten en, los que ya eran usuarios, tendrían
acceso sólo al correo mediante su web cliente. Por el contrario el
pagar o no por un servicio no es el problema, el asunto viene en las
siguientes líneas…&lt;/p&gt;
&lt;p&gt;Su página de login desafortunadamente ejecuta &lt;strong&gt;ECMAScript&lt;/strong&gt; (JavaScript)
No libre proveniente de Google (la API recaptcha, &lt;a href="https://www.freakspot.net/como-explota-Google-con-CAPTCHAs"&gt;freakspot&lt;/a&gt;
cuenta a detalle sobre esta API), ese es el verdadero problema ya que
sin duda ahora los usuarios estarían a merced del posible ciber-espionaje
y va en contra de la &lt;a href="https://www.gnu.org/philosophy/who-does-that-server-really-serve.es.html"&gt;filosofía del Software Libre&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="reemplazos-de-servicios-con-software-libre"&gt;Reemplazos de servicios con Software Libre&lt;a class="headerlink" href="#reemplazos-de-servicios-con-software-libre" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://posteo.de/"&gt;Posteo&lt;/a&gt;, de pago 1 EUR por mes,&lt;/li&gt;
&lt;li&gt;&lt;a href="https://riseup.net/"&gt;Riseup&lt;/a&gt;, requiere de una invitación, y de donaciones para su funcionamiento, y&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.fsf.org/resources/webmail-systems"&gt;Otros servicios&lt;/a&gt; que respetan la libertad.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Por el mal trato recibido y la poca profesionalidad de OpenMailBox solo puedo decir: ha sido un placer, pero adiós!&lt;/p&gt;</content><category term="Opinión"></category><category term="openmailbox"></category><category term="mail"></category></entry><entry><title>GoodBye OpenMailBox</title><link href="https://conocimientoslibres.tuxfamily.org/en/goodbye-openmailbox/" rel="alternate"></link><published>2017-08-14T11:09:00+02:00</published><updated>2017-08-14T11:09:00+02:00</updated><author><name>Jesús E.</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-08-14:/en/goodbye-openmailbox/</id><summary type="html">&lt;p&gt;OpenMailBox, has been operating since 2012, but as of the date of
this article in 2017, it has changed the policies of its services,
which has caused discontent in the majority of its users, and the
notorious migration to other services.&lt;/p&gt;
&lt;p&gt;Communication with its users has not been the strong …&lt;/p&gt;</summary><content type="html">&lt;p&gt;OpenMailBox, has been operating since 2012, but as of the date of
this article in 2017, it has changed the policies of its services,
which has caused discontent in the majority of its users, and the
notorious migration to other services.&lt;/p&gt;
&lt;p&gt;Communication with its users has not been the strong point of
this service. At beginning there was an official forum that
eventually disappeared without further explanation.&lt;/p&gt;
&lt;p&gt;The only official way to communicate with OpenMailBox was through
its Twitter account (a non-free and centralized social network),
and they don't seem to lavish too much on explanations either.&lt;/p&gt;
&lt;p&gt;The most notable changes consist of, those who were already users,
would have access only to mail through their client web. On the
contrary, paying or not for a service is not the problem, the
issue comes in the following lines…&lt;/p&gt;
&lt;p&gt;Your login page unfortunately runs &lt;strong&gt;ECMAScript&lt;/strong&gt; (JavaScript)
Not free from Google (the recaptcha API, &lt;a href="https://www.freakspot.net/como-explota-Google-con-CAPTCHAs"&gt;freakspot&lt;/a&gt; tells
in detail about this API), that is the real problem since users
would undoubtedly be at the mercy of possible cyber espionage
and it goes against the &lt;a href="https://www.gnu.org/philosophy/who-does-that-server-really-serve.html"&gt;philosophy of Free Software&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="service-replacements-with-free-software"&gt;Service replacements with Free Software&lt;a class="headerlink" href="#service-replacements-with-free-software" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://posteo.de/"&gt;Posteo&lt;/a&gt;, payment 1 EUR per month,&lt;/li&gt;
&lt;li&gt;&lt;a href="https://riseup.net/"&gt;Riseup&lt;/a&gt;, requires an invitation, and donations for its operation, and&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.fsf.org/resources/webmail-systems"&gt;Other services&lt;/a&gt; that respect freedom.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For the bad treatment received and the little professionalism of OpenMailBox,
I can only say: it has been a pleasure, but goodbye!&lt;/p&gt;</content><category term="Opinión"></category><category term="openmailbox"></category><category term="mail"></category></entry><entry><title>Sin parar</title><link href="https://conocimientoslibres.tuxfamily.org/sin-parar/" rel="alternate"></link><published>2017-07-16T12:15:00+02:00</published><updated>2019-02-10T11:46:44+01:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-07-16:/sin-parar/</id><summary type="html">&lt;p&gt;«Desde que hace siglos apareciera el mayor invento creado por el hombre,
generación tras generación hay alguien encargado de revisarlo
minuciosamente [...] y que pueda seguir funcionando en todo el mundo sin
parar». Así comienza este cortometraje educativo sobre el sistema
capitalista. ¿Seguirá funcionando siempre &lt;strong&gt;sin parar&lt;/strong&gt;?&lt;/p&gt;
&lt;video playsinline controls poster="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2017/07/poster-video-sin-parar.png"&gt;
  &lt;source src="https://archive.org/download/libreweb/sin-parar.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite …&lt;/em&gt;&lt;/p&gt;&lt;/source&gt;&lt;/video&gt;</summary><content type="html">&lt;p&gt;«Desde que hace siglos apareciera el mayor invento creado por el hombre,
generación tras generación hay alguien encargado de revisarlo
minuciosamente [...] y que pueda seguir funcionando en todo el mundo sin
parar». Así comienza este cortometraje educativo sobre el sistema
capitalista. ¿Seguirá funcionando siempre &lt;strong&gt;sin parar&lt;/strong&gt;?&lt;/p&gt;
&lt;video playsinline controls poster="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2017/07/poster-video-sin-parar.png"&gt;
  &lt;source src="https://archive.org/download/libreweb/sin-parar.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/sin-parar.webm"&gt;Vídeo&lt;/a&gt; (360p)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;El vídeo se encuentra bajo la licencia &lt;a href="https://creativecommons.org/licenses/by-sa/3.0/"&gt;&lt;abbr title="Attribution-ShareAlike 3.0 Unported"&gt;CC BY-SA 3.0&lt;/abbr&gt;&lt;/a&gt; y fue
obtenido de
&lt;a href="http://roaming-initiative.com/mediagoblin/u/rafapoverello/m/sin-parar/"&gt;la instancia de Mediagoblin de Roaming Initiative&lt;/a&gt;.&lt;/p&gt;</content><category term="Cine"></category><category term="capitalismo"></category><category term="ciencia"></category><category term="cortometraje"></category><category term="cultura libre"></category><category term="educación"></category><category term="sistema"></category><category term="video"></category></entry><entry><title>Crear parches con Git</title><link href="https://conocimientoslibres.tuxfamily.org/crear-parches-con-git/" rel="alternate"></link><published>2017-07-08T10:02:00+02:00</published><updated>2017-07-08T10:02:00+02:00</updated><author><name>Megver83</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-07-08:/crear-parches-con-git/</id><summary type="html">&lt;p&gt;Muchas veces pasa, especialmente cuando se trabaja en desarrollo de código,
que modificamos software (por ej. algo tan simple como un script o varios
archivos del código fuente de un programa) y queremos compartir esa
modificación o solamente guardarla para tener esa "diferenciación" en
la forma de un archivo de …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Muchas veces pasa, especialmente cuando se trabaja en desarrollo de código,
que modificamos software (por ej. algo tan simple como un script o varios
archivos del código fuente de un programa) y queremos compartir esa
modificación o solamente guardarla para tener esa "diferenciación" en
la forma de un archivo de texto plano para más tarde aplicarla cuando el
programa en el que nos basamos se actualice. Pues esa es la función que
cumplen los parches.&lt;/p&gt;
&lt;p&gt;En Wikipedia dice lo siguiente sobre los parches:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;En informática, un parche consta de cambios que se aplican a un programa,
para corregir errores, agregarle funcionalidad, actualizarlo, etc.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Pues hay varios métodos para crear parches, los más usados son &lt;code&gt;diff&lt;/code&gt; y &lt;code&gt;git diff&lt;/code&gt;.
En este tutorial se enseñará el uso de &lt;code&gt;git diff&lt;/code&gt;, por ser más completo.&lt;/p&gt;
&lt;h2 id="primer-paso-crear-los-directorios"&gt;Primer paso: crear los directorios&lt;a class="headerlink" href="#primer-paso-crear-los-directorios" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Este es un paso muy importante, que la mayoría de los tutoriales omiten,
más adelante se explicará por qué.&lt;/p&gt;
&lt;p&gt;Si se fijan bien, en Git, cada vez que se hace un commit se crea un parche,
y cuando muestra un archivo modificado aparece el comando
&lt;code&gt;diff --git a/ruta/al/archivo/modificado.sh b/ruta/al/archivo/modificado.sh&lt;/code&gt;
donde &lt;code&gt;modificado.sh&lt;/code&gt; es, en este caso, un script que fue modificado (.❛ ᴗ ❛.)&lt;/p&gt;
&lt;p&gt;Entonces, para modificar nuestro script, texto o código fuente primero hay que
crear el directorio &lt;code&gt;a&lt;/code&gt; y &lt;code&gt;b&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ mkdir a b
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;En el directorio &lt;code&gt;a&lt;/code&gt; pondremos el o los archivos sin modificar, y en el
directorio &lt;code&gt;b&lt;/code&gt; el modificado.&lt;/p&gt;
&lt;h2 id="segundo-paso-crea-el-parche"&gt;Segundo paso: crea el parche&lt;a class="headerlink" href="#segundo-paso-crea-el-parche" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Ejecuta:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ git diff --no-prefix --no-index --no-renames --binary a b &amp;gt; parche.patch
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;--no-prefix: No mostrar ningún prefijo de origen o destino.&lt;/li&gt;
&lt;li&gt;--no-index: Se usa para comparar las dos rutas dadas en el sistema de archivos.&lt;/li&gt;
&lt;li&gt;--no-remanes: Desactiva la detección de cambio de nombre de un archivo.&lt;/li&gt;
&lt;li&gt;--binary: Crea un diff binario que puede ser aplicado con git apply.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ya tienen listo su parche. Sencillo ¿no?. Pues bien, ahora es la hora de probarlo.&lt;/p&gt;
&lt;h2 id="tercer-paso-aplicar-el-parche"&gt;Tercer paso: aplicar el parche&lt;a class="headerlink" href="#tercer-paso-aplicar-el-parche" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Una vez tenemos nuestro parche como archivo &lt;code&gt;.diff&lt;/code&gt; o &lt;code&gt;.patch&lt;/code&gt; (aunque en general
se puede usar cualquier extensión), lo aplicaremos con &lt;code&gt;patch&lt;/code&gt; o &lt;code&gt;git apply&lt;/code&gt;
dependiendo del caso.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Solo texto plano: Si su parche únicamente modifica texto plano, como scripts,
   archivos de código fuente en C/C++, Python, Pascal, Javascript, PHP, HMTL, etc.
   entonces usaremos este comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ patch -p1 -i /ruta/del/parche.diff
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Con archivos binarios: Es decir, cosas como programas ejecutables ya compilados,
   imágenes PNG, JPEG, Gif, etc. que no sean texto plano. En general podrás identificar
   cuando se parcha un binario cuando en parche dice algo como "GIT binary patch".
   En este caso aplicaremos el parche de la siguiente manera:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ git apply -v /ruta/del/parche.diff
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="el-problema-con-diff-y-no-hacer-directorios-a-y-b"&gt;El problema con diff y no hacer directorios a y b&lt;a class="headerlink" href="#el-problema-con-diff-y-no-hacer-directorios-a-y-b" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Ahora, regresando a lo que decía anteriormente sobre por qué esto es importante,
se debe a que en muchas guías, wikis, etc. he encontrado que en vez de crear estos
directorios, crean un archivo (por ej.) &lt;code&gt;script.sh&lt;/code&gt; y &lt;code&gt;script.sh.new&lt;/code&gt; y luego en base
a eso ejecutan &lt;code&gt;diff -u scripts.sh script.sh.new&lt;/code&gt;.
Resulta que hay dos problemas en esto:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Al hacer eso, en el parche en vez de decir algo como
  &lt;code&gt;diff --opciones a/ruta/al/archivo/modificado.sh b/ruta/al/archivo/modificado.sh&lt;/code&gt;
  dice (en este caso) &lt;code&gt;diff --opciones script.sh script.sh.new&lt;/code&gt;, pero resulta que tu
  quieres parchar &lt;code&gt;b/script.sh&lt;/code&gt;, no &lt;code&gt;script.sh.new&lt;/code&gt; (porque dentro de &lt;code&gt;b/&lt;/code&gt; están los
  archivos modificados).&lt;/li&gt;
&lt;li&gt;Si se usa &lt;code&gt;diff&lt;/code&gt;, cuando se detecte un archivo que no existía originalmente en &lt;code&gt;a/&lt;/code&gt;
  (seguramente porque creaste uno en &lt;code&gt;b/&lt;/code&gt;), no lo va a agregar en el parche, y si
  eliminaste uno dentro del árbol original, tampoco quitará dicho archivo.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;diff&lt;/code&gt; no puede hacer parches de binarios.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Para que se entienda mejor, voy a ejemplificar cada caso con dos ejemplos.
En el primero, crearé los archivos que puse de ejemplo (valga la redundancia) y usaré diff:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;script.sh:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;Hello world&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;script.sh.new:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;Hello world&amp;quot;&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ahora haremos lo que la mayoría de tutoriales de internet te dicen que hagas:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ diff -u script.sh script.sh.new
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Y me queda así:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gd"&gt;--- script.sh   2018-03-16 15:52:49.887087539 -0300&lt;/span&gt;
&lt;span class="gi"&gt;+++ script.sh.new       2018-03-16 15:53:02.490420209 -0300&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,2 +1,3 @@&lt;/span&gt;
&lt;span class="gd"&gt;-#!/bin/bash&lt;/span&gt;
&lt;span class="gi"&gt;+#!/bin/sh&lt;/span&gt;
echo &amp;quot;Hello world&amp;quot;
&lt;span class="gi"&gt;+echo &amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Todo aparentemente bien, pero ahora apliquemos dicho parche&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ diff -u script.sh script.sh.new &lt;span class="p"&gt;|&lt;/span&gt; patch -p1 -i /dev/stdin
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;can&amp;#39;t find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
&lt;span class="gd"&gt;--------------------------&lt;/span&gt;
|--- script.sh  2018-03-16 15:52:49.887087539 -0300
|+++ script.sh.new      2018-03-16 15:53:02.490420209 -0300
&lt;span class="gd"&gt;--------------------------&lt;/span&gt;
File to patch:
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Falla siendo que estoy en el mismo directorio que &lt;code&gt;script.sh{.new}&lt;/code&gt;, de modo que
esto se corrige usando el hack de crear los directorios &lt;code&gt;a/&lt;/code&gt; y &lt;code&gt;b/&lt;/code&gt;.
Sin embargo, esto no resulve el punto 2 y 3. Vamos a por ello.&lt;/p&gt;
&lt;p&gt;Supongamos que tenemos esto dentro de &lt;code&gt;a/&lt;/code&gt; y &lt;code&gt;b/&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;a:
script.sh&lt;/p&gt;
&lt;p&gt;b:
archivo_binario.bin  script.sh&lt;/p&gt;
&lt;p&gt;Bien, ahora hagamos el parche con diff:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ diff -ur a b
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Sólo en b: archivo_binario.bin
&lt;span class="gh"&gt;diff -ur a/script.sh b/script.sh&lt;/span&gt;
&lt;span class="gd"&gt;--- a/script.sh 2018-03-16 15:37:27.513802777 -0300&lt;/span&gt;
&lt;span class="gi"&gt;+++ b/script.sh 2018-03-16 15:41:17.717123987 -0300&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,2 +1,3 @@&lt;/span&gt;
&lt;span class="gd"&gt;-#!/bin/bash&lt;/span&gt;
&lt;span class="gi"&gt;+#!/bin/sh&lt;/span&gt;
echo &amp;quot;Hello world&amp;quot;
&lt;span class="gi"&gt;+echo &amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Y se cumple lo que decía en el punto 2, no te pone el archivo nuevo,
te dice "Sólo en b" o si hay un fichero que está en &lt;code&gt;a/&lt;/code&gt; pero no en &lt;code&gt;b/&lt;/code&gt;
(es decir, seguro que lo eliminaste de tu fork), te saldrá el mensaje
"Sólo en a" en vez de eliminarlo o crearlo. Si aplicamos este parche
solo afectará a los archivos de texto plano, y aunque hiciera bien
su trabajo y creara este nuevo archivo no funcionaría porque
&lt;code&gt;archivo_binario.bin&lt;/code&gt; es un binario, el cual no está soportado por &lt;code&gt;diff&lt;/code&gt;
pero sí por &lt;code&gt;git&lt;/code&gt; lo cual nos lleva al tercer punto.
Mira lo que pasa si uso &lt;code&gt;git&lt;/code&gt; en vez de &lt;code&gt;diff&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ git diff --no-prefix --no-index --no-renames --binary a b
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gh"&gt;diff --git b/archivo_binario.bin b/archivo_binario.bin&lt;/span&gt;
new file mode 100644
&lt;span class="gh"&gt;index 0000000000000000000000000000000000000000..1ce3c1c596d7a7f400b0cc89bda5a41eed2780c5&lt;/span&gt;
GIT binary patch
literal 73
pcmd-HXHZUIU{c}EWl|AfLZWk+R0P|Ad@#)bSHb~R0-{lr003gr3L5|b

literal 0
HcmV?d00001

&lt;span class="gh"&gt;diff --git a/script.sh b/script.sh&lt;/span&gt;
&lt;span class="gh"&gt;index da049c4..3d351f5 100644&lt;/span&gt;
&lt;span class="gd"&gt;--- a/script.sh&lt;/span&gt;
&lt;span class="gi"&gt;+++ b/script.sh&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,2 +1,3 @@&lt;/span&gt;
&lt;span class="gd"&gt;-#!/bin/bash&lt;/span&gt;
&lt;span class="gi"&gt;+#!/bin/sh&lt;/span&gt;
echo &amp;quot;Hello world&amp;quot;
&lt;span class="gi"&gt;+echo &amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Ahora sí me consideró el archivo binario inexistente en &lt;code&gt;a/&lt;/code&gt; pero tangible en &lt;code&gt;b/&lt;/code&gt;.
Noten que en este caso particular, como ya expliqué anteriormente, al tratar con
archivos binarios que solo git soporta (vean el mensaje "GIT binary patch") se
debe usar &lt;code&gt;git apply&lt;/code&gt; obligatoriamente. Pero les recomiendo usarlo solo cuando sea
obligatorio, no siempre (en general no se usan muchos binarios en el software que
es 100% libre, a no ser que se traten de casos como firmware para el kernel o
librerías precompiladas, pero el software libre blobbeado suele tener binarios
privativos en su código, aunque el hecho de que sea binario no significa que sea
necesariamente privativo).&lt;/p&gt;
&lt;p&gt;Si tienes dudas al respecto sobre el uso de &lt;code&gt;diff&lt;/code&gt; y &lt;code&gt;git diff&lt;/code&gt; o &lt;code&gt;patch&lt;/code&gt; y &lt;code&gt;git apply&lt;/code&gt;
recuerda que puedes dejarlas en los comentarios, así como también leer sus &lt;strong&gt;manpages&lt;/strong&gt; y
consultar sus páginas web para más información.&lt;/p&gt;</content><category term="GNU/Linux"></category><category term="git"></category><category term="diff"></category><category term="patch"></category></entry><entry><title>Make patches with Git</title><link href="https://conocimientoslibres.tuxfamily.org/en/make-patches-with-git/" rel="alternate"></link><published>2017-07-08T10:02:00+02:00</published><updated>2017-07-08T10:02:00+02:00</updated><author><name>Megver83</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-07-08:/en/make-patches-with-git/</id><summary type="html">&lt;p&gt;Many times it happens, especially when working in code development,
that we modify software (eg something as simple as a script or
several files from the source code of a program) and we want to
share that modification or just save it to have that "differentiation"
in the form of …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Many times it happens, especially when working in code development,
that we modify software (eg something as simple as a script or
several files from the source code of a program) and we want to
share that modification or just save it to have that "differentiation"
in the form of a plain text file for later application when the
program on which we are based is updated.
Well that's the role patches play.&lt;/p&gt;
&lt;p&gt;Wikipedia says the following about patches:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;A patch is a set of changes to a computer program or its supporting
data designed to update, fix, or improve it. This includes fixing
security vulnerabilities and other bugs, with such patches usually
being called bugfixes or bug fixes, and improving the functionality,
usability or performance.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Well there are several methods to create patches, the most used
are &lt;code&gt;diff&lt;/code&gt; and &lt;code&gt;git diff&lt;/code&gt;. In this tutorial the use of &lt;code&gt;git diff&lt;/code&gt;
will be taught, as it is more complete.&lt;/p&gt;
&lt;h2 id="first-step-create-directories"&gt;First step: create directories&lt;a class="headerlink" href="#first-step-create-directories" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This is a very important step, that most of the tutorials skip,
why will be explained later.&lt;/p&gt;
&lt;p&gt;If you look closely, in Git, every time a commit is made a
patch is created, and when it shows a modified file the
command &lt;code&gt;diff --git a/path/to/file/modified.sh b/path/to/file/modified.sh&lt;/code&gt;
where &lt;code&gt;modified.sh&lt;/code&gt; is, in this case, a script that was modified (.❛ ᴗ ❛.)&lt;/p&gt;
&lt;p&gt;So, to modify our script, text or source code, we must first
create the directory &lt;code&gt;a&lt;/code&gt; and &lt;code&gt;b&lt;/code&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ mkdir a b
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;In directory &lt;code&gt;a&lt;/code&gt; we will put the unmodified file or files,
and in directory &lt;code&gt;b&lt;/code&gt; the modified one.&lt;/p&gt;
&lt;h2 id="step-two-create-patch"&gt;Step two: create patch&lt;a class="headerlink" href="#step-two-create-patch" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Run:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ git diff --no-prefix --no-index --no-renames --binary a b &amp;gt; patched.patch
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;--no-prefix: Do not show any source or destination prefix.&lt;/li&gt;
&lt;li&gt;--no-index: It is used to compare the two paths given in the file system.&lt;/li&gt;
&lt;li&gt;--no-remanes: Turn off file renaming detection.&lt;/li&gt;
&lt;li&gt;--binary: Create a binary diff that can be applied with git apply.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You have your patch ready. Simple, right? Well, now is the time to try it.&lt;/p&gt;
&lt;h2 id="step-three-apply-patch"&gt;Step three: apply patch&lt;a class="headerlink" href="#step-three-apply-patch" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Once we have our patch as a &lt;code&gt;.diff&lt;/code&gt; or &lt;code&gt;.patch&lt;/code&gt; file (although in general any
extension can be used), we will apply it with &lt;code&gt;patch&lt;/code&gt; or &lt;code&gt;git apply&lt;/code&gt;
depending on the case.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Plain text only: If your patch only modifies plain text, such as scripts,
   C/C ++ source files, Python, Pascal, Javascript, PHP, HMTL, etc.
   then we will use this command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ patch -p1 -i /ruta/del/parche.diff
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;With binary files: That is, things like already compiled executable programs,
   PNG images, JPEG, Gif, etc. other than plain text. In general you will be able
   to identify when a binary is patched when in patch it says something like
   "GIT binary patch". In this case we will apply the patch as follows:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ git apply -v /ruta/del/parche.diff
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="the-issue-with-diff-and-not-making-directories-a-and-b"&gt;The issue with diff and not making directories a and b&lt;a class="headerlink" href="#the-issue-with-diff-and-not-making-directories-a-and-b" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Now, going back to what I said earlier about why this is important,
it is because in many guides, wikis, etc. I have found that instead
of creating these directories, they create a file (eg) &lt;code&gt;script.sh&lt;/code&gt;
and &lt;code&gt;script.sh.new&lt;/code&gt; and then based on that they run
&lt;code&gt;diff -u scripts.sh script.sh.new&lt;/code&gt;.
It turns out that there are two problems in this:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;By doing that, in the patch instead of saying something like
  &lt;code&gt;diff --options a/path/to/file/modified.sh b/path/to/file/modified.sh&lt;/code&gt;
  says (in this case) &lt;code&gt;diff --options script.sh script.sh.new&lt;/code&gt;,
  but it turns out that you want to patch &lt;code&gt;b/script.sh&lt;/code&gt;,
  not &lt;code&gt;script.sh.new&lt;/code&gt; (because inside &lt;code&gt;b/&lt;/code&gt; are the modified files).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If &lt;code&gt;diff&lt;/code&gt; is used, when it detects a file that didn't originally exist in &lt;code&gt;a/&lt;/code&gt;
  (surely because you created one in &lt;code&gt;b/&lt;/code&gt;), it won't add it in the patch,
  and if you deleted one inside the original tree, it won't remove that file either.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;diff&lt;/code&gt; cannot patch binaries.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To better understand it, I will exemplify each case with two examples.
In the first one, I will create the files that I put as an example
(worth the redundancy) and I will use diff:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;script.sh:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/bash&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;Hello world&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;script.sh.new:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;Hello world&amp;quot;&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Now we will do what most internet tutorials tell you to do:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ diff -u script.sh script.sh.new
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;And it looks like this:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gd"&gt;--- script.sh   2018-03-16 15:52:49.887087539 -0300&lt;/span&gt;
&lt;span class="gi"&gt;+++ script.sh.new       2018-03-16 15:53:02.490420209 -0300&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,2 +1,3 @@&lt;/span&gt;
&lt;span class="gd"&gt;-#!/bin/bash&lt;/span&gt;
&lt;span class="gi"&gt;+#!/bin/sh&lt;/span&gt;
echo &amp;quot;Hello world&amp;quot;
&lt;span class="gi"&gt;+echo &amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Everything apparently fine, but now let's apply that patch&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ diff -u script.sh script.sh.new &lt;span class="p"&gt;|&lt;/span&gt; patch -p1 -i /dev/stdin
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;can&amp;#39;t find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
&lt;span class="gd"&gt;--------------------------&lt;/span&gt;
|--- script.sh  2018-03-16 15:52:49.887087539 -0300
|+++ script.sh.new      2018-03-16 15:53:02.490420209 -0300
&lt;span class="gd"&gt;--------------------------&lt;/span&gt;
File to patch:
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;It fails being that I am in the same directory as &lt;code&gt;script.sh{.new}&lt;/code&gt;,
so this is fixed using the create directories &lt;code&gt;a/&lt;/code&gt; and &lt;code&gt;b/&lt;/code&gt; hack.
However, this does not turn out point 2 and 3. Let's go for it.&lt;/p&gt;
&lt;p&gt;Suppose we have this inside &lt;code&gt;a/&lt;/code&gt; and &lt;code&gt;b/&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;a:
script.sh&lt;/p&gt;
&lt;p&gt;b:
binary_file.bin  script.sh&lt;/p&gt;
&lt;p&gt;Okay, now let's make the patch with diff:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ diff -ur a b
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Only in b: binary_file.bin
&lt;span class="gh"&gt;diff -ur a/script.sh b/script.sh&lt;/span&gt;
&lt;span class="gd"&gt;--- a/script.sh 2018-03-16 15:37:27.513802777 -0300&lt;/span&gt;
&lt;span class="gi"&gt;+++ b/script.sh 2018-03-16 15:41:17.717123987 -0300&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,2 +1,3 @@&lt;/span&gt;
&lt;span class="gd"&gt;-#!/bin/bash&lt;/span&gt;
&lt;span class="gi"&gt;+#!/bin/sh&lt;/span&gt;
echo &amp;quot;Hello world&amp;quot;
&lt;span class="gi"&gt;+echo &amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;And what is said in point 2 is true, it does not put the new file,
it tells you "Only in b" or if there is a file that is in &lt;code&gt;a/&lt;/code&gt; but not in &lt;code&gt;b/&lt;/code&gt;
(that is to say, surely you removed it from your fork), you will
get the message "Only in a" instead of deleting or creating it.
If we apply this patch it will only affect the plain text files,
and even if it did its job and created this new file it would not
work because &lt;code&gt;binary_file.bin&lt;/code&gt; is a binary, which is not supported
by &lt;code&gt;diff&lt;/code&gt; but it is supported by &lt;code&gt;git&lt;/code&gt; which leads us to third point.
See what happens if I use &lt;code&gt;git&lt;/code&gt; instead of &lt;code&gt;diff&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;$ git diff --no-prefix --no-index --no-renames --binary a b
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gh"&gt;diff --git b/binary_file.bin b/binary_file.bin&lt;/span&gt;
new file mode 100644
&lt;span class="gh"&gt;index 0000000000000000000000000000000000000000..1ce3c1c596d7a7f400b0cc89bda5a41eed2780c5&lt;/span&gt;
GIT binary patch
literal 73
pcmd-HXHZUIU{c}EWl|AfLZWk+R0P|Ad@#)bSHb~R0-{lr003gr3L5|b

literal 0
HcmV?d00001

&lt;span class="gh"&gt;diff --git a/script.sh b/script.sh&lt;/span&gt;
&lt;span class="gh"&gt;index da049c4..3d351f5 100644&lt;/span&gt;
&lt;span class="gd"&gt;--- a/script.sh&lt;/span&gt;
&lt;span class="gi"&gt;+++ b/script.sh&lt;/span&gt;
&lt;span class="gu"&gt;@@ -1,2 +1,3 @@&lt;/span&gt;
&lt;span class="gd"&gt;-#!/bin/bash&lt;/span&gt;
&lt;span class="gi"&gt;+#!/bin/sh&lt;/span&gt;
echo &amp;quot;Hello world&amp;quot;
&lt;span class="gi"&gt;+echo &amp;quot;This is a patched file :D&amp;quot;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Now I did consider the non-existent binary file in &lt;code&gt;a/&lt;/code&gt; but tangible in &lt;code&gt;b/&lt;/code&gt;.
Note that in this particular case, as I explained earlier, when dealing with
binary files that only git supports (see the message "GIT binary patch") you
must use &lt;code&gt;git apply&lt;/code&gt;. But I recommend using it only when it is mandatory,
not always (in general, not many binaries are used in software that is
100% free, unless they are cases such as firmware for the kernel or
precompiled libraries, but free software blobbeado It usually has proprietary
binaries in its code, although just because it's binary doesn't necessarily
mean it's proprietary.)&lt;/p&gt;
&lt;p&gt;If you have doubts about the use of &lt;code&gt;diff&lt;/code&gt; and &lt;code&gt;git diff&lt;/code&gt; or patch and &lt;code&gt;git apply&lt;/code&gt;,
remember that you can leave them in the comments, as well as read their &lt;strong&gt;manpages&lt;/strong&gt;
and consult their web pages for more information.&lt;/p&gt;</content><category term="GNU/Linux"></category><category term="git"></category><category term="diff"></category><category term="patch"></category></entry><entry><title>Conectar XMPP con WhatsApp usando yowsup y transWhat</title><link href="https://conocimientoslibres.tuxfamily.org/conectar-xmpp-con-whatsapp-usando-yowsup-y-transwhat/" rel="alternate"></link><published>2017-05-18T06:35:00+02:00</published><updated>2017-05-18T06:35:00+02:00</updated><author><name>Megver83</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-05-18:/conectar-xmpp-con-whatsapp-usando-yowsup-y-transwhat/</id><summary type="html">&lt;p&gt;¿No te ha pasado que la comunicación con tus amigos, familia, etc.
se dificulta por el simple hecho de no usar WhatsApp? Claro, es una
solución rápida, fácil y además multiplataforma, pero no respeta las
libertades y derechos de los usuarios. Conozco mucha gente del mundo
del software libre que …&lt;/p&gt;</summary><content type="html">&lt;p&gt;¿No te ha pasado que la comunicación con tus amigos, familia, etc.
se dificulta por el simple hecho de no usar WhatsApp? Claro, es una
solución rápida, fácil y además multiplataforma, pero no respeta las
libertades y derechos de los usuarios. Conozco mucha gente del mundo
del software libre que se ha visto obligada a instalarlo porque no hay
otra forma de comunicarse con quienes necesitan hacerlo (sea por trabajo,
tareas escolares, o simplemente mantener contacto con sus seres queridos).
Sin embargo, con &lt;a href="https://github.com/tgalal/yowsup"&gt;yowsup&lt;/a&gt; y &lt;a href="https://github.com/stv0g/transwhat"&gt;transWhat&lt;/a&gt;
eso se acabó. Con ambos, podrás
chatear con los usuarios de WhatsApp, estar en sus grupos y más,
utilizando la red de mensajería instantánea descentralizada más conocida: XMPP.&lt;/p&gt;
&lt;h2 id="que-son-yowsup-y-transwhat"&gt;¿Qué son yowsup y transWhat?&lt;a class="headerlink" href="#que-son-yowsup-y-transwhat" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Yowsup es una biblioteca de python que te permite crear aplicaciones que usan
el servicio de WhatsApp. Yowsup se ha utilizado para crear un cliente no
oficial de WhatsApp Nokia N9 a través del proyecto &lt;a href="https://github.com/tgalal/wazapp"&gt;Wazapp&lt;/a&gt;
que estaba en uso por 200K + usuarios, así como otro completamente oficioso cliente
no oficial para Blackberry 10. Por el otro lado, transWhat es una puerta de
enlace entre las redes de mensajería instantánea XMPP y WhatsApp.&lt;/p&gt;
&lt;h2 id="genial-como-empiezo"&gt;Genial! ¿Cómo empiezo?&lt;a class="headerlink" href="#genial-como-empiezo" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Los requisitos básicos son:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tener &lt;a href="https://pip.pypa.io/"&gt;pip&lt;/a&gt; instalado.&lt;/li&gt;
&lt;li&gt;Crearse una cuenta (en el caso de no tenerla) de XMPP con soporte para la pasarela transWhat. Por ejemplo, &lt;a href="https://jabjab.de/"&gt;JabJab.de&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Tener un número de teléfono móvil (celular).&lt;/li&gt;
&lt;li&gt;Tener un cliente XMPP avanzado, por ejemplo Gajim, con la cuenta XMPP a usarse configurada.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="entonces-manos-a-la-obra"&gt;Entonces, ¡Manos a la obra!&lt;a class="headerlink" href="#entonces-manos-a-la-obra" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Desde un terminal, instala el paquete yowsup2 con pip como root.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pip install yowsup2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Después de haberlo instalado, asegúrate que en el archivo
/usr/lib/python3.6/site-packages/yowsup/env/env.py
en la variable DEFAULT diga "Android" (incluyendo las comillas),
lee &lt;a href="https://github.com/tgalal/yowsup/issues/1952#issuecomment-284212268"&gt;este comentario&lt;/a&gt;
de un issue del repositorio GitHub de yowsup.&lt;/p&gt;
&lt;h2 id="creacion-de-la-cuenta"&gt;Creación de la cuenta&lt;a class="headerlink" href="#creacion-de-la-cuenta" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Para crearte una cuenta con yowsup, debes ejecutar el siguiente comando:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;yowsup-cli registration -E s40 -r sms -p &amp;lt;nº_de_teléfono&amp;gt; -C &amp;lt;código_del_país&amp;gt; -m &amp;lt;código_móvil_del_país&amp;gt; -n &amp;lt;código_móvil_de_la_red&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Entonces, como dijo Jack el destripador, vamos por parte.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;nº_de_teléfono&amp;gt;&lt;/code&gt; debe ser el número de teléfono completo, con el código del país, exceptuando el signo &lt;code&gt;+&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;código_del_país&amp;gt;&lt;/code&gt; corresponde al código del país, si no te sabes el tuyo, míralo &lt;a href="http://www.ipipi.com/networkList.do"&gt;aquí&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;código_móvil_del_país&amp;gt;&lt;/code&gt; Es el MCC que lo puedes encontrar &lt;a href="https://es.wikipedia.org/wiki/Mobile_country_code"&gt;aquí&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;código_móvil_de_la_red&amp;gt;&lt;/code&gt; Es el MNC que también lo puedes encontrar en la misma página que &lt;code&gt;&amp;lt;código_móvil_del_país&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si todo funcionó, debería aparecerte algo como esto al final del comando, deberías recibir
un mensaje de texto con el código para registrarte, de forma similar, escribe:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;yowsup-cli registration -E s40 -p &amp;lt;nº_de_teléfono&amp;gt; -C &amp;lt;código_del_país&amp;gt; -m &amp;lt;código_móvil_del_país&amp;gt; -n &amp;lt;código_móvil_de_la_red&amp;gt; -R &amp;lt;código_del_sms&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Donde &lt;code&gt;&amp;lt;código_del_sms&amp;gt;&lt;/code&gt; corresponde al código que recibiste en tu celular.
El resultado del comando, cerca del final, deberías obtener algo como:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;INFO:yowsup.common.http.warequest:b&lt;span class="s1"&gt;&amp;#39;{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;login&amp;quot;:&amp;quot;&amp;lt;nº_de_teléfono&amp;gt;&amp;quot;,&amp;quot;type&amp;quot;:&amp;quot;existing&amp;quot;,&amp;quot;pw&amp;quot;:&amp;quot;FBmvgZs8UUbSX2ZHeVyxc7G7g4s=&amp;quot;,&amp;quot;expiration&amp;quot;:4444444444.0,&amp;quot;kind&amp;quot;:&amp;quot;free&amp;quot;,&amp;quot;price&amp;quot;:&amp;quot;US$0.99&amp;quot;,&amp;quot;cost&amp;quot;:&amp;quot;0.99&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;,&amp;quot;price_expiration&amp;quot;:1497967560}\n&amp;#39;&lt;/span&gt; status: b&lt;span class="s1"&gt;&amp;#39;ok&amp;#39;&lt;/span&gt; login: b&lt;span class="s1"&gt;&amp;#39;&amp;lt;nº_de_teléfono&amp;gt;&amp;#39;&lt;/span&gt; pw: b&lt;span class="s1"&gt;&amp;#39;&amp;lt;contraseña&amp;gt;&amp;#39;&lt;/span&gt; type: b&lt;span class="s1"&gt;&amp;#39;existing&amp;#39;&lt;/span&gt; expiration: &lt;span class="m"&gt;4444444444&lt;/span&gt;.0 kind: b&lt;span class="s1"&gt;&amp;#39;free&amp;#39;&lt;/span&gt; price: b&lt;span class="s1"&gt;&amp;#39;US$0.99&amp;#39;&lt;/span&gt; cost: b&lt;span class="s1"&gt;&amp;#39;0.99&amp;#39;&lt;/span&gt; currency: b&lt;span class="s1"&gt;&amp;#39;USD&amp;#39;&lt;/span&gt; price_expiration: &lt;span class="m"&gt;1497967560&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Lo que nos interesa de aquí es lo que está ennegrecido. A ustedes les mostrará su número de teléfono y una contraseña,
que ahora usaremos para conectar XMPP con WhatsApp. Nota que las letras “b” y los apostrofes no están ennegrecidos.&lt;/p&gt;
&lt;h2 id="conectando-xmpp-y-whatsapp-con-transwhat"&gt;Conectando XMPP y WhatsApp con transWhat&lt;a class="headerlink" href="#conectando-xmpp-y-whatsapp-con-transwhat" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Entonces, ahora que tenemos el número y la contraseña, es hora de la acción. Si usas Gajim, ve a &lt;strong&gt;Acciones&amp;gt; Descubrir servicios&amp;gt;
usando la cuenta jabjab.de&lt;/strong&gt; (o la que ustedes usen con soporte transWhat). En la sección "Transportes" selecciona "transWhat" y
luego haz click en "Suscribir", te pedirá el número y contraseña que obtuviste con yowsup.&lt;/p&gt;
&lt;p&gt;Listo! Ya tienes una cuenta XMPP funcional con WhatsApp. Para agregar contactos de WhatsApp tienes que
añadirlos con la dirección &lt;code&gt;&amp;lt;nº_de_teléfono&amp;gt;@dominio.del.transporte&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;lt;nº_de_teléfono&amp;gt;&lt;/code&gt;: tiene que ser el número completo pero sin el signo &lt;code&gt;+&lt;/code&gt;,
igual que cuando te registraste.&lt;/p&gt;
&lt;h2 id="para-finalizar"&gt;Para finalizar&lt;a class="headerlink" href="#para-finalizar" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Esperamos que te haya servido este tutorial, compártelo con tus amigos, en redes sociales y has derivados de este artículo si lo deseas,
recuerda que Conocimientos Libres se trata de eso (o˘◡˘o)&lt;/p&gt;
&lt;p&gt;Le agradezco a &lt;a href="https://trisquel.info/es/users/trinux"&gt;trinux&lt;/a&gt;, quien fue la persona que me enseñó como conectar XMPP y WhatsApp.&lt;/p&gt;</content><category term="GNU/Linux"></category><category term="xmpp"></category></entry><entry><title>Connect XMPP with WhatsApp using yowsup and transWhat</title><link href="https://conocimientoslibres.tuxfamily.org/en/connect-xmpp-with-whatsapp-using-yowsup-and-transWhat/" rel="alternate"></link><published>2017-05-18T06:35:00+02:00</published><updated>2017-05-18T06:35:00+02:00</updated><author><name>Megver83</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-05-18:/en/connect-xmpp-with-whatsapp-using-yowsup-and-transWhat/</id><summary type="html">&lt;p&gt;Hasn't it happened to you that communication with your friends,
family, etc. is made difficult by the simple fact of not using
WhatsApp? Sure, it's a quick, easy, and cross-platform solution,
but it doesn't respect the freedoms and rights of users.
I know many people in the world of free …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Hasn't it happened to you that communication with your friends,
family, etc. is made difficult by the simple fact of not using
WhatsApp? Sure, it's a quick, easy, and cross-platform solution,
but it doesn't respect the freedoms and rights of users.
I know many people in the world of free software who have been
forced to install it because there is no other way to communicate
with those who need to do it (be it for work, school work, or
simply keep in touch with their loved ones). However,
with &lt;a href="https://github.com/tgalal/yowsup"&gt;yowsup&lt;/a&gt; and &lt;a href="https://github.com/stv0g/transwhat"&gt;transWhat&lt;/a&gt; that is over.
With both, you can chat with WhatsApp users, be in their groups
and more, using the best-known decentralized instant messaging
network: XMPP.&lt;/p&gt;
&lt;h2 id="what-are-yowsup-and-transwhat"&gt;What are yowsup and transWhat?&lt;a class="headerlink" href="#what-are-yowsup-and-transwhat" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Yowsup is a python library that allows you to create applications
that use the WhatsApp service. Yowsup has been used to create an
unofficial WhatsApp Nokia N9 client through the
&lt;a href="https://github.com/tgalal/wazapp"&gt;Wazapp&lt;/a&gt; project that was in use by 200K + users,
as well as another completely unofficial client for Blackberry 10.
On the other hand, transWhat is a gateway to link between XMPP
and WhatsApp instant messaging networks.&lt;/p&gt;
&lt;h2 id="brilliant-how-do-i-start"&gt;Brilliant! How do I start?&lt;a class="headerlink" href="#brilliant-how-do-i-start" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The basic requirements are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Have &lt;a href="https://pip.pypa.io/"&gt;pip&lt;/a&gt; installed.&lt;/li&gt;
&lt;li&gt;Create an XMPP account (if you don't have one) with support for
  the transWhat gateway. For example, &lt;a href="https://jabjab.de/"&gt;JabJab.de&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Have a mobile phone number.&lt;/li&gt;
&lt;li&gt;Have an advanced XMPP client, for example Gajim, with the XMPP
  account to be used configured.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="so-get-to-work"&gt;So, get to work!&lt;a class="headerlink" href="#so-get-to-work" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;From a terminal, install the yowsup2 package with pip as root.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;# &lt;/span&gt;pip install yowsup2
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;After you have installed it, make sure that in the file
/usr/lib/python3.6/site-packages/yowsup/env/env.py in
DEFAULT variable it says "Android" (including the quotes),
read this &lt;a href="https://github.com/tgalal/yowsup/issues/1952#issuecomment-284212268"&gt;comment&lt;/a&gt; from an issue from yowsup's
GitHub repository.&lt;/p&gt;
&lt;h2 id="make-account"&gt;Make account&lt;a class="headerlink" href="#make-account" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;To create an account with yowsup, you must run the following command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;yowsup-cli registration -E s40 -r sms -p &amp;lt;phone_number&amp;gt; -C &amp;lt;country_code&amp;gt; -m &amp;lt;country_mobile_code&amp;gt; -n &amp;lt;network_mobile_code&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;So, as Jack the Ripper said, let's go part.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;phone_number&amp;gt;&lt;/code&gt; it must be the complete telephone number, with the country code, except for the &lt;code&gt;+&lt;/code&gt; sign&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;country_code&amp;gt;&lt;/code&gt; corresponds to the country code, if you do not know yours, see it &lt;a href="http://www.ipipi.com/networkList.do"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;country_mobile_code&amp;gt;&lt;/code&gt; It is the MCC that you can find &lt;a href="https://en.wikipedia.org/wiki/Mobile_country_code"&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;network_mobile_code&amp;gt;&lt;/code&gt; It is the MNC that you can also find on the same page as &lt;code&gt;&amp;lt;country_mobile_code&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If everything works, something like this should appear at the end of the command,
you should receive a text message with the code to register, similarly write:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="gp"&gt;$ &lt;/span&gt;yowsup-cli registration -E s40 -p &amp;lt;phone_number&amp;gt; -C &amp;lt;country_code&amp;gt; -m &amp;lt;country_mobile_code&amp;gt; -n &amp;lt;network_mobile_code&amp;gt; -R &amp;lt;sms_code&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Where &lt;code&gt;&amp;lt;sms_code&amp;gt;&lt;/code&gt; corresponds to the code you received on your cell
phone.
The output of the command, near the end, you should get something like:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;INFO:yowsup.common.http.warequest:b&lt;span class="s1"&gt;&amp;#39;{&amp;quot;status&amp;quot;:&amp;quot;ok&amp;quot;,&amp;quot;login&amp;quot;:&amp;quot;&amp;lt;phone_number&amp;gt;&amp;quot;,&amp;quot;type&amp;quot;:&amp;quot;existing&amp;quot;,&amp;quot;pw&amp;quot;:&amp;quot;FBmvgZs8UUbSX2ZHeVyxc7G7g4s=&amp;quot;,&amp;quot;expiration&amp;quot;:4444444444.0,&amp;quot;kind&amp;quot;:&amp;quot;free&amp;quot;,&amp;quot;price&amp;quot;:&amp;quot;US$0.99&amp;quot;,&amp;quot;cost&amp;quot;:&amp;quot;0.99&amp;quot;,&amp;quot;currency&amp;quot;:&amp;quot;USD&amp;quot;,&amp;quot;price_expiration&amp;quot;:1497967560}\n&amp;#39;&lt;/span&gt; status: b&lt;span class="s1"&gt;&amp;#39;ok&amp;#39;&lt;/span&gt; login: b&lt;span class="s1"&gt;&amp;#39;&amp;lt;phone_number&amp;gt;&amp;#39;&lt;/span&gt; pw: b&lt;span class="s1"&gt;&amp;#39;&amp;lt;password&amp;gt;&amp;#39;&lt;/span&gt; type: b&lt;span class="s1"&gt;&amp;#39;existing&amp;#39;&lt;/span&gt; expiration: &lt;span class="m"&gt;4444444444&lt;/span&gt;.0 kind: b&lt;span class="s1"&gt;&amp;#39;free&amp;#39;&lt;/span&gt; price: b&lt;span class="s1"&gt;&amp;#39;US$0.99&amp;#39;&lt;/span&gt; cost: b&lt;span class="s1"&gt;&amp;#39;0.99&amp;#39;&lt;/span&gt; currency: b&lt;span class="s1"&gt;&amp;#39;USD&amp;#39;&lt;/span&gt; price_expiration: &lt;span class="m"&gt;1497967560&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;What interests us here is what is blackened. It will show you your
phone number and password, which we will now use to connect XMPP
with WhatsApp. Note that the letters "b" and the apostrophes are
not blackened.&lt;/p&gt;
&lt;h2 id="connecting-xmpp-and-whatsapp-with-transwhat"&gt;Connecting XMPP and WhatsApp with transWhat&lt;a class="headerlink" href="#connecting-xmpp-and-whatsapp-with-transwhat" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;So now that we have the number and password, it's time for action.
If you use Gajim, go to &lt;strong&gt;Actions&amp;gt;Discover services&amp;gt;using the
account jabjab.de&lt;/strong&gt; (or the one you use with transWhat support).
In the "Transport" section select "transWhat" and then click
"Subscribe", it will ask for the number and password that you
obtained with yowsup.&lt;/p&gt;
&lt;p&gt;Ready! You already have a functional XMPP account with WhatsApp.
To add WhatsApp contacts you have to add them with the address
&lt;code&gt;&amp;lt;phone number&amp;gt;@domain.of.transport&amp;gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&amp;lt;telephone number&amp;gt;&lt;/code&gt;: it must be the complete number but without the &lt;code&gt;+&lt;/code&gt; sign,
the same as when you registered.&lt;/p&gt;
&lt;h2 id="to-end"&gt;To end&lt;a class="headerlink" href="#to-end" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;We hope this tutorial has helped you, share it with your friends, on social
networks and you have derived from this article if you wish, remember that
Conocimientos Libres is about that (o˘◡˘o)&lt;/p&gt;
&lt;p&gt;I thank &lt;a href="https://trisquel.info/en/users/trinux"&gt;trinux&lt;/a&gt;, who was the person who taught me how to
connect XMPP and WhatsApp.&lt;/p&gt;</content><category term="GNU/Linux"></category><category term="xmpp"></category></entry><entry><title>Locutus de GNU</title><link href="https://conocimientoslibres.tuxfamily.org/locutus-de-gnu/" rel="alternate"></link><published>2017-02-01T00:03:00+01:00</published><updated>2021-11-02T00:00:00+01:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2017-02-01:/locutus-de-gnu/</id><content type="html">&lt;p&gt;Encontré &lt;a href="https://archive.org/details/libreweb/locutus.webm"&gt;esta parodia&lt;/a&gt;
muy graciosa. Para entenderla al menos debéis saber qué son el software
libre y el software privativo. Espero que os guste.&lt;/p&gt;
&lt;video playsinline controls
       poster="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2017/02/locutus.png"&gt;
  &lt;source src="https://archive.org/download/libreweb/locutus.webm" type="video/webm"&gt;
  &lt;p&gt;&lt;em&gt;Su navegador no admite la etiqueta video, descargue el video en su lugar.&lt;/em&gt;&lt;/p&gt;
&lt;/video&gt;

&lt;h6 id="descargas"&gt;Descargas&lt;a class="headerlink" href="#descargas" title="Permanent link"&gt;&amp;para;&lt;/a&gt;&lt;/h6&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://archive.org/download/libreweb/locutus.webm"&gt;Vídeo&lt;/a&gt; (360p)&lt;/li&gt;
&lt;/ul&gt;</content><category term="Cine"></category><category term="GNU/Linux"></category><category term="gracioso"></category><category term="humor"></category><category term="software libre"></category><category term="software privativo"></category><category term="Star Trek"></category><category term="video"></category></entry><entry><title>Convertir un vídeo a formato GIF</title><link href="https://conocimientoslibres.tuxfamily.org/convertir-un-video-a-formato-gif/" rel="alternate"></link><published>2016-08-10T10:17:00+02:00</published><updated>2017-03-26T14:38:00+02:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2016-08-10:/convertir-un-video-a-formato-gif/</id><summary type="html">&lt;p&gt;&lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2016/08/cat_animation.gif"&gt;&lt;img alt="Animación de un gato hecha con
Pygame" class="aligncenter size-full wp-image-235" height="196" src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2016/08/cat_animation.gif" width="1000"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hay muchas formas y programas útiles para hacer esto. Aquí os cuento mi
método:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Si no tienes &lt;code&gt;ffmpeg&lt;/code&gt;, instálalo&lt;/strong&gt; (en distribuciones de GNU/Linux
    basadas en Debian con &lt;code&gt;sudo apt-get install ffmpeg&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Separa el vídeo en fotogramas&lt;/strong&gt;:
    &lt;code&gt;mkdir fotogramas &amp;amp;&amp;amp; ffmpeg -i tuvideo fotogramas/fotograma%04d.png&lt;/code&gt; (los
    fotogramas se guardarán …&lt;/li&gt;&lt;/ol&gt;</summary><content type="html">&lt;p&gt;&lt;a href="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2016/08/cat_animation.gif"&gt;&lt;img alt="Animación de un gato hecha con
Pygame" class="aligncenter size-full wp-image-235" height="196" src="https://conocimientoslibres.tuxfamily.org/wp-content/uploads/article/images/2016/08/cat_animation.gif" width="1000"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hay muchas formas y programas útiles para hacer esto. Aquí os cuento mi
método:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Si no tienes &lt;code&gt;ffmpeg&lt;/code&gt;, instálalo&lt;/strong&gt; (en distribuciones de GNU/Linux
    basadas en Debian con &lt;code&gt;sudo apt-get install ffmpeg&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Separa el vídeo en fotogramas&lt;/strong&gt;:
    &lt;code&gt;mkdir fotogramas &amp;amp;&amp;amp; ffmpeg -i tuvideo fotogramas/fotograma%04d.png&lt;/code&gt; (los
    fotogramas se guardarán en la carpeta &lt;code&gt;fotogramas&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Borra los fotogramas que no necesites&lt;/strong&gt; (paso opcional).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Une los fotogramas extraídos creando un gif con el programa
    adecuado&lt;/strong&gt;. Puedes usar &lt;code&gt;animate&lt;/code&gt;
    (&lt;code&gt;animate fotograma*.png anim.gif&lt;/code&gt;) para hacerlo rápido, pero si
    buscas controlar mejor el espacio de tiempo entre fotogramas utiliza
    &lt;code&gt;convert&lt;/code&gt; (&lt;code&gt;convert -delay 0 -loop 0 fotograma*.png anim.gif&lt;/code&gt;).
    &lt;code&gt;-delay num&lt;/code&gt; indica el tiempo entre los fotogramas y &lt;code&gt;-loop 0&lt;/code&gt;
    quiere decir que cuando acabe de reproducir las imagenes empezará
    de nuevo. Estas herramientas suelen estar ya instaladas en muchas
    distribuciones de GNU/Linux, forman parte de &lt;code&gt;ImageMagick&lt;/code&gt;
    (&lt;a href="http://imagemagick.org/script/index.php"&gt;http://imagemagick.org/script/index.php&lt;/a&gt;).&lt;/li&gt;
&lt;/ol&gt;</content><category term="Edición de imágenes"></category><category term="animate"></category><category term="cat animation"></category><category term="convert"></category><category term="ffmpeg"></category><category term="GIF"></category><category term="GNU/Linux"></category><category term="ImageMagick"></category></entry><entry><title>Salva el Internet</title><link href="https://conocimientoslibres.tuxfamily.org/salva-el-internet/" rel="alternate"></link><published>2016-06-29T12:07:00+02:00</published><updated>2016-06-29T12:07:00+02:00</updated><author><name>Jorge Maldonado Ventura</name></author><id>tag:conocimientoslibres.tuxfamily.org,2016-06-29:/salva-el-internet/</id><summary type="html">&lt;p&gt;Los reguladores europeos están a punto de decidir si darle a las grandes
corporaciones de telecomunicaciones el poder de decidir sobre lo que
podemos y no podemos hacer en Internet.&lt;/p&gt;
&lt;p&gt;La neutralidad de la Red está en peligro. La discriminación de datos en
base a su origen, destino o tipo …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Los reguladores europeos están a punto de decidir si darle a las grandes
corporaciones de telecomunicaciones el poder de decidir sobre lo que
podemos y no podemos hacer en Internet.&lt;/p&gt;
&lt;p&gt;La neutralidad de la Red está en peligro. La discriminación de datos en
base a su origen, destino o tipo de dato supondría un peligro para la
libertad de expresión, para la libre competencia entre empresas y para
muchas otras libertades.&lt;/p&gt;
&lt;p&gt;Por estas razones, se ha puesto en marcha una campaña para salvar el
Internet: &lt;a href="https://www.savetheinternet.eu/es/"&gt;https://www.savetheinternet.eu/es/&lt;/a&gt;. En dicha página, que ya
ha sido traducida a varios idiomas, se explican los peligros de las
regulaciones que se quieren aprobar y cómo ayudar a pararlas. Todavía
nos quedan 19 días para tomar acción y salvar nuestra libertad.&lt;/p&gt;</content><category term="Opinión"></category><category term="Internet"></category><category term="libertad"></category><category term="neutralidad de la Red"></category><category term="Unión Europea"></category></entry></feed>