MacPorts, catalogue de logiciels « Open Source »

Dans les billets précédents, nous avons vu comment installer pas à pas Apache, PHP, MySQL et PostgreSQL à partir des sources. Maintenir ces applications à jour, ajouter de nouvelles librairies devient très vite fastidieux. Heureusement, nous ne sommes pas sans solution. MacPorts est une des solutions pouvant répondre à nos attentes.

Voyons maintenant comment installer et utiliser MacPorts.

MacPorts

MacPorts est un catalogue de logiciels « Open Source », il fournit aussi les outils de gestion du catalogue. Si vous avez déjà utilisé FreeBSD ou Linux Gentoo, cette notion de catalogue de logiciels vous est sans doute familière.

1. Installer MacPorts.

L’application est téléchargeable ici : http://www.macports.org/

Comme décrit sur le site, il est possible d’installer MacPorts de plusieurs façons :

  • à partir de l’image disque « dmg »
  • à partir de sources
  • à partir du SVN

Nous choisissons la plus simple des méthodes, c’est à dire l’installation à partir de l’image disque « dmg ».

Une fois téléchargée, cliquez sur l’image disque et suivez les instructions.

Pour que MacPorts puisse fonctionner, Xcode et le SDK d’X11 doivent être installés. Vérifiez que vous utilisez bien la dernière version d’Xcode (comparez la version téléchargeable ici avec celle fournis sur le DVD d’installation de Mac OS X).

Les variables d’environnement des utilisateurs de MacPorts (vous par exemple) doivent être ajustées. Pour cela, créez ou modifiez le fichier « .profile » de votre répertoire (« cd ~ ») :

export PATH=/opt/local/bin:/opt/local/sbin:$PATH
export MANPATH=/opt/local/share/man:$MANPATH

Quittez le terminal puis relancez le pour que les variables d’environnement soient prises en compte.

2. Utilisation de MacPorts.

MacPorts fourni la commande « port », voyons quelques exemples illustrant son utilisation :

a. Mettre à jour le catalogue :

// Dans le terminal, tapez :
sudo port selfupdate
// ou pour avoir plus d'infos, avec l'option -d de "debug"
sudo port -d selfupdate

b. Trouver un logiciel porté :

// Dans le terminal, tapez :
port search apache

L’exemple retourne les différents logiciels portés dont le nom de paquet (« portname » pour être exact) contient le mot « apache ».

c. Consulter les méta-informations d’un paquet :

Chaque paquet possède des méta-informations, on y trouve la description, la version, l’email du développeur, et bien d’autres informations (voir « man port » pour plus d’informations).

Exemple avec « apache2 » :

// Dans le terminal, tapez :
port info apache2

d. Dépendances d’un paquet :

Pour être installé, un logiciel a parfois besoin d’un autre logiciel. La commande « port » permet de lister ces dépendances.

Quelles sont les dépendances du paquet « apache2 » :

// Dans le terminal, tapez :
port deps apache2

e. Lister les paquets installés ayant pour dépendance un paquet donné :

Quels sont les paquets installés ayant pour dépendance « apache2 » :

// Dans le terminal, tapez :
port dependents apache2

f. Installer un paquet :

Comment installer le paquet « apache2 » :

// Dans le terminal, tapez :
sudo port install apache2

Certains paquets peuvent être installés avec des options différents.

Pour le paquet « apache2 », quelles sont les possibles options d’installation :

// Dans le terminal, tapez :
port variants apache2
// Le résultat :
apache2 has the variants:
	universal
	darwin
	darwin_7
	darwin_9
	openbsd
	openldap
	preforkmpm
	workermpm
	eventmpm
	no_startupitem

Ces options d’installation peuvent être invoquées à l’installation.

L’exemple suivant montre comment :

  • ajouter le support d’OpenLDAP à Apache
  • ne pas ajouter de « StartUp Items » au système pour lancer Apache au démarrage.
// Dans le terminal, tapez :
sudo port install apache2 +openldap +no_startupitem

Lors que l’installation, le logiciel porté est compilé à partir des sources. Suivant la puissance et l’occupation CPU de votre machine, l’installation d’un paquet peut prendre plusieurs minutes.

g. Nettoyer les fichiers temporaires :

A chaque installation, des fichiers sont téléchargés, d’autres créés. Il est parfois nécessaire de faire un peu de ménage.

L’exemple suivant montre comment nettoyer votre disque de tous les fichiers liés à l’installation du paquet « apache2 ».

// Dans le terminal, tapez :
sudo port clean --all apache2

h. Supprimer un paquet :

L’exemple suivant montre comment supprimer le paquet « apache2 » :

// Dans le terminal, tapez :
sudo port uninstall apache2

Si vous souhaitez en même temps supprimer les dépendances :

// Dans le terminal, tapez :
sudo port -f uninstall apache2

Attention, en supprimant les dépendances, vous risquez d’empêcher d’autres logiciels de fonctionner.

i. Afficher les fichiers installés par un paquet :

Lister les fichiers installés par le paquet « apache2 » :

// Dans le terminal, tapez :
port contents apache2

j. Afficher tous les paquets installés :

// Dans le terminal, tapez :
port installed

k. Afficher tous les paquets installés « non à jour »:

// Dans le terminal, tapez :
port outdated

l. Mettre à jour les paquets installés :

Mettre à jour le paquet « apache2 » :

// Dans le terminal, tapez :
sudo port upgrade apache2

Mettre à jour le paquet « apache2 » sans mettre à jour ses dépendances :

// Dans le terminal, tapez :
sudo port -n upgrade apache2

Mettre à jour le paquet « apache2 » et désinstaller l’ancienne version du paquet « apache2 » :

// Dans le terminal, tapez :
sudo port -u upgrade apache2

Par défaut l’ancien paquet est désactivé.

Pour mettre à jour tous les paquets installés « non à jour » :

// Dans le terminal, tapez :
sudo port upgrade outdated

Pour plus d’information sur MacPorts, vous pouvez consultez la documentation en ligne, ou utiliser le man (« man port »).

Pour les personnes allergiques à la ligne de commande, plusieurs GUI existent.

Je n’ai testé aucun de ces GUI à l’heure à j’écris ce billet.

Il existe au moins une autre solution pouvant répondre à nos attentes concernant l’installation de logiciels Open Source et de leur maintenance : il s’agit de Fink.

1 réponse à MacPorts, catalogue de logiciels « Open Source »

  1. le février 20, 2009 à 10:56 , Fabien dit:

    Depuis la version 1.7, le fichier de personnalisation du shell « .profile » est automatiquement créé ou mis à jour à l’installation.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *