Macports, les programmes linux sur votre mac !
Vous avez un Mac et vous rêver d’y faire tourner certains logiciels en ligne de commande prévus pour Linux ? Macports est fait pour vous ! Il permet en effet de porter les softs Linux sur votre mac. Vous pourrez par exemple installer de très intéressants outils tels que Nmap, aircrack, dsniff ou encore ettercap !
macOS est basé sur un noyaux Unix. Cette spécificité fait que théoriquement, il est possible de faire tourner dessus les logiciels conçus pour Linux ou BSD. Je dis bien théoriquement car en effet, Unix ≠ Linux. D’ailleurs, Mac OS est plus proche de BSD que de Linux. Donc pour installer un logiciel Linux sur votre Mac, il y a deux moyens :
- Trouver les sources du logiciels et les compiler vous-même,
- Installer Macports et avoir un gestionnaire de paquets semblable à apt-get ou aptitude, qui s’occupe d’installer automatiquement toutes les dépendances nécessaires pour vous !
Si vous êtes convaincu que la seconde solution est la plus avantageuse, alors suivez le guide !
Installons X-code
Macport devra compiler les sources qu’il va télécharger pour pouvoir les installer sur votre Mac. Cependant, il n’intègre pas de compilateur, on va donc devoir installer celui de macOS dédié aux développeurs. Pour cela, il faut installer l’environnement de travail pour développeurs, X-Code, qui se trouve sur votre DVD d’installation de OS X.
Insérez donc le DVD d’install de OS X et cliquez sur installations facultatives :

Il n’y a plus qu’à tout installer et à attendre la fin de l’installation. Une fois que tout est bien installé, rendez vous sur le site de Macports et cliquez sur download.

Une fois le fichier téléchargé, il ne vous reste plus qu’à suivre le processus d’installation classique.
Configurer Macports
Normallement il n’y a rien à faire et tout est déjà paramétré comme il faut. Cependant, la première fois que j’ai installé Macports, j’ai rencontré un problème lorsque je voulais installer ou avoir des infos sur un port. J’obtenais invariablement la réponse suivante :
Warning: No index(es) found! Have you synced your source indexes?
Warning: Can't open index file for source: rsync://rsync.macports.org/release/tarballs/ports.tar
Error: listing all ports failed: No index(es) found! Have you synced your source indexes?
Pour ceux qui rencontrerait ce problème, je l’avais solutionné en allant dans dans etc/macports/sources.conf
et en éditant le fichier sources.conf
comme ceci :
rsync://rsync.macports.org/release/ports/ [default]
http://www.macports.org/files/ports.tar.gz [default]
Ensuite il faut synchroniser les sources en faisant comme cela :
port -d sync
soit :
sudo port -d selfupdate
Votre Macports est donc maintenant synchronisé avec les sources disponibles.
Utiliser macports
Il n’y a finalement pas beaucoup de commandes à connaître. Les principales commandes sont les suivantes.
port info x
port info nmap
, vous donnera par exemple plus d'informations sur le scanner de ports nmap.sudo port install x
sudo port install nmap
installera parfaitement nmap avec toutes les dépendances requises.sudo port uninstall --follow-dependencies x
sudo port uninstall --follow-dependencies nmap
désinstalle un port en enlevant aussi automatiquement les dépendances qui ne servent pas pour d'autres ports.port installed
- Permet de savoir ce que vous avez installé via la commande
port installed
. sudo port selfupdate
- Met à jour le registre des ports comme on le ferait avec un
apt-get update
. sudo port upgrade outdated
- Met à jour les ports installés qui ont une version plus récentes – à la manière d'un
apt-get upgrade
. On peut afficher les ports en question avecport outdated
. sudo port uninstall inactive
- Désinstalle les anciennes versions des ports. En effet, par défaut Macport laisse les anciennes versions afin de pouvoir revenir facilement à une installation fonctionnelle en cas de problème. De temps en temps, un peu de ménage ne fait pas de mal. Il est possible d'afficher tous ces ports avec la commande
port installed inactive
. sudo port uninstall leaves
- Désinstalle les ports qui ont été installés comme dépendances et qui ne servent plus à rien. On pourra afficher ces ports en faisant
port echo leaves
.
Petit note qui peut faire gagner du temps, quand on désinstalle des ports inactifs ou des leaves, eux-mêmes peuvent présenter des dépendances qui créeront potentiellement d’autres leaves. Ainsi, on pourra vérifier la présence de leaves avec la commande port echo leaves
, il pourra également être judicieux d’ajouter --follow-dependencies
pour supprimer les dépendances en même temps.
Même si en général, dans le monde des geeks (des vrais), le RTFM prévaut, vous trouverez un guide complet sur le site de Macports, avec notamment une section sur les tâches courantes. Que demande le peuple ?
Alors, qu’est-ce que vous avez installé ?
Commentaires
Rejoignez la discussion !