commit:     d4e29685681dfb3bfb0a1630d8604c46d9e0e3c3
Author:     Richard Yao <ryao <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 15 18:54:03 2015 +0000
Commit:     Richard Yao <ryao <AT> gentoo <DOT> org>
CommitDate: Sun Nov 15 18:54:03 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4e29685

www-client/dooble: new package, "a secure web browser"

This is a rewrite of the www-client/dooble package from Sabayon's
for-gentoo repository:

https://github.com/Sabayon/for-gentoo/tree/master/www-client/dooble

I have not audited the package to verify the security claims, but a
cursory peek at how it restricts possible exploit vectors has been
promising. I would like this to be scrutinized by others, but I feel
good enough about this that I am committing it to ~amd64 for our users
to evaluate.

At the moment, I am only committing the Qt4 version, which is the 1.x
series. The 2.x series is the Qt5 version. This probably should be
changed to be slotted when that is committed.

Package-Manager: portage-2.2.20.1

 www-client/dooble/Manifest                         |  1 +
 www-client/dooble/dooble-1.55.ebuild               | 66 ++++++++++++++++++++++
 .../dooble/files/00-dooble-1.55-path-fix.patch     | 45 +++++++++++++++
 www-client/dooble/metadata.xml                     | 11 ++++
 4 files changed, 123 insertions(+)

diff --git a/www-client/dooble/Manifest b/www-client/dooble/Manifest
new file mode 100644
index 0000000..56022b3
--- /dev/null
+++ b/www-client/dooble/Manifest
@@ -0,0 +1 @@
+DIST dooble-1.55.tar.gz 11663614 SHA256 
024003e7c397a925d48e41cba10a2a35b89dd1745120caf4fd2010c1e254c5e5 SHA512 
413727f74ab7fba89f7b617a774a0dceaa8a03b826f12950e31ca3fedda7e607539759b946eacccd57087429e6a37acd967a2c376b0b195b560c8c9beaf4e3d6
 WHIRLPOOL 
ebe0b69a3dde0c0977c6295c6c67811195ca6d4e66dd95d09b51eae7da32170f737e62275e17020213c640e10a368f3792c8d34b495f15ee004e7a644a914700

diff --git a/www-client/dooble/dooble-1.55.ebuild 
b/www-client/dooble/dooble-1.55.ebuild
new file mode 100644
index 0000000..554b0c0
--- /dev/null
+++ b/www-client/dooble/dooble-1.55.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils qt4-r2 fdo-mime
+DESCRIPTION="A Secure and Open Source Web Browser"
+HOMEPAGE="http://dooble.sourceforge.net/";
+
+SRC_URI="mirror://sourceforge/${PN}/Version%20${PV}/Dooble_Src.d.tar.gz ->
+${P}.tar.gz"
+
+# icon sets are GPL-3 LGPL-2.1 while the code is BSD
+LICENSE="BSD GPL-3 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+DEPEND="dev-db/sqlite:3
+       dev-libs/libgcrypt:0/20
+       dev-libs/libgpg-error
+       dev-qt/qtcore:4
+       dev-qt/qtgui:4
+       dev-qt/qtsql:4
+       dev-qt/qtwebkit:4
+"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/dooble.d/Version 1.x/"
+
+src_prepare() {
+       # Adjust paths from FreeBSD locations to Gentoo locations
+       # XXX: Fix the build system to be more flexible and upstream fix
+       epatch "${FILESDIR}/00-dooble-${PV}-path-fix.patch"
+       sed -i -e "s:\"Icons:\"${EROOT}usr/share/dooble/Icons:" \
+               ./Source/dsettings.cc
+       sed -i -e '/export/d' -e 
"s:/usr/local/dooble/Dooble:${EROOT}usr/bin/Dooble:g" \
+               -e "s:cd /usr/local/dooble:cd /usr/share/dooble:" \
+               -e "s:exec ./Dooble:exec ${EROOT}usr/bin/Dooble:" ./dooble.sh
+       sed -i -e "s:/usr/local:${EROOT}/usr/share:" -e 's:/text/xml:text/xml:' 
\
+               ./dooble.desktop
+}
+
+src_configure() {
+       eqmake4 dooble.pro
+}
+
+src_install() {
+       dohtml ../Documentation/RELEASE-NOTES.html
+       dodoc Documentation/{THEMES,TO-DO}
+       dosym ../share/dooble/dooble.sh /usr/bin/dooble
+       dosym ../../lib/nsbrowser/plugins /usr/share/dooble/Plugins
+       dolib.so libSpotOn/libspoton.so
+       emake INSTALL_ROOT="${ED}" install
+
+       # XXX: The build system installs the build path into INSTALL_ROOT.
+       # It should be fixed not to do this.
+       rm -r "${ED}/var" || die "Failed to remove build path from ${ED}"
+}
+
+pkg_postinst() {
+       fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+       fdo-mime_desktop_database_update
+}

