Création web & Open source

Aller au contenu | Aller au menu | Aller à la recherche

Open Source

29/08/2010

mod_security

Suite à l'installation de "mod_security" avec votre serveur Apache (disponible en packages debian sous le nom mod-security2-common ou ici), vous pouvez être en manque de temps pour le configurer correctement.

Heureusement, OWASP est là ! Ils proposent une liste de règles, disponibles ici.

Ces règles sont néanmoins très restrictives. N'oubliez pas de tester l'intégralité de vos applications après l'installation de ce fichier de configuration ...

15/04/2010

Aptana

Aptana Logo Aptana est un environnement de développement basé sur Eclipse.

Deux versions sont disponibles : Aptana RadRails et Aptana Studio. La version Studio, à laquelle on ajoute le support PHP, est très facile à utiliser.

Pour installer le support PHP, faites "Help > Install Additional Features". Sélectionnez ensuite "Web Application Platforms" > puis "PHP Development Tools (PDT)".

Si PHP n'est pas disponible dans ce qui peut être installé, n'hésitez pas à regarder l'image ci-dessous, pour les sites activés (Enabled) :

available software sites

Un autre site peut être nécessaire : http://download.eclipse.org/technology/babel/update-site/galileo

Ainsi l'interface en français sera disponible pour Aptana. Il faudra alors installer deux éléments :

Babel Language Pack for eclipse in French

Babel Language Pack for tools.pdt in French

Edition du 18/04/10 : Aptana / Eclipse peut utiliser un dictionnaire français pour l'orthographe (Général > Editeurs > Editeurs de texte > Correcteur orthographique).

Depuis une machine linux, il a été effectué la commande suivante :

aptitude install aspell aspell-fr
aspell dump master fr | cut -d / -f 1 > /tmp/fr.txt

Ce dictionnaire est donc basé sur la version 0.50-3-6 d'aspell-fr, contenu dans lenny.

Pour les personnes n'ayant pas de machine linux sous la main, vous pouvez télécharger ce dictionnaire ici.

Enfin, il suffit de déclarer à Eclipse / Aptana un Dictionnaire défini par l'utilisateur, par exemple pour un chemin de ce type : C:\Users\Admin\AppData\Local\Aptana Studio 2.0\dico\fr.txt

La valeur par défaut du dictionnaire est : UTF-8.

De plus le plugin GIT pour Eclipse, eGit, est aussi disponible.

Pour créer un nouveau dépôt GIT depuis Aptana, il suffit de suivre la procédure expliquée ici qui s'applique pour EGit.

20/02/2010

Git Extensions

GIT-Extensions-logo.pngDernier post sur GIT, pour les utilisateurs qui désirent travailler depuis leur poste Windows, vers un dépôt GIT.

Il existe principalement deux outils avec une interface graphique pour GIT sous Windows.

D'un coté TortoiseGIT, qui se rapproche de TortoiseSVN (pour ceux qui ont utilisé SVN avant d'utiliser GIT), de l'autre coté GIT Extensions.





Git-extensions-CommitLog.jpg

Ce dernier est très simple à utiliser et à aborder. Après avoir testé les deux produits, c'est GIT Extensions qui semble le plus abouti.

Avant de l'installer, il faut cependant bénéficier de :

  • Windows XP SP3
  • Windows Vista SP1
  • Windows 7
  • .NET Framework 2.0 au minimum. Il est cependant conseillé d'installer le .NET Framework 3.5 SP1 avec toutes les mises à jours disponibles (ici ou ici).

Git Extensions est disponible en téléchargement ici ou ici.

A l'installation il suffit de choisir l'installation complète. Vous vous retrouvez alors avec tout ce qui est nécessaire à l'utilisation d'un dépôt GIT.

Attention, il est conseillé de choisir les options suivantes :

  • Client SSH : Utiliser plink.exe.
  • Programmes requis : MSysGit & KDiff3.

Certains conseillent d'installer MsysGit (Git pour Windows) avec les options suivantes :

  • Use git bash only.
  • Commit line endings as they are.

Redémarrez à la fin de l'installation (intégration au PATH et au menu contextuel).

