---
categories: openbsd system
title: Howto OpenBSD packages
...

* pkg_add(1) : <https://man.openbsd.org/pkg_add>
* FAQ : <http://www.openbsd.org/faq/faq15.html>
* liste de miroirs : <http://www.openbsd.org/ftp.html>

## Gestion des paquets

Les paquets se gèrent avec des commandes `pkg_XXX`.

Installer/désinstaller un paquet :

* Installer un paquet : `pkg_add <package>`
* Désinstaller un paquet : `pkg_delete <package>`

Utilisation plus avancée :

* Mettre à jour tous les paquets installés : `pkg_add -u`
* Désinstaller toutes les dépendances qui ne sont plus utilisées : `pkg_delete -a`
* Voir les paquets installés : `pkg_info`
* Avoir des infos sur un paquet (version disponible/installée, description) : `pkg_info <package>`
* Chercher un paquet contenant \<regexp\> dans son nom : `pkg_info -Q <regexp>`

## Gestion du miroir

Depuis OpenBSD 6.1, le miroir utilisé se configure dans `/etc/installurl`.

Par défaut, nous utilisons le miroir https://cdn.openbsd.org/pub/OpenBSD, mais qui a l'inconvénient de ne supporter que les 3 dernières versions d'OpenBSD.

Par exemple, si les 3 dernières versions supportées sont 7.2, 7.1 et 7.0 et qu'on veut installer un paquet sous OpenBSD 6.7, on aura une erreur :

~~~
# pkg_add ncdu
https://cdn.openbsd.org/pub/OpenBSD/6.7/packages/amd64/: no such dir
Can't find ncdu
~~~

Il faut dans ce cas soit modifier le miroir dans `/etc/installurl`, soit ponctuellement le modifier avec la variable `PKG_PATH`. On peut trouver plusieurs miroirs disposant de la version dont nous avons besoin ici : <http://www.openbsd.org/ftp.html>

~~~
# export PKG_PATH=http://openbsd.ipacct.com/pub/OpenBSD/$(uname -r)/packages/$(machine -a)/ 
# pkg_add ncdu                                                                              
ncdu-1.14.2: ok
~~~