|
|
|
|
@@ -1,11 +1,15 @@
|
|
|
|
|
<!--
|
|
|
|
|
for vim:
|
|
|
|
|
set makeprg=./make-html.sh
|
|
|
|
|
set makeprg=html/make-html.sh
|
|
|
|
|
-->
|
|
|
|
|
|
|
|
|
|
# Índice de la Charla
|
|
|
|
|
|
|
|
|
|
- Filosofía
|
|
|
|
|
Este índice no es muy literal ni al pie de la letra.
|
|
|
|
|
|
|
|
|
|
- Filosofía (sobre como empaqueta y distribuye)
|
|
|
|
|
- Consecuencias (te obliga a montarlo a ti)
|
|
|
|
|
- ¿Por qué usar arch? (razones, sobre todo como estudiantes de la etsiit)
|
|
|
|
|
Te lo montas tu... Es importante conocer las partes de un SO de Linux.
|
|
|
|
|
- Partes de un SO:
|
|
|
|
|
- Kernel (linux, linux-zen)
|
|
|
|
|
@@ -38,7 +42,7 @@
|
|
|
|
|
|
|
|
|
|
> — <cite> <https://archlinux.org/about/> </cite>
|
|
|
|
|
|
|
|
|
|
Arch es una distribución de Linux que te deja el trabaho de configurar tu ordenador a ti.
|
|
|
|
|
Arch es una distribución de Linux que te deja el trabajo de configurar tu ordenador a ti.
|
|
|
|
|
|
|
|
|
|
Muchas otras distribuciones vienen con todas las partes de un SO incluidas, sin libertad de elegir, y muchas veces modifican el codigo de los projectos para ajustarse más a la distribución. Por ejemplo:
|
|
|
|
|
|
|
|
|
|
@@ -50,7 +54,7 @@ Arch Linux en cambio busca evitar modificar el código original, prioriza manten
|
|
|
|
|
|
|
|
|
|
## Consecuencias
|
|
|
|
|
|
|
|
|
|
Por esto mismo es un sistema que no trae nada por defecto. Te obliga a entender cada una de las partes de tu ordenador para poder instalarlo y eres tú el responsable de configurarlas para que cada una de las partes de tu sistema funcionen correctamente entre si.
|
|
|
|
|
Por esto mismo es un sistema que no trae nada por defecto. Te obliga a entender cada una de las partes de tu ordenador para poder instalarlo, y eres tú el responsable de configurarlas para que cada una de las partes de tu sistema funcionen correctamente entre si.
|
|
|
|
|
|
|
|
|
|
Hay herramientas para instalar arch con un solo click, pero con estas es muy fácil desentendernos de los componentes que conforman nuestro sistema operativo, y luego cuando cualquier cosa cambie que requiera nuestra intervención, no entenderemos nuestro sistema para arreglarlo. Una vez entiendes tu sistema es muy dificil cargárselo, ya que sabremos que componente ha fallado, porque, como arreglarlo o incluso alternativas a ese componente.
|
|
|
|
|
|
|
|
|
|
@@ -74,7 +78,7 @@ Arch soporta oficialmente linux, pero tecnicamente podrías instalar cualquier i
|
|
|
|
|
|
|
|
|
|
<details>
|
|
|
|
|
|
|
|
|
|
<summary markdown="1">Paquetes <code>linux-cachyos</code> en el AUR actualmente.</summary>
|
|
|
|
|
<summary>Paquetes <code>linux-cachyos</code> en el AUR actualmente.</summary>
|
|
|
|
|
|
|
|
|
|
`linux-cachyos` `linux-cachyos-bore` `linux-cachyos-rc` `linux-cachyos-lts` `linux-cachyos-cjktty` `linux-cachyos-eevdf` `linux-cachyos-hardened` `linux-cachyos-bmq` `linux-cachyos-server` `linux-cachyos-deckify-native` `linux-cachyos-native` `linux-cachyos-native-nvidia-open` `linux-cachyos-rc-native` `linux-cachyos-rc-native-nvidia-open`
|
|
|
|
|
|
|
|
|
|
@@ -119,26 +123,27 @@ El más popular es `NetworkManager`, que es un <q>todo en uno</q> de un _daemon_
|
|
|
|
|
|
|
|
|
|
## Administrador de Paquetes
|
|
|
|
|
|
|
|
|
|
Hasta ahora hemos visto el kernel, los creutils, un bootloader, el init system y todos los servicios y _daemons_ que puede haber. Esto son muchísimos archivos y manejarlos a mano sería un desastre.
|
|
|
|
|
Hasta ahora hemos visto el kernel, los coreutils, un bootloader, el init system y todos los servicios y _daemons_ que puede haber. Esto son muchísimos archivos y manejarlos a mano sería un desastre.
|
|
|
|
|
|
|
|
|
|
Para esto está el concepto de un <q>package manager</q> o <q>administrador de paquetes</q>. En vez e manejar los programas como archivos independientes, los agrupamos en <q>paquetes</q> que contienen los archivos relacionados al programa, y el el administrados de paquetes el que se encarga de manejar todos estos archivos.
|
|
|
|
|
|
|
|
|
|
```txt
|
|
|
|
|
➜ pacman -Ql lidm
|
|
|
|
|
lidm-git /etc/
|
|
|
|
|
lidm-git /etc/lidm.ini
|
|
|
|
|
lidm-git /usr/
|
|
|
|
|
lidm-git /usr/bin/
|
|
|
|
|
lidm-git /usr/bin/lidm
|
|
|
|
|
lidm-git /usr/share/
|
|
|
|
|
lidm-git /usr/share/man/
|
|
|
|
|
lidm-git /usr/share/man/man1/
|
|
|
|
|
lidm-git /usr/share/man/man1/lidm.1.gz
|
|
|
|
|
lidm-git /usr/share/man/man5/
|
|
|
|
|
lidm-git /usr/share/man/man5/lidm-config.5.gz
|
|
|
|
|
➜ pacman -Ql lidm | treeify
|
|
|
|
|
[lidm-git ]
|
|
|
|
|
├─etc
|
|
|
|
|
│ └─lidm.ini
|
|
|
|
|
└─usr
|
|
|
|
|
├─bin
|
|
|
|
|
│ └─lidm
|
|
|
|
|
└─share
|
|
|
|
|
└─man
|
|
|
|
|
├─man1
|
|
|
|
|
│ └─lidm.1.gz
|
|
|
|
|
└─man5
|
|
|
|
|
└─lidm-config.5.gz
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Suelen hacer más tareas, como mostrar información de cada paquete y satisfacer sus dependencias (esto con otros paquetes del que determinado paquete depende, por ejemplo por ser una librería).
|
|
|
|
|
Suelen hacer más tareas, como mostrar información de cada paquete y satisfacer sus dependencias (esto con otros paquetes del que determinado paquete depende, por ejemplo por ser una librería dinámica).
|
|
|
|
|
|
|
|
|
|
```txt
|
|
|
|
|
➜ ldd /usr/bin/lidm
|
|
|
|
|
@@ -150,9 +155,9 @@ Suelen hacer más tareas, como mostrar información de cada paquete y satisfacer
|
|
|
|
|
libcap-ng.so.0 => /usr/lib/libcap-ng.so.0 (0x00007fd93d1ff000)
|
|
|
|
|
|
|
|
|
|
➜ pacman -F /usr/lib/libpam.so.0
|
|
|
|
|
usr/lib/libpam.so.0 is owned by system/pam 1.7.1-1
|
|
|
|
|
usr/lib/libpam.so.0 is owned by core/pam 1.7.1-1
|
|
|
|
|
|
|
|
|
|
➜ paru -Qi lidm | grep Depends
|
|
|
|
|
➜ pacman -Qi lidm | grep Depends
|
|
|
|
|
Depends On : pam lidm-service
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
@@ -162,7 +167,7 @@ Este es uno de los componentes en el que las distribuciones normales no dan elec
|
|
|
|
|
|
|
|
|
|
## Repositorios
|
|
|
|
|
|
|
|
|
|
Los repositorios son los <q>sitios</q> donde se agrupan los paquetes. En arch hay dos principales, `core` para los componentes super básicos (el kernel, init system, administrador de paquetes), y `extra` para paquetes que no son principales en un sistema operativo (naevgador, interfaces, etc).
|
|
|
|
|
Los repositorios son los <q>sitios</q> donde se agrupan los paquetes. En arch actualmente hay dos principales, `core` para los componentes super básicos (el kernel, init system, administrador de paquetes), y `extra` para paquetes que no son principales en un sistema operativo (naevgador, interfaces, etc).
|
|
|
|
|
|
|
|
|
|
Hay repositorios extra, como puede ser `multilib` para paquetes de 32 bits, y nada te impide hacer tus propios repositorios personales con tu propia selección de paquetes.
|
|
|
|
|
|
|
|
|
|
@@ -174,7 +179,7 @@ Los espejos o _mirrors_ es simplemente una copia de los repositorios en cierto s
|
|
|
|
|
|
|
|
|
|
### AUR
|
|
|
|
|
|
|
|
|
|
El AUR (Arch User Repository) es un repositorio con _scripts_ creados por usuarios de arch con como instalar un paquete.
|
|
|
|
|
El AUR (Arch User Repository) es un repositorio **no oficial** con _scripts_ creados por usuarios de arch con como instalar un paquete.
|
|
|
|
|
|
|
|
|
|
Si un paquete no está oficialmente en los repositorios, es muy posible que alguien lo haya añadido ahí ya, y si no... ¡Tú puedes ser la primera persona en hacerlo!
|
|
|
|
|
|
|
|
|
|
@@ -190,15 +195,15 @@ Si un paquete no está oficialmente en los repositorios, es muy posible que algu
|
|
|
|
|
|
|
|
|
|
Os habreis dado cuenta de que habrá muchos componentes pero todavía no hemos salido de la TTY, ni una sola interfaz gráfica. Y ahora ha llegado el momento de instalar una.
|
|
|
|
|
|
|
|
|
|
Aquí tenemos dos opciones, la primera y más aburrida, instalar un entorno de escritorio (DE, Desktop Environment). GNOME o KDE, gnomo o caballero. Se llaman entornos porque suelen venir con todo incluido, traen audio, la barra, aplicaciones del sistema, aplicación de ajustes, etc.
|
|
|
|
|
Aquí tenemos dos opciones, la primera y más aburrida, instalar un entorno de escritorio (DE, Desktop Environment). GNOME o KDE, gnomo o caballero. Se llaman entornos porque suelen venir con todo incluido, traen audio, la barra, fondo de pantalla, aplicaciones del sistema, aplicación de ajustes, etc.
|
|
|
|
|
|
|
|
|
|
O la mas interesante, instalar un administrador de ventanas (WM, window manager) que **solo** se ocupe de manejar las ventanas y como interactuamos con ellas. No hay escritorio, no hay fondo de pantalla, no hay barra, no hay un launcher de aplicaciones, nada, es nuestro trabajo en hacer nuestra selección de componentes y configurarlo todo lo que queramos.
|
|
|
|
|
O la mas interesante, instalar un administrador de ventanas (WM, window manager) que **solo** se ocupe de manejar las ventanas y como interactuamos con ellas (e.g. atajos de teclado). No hay escritorio, no hay fondo de pantalla, no hay barra, no hay un launcher de aplicaciones, nada, es nuestro trabajo en hacer nuestra selección de componentes y configurarlo todo lo que queramos.
|
|
|
|
|
|
|
|
|
|
Hoy en día hay dos protocolos básicos, xorg y wayland.
|
|
|
|
|
|
|
|
|
|
Xorg es el protocolo que lleva décadas existiendo y queda poca gente queriendo tocar código tan anticuado. Pero funciona perfectamente y hay muchos administradores de ventanas escritos a lo largo del tiempo para él como `i3` (del que entraremos en detalle después) o `xmonad`.
|
|
|
|
|
|
|
|
|
|
Wayland es un protocolo nuevo que está cogiendo mucha popularidad recientemente y busca rediseñar muchos de los principios de xorg a estándares mas modernos. Pese a lo nuevo que es ya hay multitud de compositores (así se llaman los WM en wayland) para él, como `hyprland`, `niri` o `sway` (que busca ser un reemplazo literal de `i3` para wayland).
|
|
|
|
|
Wayland es un protocolo nuevo que está cogiendo mucha popularidad recientemente y busca rediseñar muchos de los principios de xorg a estándares más modernos. Pese a lo nuevo que es ya hay multitud de compositores (así se llaman los WM en wayland) para él, como `hyprland`, `niri` o `sway` (que busca ser un reemplazo literal de `i3` para wayland).
|
|
|
|
|
|
|
|
|
|
### Display Manager
|
|
|
|
|
|