vendredi 5 septembre 2008

Installation du pilote propriétaire ATI Catalyst™ 8.8

Un petit rappel pour l'installation des pilotes de ma carte graphique ne fait toujours pas de mal ;)

Pour déterminer le type de carte graphique:

malagasy@malagasy-laptop:~$ lspci | grep VGA
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility X1400
N'oubliez pas de faire une copie de votre fichier /etc/X11/xorg.conf avant d'aller plus loin:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_old
Si vous ne trouvez pas le pilote approprié pour votre carte graphique, c'est que votre carte graphique datait d'avant la sortie de l'Ati Radeon 8500
Pour plus de renseignement, il faut lire le FAQ vers le lien suivant http://ati.amd.com/products/catalyst/linux.html

1. Désinstallation des drivers graphiques:

Pour désinstaller proprement les paquets deb fglrx:
sudo mv /etc/xdg/compiz/compiz-manager.ubuntu /etc/xdg/compiz/compiz-manager
sudo apt-get remove fglrx*
sudo sh /usr/share/ati/fglrx-uninstall.sh
Après cette dernière manipulation, j'ai eu un message, que j'ai résolu en renommant les dossiers concernés:
dpkg : avertissement : lors de la suppression de fglrx-amdcccle, le répertoire « /usr/share/ati » n'était pas vide, donc il n'a pas été supprimé.
rmdir: échec de suppression de `/usr/lib/fglrx': Le dossier n'est pas vide

sudo mv /usr/share/ati /usr/share/ati_old
sudo mv /usr/lib/fglrx /usr/lib/fglrx_old

2. Mise-à-jour du système:
sudo apt-get update

3. Installation des dépendances:
sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++5 dkms linux-headers-$(uname -r)

4. Installation des nouveaux drivers:

Téléchargement du dernier driver ATI pour ATI mobility X1400, qu'on peut trouver sur le site http://ati.amd.com/support/driver.html

Version 8.8
Date Posted Aug. 20, 2008
Package Includes Automated installer and Display Drivers for X.Org 6.7, 6.8, 6.9, 7.0, 7.1, 7.2, 7.3

On se met dans le repertoire ou l'on a téléchargé le driver:
sh ati-driver-installer-8-8-x86.x86_64.run --buildpkg Ubuntu/hardy

Pour pouvoir utiliser le nouveau driver, il faut blacklister le driver du dépôt de Ubuntu:
sudo gedit /etc/default/linux-restricted-modules-common
Puis, ajouter fglrx dans les guillemets:
DISABLED_MODULES="fglrx"

Pour l'installation des paquets:
sudo dpkg -i xorg-driver-fglrx_*.deb fglrx-kernel-source_*.deb fglrx-amdcccle_*.deb

Puis, il ne faut surtout pas oublier de rajouter dans "la section Device" du fichier /etc/X11/xorg.conf, la ligne Driver "fglrx"

Sinon, j'ai utilisé mon ancien fichier /etc/X11/xorg.conf
sudo cp /etc/X11/xorg.conf_backup /etc/X11/xorg.conf
# xorg.conf (xorg X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
# sudo dpkg-reconfigure -phigh xserver-xorg

Section "ServerLayout"

# Uncomment if you have a wacom tablet
# InputDevice "stylus" "SendCoreEvents"
# InputDevice "cursor" "SendCoreEvents"
# InputDevice "eraser" "SendCoreEvents"
Identifier "Default Layout"
Screen 0 "aticonfig-Screen[0]-0" 0 0
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
Option "AIGLX" "true"
EndSection

Section "Files"

# path to defoma fonts
FontPath "/usr/share/X11/fonts/misc"
FontPath "/usr/share/X11/fonts/cyrillic"
FontPath "/usr/share/X11/fonts/100dpi/:unscaled"
FontPath "/usr/share/X11/fonts/75dpi/:unscaled"
FontPath "/usr/share/X11/fonts/Type1"
FontPath "/usr/share/X11/fonts/100dpi"
FontPath "/usr/share/X11/fonts/75dpi"
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection

Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "type1"
Load "vbe"
EndSection

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "fr"
Option "XkbVariant" "oss"
EndSection

Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection

Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "HorizEdgeScroll" "0"
EndSection

Section "InputDevice"
Identifier "stylus"
Driver "wacom"
Option "Device" "/dev/input/wacom"
Option "Type" "stylus"
Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection

Section "InputDevice"
Identifier "eraser"
Driver "wacom"
Option "Device" "/dev/input/wacom"
Option "Type" "eraser"
Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection

Section "InputDevice"
Identifier "cursor"
Driver "wacom"
Option "Device" "/dev/input/wacom"
Option "Type" "cursor"
Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection

Section "Monitor"
Identifier "aticonfig-Monitor[0]-0"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection

Section "Device"
Identifier "aticonfig-Device[0]-0"
Driver "fglrx"
Option "UseFastTLS" "1"
BusID "PCI:1:0:0"
EndSection

Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-0"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection

Section "DRI"
Mode 0666
EndSection

Section "Extensions"
Option "Composite" "1"
EndSection

Après celà, il faut faire:
sudo aticonfig --initial -f
sudo aticonfig --input=/etc/X11/xorg.conf --tls=1

5. Vérification si nouveaux drivers ont bien été installés:

Redémarrer le PC, puis taper dans une console:
malagasy@malagasy-laptop:/usr/lib/fglrx$ glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: ATI Mobility Radeon X1400
Sinon, on peut aussi aller dans le panneau Système/Administrations/Pilote de périphérique, et l'on devrait avoir:


6. Petits soucis lors de l'installation:

Après une première tentative d'installation des dépendance, j'ai eu comme message:
malagasy@malagasy-laptop:~/dl_net/ati_driver$ sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++5 dkms linux-headers-$(uname -r)
(...)
Paramétrage de linux-headers-2.6.24-19-386 (2.6.24-19.36) ...
Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms
/etc/init.d/dkms_autoinstaller: line 82: /var/lib/dkms/fglrx/8.452.1/source/dkms.conf: Aucun fichier ou dossier de ce type
/etc/init.d/dkms_autoinstaller: line 82: /var/lib/dkms/fglrx/8.476/source/dkms.conf: Aucun fichier ou dossier de ce type
fglrx: Multiple versions in DKMS. Unsure what to do. Resolve manually.
J'aurai du faire:
dkms status
sudo dkms remove -m fglrx -v numero_correspondant --all
Mais ce que j'ai fait comme manipulation est la suivante:
sudo apt-get remove --purge dkms

De toute façon, çà marche :)

J'ai aussi eu comme message:
dpkg : avertissement : lors de la suppression de fglrx-amdcccle, le répertoire « /usr/share/ati » n'était pas vide, donc il n'a pas été supprimé.
rmdir: échec de suppression de `/usr/lib/fglrx': Le dossier n'est pas vide
La solution a été très simple ici, il fallait supprimer manuellement les répertoires concernés (et par contre, moi je les ai juste renommés):
sudo mv /usr/share/ati /usr/share/ati_old
sudo mv /usr/lib/fglrx /usr/lib/fglrx_old