Au premier lancement Git Extensions va vérifier son installation. Généralement il suffit d'entrer votre nom et votre e-mail. Vous pouvez bien sûr préciser les autres champs.

Afin de travailler sur un dépôt situé sur une autre machine, ils faut aller dans la boite de dialogue : Remotes => Manage remote repositories. La capture d'écran suivante peut vous aider :

GIT-remote-repositories.png

La clé SSH privée peut être chargée dans Pageant, si vous utilisez déjà Putty sur votre poste (Pageant est inclus dans le programme d'installation de Putty, et se charge a coté de votre horloge Windows, afin de gérer les authentification de Putty utilisant vos clés ssh privées).

Pour une première utilisation, ces quelques vidéos peuvent aider :

  1. Cloner un dépôt : ici
  2. Commit des modifications : ici
  3. Push des modifications : ici
  4. Pull des modifications : ici
  5. Gérer les conflits de fusion : ici

02/02/2010

GIT et TIG

TIG est un programme ncurses pour GIT. Parfait pour travailler en ligne de commande sur votre serveur.

Pour l'installer, il suffit de faire tout simplement :

aptitude install tig

Ou de le compiler depuis les sources disponibles ici.

L'usage le plus simple est d'utiliser TIG quand vous êtes placés dans un dépôt GIT. Une interface visuelle de git-log s'affiche alors.

Vous pouvez alors vous déplacer dans l'historique de modifications avec les flèches bas et haut (ou "j" et "k"). "Entrée" va afficher une entrée de l'historique, avec un diff du commit. Utiliser la barre d'espace va vous déplacer dans ce diff, alors que les flèches haut et bas vont vous déplacer entre les commits. Appuyer sur "q" va fermer la séparation en deux de la fenêtre (celle de la liste git-log et le diff), puis une seconde fois sur "q" va fermer le programme.

tig-main-view-split.png

Un autre aspect utile de TIG est la vue par arbre (tree-view). Après avoir lancé TIG, appuyez sur "t" quand vous êtes dans la liste des modifications, et vous aurez une vue navigable du dépôt. Appuyez "Entrée" pour descendre dans les répertoires ou pour visualiser un fichier, ou encore "majuscule"+"B" sur un fichier, pour avoir une vie avec annotations.

tig-tree-view.png

TIG peut aussi travailler avec les branches, des tags, hash, ou autres... Essayez donc une commande du genre :

tig origin/rel-1.5

Afficher une branche contre une autre branche est assez simple, pour par exemple copier des informations d'une autre branche à la branche actuelle. Si nous avons "commité" un changement au "master" qui doit être présent dans la branche origin/rel-1.5, on peut faire par exemple :

git checkout -b 1.5 origin/rel-1.5

Ouvrez alors TIG avec :

tig master

Déplacez vous au changeset que vous désirez copier, et appuyez "Majuscule"+"C". Répétez si besoin.

tig-blame-view.png

Vous pouvez aussi regarder des commandes tel que :

tig show [rev]
tig blame [file]
tig status

Permet avec la touche "u" pour faire un ajout interactif.

Le manuel est ici, bonne lecture !

20/12/2009

etckeeper

Sur un système Linux ou Unix, le répertoire /etc contiens les fichiers de configuration de votre système, et des programmes installés dessus.

etckeeper vous permet de garder une trace de ce qui a été changé, par qui, et aussi pourquoi - si vous le spécifiez.

Son installation sous la famille Debian est très simple : aptitude install etckeeper (en supposant que git-core soit déjà installé).

Si etckeeper est déjà installé, et que vous désirez adapter le programme pour qu'il utilise git, effectuez ceci :

# etckeeper uninit
# vi /etc/etckeeper/etckeeper.conf

Puis dé-commentez la ligne "git" pour ne laisser qu'elle :

# The VCS to use.
# VCS="hg"
VCS="git"
# VCS="bzr"
# VCS="darcs"

Puis initialisez de nouveau etckeeper. Ceci marche aussi lors d'une nouvelle installation par package .deb, afin de finaliser l'installation :

# cd /etc
# etckeeper init
# git add .         <= attention, vérifiez que vous êtes placés dans dans /etc
# etckeeper commit 'Tout premier commit'
# git gc

Tout changement par apt / aptitude sera automatiquement ajouté à etckeeper.

Si vous effectuez un changement manuel, il faudra, en plus d'éditer votre fichier présent dans /etc/, effectuer la commande suivante :

# git commit -a -m 'Ceci est la raison du changement du jour à la configuration du fichier toto.conf'

Informations complémentaires : Les commandes intéressantes à utiliser avec etckeeper sont simplement celles de git, à savoir, en vrac :

# git log
# git diff <numéro 1> <numéro 2>

Revenir à la version précédente suite à une erreur :

# git revert <numéro voulu>
# git status

Eléments à creuser :

Si vous désirez recevoir une notification par mail des changements effectués dans votre /etc, pensez à installer mail-git-status .

19/12/2009

Redmine sur Debian - la méthode simple

Logo REDMine

Redmine est un gestionnaire de projets très simple visuellement, et utilisant Ajax. Il permet de faire un suivi de plusieurs projets (Gantt, Bugtraq, Roadmap, Wiki, Forum, etc... le tout pour chaque projet).

Il peut fonctionner avec CVS, SVN, Mercurial, Git, et bien d'autres contrôleurs de versions. Puissant, il peut lier un ticket d'assistance avec un commit.

Redmine utilise cependant Ruby On Rails (RoR) et son serveur spécifique (tel que Mongrel). Si on désire faire tourner Redmine avec Apache, il faut un peu mettre les mains dans le camboui.

La technique proposée ici n'utilise ni proxy, ou autre bidouille.

Cette page explique les grandes lignes de l'installation, à vous de remplir les trous. Voici donc comment faire pour installer Redmine sur votre Debian, et ce très simplement et rapidement.

Tout d'abord il faut vérifier la version nécessaire de Ruby et de Rails pour la version de Redmine que vous désirez installer. Cette information est disponible ici :

http://www.redmine.org/wiki/redmine/RedmineInstall

Il faut ensuite configurer votre Debian pour utiliser backports.org, expliqué ici, en n'oubliant pas :

aptitude install debian-backports-keyring
aptitude -t lenny-backports install rubygems1.9 ruby rake libmysql-ruby librmagick-ruby <et d'autres si besoin>

Et d'autres commandes utiles :

adduser --home /opt/redmine --disabled-login redmine
su - redmine

gem install rails -v 2.3.4     <= ici la version nécessaire par Redmine, écrit sur la page "RedmineInstall"
gem install mysql
gem install rmagick

Penser à passer en production :

gem update --system
rake db:migrate RAILS_ENV="production"
rake redmine:load_default_data RAILS_ENV="production"

Ensuite, il suffit de télécharger redmine, puis de le décompresser (dans cet exemple on a utilise "redmineuser.www-data").

Il suffit ensuite de créer un utilisateur et une base de données MySQL pour Redmine, puis éditer config/database.yml au champ production :

vim config/database.yml
production:
   adapter: mysql
   database: redmine
   host: localhost
   username: utilisteursqlredmine
   password: motdepasseassocie
   socket: /var/run/mysqld/mysqld.sock

On peut tester le bon fonctionnement de Redmine :

# ruby script/server -e production

Le serveur est alors disponible à l'adresse : http://ip:3000 , avec comme nom d'utilisateur admin et mot de passe admin.

Contrairement à d'autres, qui utilisent un reverse proxy pour intégrer Redmine à Apache, il suffit tout simplement d'installer passenger :

gem install passenger

Puis il faut lancer la dernière commande qui va bien :

passenger-install-apache2-module

Il est tout de même conseillé de vérifier passenger.load et passenger.conf dans /etc/apache2/mods-available avant de faire un :

a2enmod passenger

Maintenant, il suffit d'utiliser un simple VirtualHost, ici avec un exemple d'accès par .htaccess si on veux interdire tout accès extérieur sans mot de passe valide, tout en permettant une autorisation pour le reseau local :

<VirtualHost *:80>
      ServerAdmin mon@mail.fr
      ServerName redmine.mondomaine.fr
      DocumentRoot /home/redmineuser/redmine-0.8.7/public
      <Directory /home/redmineuser/redmine-0.8.7/public>
        AllowOverride all
        Options -MultiViews
        Order deny,allow
        Deny from all
        AuthName "redmine.mondomaine.fr :: auth"
        AuthUserFile /chemin/vers/.htpasswd
        AuthType Basic
        Require valid-user
        Allow from 192.168.0.0/24 mondns.tld
        Satisfy Any
      </Directory>
</VirtualHost>

Il vous rester à configurer Redmine, pour le faire fonctionner avec GIT par exemple.

Ceci se passe par l'interface web de Redmine. Créez un projet, puis cliquez sur Configuration > Dépôt > SCM Git > Path to .git directory /home/git/repositories/votreprojet.git .

Note : Il faut permettre à l'utilisateur redmine d'accéder aux données enregistrées par le groupe git :

# usermod -G git redmineuser

29/11/2009

Installation d'Alfresco sur Debian Lenny

Logo AlfrescoAlfresco est un système de gestion de contenu, de documents, d'outils de collaboration, de base de connaissances, d'images, et bien plus ...

Un petit tour des fonctionnalités est disponible sur cette page.

La documentation d'installation sur Debian est assez précise pour vous aider à installer ce système, mais concerne Etch.

Pour Debian Lenny, deux ou trois choses doivent être précisées :

- Puisque cet explicatif concerne Debian Etch. Il n'est pas nécessaire de changer le fichier sources.list d'aptitude quand on utilise Debian Lenny.

- Pour la version "Community Edition 3.2r2", un bug au lancement peut être rencontré. Il faut donc supprimer le dossier "webstudio" et le fichier webstudio.war, contenus dans le dossier /opt/Alfresco/tomcat/webapps/, puis redémarrer Alfresco.

- Il se peut qu'aucune base MySQL ne soit crée lors de l'installation, il faut donc y remédier avec cette requête :

create database alfresco;
grant all on alfresco.* to 'alfresco'@'localhost' identified by 'alfresco' with grant option;
grant all on alfresco.* to 'alfresco'@'localhost.localdomain' identified by 'alfresco' with grant option;

- Il n'est pas nécessaire d'utiliser, pour le fichier /etc/init.d/alfresco, les règles IPTABLES fournies par la documentation. Alfresco reste tout à fait accessible au http://adresseip:8080/alfresco/ (utilisateur : admin, et mot de passe : admin) et les partages à l'adresse http://adresseip:8080/share/ .

- Une traduction française est disponible ici. Le fichier téléchargé doit être décompressé dans :

/opt/Alfresco/tomcat/shared/classes/alfresco/

- Les composants (addins) pour Microsoft Office sont ici, et ici puis ici et encore ici pour OpenOffice.

28/11/2009

autosfs + nfs sur Debian

Utiliser un partage NFS avec autofs s'avère très simple.

La mise en place d'un service NFS, aussi bien du coté client que serveur est expliqué sur windowslinux.net.

Au niveau d'autofs, il suffit d'éditer le fichier : /etc/auto.master et de vérifier que la ligne suivante soit activée :

/net    /etc/auto.net --timeout=900

Ceci va créer un dossier "/net" à la racine de votre Debian. Il suffira d'accéder à vos partages NFS par ce dossier. Exemple, pour le partage /mnt/raid sur la machine 192.168.0.20, il suffit de faire :

ls /net/192.168.0.20/mnt/raid

Tin Can Jukebox - Votre deezer

Logo Tin Can Jukebox

Tin Can Jukebox vous permet de proposer votre bibliothèque musicale à de nombreuses personnes, et en même temps ! Un vrai petit deezer.com ou jiwa.fr "maison".

Tin Can JukeBox utilise Apache, PHP, MySQL et Ajax.

Chaque utilisateur est authentifié, il comporte une interface d'administration, la création de playlists, un classement par artistes / albums ou genre. On peut même choisir de télécharger ses musiques via cette bibliothèque.

Il gère non seulement les fichiers mp3, les ogg, flac, et certainement d'autres !

Si vous disposez de php-gd, et des autres bibliothèques, il suffit de décompresser la dernière version de Tin Can Jukebox. Créez ensuite une base de données et un utilisateur dédié à ce site, Reste à copier conf.php.default vers conf.php et d'éditer les valeurs en rapport à la base de donnée et à l'utilisateur.

Suivez les instructions affichées par le script dans votre navigateur, l'installation s'effectue en quelques clics.

Une démonstration est disponible ici.

18/10/2009

iFolder sur Debian Lenny

Si vous connaissez "DropBox", Il faut connaitre aussi iFolder.

iFolder est son équivalent gratuit et open-source, qui nous permet d'héberger nos données sur notre propre serveur.

En résumé voici ce que permet de faire ce logiciel :

  • Permet de synchroniser des dossiers et fichiers entre plusieurs ordinateurs clients (Windows / Linux / Mac).
  • Héberger sois même les données, et non sur un service tiers (ou payant).
  • Synchroniser de manière encryptée et sécurisée.
  • L'application aussi bien coté postes clients et coté serveur est open-source.

Crée par Novell pour s'exécuter sur Suse, il est possible d'installer iFolder sur Debian Lenny, pour héberger et stocker les données.

Voici comment installer iFolder sous Debian Lenny (et sûrement Ubuntu).

Avec un Apache 2 déjà installé, vérifiez que le bon module et que le site ssl par défaut soit activé :

a2enmod ssl
a2ensite default-ssl

Même si le certificat ssl installé par cette technique est auto-signé, vous pouvez néanmoins vous connecter sur https://IPdeVotreServeur/

Toujours sur votre serveur, créez un dossier vide et téléchargez les packages suivants :

wget http://downloads.sourceforge.net/ifolder3/
ifolder3-enterprise-3.7.2.9089.1-0.2.i586.rpm

wget http://downloads.sourceforge.net/ifolder3/
ifolder-enterprise-plugins-3.7.2.9089.1-2.i586.rpm

wget http://download.opensuse.org/distribution/
10.3/repo/oss/suse/noarch/log4net-1.2.9-104.noarch.rpm

Il faut adapter ces fichiers .rpm pour les installer sur Debian Lenny. Pour ce faire, installez "alien" :

aptitude install alien

Puis lancez la conversion des packages :

alien --scripts *.rpm

Installez les packages :

dpkg -i ifolder3-enterprise_3.7.2.9089.1-1.2_i386.deb
dpkg -i ifolder-enterprise-plugins_3.7.2.9089.1-3_i386.deb

Installez les dépendances :

aptitude install mono-apache-server mono-apache-server2
libapache2-mod-mono libmono-system-web1.0-cil
libmono-system-runtime1.0-cil libmono-system-runtime2.0-cil
mono-runtime

Note : sous Ubuntu, utilisez mono-1.0-runtime et mono-2.0-runtime en remplacement des packages libmono-system-runtime1.0-cil, libmono-system-runtime2.0-cil, et mono-runtime.

Le package "liblog4net" installé automatiquement dans Debian n'est pas compatible avec le serveur iFolder. Il faut donc installer une autre version.

Si c'est votre cas, désinstallez ce package :

aptitude remove liblog4net1.2-cil

Puis installez le package précédemment converti :

dpkg -i log4net_1.2.9-105_all.deb

Pour être sûr de notre coup, redémarrez Apache :

/etc/init.d/apache2 restart

Passez maintenant à la configuration du serveur "Simias" :

/usr/bin/simias-server-setup

La plupart des réponses sont par défaut, il faut juste faire attention à bien spécifier le groupe et l'utilisateur Apache (www-data). Voici le log de la configuration :

SIMIAS SERVER SETUP
This script configures a server installation of Simias
to setup a new Simias system.
----- SERVER'S DATA PATH -----
Path to the server's data files
Server's Data Path? [/var/simias/data]:
----- SERVER NAME -----
The name of this server
Server Name? [Host1]: <Nom d'hôte>

----- SSL -----
Select SSL/NONSSL communication for this server.
Options are  SSL, NONSSL or BOTH SSL? [SSL]:
----- PUBLIC URL -----
Public URL of this Simias Server
Public URL? [https://monIP/simias10]:
https://monIP/simias10

----- PRIVATE URL -----
Private URL of this Simias Server
Private URL? [https://monIP/simias10]:
https://monIP/simias10

----- SLAVE SERVER -----
Install into existing Simias Domain
Slave Server? [N]:
----- SYSTEM NAME -----
A name used to identify the Simias system to users.
System Name? [iFolder]:
----- SYSTEM DESCRIPTION -----
A detailed description of the Simias system for users.
System Description? [iFolder Enterprise System]:
iFolder sur mon serveur


----- USE KEY RECOVERY AGENT -----
Use Key Recovery Agents to recovery the encryption
key if the user forgets the pass-phrase used for encryption?
Use Key Recovery Agent? [Y]:
----- RECOVERY AGENT CERTIFICATE PATH -----
Path to the Recovery agent certificate's.
Recovery Agent Certificate Path? [/var/simias/data]:
----- USE LDAP -----
Use LDAP to provision and authenticate users?
Use LDAP? [Y]: N
----- SYSTEM ADMIN -----
The Simias default administrator.  If the system is
configured to use an external identity source, the
distinguished name (dn) should be used.
System Admin? [admin]:
<Mettez un autre login ici>
System Admin Password? [novell]:
<changez le mot de passe>

----- CONFIGURE APACHE -----
Configure Simias to run behind Apache
Configure Apache? [N]: Y
----- APACHE USER -----
Apache User
Apache User? [wwwrun]: www-data
----- APACHE GROUP -----
Apache Group
Apache Group? [www]:www-data
Working...
Configuring /var/simias/data/simias/Simias.config...
SetupSimias - Done
Configuring /etc/apache2/conf.d/simias.conf...Done
Configuring User Movement plugin..
Setting up Log4Net file...Done
Setting up permissions...Done
SUCCESS

Il faut corriger le chemin vers mod_mono :

sed -i 's/apache2\/mod_mono.conf/apache2\/mods-enabled\
/mod_mono.conf/g'/etc/apache2/conf.d/simias.conf

Si vous utilisez Ubuntu, vérifiez que gmcs se trouve bien dans /usb/bin/ , sinon créez un lien symbolique comme ceci (étape non nécessaire sous Debian Lenny) :

ln -s /usr/bin/gmcs2 /usr/bin/gmcs

Puis créez les répertoires nécessaires, avec les bon droits :

mkdir -p /var/www/.config/.mono/
chown -R www-data:www-data /var/www/.config/

Redémarrez Apache pour vérifier si tout fonctionne (normalement, c'est le cas) :

/etc/init.d/apache2 restart

Exécutez les setups d'iFolder (les réponses par défaut conviennent parfaitement), mais là encore il faut faire attention au groupe et à l'utilisateur d'Apache (www-data) :

/usr/bin/ifolder-admin-setup
/usr/bin/ifolder-web-setup

Corrigez encore le chemin vers mod_mono :

sed -i 's/apache2\/mod_mono.conf/apache2\/mods-enabled\
/mod_mono.conf/g' /etc/apache2/conf.d/ifolder_admin.conf

sed -i 's/apache2\/mod_mono.conf/apache2\/mods-enabled\
/mod_mono.conf/g' /etc/apache2/conf.d/ifolder_web.conf

Si ce n'est pas déjà le cas, activez le module rewrite pour Apache :

a2enmod rewrite
/etc/init.d/apache2 restart

Allez sur : https://VotreAdresse/admin , créez un utilisateur "normal" ... et voilà ! Prêt à utiliser !

Coté client vous pouvez entrez : l'adresse IP et le login / pass de votre utilisateur. C'est aussi simple que cela.

Vous pouvez aussi jeter un œil sur https://VotreAdresse/ifolder .

Actuellement l'admin spécifié dans la configuration ne peut pas être changé, ni son mot de passe (en tout cas par l'interface web - et dans cette version téléchargée d'iFolder ...).

Une autre technique d'installation pour Lenny est disponible ici :

https://trac-git.assembla.com/unifolder/wiki/InstallingIFolderServerOnDebianLenny

Voici quelques captures d'écran de l'installation :

Login d'administration sur : https://votreIP/admin/ :

La liste des utilisateurs, dans la console d'administration :

La vue utilisateur, dans https://VotreIP/ifolder :

17/08/2009

Firefox - options d'About:Config

Firefox est l'un des navigateurs les plus utilisés sur Internet.

Si vous aussi vous vous demandez comment :
- Désactiver le scan d'antivirus au téléchargement d'un fichier
- Afficher le code source des pages web dans votre éditeur favoris
- Afficher un bouton de fermeture sur chaque onglet, sur l'onglet actif, ou sur la barre d'affichage des onglets
- Configurer le défilement des onglets
- Réduire la mémoire utilisée par Firefox quand il est minimisé
- Augmenter la vitesse de Firefox
- Activer l'auto-complétion dans la barre d'adresse
- Ouvrir le résultat de recherches rapides dans un nouvel onglet
- Désactiver la vérification de compatibilité de vos extensions avec Firefox (permet d'utiliser de vieilles extensions).
- etc ...

Cette page de documentation sur windowslinux.net est faite pour vous !


Ci-dessus, un exemple de configuration, pour les boutons de fermeture des onglets.


Avec 28 propriétés expliquées, vous pouvez désormais adapter Firefox à vos besoins.

N'hésitez pas à ajouter un commentaire dans ce blog, ou à directement contribuer dans le wiki de windowslinux.net, si vous connaissez d'autres options de configuration !

28/07/2009

Selenium HQ - Système de test pour applications web

SeleniumHQ permet d'effectuer une séries de tests sur vos applications web.

Différentes versions existent, sur toutes plateformes. Une extension Firefox (nommé IDE) est même disponible.

D'un autre coté, Selenium Grid permet de distribuer les tests crées avec Selenium RC, entre plusieurs serveurs, vous permettant d'économiser beaucoup de temps en effectuant des tests en parallèle.

Pour un exemple d'utilisation, vous pouvez voir la vidéo en cliquant sur l'image ci-dessous :

21/07/2009

WebSVN / Screen

Deux articles ont été écris sur Windowslinux.net .

Le premier propose un fichier .screenrc, permettant d'ouvrir plusieurs fenêtres, d'avoir une sélection visuelle et d'afficher le nom de votre machine ainsi que la date et l'heure.

Le résultat est celui-ci :

Le second article corrige un bug rencontré actuellement avec WebSVN sur Lenny, en rapport avec l'affichage UTF8 et ISO-8859-1.

26/04/2009

Iron 1 - Chrome 0

Iron est un logiciel libre basé sur Google Chrome, ou tout du moins sa version "Chromium".

Google Chrome à souvent été pointé du doigt par sa manie de partager votre confidentialité et vos données personnelles avec le moteur de recherche Google.

SRWare, via son naviguateur Iron, permet de résoudre celà.

Ainsi divers éléments sont supprimés d'Iron :

Client-ID :
Chrome crée un ID unique par lequel un utilisateur peut être théoriquement identifié.

Timestamp :
Chrome se souvient à la seconde près quand le programme a été installé.

Suggest :
A chaque entrée dans la barre d'adresse, l'information est envoyée à Google afin de fournir des suggestions.

Page d'erreur alternative :
Si une mauvaise adresse est entrée dans la barre d'adresse, l'information est envoyée à Google, et un message d'erreur (exemple : mauvaise url) est renvoyée des serveurs de Google.

Rapport d'erreurs :
Des détails à propos d'un crash ou d'erreurs peuvent être envoyées aux serveurs de Google.

RLZ-Tracking :
Fonction de Chrome qui transmet des informations encodées à Google, comme par exemple : quand et où a été installé Google Chrome.

Google Updater :
Chrome installe un agent de mise à jours qui se charge à chaque lancement de Windows en tâche de fond.

URL-Tracker :
Se lance en tâche de fond quand la page de démarrage de Google est chargée.

Sur ces éléments, des informations plus précises sont disponibles ici.

Dans tous les cas, Iron est rapide, parfait pour être installé sur un Ultraportable.


Sur un autre sujet, 20 bugs ou améliorations à apporter pour le réseau creationweb.fr sont en cours de fermeture. Dix ont déjà été fermés (principalement des mises à jours de sécurité et petites améliorations de fonctionnement).

31/03/2009

Dspam WebUI : Can't use an undefined value as an ARRAY reference at dspam.cgi line 551.

Après une installation de DSPAM WebUI (dspam.cgi, version 1.23 2006/05/13 présente actuellement dans Debian) il est possible, de rencontrer l'erreur suivante dans les log d'Apache :

Can't use an undefined value as an ARRAY reference at dspam.cgi line 551.
Il suffit de corriger dspam.cgi en accord avec les lignes suivantes :

$ svn diff -r30:31
Index: dspam.cgi
===================================================================
--- dspam.cgi (revision 30)
+++ dspam.cgi (revision 31)
@@ -532,10 +532,13 @@
foreach my $period (qw( daily weekly )) {
my $uc_period=uc($period);
my $hk="DATA_$uc_period";
- my %lst=();
+ my %lst=(
+ spam => [],
+ nonspam => [],
+ title => []
+ );
foreach my $hr (sort {$a->{idx}$b->{idx}} (values
%{$Stats{$period}})) {
foreach my $type (qw( spam nonspam title )) {
- (exists $lst{$type}) || ($lst{$type}=[]);
push(@{$lst{$type}},$hr->{$type});
my $totk="";
if ($type eq "spam") { $totk="S"; }
@@ -547,9 +550,9 @@
}
}
$DATA{$hk}=join("_",
- join(",",@{$lst{spam}}),
- join(",",@{$lst{nonspam}}),
- join(",",@{$lst{title}}),
+ join(",",@{$lst{spam}} || [0]),
+ join(",",@{$lst{nonspam}} || [0]),
+ join(",",@{$lst{title}} || [0]),
);
}


Cette information fait l'objet, pour mémoire, d'un article sur WindowsLinux.net.

Merci à ce mail.

21/03/2009

Système de fichiers, base de données, freshmeat.

La plupart des super calculateurs les plus rapides du monde utilisent Lustre comme système de fichier distribué.

L'objectif du projet est de fournir un système de fichier distribué capable de fonctionner sur plusieurs centaines de noeuds, avec une capacité d'un péta byte, sans altérer la vitesse ni la sécurité de l'ensemble (source ici). Le C.E.A. est l'une des organisations qui utilise LUSTRE.

Soutenu par Sun, un wiki regroupant plusieurs informations sur le sujet est disponible ici. Une annonce déclare même que Lustre préfère ZFS (cependant sous Debian, ZFS nécessite FUSE à l'heure actuelle - avec sûrement des problèmes de performance). Le système fait cependant déjà référence. Une bonne source sur le sujet reste tout de même ce site.

D'un autre coté, GlusterFS fait de plus en plus parler de lui. Visiblement il est déjà supporté sur Debian (dans les repo non officiels en tout cas). Il est même conseillé d'utiliser le package nommé "glusterfs-examples", pour se "faire la main".

Des explicatifs sont mêmes disponibles à plusieurs endroits [1] [2] [3].

Sur un autre thème : la gestion de bases de données MySQL de taille importante, un trés bon article nommé "Database Sharding @ Netlog" est disponible ici.


Enfin, freshmeat à fait peau neuve :


27/01/2009

Mozilla fait un don de 100 000 $ pour le développement du format Ogg

Face à la présence croissante des vidéos et des sites proposant ce type de contenu (Youtube, Dailymotion, ...), et surtout face à leurs plugins propriétaires pour l'utilisation de ceux-ci, la fondation Mozilla a décidé d'agir afin d'ouvrir la porte à l'Open Source.

100 000 $ ont été donné pour développer le format Ogg, et permettre notamment l'utilisation de ce format en streaming via Firefox, comme son utilisation à travers l'élément "video" qui va voir le jour avec l'HTML 5.

Plus d'informations ici.