Recent posts

Installer Git-web sur MosX avec MAMP

Prérequis

Installation

Ceci est une version adaptée de ce tutorial pour MAMP

Gitweb setup on Mac OS X On July 31st, 2008 in apple, git, macosx This post is for future references since I had to slightly adapt what is written in the INSTALL file to run Gitweb on my MacBook.

Assuming all my Git projects are in /Users/garnier/Work/ and I’ve already installed Git in /usr/local/git, the steps to create gitweb.cgi is:

cd ~/Work
# retrieve the latest version of git
git clone git://git.kernel.org/pub/scm/git/git.git
cd git/
make GITWEB_PROJECTROOT="/Users/garnier/Work/"     GITWEB_CSS="gitweb/gitweb.css"     GITWEB_LOGO="gitweb/git-logo.png"    GITWEB_FAVICON="gitweb/git-favicon.png"      bindir=/usr/local/git/bin  gitweb/gitweb.cgi
 
# CGI scripts are located in /Application/MAMP/cgi-bin
mkdir -p /Application/MAMP/cgi-bing/itweb
sudo cp gitweb/gitweb.cgi /Application/MAMP/cgi-bin/gitweb/
 
# And the other resources are in /Library/WebServer/Documents/
mkdir -p /Library/WebServer/Documents/gitweb
sudo cp gitweb/gitweb.css gitweb/git-logo.png gitweb/git-favicon.png \   
   /Library/WebServer/Documents/gitweb/
Once everything is copied to the right place, Gitweb is up and running: http://localhost/cgi-bin/gitweb/gitweb.cgi?

A terminer...

Installer Git sur mac leopard

Virtual computers

Quelques tests

VirtualBox

Installation

  • Lancer VirtualBox
  • Icone New, puis suivre le wizard
  • 15 minutes d'installation sur 10.5, 2,4Ghz core duo2

configuration

  • Pour accéder à ses fichiers mac depuis windows, il faut ajouter

es "Guess Addtions" . Une do est dispo http://druith-microcosme.net/apprenti-geek/7/virtualbox-sous-macintosh-suite.html ici

Test de compilation

Parallels

VMWare

QEmu

  • Aucun test de perf, bcp trp lent...

Tests

  • Machine cible : Mac os X 10.5.3, 2,4GHz, Intel core Duo 2, 2Go

(1) pour faire tar -czf sources de geant4 sur le windows virtuel (2) pour faire tar -czf sources de geant4 sur le mac (monté sur z:) (3) pour compiler G4OpenGl

Natif Parallels VirtualBox VMWare
tar sur VM (1) Mac: 10
ens18: 16
Win: 242
Mac: 13
ens-18: 17
Mac : 21 ens-19: 61
tar sur z: (2) Mac: 840
ens18: 922
Mac: 140
ens-19: 121
compil (3) Mac: 29
Win: 103
Mac : 432

Graphique

PS : graph réalisé avec http://nces.ed.gov/nceskids/createagraph/ en 1 min chrono.

Firefox et OpenGL

Firefox 3 étant arrivé, maintenant on peut faire de OpenGL ES2 avec le widget "canvas 3d"
Lire ici

Deploiement automatique des macs enseignement

Compilation distribuée sur mac

Compilation distribuée avec un Makefile

Avant toute chose un peu de lecture sur la compilation distribuée de Mr Apple

Lancer Xcode pour voir quelles machines cibles sont disponibles pour votre machine.

