« Miroir Fink » : différence entre les versions

De WikiBR
(màj de la config pour forcer l'utilisation des miroirs externes en http)
Aucun résumé des modifications
 
(3 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
= FINK? Mais Kestce? =
{{Archive|}}
 
= FINK? Mais qu'est ce? =


Tout d'abord, fink, qu'est-ce que c'est?
Tout d'abord, fink, qu'est-ce que c'est?


http://fink.sourceforge.net/
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.
 
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 :
Plus d'informations ici :
Ligne 11 : Ligne 11 :
http://fink.sourceforge.net/about.php?phpLang=fr
http://fink.sourceforge.net/about.php?phpLang=fr


= Pourquoi l'installer? =
Pourquoi l'installer?


Parce qu'il permet d'utiliser facilement des logiciels tels que scilab, texmacs, doxygen, gtk, kde, lynx, rsync, svn, etc.
Parce qu'il permet d'utiliser facilement des logiciels tels que scilab, texmacs, doxygen, gtk, kde, lynx, rsync, etc.


= Comment faire? =
Comment faire?


Suivez la procédure d'installation sur leur site. Cependant, il faut utiliser les miroirs du BR pour s'éviter d'avoir à traverser le proxy, et d'être limité par la connection par kuzh.
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.


= Comment le configurer pour l'X =
= 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 . Il faut mettre le contenu suivant : (si vous êtes sous MAC OS 10.4 TIGER *UNIQUEMENT*) (si cela n'est pas le cas, je regarderai pour la configuration spécifique)
Il faut modifier le fichier {{c|/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 :


##########################################
# Configuration Fink
# ############# ####                    #
# Configuration proposee par le BR,      #
# Pour se connecter aux miroirs du binet #
# plutot qu'aux miroirs externes.        #
##########################################
RootMethod: sudo
MirrorOrder: MasterFirst
Trees: local/main unstable/main unstable/crypto
Basepath: /sw
DownloadMethod: wget
Distribution: 10.4
UseBinaryDist: true
Verbose: 1
KeepBuildDir: false
  SelfUpdateMethod: rsync
  SelfUpdateMethod: rsync
  ProxyPassiveFTP: false
  ProxyPassiveFTP: false
  KeepRootDir: false
  KeepRootDir: false
  Mirror-master: ftp://miroir/fink/distfiles/
  Mirror-master: ftp://miroir/fink/distfiles/
  Mirror-rsync: rsync://miroir/finkinfo
  Mirror-rsync: rsync://miroir/finkinfo
Ligne 50 : Ligne 35 :
  MirrorCountry: eur-fr
  MirrorCountry: eur-fr
  ProxyHTTP: http://kuzh.polytechnique.fr:8080
  ProxyHTTP: http://kuzh.polytechnique.fr:8080
 
Mirror-apache: http://apache.cict.fr
Mirror-apt: http://bindist.finkmirrors.net/bindist
Mirror-cpan: http://cpan.enstimac.fr
Mirror-ctan: http://mirrors.ircam.fr/pub/CTAN
Mirror-debian: http://ftp.fr.debian.org/debian
Mirror-gimp: http://ftp.iut-bm.univ-fcomte.fr/gimp/gimp
Mirror-gnome: http://fr2.rpmfind.net/linux/gnome.org
Mirror-gnu: http://mirrors.sunsite.dk/gnu/
Mirror-kde: http://fr2.rpmfind.net/linux/KDE
Mirror-sourceforge: http://eu.dl.sourceforge.net/sourceforge/
# EOF


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.
L'idée est que l'on accède au miroir du BR par un serveur ftp local ({{c|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.
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 {{c|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 {{c|sshExt}} la commande {{c|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 {{c|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 {{c|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 ({{c|/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? =
= Et après? =
Ligne 77 : Ligne 70 :


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.
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.
Merci à Sean pour la mise en place des miroirs!

Version actuelle datée du 18 mars 2023 à 22:02

Warning.png Article archivé.
Warning.png

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

Warning.png 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.