jueves, 12 de diciembre de 2013

Gestores de paquetes: Pacman

Según Wikipedia, Pacman (no el juego: Pac-Man) es un gestor de paquetes que por defecto viene la distribución Arch Linux y derivadas como Manjaro. Está integrado en Arch desde su creación y tiene la capacidad de resolver las dependencias, y descargar e instalar automáticamente todos los paquetes necesarios.

Este gestor de paquetes es uno de los puntos fuertes de Arch Linux y combina un simple paquete binario con un formato fácil de usar, mantiene el sistema actualizado al día mediante la sincronización de la lista de paquetes con el servidor primario. Esto nos ayuda a entender también el por qué Arch Linux es Rolling Release.

Los paquetes de Pacman son archivos tar comprimidos, que contienen metadatos y una estructura de directorios con los archivos. Los paquetes se construyen con makepkg, usando guiones de Bash, conocidos como PKGBUILDs.

A continuación algunos de las opciones de Pacman más utilizadas en la administración de paquetes.

Actualizar el sistema
[fraterneo@manjaro ~]$ sudo pacman -Syu
:: Synchronizing package databases...
 core                     115.5 KiB   134K/s 00:01 [######################] 100%
 extra                   1595.0 KiB   133K/s 00:12 [######################] 100%
 community                  2.0 MiB   132K/s 00:16 [######################] 100%
:: The following packages should be upgraded first :
    manjaro-system
:: Do you want to cancel the current operation
:: and upgrade these packages now? [Y/n] y

resolving dependencies...
looking for inter-conflicts...

Packages (1): manjaro-system-20131206-1

Total Download Size:    0.00 MiB
Total Installed Size:   0.02 MiB
Net Upgrade Size:       0.00 MiB

:: Proceed with installation? [Y/n] y
:: Retrieving packages ...
 manjaro-system-2013...     3.6 KiB   199K/s 00:00 [######################] 100%
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
(1/1) upgrading manjaro-system                     [######################] 100%
==> Fixing mdm-themes issue ...
Buscar paquetes en repositorios
[fraterneo@manjaro ~]$ sudo pacman -Ss cheese
extra/cheese 3.10.2-2 (gnome-extra)
    Use your webcam to take photos and videos, apply fancy special effects and
    share the fun with others
Instalar paquetes desde repositorios
[fraterneo@manjaro ~]$ sudo pacman -S openssh
resolving dependencies...
looking for inter-conflicts...

Packages (3): dnssec-anchors-20130320-1  ldns-1.6.16-1  openssh-6.4p1-1

Total Download Size:    0.94 MiB
Total Installed Size:   5.68 MiB

:: Proceed with installation? [Y/n] y
:: Retrieving packages ...
 dnssec-anchors-2013...   980.0   B  0.00B/s 00:00 [######################] 100%
 ldns-1.6.16-1-i686       395.5 KiB   132K/s 00:03 [######################] 100%
 openssh-6.4p1-1-i686     564.1 KiB   130K/s 00:04 [######################] 100%
(3/3) checking keys in keyring                     [######################] 100%
(3/3) checking package integrity                   [######################] 100%
(3/3) loading package files                        [######################] 100%
(3/3) checking for file conflicts                  [######################] 100%
(3/3) checking available disk space                [######################] 100%
(1/3) installing dnssec-anchors                    [######################] 100%
(2/3) installing ldns                              [######################] 100%
Optional dependencies for ldns
    libpcap: ldns-dpa tool [installed]
(3/3) installing openssh                           [######################] 100%
Optional dependencies for openssh
    xorg-xauth: X11 forwarding [installed]
    x11-ssh-askpass: input passphrase in X
Remover paquetes con sus dependencias
[fraterneo@manjaro ~]$ sudo pacman -Rs cheese
checking dependencies...

Packages (8): clutter-1.16.2-1  clutter-gst-2.0.8-1  clutter-gtk-1.4.4-4
              cogl-1.16.0-2  gnome-desktop-1:3.10.1-2
              gnome-video-effects-0.4.0-2  libevdev-0.4-2  cheese-3.10.2-2

Total Removed Size:   27.47 MiB

:: Do you want to remove these packages? [Y/n] y
(1/8) removing cheese                              [######################] 100%
(2/8) removing gnome-video-effects                 [######################] 100%
(3/8) removing gnome-desktop                       [######################] 100%
(4/8) removing clutter-gtk                         [######################] 100%
(5/8) removing clutter-gst                         [######################] 100%
(6/8) removing clutter                             [######################] 100%
(7/8) removing libevdev                            [######################] 100%
(8/8) removing cogl                                [######################] 100%
Instalar paquetes desde una ruta
[fraterneo@manjaro ~]$ sudo pacman -U /ruta/al/paquete/nombre_paquete-version.pkg.tar.xz
[fraterneo@manjaro ~]$ sudo pacman -U http://www.dominio.com/repo/nombre_paquete.pkg.tar.xz
Fuente:

1 comentario:

  1. Muy bueno el pacman, más rápido aptitude, el único que se le compara es Portage. Pero recomiendo que veas antergos que manjaro tiene problemas por los repositorios y la seguridad, lo mejor es usar arch based distros que usen los repositorios mismos de arch

    ResponderEliminar