Placer ces variables d'environnemnt pour utiliser distcc

  • Le compilateur :
    export DISTCC_COMPILER="gcc version 4.0.1 (Apple Computer, Inc. build 5370)"
    
  • Le système :
    export DISTCC_SYSTEM="10.4.11 (8S165, ppc)"
    
  • les machines cibles (voir XCode, et on y ajoute localhost):
    export DISTCC_HOSTS="mac-ens14/3,lzo mac-ens15/3,lzo  mac-ens13/3,lzo localhost/1 mac-ens7/3,lzo mac-ens2.local./3,lzo mac-ens8.local./3,lzo mac-ens12.local./3,lzo mac-ens3.local./3,lzo mac-ens4/3,lzo mac-ens13/3,lzo mac-ens9/3,lzo"
    
    • le /3 à la fin de chaque machine signifie maximum 3 taches pour cette machine
    • le ,lzo : Active la compression LZO pour cet hôte
    • On y ajoute localhost pour compiler aussi sur notre machine, mais pas en première position sinon tout passe par elle!

Voir le man de http://www.hmug.org/man/1/distcc.php distcc pour plus d'infos

Construction avec le Makefile

make -j20 CXX="distcc /usr/bin/g++"

La valeur associée à -j doit être à peu prêt 2 fois le nombre de machines.

Docs

http://srvremi.free.fr/blog/2006/06/distcc-gentoo.html

Makefile et Xcode

Comment lancer un makefile à travers XCode (requier XCode > 2.4) :
http://developer.apple.com/documentation/Porting/Conceptual/PortingUnix/preparing/chapter_3_section_4.html Testé avec geant4, et ça marche !

  • Posted: 2008-01-16 11:45 (Updated: 2008-01-16 11:45)
  • Author: anonymous
  • Categories: (none)
  • Comments (0)

CMT et Xcode

Convertir un makefile en xcode

http://groups.google.com/group/physics-softs/browse_thread/thread/c20741f04b99bfa2

  • Passer par convertMake, j'ai la version 1.0, la version 2.0 existe, mais je n'arrive pas à la récupérer :

http://convertmake.increw.org/

  • Testé avec un petit projet Tpalgo, j'ai bien réussi à le récupérer puis recomstruire dans Xcode !
  • Testé avec DrawQt, pb sur les .app qui ne passent pas
  • Testé avec VGM, pb sur les -groups de CMT qu'il faut enlever
  • Manip (à faire une fois) :
    • Lancer cmt config pour créer un makefile via cmt. Editer ce fichier et ajouter les lignes suivantes :
      export CMTROOT = /usr/local/CMT/HEAD
      export CMTCONFIG = Darwin
      export CMTBIN = Darwin-PowerMacintosh
      export CMTPATH =/Users/laurentgarnier/Work/svn/trunk/OpenScientist
      
  • Puis lancer convertMake->AutoConfigure->Addfolder : choisissez le dossier cmt à exporter
  • OutputFile : Dossier ou créer le projet Xcode
  • Puis lancer export : convertMake va lancer une fois la compilation en entier afin de créer le projet Xcode
  • Doucle-cliquer sur ce projet. Xcode va dire que ce n'est pas la bonne version, mais va le convertir.
  • Doucle-cliquer sur le nouveau projet et travaillez avec!

(en test)

outils pour services informatiques


Date: mardi 29 mai 2007 18:58 +0200 From: Jean-Luc Archimbaud <Jean-Luc.Archimbaud@…> To: Administrateurs Systemes Reseaux <asr@…>, resinfo <resinfo@…> Subject: [ASR] Rubrique plume : outils pour services informatiques

Bonjour,

Une rubrique plume sur les outils pour les services informatiques (traduire ASR pour les laboratoires CNRS) a été "officiellement ouverte" : http://www.urec.cnrs.fr/rubrique256.html

Elle contient par exemple 2 fiches récentes pour 2 outils de stats de serveur Web largement utilisés : phpMyVisit et AWStats : Statistiques d'accès à un serveur Web phpMyVisit

  • mac, unix-like, windows, libre, gratuit, externe, service info,

administration, réseau Statistiques d'accès à un serveur Web, FTP, mail AWStats

  • mac, unix-like, windows, libre, gratuit, externe, service info,

administration, réseau

JL

Installation d'un serveur SSH sur Windows

Installation d'un serveur ssh

