summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJory Pratt <anarchy@gentoo.org>2010-02-18 00:09:52 +0000
committerJory Pratt <anarchy@gentoo.org>2010-02-18 00:09:52 +0000
commitf6c10039320883c442f162f96745a5c2a35ebb56 (patch)
tree0245cb18c4212a9ef1c95630797137e4a0d5c66d /www-client
parent[x11-libs/qt-phonon] added exceptions USE flag description (diff)
downloadhistorical-f6c10039320883c442f162f96745a5c2a35ebb56.tar.gz
historical-f6c10039320883c442f162f96745a5c2a35ebb56.tar.bz2
historical-f6c10039320883c442f162f96745a5c2a35ebb56.zip
Readd seamonkey-rebuild-databases.pl bug #302694
Package-Manager: portage-2.1.7.17/cvs/Linux x86_64
Diffstat (limited to 'www-client')
-rw-r--r--www-client/seamonkey/ChangeLog5
-rw-r--r--www-client/seamonkey/Manifest3
-rw-r--r--www-client/seamonkey/files/seamonkey-rebuild-databases.pl99
3 files changed, 105 insertions, 2 deletions
diff --git a/www-client/seamonkey/ChangeLog b/www-client/seamonkey/ChangeLog
index 9070f4185969..0c9c5c6f1907 100644
--- a/www-client/seamonkey/ChangeLog
+++ b/www-client/seamonkey/ChangeLog
@@ -1,6 +1,9 @@
# ChangeLog for www-client/seamonkey
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/ChangeLog,v 1.210 2010/01/15 01:18:57 anarchy Exp $
+# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/ChangeLog,v 1.211 2010/02/18 00:09:51 anarchy Exp $
+
+ 18 Feb 2010; <anarchy@gentoo.org> +files/seamonkey-rebuild-databases.pl:
+ Readd seamonkey-rebuild-databases.pl bug #302694
*seamonkey-2.0.2 (15 Jan 2010)
diff --git a/www-client/seamonkey/Manifest b/www-client/seamonkey/Manifest
index 9b38a8218449..cf8b17464c21 100644
--- a/www-client/seamonkey/Manifest
+++ b/www-client/seamonkey/Manifest
@@ -6,6 +6,7 @@ AUX google.src 706 RMD160 083b439d5aeb27cdf35345b043e7cf2cbf92d369 SHA1 462c353b
AUX icon/seamonkey.desktop 154 RMD160 7e1712122cee7510bf058024338e0b75ea7a5e9a SHA1 6f5e33c702fbaa86974e139e398399927462e31e SHA256 78ebd5d753065f6ecf148a010cb59a4756a8c94447cfac6f4db502864bac5d8c
AUX icon/seamonkey.png 4172 RMD160 d296c4d4e0920e4476f4c6c607946434202ad521 SHA1 f76213195e2dc002ff2e411ed0247d2624ce7b09 SHA256 7ffc1911a62b526702f3c991365dd8f18b6427c7e173456a101db4fb4c43ae59
AUX seamonkey-1.1.17-fix-fno-strict-aliasing.patch 793 RMD160 07705e8c0bb41eb7af8e4339913e6f0c2f84eb8b SHA1 0da75e53380a3fe08de8cb617ef761ddd216078d SHA256 db3038447f22c9798d39b556714b197b95e150caca5e42c57c5b13f9c181b466
+AUX seamonkey-rebuild-databases.pl 2344 RMD160 27ae162b4028d80faeb802e575b41590f6ab314e SHA1 678cec60179997d1957a0c8ecb50169985f0b4e2 SHA256 fde49923b949fc300040490e404a9f65b5777e8e7440fd8f0907d17b041fb2af
DIST enigmail-0.96.0.tar.gz 1231329 RMD160 62fc1f4d8c5a12ca0b2e49f2aa7ddd28361e736f SHA1 ad9a28ab632a5480bd138a0f60e43a5c07a56646 SHA256 80ad781236f43d9a291205eefd92cf49e75a5836826198f46d3cb90b7eae09d1
DIST enigmail-1.0.0.tar.gz 1221348 RMD160 95ce3576033362de7ff3c82a15415e1275484c18 SHA1 22feb6e6cd592c4c67fd0d0b73ca6a340c3a09f2 SHA256 02469a399d1a06786151ef8a537ad21db37bbbeb5b3750c5edae6965f4b6339d
DIST seamonkey-1.1.18-patches-0.1.tar.bz2 21939 RMD160 8c4b268938d02eef8939e155cc4ee45d7d0db476 SHA1 cda3ad61328babe634711dae99d61d068f5803fc SHA256 9575879c9feff93cf2d4a631a9cc986e43c17acf75226782421fa3b6b9fe037b
@@ -56,5 +57,5 @@ DIST seamonkey-2.0.2.source.tar.bz2 60965381 RMD160 61868933334a76ac2686fe3b3350
EBUILD seamonkey-1.1.18.ebuild 8466 RMD160 bb9a6edac01774c529f935debb12fe3035924448 SHA1 27d523923b685467a79ed5a9c9de68169011288c SHA256 ba5a5d1b72c4e157f8667e69457843b3ad6c02841c8cf75c67edb0752ef25938
EBUILD seamonkey-2.0.1.ebuild 8732 RMD160 8b0481fa10642abe7729a812120720e619fbff99 SHA1 358b53bdb0d8a0611b45c8e85d85d3d98f6260cc SHA256 983c46a5dc02e039fa1bc157845ad4ea7f566c715b976055da2f995cdeb35804
EBUILD seamonkey-2.0.2.ebuild 8588 RMD160 e600524cdb5c7bf2f3716280ccf5c7b1b89da155 SHA1 44c71d62afd59e37557437dd50e148b90da03da5 SHA256 99e7c1d09201ac8e9975190af73fad3521edfdf81961bde9b7575ed279ade370
-MISC ChangeLog 26311 RMD160 04ab7babcc959ea555ca8749dcb4e5d47f0e1b1a SHA1 0e633bf822d8b43bfde1fca1a02a34096b0596d0 SHA256 36d594563c03e74c235094b8849f3fa3b8102a427944ded56862ffe51deb2c2d
+MISC ChangeLog 26438 RMD160 f5b19958ba0f8585be074d359b263adbc6a779de SHA1 1b63f1dfd6a9e8def92f1092d1c78d4d47baccfa SHA256 2822409e4de05315531665fdcf07da676fae8c9a468d7dfa356368cb37ab2d77
MISC metadata.xml 829 RMD160 c182a2e8ace91c991d48bfae65e6c0d0bd974c56 SHA1 4ba2c78927904fd63cbdf642ae398622e8473ec0 SHA256 e1a703d901609365077efc040066b327a6a7641c0a0cc8502fe4557374f550e9
diff --git a/www-client/seamonkey/files/seamonkey-rebuild-databases.pl b/www-client/seamonkey/files/seamonkey-rebuild-databases.pl
new file mode 100644
index 000000000000..2556041dae11
--- /dev/null
+++ b/www-client/seamonkey/files/seamonkey-rebuild-databases.pl
@@ -0,0 +1,99 @@
+#!/usr/bin/perl
+
+use File::Path;
+use File::Copy;
+use File::Glob ":glob";
+use POSIX ":sys_wait_h";
+
+$timeout = 60;
+
+%{ENV}->{"MOZILLA_FIVE_HOME"}="/usr/lib/seamonkey";
+%{ENV}->{"LD_LIBRARY_PATH"}="/usr/lib/seamonkey";
+
+umask 022;
+
+if ( -f "/usr/lib/seamonkey/regxpcom" )
+{
+ # remove all of the old files
+ rmtree("/usr/lib/seamonkey/chrome/overlayinfo");
+ unlink </usr/lib/seamonkey/chrome/*.rdf>;
+ unlink("/usr/lib/seamonkey/component.reg");
+ unlink("/usr/lib/seamonkey/components/compreg.dat");
+ unlink("/usr/lib/seamonkey/components/xpti.dat");
+
+ # create a new clean path
+ mkpath("/usr/lib/seamonkey/chrome/overlayinfo");
+
+ # rebuild the installed-chrome.txt file from the installed
+ # languages
+ if ( -f "/usr/lib/seamonkey/chrome/lang/installed-chrome.txt" ) {
+ rebuild_lang_files();
+ }
+
+ # run regxpcom
+ $pid = fork();
+
+ # I am the child.
+ if ($pid == 0) {
+ exec("/usr/lib/seamonkey/regxpcom > /dev/null 2> /dev/null");
+ }
+ # I am the parent.
+ else {
+ my $timepassed = 0;
+ do {
+ $kid = waitpid($pid, &WNOHANG);
+ sleep(1);
+ $timepassed++;
+ } until $kid == -1 || $timepassed > $timeout;
+
+ # should we kill?
+ if ($timepassed > $timeout) {
+ kill (9, $pid);
+ # kill -9 can leave threads hanging around
+ system("/usr/bin/killall -9 regxpcom");
+ }
+ }
+
+ # and run regchrome for good measure
+ $pid = fork();
+
+ # I am the child.
+ if ($pid == 0) {
+ exec("/usr/lib/seamonkey/regchrome > /dev/null 2> /dev/null");
+ }
+ # I am the parent.
+ else {
+ my $timepassed = 0;
+ do {
+ $kid = waitpid($pid, &WNOHANG);
+ sleep(1);
+ $timepassed++;
+ } until $kid == -1 || $timepassed > $timeout;
+
+ # should we kill?
+ if ($timepassed > $timeout) {
+ kill (9, $pid);
+ # kill -9 can leave threads hanging around
+ system("/usr/bin/killall -9 regchrome");
+ }
+ }
+
+}
+
+
+sub rebuild_lang_files {
+ unlink("/usr/lib/seamonkey/chrome/installed-chrome.txt");
+
+ open (OUTPUT, "+>", "/usr/lib/seamonkey/chrome/installed-chrome.txt")||
+ die("Failed to open installed-chrome.txt: $!\n");
+
+ copy("/usr/lib/seamonkey/chrome/lang/installed-chrome.txt",
+ \*OUTPUT);
+
+ foreach (bsd_glob("/usr/lib/seamonkey/chrome/lang/lang-*.txt")) {
+ copy($_, \*OUTPUT);
+ }
+
+ copy("/usr/lib/seamonkey/chrome/lang/default.txt",
+ \*OUTPUT);
+}