Page 1 sur 1

[Creation] Firefox-vaccum (résolu)

Publié : dim. 20 mai 2012, 19:59
par Feng
Bonjour,

Ca fait longtemps que j'utilise un script pour optimiser la bdd de firefox pour que la recherche dans la barre d'adresse aille plus vite. J'me suis dis que ce serait cool de le partager.
J'ai donc créé ce PKGBUILD :

Code : Tout sélectionner

# Maintainer: MASSUCHETTI Jonathan <jonathan.massuchetti@gmail.com>
pkgname=firefox-vaccum
pkgver=0.1
pkgrel=1
pkgdesc="Firefox-vaccum allow you to enjoy better performance with your SQlite firefox databases (such as search history in address bar)"
license=('WTFPL')
arch=('any')
sources=('firefox-vaccum.sh' 'firefox-vaccum-hook.sh')
md5sums=('026f9f65726222d6d010e7c6199d3e25' '5e3cb1f5ca8a08f5d17231822a3bc21d')


package() {

	install -Dm744 firefox-vaccum.sh "$pkgdir/usr/bin/firefox-vaccum"
	install -Dm644 firefox-vaccum-hook.sh "$pkgdir/etc/rc.d/functions.d/firefox-vaccum.sh"
}
Malheureusement quand je créé le package avec makepkg --source et que je l'analyse avec namcap, ce dernier me dit que mon package est vide .. et il l'est au PKGBUILD prêt, alors que si je me souviens bien il devrait également contenir les sources (mes 2 scripts)

Re: [Creation] Firefox-vaccum

Publié : dim. 20 mai 2012, 20:13
par benjarobin
Je ne suis pas sûre de comprendre ton sujet.
Ils sont où ces 2 scripts ? Pourquoi tu ne les donnes pas ici ?
Pourquoi mettre firefox-vaccum-hook.sh dans /etc/rc.d/functions.d/, cela me semble bizarre comme emplacement ?!

Re: [Creation] Firefox-vaccum

Publié : dim. 20 mai 2012, 20:17
par Feng
Ces deux scripts sont placés dans le même répertoire que le PKGBUILD.

C'est dans /etc/rc.d/functions.d que se placent les hook système. Je créé un hook pour que l'optimisation de la bdd se fasse à l'arrêt de la machine.

Ci-dessous les deux scripts :

firefox-vaccum.sh

Code : Tout sélectionner

#!/bin/bash

# Cannot vaccum if Firefox is using SQlite databse

proc="$(ps aux | grep firefox | grep -v grep | grep -v vaccum)"

if [ "$proc" != "" ]
then
	echo $proc
	echo "Firefox still running"
	exit 1
fi


dirlist=$(cat /etc/passwd | cut -d':' -f6)

for dir in $dirlist
do

	if [ $dir != "/" ] && [ -e "$dir/.mozilla/firefox/profiles.ini" ]
	then

		for profiledir in $(cat $dir/.mozilla/firefox/profiles.ini | grep Path= | sed -e 's/Path=//')
		do

			for db in $(find $dir/.mozilla/firefox/$profiledir -type f -name '*.sqlite' -print)
			do
				echo "Processing $db ..."
				sqlite3 $db "VACUUM;"
			done

		done

	fi

done
firefox-vaccum-hook.sh

Code : Tout sélectionner

function firefox_vaccum(){

	counter=`cat /etc/firefox-vaccum-seek`

	if [[ $counter = "10" ]]
	then
		stat_busy "Optimizing Firefox database"
		/usr/bin/firefox-vaccum 2>&1 /dev/null
		echo 0 > /etc/firefox-vaccum-seek
		stat_done
	else
		echo `expr $counter + 1` > /etc/firefox-vaccum-seek
	fi
}

add_hook shutdown_postkillall firefox_vaccum

Re: [Creation] Firefox-vaccum

Publié : dim. 20 mai 2012, 20:18
par FoolEcho
Feng a écrit :

Code : Tout sélectionner

sources=('firefox-vaccum.sh' 'firefox-vaccum-hook.sh')
Sinon pour ton problème de construction, c'est source, au singulier.

Re: [Creation] Firefox-vaccum

Publié : dim. 20 mai 2012, 20:22
par Feng
Ah oui forcément .. l'erreur con .. Merci et dsl du peu !

Re: [Creation] Firefox-vaccum

Publié : dim. 20 mai 2012, 20:23
par Feng
Catégorie pour ce paquet ? x11 ?

Re: [Creation] Firefox-vaccum

Publié : dim. 20 mai 2012, 20:33
par FoolEcho
La plupart de ce qui est lié à firefox est dans network... mais ça pourrait tout aussi bien aller dans system... Je ne sais pas. :)

Re: [Creation] Firefox-vaccum

Publié : lun. 21 mai 2012, 22:38
par Feng
Paquet créé dans network histoire de suivre les autres paquets :)

Re: [Creation] Firefox-vaccum

Publié : mar. 22 mai 2012, 09:23
par FoolEcho
:resolu:, stp. :chinois:

Re: [Creation] Firefox-vaccum [RESOLU]

Publié : mar. 22 mai 2012, 09:26
par Feng
Raaaah désolé ! Y'a pas de bouton "Mon problème est résolu" c'est pour ça :) (mais bien sûr que si, tout le monde va croire à mon excuse !)