diff options
author | Brad Laue <brad@gentoo.org> | 2003-12-09 21:29:16 +0000 |
---|---|---|
committer | Brad Laue <brad@gentoo.org> | 2003-12-09 21:29:16 +0000 |
commit | cb932e5a2ea13323e2a6e0fa39a5ec678aa2a799 (patch) | |
tree | c3c1eda92f8594910ea739aa3d16b8b4d10f4530 /net-www | |
parent | Fixed digest mismatch (diff) | |
download | gentoo-2-cb932e5a2ea13323e2a6e0fa39a5ec678aa2a799.tar.gz gentoo-2-cb932e5a2ea13323e2a6e0fa39a5ec678aa2a799.tar.bz2 gentoo-2-cb932e5a2ea13323e2a6e0fa39a5ec678aa2a799.zip |
Make Firebird launch URL's correctly using MozillaThunderbird
Diffstat (limited to 'net-www')
-rw-r--r-- | net-www/mozilla-firebird/ChangeLog | 15 | ||||
-rw-r--r-- | net-www/mozilla-firebird/Manifest | 5 | ||||
-rw-r--r-- | net-www/mozilla-firebird/files/digest-mozilla-firebird-0.7-r1 | 1 | ||||
-rw-r--r-- | net-www/mozilla-firebird/files/xremote-client-cvs.patch | 207 | ||||
-rw-r--r-- | net-www/mozilla-firebird/mozilla-firebird-0.7-r1.ebuild | 270 |
5 files changed, 496 insertions, 2 deletions
diff --git a/net-www/mozilla-firebird/ChangeLog b/net-www/mozilla-firebird/ChangeLog index 6d32303b85d4..ab9ccb0411ab 100644 --- a/net-www/mozilla-firebird/ChangeLog +++ b/net-www/mozilla-firebird/ChangeLog @@ -1,6 +1,19 @@ # ChangeLog for net-www/mozilla-firebird # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firebird/ChangeLog,v 1.28 2003/12/05 20:01:56 agriffis Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firebird/ChangeLog,v 1.29 2003/12/09 21:29:13 brad Exp $ + +*mozilla-firebird-0.7-r1 (09 Dec 2003) + + 09 Dec 2003; Brad Laue <brad@gentoo.org> mozilla-firebird-0.7-r1.ebuild, + files/xremote-client-cvs.patch: + Introduce patches to xremote-client for compatibility with Mozilla + Thunderbird's URL handler - will be included in a future release of Mozilla + Firebird. + + To set Firebird as Thunderbird's URL handler for http://, make MozillaFirebird + the default browser under GNOME, or add: + + user_pref("network.protocol-handler.app.http", "/usr/bin/MozillaFirebird"); 05 Dec 2003; <agriffis@gentoo.org> mozilla-firebird-0.7.ebuild: Stable on ia64 diff --git a/net-www/mozilla-firebird/Manifest b/net-www/mozilla-firebird/Manifest index c8e643c68b08..77439b97c1cd 100644 --- a/net-www/mozilla-firebird/Manifest +++ b/net-www/mozilla-firebird/Manifest @@ -1,6 +1,7 @@ MD5 ce23390351fe8020387d93ee29e09a3d metadata.xml 160 -MD5 08338c09153590689596e4a75fe79d51 ChangeLog 4588 +MD5 4a8bba051f97ac44b8751f37bd6f612d ChangeLog 5101 MD5 b62d57c263673ae12a579e26940f8bf5 mozilla-firebird-0.7.ebuild 7596 +MD5 95feeaf9399fbad68254a8bc87edf1f6 mozilla-firebird-0.7-r1.ebuild 7741 MD5 4c27694d99a8b1e6cf6bead88c3ad87d mozilla-firebird-0.6-r7.ebuild 6755 MD5 0f894b8cae6442e50840c8c996a0909a mozilla-firebird-0.6.1.ebuild 6878 MD5 6e4352482ed149b3b9aca78d83de1124 files/MozillaFirebird 753 @@ -9,3 +10,5 @@ MD5 78b9eef353e1aff29cef379e4de6b9fa files/digest-mozilla-firebird-0.6-r7 81 MD5 49802181a2284102bb2ed6daab129bb5 files/digest-mozilla-firebird-0.6.1 83 MD5 d6389059d144d92d25b21b5cb3727cb0 files/digest-mozilla-firebird-0.7 80 MD5 f0e9adeb0454377ce019e8969e644efb files/mozilla-firebird-amd64.patch 35052 +MD5 091c7da0a8cd5585af96a36d65d6c2c7 files/xremote-client-cvs.patch 6759 +MD5 74eff77377eb3ce130c89060693348b4 files/digest-mozilla-firebird-0.7-r1 78 diff --git a/net-www/mozilla-firebird/files/digest-mozilla-firebird-0.7-r1 b/net-www/mozilla-firebird/files/digest-mozilla-firebird-0.7-r1 new file mode 100644 index 000000000000..a05a93ab2dbc --- /dev/null +++ b/net-www/mozilla-firebird/files/digest-mozilla-firebird-0.7-r1 @@ -0,0 +1 @@ +MD5 ff640503e8206ab800bffef92d39f098 MozillaFirebird-source-0.7.tar.gz 847709 diff --git a/net-www/mozilla-firebird/files/xremote-client-cvs.patch b/net-www/mozilla-firebird/files/xremote-client-cvs.patch new file mode 100644 index 000000000000..7924e6c109eb --- /dev/null +++ b/net-www/mozilla-firebird/files/xremote-client-cvs.patch @@ -0,0 +1,207 @@ +diff -ur mozilla/widget/src/xremoteclient/CVS/Entries thunderbird/mozilla/widget/src/xremoteclient/CVS/Entries +--- mozilla/widget/src/xremoteclient/CVS/Entries 2003-10-03 12:00:21.000000000 -0400 ++++ thunderbird/mozilla/widget/src/xremoteclient/CVS/Entries 2003-12-04 18:37:03.000000000 -0500 +@@ -1,8 +1,8 @@ +-/.cvsignore/1.2/Fri Mar 1 00:22:07 2002//TFIREBIRD_0_7_RELEASE +-/Makefile.in/1.14/Fri Apr 18 20:14:14 2003//TFIREBIRD_0_7_RELEASE +-/XRemoteClient.cpp/1.12/Mon Sep 8 00:31:14 2003//TFIREBIRD_0_7_RELEASE +-/XRemoteClient.h/1.5/Fri Feb 14 13:17:50 2003//TFIREBIRD_0_7_RELEASE +-/XRemoteClientFactory.cpp/1.3/Mon Sep 8 00:31:14 2003//TFIREBIRD_0_7_RELEASE +-/mozilla-xremote-client.cpp/1.1/Fri Dec 28 22:17:20 2001//TFIREBIRD_0_7_RELEASE +-/nsXRemoteClientCID.h/1.1/Fri Oct 20 05:10:43 2000//TFIREBIRD_0_7_RELEASE ++/.cvsignore/1.2/Fri Mar 1 00:22:07 2002//TTHUNDERBIRD_0_4_BRANCH ++/Makefile.in/1.14/Fri Apr 18 20:14:14 2003//TTHUNDERBIRD_0_4_BRANCH ++/XRemoteClient.cpp/1.13/Fri Nov 21 00:09:45 2003//TTHUNDERBIRD_0_4_BRANCH ++/XRemoteClient.h/1.6/Fri Nov 21 00:09:45 2003//TTHUNDERBIRD_0_4_BRANCH ++/XRemoteClientFactory.cpp/1.3/Mon Sep 8 00:31:14 2003//TTHUNDERBIRD_0_4_BRANCH ++/mozilla-xremote-client.cpp/1.1/Fri Dec 28 22:17:20 2001//TTHUNDERBIRD_0_4_BRANCH ++/nsXRemoteClientCID.h/1.1/Fri Oct 20 05:10:43 2000//TTHUNDERBIRD_0_4_BRANCH + D +diff -ur mozilla/widget/src/xremoteclient/CVS/Tag thunderbird/mozilla/widget/src/xremoteclient/CVS/Tag +--- mozilla/widget/src/xremoteclient/CVS/Tag 2003-10-03 14:56:14.000000000 -0400 ++++ thunderbird/mozilla/widget/src/xremoteclient/CVS/Tag 2003-12-05 02:30:16.000000000 -0500 +@@ -1 +1 @@ +-NFIREBIRD_0_7_RELEASE ++TTHUNDERBIRD_0_4_BRANCH +diff -ur mozilla/widget/src/xremoteclient/XRemoteClient.cpp thunderbird/mozilla/widget/src/xremoteclient/XRemoteClient.cpp +--- mozilla/widget/src/xremoteclient/XRemoteClient.cpp 2003-09-07 20:31:14.000000000 -0400 ++++ thunderbird/mozilla/widget/src/xremoteclient/XRemoteClient.cpp 2003-11-20 19:09:45.000000000 -0500 +@@ -1,3 +1,4 @@ ++/* vim:set ts=8 sw=2 et cindent: */ + /* + * The contents of this file are subject to the Mozilla Public + * License Version 1.1 (the "License"); you may not use this file +@@ -99,54 +100,6 @@ + } + + NS_IMETHODIMP +-XRemoteClient::SendCommand (const char *aCommand, PRBool *aWindowFound) +-{ +- PR_LOG(sRemoteLm, PR_LOG_DEBUG, ("XRemoteClient::SendCommand")); +- +- *aWindowFound = PR_TRUE; +- +- // find the remote window +- Window window = FindWindow(); +- +- // no window? let the caller know. +- if (!window) { +- *aWindowFound = PR_FALSE; +- return NS_OK; +- } +- +- // make sure we get the right events on that window +- XSelectInput(mDisplay, window, +- (PropertyChangeMask|StructureNotifyMask)); +- +- nsresult rv; +- PRBool destroyed = PR_FALSE; +- +- // get the lock on the window +- rv = GetLock(window, &destroyed); +- +- if (NS_FAILED(rv)) +- return NS_ERROR_FAILURE; +- +- // send our command +- rv = DoSendCommand(window, aCommand, &destroyed); +- +- // if the window was destroyed, don't bother trying to free the +- // lock. +- if (destroyed) +- return NS_ERROR_FAILURE; +- +- // doesn't really matter what this returns +- FreeLock(window); +- +- // if we failed above we had to free the lock - return the error +- // now. +- if (NS_FAILED(rv)) +- return NS_ERROR_FAILURE; +- +- return NS_OK; +-} +- +-NS_IMETHODIMP + XRemoteClient::Shutdown (void) + { + PR_LOG(sRemoteLm, PR_LOG_DEBUG, ("XRemoteClient::Shutdown")); +@@ -164,32 +117,36 @@ + return NS_OK; + } + +-Window +-XRemoteClient::FindWindow(void) ++NS_IMETHODIMP ++XRemoteClient::SendCommand (const char *aCommand, PRBool *aWindowFound) + { ++ PR_LOG(sRemoteLm, PR_LOG_DEBUG, ("XRemoteClient::SendCommand")); ++ + Window root = RootWindowOfScreen(DefaultScreenOfDisplay(mDisplay)); + Window root2, parent, *kids; + unsigned int nkids; +- Window result = 0; + int i; ++ ++ *aWindowFound = PR_FALSE; + + if (!XQueryTree(mDisplay, root, &root2, &parent, &kids, &nkids)) { + PR_LOG(sRemoteLm, PR_LOG_DEBUG, +- ("XQueryTree failed in XRemoteClient::FindWindow")); +- return 0; ++ ("XQueryTree failed in XRemoteClient::SendCommand")); ++ return NS_OK; + } + + if (!(kids && nkids)) { + PR_LOG(sRemoteLm, PR_LOG_DEBUG, ("root window has no children")); +- return 0; ++ return NS_OK; + } + ++ nsresult rv = NS_OK; + for (i=nkids-1; i >= 0; i--) { + Atom type; + int format; + unsigned long nitems, bytesafter; + unsigned char *data_return = 0; +- Window w; ++ Window w, result = 0; + w = kids[i]; + // find the inner window with WM_STATE on it + w = CheckWindow(w); +@@ -224,11 +181,8 @@ + + // if the IDs are equal then this is the window we want. if + // they aren't fall through to the next loop iteration. +- if (!strcmp(logname, (const char *)data_return)) { +- XFree(data_return); ++ if (!strcmp(logname, (const char *)data_return)) + result = w; +- break; +- } + + XFree(data_return); + } +@@ -238,14 +192,40 @@ + // it. + else { + result = w; +- break; ++ } ++ ++ if (result) { ++ // ok, let the caller know that we at least found a window. ++ *aWindowFound = PR_TRUE; ++ ++ // make sure we get the right events on that window ++ XSelectInput(mDisplay, result, ++ (PropertyChangeMask|StructureNotifyMask)); ++ ++ PRBool destroyed = PR_FALSE; ++ ++ // get the lock on the window ++ rv = GetLock(result, &destroyed); ++ ++ if (NS_SUCCEEDED(rv)) { ++ // send our command ++ rv = DoSendCommand(result, aCommand, &destroyed); ++ ++ // if the window was destroyed, don't bother trying to free the ++ // lock. ++ if (!destroyed) ++ FreeLock(result); // doesn't really matter what this returns ++ ++ // if accepted then we're done... ++ if (NS_SUCCEEDED(rv)) ++ break; ++ } + } + } + } + +- PR_LOG(sRemoteLm, PR_LOG_DEBUG, ("FindWindow returning 0x%lx\n", result)); +- +- return result; ++ PR_LOG(sRemoteLm, PR_LOG_DEBUG, ("SendCommand returning 0x%x\n", rv)); ++ return rv; + } + + Window +diff -ur mozilla/widget/src/xremoteclient/XRemoteClient.h thunderbird/mozilla/widget/src/xremoteclient/XRemoteClient.h +--- mozilla/widget/src/xremoteclient/XRemoteClient.h 2003-02-14 08:17:50.000000000 -0500 ++++ thunderbird/mozilla/widget/src/xremoteclient/XRemoteClient.h 2003-11-20 19:09:45.000000000 -0500 +@@ -42,7 +42,6 @@ + + private: + +- Window FindWindow (void); + Window CheckWindow (Window aWindow); + Window CheckChildren (Window aWindow); + nsresult GetLock (Window aWindow, PRBool *aDestroyed); +@@ -63,5 +62,4 @@ + char *mLockData; + + PRBool mInitialized; +- + }; diff --git a/net-www/mozilla-firebird/mozilla-firebird-0.7-r1.ebuild b/net-www/mozilla-firebird/mozilla-firebird-0.7-r1.ebuild new file mode 100644 index 000000000000..bc78ab03ab47 --- /dev/null +++ b/net-www/mozilla-firebird/mozilla-firebird-0.7-r1.ebuild @@ -0,0 +1,270 @@ +# Copyright 1999-2003 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firebird/mozilla-firebird-0.7-r1.ebuild,v 1.1 2003/12/09 21:29:13 brad Exp $ + +inherit makeedit flag-o-matic gcc nsplugins eutils + +S=${WORKDIR}/mozilla + +DESCRIPTION="The Mozilla Firebird Web Browser" +HOMEPAGE="http://www.mozilla.org/projects/firebird/" +SRC_URI="http://ftp.mozilla.org/pub/firebird/releases/${PV}/MozillaFirebird-source-${PV}.tar.gz" + +KEYWORDS="~x86 ~ppc ~sparc ~alpha ~amd64 ~ia64" +SLOT="0" +LICENSE="MPL-1.1 | NPL-1.1" +IUSE="java gtk2 ipv6 gnome moznoxft" + +RDEPEND="virtual/x11 + >=dev-libs/libIDL-0.8.0 + >=gnome-base/ORBit-0.5.10-r1 + virtual/xft + >=sys-libs/zlib-1.1.4 + >=media-libs/jpeg-6b + >=media-libs/libmng-1.0.0 + >=media-libs/libpng-1.2.1 + >=sys-apps/portage-2.0.36 + dev-libs/expat + app-arch/zip + app-arch/unzip + ( gtk2? >=x11-libs/gtk+-2.1.1 : + =x11-libs/gtk+-1.2* ) + java? ( virtual/jre ) + !net-www/mozilla-firebird-bin + !net-www/mozilla-firebird-cvs" + +DEPEND="${RDEPEND} + virtual/glibc + dev-lang/perl + java? ( >=dev-java/java-config-0.2.0 )" + +# needed by src_compile() and src_install() +export MOZ_PHOENIX=1 +export MOZ_CALENDAR=0 +export MOZ_ENABLE_XFT=1 + +src_unpack() { + unpack MozillaFirebird-source-${PV}.tar.gz + + # alpha stubs patch from lfs project. + # <taviso@gentoo.org> (26 Jun 2003) + use alpha && epatch ${FILESDIR}/mozilla-1.3-alpha-stubs.patch + use amd64 && epatch ${FILESDIR}/mozilla-firebird-amd64.patch + + # Make Firebird cooperate with Thunderbird's URL handling + # <brad@gentoo.org> (09 Dec 2003) + epatch ${FILESDIR}/xremote-client-cvs.patch +} + +src_compile() { + local enable_optimize='' + local myconf="--disable-composer \ + --with-x \ + --with-system-jpeg \ + --with-system-zlib \ + --with-system-png \ + --with-system-mng \ + --disable-mailnews \ + --disable-calendar \ + --disable-pedantic \ + --disable-svg \ + --enable-mathml \ + --without-system-nspr \ + --enable-nspr-autoconf \ + --enable-xsl \ + --enable-crypto \ + --enable-xinerama=no \ + --with-java-supplement \ + --with-pthreads \ + --with-default-mozilla-five-home=/usr/lib/MozillaFirebird \ + --with-user-appdir=.phoenix \ + --disable-jsd \ + --disable-accessibility \ + --disable-tests \ + --disable-debug \ + --disable-dtd-debug \ + --disable-logging \ + --enable-reorder \ + --enable-strip \ + --enable-strip-libs \ + --enable-cpp-rtti \ + --enable-xterm-updates \ + --disable-ldap \ + --disable-toolkit-qt \ + --disable-toolkit-xlib \ + --enable-extensions=default,-inspector,-irc,-venkman,-content-packs,-help" + + if [ -n "`use gtk2`" ] ; then + myconf="${myconf} --enable-toolkit-gtk2 \ + --enable-default-toolkit=gtk2 \ + --disable-toolkit-gtk" + else + myconf="${myconf} --enable-toolkit-gtk \ + --enable-default-toolkit=gtk \ + --disable-toolkit-gtk2" + fi + + if [ -z "`use moznoxft`" ] + then + if [ -n "`use gtk2`" ] + then + local pango_version="" + + # We need Xft2.0 localy installed + if (test -x /usr/bin/pkg-config) && (pkg-config xft) + then + pango_version="`pkg-config --modversion pango | cut -d. -f1,2`" + pango_version="`echo ${pango_version} | sed -e 's:\.::g'`" + + # We also need pango-1.1, else Mozilla links to both + # Xft1.1 *and* Xft2.0, and segfault... + if [ "${pango_version}" -gt "10" ] + then + einfo "Building with Xft2.0 (Gtk+-2.0) support!" + myconf="${myconf} --enable-xft --disable-freetype2" + touch ${WORKDIR}/.xft + else + ewarn "Building without Xft2.0 support!" + myconf="${myconf} --disable-xft `use_enable truetype freetype2`" + fi + else + ewarn "Building without Xft2.0 support!" + myconf="${myconf} --disable-xft `use_enable truetype freetype2`" + fi + else + einfo "Building with Xft2.0 (Gtk+-1.0) support!" + myconf="${myconf} --enable-xft --disable-freetype2" + touch ${WORKDIR}/.xft + fi + else + myconf="${myconf} --disable-xft `use_enable truetype freetype2`" + fi + + if [ -n "`use ipv6`" ] ; then + myconf="${myconf} --enable-ipv6" + fi + + # Per-architecture flags + case "${ARCH}" in + alpha|amd64|ia64) + # 64-bit needs -fPIC + append-flags -fPIC + ;; + sparc) + # Added to get MozillaFirebird to compile on sparc + replace-sparc64-flags + ;; + ppc) + # Fix to avoid gcc-3.3.x miscompilation issues. + if [ "$(gcc-major-version).$(gcc-minor-version)" = "3.3" ]; then + append-flags -fno-strict-aliasing + fi + ;; + esac + + # 32-bit vs. 64-bit optimization + case "${ARCH}" in + alpha|amd64|ia64) + # Allow -O0 or -O1: Anything more than this causes + # segfaults on startup on 64-bit (bug 33767) + enable_optimize=$(echo "$CFLAGS" | sed 's/.*\(-O[01]\?\).*/\1/p') + enable_optimize=${enable_optimize:--O1} + filter-flags -O -O? + ;; + *) + # -O2 and below allowed on 32-bit + enable_optimize=$(echo "$CFLAGS" | sed 's/.*\(-O[012]\?\).*/\1/p') + enable_optimize=${enable_optimize:--O2} + filter-flags -O -O? + ;; + esac + + # Crashes on start when compiled with -fomit-frame-pointer + filter-flags -fomit-frame-pointer -mpowerpc-gfxopt + filter-flags -ffast-math + append-flags -s -fforce-addr + + if [ "$(gcc-major-version)" -eq "3" ]; then + # Currently gcc-3.2 or older do not work well if we specify "-march" + # and other optimizations for pentium4. + if [ "$(gcc-minor-version)" -lt "3" ]; then + replace-flags -march=pentium4 -march=pentium3 + filter-flags -msse2 + fi + + # Enable us to use flash, etc plugins compiled with gcc-2.95.3 + if [ "${ARCH}" = "x86" ]; then + myconf="${myconf} --enable-old-abi-compat-wrappers" + fi + fi + + econf --enable-optimize="${enable_optimize}" ${myconf} || die + + edit_makefiles + emake MOZ_PHOENIX=1 || die +} + +src_install() { + # Plugin path creation + PLUGIN_DIR="/usr/lib/nsbrowser/plugins" + dodir ${PLUGIN_DIR} + + dodir /usr/lib + dodir /usr/lib/MozillaFirebird + cp -RL --no-preserve=links ${S}/dist/bin/* ${D}/usr/lib/MozillaFirebird + + #fix permissions + chown -R root:root ${D}/usr/lib/MozillaFirebird + + # Plugin path setup (rescuing the existent plugins) + src_mv_plugins /usr/lib/MozillaFirebird/plugins + + dobin ${FILESDIR}/MozillaFirebird + + # Fix icons to look the same everywhere + insinto /usr/lib/MozillaFirebird/icons + doins ${S}/build/package/rpm/SOURCES/mozicon16.xpm + doins ${S}/build/package/rpm/SOURCES/mozicon50.xpm + + # Install icon and .desktop for menu entry + if [ "`use gnome`" ] + then + insinto /usr/share/pixmaps + doins ${S}/build/package/rpm/SOURCES/mozilla-icon.png + + # Fix comment of menu entry + cd ${S}/build/package/rpm/SOURCES + cp mozilla.desktop mozillafirebird.desktop + perl -pi -e 's:Name=Mozilla:Name=Mozilla Firebird:' mozillafirebird.desktop + perl -pi -e 's:Comment=Mozilla:Comment=Mozilla Firebird Web Browser:' mozillafirebird.desktop + perl -pi -e 's:Exec=/usr/bin/mozilla:Exec=/usr/bin/MozillaFirebird:' mozillafirebird.desktop + cd ${S} + insinto /usr/share/gnome/apps/Internet + doins ${S}/build/package/rpm/SOURCES/mozillafirebird.desktop + fi +} + +pkg_preinst() { + # Remove the old plugins dir + pkg_mv_plugins /usr/lib/MozillaFirebird/plugins +} + +pkg_postinst() { + + export MOZILLA_FIVE_HOME="${ROOT}/usr/lib/MozillaFirebird" + + # Needed to update the run time bindings for REGXPCOM + # (do not remove next line!) + env-update + # Register Components and Chrome + einfo "Registering Components and Chrome..." + LD_LIBRARY_PATH=/usr/lib/MozillaFirebird ${MOZILLA_FIVE_HOME}/regxpcom + LD_LIBRARY_PATH=/usr/lib/MozillaFirebird ${MOZILLA_FIVE_HOME}/regchrome + # Fix permissions of component registry + chmod 0644 ${MOZILLA_FIVE_HOME}/components/compreg.dat + # Fix directory permissions + find ${MOZILLA_FIVE_HOME}/ -type d -perm 0700 -exec chmod 0755 {} \; || : + # Fix permissions on chrome files + find ${MOZILLA_FIVE_HOME}/chrome/ -name '*.rdf' -exec chmod 0644 {} \; || : + +} |