{http://www.commentcamarche.net/faq/sujet-2132-%5BR%E9seaux%5D-Installation-d'un-serveur-ssh-sous-Windows infos}

ETAPE 1 - Installation de Cygwin

1) téléchargez l'installeur Cygwin (setup.exe) de http://www.cygwin.com/ et lancez-le.

1.a) Fenêtre "Choose installation type": Choisissez "Install from internet"

1.b) Fenêtre "Choose Installation Directory": Laissez toutes les valeurs par défaut.

1.c) Fenêtre "Select Local Package directory": Laissez les valeurs par défaut.

(Les fichiers d'installe cygwin seront placés dans un sous-répertoire de setup.exe)

1.d) Fenêtre "Selection connection type": Entrez d'éventuels paramètres de proxy si vous en utilisez un.

1.e) Fenêtre "Choose Download Site(s)": Choisissez un site de téléchargement

proche de chez vous. Par exemple, en Belgique, choisissez les serveurs en .be. En France, choisissez les serveurs en .fr. Au pire, choisissez des serveurs dans des pays voisins (exemple: .de (Allemagne) pour la France.)

1.f) Fenêtre "Select packages", cliquez sur le bouton "View" pour voir la liste des paquets.

Descendez dans la liste pour trouver "openssh: The OpenSSH server and client programs" et cliquez sur le mot "Skip" pour sélectionner ce package. Le mot "Skip" doit alors être remplacé par la version d'openssh (pa exemple "4.2p1-1").

D'autres packages vont automatiquement être sélectionnés.

Cliquez sur "Next": Le téléchargement commence. (Il va télécharger environ 17 Mo de fichiers.)

1.g) Fenêtre "Create icons": cliquez sur "Finish".

L'installation de Cygwin est terminée.


ETAPE 2 - Configuration du serveur ssh

2.1) Modification de l'environnement:

  • faites un clic-droit sur le poste de travail > "Propriétés" > "Avancé"

    "Variables d'environnement" > "Variables système".

  • Cliquer sur "Nouveau", et entrer la variable: CYGWIN valeur: ntsec tty

  • Sélectionnez PATH dans la liste, cliquez "Editer" et ajoutez: ;C:\Cygwin\bin à la fin du chemin.

2.2) Création des groupes et utilisateurs.

Ouvrez la fenêtre Cygwin.

2.2.a) Créez les users et les groupes:

  • Users : mkpasswd -l > /etc/passwd
  • Groupes: mkgroup -l > /etc/group

Cela va prendre les users et groupes de Windows et les créer dans les fichiers correspondants Cygwin. Pour utiliser les groupes/users du domaine (au lieu de local), remplacez -l par -d Pour ajouter un user précis, utilisez -u. Exemple: mkpasswd -u johnny -l > /etc/passwd

2.2.b) Lancez: ssh-host-config -y

Il est possible qu'il demande un mot de passe pour la création d'un user "sshd_server" (par exemple sous Windows 2003). C'est le user qui sera utilisé pour faire tourner le service sshd.

Quand il demande "CYGWIN=", entrez: ntsec tty

Cela va créer le service sshd dans Windows. Il apparaîtra sous le nom "CYGWIN sshd" dans la liste des services. Il est en principe configuré pour démarrer automatiquement, mais il n'est pas encore démarré.


ETAPE 3 - Lancement du service sshd et test

3.a) Démarrez le service avec la commande: net start sshd ou: cygrunsrv -S sshd

(Notez que le service démarrera automatiquement au prochain redémarrage de Windows:

Vous n'aurez donc plus à taper cette commande.)

3.b) Testez le service.

Utilisez le client ssh fourni avec cygwin: ssh monlogin@localhost ou bien Putty (client ssh gratuit): http://www.chiark.greenend.org.uk/~sgtatham/putty/

A la première connexion, le client ssh va probablement vous demander de confirmer la clé. Ensuite, après l'entrée du mot de passe, vous devez obtenir un shell.

