Table of Contents
Cygwin
Avoir un vrai environnement de travail sous windows.
Cygwin agît comme un gestionnaire de paquet grâce à son programme d'installation. De nombreux logiciels sont disponibles sous formes exécutables tels que bash, ls, etc.
Good To Know
Permissions des répertoires
Cygwin tente d'implémenter un système POSIX sur la stack Windows. Cela mène sous Vista à la création des répertoires avec des ACE (Access Control Entries, cf. NTFS) spéciales autorisées. Vista a un comportement particulier vis-à-vis de ces répertoires, notamment lors de leur manipulation via l'Explorer qui entame au moindre déplacement un traitement de plusieurs minutes.
Pour empêcher ce “bug”, il faut ajouter l'option “noacl” sur la partition concernée dans la fstab de Cygwin (cf. Réponse de la Cygwin project co-leader sur la ml).
Exemple de fstab:
# For a description of the file format, see the Users Guide # http://cygwin.com/cygwin-ug-net/using.html#mount-table # This is default anyway: none /cygdrive cygdrive binary,noacl,posix=0,user 0 0
Utiliser CPAN
L'utilitaire cpan
permet de télécharger et d'installer les modules Perl depuis les dépôts CPAN. Lors de la première utilisation, l'utilitaire cherche à s'autoconfigurer en téléchargeant un fichier depuis les dépôts. Derrière un proxy, il n'y parviens pas… or pour lui indiquer d'utiliser un proxy, il faut le spécifier via le fichier de config… FAIL.
Solution : déposer le fichier de config suivant à l'endroit indiqué par l'utilitaire :
$CPAN::Config = { 'applypatch' => q[], 'auto_commit' => q[0], 'build_cache' => q[10], 'build_dir' => q[/var/spool/cpan/build], 'build_dir_reuse' => q[0], 'build_requires_install_policy' => q[yes], 'bzip2' => q[/usr/bin/bzip2], 'cache_metadata' => q[1], 'check_sigs' => q[0], 'colorize_output' => q[0], 'commandnumber_in_prompt' => q[1], 'connect_to_internet_ok' => q[1], 'cpan_home' => q[/var/spool/cpan], 'ftp' => q[ ], 'ftp_passive' => q[1], 'ftp_proxy' => q[ ], 'getcwd' => q[cwd], 'gpg' => q[], 'gzip' => q[/bin/gzip], 'halt_on_failure' => q[0], 'histfile' => q[/var/spool/cpan/histfile], 'histsize' => q[100], 'http_proxy' => q[adresse_proxy:port], ### <== HERE ### 'inactivity_timeout' => q[0], 'index_expire' => q[1], 'inhibit_startup_message' => q[0], 'keep_source_where' => q[/var/spool/cpan/sources], 'load_module_verbosity' => q[none], 'lynx' => q[/usr/bin/lynx], 'make' => q[/usr/bin/make], 'make_arg' => q[], 'make_install_arg' => q[UNINST=1], 'make_install_make_command' => q[/usr/bin/make], 'makepl_arg' => q[], 'mbuild_arg' => q[], 'mbuild_install_arg' => q[], 'mbuild_install_build_command' => q[./Build], 'mbuildpl_arg' => q[], 'ncftp' => q[ ], 'ncftpget' => q[ ], 'no_proxy' => q[], 'pager' => q[/usr/bin/less], 'patch' => q[/usr/bin/patch], 'perl5lib_verbosity' => q[none], 'prefer_external_tar' => q[1], 'prefer_installer' => q[MB], 'prefs_dir' => q[/var/spool/cpan/prefs], 'prerequisites_policy' => q[follow], 'proxy_pass' => undef, 'proxy_user' => q[proxy_user], ### <== and HERE ### 'scan_cache' => q[atstart], 'shell' => q[/bin/bash], 'show_unparsable_versions' => q[0], 'show_upload_date' => q[0], 'show_zero_versions' => q[0], 'tar' => q[/bin/tar], 'tar_verbosity' => q[none], 'term_is_latin' => q[1], 'term_ornaments' => q[1], 'test_report' => q[0], 'trust_test_report_history' => q[0], 'unzip' => q[/usr/bin/unzip], 'urllist' => [q[http://www.perl.com/CPAN/], q[http://cpan.belfry.net/], q[http://www.binarycode.org/cpan]], 'use_sqlite' => q[0], 'version_timeout' => q[15], 'wget' => q[/usr/bin/wget], 'yaml_load_code' => q[0], 'yaml_module' => q[YAML], }; 1; __END__
PS : le setup.exe
de Cygwin (le bouzin qui installe les paquets cygwin) nécessite les droits d'admin. Les fichiers que cpan
va chercher à modifier appartiennent à l'admin. Il est donc pratique d'exécuter cpan
avec un user admin.
Cygwin MotD
____________________, ______________________________________ .QQQQQQQQQQQQQQQQQQQQQQQQL_ | | .gQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ__ | | gQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ== | _.---.) | QQQQQQQQQQQQQQQQQQQQQQQQQQQF= | (^--^)_.-" `; | QQQQQQQQQ================! | ) ee ( | | QQQQQQQQ | (_.__._) / | QQQQQQQQ | `--', ,' | QQQQQQQQ ~"jjj__, | jgs )_|--')_| | QQQQQQQQ "jjjjjjjjjj___ | ""' ""' | QQQQQQQQ ~jjjjjjjjjjjjjjjjj__ | | QQQQQQQQ _jjjjjjjjjjjjjj/~~~~ | The Hippo says: Welcome to | QQQQQQQQ .{jjjjjjj/~~~~~ | _ | QQQQQQQQ .{/~~~~` | ____ _ _ ____ _ _ _ (_) ____ | QQQQQQQQ | / ___)| | | | / _ || | | || || _ \ | QQQQQQQQ |( (___ | |_| |( (_| || | | || || | | || QQQQQQQQQL_______________, | \____) \__ | \___ | \___/ |_||_| |_|| QQQQQQQQQQQQQQQQQQQQQQQQQQQL___ | (___/ (____| | 4QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ___ | | (=QQQQQQQQQQQQQQQQQQQQQQQQQQQQQ==== | -.-. -.-- --. .-- .. -. | (QQQQQQQQQQQQQQQQQQQQQQQQF= |______________________________________|
Utils
Pour bénéficier de quelques utilitaires bien utils, installer le paquet cygutils (contient notamment getclip et putclip ; cependant, ces utilitaires ne sont pas nécessaire car cygwin expose maintenant le pseudo-fichier /dev/clipboard !).