À la fin de la première installation, j'avais cru que tout était bon mais surprise (je ne l'étais pas trop au fait, puisque je ne m'attendais pas à ce que çà marche du premier coup), j'ai comme message:
malagasy@malagasy-laptop:/var/lib/dkms$ glxinfo | grep "direct rendering"
glxinfo: ../../src/xcb_io.c:350: _XReply: Assertion `!dpy->xcb->reply_data' failed.
malagasy@malagasy-laptop:/var/lib/dkms$ sudo dkms remove -m fglrx -v 8.476 --all
[sudo] password for malagasy:
dkms.conf: Error! No 'DEST_MODULE_LOCATION' directive specified.
dkms.conf: Error! No 'PACKAGE_NAME' directive specified.
dkms.conf: Error! No 'PACKAGE_VERSION' directive specified.

Error! Bad conf file.
File: /var/lib/dkms/fglrx/8.476/source/dkms.conf does not represent
a valid dkms.conf file.
Et dans ce cas là, il fallait faire:
sudo rm -rf /var/lib/dkms/fglrx
Comme suggéré dans ce lien, et reprendre tout à zéro.


Sources:
http://wiki.cchtml.com/index.php/Ubuntu_Hardy_Installation_Guide#Method_2:_Manual_Method_.28installing_Catalyst_8.8.29

vendredi 15 août 2008

gabedit: logiciel de modélisation moléculaire

1. Installation:

malagasy@malagasy-laptop:~$ sudo apt-get install gabedit
malagasy@malagasy-laptop:~$ gabedit
Une fois le logiciel installé, on peut le retrouver dans "Applications/Éducation/Gabedit QC-GUI"

J'en profite de ce billet pour faire un petit clin d'oeil sur ce blog:

http://www.biologeek.com/bio-informatique,ubuntu/biobuntu-un-live-cd-pour-la-bio-informatique/

2. Utilisation du logiciel:

Voici un pdf qui aide à la prise en charge du logiciel (rien de mieux qu'un petit tuto de l'auteur même du logiciel)

Calcul de la structure électronique de petites molécules

Sinon, le lien vers le site de l'auteur: http://sites.google.com/site/allouchear/Home

3. Pour plus d'informations:

http://en.wikipedia.org/wiki/Gabedit

A.R. ALLOUCHE, Gabedit is a free Graphical User Interface for computational chemistry packages. It is
available from http://gabedit.sourceforge.net/

jeudi 17 juillet 2008

Connection Bluetooth entre PC et Téléphone portable

Aujourd'hui j'ai tenté de connecter un téléphone portable Sony Ericsson T610 avec mon pc.

J'ai juste suivi les instructions dans le wiki: http://doc.ubuntu-fr.org/bluetooth

Dans un premier temps, il faut installer les paquets suivant, puis redémarrer la session bluetooth:

sudo apt-get install bluez-gnome gnome-bluetooth gnome-vfs-obexftp nautilus-sendto bluez-utils
sudo /etc/init.d/bluetooth restart
Envoie d'un fichier sur le téléphone portable

Il suffit juste de faire un click droit sur le fichier à envoyer, puis sélectionner l' option "Envoyer à...", puis


Et en appuyant sur Envoyer, le fichier est transféré sur le mobile.


Réception de fichiers par l'ordinateur

Il faut cliquer avec le bouton de droit sur l'icone de la bluetooth dans la barre des tâches, puis dans Préférence, il faut cocher "Visible et autorisant la connexion d'autres périphériques". Après cela, il faut aller dans "Applications/Accessoires/Partage de fichier bluetooth" pour lancer gnome-obex-server (l'icône se place dans la barre des tâches, une fois qu'il se lance).


Puis, on peut envoyer un fichier directement du téléphone portable vers le PC, qui s'ajoute automatiquement sur le bureau, sans rien demander à personne :)

jeudi 10 juillet 2008

Personnaliser son bureau

1- Weather wallpaper

Pour l'installer, il faut ajouter dans le fichier /etc/apt/sources.list:

deb http://mundogeek.net/repo ubuntu all
Puis dans une console, il faut taper:
sudo apt-get update
sudo apt-get install weather-wallpaper
Pour le lancer, il faut aller dans Applications/Accessoires/Weather wallpaper. Vous pouvez le lancer automatiquement aussi à chaque fois que vous vous connectez à votre session en allant dans Système/Sessions/Ajouter:
Nom: Weather wallpaper
Commande: weather-wallpaper
Pour supprimer l'application, il faut rentrer dans une console:
sudo aptitude purge weather-wallpaper
Puis de supprimer le répertoire: ~/.weather-wallpaper

Pour avoir le code de votre ville, il suffit de le retrouver sur le site http://www.nws.noaa.gov/tg/siteloc.shtml, et dans "Display All Stations In a Country", il faut rentrer le nom de votre pays, puis cliquez sur "display all station in" qui vous donnera la liste des villes de votre pays. Ensuite, en cliquant sur votre ville vous auriez votre code, par exemple pour Toulouse/Blagnac c'est LFBO (ICAO Location Indicator: LFBO)

Au fait, la mise à jour de la page se fait toute les demi-heures.

2- SlideShow

Il faut tout d'abord télécharger le fichier SlideShow-0.9.tar.gz, que vous pouvez installer directement, sans avoir à le décompresser, avec votre application gDesklets - que vous pouvez installer directement à partir du Gestionnaire de Paquet Synaptic.

Si vous avez des messages du type:
No Control could be found for interface IImageSlideShow
Il faut télécharger ImageSlideShowControl-0.8, puis le décompresser dans ~/.gdesklets/Controls/ et après celà, il faut réinstaller une nouvelle fois SlideShow-0.9.tar.gz avec gDesklets.

Voici ce que çà donne:


Sources:
http://mundogeek.net/weather-wallpaper/
http://www.gdesklets.de/ (site officiel pour gdesklets)
http://gdesklets.zencomputer.ca/ (site non-officiel pour gdesklets)
http://forum.ubuntu-fr.org/viewtopic.php?id=184939

lundi 7 juillet 2008

Nettoyage de printemps

1- Comment se débarrasser des résidus de paquets via Synaptic:

Il faut aller dans Système\Administration\Gestionnaire de paquets Synaptic, puis cliquez en bas à gauche sur "État" qui se trouve parmi la liste suivante:

Installés
Installés (locaux ou obsolète)
Non installés
Non installés (résidus de configuration)
Puis cliquez sur "Non installés (résidus de configuration)", puis cliquez avec le bouton de gauche sur chacun des paquets en choisissant l'option "Sélectionner pour suppression complète, puis faites Appliquer.


2- Comment se débarrasser des résidus de paquets via le Terminal:

sudo apt-get autoclean

3- Comment se débarrasser des données locales inutiles avec "localepurge":


Il faut tout d'abord installer le paquet "localepurge" à partir du gestionnaire de paquet synaptic, puis l'installer. Ensuite vous allez avoir une fenêtre dans laquelle vous allez devoir choisir les langues locales que vous voulez garder, en autre j'ai choisi de garder "fr" et "en".

Je vous conseille fortement de garder la langue anglaise surtout lorsque vous allez avoir de nouvelles installations, puisque localepurge se lance automatiquement et là, il pourrait y avoir de petits soucis.

4- Comment se débarrasser des paquets orphelins:

Il faut installer "deborphan" à partir du gestionnaire de paquets Synaptique, puis après installation, il faut lancer la commande suivante dans un terminal:
sudo deborphan | xargs sudo apt-get -y remove --purge
Pour éviter d'utiliser le terminal pour une prochaine fois, on peut installer un raccourci de deborphan dans le gestionnaire de paquets Synaptic: Configuration\Filtres\

Cliquez sur Nouveau, que vous pouvez nommer Orphelins par exemple, puis cliquez sur " Tout déselectionner" pour ne garder que "orphelin", puis valider.

Pour supprimer les paquets orphelins, il faut suivre la même procédure qu'au 1-

5- Maintenir son système grâce à un Script:

Je vous propose d'aller à ce lien: http://doc.ubuntu-fr.org/maintenir_systeme

J'ai installé la version 3.0.0 de la façon suivante:

Il faut tout d'abord installer le paquet zenity:
sudo apt-get install zenity
Puis copier le script suivant dans:
gedit ~/maintenance-systeme.sh
Le script v3.0.0:
#!/bin/bash
# Script créé par Jean-Lux avec l'aide de Daniel Vergeylen modifié par Yurek sous licence GPL
VERSION_SCRIPT="Version 3 stable - GNOME - APT-GET"
function _help {
zenity --info --title="Menu d'aide" --text="Maintenir son systeme à jour et propre

Usage : ./maintenance_systeme.sh [ARGUMENT]

Arguments disponibles :

-l, --lanceur Permet de rajouter une icône de lancement
dans le menu \"Applications > Outil système\"

-h, --help Affiche cette aide et quitte

-?, --about Affiche les informations sur le script

"
exit 0
}
function _about {

zenity --info --title='Informations et recommandations' --text="Ce script se charge de mettre à jour votre système et de supprimer les fichiers/paquets inutiles.\n\nMaintenance du système\n$VERSION_SCRIPT\nGnome\nJean-lux et Daniel Vergeylen modifié par Yurek\n\nNous remercions les membres du forum : http://forum.ubuntu-fr.org pour les idées et les informations nous ayant aidé à la conception de ce script.\nCe script est sous licence GLP : http://www.gnu.org/licenses/gpl-3.0.txt \n\n\nVous utilisez ce script à vos risques et périls : nous ne serons pas responsable des éventuels problèmes survenant sur votre système après usage de ce script !\nRapportez vos bogues, problèmes et suggestion sur http://forum.ubuntu-fr.org/viewtopic.php?id=117039"

exit 0
}
function initialise {
VERSION=`lsb_release -sr`

if [ "$HOME" = "root" ]; then
zenity --error --title="Probleme de lancement" --text="L'identifiant parait etre ''root'' or ce script doit etre executé en mode utilisateur.\n\nArret du script."
break
fi

if [ `echo $VERSION | sed s'/[.]//'` -ge 804 ] ;then
TRASH="$HOME/.local/share/Trash/files"
else
TRASH="$HOME/.Trash"
fi
echo $TRASH

REPEAT=0
}

function erreur {
if [ "$TRASH" = "" ] ; then
zenity --error --title="Erreur FATAL constaté" --text="Il y a une erreur critique dans le script, veuillez ne pas réutiliser cette fonction et contacter l'auteur pour qu'il corrige le probleme en urgence, rassurez vous votre systeme n'a pas eu de dommage"
exit 105
fi
}

function annuler {
if [ "$PIPESTATUS" = "0" ]; then
update_configuration $ACT
else repeat
fi
}
function repeat {
echo "repeat = $REPEAT"
if [ "$REPEAT" = "0" ]; then
zenity --question --title="Relancer le script" --text="Voulez vous relancer le script ?"
if [ "$PIPESTATUS" = "0" ]; then
REPEAT=0 ;
echo "Continue => redéfinitions des choix"
choix
else
REPEAT=1 ;
echo "Byes"
zenity --notification --window-icon="info" --text="Les opérations demandées sont terminées"
break
fi
else echo "Byee"
zenity --notification --window-icon="info" --text="Les opérations demandées sont terminées"
break
fi
}

function _lanceur
{
if ! [ -f $DOSSIER_CFG/cleaner.png ]; then
cd $DOSSIER_CFG
wget -c -q http://doc.ubuntu-fr.org/_media/cleaner.png 2>&1
cd -
fi
echo "[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Maintenance-système
GenericName=Maintenance-système
Comment=Script permettant de maintenir le systeme à jour et propre
Icon=$DOSSIER_CFG/cleaner.png
Exec=$HOME/Maintenance-système.sh
Terminal=false
StartupNotify=false
Categories=Application;System" > $HOME/Maintenance-système.desktop
mv $0 $HOME/Maintenance-système.sh
chmod a+x $HOME/Maintenance-système.sh

zenity --warning --title="Droits administrateurs nécessaires" --text="Le Script a besoin de votre mot de passe utilisateur pour créer l'entrée du menu 'Applications > Outil système'.\n\nCe mot de passe ne sera évidemment pas sauvegardé ni utilisé ultérieurement par le script."

gksudo "mv -f $HOME/Maintenance-système.desktop /usr/share/applications/"

if [ -f "/usr/share/applications/Maintenance-système.desktop" ]; then
zenity --info --title="Menu ajouté" --text="Une entrée 'Maintenance-système' a été ajouté au menu 'Applications > Outils système'"
else zenity --error --title="Echec" --text="Une entrée 'Maintenance-système' n'a été ajouté au menu 'Applications > Outils système'
Merci de bien vouloir entrer le mot de passe pour donner cet accès au script."
fi
exit 0
}
function dossier {
echo "# Creation du dossier ( $1 )";
mkdir -p "$1" ;
}

function update {
gksudo apt-get update 2>&1 | zenity --progress --title="Tâche : Mettre à jour les dépôts" --text="Je suis en train de mettre à jour vos dépôts..." --pulsate --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la mise à jour des dépots, veuillez regarder le terminal de ce script pour + d'infos"
annuler
fi
}

function upgrade {
gksudo "apt-get upgrade -y" 2>&1 | zenity --progress --title="Tâche : Mettre à jour les paquets/logiciels installés..." --text="Je suis en train de mettre à jour tout les paquets/logiciels installés..." --pulsate --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la mise à jour des paquets, veuillez regardez le terminal de ce script pour + d'infos"
annuler
fi
}

function purge_conf {
PAQUET_PURGE_CONF=`dpkg -l | grep "^rc" | tr -s ' ' | cut -d ' ' -f 2`
PAQUET_PURGE_CONF=`echo $PAQUET_PURGE_CONF`
if [ "$PAQUET_PURGE_CONF" != "" ]; then
gksudo "apt-get remove --purge -y $PAQUET_PURGE_CONF" 2>&1 | zenity --progress --title="Tâche : Supprimer les résidus des paquets désinstallé" --text="Je suis en train de supprimer les résidus des paquets désinstallé : \n\n`echo $PAQUET_PURGE_CONF`" --pulsate --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la suppression complète des paquets inutiles, veuillez regardez le terminal de ce script pour + d'infos"
annuler
fi
fi
}

function autoclean {
gksudo apt-get autoclean 2>&1 | zenity --progress --title="Tâche : Supprimer les paquets périmés du cache d'APT" --text="Je suis en train de supprimer les paquets périmés du cache d'APT" --pulsate --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la suppression les paquets périmés du cache d'APT, veuillez regardez le terminal de ce script pour + d'infos"
annuler
fi
}

function clean {
gksudo apt-get clean 2>&1 | zenity --progress --title="Tâche : Supprimer TOUS les paquets du cache d'APT" --text="Je suis en train de supprimer tous les paquets téléchargés du cache d'APT" --pulsate --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la suppression des paquets inutiles du cache d'APT, veuillez regardez le terminal de ce script pour + d'infos"
annuler
fi
}
function update-pci {
gksudo update-pciids 2>&1 | sed -u 's/.*\ \([0-9]\+%\)\ \+\([0-9.]\+\ [KMB\/s]\+\)$/\1\n# Vitesse du téléchargement = \2/' | zenity --progress --title="Mise à jour de l'index des périphériques" --text="Je suis en train de mettre à jour l'index des périphériques PCI..." --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la 1ère phase de la mise à jour de l'index des périphériques, veuillez regardez le terminal de ce script pour + d'infos"
annuler
fi
}
function update-usb {
gksudo update-usbids 2>&1 | sed -u 's/.*\ \([0-9]\+%\)\ \+\([0-9.]\+\ [KMB\/s]\+\)$/\1\n# Vitesse du téléchargement = \2/' | zenity --progress --title="Mise à jour de l'index des périphériques" --text="Je suis en train de mettre à jour l'index des périphériques USB..." --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la 2ème phase de la mise à jour de l'index des périphériques, veuillez regardez le terminal de ce script pour + d'infos"
annuler
fi
}
function orphelin {
if [ -x /usr/bin/deborphan ]; then
DEBORPHAN=`deborphan`;
if [ "$DEBORPHAN" != "" ]; then
zenity --question --title="Confirmation pour la tâche : Supprimer les paquets orphelins" --text="Les paquets suivants sont considérés comme orphelins :\n $DEBORPHAN\nVoulez-vous supprimer ces paquets ?"
if [ "${PIPESTATUS[0]}" = "0" ]; then
gksudo "apt-get remove --purge $DEBORPHAN -y" 2>&1 | zenity --progress --title="Tâche : Supprimer les paquets orphelins" --text="Je suis en train de supprimer les paquets orphelins nommés précédemment..." --pulsate --auto-close
fi
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --text="Une erreur est survenue lors de la suppression des paquets orphelins, veuillez regardez le terminal de ce script pour + d'infos" --title="Erreur"
annuler
fi
fi
fi
}
function reconfigure {
gksudo dpkg --configure -a 2>&1 | zenity --progress --title="Configuration des paquets" --text="Je suis en train reconfigurer tous les paquets dépaquetés mais non configurés." --auto-close
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue lors de la reconfiguration des paquets non configuré."
annuler
fi
}
function sauvegarde {
SAUVEGARDE=$(find $HOME/ -name '*~' -print)
erreur
zenity --list --width=800 --height=389 --column "Fichiers de sauvegardes :" --column "numero :" --title="Confirmation pour la tâche : Supprimer les sauvegardes inutiles" --text="Ces fichiers de sauvegarde seront supprimés :\nVoulez-vous continuer ?\nPS.: Les répertoires seront affichés, mais ne seront pas supprimés pour des raisons de sécurités" "$SAUVEGARDE"
if [ "${PIPESTATUS[0]}" = "0" ] ; then
find $HOME -name '*~' -print0 |xargs -0 -i mv {} $TRASH/
fi
}
function config {
erreur
# format pour rajouter un fichier :
#$HOME/\
REMOVE_FILE="$HOME/.dvdcss \
$HOME/.gimp/documents \
$HOME/.gnome2/epiphany/favicon_cache \
$HOME/.gnome2/epiphany/mozilla/epiphany/Cache \
$HOME/.gnome2/evince \
$HOME/.gnome2/eog \
$HOME/.gnome2/gnometris.d \
$HOME/.gnome2/accels \
$HOME/.gnome2/accelsgedit \
$HOME/.nautilus/saved* \
$HOME/.adobe \
$HOME/.macromedia \
$HOME/.googleearth/Cache/dbCache.dat* \
$HOME/.thumbnails"
# le dernier ne prend pas d'anti-slash à la fin.

for i in "$REMOVE_FILE"
do
echo "Suppression : "$i""
if [ -e $i ] ;then
mv "$i" "$TRASH"
else
echo "Ficher inéxistant : $i"
fi
done
}
function tmp {
erreur
mv /tmp/* $TRASH/ 2>&1| zenity --progress --title="Tâche : Vider le dossier tmp" --text="Déplacement des fichiers temporaires dans la corbeille..." --pulsate --auto-close
}

function corbeille_home {
erreur
echo "corbeille : $TRASH"
rm -r -f $TRASH 2>&1 | zenity --progress --title="Tâche : Vider la corbeille" --text="Je suis en train de vider votre corbeille ($TRASH/)..." --pulsate --auto-close
}

function corbeille_partition {

erreur
CORBEILLES=`find /media -maxdepth 2 -name ".trash*" -print0`

if [ "$CORBEILLES" != "" ]; then
find /media -maxdepth 2 -name ".trash*" -print0| xargs -0 -i mv {} $TRASH | zenity --progress --title="Tâche : Vider vos corbeilles" --text="Je suis en train de déplacer vos corbeiles ($CORBEILLES) vers la corbeille principale..." --pulsate --auto-close
annuler
else
zenity --info --title="Alert" --text="Aucune corbeilles dans les partitions ou disque amovible"
fi
}

function check {
cd /
gksudo touch /forcefsck
if [ "${PIPESTATUS[0]}" != "0" ]; then
zenity --error --text="Une erreur est survenue lors de la mise en place de la vérification du disque au prochain démarrage, veuillez regardez le terminal de ce script pour + d'infos" --title="Erreur"
annuler
fi
cd -
zenity --info --title="Vérification du système de fichier" --text="Vous avez planifié une vérification du système de fichier, cette vérification s'exécutera au prochain démarrage d'Ubuntu !"
}
function connectivite {
if ([ "${PIPESTATUS[0]}" != "0" ] || [ "$IP" = "" ]) ; then
zenity --error --title="Pas de connexion Internet" --text="Aucune connexion internet n'a été détectée ou vous avez cliquez sur le bouton Annuler. Veuillez vérifier vos connexions. Ce script va continuer à s'éxecuter mais certaines options ne seront pas séléctionner par défaut."
NOTTRUE_UP="FALSE"
NOTTRUE_UG="FALSE"
MESSAGE=": vous semblez ne pas être connecter à internet toutefois vous pouvez selectionner cette option"
ATTENTION="/!\ : "
else
NOTTRUE_UP="`load_configuration UP_DEP`"
NOTTRUE_UG="`load_configuration UG_DEP`"
MESSAGE=""
ATTENTION=""
break
fi
}
function c_ping {

IP=`cat /etc/resolv.conf | grep nameserver |sed s'/^nameserver //'`
if [ "$IP" != "" ]; then
for i in $IP
do
ping -c1 -w 5 -W 5 $i > /dev/null | zenity --progress --pulsate --auto-close --title="Test de la connexion internet" --text="Je suis en train de tester la connectivité de votre connexion internet..."
connectivite
done
else connectivite
fi
}
function update_configuration {
echo "$1" >"$DOSSIER_CFG/maintenance_systeme.cfg"

}

function load_configuration {
if [ "$MODE" = "0" ] ; then
if grep "$1" "$DOSSIER_CFG/maintenance_systeme.cfg" >/dev/null ; then
echo "TRUE"
else echo "FALSE"
fi
else echo "FALSE"
fi
}
function choix {
## Affichage de la liste des actions
ACT=$(zenity --list --checklist --width=700 --height=500 --hide-column="2" \
--title "Sélectionner les opérations à effectuer" \
--text="Veuillez sélectionnez les opérations à effectuer :" \
--column="Choisir" --column "Correspondance" --column="Description" \
"$NOTTRUE_UP" "UP_DEP" "$ATTENTION""Mettre à jour les dépôts""$MESSAGE" \
"$NOTTRUE_UG" "UG_DEP" "$ATTENTION""Mettre à jour les paquets/logiciels installés""$MESSAGE" \
"`load_configuration PU_CONF`" "PU_CONF" "Supprimer les résidus des paquets désinstallé" \
"`load_configuration PERIME`" "PERIME" "Supprimer les paquets de sauvegarde périmés du cache APT" \
"`load_configuration ERASE`" "ERASE" "Supprimer tous les paquets de sauvegarde du cache APT ( si vous choisissez cette option, Il est inutile de cocher la ligne 4 )" \
"FALSE" "UP_PCI" "$ATTENTION""Mise à jour de l'index des périphériques pci""$MESSAGE" \
"FALSE" "UP_USB" "$ATTENTION""Mise à jour de l'index des périphériques usb""$MESSAGE" \
"`load_configuration ORPH`" "ORPH" "Supprimer les paquets orphelins ( Attention peut désinstaller certain paquets utiles pour les 64 bits )" \
"`load_configuration CONFIG`" "CONFIG" "Reconfiguration d'éventuels paquets dépaqueté mais non configuré" \
"`load_configuration DEL_SAUV`" "DEL_SAUV" "Déplacer les sauvegardes inutiles (extension *~ ) dans la corbeille" \
"`load_configuration DEL_CONFIG`" "DEL_CONFIG" "Déplacer les fichiers de configurations, les caches et des miniatures de divers programmes dans la corbeille" \
"`load_configuration DEL_TEMP`" "DEL_TEMP" "Déplacer le contenu du dossier temporaire dans la corbeille" \
"`load_configuration V_PART`" "V_PART" "Vérifier les corbeilles des autres partitions et disque amovibles" \
"`load_configuration DEL_PART`" "DEL_PART" "Nettoyer les corbeilles des autres partitions et disque amovibles" \
"`load_configuration V_CORB`" "V_CORB" "Vérifier la corbeille $HOME" \
"FALSE" "DEL_CORB" "Vider la corbeille $HOME" \
"`load_configuration V_DISK`" "V_DISK" "Vérifier le disque dur au prochain démarrage de l'ordinateur" )
annuler

echo "act = $ACT"

}
### MAIN
## Vérification des droits d'administrateur (root)

REPEAT=0 ;

DOSSIER_CFG="$HOME/.config/maintenance"
dossier "$DOSSIER_CFG"
case $1 in
-h|--help) _help;;
-l|--lanceur) _lanceur;;
-?|--about) _about;;
esac

if [ $UID != 0 ] ; then

initialise

zenity --question --title="Choix du mode" --text="Voulez vous utiliser la configuration précédente ?"
if [ "$PIPESTATUS" = "0" ] ; then
MODE=0 # mode personnel
else
MODE=1
fi

while [ "$REPEAT" = "0" ] # si a 1 arrete
do
REPEAT=0

#verification de la connectivité
c_ping

choix
## Exécution des opérations demandées

# Mise a jour des dépôts
if echo $ACT | grep UP_DEP ; then
update
fi
# Mise à jour des logiciels
if echo $ACT | grep UG_DEP ; then
upgrade
fi
# Suppression de la configuration des paquets désinstallé
if echo $ACT | grep PU_CONF ; then
purge_conf
fi
# Suppression des paquets périmé du cache
if echo $ACT | grep PERIME ; then
autoclean
fi
# Suppression des paquets téléchargé du cache
if echo $ACT | grep ERASE ; then
clean
fi
# Mise à jour de l'index des périphériques pci
if echo $ACT | grep UP_PCI ; then
update-pci
fi
# Mise à jour de l'index des périphériques usb
if echo $ACT | grep UP_USB ; then
update-usb
fi
# Suppression des paquets considérés comme "orphelin"
if echo $ACT | grep ORPH ; then
orphelin
fi
# Reconfiguration des paquets non configuré"
if echo $ACT | grep CONFIG ; then
reconfigure
fi
# Suppression des sauvegardes inutiles (extension *~ )
if echo $ACT | grep DEL_SAUV ; then
sauvegarde
fi
# Suppression des fichiers de configurations des caches et des miniatures de divers programmes
if echo $ACT | grep DEL_CONFIG ; then
config
fi
# Suppression des fichiers temporaires
if echo $ACT | grep DEL_TEMP ; then
tmp
fi
# Vérifier la Corbeille
if echo $ACT | grep V_CORB ; then
zenity --info --title "Alert" --text "Veuillez vérifier le contenu de la corbeille. "
annuler
erreur
nautilus $TRASH
fi
# Nettoyage de la Corbeille
if echo $ACT | grep DEL_CORB ; then
corbeille_home
fi
# Vérifier les Corbeilles
if echo $ACT | grep V_PART ; then
CORBEILLES=`find /media -maxdepth 2 -name ".trash*"`
if [ "$CORBEILLES" != "" ]; then
zenity --info --title="Alert" --text="Veuillez vérifier le contenu des corbeilles des autres partitons ou disques amovibles: ( $CORBEILLES )"
find /media -maxdepth 2 -name ".trash*" -print0|xargs -0 nautilus
else
zenity --info --title="Alert" --text="Aucune corbeilles dans les partitions ou disque amovible"
fi
fi
# Nettoyage de toutes les corbeilles
if echo $ACT | grep DEL_PART ; then
corbeille_partition
fi

# Vérification du système de fichier au redémarrage
if echo $ACT | grep V_DISK ; then
check
fi
repeat
done
## FIN
exit 0 ;
else zenity --error --title="Accès refusé" --text="Les droits d'administrateur ont été octroyés pour ce script. Veuillez le relancer avec l'accès utilisateur ( sans gksudo,et sans sudo ) !"
exit 100 ;
fi
Il faut ensuite donner les droits d'accès:
chmod a+x maintenance-systeme.sh
Et pour lancer le script:
./maintenance-systeme.sh


Sources:
http://ubuntuforums.org/showthread.php?t=140920
http://doc.ubuntu-fr.org/nettoyer_ubuntu
http://www.nolifeclub.org/linux/gagner-de-lespace-disque-avec-localepurge/
http://smhteam.info/wiki/index.linux.php5?wiki=PurgeSysteme
http://forum.ubuntu-fr.org/viewtopic.php?id=117039

samedi 5 juillet 2008

Faites parler votre Linux !

Voici une façon amusante de faire parler votre Linux ! Le logiciel espeak qui est installé par défaut dans Ubuntu est un programme de verbalisation en plusieurs langues.

Ouvrez une console, puis taper la commande suivante pour tester.

$ espeak -v fr -s 140 "espeak, programme installé"
Ce qui est entre guillemets est la phrase que prononcera espeak. Modifiez cette phrase comme vous voulez.

Explications des options :

-v fr = la langue et l'accent qui sera parlé. Ici ce sera le français. Si vous voulez faire parler espeak en anglais, remplacer fr par en

-s 140 = représente la vitesse de prononciation des mots à la minute. Par défaut, si cette option n'est pas précisé, le débit mots/minute sera de 160.

- w = sera enregistré dans un fichier audio WAV
Exemple :

$ espeak -v fr -s 140 - w testaudio.wav "espeak, programme installé"

Sources:
http://astuces-ubuntu.blogspot.com/2008/03/faites-parler-votre-linux.html
http://doc.ubuntu-fr.org/synthese_vocale

jeudi 3 juillet 2008

Changer votre résolution d’écran facilement avec resapplet

resapplet (resolution switching applet) est une petite application qui permet de changer la résolution de votre écran d’ordinateur en un seul clic.

Pour l’installer rien de plus simple :

sudo aptitude install resapplet

Puis pour lancer ce logiciel rien de plus simple, pour cela vous avez 3 solutions à votre disposition. Depuis un Terminal tapez resapplet ou allez dans le menu Accessoires > Sélecteur de résolution ou encore le plus rapide, faites un ALT+F2 puis tapez resapplet. Bien sûr rien ne vous empêche par la suite de créer un raccourci au démarrage pour votre session.

Une fois lancé, une icône apparaîtra dans la barre de notifications sur laquelle il ne vous restera plus qu’a cliquer pour modifier la résolution à votre guise.

Sources:
http://www.cedynamix.fr/2008/04/09/Changer-votre-resolution-decran-facilement-avec-resapplet/