diff --git a/www-client/dooble/files/00-dooble-1.55-path-fix.patch 
b/www-client/dooble/files/00-dooble-1.55-path-fix.patch
new file mode 100644
index 0000000..8edc8c5
--- /dev/null
+++ b/www-client/dooble/files/00-dooble-1.55-path-fix.patch
@@ -0,0 +1,45 @@
+diff --git a/dooble.pro b/dooble.pro
+index 8df489e..d448f6e 100644
+--- a/dooble.pro
++++ b/dooble.pro
+@@ -240,33 +240,32 @@ TRANSLATIONS    = Translations/dooble_en.ts \
+ PROJECTNAME   = Dooble
+ TARGET                = Dooble
+ 
+-dooble.path           = /usr/local/dooble
++dooble.path           = /usr/bin
+ dooble.files          = Dooble
+-dooble_sh.path                = /usr/local/dooble
++dooble_sh.path                = /usr/share/dooble
+ dooble_sh.files               = dooble.sh
+ desktop.path            = /usr/share/applications
+ desktop.files           = dooble.desktop
+ desktopicon.path        = /usr/share/icons/hicolor/48x48
+ desktopicon.files       = Icons/48x48/dooble.png
+-icons.path            = /usr/local/dooble
++icons.path            = /usr/share/dooble
+ icons.files           = Icons
+-images.path           = /usr/local/dooble
++images.path           = /usr/share/dooble
+ images.files          = Images
+-libspoton_install.path        = /usr/local/dooble/Lib
++libspoton_install.path        = /usr/lib
+ libspoton_install.files = libSpotOn/libspoton.so
+ lrelease.extra          = $$[QT_INSTALL_BINS]/lrelease dooble.pro
+ lrelease.path           = .
+ lupdate.extra           = $$[QT_INSTALL_BINS]/lupdate dooble.pro
+ lupdate.path            = .
+-pluginsdir.path         = /usr/local/dooble/Plugins/dooble
++pluginsdir.path         = /usr/lib/nsbrowser/plugins
+-pluginsdir.files        = Plugins/README
+-plugspec.path           = /usr/local/include/dooble/plugin-spec
++plugspec.path           = /usr/include/dooble/plugin-spec
+ plugspec.files          = plugin-spec/*.h
+-postinstall.path      = /usr/local/dooble
++postinstall.path      = /usr/share/dooble
+ postinstall.extra     = find /usr/local/dooble -name .svn -exec rm -rf {} \\; 
2>/dev/null; echo
+-tab.path              = /usr/local/dooble
++tab.path              = /usr/share/dooble
+ tab.files             = Tab
+ translations.path     = /usr/local/dooble/Translations
+ translations.files    = Translations/*.qm

diff --git a/www-client/dooble/metadata.xml b/www-client/dooble/metadata.xml
new file mode 100644
index 0000000..115276e
--- /dev/null
+++ b/www-client/dooble/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer>
+               <email>r...@gentoo.org</email>
+               <name>Richard Yao</name>
+       </maintainer>
+       <upstream>
+               <remote-id type="sourceforge">dooble</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to