Vous pouvez voir la connexion en tapant: echo $SSH_CONNECTION (Port 22 = votre serveur ssh)


REMARQUES

Gestion des utilisateurs Tout utilisateur déclaré dans /etc/passwd pourra se loguer sur le serveur ssh. Vous pouvez donc limiter la liste des utilisateurs pouvant se connecter sur le serveur ssh en modifiant le fichier C:\cygwin\etc\passwd Note: vous devez laisser les users sshd et sshd_server. Le serveur ssh en a besoin.

Accès aux disques Windows N'oubliez pas que sous le shell Cygwin, vous pouvez accéder à vos disques Windows: Par exemple, /cygdrive/c pour accéder à C: (et ainsi de suite pour les autres lecteurs.)

Utilisations En plus du shell, vous avez bien entendu la possibilité d'utiliser votre serveur ssh pour le transfer sécurisé de fichiers (scp/sftp). Sous Windows, on trouve des clients scp/sftp gratuits:

Le serveur SSH peut également tunneller pour vous tout protocole basé sur TCP. (Pour être précis, c'est équivalent à un port-forwarding distant). Exemple, pour établir un tunnel: Votre machine -----> client ssh local (port 777) -----> serveur ssh (port 22) ----> pop.free.fr (port 110).

On entrerait: ssh -L 777:pop.free.fr:110 monLogin@monServeurSsh

Puis il suffit de connecter votre logiciel de mail sur localhost:777 au lieu de pop.free.fr:110 : ssh tunnellera tout cela vers pop.free.fr, port 110. Vous pourrez donc lire votre courrier sur localhost:777. Cela peut être utile pour traverser des réseaux non sûrs (par exemple tout ce qu'il y a entre votre machine et le serveur ssh).

Sécurité Pour compléter cette installation, il faudrait ajuster les droits d'accès aux fichiers du user utilisé pour lancer le service sshd afin d'améliorer la sécurité.

Pensez à lancer de temps en temps l'installeur Cygwin pour mettre à jour openssh et openssl. (Arrêtez le service avant de faire cette mise à jour.). Cela vous permettra de bénéficier des mises à jour de sécurité d'openssh et openssl.

Utilisation du serveur

  • Depuis n'importe quelle machine en adressant son IP

wget et curl

Le problème était que :

 curl  http://prdownloads.sourceforge.net/fink/Fink-0.8.1-Intel-Installer.dmg

ne marchait pas

tandis que

wget http://prdownloads.sourceforge.net/fink/Fink-0.8.1-Intel-Installer.dmg

fonctionne

Le problème vient en fait que ce fichier est Moved Permanently (faire un curl -v ....) pour que curl le prenne en compte, il faut taper :

curl -L http://prdownloads.sourceforge.net/fink/Fink-0.8.1-Intel-Installer.dmg

XUL

XUL sur wikipédia
Un dossier sur les langages 3D pour le web : ici
Une présentation XUL faite avec S5
Plein d'exemples par Pascal Chevrel (mozilla france) Attention : Marche correctement avec Firefox, non testé avec d'autres navigateurs.
La référence XUL de mozilla

Travailler avec svk et trac

Kezako ?

Svk est un logiciel de gestion de version décentralisée écrit en Perl. Il utilise le système de fichiers de Subversion avec des fonctionnalités supplémentaires.Pour plus d'info, voir svk sur wikipedia.

Installation sur mac-osX

Création d'un mirror d'un repository svn existant

  • appelons la copie locale SVN-Labo. Création et synchronisation de celui-ci:
     svk mkdir //SVN-Labo
     svk mirror http://svn.lal.in2p3.fr/users/garnier //SVK-Labo
     svk mirror --list (pour vérifier)
     svk sync //SVN-Labo (pour synchroniser la copie locale et le repository distant)
    
  • Désormais, le mirror repository est installé dans ~/.svk
  • changer dans le trac.ini :
    • repository_dir = /Users/laurentgarnier/.svk/local
    • repository_type = svn
  • resynchroniser trac :
     trac-admin /Users/laurentgarnier/Sites/trac ->resync
    

Création d'une copie locale de ce mirror pour travailler dessus en mode déconnecté

 svk copy //SVN-Labo //SVN-Local
  • Récupération de cette copir locale :
     svk co //SVN-Local mon_repository_mirroir_local
    
  • Puis travailler comme avec svn (en mode déconnecté):
     svk commit ... -m"test"
    
  • et synchroniser avec le dépot distant en faisant :
     svk push //SVN-Local
    
  • Plus d'infos ici
  • Et voila !

Installation de Qt4 sur Windows pour win32-msvc.net

Formatage du code dans ''Smultron'' avec ''astyle''

Une façon d'apporter à Smultron le formatage du code :

  1. Installer astyle, via Fink par exemple;
  2. Dans Smultron
    1. dans Préférences/Avancées, cocher
      Check if document has been updated by another application
      
    2. dans Outils/Commandes préférées :
      • rajouter la commande :
        /sw/bin/astyle --style=kr %%p 
        
      • je lui ai mis le raccourci clavier Ctrl-space

On peut naturellement choisir une autre option à la commande astyle ou même définir son propre style - voir la doc.

C'est tout …

Gérer un projet CMT dans XCode...

Pour cela :

  • Récupérer le premier fichier CMT_Build_System.zip.
    • Il s'agit du template pour utiliser CMT via Xcode
    • Le décompresser.
    • Placer le tout dans le répertoire "/Library/Application\ Support/Apple/Developer\ Tools/Project\ Templates/"
  • Récupérer le second fichier xcode.sh. Le mettre en mode éxécutable, puis le placer dans le répertoire du projet cmt
    • ce fichier permet de lancer les différentes commandes CMT.
  • Lancer Xcode
    • Démarrer un nouveau projet :"File"->"New Projet"
    • Choisir le type de projet "CMT_Build_System"
    • Double-Cliquez sur l'icone "Target/CMT" et définir le "Custum build command"/"Directory vers la ou est installé votre xcode.sh
    • mettre à jour les variables CMTPATH et CMTROOT
    • Lancer le build.....
  • C'est fini !!!!!

Réorganisation du repository presentations

Je suis pour. De plus, archiver uniquement ce qui est nécéssaire dans la branche "tags" de telle sorte
que l'on puisse faire un .tgz le plus petit possible avec une présentation. La branche "trunk" pouvant elle,
contenir toutes les versions de Tools par exemple. Ajouter aussi un directory "Depot" pour y conserver toutes les
images éventuellement utiles pour les futurs développements.

Réorganisation du ''repository'' presentations

Pour des raisons historiques, notre dépôt est actuellement le suivant :

$> svn ls https://svn.lal.in2p3.fr/projects/devdu/presentations/
09-06-2006_SIT_CMT/
09-20-2006_CMT_JI06/
09-20-2006_Intro_JI06/
SlidyEx/
Subversion/
Tools/
Trac/
VincentEx/
branville2006/
index.html

Je propose la réorganisation suivante :

.
|-- trunk
|     |-- Tools
|     |-- DevCollaboratifs
|     |-- Subversion
|     |-- Trac
|     |-- Cmt
|     |-- …
|
|-- tags
|     |-- Atlas-SIT-060609
|     |    |-- Tools
|     |    |-- Cmt
|     |-- JI06-Lyon
|     |    |-- Tools
|     |    |-- Intro
|     |    |-- Subversion
|     |    |-- Trac
|     |    |-- Cmt
|     |-- Devdu-061015
|     |    |-- Tools
|     |    |-- Slidy
|     |-- …
|
|-- branches
|     |-- ??
  • chaque nouveau thème est alors un répertoire sous trunk
  • chaque présentation, tirée, inspirée, copiée à partir d'un thème, est rangée dan son répertoire à son nom dans tags et contient également sa version de Tools
  • pour branches, je ne sais pas encore exactement … probablement - et normalement - utile pour les tests et nos développements ?

Je propose également de noter les dates avec le format suivant : aammjj (affichage chronologique avec ls -l)

Il serait sans doute utile de rajouter également un README décrivant :

  • l'organisation
  • les présentations
  • les procédures de publication

Quid d'un répertoire avec quelques scripts, outils d'aide à la publication :

  • création d'une archive de publication par présentation
  • ?

Qu'en pensez-vous ?

Structuration du site

Idée à développer

Est-ce que ce site est ouvert aussi aux chercheurs???

Trac

Je reprend l'idée d'antoine :
En fait, il n'y a aucune hiérarchie physique : toutes les pages sont au même niveau. Il est cependant possible d'utiliser une hiérarchie logique qu'on obtient en nommant les pages du Wiki en faisant apparaître l'organisation :

  • devdu/ComptesRenduReunion/060601
  • devdu/Exposes/Outils/Subversion

Milestones

  • un millestone par réunion, ça va peut être faire beaucoup?

Tags

  • un tag par réunion

SVN

  • y placer toutes les présentations et les documents utiles

Discussions

  • Lancer quelques sujets (éviter les clivages par langages?) :

blog

  • compte rendus de réunion (qui à faire une autre page qui pointe sur cell-ci)

tickets

Divers

  • mini-tuto sur les Flux RSS, ou comment être informé d'une mise à jour du site
  • Dévelopement perso utiles à la communauté (faire une page pour les ressencer?)
  • Commencer travailler correctement et en sécurité en backupant ses données?

Outils de developpement logiciel : du codage a la diffusion

J'ai assisté, avec Laurent, à l'amphi de l'IAP au 1er tutoJRES 01. Journée intéressante. Pas mal d'info à récupérer quand les transparents seront disponibles, ce qui a été annoncé.

Les présentations :

Subversion, un outil de gestion de version

(1 heure 30, Florent Guilleux CRU)

Les outils de gestion de version sont devenus incontournables pour le développement de logiciel en mode collaboratif. Les gains offerts par leur utilisation compensent largement l‘investissement initial pour leur prise en main. Subversion est le successeur moderne du principal gestionnaire de version en mode centralisé, CVS. Cette présentation montrera pas à pas comment utiliser Subversion, depuis les opérations de base jusqu‘à des utilisations plus avancées : gestion des tags et branches, fusions, hooks, méta données, etc.

Les plates-formes intégrées de gestion de développement

(1 heure, Florent Guilleux)

Le mode de développement ouvert des logiciels open source a favorisé l‘émergence de plates-formes réunissant dans une même interface web des outils de développement collaboratif : gestion de bogues, de tâches, de paquetage, de documents, forums, etc. Les développeurs disposent désormais de multiples services d‘hébergement de projets, accessibles de partout n‘importe quand, et les affranchissant de l‘administration de ces outils. GForge, l‘un des principaux logiciels de plate-forme de développement, sera présenté de manière approfondie, à travers l‘exemple du service sourcesup.cru.fr.

Les différents types de licence

(1 heure, Jean-Pierre Gasnier prof. associé Aix-Marseille III, juriste)

Le choix d‘une licence est important pour un produit, car elle en détermine notamment les conditions d‘utilisation, de modification, de rediffusion, etc. La multiplicité des licences existantes rend ce choix difficile. Cette présentation essayera de dégager des critères de choix pertinents, et présentera les principales licences libres ou open source existantes.

Comment rendre son développement diffusable

(45 minutes, Pascal Aubry Université de Rennes1)

Le passage d‘un développement logiciel à un produit réellement diffusable est un réel travail, trop souvent négligé par les développeurs. Cette présentation présentera les bonnes pratiques pour faire d‘un développement un produit : rythme de diffusion des versions, communication autour du produit, support aux utilisateurs, animation d‘une communauté, etc.

La présentation sur le site de P. Aubry

Antoine.