15 janvier 2004

Avoir son propre depôt PEAR sur son compte Unix ou Linux ?

Voici une méthode d'installation d'un dépôt PEAR indépendant du dépôt commun.

Pour utiliser cette méthode on doit pouvoir exécuter le script pear.

Préliminaire

Quelques réperoires à créer. Dans ce cas l'arborescence PEAR sera compatible avec STOW ( http://blog.touv.fr/2004/01/utiliser-stow-pour-installer-des.html ).


mkdir -p  ~/local/stow/pear/bin
mkdir -p  ~/local/stow/pear/share/pear/data
mkdir -p  ~/local/stow/pear/share/pear/tests
mkdir -p  ~/local/stow/pear/share/pear/docs 

Configuration

On va changer la configuration par défaut de la commande pear. Ce changement de configuration n'est valable que pour l'utilisateur qui exécute la commande.


pear config-set bin_dir ~/local/stow/pear/bin
pear config-set php_dir  ~/local/stow/pear/share/pear
pear config-set data_dir  ~/local/stow/pear/share/pear/data
pear config-set test_dir  ~/local/stow/pear/share/pear/tests
pear config-set doc_dir  ~/local/stow/pear/share/pear/docs

Installation

Voilà tout est prêt on peut maintenant installer tout les packages PEAR que l'on veux...


pear install DB
pear install XML_Parser
pear install XML_Tree
pear install Archive_Tar
pear install Console_Getopt
pear install XML_RPC
pear install Cache_Lite
pear install PEAR
pear install PhpDocumentor
pear install NET_Socket
pear install NET_Url
pear install HTTP_REquest

Utilisation

Maintenant pour utiliser votre dépôt PEAR, il vous faut modifier la configuration de PHP à chaque fois que vous l'utilisez.

En ligne de commande :


php -d include_path=.:/home/thouveni/local/share/pear/

Dans vos scripts :


<?php
ini_set('include_path','/home/thouveni/local/share/pear/'.ini_get('include_path'))"

...

?>

Utiliser stow pour installer des applicatifs sous son compte Linux ?

Vous êtes sur un sytème Unix ou Linux, vous avez accès par défaut à plusieurs applications. Problème votre application favorite n'est pas installée et vous n'avez pas le mot de passe de root...

Aucun problème vous pouvez installer ou compiler votre application dans votre compte. Pour vous aidez dans cette tâche il existe un petit utilitaire très pratique du nom de STOW.

Voici une méthode pour l'utiliser

1. Préliminaire

Tout d'abord, on doit créer un certain nombre de réperoire :

 

mkdir ~/local/stow
mkdir ~/local/bin 
mkdir ~/local/info
mkdir ~/local/etc
mkdir ~/local/share
mkdir ~/local/lib 
mkdir ~/local/man 
mkdir ~/local/man/man1
mkdir ~/local/man/man2
mkdir ~/local/man/man3
mkdir ~/local/man/man4
mkdir ~/local/man/man5
mkdir ~/local/man/man6
mkdir ~/local/man/man7
mkdir ~/local/man/man8
mkdir ~/local/X11R6
mkdir ~/local/sbin

2. Installation

Ensuite nous devons installer le programme stow.
Toutes les installations doivent se faire dans un même répertoire, ou l'on sépare chaque application dans un répertoire différent.


gunzip < stow-1.3.3.tar.gz | tar xvf -
cd stow-1.3.3
configure --prefix=~/local/stow/stow-1.3.3
make 
make install

Puis on applique le programme stow sur lui même.


cd ~/local/stow/
./stow-1.3.3/bin/stow stow-1.3.3

3. Utilisation

Maintenant, toutes vos application personnels seront accessibles dans le répertoire ~/local/bin. Pour simplifier l'utilsation de ce répertoire, on peut adapter quelques variables d'environnement.


export PATH=$HOME/local/bin:$PATH
export MANPATH=$HOME/local/man:$MANPATH
export LD_LIBRARY_PATH=$HOME/local/lib:$LD_LIBRARY_PATH

# ou SHLIB_PATH sur un système HP-UX

4. Exemple complet

Voici un exemple typique avec l'éditeur de texte : nano


