« Miroir Fink » : différence entre les versions
(n) |
Aucun résumé des modifications |
||
Ligne 1 : | Ligne 1 : | ||
{{Archive|}} | |||
= FINK? Mais qu'est ce? = | = FINK? Mais qu'est ce? = | ||
Version actuelle datée du 18 mars 2023 à 22:02
FINK? Mais qu'est ce?
Tout d'abord, fink, qu'est-ce que c'est?
http://fink.sourceforge.net/ est le site du projet Fink, qui vise à porter sous Mac OS X, en utilisant le système de paquetages de Debian, des programmes UNIX, tout en fournissant une interface centralisée et simple pour les installer.
Plus d'informations ici :
http://fink.sourceforge.net/about.php?phpLang=fr
Pourquoi l'installer?
Parce qu'il permet d'utiliser facilement des logiciels tels que scilab, texmacs, doxygen, gtk, kde, lynx, rsync, etc.
Comment faire?
Suivez la procédure d'installation sur leur site, elle est bien faite. Si vous avez un accès direct (pas de proxy, firewall école entreprise) à internet, normalement, l'update doit bien se passer. Dans le cas contraire (comme à l'X où le proxy de la DSI bloque rsync), voir les solutions plus bas.
Configurer Fink pour utiliser un miroir spécifique
Attention : Le paragraphe suivant s'applique au campus de l'X mais est facilement adaptable pour une autre situation. |
A l'X, il faut utiliser les miroirs du BR pour éviter d'avoir à traverser le proxy, et d'être limité par la connection par le proxy de la DSI, kuzh. Une autre raison est que kuzh bloque rsync qui est utilisé par Fink, en utilisant les miroirs du BR on se libère de cette contrainte (puisqu'on ne se connecte pas à l'extérieur).
Il faut modifier le fichier /sw/etc/fink.conf
après l'installation de Fink en suivant les instructions sur leur site pour utiliser le miroir. Chercher et mettre à jour les lignes suivantes :
SelfUpdateMethod: rsync ProxyPassiveFTP: false KeepRootDir: false Mirror-master: ftp://miroir/fink/distfiles/ Mirror-rsync: rsync://miroir/finkinfo ConfFileCompatVersion: 1 MirrorContinent: eur MirrorCountry: eur-fr ProxyHTTP: http://kuzh.polytechnique.fr:8080
L'idée est que l'on accède au miroir du BR par un serveur ftp local (ftp://miroir
), donc on ne peut utiliser de proxy FTP.
En revanche, quand les paquets ne sont pas encore disponible sur le site maître ou sur le miroir, il faut tout de même récupérer les fichiers sur l'extérieur, donc on spécifie le proxy HTTP et l'on précise bien que l'on souhaite utiliser des miroirs HTTP pour toutes les sources externes.
Contourner les restrictions d'un réseau par un tunnel SSH
Pour contourner les restrictions mise en place par la DSI locale et qui empêche de se connecter aux miroirs Fink en rsync, on peut utiliser un tunnel SSH. Pour cela, il faut un accès SSH à un serveur à l'extérieur du réseau (que l'on note user@machine_distante
).
Il faut ensuite déterminer la commande à taper pour joindre l'hôte distant SSH. A l'X, pour passer par le proxy, il faut rajouter l'option suivante à ssh :
-o ProxyCommand='socat - PROXY:kuzh.polytechnique.fr:%h:%p,proxyport=8080'
On appellera sshExt
la commande ssh
avec l'option qui permet de sortir.
L'idée est la suivante. Au lieu d'essayer de contacter directement le miroir (par exemple distfiles.master.finkmirrors.net
) sur le port rsync (873), on va faire une redirection de port par un tunnel SSH et faire pointer un port local (par exemple 5555) vers distfiles.master.finkmirrors.net:873
.
Ouvir le tunnel depuis le mac :
sshExt -L 5555:distfiles.master.finkmirrors.net:873 user@machine_distante
Il suffit ensuite de changer la ligne suivante dans le fichier de configuration de Fink (/sw/etc/fink.conf
) :
# Mirror-rsync: rsync://distfiles.master.finkmirrors.net/finkinfo/ Mirror-rsync: rsync://localhost:5555/finkinfo/
et de lancer tout simplement l'update :
fink selfupdate
Et après?
Il faut ensuite mettre à jour les paquets :
fink selfupdate fink update-all
Puis par exemple installez scilab :
fink install scilab
(ça va être *très* *très* *très* long, il a énormément de choses à recompiler, donc ça va prendre sans doute plus de 3h, voire encore plus. Lancez ça en début de nuit ;) )
Si vous voulez installer d'autres paquets, je vous conseillerais bien d'installer FinkCommander si j'étais certain qu'il était compatible avec cette configuration, mais il semblerait à première vue que ça ne soit pas parfaitement le cas :( Plus d'investigations sont nécessaires sur ce point.