Pkgsrc
From Wikipedia, the free encyclopedia
pkgsrc est un gestionnaire de paquets portable pour les systèmes d'exploitation de type Unix. C'est le gestionnaire de paquets par défaut pour NetBSD, SmartOS et Minix 3[2].
Installation de paquets
Une des particularités de pkgsrc est d'être portable et de permettre de créer des paquets binaires pour 23 systèmes d'exploitation différents[3] dont la liste est donnée dans #Plateformes supportées.
pkgsrc contient actuellement plus de 26 000 paquets qui permettent de fournir des logiciels open source parmi les plus populaires.
pkgsrc est principalement basé sur l'utilisation d'un dérivé de NetBSD make et utilise un ensemble de fichiers appelés makefile pour construire de manière portable un paquet binaire à partir des sources téléchargés.
Il existe plusieurs façons d'installer des programmes à l'aide de pkgsrc :
- Un utilitaire bootstrap contient un ensemble de paquets qui sont construits pour permettre de compiler les logiciels à partir des sources.
- Des paquets binaires peuvent être installés depuis une source locale ou distante via les outils pkg_add et pkg_delete.
- Un utilitaire de haut niveau nommé pkgin[4] existe également et est conçu pour automatiser l'installation, la suppression et la mise à jour des paquets binaires d'une manière similaire à l'Advanced Packaging Tool de Debian[5].
Structuration d'un paquet
Un paquet est structuré avec un ensemble de fichiers dont notamment :
- DESCR qui est un fichier texte décrivant le logiciel
- distinfo qui contient les sommes de contrôle des fichiers source nécessaires à la construction du paquet
- PLIST qui contient la liste des fichiers installés par le paquet
- Makefile qui définit les variables nécessaires à la construction et l'installation du paquet
DISTNAME= libmpdclient-2.20
PKGREVISION= 1
CATEGORIES= audio
MASTER_SITES= https://www.musicpd.org/download/libmpdclient/2/
EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://github.com/MusicPlayerDaemon/libmpdclient
COMMENT= Asynchronous API library for interfacing MPD
LICENSE= modified-bsd
LDFLAGS.SunOS+= -lsocket
PYTHON_FOR_BUILD_ONLY= tool
.include "../../devel/meson/build.mk"
.include "../../mk/bsd.pkg.mk"
Plateformes supportées
| Plateforme | Date d'ajout | Date de suppression |
|---|---|---|
| NetBSD | octobre 1997 | |
| Solaris | mars 1999 | |
| Linux | juin 1999 | |
| Darwin et macOS | octobre 2001 | |
| FreeBSD | novembre 2002 | |
| OpenBSD | novembre 2002 | |
| IRIX | décembre 2002 | |
| BSD/OS | décembre 2003 | mars 2025 |
| AIX | décembre 2003 | |
| Interix (pour Windows NT) | mars 2004 | avril 2025 |
| DragonFly BSD | octobre 2004 | |
| OSF/1 | novembre 2004 | |
| HP-UX | avril 2007 | |
| QNX | octobre 2007 | |
| Haïku | janvier 2010 | |
| MINIX3 | août 2010 | |
| MirBSD | janvier 2011 | mars 2025 |
| illumos et SmartOS | février 2011 | |
| Cygwin | mai 2013 | |
| GNU/kFreeBSD | juillet 2013 | mars 2025 |
| Bitrig | juin 2015 | septembre 2022 |
Histoire
Le 3 octobre 1997, les développeurs Alistair Crooks et Hubert Feyrer créent pkgsrc[6] en se basant sur le catalogue de logiciels portés de FreeBSD. Leur objectif était de proposer un gestionnaire de paquets pour prendre en charge la collection des paquets NetBSD. Il a été officiellement publié dans NetBSD 1.3[7] le 4 janvier 1998. DragonFly BSD a utilisé pkgsrc comme système de paquets officiel de la version 1.4 en 2006 jusqu'à la version 3.4 en 2013[8],[9].
En 1999, la prise en charge par pkgsrc de Solaris a été ajoutée, suivie par la prise en charge d'autres systèmes d'exploitation[9].
Le 12 septembre 2017, une politique de message de validation adaptée au gestionnaire de version décentralisée a été établie par le projet[10].
De 2004 à 2019 s'est tenue la conférence technique pkgsrcCon dont l'objectif était de se faire rencontrer les développeurs, les contributeurs et les utilisateurs de pkgsrc[11].