cd ~/
wget ftp://gatekeeper.dec.com/pub/GNU/stow/stow-1.3.3.tar.gz
wget http://www.nano-editor.org/dist/v2.0/nano-2.0.3.tar.gz
wget ftp://ftp.gnu.org/gnu/ncurses/ncurses-5.6.tar.gz
cd ~/
mkdir ~/local
mkdir ~/local/download
mkdir ~/local/stow
mkdir ~/local/bin
mkdir ~/local/info
mkdir ~/local/etc
mkdir ~/local/share
mkdir ~/local/lib
mkdir ~/local/man
mkdir ~/local/man/man1
mkdir ~/local/man/man2
mkdir ~/local/man/man3
mkdir ~/local/man/man4
mkdir ~/local/man/man5
mkdir ~/local/man/man6
mkdir ~/local/man/man7
mkdir ~/local/man/man8
mkdir ~/local/X11R6
mkdir ~/local/sbin
cp  ~/stow-1.3.3.tar.gz ~/local/download/
cp  ~/ncurses-5.6.tar.gz ~/local/download/
cp  ~/nano-2.0.3.tar.gz ~/local/download/

cd ~/local/download
gunzip < ~/local/download/stow-1.3.3.tar.gz | tar xvf -
gunzip < ~/local/download/ncurses-5.6.tar.gz | tar xvf -
gunzip < ~/local/download/nano-2.0.3.tar.gz  | tar xvf -

cd ~/local/download/stow-1.3.3
configure --prefix=$HOME/local/stow/stow-1.3.3
make
make install
cd ~/local/stow/
~/local/stow/stow-1.3.3/bin/stow stow-1.3.3

export PATH=$HOME/local/bin:$PATH
export MANPATH=$HOME/local/man:$MANPATH
export LD_LIBRARY_PATH=$HOME/local/lib:$LD_LIBRARY_PATH
export TERM=vt100

cd ~/local/download/ncurses-5.6
./configure CPPFLAGS="-I $HOME/local/include/ncurses"
--prefix=$HOME/local/stow/ncurses-5.6
make
make install
cd ~/local/stow
stow ncurses-5.6

cd ~/local/download/nano-2.0.3
./configure CPPFLAGS="-I $HOME/local/include/ncurses"
--prefix=$HOME/local/stow/nano-2.0.3
make
make install
cd ~/local/stow
stow nano-2.0.3

nano   #  Enjoy !

12 janvier 2004

Créer sa propre base Mysql sur son compte unix ou linux ?

Vous avez un compte sur une machine Unix ou Linux et vous souhaitez créer ou utiliser votre propre base de données MySql ?
Et bien c'est très simple ...

1. Préliminaire

Tout d'abord vérifier que votre PATH est correctement configuré et que vous avez les droits nécessaires pour exécuter MySQL.

Maintenant il vous faut créer un fichier nommé .my.cnf que vous placerez à la racine de votre compte. Vous devez également créer quelques répertoires.
(Les noms et l'emplacement ne sont pas imposés).

Typiquement :


% touch ~/.my.cnf
% mkdir -p ~/var/run
% mkdir ~/var/log
% mkdir ~/var/mysql

3. Configuration

Ensuite il vous faut préciser le contenu du fichier .my.cnf. L'exemple qui suit vous donne les paramètres minimum à saisir. (à adapter suivant les besoins)


[client]
port=7885
socket=/home/thouveni/var/run/mysql.socket

[server]
port=7885
datadir=/home/thouveni/var/mysql
socket=/home/thouveni/var/run/mysql.socket
log=/home/thouveni/var/log/mysql.access.log
pid-file=/home/thouveni/var/run/mysql.pid
#set-variable = max_allowed_packet=5M
 
[safe_mysqld]
err-log=/home/thouveni/var/log/mysql.error.log
language=french

3. Initialisation

Vous devez également initialiser votre base avec le commande suivante :


% mysql_install_db --datadir=/home/thouveni/var/mysql

4. Démarrage

Voilà il vous reste à démarrer votre serveur comme ceci :


% safe_mysqld &

sur certain système le lanceur safe_mysqld s'appelle mysqld_safe.

Pour l'arrêter correctement et proprement :


% kill -s TERM `cat /home/thouveni/var/run/mysql.pid`

5. Problème

Par défaut la base refuse les connexions en provenance d'autres machines. Pour une utilisation distribuée et non sécurisée vous devez modifiez les autorisations.

La requête suivante permet à l'administrateur de la base de se connecter de n'importe quelle machine.


GRANT ALL PRIVILEGES ON * . * TO "test"@"%"

09 janvier 2004

Comment mettre de la transparence dans son terminal aterm ?

La transparence ne fonctionne pas avec toutes les consoles. Elle est généralement supportées par des terminaux qui dérivent de rxvt. On prendra comme exemple aterm, avec lequel ça fonctionne sans problème.

Pour cela, il suffit d'ajouter 2 lignes dans son fichier $HOME/.Xressource :


aterm*transparent: true
aterm*shading: 50

Pour augmenter la transparence il faut augmenter la valeur de "shading", et inversement pour diminuer la transparence.