aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-benchmarks/valley/Manifest3
-rw-r--r--app-benchmarks/valley/files/valley.pngbin0 -> 9445 bytes
-rw-r--r--app-benchmarks/valley/valley-1.0-r1.ebuild87
-rw-r--r--dev-libs/boost/Manifest (renamed from Manifest)0
-rw-r--r--dev-libs/boost/boost-1.56.0-r2.ebuild (renamed from boost-1.56.0-r2.ebuild)0
-rw-r--r--dev-libs/boost/boost-1.57.0-r1.ebuild (renamed from boost-1.57.0-r1.ebuild)0
-rw-r--r--dev-libs/boost/files/boost-1.48.0-disable_icu_rpath.patch (renamed from files/boost-1.48.0-disable_icu_rpath.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.48.0-disable_libboost_python3.patch (renamed from files/boost-1.48.0-disable_libboost_python3.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.48.0-no_strict_aliasing_python2.patch (renamed from files/boost-1.48.0-no_strict_aliasing_python2.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.48.0-python_linking.patch (renamed from files/boost-1.48.0-python_linking.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.51.0-respect_python-buildid.patch (renamed from files/boost-1.51.0-respect_python-buildid.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.51.0-support_dots_in_python-buildid.patch (renamed from files/boost-1.51.0-support_dots_in_python-buildid.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.52.0-threads.patch (renamed from files/boost-1.52.0-threads.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.55.0-context-x32.patch (renamed from files/boost-1.55.0-context-x32.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.55.0-tools-c98-compat.patch (renamed from files/boost-1.55.0-tools-c98-compat.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.55.0-variadic-templates.patch (renamed from files/boost-1.55.0-variadic-templates.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.56.0-atomic.patch (renamed from files/boost-1.56.0-atomic.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.56.0-build-auto_index-tool.patch (renamed from files/boost-1.56.0-build-auto_index-tool.patch)0
-rw-r--r--dev-libs/boost/files/boost-1.56.0-no-ssl3.patch (renamed from files/boost-1.56.0-no-ssl3.patch)0
-rw-r--r--dev-libs/boost/metadata.xml (renamed from metadata.xml)0
-rw-r--r--dev-libs/libx86/ChangeLog58
-rw-r--r--dev-libs/libx86/ChangeLog-201586
-rw-r--r--dev-libs/libx86/Manifest8
-rw-r--r--dev-libs/libx86/files/libx86-0.99-ifmask.patch21
-rw-r--r--dev-libs/libx86/files/libx86-1.1-add-pkgconfig.patch50
-rw-r--r--dev-libs/libx86/files/libx86-1.1-makefile.patch28
-rw-r--r--dev-libs/libx86/libx86-1.1-r99.ebuild46
-rw-r--r--dev-libs/libx86/metadata.xml8
-rw-r--r--dev-libs/weston/Manifest5
-rw-r--r--dev-libs/weston/files/README.gentoo9
-rw-r--r--dev-libs/weston/files/weston-1.9.0-make-error-portable.patch62
-rw-r--r--dev-libs/weston/metadata.xml23
-rw-r--r--dev-libs/weston/weston-1.9.0-r99.ebuild148
-rw-r--r--dev-qt/qtnetwork/Manifest5
-rw-r--r--dev-qt/qtnetwork/files/qtnetwork-5.5-libressl.patch36
-rw-r--r--dev-qt/qtnetwork/files/qtnetwork-5.5-socklen_t.patch40
-rw-r--r--dev-qt/qtnetwork/metadata.xml17
-rw-r--r--dev-qt/qtnetwork/qtnetwork-5.5.1-r99.ebuild59
-rw-r--r--eclass/mozconfig-v6.43.eclass282
-rw-r--r--eclass/mozconfig-v6.44.eclass341
-rw-r--r--mail-client/thunderbird/Manifest13
-rw-r--r--mail-client/thunderbird/files/icon/thunderbird-unbranded.desktop9
-rw-r--r--mail-client/thunderbird/files/icon/thunderbird.desktop9
-rw-r--r--mail-client/thunderbird/files/musl/thunderbird-38.3.0-updater.patch43
-rw-r--r--mail-client/thunderbird/files/musl/thunderbird-44.0b1-remove-libevent-sysctl.patch115
-rw-r--r--mail-client/thunderbird/files/thunderbird-44.0_beta1-fix-preferences-gentoo.patch10
-rw-r--r--mail-client/thunderbird/files/thunderbird-gentoo-default-prefs-1.js-110
-rw-r--r--mail-client/thunderbird/metadata.xml28
-rw-r--r--mail-client/thunderbird/thunderbird-44.0_beta1-r99.ebuild384
-rw-r--r--media-fonts/powerline-fonts/Manifest2
-rw-r--r--media-fonts/powerline-fonts/metadata.xml26
-rw-r--r--media-fonts/powerline-fonts/powerline-fonts-9999-r3.ebuild112
-rw-r--r--metadata/layout.conf1
-rw-r--r--profiles/repo_name1
-rw-r--r--sys-apps/hprofile/Manifest3
-rw-r--r--sys-apps/hprofile/hprofile-6.0.1.ebuild19
-rw-r--r--sys-apps/hprofile/metadata.xml8
-rw-r--r--sys-apps/lm_sensors/Manifest11
-rw-r--r--sys-apps/lm_sensors/files/100-musl-compat.patch46
-rw-r--r--sys-apps/lm_sensors/files/fancontrol-init.d-223
-rw-r--r--sys-apps/lm_sensors/files/fancontrol.service9
-rw-r--r--sys-apps/lm_sensors/files/lm_sensors-3-init.d105
-rw-r--r--sys-apps/lm_sensors/files/lm_sensors-3.3.5-sensors-detect-gentoo.patch120
-rw-r--r--sys-apps/lm_sensors/files/sensord-4-init.d22
-rw-r--r--sys-apps/lm_sensors/files/sensord-conf.d3
-rw-r--r--sys-apps/lm_sensors/files/sensord.service9
-rw-r--r--sys-apps/lm_sensors/lm_sensors-3.4.0-r99.ebuild110
-rw-r--r--sys-apps/lm_sensors/metadata.xml13
-rw-r--r--sys-apps/vbetool/ChangeLog56
-rw-r--r--sys-apps/vbetool/ChangeLog-201596
-rw-r--r--sys-apps/vbetool/Manifest8
-rw-r--r--sys-apps/vbetool/files/vbetool-1.0-build.patch18
-rw-r--r--sys-apps/vbetool/metadata.xml8
-rw-r--r--sys-apps/vbetool/vbetool-1.1-r99.ebuild41
-rw-r--r--sys-apps/vbetool/vbetool-1.2.2-r99.ebuild41
-rw-r--r--www-client/firefox/Manifest90
-rw-r--r--www-client/firefox/files/firefox-43.0-profiler-gettid.patch16
-rw-r--r--www-client/firefox/files/fix-xpcom.patch11
-rw-r--r--www-client/firefox/files/gentoo-default-prefs.js-117
-rw-r--r--www-client/firefox/files/gentoo-hwaccel-prefs.js-12
-rw-r--r--www-client/firefox/files/icon/firefox.desktop9
-rw-r--r--www-client/firefox/files/non-executable-jit.patch12
-rw-r--r--www-client/firefox/files/remove-stabs.patch43
-rw-r--r--www-client/firefox/firefox-43.0-r99.ebuild415
-rw-r--r--www-client/firefox/metadata.xml31
-rw-r--r--x11-base/xorg-drivers/Manifest2
-rw-r--r--x11-base/xorg-drivers/metadata.xml5
-rw-r--r--x11-base/xorg-drivers/xorg-drivers-1.18.ebuild167
-rw-r--r--x11-base/xorg-server/Manifest10
-rw-r--r--x11-base/xorg-server/files/xdm-setup.initd-114
-rw-r--r--x11-base/xorg-server/files/xdm.confd-410
-rw-r--r--x11-base/xorg-server/files/xdm.initd-11231
-rw-r--r--x11-base/xorg-server/files/xorg-server-1.12-unloadsubmodule.patch53
-rw-r--r--x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch65
-rw-r--r--x11-base/xorg-server/files/xorg-server-1.17.4-arm-musl.patch20
-rw-r--r--x11-base/xorg-server/files/xorg-sets.conf6
-rw-r--r--x11-base/xorg-server/metadata.xml18
-rw-r--r--x11-base/xorg-server/xorg-server-1.18.0.ebuild245
-rw-r--r--x11-drivers/nvidia-drivers/Manifest30
-rw-r--r--x11-drivers/nvidia-drivers/files/95-nvidia-settings2
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-169.0714
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-drivers-355.06-pax.patch102
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-drivers-355.11-nv-procfs.patch32
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-drivers-358.16-randstruct.patch18
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-drivers-361.18-pax.patch348
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-drivers-settings.desktop7
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf8
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-persistenced.init25
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-rmmod.conf3
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-smi.init25
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-udev.sh17
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r120
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia-uvm.conf3
-rw-r--r--x11-drivers/nvidia-drivers/files/nvidia.udev-rule6
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-355.11-r99.ebuild502
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-358.16-r99.ebuild502
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r99.ebuild491
-rw-r--r--x11-drivers/xf86-video-nouveau/Manifest3
-rw-r--r--x11-drivers/xf86-video-nouveau/metadata.xml8
-rw-r--r--x11-drivers/xf86-video-nouveau/xf86-video-nouveau-1.0.12.ebuild26
-rw-r--r--x11-libs/libva-vdpau-driver/Manifest8
-rw-r--r--x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch29
-rw-r--r--x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-glext-missing-definition.patch16
-rw-r--r--x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-include-systime.patch10
-rw-r--r--x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch13
-rw-r--r--x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-nouveau.patch8
-rw-r--r--x11-libs/libva-vdpau-driver/libva-vdpau-driver-0.7.4-r99.ebuild46
-rw-r--r--x11-libs/libva-vdpau-driver/metadata.xml9
128 files changed, 6777 insertions, 0 deletions
diff --git a/app-benchmarks/valley/Manifest b/app-benchmarks/valley/Manifest
new file mode 100644
index 0000000..472dcdd
--- /dev/null
+++ b/app-benchmarks/valley/Manifest
@@ -0,0 +1,3 @@
+AUX valley.png 9445 SHA256 54b0d9cdd1c0d3899b1cf560b05587c29dc6cbecb70250a8f9f67b9ba1564f00 SHA512 58e6177fba4ae79500e2c60dfd4e3909a8c0f5da63d3c280169561a2738bfc5c242f78835ca9ccde51f21ce0d7ec71b5069cc2d9e4d43ac293c96b8bb00586f7 WHIRLPOOL 8c8c36f6266673bedd6818a14a3561f9e555323496faee90960677c79f19d1fa13309b1fd0226e7ee944694f8cded0834af141c8a7f64828e3105b94fa67da0f
+DIST Unigine_Valley-1.0.run 412652951 SHA256 5f0c8bd2431118551182babbf5f1c20fb14e7a40789697240dcaf546443660f4 SHA512 5778fde3c122528fba8e79088b9ccca672afb953f3996bb6d1e9a20e6b7a50934a088daf705711bd04bdcc11d50e09815e6fa4ad6b798efd382b957ae8723977 WHIRLPOOL 110263d32ee6cb41ec842cd42b2ec491e9bb46e0415cf2df9ae8b373d2c756c25c88f69cf194feb98cc649af8068b7955c0ec254611a046787a831d5f2e21b8e
+EBUILD valley-1.0-r1.ebuild 2054 SHA256 affec38e7c3b202bd791ee7db672ee8979e97c5959f8ffc9d457b9dffccc13e6 SHA512 d85500d87566792669981b8880334f8ffdb566450358d181922a7bf3bcc9dd331a9541e3a92fdb232278320103fbfc46c14061968b48964ffae73c53f55ad3e5 WHIRLPOOL 0b36f7c480c0749716e3590a6997ab10b7e2660658301a85ad4485657e1deb4cea1033ac464297fca8a790c0448911fff8747e60b00c3bfe066927846bb9ee8f
diff --git a/app-benchmarks/valley/files/valley.png b/app-benchmarks/valley/files/valley.png
new file mode 100644
index 0000000..8f81f12
--- /dev/null
+++ b/app-benchmarks/valley/files/valley.png
Binary files differ
diff --git a/app-benchmarks/valley/valley-1.0-r1.ebuild b/app-benchmarks/valley/valley-1.0-r1.ebuild
new file mode 100644
index 0000000..20949c3
--- /dev/null
+++ b/app-benchmarks/valley/valley-1.0-r1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+inherit eutils multilib unpacker
+
+DESCRIPTION="GPU stress-testing tool from the developers of Heaven Benchmark"
+HOMEPAGE="http://unigine.com/products/valley/"
+SRC_URI="Unigine_Valley-${PV}.run"
+LICENSE="valley-benchmark.pdf"
+
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+IUSE=""
+
+RESTRICT="strip"
+
+DEPEND="app-admin/chrpath"
+RDEPEND="
+ media-libs/openal
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtwebkit:4
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+"
+
+S=${WORKDIR}
+
+pkg_nofetch() {
+ einfo "Please download '${SRC_URI}' from:"
+ einfo "'http://unigine.com/products/valley/download/'"
+ einfo "and move it to '${DISTDIR}'"
+}
+
+src_unpack() {
+ unpack_makeself
+}
+
+src_install() {
+ if [ "${ARCH}" = "amd64" ] ; then
+ XARCH="x64"
+ else
+ XARCH="x86"
+ fi
+
+ # removing RPATH to avoid security checks faults
+ chrpath -d bin/browser_${XARCH}
+ chrpath -d bin/valley_${XARCH}
+
+ insinto "/opt/${PN}"
+ doins -r data documentation
+
+ insinto "/opt/${PN}/bin"
+ doins bin/browser_${XARCH}
+ doins bin/valley_${XARCH}
+ doins bin/libAppStereo_${XARCH}.so
+ doins bin/libAppSurround_${XARCH}.so
+ doins bin/libAppWall_${XARCH}.so
+ doins bin/libGPUMonitor_${XARCH}.so
+ doins bin/libUnigine_${XARCH}.so
+
+ local module
+ for module in Core Gui Network WebKit Xml; do
+ dosym /usr/$(get_libdir)/qt4/libQt${module}.so.4 /opt/${PN}/bin/libQt${module}Unigine_${XARCH}.so.4
+ done
+
+ # fixing permissions
+ fperms 0755 "/opt/${PN}/bin/browser_${XARCH}"
+ fperms 0755 "/opt/${PN}/bin/valley_${XARCH}"
+
+ doicon "${FILESDIR}"/${PN}.png
+ make_wrapper valley "./browser_${XARCH} -config /opt/valley/data/launcher/launcher.xml" /opt/valley/bin /opt/valley/bin
+ make_desktop_entry valley "Valley Benchmark"
+}
+
+pkg_postinst() {
+ ewarn "Please make sure you have"
+ ewarn "1) Installed proprietary x11 drivers, like ATI ones or NVIDIA"
+ ewarn "2) Selected it with 'eselect opengl'"
+ ewarn "Otherwise you will get OpenGL error"
+}
diff --git a/Manifest b/dev-libs/boost/Manifest
index d1c2471..d1c2471 100644
--- a/Manifest
+++ b/dev-libs/boost/Manifest
diff --git a/boost-1.56.0-r2.ebuild b/dev-libs/boost/boost-1.56.0-r2.ebuild
index 9fdf956..9fdf956 100644
--- a/boost-1.56.0-r2.ebuild
+++ b/dev-libs/boost/boost-1.56.0-r2.ebuild
diff --git a/boost-1.57.0-r1.ebuild b/dev-libs/boost/boost-1.57.0-r1.ebuild
index 0fbf234..0fbf234 100644
--- a/boost-1.57.0-r1.ebuild
+++ b/dev-libs/boost/boost-1.57.0-r1.ebuild
diff --git a/files/boost-1.48.0-disable_icu_rpath.patch b/dev-libs/boost/files/boost-1.48.0-disable_icu_rpath.patch
index a902d61..a902d61 100644
--- a/files/boost-1.48.0-disable_icu_rpath.patch
+++ b/dev-libs/boost/files/boost-1.48.0-disable_icu_rpath.patch
diff --git a/files/boost-1.48.0-disable_libboost_python3.patch b/dev-libs/boost/files/boost-1.48.0-disable_libboost_python3.patch
index c24a56c..c24a56c 100644
--- a/files/boost-1.48.0-disable_libboost_python3.patch
+++ b/dev-libs/boost/files/boost-1.48.0-disable_libboost_python3.patch
diff --git a/files/boost-1.48.0-no_strict_aliasing_python2.patch b/dev-libs/boost/files/boost-1.48.0-no_strict_aliasing_python2.patch
index 89f8109..89f8109 100644
--- a/files/boost-1.48.0-no_strict_aliasing_python2.patch
+++ b/dev-libs/boost/files/boost-1.48.0-no_strict_aliasing_python2.patch
diff --git a/files/boost-1.48.0-python_linking.patch b/dev-libs/boost/files/boost-1.48.0-python_linking.patch
index e7f4e7c..e7f4e7c 100644
--- a/files/boost-1.48.0-python_linking.patch
+++ b/dev-libs/boost/files/boost-1.48.0-python_linking.patch
diff --git a/files/boost-1.51.0-respect_python-buildid.patch b/dev-libs/boost/files/boost-1.51.0-respect_python-buildid.patch
index 327429e..327429e 100644
--- a/files/boost-1.51.0-respect_python-buildid.patch
+++ b/dev-libs/boost/files/boost-1.51.0-respect_python-buildid.patch
diff --git a/files/boost-1.51.0-support_dots_in_python-buildid.patch b/dev-libs/boost/files/boost-1.51.0-support_dots_in_python-buildid.patch
index c8dc6e1..c8dc6e1 100644
--- a/files/boost-1.51.0-support_dots_in_python-buildid.patch
+++ b/dev-libs/boost/files/boost-1.51.0-support_dots_in_python-buildid.patch
diff --git a/files/boost-1.52.0-threads.patch b/dev-libs/boost/files/boost-1.52.0-threads.patch
index e078fc2..e078fc2 100644
--- a/files/boost-1.52.0-threads.patch
+++ b/dev-libs/boost/files/boost-1.52.0-threads.patch
diff --git a/files/boost-1.55.0-context-x32.patch b/dev-libs/boost/files/boost-1.55.0-context-x32.patch
index 5bf7406..5bf7406 100644
--- a/files/boost-1.55.0-context-x32.patch
+++ b/dev-libs/boost/files/boost-1.55.0-context-x32.patch
diff --git a/files/boost-1.55.0-tools-c98-compat.patch b/dev-libs/boost/files/boost-1.55.0-tools-c98-compat.patch
index df2a14a..df2a14a 100644
--- a/files/boost-1.55.0-tools-c98-compat.patch
+++ b/dev-libs/boost/files/boost-1.55.0-tools-c98-compat.patch
diff --git a/files/boost-1.55.0-variadic-templates.patch b/dev-libs/boost/files/boost-1.55.0-variadic-templates.patch
index 547dbbd..547dbbd 100644
--- a/files/boost-1.55.0-variadic-templates.patch
+++ b/dev-libs/boost/files/boost-1.55.0-variadic-templates.patch
diff --git a/files/boost-1.56.0-atomic.patch b/dev-libs/boost/files/boost-1.56.0-atomic.patch
index 6d72418..6d72418 100644
--- a/files/boost-1.56.0-atomic.patch
+++ b/dev-libs/boost/files/boost-1.56.0-atomic.patch
diff --git a/files/boost-1.56.0-build-auto_index-tool.patch b/dev-libs/boost/files/boost-1.56.0-build-auto_index-tool.patch
index 5175800..5175800 100644
--- a/files/boost-1.56.0-build-auto_index-tool.patch
+++ b/dev-libs/boost/files/boost-1.56.0-build-auto_index-tool.patch
diff --git a/files/boost-1.56.0-no-ssl3.patch b/dev-libs/boost/files/boost-1.56.0-no-ssl3.patch
index d182db7..d182db7 100644
--- a/files/boost-1.56.0-no-ssl3.patch
+++ b/dev-libs/boost/files/boost-1.56.0-no-ssl3.patch
diff --git a/metadata.xml b/dev-libs/boost/metadata.xml
index 6a63ade..6a63ade 100644
--- a/metadata.xml
+++ b/dev-libs/boost/metadata.xml
diff --git a/dev-libs/libx86/ChangeLog b/dev-libs/libx86/ChangeLog
new file mode 100644
index 0000000..6fa1825
--- /dev/null
+++ b/dev-libs/libx86/ChangeLog
@@ -0,0 +1,58 @@
+# ChangeLog for dev-libs/libx86
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# (auto-generated from git log)
+
+*libx86-1.1-r3 (09 Aug 2015)
+*libx86-1.1-r2 (09 Aug 2015)
+
+ 09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org>
+ +files/libx86-0.99-ifmask.patch, +files/libx86-1.1-makefile.patch,
+ +libx86-1.1-r2.ebuild, +libx86-1.1-r3.ebuild, +metadata.xml:
+ proj/gentoo: Initial commit
+
+ This commit represents a new era for Gentoo:
+ Storing the gentoo-x86 tree in Git, as converted from CVS.
+
+ This commit is the start of the NEW history.
+ Any historical data is intended to be grafted onto this point.
+
+ Creation process:
+ 1. Take final CVS checkout snapshot
+ 2. Remove ALL ChangeLog* files
+ 3. Transform all Manifests to thin
+ 4. Remove empty Manifests
+ 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
+ 5.1. Do not touch files with -kb/-ko keyword flags.
+
+ Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+ X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration
+ tests
+ X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this
+ project
+ X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo
+ developer, wrote Git features for the migration
+ X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve
+ cvs2svn
+ X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
+ X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014
+ work in migration
+ X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
+ X-Thanks: All of other Gentoo developers - many ideas and lots of paint on
+ the bikeshed
+
+ 24 Aug 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
+ Use https by default
+
+ Convert all URLs for sites supporting encrypted connections from http to
+ https
+
+ Signed-off-by: Justin Lecher <jlec@gentoo.org>
+
+ 24 Aug 2015; Mike Gilbert <floppym@gentoo.org> metadata.xml:
+ Revert DOCTYPE SYSTEM https changes in metadata.xml
+
+ repoman does not yet accept the https version.
+ This partially reverts eaaface92ee81f30a6ac66fe7acbcc42c00dc450.
+
+ Bug: https://bugs.gentoo.org/552720
+
diff --git a/dev-libs/libx86/ChangeLog-2015 b/dev-libs/libx86/ChangeLog-2015
new file mode 100644
index 0000000..3cf8dc6
--- /dev/null
+++ b/dev-libs/libx86/ChangeLog-2015
@@ -0,0 +1,86 @@
+# ChangeLog for dev-libs/libx86
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libx86/ChangeLog,v 1.22 2013/03/26 11:44:11 ago Exp $
+
+ 26 Mar 2013; Agostino Sarubbo <ago@gentoo.org> libx86-1.1-r3.ebuild:
+ Stable for x86, wrt bug #463036
+
+ 26 Mar 2013; Agostino Sarubbo <ago@gentoo.org> libx86-1.1-r3.ebuild:
+ Stable for amd64, wrt bug #463036
+
+ 11 Feb 2013; Sergey Popov <pinkbyte@gentoo.org> metadata.xml:
+ Assign myself as maintainer
+
+*libx86-1.1-r3 (11 Feb 2013)
+
+ 11 Feb 2013; Sergey Popov <pinkbyte@gentoo.org> +libx86-1.1-r3.ebuild,
+ +files/libx86-1.1-makefile.patch:
+ Revision bump: install static libs optionally, wrt bug #456648
+
+ 10 Feb 2013; Michael Palimaka <kensington@gentoo.org> -libx86-1.1-r1.ebuild:
+ Remove old.
+
+ 10 Feb 2013; Agostino Sarubbo <ago@gentoo.org> libx86-1.1-r2.ebuild:
+ Stable for amd64, wrt bug #456546
+
+ 10 Feb 2013; Agostino Sarubbo <ago@gentoo.org> libx86-1.1-r2.ebuild:
+ Stable for x86, wrt bug #456546
+
+*libx86-1.1-r2 (20 Nov 2012)
+
+ 20 Nov 2012; Agostino Sarubbo <ago@gentoo.org> +libx86-1.1-r2.ebuild:
+ eapi5, respect AR
+
+ 27 Jun 2012; Michael Palimaka <kensington@gentoo.org>
+ -files/libx86-0.99-build.patch, -libx86-0.99.ebuild, -libx86-1.1.ebuild:
+ Remove old.
+
+ 01 Jul 2009; Markus Meier <maekke@gentoo.org> libx86-1.1-r1.ebuild:
+ amd64 stable, bug #267719
+
+ 30 Jun 2009; Christian Faulhammer <fauli@gentoo.org> libx86-1.1-r1.ebuild:
+ stable x86, bug 267719
+
+ 15 Sep 2008; Peter Volkov <pva@gentoo.org> libx86-1.1-r1.ebuild:
+ Use correct compiler, bug #237383, thank Jeroen Roovers for notice.
+
+*libx86-1.1-r1 (10 Sep 2008)
+
+ 10 Sep 2008; Peter Volkov <pva@gentoo.org> +libx86-1.1-r1.ebuild:
+ Respect LDFLAGS, bug #236888, thank Olivier Huber for report and fix.
+
+ 06 Sep 2008; Ulrich Mueller <ulm@gentoo.org>
+ +files/libx86-0.99-ifmask.patch, libx86-0.99.ebuild, libx86-1.1.ebuild:
+ Fix compile failure with linux-headers-2.6.26, bug 235599. Thanks to
+ junki.gnu@gmail.com for the patch.
+
+*libx86-1.1 (06 Sep 2008)
+
+ 06 Sep 2008; Thomas Anderson <gentoofan23@gentoo.org> +libx86-1.1.ebuild:
+ Version bump. This new version is vaccinated of the bug from bug #235599
+
+ 07 Aug 2008; Markus Meier <maekke@gentoo.org> libx86-0.99.ebuild:
+ amd64/x86 stable, bug #231739
+
+ 28 May 2008; Christian Heim <phreak@gentoo.org> metadata.xml:
+ Removing Alon Bar-Lev (alonbl) from metadata.xml (as per #147110). Assigning
+ to maintainer-needed.
+
+ 07 Feb 2008; Robin H. Johnson <robbat2@gentoo.org> metadata.xml:
+ Fix metadata typo.
+
+ 10 Nov 2007; Samuli Suominen <drac@gentoo.org> libx86-0.99.ebuild:
+ Keyword ~amd64 wrt #197687.
+
+ 10 Oct 2007; Alon Bar-Lev <alonbl@gentoo.org>
+ files/libx86-0.99-build.patch, libx86-0.99.ebuild:
+ Fix lib dir, bug#192814, thanks for Pacho Ramos for reporting
+
+ 18 Sep 2007; Alon Bar-Lev <alonbl@gentoo.org> libx86-0.99.ebuild:
+ Add die thanks to vapier
+
+*libx86-0.99 (17 Sep 2007)
+
+ 17 Sep 2007; Alon Bar-Lev <alonbl@gentoo.org>
+ +files/libx86-0.99-build.patch, +metadata.xml, +libx86-0.99.ebuild:
+ Initial add, bug#156431
diff --git a/dev-libs/libx86/Manifest b/dev-libs/libx86/Manifest
new file mode 100644
index 0000000..09ab8df
--- /dev/null
+++ b/dev-libs/libx86/Manifest
@@ -0,0 +1,8 @@
+AUX libx86-0.99-ifmask.patch 584 SHA256 b8070e57c5d267b3736b133e4c3c92965cc5a62e72466b705b506ad2ce39dd25 SHA512 781ea16e535ca1c0a54552b51d67b0901102f20ab63ff5ff39f9f2bb513abb53867eb5e52089e72afa6c313380b2033881f17cfe233b09a38ed5a9e95ad8d5f8 WHIRLPOOL 148e94477662dd91e654972f8ad475808574e006677e3858346c864b580776ec203457d1011f05d984ba82231f8ebdddac46e8f9bd1e1650e831268c7abe0b66
+AUX libx86-1.1-add-pkgconfig.patch 1551 SHA256 de18116436db7e35011f5524071e3abb05e838fc24da4a53e2c1b16fe609ad40 SHA512 77a2eb5d063f2bae279abd4bb45a3a839448201c11eb6b68e59454f25265c450368952fcf8663727e5b7fd16438a4a95456cd44d91dc4748d215c2716529c9a8 WHIRLPOOL ce79d4c8d25c6de08ae7242fce3c89eae76b26d02696892762521475cfb6a564be8953a0fca457688ad168c40c9b68f67089b89d4aedd782f1d2074a5f66f74f
+AUX libx86-1.1-makefile.patch 853 SHA256 ce7c23404e1ba95343418cc0256c7ad2db702b79518e4cda77c802dfbbce306f SHA512 a61e21ab31b1f22d898799ecc3db57e6816146488d436d3d33817f0ac19d420562830411111bacd8ca4c80a446c088fb931ee293522828076d0a1cae6e7ee0a6 WHIRLPOOL 80d8a599a7fa6aa54f3a65076c5642f5281e79eb283215ced4da9e5523f74c21e17a26eb75b8957757b96f71b7f0a3eee5a0098b46099df2ac193c2577853a7e
+DIST libx86-1.1.tar.gz 87428 SHA256 5bf13104cb327472b5cb65643352a9138646becacc06763088d83001d832d048 SHA512 b946555a45405a06fdf00b3e2522fc99dd7c61349c32726221aa60117a8d3da6da4b44188b1ebb208368e12b396f26055437cebcc8a0e6df10c7a006182c9280 WHIRLPOOL 778dae64fb0a21988debb12ca43ca6eed94fc34ab8d0e012aa30914053f57e6817fc7bbec42f6a85a0be4399263c035f981708036804cb756875143f91fe227c
+EBUILD libx86-1.1-r99.ebuild 1202 SHA256 3ada07db37e9464f5f8398036ac67b9d79f809a84c06d5715597121d440959a2 SHA512 b748d14d0b4b8f96f3ea0e187e963fd4bb732855b1bc062a50e8cd27e89b8d6e24da8a4310ffc7e825173b7a84af29ccd4005526d0a81f58d1785ade4310f5d5 WHIRLPOOL ea1d2808e0ec6d2fef97a13b416e66773bf350ccfbc887e180f54251fc801b25c404c82f24590724c9894e09a05c36f96ef325ad04fa9eb3f5c9f66b02016c84
+MISC ChangeLog 2170 SHA256 1703a1bfef5c503620f4014520ec6176fecf886844dbe085a463947624473d4d SHA512 c946edeb94f0918bb6647204b566d27063143910f6d27cfd209531572701de8363db79b00f3256a35c1d973530036f31ee3f6f57606aa21de537cdc84a55c3cb WHIRLPOOL 8039c8abd7586ef194945f09478cb54602ace2bd287ea907a576a4ac0d47331833f5288b0b3ffdbd3d3ceee0ee66ada04b82be4cdaecd37fb50d018f0a8e80d9
+MISC ChangeLog-2015 3104 SHA256 279a3b4a4d63f4703fdea67ac8381e730a82e74c9d5af424528d7b996405544f SHA512 db6c59484fc9d2b9771b1ae94c4b36916a9fe97359eff37682422548ec07575a939fc115516aaf8ba5d9166ec134e94c54f9804cb59abf19a2186e3ca5afa880 WHIRLPOOL 0a0a560262770a20a4634e86ddafcecd198c2e5fd7bcf647785e94d850e1ff88db14a940a0580ce87dcbb3c9bfc0a90bddb9f8f8bdcc2ab95155526fbcc87474
+MISC metadata.xml 233 SHA256 a93cf5c4e554b97b2a48b92f801e3a3d87833cac311db0160a387a757ab7054c SHA512 704c94018edcbc53edcf0a41c2603dd59ea217aa5871f35d4d17f7df26156b8fb0a735d2efb11b74256565db01e6790a833242de39c29a9e46ed8ed96d505334 WHIRLPOOL 57f455cf256b91fb72e642f5a861e7367961775f2ab992b8afc798ff376c9a2bc8860d09f2bc43c870531248484128c966f25a081b7789a31ba9fb4f52b5519c
diff --git a/dev-libs/libx86/files/libx86-0.99-ifmask.patch b/dev-libs/libx86/files/libx86-0.99-ifmask.patch
new file mode 100644
index 0000000..c99eeb8
--- /dev/null
+++ b/dev-libs/libx86/files/libx86-0.99-ifmask.patch
@@ -0,0 +1,21 @@
+--- lrmi.c.orig 2008-09-06 12:24:36.070136428 +0200
++++ lrmi.c 2008-09-06 12:28:10.584287458 +0200
+@@ -55,6 +55,18 @@ OTHER DEALINGS IN THE SOFTWARE.
+ #include "x86-common.h"
+
+ #if defined(__linux__)
++#ifndef TF_MASK
++#define TF_MASK X86_EFLAGS_TF
++#endif
++#ifndef IF_MASK
++#define IF_MASK X86_EFLAGS_IF
++#endif
++#ifndef IOPL_MASK
++#define IOPL_MASK X86_EFLAGS_IOPL
++#endif
++#ifndef VIF_MASK
++#define VIF_MASK X86_EFLAGS_VIF
++#endif
+ #define DEFAULT_VM86_FLAGS (IF_MASK | IOPL_MASK)
+ #elif defined(__NetBSD__) || defined(__FreeBSD__)
+ #define DEFAULT_VM86_FLAGS (PSL_I | PSL_IOPL)
diff --git a/dev-libs/libx86/files/libx86-1.1-add-pkgconfig.patch b/dev-libs/libx86/files/libx86-1.1-add-pkgconfig.patch
new file mode 100644
index 0000000..3490c7f
--- /dev/null
+++ b/dev-libs/libx86/files/libx86-1.1-add-pkgconfig.patch
@@ -0,0 +1,50 @@
+diff -Naur libx86-1.1.orig/Makefile libx86-1.1/Makefile
+--- libx86-1.1.orig/Makefile 2016-01-16 15:58:32.764389859 +0000
++++ libx86-1.1/Makefile 2016-01-16 16:02:34.461849053 +0000
+@@ -1,6 +1,7 @@
+ OBJECTS = x86-common.o
+ CFLAGS ?= -O2 -Wall -DDEBUG -g
+ LIBDIR ?= /usr/lib
++INCLUDEDIR ?= /usr/include
+
+ ifeq ($(BACKEND),x86emu)
+ OBJECTS += thunk.o x86emu/decode.o x86emu/debug.o x86emu/fpu.o \
+@@ -29,7 +30,14 @@
+ rm -f *.o *~
+
+ clean: objclean
+- rm -f *.so.1 *.a
++ rm -f *.so.1 *.a x86.pc
++
++x86.pc:
++ sed -e's,@prefix@,/usr,' x86.pc.in > x86.pc
++ sed -e's,@exec_prefix@,/usr,' -i x86.pc
++ sed -e's,@libdir@,${LIBDIR},' -i x86.pc
++ sed -e's,@includedir@,${INCLUDEDIR},' -i x86.pc
++ sed -e's,@PACKAGE_VERSION@,1.1,' -i x86.pc
+
+ install-shared: libx86.so.1
+ install -D libx86.so.1 $(DESTDIR)$(LIBDIR)/libx86.so.1
+@@ -41,4 +49,7 @@
+ install-static:
+ install -D libx86.a $(DESTDIR)$(LIBDIR)/libx86.a
+
+-install: install-shared install-static install-header
++install-pkgconfig: x86.pc
++ install -D x86.pc $(DESTDIR)$(LIBDIR)/pkgconfig/x86.pc
++
++install: install-shared install-static install-header install-pkgconfig
+diff -Naur libx86-1.1.orig/x86.pc.in libx86-1.1/x86.pc.in
+--- libx86-1.1.orig/x86.pc.in 1970-01-01 00:00:00.000000000 +0000
++++ libx86-1.1/x86.pc.in 2016-01-16 15:59:27.171393640 +0000
+@@ -0,0 +1,10 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
++Name: x86
++Description: Library providing x86 emulator access
++Version: @PACKAGE_VERSION@
++Cflags: -I${includedir}
++Libs: -L${libdir} -lx86
diff --git a/dev-libs/libx86/files/libx86-1.1-makefile.patch b/dev-libs/libx86/files/libx86-1.1-makefile.patch
new file mode 100644
index 0000000..471c3fb
--- /dev/null
+++ b/dev-libs/libx86/files/libx86-1.1-makefile.patch
@@ -0,0 +1,28 @@
+--- Makefile.orig 2013-02-11 16:35:56.834368910 +0400
++++ Makefile 2013-02-11 16:36:02.587369368 +0400
+@@ -22,7 +22,7 @@
+ $(AR) cru libx86.a $(OBJECTS)
+
+ shared: $(OBJECTS)
+- $(CC) $(CFLAGS) -o libx86.so.1 -shared -Wl,-soname,libx86.so.1 $(OBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o libx86.so.1 -shared -Wl,-soname,libx86.so.1 $(OBJECTS)
+
+ objclean:
+ $(MAKE) -C x86emu clean
+@@ -31,8 +31,14 @@
+ clean: objclean
+ rm -f *.so.1 *.a
+
+-install: libx86.so.1
++install-shared: libx86.so.1
+ install -D libx86.so.1 $(DESTDIR)$(LIBDIR)/libx86.so.1
+- install -D libx86.a $(DESTDIR)$(LIBDIR)/libx86.a
+ ln -sf libx86.so.1 $(DESTDIR)$(LIBDIR)/libx86.so
++
++install-header:
+ install -p -m 0644 -D lrmi.h $(DESTDIR)/usr/include/libx86.h
++
++install-static:
++ install -D libx86.a $(DESTDIR)$(LIBDIR)/libx86.a
++
++install: install-shared install-static install-header
diff --git a/dev-libs/libx86/libx86-1.1-r99.ebuild b/dev-libs/libx86/libx86-1.1-r99.ebuild
new file mode 100644
index 0000000..474bce3
--- /dev/null
+++ b/dev-libs/libx86/libx86-1.1-r99.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="A hardware-independent library for executing real-mode x86 code"
+HOMEPAGE="http://www.codon.org.uk/~mjg59/libx86"
+SRC_URI="http://www.codon.org.uk/~mjg59/${PN}/downloads/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+src_prepare() {
+ # fix compile failure with linux-headers-2.6.26, bug 235599
+ epatch "${FILESDIR}"/${PN}-0.99-ifmask.patch
+ # Patch for bugs #236888 and #456648
+ epatch "${FILESDIR}"/${P}-makefile.patch
+ # Add support for pkgconfig (enables newer versions of vbetool to link against this)
+ epatch "${FILESDIR}"/${P}-add-pkgconfig.patch
+
+ tc-export CC AR
+}
+
+src_compile() {
+ local ARGS
+ use amd64 && ARGS="BACKEND=x86emu"
+ emake ${ARGS} LIBRARY=shared shared
+ if use static-libs; then
+ emake ${ARGS} objclean
+ emake ${ARGS} LIBRARY=static static
+ fi
+}
+
+src_install() {
+ local install_static;
+ use static-libs && install_static='install-static'
+ emake \
+ LIBDIR="/usr/$(get_libdir)" \
+ DESTDIR="${D}" \
+ install-header install-shared install-pkgconfig ${install_static}
+}
diff --git a/dev-libs/libx86/metadata.xml b/dev-libs/libx86/metadata.xml
new file mode 100644
index 0000000..b6b8956
--- /dev/null
+++ b/dev-libs/libx86/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>pinkbyte@gentoo.org</email>
+ <name>Sergey Popov</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-libs/weston/Manifest b/dev-libs/weston/Manifest
new file mode 100644
index 0000000..089b6af
--- /dev/null
+++ b/dev-libs/weston/Manifest
@@ -0,0 +1,5 @@
+AUX README.gentoo 383 SHA256 ded85eb05b14162aceb7ba67e49be207bbe15591fa519743478618def88cee85 SHA512 e4d8f8e0edeb6773dd7ef6329074d1e40b694b9e7e10b6a429d8c5dd4fe1170594f447a42eb41446ec2355829a1da1606bf6c544434551c5c931b0794422e786 WHIRLPOOL 8bc2485d91a399eb9d283ec3363546852be9a1a3e69214b3c7cc9a6427c4e10355dc8732de0d8b688f9df8a4bc03df25c3ce7b33c19773b7a47616c93f82bd81
+AUX weston-1.9.0-make-error-portable.patch 1846 SHA256 7260f4c22e3af7b55bb314e68d99c5bed9c20c5f28c9528a8d76816a3bf379f6 SHA512 9116bdf0f93886cfdef97597a8260f7e724a7695c379ddcb81ec1f3c10f8570394a10de830ed2295080b153518e6d4c8d1ddc4ed60d470b2115336155c9e88ff WHIRLPOOL 94791922d22246868ed64b5f5b494c42fb38d441ab14020313d3072a3454140aea08e30fd0cc2a6d12b928d21ab81c10ac4afdcf39c94b00f5f98a130c6090b8
+DIST weston-1.9.0.tar.xz 1238240 SHA256 9c1b03f3184fa0b0dfdf67e215048085156e1a2ca344af6613fed36794ac48cf SHA512 9bcbb5971b8a55d9e10aacf0aae868ff03750a98daee5233dcbff5698ed84e41c4b147fa1fdb1e2be916e3b1e13f259e0eec62354517d6e2a7e1d301a8522f66 WHIRLPOOL 3329a1783da2c7509fb93a64343b6b70f6d45de614a15e17d3a2a2439b440298e25c3dd4504042de38e501877cf47d909849fd6263b081c6ccc0bf8e1362287b
+EBUILD weston-1.9.0-r99.ebuild 3259 SHA256 66d6ff785f2467ac8f889861602467d057f346abbcf0c8f24520029902b37840 SHA512 190d3a3e654d961e5c83d5a1953f747158799d7ae6e6d7f46508772173d661ead9643061d6862f54a644ab0fb86c5e82d43acee80b7dbc8f2cfaf7ca4b932fd2 WHIRLPOOL 03673b306b5ca3f5002a280c28233f2d80418cf876b09d5484ced196411e8e61aad4bc7c2a73bfdae6908e7b10f3afc8eae0185ed28b704774bb1dbdacafce74
+MISC metadata.xml 1257 SHA256 30a5608ab189260222d32fa240fd3791b3e17a471e29e7a2e4a04466b21dfb29 SHA512 b95bd15b66265e1cbe25eee8c70a405dd5df9cc789d60968c9cae3ead3dc35a1a542a432ccf7e8be8c37ac23aa677a5383704e0822c77151f0fcaa101b3a57b3 WHIRLPOOL e53b1747e2e014af1e179c8fa6b8f77aa1dd2db43aec27e433561faa5c93700e57247c4bc06c74baa75f454672410dbf3b0e7d0375b9e7c620d6990ed5e42055
diff --git a/dev-libs/weston/files/README.gentoo b/dev-libs/weston/files/README.gentoo
new file mode 100644
index 0000000..ed8c5c3
--- /dev/null
+++ b/dev-libs/weston/files/README.gentoo
@@ -0,0 +1,9 @@
+For running Weston you need to have $XDG_RUNTIME_DIR in your environment,
+directory must exist and have correct permissions. If you are not using systemd,
+it will not be created automatically, you can create it using your shell,
+add these lines to ~/.bash_profile:
+
+# wayland
+export XDG_RUNTIME_DIR=/tmp/.runtime-${USER}
+mkdir -p "${XDG_RUNTIME_DIR}"
+chmod 0700 "${XDG_RUNTIME_DIR}"
diff --git a/dev-libs/weston/files/weston-1.9.0-make-error-portable.patch b/dev-libs/weston/files/weston-1.9.0-make-error-portable.patch
new file mode 100644
index 0000000..508ddbd
--- /dev/null
+++ b/dev-libs/weston/files/weston-1.9.0-make-error-portable.patch
@@ -0,0 +1,62 @@
+# Eliminate calls to error()/error.h, which are GNU extensions, not POSIX in order to compile with musl
+# See https://patchwork.freedesktop.org/patch/50793/
+
+diff -Naur weston-1.9.0.orig/configure.ac weston-1.9.0/configure.ac
+--- weston-1.9.0.orig/configure.ac 2015-09-22 01:11:26.000000000 +0000
++++ weston-1.9.0/configure.ac 2016-01-01 21:20:54.097472570 +0000
+@@ -57,6 +57,8 @@
+ [[#include <time.h>]])
+ AC_CHECK_HEADERS([execinfo.h])
+
++AC_CHECK_HEADERS([error.h])
++
+ AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate])
+
+ COMPOSITOR_MODULES="wayland-server >= 1.9.0 pixman-1 >= 0.25.2"
+diff -Naur weston-1.9.0.orig/src/weston-error.h weston-1.9.0/src/weston-error.h
+--- weston-1.9.0.orig/src/weston-error.h 1970-01-01 00:00:00.000000000 +0000
++++ weston-1.9.0/src/weston-error.h 2016-01-01 21:20:54.097472570 +0000
+@@ -0,0 +1,24 @@
++/* TODO
++ If S is zero error() will not exit so this macro should call warnx() in those cases
++ or just add a plain replacement function for error() to weston-launch.c */
++
++#ifndef WESTON_ERROR_H
++#define WESTON_ERROR_H
++
++#if HAVE_ERROR_H
++#include <error.h>
++#else
++#include <err.h>
++#include <string.h>
++#define weston_error(s, e, f, ...) do { \
++ if (e) \
++ errx((s), (f), ##__VA_ARGS__, strerror(e)); \
++ else \
++ errx((s), (f), ##__VA_ARGS__); \
++} while(0)
++
++#define error weston_error
++#endif
++
++#endif
++
+diff -Naur weston-1.9.0.orig/src/weston-launch.c weston-1.9.0/src/weston-launch.c
+--- weston-1.9.0.orig/src/weston-launch.c 2015-08-10 22:28:46.000000000 +0000
++++ weston-1.9.0/src/weston-launch.c 2016-01-01 21:20:54.098472589 +0000
+@@ -33,7 +33,6 @@
+ #include <poll.h>
+ #include <errno.h>
+
+-#include <error.h>
+ #include <getopt.h>
+
+ #include <sys/types.h>
+@@ -59,6 +58,7 @@
+ #endif
+
+ #include "weston-launch.h"
++#include "weston-error.h"
+
+ #define DRM_MAJOR 226
+
diff --git a/dev-libs/weston/metadata.xml b/dev-libs/weston/metadata.xml
new file mode 100644
index 0000000..56eac98
--- /dev/null
+++ b/dev-libs/weston/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>x11</herd>
+<use>
+ <flag name='colord'>Allow setting color managment</flag>
+ <flag name='drm'>Enable drm compositor support</flag>
+ <flag name='editor'>Install wayland-editor example application</flag>
+ <flag name='egl'>Enable egl acceleration</flag>
+ <flag name='fbdev'>Enable fbdev compositor support</flag>
+ <flag name='gles2'>Use GLESv2 cairo instead of full GL</flag>
+ <flag name='headless'>Headless backend and a noop renderer, mainly for testing purposes</flag>
+ <flag name='ivi'>Enable the IVI shell</flag>
+ <flag name='launch'>Install weston-launch utility</flag>
+ <flag name='rdp'>Enable Remote Desktop Protocol compositor support</flag>
+ <flag name='resize-optimization'>Increase performance, allocate more RAM. Recommended to disable on Raspberry Pi</flag>
+ <flag name='rpi'>Raspberry Pi GPU support</flag>
+ <flag name='screen-sharing'>Enable screen-sharing through RDP</flag>
+ <flag name='unwind'>Enable libunwind usage for backtraces</flag>
+ <flag name='wayland-compositor'>Enable Wayland compositor support</flag>
+ <flag name='xwayland'>Enable ability support native X11 applications</flag>
+</use>
+</pkgmetadata>
diff --git a/dev-libs/weston/weston-1.9.0-r99.ebuild b/dev-libs/weston/weston-1.9.0-r99.ebuild
new file mode 100644
index 0000000..caf87e3
--- /dev/null
+++ b/dev-libs/weston/weston-1.9.0-r99.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ ${PV} = 9999* ]]; then
+ EGIT_REPO_URI="git://anongit.freedesktop.org/git/wayland/${PN}"
+ GIT_ECLASS="git-r3"
+ EXPERIMENTAL="true"
+fi
+VIRTUALX_REQUIRED="test"
+RESTRICT="test"
+
+inherit autotools pax-utils readme.gentoo toolchain-funcs virtualx $GIT_ECLASS
+
+DESCRIPTION="Wayland reference compositor"
+HOMEPAGE="http://wayland.freedesktop.org/"
+
+if [[ $PV = 9999* ]]; then
+ SRC_URI="${SRC_PATCHES}"
+ KEYWORDS="arm"
+else
+ SRC_URI="http://wayland.freedesktop.org/releases/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm ~x86 ~arm-linux"
+fi
+
+LICENSE="MIT CC-BY-SA-3.0"
+SLOT="0"
+IUSE="colord dbus +drm editor examples fbdev +gles2 headless ivi rdp +resize-optimization rpi +launch screen-sharing static-libs +suid systemd test unwind wayland-compositor +X xwayland"
+
+REQUIRED_USE="
+ drm? ( gles2 )
+ screen-sharing? ( rdp )
+ test? ( X )
+ wayland-compositor? ( gles2 )
+"
+
+RDEPEND="
+ >=dev-libs/libinput-0.8.0
+ >=dev-libs/wayland-1.9.0
+ media-libs/lcms:2
+ media-libs/libpng:0=
+ media-libs/libwebp:0=
+ virtual/jpeg:0=
+ >=x11-libs/cairo-1.11.3
+ >=x11-libs/libdrm-2.4.30
+ x11-libs/libxkbcommon
+ x11-libs/pixman
+ x11-misc/xkeyboard-config
+ fbdev? (
+ >=sys-libs/mtdev-1.1.0
+ >=virtual/udev-136
+ )
+ colord? ( >=x11-misc/colord-0.1.27 )
+ dbus? ( sys-apps/dbus )
+ drm? (
+ media-libs/mesa[gbm]
+ >=sys-libs/mtdev-1.1.0
+ >=virtual/udev-136
+ )
+ editor? ( x11-libs/pango )
+ gles2? (
+ media-libs/mesa[gles2,wayland]
+ )
+ rdp? ( >=net-misc/freerdp-1.1.0_beta1_p20130710 )
+ rpi? (
+ >=sys-libs/mtdev-1.1.0
+ >=virtual/udev-136
+ )
+ systemd? (
+ sys-auth/pambase[systemd]
+ sys-apps/systemd[pam]
+ )
+ launch? ( sys-auth/pambase )
+ unwind? ( sys-libs/libunwind )
+ X? (
+ x11-libs/libxcb
+ x11-libs/libX11
+ )
+ xwayland? (
+ x11-base/xorg-server[wayland]
+ x11-libs/cairo[xcb]
+ x11-libs/libxcb
+ x11-libs/libXcursor
+ )
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.9.0-make-error-portable.patch
+
+ if [[ ${PV} = 9999* ]]; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ local myconf
+ if use examples || use test; then
+ myconf="--enable-simple-clients"
+ else
+ myconf="--disable-simple-clients"
+ fi
+
+ myconf+=" --with-cairo=image --disable-simple-egl-clients"
+
+ econf \
+ $(use_enable examples demo-clients-install) \
+ $(use_enable fbdev fbdev-compositor) \
+ $(use_enable dbus) \
+ $(use_enable drm drm-compositor) \
+ $(use_enable headless headless-compositor) \
+ $(use_enable ivi ivi-shell) \
+ $(use_enable rdp rdp-compositor) \
+ $(use_enable rpi rpi-compositor) \
+ $(use_enable wayland-compositor) \
+ $(use_enable X x11-compositor) \
+ $(use_enable launch weston-launch) \
+ $(use_enable colord) \
+ $(use_enable gles2 egl) \
+ $(use_enable unwind libunwind) \
+ $(use_enable resize-optimization) \
+ $(use_enable screen-sharing) \
+ $(use_enable suid setuid-install) \
+ $(use_enable xwayland) \
+ $(use_enable xwayland xwayland-test) \
+ ${myconf}
+}
+
+src_test() {
+ export XDG_RUNTIME_DIR="${T}/runtime-dir"
+ mkdir "${XDG_RUNTIME_DIR}" || die
+ chmod 0700 "${XDG_RUNTIME_DIR}" || die
+
+ cd "${BUILD_DIR}" || die
+ Xemake check
+}
+
+src_install() {
+ pax-mark -m "${ED}"/usr/bin/weston
+
+ default
+
+ readme.gentoo_src_install
+}
diff --git a/dev-qt/qtnetwork/Manifest b/dev-qt/qtnetwork/Manifest
new file mode 100644
index 0000000..994f773
--- /dev/null
+++ b/dev-qt/qtnetwork/Manifest
@@ -0,0 +1,5 @@
+AUX qtnetwork-5.5-libressl.patch 1626 SHA256 0633f0a6256d3e31c0257ea7096d2ca8c352f9327f53a413958bc8022c31e3e9 SHA512 a66a437d3ebff891d00acfa9f29515762fef3b6e93f8163c066f70fbc1b2ea4b0b13dc7ea729576df9831d5aed78f4fb628f5cfbabc90ad6c5c540f6ff619f61 WHIRLPOOL 47887cf92a6672ed8f8e69ae7dffde89bf5792ecb27d8bb3d3dcccaf27caf614a9bdf127ab2204bfdd705e4be6ad30acf2b461a0ec95ea6028e6979b70f1f934
+AUX qtnetwork-5.5-socklen_t.patch 1318 SHA256 d2e258025502bd428f519ffe04dd362cc77c90685aa18038c2395f28a5d8f7ef SHA512 ebb7a8ee9bb51a886982dbac688f296fd93ee5b210895022670ef5e3b9ba22e02899be5755240d3cebe7cd1ed6ec4bf6c85c578fe0ed54e35b6fe9ac0e14dfcd WHIRLPOOL eb06aba3a1ee36380fd26039cfe677f64f9bdc4b1019f44ab5f933b7a5eb1320cfca591131d221d1ed5edbb40e48b7b5da879d3eae8eeaf91de9c6561c0874ca
+DIST qtbase-opensource-src-5.5.1.tar.xz 46389212 SHA256 dfa4e8a4d7e4c6b69285e7e8833eeecd819987e1bdbe5baa6b6facd4420de916 SHA512 4d31de136870025dfb7544f255798884af1ad4f3060b0c00a0467c98af1f7de368eb298d4c52ba6d1ad27e36060b30c0314ce7ba0744b15642420ec89587a575 WHIRLPOOL 8975a54a720105d1b12b4f50072b98157f6a91020ecd7bad12ab4a92b7ac4663713a82e87f033cc6ad49602a5f9468c6d3ee23120be6c15d63e55ea0b5a343c4
+EBUILD qtnetwork-5.5.1-r99.ebuild 1299 SHA256 4b597c298b0005eff6f02a6b3a7ef9f9f858720c2082d04a042a4a18b822ea55 SHA512 1075d1820acbf69b753a04e780213ed221f4edbe7ef8d516c73206eca972fc6e1c6ce8ebea9ef937441afacb82e21e4dfb3caafde963bda14b1d5eceacdf72e9 WHIRLPOOL 82168f93002f2b717b5af8e9e829b0cfbfeb71578f798383d47b4554407e9738b70bd472dda4ab97df3b3c6abdd27cb44e8090d1ae9fed54b56c074bdb1fd63a
+MISC metadata.xml 654 SHA256 911221413accf92b54fe5cfc263d91fea8cfac0a061f059644b75505284ad7a6 SHA512 a7a4c6d11cabf153f239e92fe43e6273cf2adb5ea1d5f92f94f0cbb0382ed96c7575b0b6c181acd8e898f008c31f7c5777c60303f47e9588fb3c1e3fdb353252 WHIRLPOOL d26401c6f045298c538e06da0b56dd114ecf16d428dba383defa3c0d1f7cb759c3608162b38afb644e3ea8f717737c8fb0bbd38636656a5d87680c1d13856b5a
diff --git a/dev-qt/qtnetwork/files/qtnetwork-5.5-libressl.patch b/dev-qt/qtnetwork/files/qtnetwork-5.5-libressl.patch
new file mode 100644
index 0000000..c49be2f
--- /dev/null
+++ b/dev-qt/qtnetwork/files/qtnetwork-5.5-libressl.patch
@@ -0,0 +1,36 @@
+From 81494e67eccba04fc3fe554d76a9ca6fe7f2250e Mon Sep 17 00:00:00 2001
+From: hasufell <hasufell@gentoo.org>
+Date: Sat, 10 Oct 2015 01:15:01 +0200
+Subject: [PATCH] Fix compilation with libressl
+
+By additionally checking for defined(SSL_CTRL_SET_CURVES), which
+is defined in openssl, but not in libressl.
+---
+ src/network/ssl/qsslcontext_openssl.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/network/ssl/qsslcontext_openssl.cpp b/src/network/ssl/qsslcontext_openssl.cpp
+index b88ab54..cfc4f6d 100644
+--- a/src/network/ssl/qsslcontext_openssl.cpp
++++ b/src/network/ssl/qsslcontext_openssl.cpp
+@@ -338,7 +338,7 @@ init_context:
+
+ const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
+ if (!qcurves.isEmpty()) {
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
+ // Set the curves to be used
+ if (q_SSLeay() >= 0x10002000L) {
+ // SSL_CTX_ctrl wants a non-const pointer as last argument,
+@@ -352,7 +352,7 @@ init_context:
+ return sslContext;
+ }
+ } else
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
++#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
+ {
+ // specific curves requested, but not possible to set -> error
+ sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version too old, need at least v1.0.2"));
+--
+2.6.0
+
diff --git a/dev-qt/qtnetwork/files/qtnetwork-5.5-socklen_t.patch b/dev-qt/qtnetwork/files/qtnetwork-5.5-socklen_t.patch
new file mode 100644
index 0000000..dd8c335
--- /dev/null
+++ b/dev-qt/qtnetwork/files/qtnetwork-5.5-socklen_t.patch
@@ -0,0 +1,40 @@
+From 813f468a14fb84af43c1f8fc0a1430277358eba2 Mon Sep 17 00:00:00 2001
+From: Dave Flogeras <dflogeras2@gmail.com>
+Date: Tue, 29 Sep 2015 08:52:31 -0300
+Subject: [PATCH] Fix for platform socklen_t on other C libraries than glibc.
+
+Rather than treating >=glibc-2 specially, we treat <glibc-2 specially
+and all other libc implementations as POSIX.
+
+This was found here http://patchwork.openembedded.org/patch/94947/ and
+tested with armv6j-hardfloat-linux-uclibceabi and
+armv6j-hardfloat-linux-musleabi.
+
+Change-Id: I3850b1561a2e240f6564afedd80ce39407cc50b6
+Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
+Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
+---
+ mkspecs/linux-g++/qplatformdefs.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/mkspecs/linux-g++/qplatformdefs.h b/mkspecs/linux-g++/qplatformdefs.h
+index 5c18632..95a5758 100644
+--- a/mkspecs/linux-g++/qplatformdefs.h
++++ b/mkspecs/linux-g++/qplatformdefs.h
+@@ -78,10 +78,10 @@
+
+ #undef QT_SOCKLEN_T
+
+-#if defined(__GLIBC__) && (__GLIBC__ >= 2)
+-#define QT_SOCKLEN_T socklen_t
+-#else
++#if defined(__GLIBC__) && (__GLIBC__ < 2)
+ #define QT_SOCKLEN_T int
++#else
++#define QT_SOCKLEN_T socklen_t
+ #endif
+
+ #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
+--
+2.6.0
+
diff --git a/dev-qt/qtnetwork/metadata.xml b/dev-qt/qtnetwork/metadata.xml
new file mode 100644
index 0000000..651a7c8
--- /dev/null
+++ b/dev-qt/qtnetwork/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>qt</herd>
+ <use>
+ <flag name="bindist">Disable EC support via <pkg>dev-libs/openssl</pkg></flag>
+ <flag name="connman">Enable <pkg>net-misc/connman</pkg>-based bearer plugin</flag>
+ <flag name="libproxy">Use <pkg>net-libs/libproxy</pkg> for automatic
+ HTTP/SOCKS proxy configuration</flag>
+ <flag name="networkmanager">Enable <pkg>net-misc/networkmanager</pkg>-based
+ bearer plugin</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://bugreports.qt.io/</bugs-to>
+ <doc>http://doc.qt.io/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-qt/qtnetwork/qtnetwork-5.5.1-r99.ebuild b/dev-qt/qtnetwork/qtnetwork-5.5.1-r99.ebuild
new file mode 100644
index 0000000..bb11673
--- /dev/null
+++ b/dev-qt/qtnetwork/qtnetwork-5.5.1-r99.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Network abstraction library for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~x86"
+fi
+
+IUSE="bindist connman libproxy networkmanager +ssl"
+
+DEPEND="
+ ~dev-qt/qtcore-${PV}
+ >=sys-libs/zlib-1.2.5
+ connman? ( ~dev-qt/qtdbus-${PV} )
+ libproxy? ( net-libs/libproxy )
+ networkmanager? ( ~dev-qt/qtdbus-${PV} )
+ ssl? ( dev-libs/openssl:0[bindist=] )
+"
+RDEPEND="${DEPEND}
+ connman? ( net-misc/connman )
+ networkmanager? ( net-misc/networkmanager )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.5-socklen_t.patch" # bug 554556
+ "${FILESDIR}/${PN}-5.5-libressl.patch" # bug 562050
+)
+
+QT5_TARGET_SUBDIRS=(
+ src/network
+ src/plugins/bearer/generic
+)
+
+QT5_GENTOO_CONFIG=(
+ libproxy
+ ssl::SSL
+ ssl::OPENSSL
+ ssl:openssl-linked:LINKED_OPENSSL
+)
+
+pkg_setup() {
+ use connman && QT5_TARGET_SUBDIRS+=(src/plugins/bearer/connman)
+ use networkmanager && QT5_TARGET_SUBDIRS+=(src/plugins/bearer/networkmanager)
+}
+
+src_configure() {
+ local myconf=(
+ $(use connman || use networkmanager && echo -dbus-linked)
+ $(qt_use libproxy)
+ $(use ssl && echo -openssl-linked)
+ )
+ qt5-build_src_configure
+}
diff --git a/eclass/mozconfig-v6.43.eclass b/eclass/mozconfig-v6.43.eclass
new file mode 100644
index 0000000..be0ddd8
--- /dev/null
+++ b/eclass/mozconfig-v6.43.eclass
@@ -0,0 +1,282 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+#
+# @ECLASS: mozconfig-v6.40.eclass
+# @MAINTAINER:
+# mozilla team <mozilla@gentoo.org>
+# @BLURB: the new mozilla common configuration eclass for FF33 and newer, v6
+# @DESCRIPTION:
+# This eclass is used in mozilla ebuilds (firefox, thunderbird, seamonkey)
+# to provide a single common place for the common mozilla engine compoments.
+#
+# The eclass provides all common dependencies as well as common use flags.
+#
+# Some use flags which may be optional in particular mozilla packages can be
+# supported through setting eclass variables.
+#
+# This eclass inherits mozconfig helper functions as defined in mozcoreconf-v3,
+# and so ebuilds inheriting this eclass do not need to inherit that.
+
+inherit multilib flag-o-matic toolchain-funcs mozcoreconf-v3
+
+case ${EAPI} in
+ 0|1|2|3|4) die "EAPI=${EAPI} not supported"
+esac
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_WIFI
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild needs to provide
+# optional necko-wifi support via IUSE="wifi". Currently this would include
+# ebuilds for firefox, and potentially seamonkey.
+#
+# Leave the variable UNSET if necko-wifi support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_JIT
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild needs to provide
+# optional necko-wifi support via IUSE="jit". Currently this would include
+# ebuilds for firefox, and potentially seamonkey.
+#
+# Leave the variable UNSET if optional jit support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_GTK3
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional gtk3 support via IUSE="gtk3". Currently this would include
+# ebuilds for firefox, but thunderbird and seamonkey could follow in the future.
+#
+# Leave the variable UNSET if gtk3 support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# use-flags common among all mozilla ebuilds
+IUSE="${IUSE} dbus debug +gstreamer gstreamer-0 +jemalloc3 neon pulseaudio selinux startup-notification system-cairo system-icu system-jpeg system-sqlite system-libvpx"
+
+# some notes on deps:
+# gtk:2 minimum is technically 2.10 but gio support (enabled by default) needs 2.14
+# media-libs/mesa needs to be 10.2 or above due to a bug with flash+vdpau
+
+RDEPEND=">=app-text/hunspell-1.2
+ dev-libs/atk
+ dev-libs/expat
+ >=dev-libs/libevent-1.4.7
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-2.18:2
+ x11-libs/gdk-pixbuf
+ >=x11-libs/pango-1.22.0
+ >=media-libs/libpng-1.6.17:0=[apng]
+ >=media-libs/mesa-10.2:*
+ media-libs/fontconfig
+ >=media-libs/freetype-2.4.10
+ kernel_linux? ( media-libs/alsa-lib )
+ pulseaudio? ( media-sound/pulseaudio )
+ virtual/freedesktop-icon-theme
+ dbus? ( >=sys-apps/dbus-0.60
+ >=dev-libs/dbus-glib-0.72 )
+ startup-notification? ( >=x11-libs/startup-notification-0.8 )
+ >=dev-libs/glib-2.26:2
+ >=sys-libs/zlib-1.2.3
+ >=virtual/libffi-3.0.10
+ gstreamer? (
+ >=media-libs/gstreamer-1.4.5:1.0
+ >=media-libs/gst-plugins-base-1.4.5:1.0
+ >=media-libs/gst-plugins-good-1.4.5:1.0
+ >=media-plugins/gst-plugins-libav-1.4.5:1.0
+ )
+ gstreamer-0? (
+ >=media-libs/gstreamer-0.10.25:0.10
+ media-plugins/gst-plugins-meta:0.10[ffmpeg]
+ )
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrender
+ x11-libs/libXt
+ system-cairo? ( >=x11-libs/cairo-1.12[X,xcb] >=x11-libs/pixman-0.19.2 )
+ system-icu? ( >=dev-libs/icu-51.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+ system-sqlite? ( >=dev-db/sqlite-3.8.11.1:3[secure-delete,debug=] )
+ system-libvpx? ( >=media-libs/libvpx-1.3.0:0=[postproc] )
+"
+
+if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+ if [[ ${MOZCONFIG_OPTIONAL_GTK3} = "enabled" ]]; then
+ IUSE+=" +gtk3"
+ else
+ IUSE+=" gtk3"
+ fi
+ RDEPEND+="
+ gtk3? ( >=x11-libs/gtk+-3.14.0:3[X] )"
+fi
+if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]]; then
+ if [[ ${MOZCONFIG_OPTIONAL_WIFI} = "enabled" ]]; then
+ IUSE+=" +wifi"
+ else
+ IUSE+=" wifi"
+ fi
+ RDEPEND+="
+ wifi? (
+ kernel_linux? ( >=sys-apps/dbus-0.60
+ >=dev-libs/dbus-glib-0.72
+ net-misc/networkmanager )
+ )"
+fi
+if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
+ if [[ ${MOZCONFIG_OPTIONAL_JIT} = "enabled" ]]; then
+ IUSE+=" +jit"
+ else
+ IUSE+=" jit"
+ fi
+fi
+
+DEPEND="app-arch/zip
+ app-arch/unzip
+ >=sys-devel/binutils-2.16.1
+ ${RDEPEND}"
+
+RDEPEND+="
+ selinux? ( sec-policy/selinux-mozilla )"
+
+# only one of gstreamer and gstreamer-0 can be enabled at a time, so set REQUIRED_USE to signify this
+REQUIRED_USE="?? ( gstreamer gstreamer-0 )"
+
+# @FUNCTION: mozconfig_config
+# @DESCRIPTION:
+# Set common configure options for mozilla packages.
+# Call this within src_configure() phase, after mozconfig_init
+#
+# Example:
+#
+# inherit mozconfig-v5.33
+#
+# src_configure() {
+# mozconfig_init
+# mozconfig_config
+# # ... misc ebuild-unique settings via calls to
+# # ... mozconfig_{annotate,use_with,use_enable}
+# mozconfig_final
+# }
+
+mozconfig_config() {
+ # Migrated from mozcoreconf-2
+ mozconfig_annotate 'system_libs' \
+ --with-system-zlib \
+ --enable-pango \
+ --enable-svg \
+ --with-system-bz2
+
+ if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+ mozconfig_annotate 'gtk3 use flag' --enable-default-toolkit=$(usex gtk3 cairo-gtk3 cairo-gtk2)
+ else
+ mozconfig_annotate '' --enable-default-toolkit=cairo-gtk2
+ fi
+
+ if has bindist ${IUSE}; then
+ mozconfig_use_enable !bindist official-branding
+ if [[ ${PN} == firefox ]] && use bindist ; then
+ mozconfig_annotate '' --with-branding=browser/branding/aurora
+ fi
+ fi
+
+ mozconfig_use_enable debug
+ mozconfig_use_enable debug tests
+
+ if ! use debug ; then
+ mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
+ else
+ mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
+ fi
+
+ mozconfig_use_enable startup-notification
+
+ if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]] ; then
+ # wifi pulls in dbus so manage both here
+ mozconfig_use_enable wifi necko-wifi
+ if use kernel_linux && use wifi && ! use dbus; then
+ echo "Enabling dbus support due to wifi request"
+ mozconfig_annotate 'dbus required by necko-wifi on linux' --enable-dbus
+ else
+ mozconfig_use_enable dbus
+ fi
+ else
+ mozconfig_use_enable dbus
+ mozconfig_annotate 'disabled' --disable-necko-wifi
+ fi
+
+ # These are forced-on for webm support
+ mozconfig_annotate 'required' --enable-ogg
+ mozconfig_annotate 'required' --enable-wave
+
+ if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
+ mozconfig_use_enable jit ion
+ fi
+
+ # These are enabled by default in all mozilla applications
+ mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --with-system-nss --with-nss-prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --x-includes="${EPREFIX}"/usr/include --x-libraries="${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate '' --with-system-libevent="${EPREFIX}"/usr
+ mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate 'Gentoo default' --enable-system-hunspell
+ mozconfig_annotate '' --disable-gnomevfs
+ mozconfig_annotate '' --disable-gnomeui
+ mozconfig_annotate '' --enable-gio
+ mozconfig_annotate '' --disable-crashreporter
+ mozconfig_annotate 'Gentoo default' --with-system-png
+ mozconfig_annotate '' --enable-system-ffi
+ mozconfig_annotate 'Gentoo default to honor system linker' --disable-gold
+ mozconfig_annotate 'Gentoo default' --disable-skia
+ mozconfig_annotate '' --disable-gconf
+
+ # Use jemalloc unless libc is not glibc >= 2.4
+ # at this time the minimum glibc in the tree is 2.9 so we should be safe.
+ if use elibc_glibc && use jemalloc3; then
+ # We must force-enable jemalloc 3 via .mozconfig
+ echo "export MOZ_JEMALLOC3=1" >> "${S}"/.mozconfig || die
+ mozconfig_annotate '' --enable-jemalloc
+ mozconfig_annotate '' --enable-replace-malloc
+ fi
+
+ mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
+ mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
+
+ if use gstreamer ; then
+ mozconfig_annotate '+gstreamer' --enable-gstreamer=1.0
+ elif use gstreamer-0 ; then
+ mozconfig_annotate '+gstreamer-0' --enable-gstreamer=0.10
+ else
+ mozconfig_annotate '' --disable-gstreamer
+ fi
+ mozconfig_use_enable pulseaudio
+
+ mozconfig_use_enable system-cairo
+ mozconfig_use_enable system-sqlite
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-icu intl-api
+ mozconfig_use_with system-libvpx
+
+ # Modifications to better support ARM, bug 553364
+ if use neon ; then
+ mozconfig_annotate '' --with-fpu=neon
+ mozconfig_annotate '' --with-thumb=yes
+ mozconfig_annotate '' --with-thumb-interwork=no
+ fi
+ if [[ ${CHOST} == armv* ]] ; then
+ mozconfig_annotate '' --with-float-abi=hard
+ mozconfig_annotate '' --enable-skia
+
+ if ! use system-libvpx ; then
+ sed -i -e "s|softfp|hard|" \
+ "${S}"/media/libvpx/moz.build
+ fi
+ fi
+}
diff --git a/eclass/mozconfig-v6.44.eclass b/eclass/mozconfig-v6.44.eclass
new file mode 100644
index 0000000..fbbb070
--- /dev/null
+++ b/eclass/mozconfig-v6.44.eclass
@@ -0,0 +1,341 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+#
+# @ECLASS: mozconfig-v6.40.eclass
+# @MAINTAINER:
+# mozilla team <mozilla@gentoo.org>
+# @BLURB: the new mozilla common configuration eclass for FF33 and newer, v6
+# @DESCRIPTION:
+# This eclass is used in mozilla ebuilds (firefox, thunderbird, seamonkey)
+# to provide a single common place for the common mozilla engine compoments.
+#
+# The eclass provides all common dependencies as well as common use flags.
+#
+# Some use flags which may be optional in particular mozilla packages can be
+# supported through setting eclass variables.
+#
+# This eclass inherits mozconfig helper functions as defined in mozcoreconf-v3,
+# and so ebuilds inheriting this eclass do not need to inherit that.
+
+inherit multilib flag-o-matic toolchain-funcs mozcoreconf-v3
+
+case ${EAPI} in
+ 0|1|2|3|4) die "EAPI=${EAPI} not supported"
+esac
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_WIFI
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild needs to provide
+# optional necko-wifi support via IUSE="wifi". Currently this would include
+# ebuilds for firefox, and potentially seamonkey.
+#
+# Leave the variable UNSET if necko-wifi support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_JIT
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild needs to provide
+# optional necko-wifi support via IUSE="jit". Currently this would include
+# ebuilds for firefox, and potentially seamonkey.
+#
+# Leave the variable UNSET if optional jit support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_GTK3
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional gtk3 support via IUSE="gtk3". Currently this would include
+# ebuilds for firefox, but thunderbird and seamonkey could follow in the future.
+#
+# Leave the variable UNSET if gtk3 support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_QT5
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional qt5 support via IUSE="qt5". Currently this would include
+# ebuilds for firefox, but thunderbird and seamonkey could follow in the future.
+#
+# Leave the variable UNSET if qt5 support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# use-flags common among all mozilla ebuilds
+IUSE="${IUSE} dbus debug ffmpeg +gstreamer gstreamer-0 +jemalloc3 neon pulseaudio selinux startup-notification system-cairo
+ system-icu system-jpeg system-libevent system-sqlite system-libvpx"
+
+# some notes on deps:
+# gtk:2 minimum is technically 2.10 but gio support (enabled by default) needs 2.14
+# media-libs/mesa needs to be 10.2 or above due to a bug with flash+vdpau
+
+RDEPEND=">=app-text/hunspell-1.2
+ dev-libs/atk
+ dev-libs/expat
+ >=dev-libs/libevent-1.4.7
+ >=x11-libs/cairo-1.10[X]
+ >=x11-libs/gtk+-2.18:2
+ x11-libs/gdk-pixbuf
+ >=x11-libs/pango-1.22.0
+ >=media-libs/libpng-1.6.17:0=[apng]
+ >=media-libs/mesa-10.2:*
+ media-libs/fontconfig
+ >=media-libs/freetype-2.4.10
+ kernel_linux? ( media-libs/alsa-lib )
+ pulseaudio? ( media-sound/pulseaudio )
+ virtual/freedesktop-icon-theme
+ dbus? ( >=sys-apps/dbus-0.60
+ >=dev-libs/dbus-glib-0.72 )
+ startup-notification? ( >=x11-libs/startup-notification-0.8 )
+ >=dev-libs/glib-2.26:2
+ >=sys-libs/zlib-1.2.3
+ >=virtual/libffi-3.0.10
+ ffmpeg? ( virtual/ffmpeg[mp3,x264] )
+ gstreamer? (
+ >=media-libs/gstreamer-1.4.5:1.0
+ >=media-libs/gst-plugins-base-1.4.5:1.0
+ >=media-libs/gst-plugins-good-1.4.5:1.0
+ >=media-plugins/gst-plugins-libav-1.4.5:1.0
+ )
+ gstreamer-0? (
+ >=media-libs/gstreamer-0.10.25:0.10
+ media-plugins/gst-plugins-meta:0.10[ffmpeg]
+ )
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXrender
+ x11-libs/libXt
+ system-cairo? ( >=x11-libs/cairo-1.12[X,xcb] >=x11-libs/pixman-0.19.2 )
+ system-icu? ( >=dev-libs/icu-51.1:= )
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+ system-libevent? ( =dev-libs/libevent-2.0* )
+ system-sqlite? ( >=dev-db/sqlite-3.9.1:3[secure-delete,debug=] )
+ system-libvpx? ( >=media-libs/libvpx-1.3.0:0=[postproc] )
+"
+
+if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+ if [[ ${MOZCONFIG_OPTIONAL_GTK3} = "enabled" ]]; then
+ IUSE+=" +gtk3"
+ else
+ IUSE+=" gtk3"
+ fi
+ RDEPEND+="
+ gtk3? ( >=x11-libs/gtk+-3.4.0:3[X] )"
+fi
+if [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]]; then
+ inherit qmake-utils
+ if [[ ${MOZCONFIG_OPTIONAL_QT5} = "enabled" ]]; then
+ IUSE+=" +qt5"
+ else
+ IUSE+=" qt5"
+ fi
+ RDEPEND+="
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ dev-qt/qtdeclarative:5
+ )"
+fi
+if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]]; then
+ if [[ ${MOZCONFIG_OPTIONAL_WIFI} = "enabled" ]]; then
+ IUSE+=" +wifi"
+ else
+ IUSE+=" wifi"
+ fi
+ RDEPEND+="
+ wifi? (
+ kernel_linux? ( >=sys-apps/dbus-0.60
+ >=dev-libs/dbus-glib-0.72
+ net-misc/networkmanager )
+ )"
+fi
+if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
+ if [[ ${MOZCONFIG_OPTIONAL_JIT} = "enabled" ]]; then
+ IUSE+=" +jit"
+ else
+ IUSE+=" jit"
+ fi
+fi
+
+DEPEND="app-arch/zip
+ app-arch/unzip
+ >=sys-devel/binutils-2.16.1
+ ${RDEPEND}"
+
+RDEPEND+="
+ selinux? ( sec-policy/selinux-mozilla )"
+
+# only one of gstreamer and gstreamer-0 can be enabled at a time, so set REQUIRED_USE to signify this
+REQUIRED_USE="?? ( gstreamer gstreamer-0 )"
+
+# only one of gtk3 or qt5 should be permitted to be selected, since only one will be used.
+[[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]] && [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]] && \
+ REQUIRED_USE+=" ?? ( gtk3 qt5 )"
+
+# @FUNCTION: mozconfig_config
+# @DESCRIPTION:
+# Set common configure options for mozilla packages.
+# Call this within src_configure() phase, after mozconfig_init
+#
+# Example:
+#
+# inherit mozconfig-v5.33
+#
+# src_configure() {
+# mozconfig_init
+# mozconfig_config
+# # ... misc ebuild-unique settings via calls to
+# # ... mozconfig_{annotate,use_with,use_enable}
+# mozconfig_final
+# }
+
+mozconfig_config() {
+ # Migrated from mozcoreconf-2
+ mozconfig_annotate 'system_libs' \
+ --with-system-zlib \
+ --enable-pango \
+ --enable-svg \
+ --with-system-bz2
+
+ if has bindist ${IUSE}; then
+ mozconfig_use_enable !bindist official-branding
+ if [[ ${PN} == firefox ]] && use bindist ; then
+ mozconfig_annotate '' --with-branding=browser/branding/aurora
+ fi
+ fi
+
+ mozconfig_use_enable debug
+ mozconfig_use_enable debug tests
+
+ if ! use debug ; then
+ mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
+ else
+ mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
+ fi
+
+ mozconfig_use_enable startup-notification
+
+ if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]] ; then
+ # wifi pulls in dbus so manage both here
+ mozconfig_use_enable wifi necko-wifi
+ if use kernel_linux && use wifi && ! use dbus; then
+ echo "Enabling dbus support due to wifi request"
+ mozconfig_annotate 'dbus required by necko-wifi on linux' --enable-dbus
+ else
+ mozconfig_use_enable dbus
+ fi
+ else
+ mozconfig_use_enable dbus
+ mozconfig_annotate 'disabled' --disable-necko-wifi
+ fi
+
+ # These are forced-on for webm support
+ mozconfig_annotate 'required' --enable-ogg
+ mozconfig_annotate 'required' --enable-wave
+
+ if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
+ mozconfig_use_enable jit ion
+ fi
+
+ # These are enabled by default in all mozilla applications
+ mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --with-system-nss --with-nss-prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --x-includes="${EPREFIX}"/usr/include --x-libraries="${EPREFIX}"/usr/$(get_libdir)
+ if use system-libevent; then
+ mozconfig_annotate '' --with-system-libevent="${EPREFIX}"/usr
+ fi
+ mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+ mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+ mozconfig_annotate 'Gentoo default' --enable-system-hunspell
+ mozconfig_annotate '' --disable-gnomeui
+ mozconfig_annotate '' --enable-gio
+ mozconfig_annotate '' --disable-crashreporter
+ mozconfig_annotate 'Gentoo default' --with-system-png
+ mozconfig_annotate '' --enable-system-ffi
+ mozconfig_annotate 'Gentoo default to honor system linker' --disable-gold
+ mozconfig_annotate 'Gentoo default' --disable-skia
+ mozconfig_annotate '' --disable-gconf
+ mozconfig_annotate '' --with-intl-api
+
+ # default toolkit is cairo-gtk2, optional use flags can change this
+ local toolkit="cairo-gtk2"
+ local toolkit_comment=""
+ if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+ if use gtk3; then
+ toolkit="cairo-gtk3"
+ toolkit_comment="gtk3 use flag"
+ fi
+ fi
+ if [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]]; then
+ if use qt5; then
+ toolkit="cairo-qt"
+ toolkit_comment="qt5 use flag"
+ # need to specify these vars because the qt5 versions are not found otherwise,
+ # and setting --with-qtdir overrides the pkg-config include dirs
+ local i
+ for i in qmake moc rcc; do
+ echo "export HOST_${i^^}=\"$(qt5_get_bindir)/${i}\"" \
+ >> "${S}"/.mozconfig || die
+ done
+ echo 'unset QTDIR' >> "${S}"/.mozconfig || die
+ mozconfig_annotate '+qt5' --disable-gio
+ fi
+ fi
+ mozconfig_annotate "${toolkit_comment}" --enable-default-toolkit=${toolkit}
+
+ # Use jemalloc unless libc is not glibc >= 2.4
+ # at this time the minimum glibc in the tree is 2.9 so we should be safe.
+ if use elibc_glibc && use jemalloc3; then
+ # We must force-enable jemalloc 3 via .mozconfig
+ echo "export MOZ_JEMALLOC3=1" >> "${S}"/.mozconfig || die
+ mozconfig_annotate '' --enable-jemalloc
+ mozconfig_annotate '' --enable-replace-malloc
+ fi
+
+ mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
+ mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
+
+ use ffmpeg || mozconfig_annotate '-ffmpeg' --disable-ffmpeg
+ if use gstreamer ; then
+ use ffmpeg && einfo "${PN} will not use ffmpeg unless gstreamer:1.0 is not available at runtime"
+ mozconfig_annotate '+gstreamer' --enable-gstreamer=1.0
+ elif use gstreamer-0 ; then
+ use ffmpeg && einfo "${PN} will not use ffmpeg unless gstreamer:0.10 is not available at runtime"
+ mozconfig_annotate '+gstreamer-0' --enable-gstreamer=0.10
+ else
+ mozconfig_annotate '' --disable-gstreamer
+ fi
+ mozconfig_use_enable pulseaudio
+
+ mozconfig_use_enable system-cairo
+ mozconfig_use_enable system-sqlite
+ mozconfig_use_with system-jpeg
+ mozconfig_use_with system-icu
+ mozconfig_use_with system-libvpx
+
+ # Modifications to better support ARM, bug 553364
+ if use neon ; then
+ mozconfig_annotate '' --with-fpu=neon
+ mozconfig_annotate '' --with-thumb=yes
+ mozconfig_annotate '' --with-thumb-interwork=no
+ fi
+ if [[ ${CHOST} == armv* ]] ; then
+ mozconfig_annotate '' --with-float-abi=hard
+ mozconfig_annotate '' --enable-skia
+
+ if ! use system-libvpx ; then
+ sed -i -e "s|softfp|hard|" \
+ "${S}"/media/libvpx/moz.build
+ fi
+ fi
+}
diff --git a/mail-client/thunderbird/Manifest b/mail-client/thunderbird/Manifest
new file mode 100644
index 0000000..b1c0ace
--- /dev/null
+++ b/mail-client/thunderbird/Manifest
@@ -0,0 +1,13 @@
+AUX icon/thunderbird-unbranded.desktop 228 SHA256 6d6857476dc288d2470211869b3ad13241f938f2995ae273831fefefdeb64fe9 SHA512 c118873cd701f3582d18ebf5c9622b4c593bd9bae51079ec3daf9fd54aceb4b1406f2de20cc08499ced752cc7b4b2183de6777693c5e6853e47714a4df2a6e4a WHIRLPOOL 2df96beec8c941dddeb5e60d6c811f2456453e050e94e3552bcddddd0e951bfa589b64980bd9756e55a2d98611565d092d26d1d2d171b5651a7431ac077c5bca
+AUX icon/thunderbird.desktop 218 SHA256 9e801b52b5f22086d38c3609dec28fc709708a5be1101809c68d17762bd596d6 SHA512 0cbe132759012c0da6f81f37d4ede62d2f4138f0d95e590da6259d7593ad858de28467b393e5d6129a6d37d61afa9b078df0f5a8b6a259189860653c44350a72 WHIRLPOOL 96425123ccc3cbf656c841dbd58812a76802a76b4acf4409ba171792ab0b1c120dc75dea8541a1cd6a2db1ab7ef32bf29477ef7670bf97adacd2e353bef042fd
+AUX musl/thunderbird-38.3.0-updater.patch 1344 SHA256 5f07ba110fcc1ee39e352af94786428d4e2c8c7924fe3a337942ffb572da0229 SHA512 56ebff8aaa054ae3a8e9859e77cee5c0b94867d5565399594d89b76f21a6eb1bd6546a878a259229d59c6eed9458e23c64da07c337a43c677cce1bc1d00d2a62 WHIRLPOOL 8fab4d24141c139cac5ac3779838967089d6692e94a2963b85302f619b74c8d53e83d14c07d3b9a0322a941dd90925495eba6c45a35916e6791520f67cac5dd9
+AUX musl/thunderbird-44.0b1-remove-libevent-sysctl.patch 3165 SHA256 edc8df0ab0965296d137896708e90e6efd5d1cc1fd56c467f73ab14ec5145fd3 SHA512 39e103477edc8ef0bcb4c81d3257827d64d5fa9eeaff3291445e81eb7f37f50dbf7a8948dac18baa2ae1706c3829a19af491feee91d87a6035840b06bc107a80 WHIRLPOOL 85e23a3fd8304519b047ed239c6aee1758941fb35ccacfcbd5dc7048a852b9c04c4d66bb2aa4ba0ca915fc38ae91c31650086fdb5ce4582659079204ec8aca30
+AUX thunderbird-44.0_beta1-fix-preferences-gentoo.patch 410 SHA256 39031668367067c3547e6ac1b561ce71eb80b4097a23bc7ac51127f997c61fd7 SHA512 9c43f79a1501567d2fccfc70635076c25a86fa6cc031ecc497667a0c1bab483136289faa2561dcb984a0c9e2190f866b46d25a95903776a12581a498a94f8c7d WHIRLPOOL 1ea97ec062b6944977748db9fccec8fcb0e80355b18c01290fc4c9a64225d17f6b7a7357948a3613bcc77afceb56d409862c792af513aa997077cbe4fb216dbb
+AUX thunderbird-gentoo-default-prefs-1.js-1 509 SHA256 a14a5d01ebb639ea7279b07edc4ed350cb87310d769596715e26deeec3ec6e39 SHA512 d9374ce873ca4d723eea29c2ba28b5a18e5d19dadff87720353d402348daca28d2e69bc5c0f9ce53dc68f06858505e06d8b915c309caef3e90d1502c4223d599 WHIRLPOOL 6cf9d914cb4155b1c6140db6f7a97ed7aeda3e0269768b6c4c651cfcf678e14f180527a2525be8a7570e5143b5052f6a1ef44277fd7f609962aa8ebef50b74d8
+DIST enigmail-1.8.2.tar.gz 1604159 SHA256 1d2700799bc52aaa8e8c9f7a0f5111281ff9fbdffc093cdff070657d574eb2a6 SHA512 51eece988f466aeb4a343719a86dc7d95ec41dfc3ec7e3d8d2f360528675c605f8f2154f10aeea6ef82ed87c784f1d13bfc978e052a9ede0072b5137f6294b11 WHIRLPOOL e12a703899e0e4c98adc58b5f4bf1f74e24a2cf09c1a706a6edca6aca06140041b293f23e6e5b05c507177b4148533ebc3431fb75592aae07d791a899ba2c45c
+DIST firefox-44.0-patches-0.4.tar.xz 14240 SHA256 cf17d24e19c8e64501582c77e010a10bf8cc65fc1d7620f7a8dd98706195eda0 SHA512 4f597f9885366a6ccbd7cf424fd68bc7d2377eeb5de4741b21d6f51272a9f4f6a57ff2b5a848593097e79d51a7ae7e6e261aea9155f4b3d719e74ebbdf7279f1 WHIRLPOOL 097eb79a5aba97f76d50f5f51da8b089c3d85b34c6a41d6ca782a85381f024d8865062d95ff4bb2235426e3806b660344d3ddf067da0889cda66f0b24cb97912
+DIST gdata-provider-1.9.tar.xz 80812 SHA256 8e60960999c752c49d6414d14c35c2d0cc474d4a199ec99e531453d4d60bc5a3 SHA512 b1411b0a8614eb5e9fbdc0a41eb5ed38e8d4c90832e2a356fd0412b554af46bde4b766b213d9da3cafd85206da44d333354c9f6b469c95ddb190fa04fe14a54a WHIRLPOOL df7451e55f937c604d92faed82a16bddd6ca87a7c03981324c5409ab5824ac1c631ec767f10eaedc6f7128cd1f9001eca599c848d39e116d9722f26811b01092
+DIST lightning-4.0.5.tar.xz 2312932 SHA256 8386208ecb915172a48d77fc758f5040933c13619c0f9d820903ce37ba610184 SHA512 9f1fbec0520d24158af78ffe8a790502fd2843facd17bac2e278006d7b1998067b5803e1fa2e3172511d298cebb4e0b7047edb7b0aa18a8dc4712d0f1e2e08d3 WHIRLPOOL 8f6074f6038fda3a4946ea8fe788194cb2eda0c7e4a6c68a7c349781b8acb7602a70baf66bd5148ebd712e197cf4974268b5f40cedec520280c355e4f03de701
+DIST thunderbird-44.0b1.source.tar.xz 199016060 SHA256 335d2af71bd3767b643a09b558800ebf2182688f9e61fbf98b713a2b43fa418c SHA512 677119247061b6b89f781952c287d924fa77f841f6c67313808f5bfc9b7088322c22170a4981c5666b9f5b9779792f055394b18e077a1cbfc2076f2beddaf960 WHIRLPOOL b543f2fff5efdce908e4fe1b74485ce48c61cf494c69a716365a5d4fd0e97ab58bcf3f91c3a1690df4e27d1c1fcf5b99db4bf6c1ac1d710d8688acb449d02949
+EBUILD thunderbird-44.0_beta1-r99.ebuild 12140 SHA256 433ecb01abefe4d281fced7b438c6b93c6266f5b3d421c368dfbde08a1527dfa SHA512 b3b8ab4850fd4a6de2aafb6692476728e1a6efc7806d15e5d920ed400be9e86a40f9a447a73cf58b6b1c4e980e345b598f6e460ed52cc12be557746b5f0bc5c9 WHIRLPOOL 2b861d5df1380b751c8453011246152e7506cf5f6e09e68e3d0cc36854dfdadfdcb5b0be58e6a7ee8ac11e582187bbf5e086dec073c3a09e902b1c1f671c748f
+MISC metadata.xml 1499 SHA256 9e77bf6b427591dfdb3ef9962bbc1f2cf06c56c40481fb01ff4dde58b384ada5 SHA512 9b221808f226c1e1cc0cebd0abdf3b262eaed0c3392e8302fd1933141bf95840ab40bb1869b998d51d59a85fb83709963a21c114406c2a720f89d09bc0838d39 WHIRLPOOL c0398b529a65726b321968da4bbab0c156f418a01be51d2b7533589e726a93c28200035c4e664dbea4b90622d285f68464d4774e53e5c72d8292a1910233f36e
diff --git a/mail-client/thunderbird/files/icon/thunderbird-unbranded.desktop b/mail-client/thunderbird/files/icon/thunderbird-unbranded.desktop
new file mode 100644
index 0000000..f9d87be
--- /dev/null
+++ b/mail-client/thunderbird/files/icon/thunderbird-unbranded.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Mozilla Thunderbird
+Comment=Mail & News Reader
+Exec=/usr/bin/thunderbird %u
+Icon=thunderbird-icon-unbranded
+Terminal=false
+Type=Application
+Categories=Office;Network;Email;
+MimeType=x-scheme-handler/mailto;
diff --git a/mail-client/thunderbird/files/icon/thunderbird.desktop b/mail-client/thunderbird/files/icon/thunderbird.desktop
new file mode 100644
index 0000000..f9c31eb
--- /dev/null
+++ b/mail-client/thunderbird/files/icon/thunderbird.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Mozilla Thunderbird
+Comment=Mail & News Reader
+Exec=/usr/bin/thunderbird %u
+Icon=thunderbird-icon
+Terminal=false
+Type=Application
+Categories=Office;Network;Email;
+MimeType=x-scheme-handler/mailto;
diff --git a/mail-client/thunderbird/files/musl/thunderbird-38.3.0-updater.patch b/mail-client/thunderbird/files/musl/thunderbird-38.3.0-updater.patch
new file mode 100644
index 0000000..ce892d6
--- /dev/null
+++ b/mail-client/thunderbird/files/musl/thunderbird-38.3.0-updater.patch
@@ -0,0 +1,43 @@
+# HG changeset patch
+# User Felix Janda <felix.janda@posteo.de>
+# Date 1428142217 -7200
+# Sat Apr 04 12:10:17 2015 +0200
+# Node ID c04cc88f3bb26e254356df6de06583a542ae6796
+# Parent 90adc073cbc6398f4fab9b1cd07b685368559f34
+# https://bugzilla.mozilla.org/show_bug.cgi?id=1157850
+updater: no fts.h and MAXNAMLEN
+
+diff -r 90adc073cbc6 -r c04cc88f3bb2 toolkit/mozapps/update/common/updatedefines.h
+--- a/mozilla/toolkit/mozapps/update/common/updatedefines.h Thu Apr 02 08:10:00 2015 -0400
++++ b/mozilla/toolkit/mozapps/update/common/updatedefines.h Sat Apr 04 12:10:17 2015 +0200
+@@ -109,7 +109,7 @@
+ # include <sys/wait.h>
+ # include <unistd.h>
+
+-#ifdef SOLARIS
++#if 1
+ # include <sys/stat.h>
+ #else
+ # include <fts.h>
+diff -r 90adc073cbc6 -r c04cc88f3bb2 toolkit/mozapps/update/updater/updater.cpp
+--- a/mozilla/toolkit/mozapps/update/updater/updater.cpp Thu Apr 02 08:10:00 2015 -0400
++++ b/mozilla/toolkit/mozapps/update/updater/updater.cpp Sat Apr 04 12:10:17 2015 +0200
+@@ -3338,7 +3338,8 @@
+ return rv;
+ }
+
+-#elif defined(SOLARIS)
++#elif 1
++//#defined(SOLARIS)
+ int add_dir_entries(const NS_tchar *dirpath, ActionList *list)
+ {
+ int rv = OK;
+@@ -3346,7 +3347,7 @@
+ NS_tchar foundpath[MAXPATHLEN];
+ struct {
+ dirent dent_buffer;
+- char chars[MAXNAMLEN];
++ char chars[NAME_MAX];
+ } ent_buf;
+ struct dirent* ent;
+
diff --git a/mail-client/thunderbird/files/musl/thunderbird-44.0b1-remove-libevent-sysctl.patch b/mail-client/thunderbird/files/musl/thunderbird-44.0b1-remove-libevent-sysctl.patch
new file mode 100644
index 0000000..99ff67c
--- /dev/null
+++ b/mail-client/thunderbird/files/musl/thunderbird-44.0b1-remove-libevent-sysctl.patch
@@ -0,0 +1,115 @@
+--- thunderbird-44.0b1/mozilla/ipc/chromium/src/third_party/libevent/arc4random.c.orig 2016-01-24 12:09:11.209680105 +0100
++++ thunderbird-44.0b1/mozilla/ipc/chromium/src/third_party/libevent/arc4random.c 2016-01-24 12:17:06.616663364 +0100
+@@ -58,9 +58,6 @@
+ #include <unistd.h>
+ #include <sys/param.h>
+ #include <sys/time.h>
+-#ifdef _EVENT_HAVE_SYS_SYSCTL_H
+-#include <sys/sysctl.h>
+-#endif
+ #endif
+ #include <limits.h>
+ #include <stdlib.h>
+@@ -167,85 +164,6 @@
+ }
+ #endif
+
+-#if defined(_EVENT_HAVE_SYS_SYSCTL_H) && defined(_EVENT_HAVE_SYSCTL)
+-#if _EVENT_HAVE_DECL_CTL_KERN && _EVENT_HAVE_DECL_KERN_RANDOM && _EVENT_HAVE_DECL_RANDOM_UUID
+-#define TRY_SEED_SYSCTL_LINUX
+-static int
+-arc4_seed_sysctl_linux(void)
+-{
+- /* Based on code by William Ahern, this function tries to use the
+- * RANDOM_UUID sysctl to get entropy from the kernel. This can work
+- * even if /dev/urandom is inaccessible for some reason (e.g., we're
+- * running in a chroot). */
+- int mib[] = { CTL_KERN, KERN_RANDOM, RANDOM_UUID };
+- unsigned char buf[ADD_ENTROPY];
+- size_t len, n;
+- unsigned i;
+- int any_set;
+-
+- memset(buf, 0, sizeof(buf));
+-
+- for (len = 0; len < sizeof(buf); len += n) {
+- n = sizeof(buf) - len;
+-
+- if (0 != sysctl(mib, 3, &buf[len], &n, NULL, 0))
+- return -1;
+- }
+- /* make sure that the buffer actually got set. */
+- for (i=0,any_set=0; i<sizeof(buf); ++i) {
+- any_set |= buf[i];
+- }
+- if (!any_set)
+- return -1;
+-
+- arc4_addrandom(buf, sizeof(buf));
+- memset(buf, 0, sizeof(buf));
+- arc4_seeded_ok = 1;
+- return 0;
+-}
+-#endif
+-
+-#if _EVENT_HAVE_DECL_CTL_KERN && _EVENT_HAVE_DECL_KERN_ARND
+-#define TRY_SEED_SYSCTL_BSD
+-static int
+-arc4_seed_sysctl_bsd(void)
+-{
+- /* Based on code from William Ahern and from OpenBSD, this function
+- * tries to use the KERN_ARND syscall to get entropy from the kernel.
+- * This can work even if /dev/urandom is inaccessible for some reason
+- * (e.g., we're running in a chroot). */
+- int mib[] = { CTL_KERN, KERN_ARND };
+- unsigned char buf[ADD_ENTROPY];
+- size_t len, n;
+- int i, any_set;
+-
+- memset(buf, 0, sizeof(buf));
+-
+- len = sizeof(buf);
+- if (sysctl(mib, 2, buf, &len, NULL, 0) == -1) {
+- for (len = 0; len < sizeof(buf); len += sizeof(unsigned)) {
+- n = sizeof(unsigned);
+- if (n + len > sizeof(buf))
+- n = len - sizeof(buf);
+- if (sysctl(mib, 2, &buf[len], &n, NULL, 0) == -1)
+- return -1;
+- }
+- }
+- /* make sure that the buffer actually got set. */
+- for (i=any_set=0; i<sizeof(buf); ++i) {
+- any_set |= buf[i];
+- }
+- if (!any_set)
+- return -1;
+-
+- arc4_addrandom(buf, sizeof(buf));
+- memset(buf, 0, sizeof(buf));
+- arc4_seeded_ok = 1;
+- return 0;
+-}
+-#endif
+-#endif /* defined(_EVENT_HAVE_SYS_SYSCTL_H) */
+-
+ #ifdef __linux__
+ #define TRY_SEED_PROC_SYS_KERNEL_RANDOM_UUID
+ static int
+@@ -340,16 +258,6 @@
+ if (0 == arc4_seed_proc_sys_kernel_random_uuid())
+ ok = 1;
+ #endif
+-#ifdef TRY_SEED_SYSCTL_LINUX
+- /* Apparently Linux is deprecating sysctl, and spewing warning
+- * messages when you try to use it. */
+- if (!ok && 0 == arc4_seed_sysctl_linux())
+- ok = 1;
+-#endif
+-#ifdef TRY_SEED_SYSCTL_BSD
+- if (0 == arc4_seed_sysctl_bsd())
+- ok = 1;
+-#endif
+ return ok ? 0 : -1;
+ }
+
diff --git a/mail-client/thunderbird/files/thunderbird-44.0_beta1-fix-preferences-gentoo.patch b/mail-client/thunderbird/files/thunderbird-44.0_beta1-fix-preferences-gentoo.patch
new file mode 100644
index 0000000..ec26160
--- /dev/null
+++ b/mail-client/thunderbird/files/thunderbird-44.0_beta1-fix-preferences-gentoo.patch
@@ -0,0 +1,10 @@
+--- a/mail/installer/package-manifest.in 2012-02-12 09:04:32.000000000 -0600
++++ b/mail/installer/package-manifest.in 2012-02-12 09:05:17.000000000 -0600
+@@ -336,6 +336,7 @@
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+ ; default pref files
++@RESPATH@/defaults/pref/all-gentoo.js
+ @RESPATH@/defaults/pref/all-thunderbird.js
+ @RESPATH@/defaults/pref/channel-prefs.js
+ @RESPATH@/defaults/pref/composer.js
diff --git a/mail-client/thunderbird/files/thunderbird-gentoo-default-prefs-1.js-1 b/mail-client/thunderbird/files/thunderbird-gentoo-default-prefs-1.js-1
new file mode 100644
index 0000000..87fb7a5
--- /dev/null
+++ b/mail-client/thunderbird/files/thunderbird-gentoo-default-prefs-1.js-1
@@ -0,0 +1,10 @@
+pref("app.update.enabled", false);
+pref("app.update.autoInstallEnabled", false);
+pref("browser.display.use_system_colors", true);
+pref("intl.locale.matchOS", true);
+pref("general.useragent.locale", "chrome://global/locale/intl.properties");
+pref("mail.shell.checkDefaultClient", false);
+# Do not switch to Smart Folders after upgrade to 3.0b4
+pref("mail.folder.views.version", "1");
+pref("extensions.autoDisableScopes", 0);
+pref("mail.serverDefaultStoreContractID", "@mozilla.org/msgstore/maildirstore;1");
diff --git a/mail-client/thunderbird/metadata.xml b/mail-client/thunderbird/metadata.xml
new file mode 100644
index 0000000..71406ae
--- /dev/null
+++ b/mail-client/thunderbird/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>mozilla</herd>
+<use>
+ <flag name="bindist">Disable official Thunderbird branding (icons, name) which
+ are not binary-redistributable according to upstream.</flag>
+ <flag name='crypt'> Enable encryption support with enigmail</flag>
+ <flag name='mozdom'>Enable Mozilla's DOM inspector</flag>
+ <flag name='lightning'>Enable app-global calendar support
+ (note 38.0 and above bundles calendar support when this flag is off)</flag>
+ <flag name='custom-optimization'>Fine-tune custom compiler optimizations
+ (-Os, -O0, -O1, -O2, -O3)</flag>
+ <flag name="jemalloc3">Enable or disable jemalloc3 (forced-on when supported prior to 38.0)</flag>
+ <flag name='gstreamer-0'>Use gstreamer:0.10 instead of gstreamer:1 for media support</flag>
+ <flag name="system-cairo">Use the system-wide <pkg>x11-libs/cairo</pkg>
+ instead of bundled.</flag>
+ <flag name="system-icu">Use the system-wide <pkg>dev-libs/icu</pkg>
+ instead of bundled.</flag>
+ <flag name="system-jpeg">Use the system-wide <pkg>media-libs/libjpeg-turbo</pkg>
+ instead of bundled.</flag>
+ <flag name="system-libvpx">Use the system-wide <pkg>media-libs/libvpx</pkg>
+ instead of bundled.</flag>
+ <flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
+ installation with secure-delete enabled</flag>
+ <flag name="minimal">Remove the software development kit and headers</flag>
+</use>
+</pkgmetadata>
diff --git a/mail-client/thunderbird/thunderbird-44.0_beta1-r99.ebuild b/mail-client/thunderbird/thunderbird-44.0_beta1-r99.ebuild
new file mode 100644
index 0000000..1e59959
--- /dev/null
+++ b/mail-client/thunderbird/thunderbird-44.0_beta1-r99.ebuild
@@ -0,0 +1,384 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+MOZ_LIGHTNING_VER="4.0.5"
+MOZ_LIGHTNING_GDATA_VER="1.9"
+
+# This list can be updated using scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=(ar ast be bg bn-BD br ca cs cy da de el en en-GB en-US es-AR
+es-ES et eu fi fr fy-NL ga-IE gd gl he hr hsb hu hy-AM id is it ja ko lt
+nb-NO nl nn-NO pa-IN pl pt-BR pt-PT rm ro ru si sk sl sq sr sv-SE ta-LK tr
+uk vi zh-CN zh-TW )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${PV/_beta/b}"
+# ESR releases have slightly version numbers
+if [[ ${MOZ_ESR} == 1 ]]; then
+ MOZ_PV="${MOZ_PV}esr"
+fi
+MOZ_P="${PN}-${MOZ_PV}"
+
+# Enigmail version
+EMVER="1.8.2"
+
+# Patches
+PATCHFF="firefox-44.0-patches-0.4"
+
+MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases"
+
+MOZCONFIG_OPTIONAL_JIT="enabled"
+inherit flag-o-matic toolchain-funcs mozconfig-v6.44 makeedit multilib autotools pax-utils check-reqs nsplugins mozlinguas
+
+DESCRIPTION="Thunderbird Mail Client"
+HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/"
+
+KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist crypt hardened ldap lightning +minimal mozdom selinux"
+RESTRICT="!bindist? ( bindist )"
+
+# URI for upstream lightning package (when it is available)
+#${MOZ_HTTP_URI/${PN}/calendar/lightning}/${MOZ_LIGHTNING_VER}/linux/lightning.xpi -> lightning-${MOZ_LIGHTNING_VER}.xpi
+PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCHFF}.tar.xz )
+SRC_URI="${SRC_URI}
+ ${MOZ_HTTP_URI}/${MOZ_PV}/source/${MOZ_P}.source.tar.xz
+ lightning? (
+ https://dev.gentoo.org/~axs/distfiles/lightning-${MOZ_LIGHTNING_VER}.tar.xz
+ https://dev.gentoo.org/~axs/distfiles/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.tar.xz
+ )
+ crypt? ( http://www.enigmail.net/download/source/enigmail-${EMVER}.tar.gz )
+ ${PATCH_URIS[@]}"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+CDEPEND="
+ >=dev-libs/nss-3.19.2
+ >=dev-libs/nspr-4.10.10
+ !x11-plugins/enigmail
+ elibc_musl? ( sys-libs/queue )
+ crypt? ( || (
+ ( >=app-crypt/gnupg-2.1.8
+ || (
+ app-crypt/pinentry[gtk]
+ app-crypt/pinentry[qt4]
+ )
+ )
+ =app-crypt/gnupg-1.4*
+ ) )"
+
+DEPEND="${CDEPEND}
+ amd64? ( ${ASM_DEPEND}
+ virtual/opengl )
+ x86? ( ${ASM_DEPEND}
+ virtual/opengl )"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-thunderbird )
+"
+
+if [[ ${PV} =~ beta ]]; then
+ S="${WORKDIR}/${PN}-${MOZ_PV}"
+else
+ S="${WORKDIR}/comm-esr${PV%%.*}"
+fi
+
+BUILD_OBJ_DIR="${S}/tbird"
+
+pkg_setup() {
+ moz_pkgsetup
+
+ export MOZILLA_DIR="${S}/mozilla"
+
+ if ! use bindist ; then
+ elog "You are enabling official branding. You may not redistribute this build"
+ elog "to any users on your network or the internet. Doing so puts yourself into"
+ elog "a legal problem with Mozilla Foundation"
+ elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
+ elog
+ fi
+}
+
+pkg_pretend() {
+ # Ensure we have enough disk space to compile
+ CHECKREQS_DISK_BUILD="4G"
+ check-reqs_pkg_setup
+
+ if use jit && [[ -n ${PROFILE_IS_HARDENED} ]]; then
+ ewarn "You are emerging this package on a hardened profile with USE=jit enabled."
+ ewarn "This is horribly insecure as it disables all PAGEEXEC restrictions."
+ ewarn "Please ensure you know what you are doing. If you don't, please consider"
+ ewarn "emerging the package with USE=-jit"
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # Unpack language packs
+ mozlinguas_src_unpack
+
+ # this version of lightning is a .tar.xz, no xpi needed
+ #xpi_unpack lightning-${MOZ_LIGHTNING_VER}.xpi
+
+ # this version of gdata-provider is a .tar.xz , no xpi needed
+ #use lightning && xpi_unpack gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.xpi
+}
+
+src_prepare() {
+ # Apply our patchset from firefox to thunderbird as well
+ pushd "${S}"/mozilla &>/dev/null || die
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}/firefox"
+ popd &>/dev/null || die
+
+ epatch "${FILESDIR}"/thunderbird-44.0_beta1-fix-preferences-gentoo.patch
+
+ ## patches for building with musl libc
+ if use elibc_musl; then
+ epatch "${FILESDIR}"/musl/thunderbird-38.3.0-updater.patch # bug 1157850, not fixed as of today
+ epatch "${FILESDIR}"/musl/thunderbird-44.0b1-remove-libevent-sysctl.patch
+ fi
+
+ # Ensure that are plugins dir is enabled as default
+ sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
+ "${S}"/mozilla/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
+ sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
+ "${S}"/mozilla/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+ -i "${S}"/mail/installer/Makefile.in || die
+
+ # Don't error out when there's no files to be removed:
+ sed 's@\(xargs rm\)$@\1 -f@' \
+ -i "${S}"/mozilla/toolkit/mozapps/installer/packager.mk || die
+
+ # Shell scripts sometimes contain DOS line endings; bug 391889
+ grep -rlZ --include="*.sh" $'\r$' . |
+ while read -r -d $'\0' file ; do
+ einfo edos2unix "${file}"
+ edos2unix "${file}"
+ done
+
+ # Allow user to apply any additional patches without modifing ebuild
+ epatch_user
+
+ # Confirm the version of lightning being grabbed for langpacks is the same
+ # as that used in thunderbird
+ local THIS_MOZ_LIGHTNING_VER=$(python "${S}"/calendar/lightning/build/makeversion.py ${PV})
+ if [[ ${MOZ_LIGHTNING_VER} != ${THIS_MOZ_LIGHTNING_VER} ]]; then
+ eqawarn "The version of lightning used for localization differs from the version"
+ eqawarn "in thunderbird. Please update MOZ_LIGHTNING_VER in the ebuild from ${MOZ_LIGHTNING_VER}"
+ eqawarn "to ${THIS_MOZ_LIGHTNING_VER}"
+ fi
+
+ eautoreconf
+ # Ensure we run eautoreconf in mozilla to regenerate configure
+ cd "${S}"/mozilla || die
+ eautoconf
+ cd "${S}"/mozilla/js/src || die
+ eautoconf
+}
+
+src_configure() {
+ declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+ MEXTENSIONS="default"
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Add full relro support for hardened
+ use hardened && append-ldflags "-Wl,-z,relro,-z,now"
+
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+ mozconfig_annotate '' --disable-mailnews
+ mozconfig_annotate '' --enable-calendar
+
+ # Other tb-specific settings
+ mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+ mozconfig_annotate '' --with-user-appdir=.thunderbird
+
+ mozconfig_use_enable ldap
+
+ mozlinguas_mozconfig
+
+ # Bug #72667
+ if use mozdom; then
+ MEXTENSIONS="${MEXTENSIONS},inspector"
+ fi
+
+ # Use an objdir to keep things organized.
+ echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
+
+ # Finalize and report settings
+ mozconfig_final
+
+ ####################################
+ #
+ # Configure and build
+ #
+ ####################################
+
+ # Disable no-print-directory
+ MAKEOPTS=${MAKEOPTS/--no-print-directory/}
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-cxxflags -fno-stack-protector
+ fi
+
+ if use crypt; then
+ pushd "${WORKDIR}"/enigmail &>/dev/null ||die
+ econf
+ popd &>/dev/null ||die
+ fi
+}
+
+src_compile() {
+ mkdir -p "${BUILD_OBJ_DIR}" && cd "${BUILD_OBJ_DIR}" || die
+
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ emake -f "${S}"/client.mk
+
+ # Only build enigmail extension if crypt enabled.
+ if use crypt ; then
+ einfo "Building enigmail"
+ pushd "${WORKDIR}"/enigmail &>/dev/null || die
+ emake -j1
+ emake -j1 xpi
+ popd &>/dev/null || die
+ fi
+}
+
+src_install() {
+ declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+ DICTPATH="\"${EPREFIX}/usr/share/myspell\""
+
+ declare emid
+ cd "${BUILD_OBJ_DIR}" || die
+
+ # Copy our preference before omnijar is created.
+ cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \
+ "${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
+ || die
+
+ # Set default path to search for dictionaries.
+ echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
+ >> "${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
+ || die
+
+ # Pax mark xpcshell for hardened support, only used for startupcache creation.
+ pax-mark m "${BUILD_OBJ_DIR}"/mozilla/dist/bin/xpcshell
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+ emake DESTDIR="${D}" install
+
+ # Install language packs
+ mozlinguas_src_install
+
+ if ! use bindist; then
+ newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png
+ domenu "${FILESDIR}"/icon/${PN}.desktop
+ else
+ newicon "${S}"/mail/branding/aurora/content/icon48.png thunderbird-icon-unbranded.png
+ newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \
+ ${PN}.desktop
+
+ sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \
+ "${ED}"/usr/share/applications/${PN}.desktop
+ fi
+
+ local emid
+ # stage extra locales for lightning and install over existing
+ mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/lightning \
+ "${WORKDIR}"/lightning-${MOZ_LIGHTNING_VER} lightning calendar
+
+ emid='{e2fda1a4-762b-4020-b5ad-a41df1933103}'
+ mkdir -p "${T}/${emid}" || die
+ cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/lightning/* || die
+ insinto ${MOZILLA_FIVE_HOME}/distribution/extensions
+ doins -r "${T}/${emid}"
+
+ if use lightning; then
+ # move lightning out of distribution/extensions and into extensions for app-global install
+ mv "${ED}"/${MOZILLA_FIVE_HOME}/{distribution,}/extensions/${emid} || die
+
+ # stage extra locales for gdata-provider and install app-global
+ mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider \
+ "${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}
+ emid='{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}'
+ mkdir -p "${T}/${emid}" || die
+ cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider/* || die
+ insinto ${MOZILLA_FIVE_HOME}/extensions
+ doins -r "${T}/${emid}"
+ fi
+
+ if use crypt ; then
+ local enigmail_xpipath="${WORKDIR}/enigmail/build"
+ cd "${T}" || die
+ unzip "${enigmail_xpipath}"/enigmail*.xpi install.rdf || die
+ emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf)
+
+ dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die
+ cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die
+ unzip "${enigmail_xpipath}"/enigmail*.xpi || die
+ fi
+
+ # Required in order for jit to work on hardened, for mozilla-31 and above
+ use jit && pax-mark pm "${ED}"${MOZILLA_FIVE_HOME}/{thunderbird,thunderbird-bin}
+
+ # Plugin-container needs to be pax-marked for hardened to ensure plugins such as flash
+ # continue to work as expected.
+ pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container
+
+ if use minimal; then
+ rm -r "${ED}"/usr/include "${ED}"${MOZILLA_FIVE_HOME}/{idl,include,lib,sdk} || \
+ die "Failed to remove sdk and headers"
+ fi
+
+ # workaround to make thunderbird find libmozalloc.so on musl
+ into /
+ echo "LDPATH=${MOZILLA_FIVE_HOME}" > "${T}"/20thunderbird
+ doenvd "${T}"/20thunderbird || die
+
+}
+
+pkg_postinst() {
+ if use crypt; then
+ local peimpl=$(eselect --brief --colour=no pinentry show)
+ case "${peimpl}" in
+ *gtk*|*qt*) ;;
+ *) ewarn "The pinentry front-end currently selected is not one supported by thunderbird."
+ ewarn "You may be prompted for your password in an inaccessible shell!!"
+ ewarn "Please use 'eselect pinentry' to select either the gtk or qt front-end"
+ ;;
+ esac
+ fi
+ elog
+ elog "If you experience problems with plugins please issue the"
+ elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ,"
+ elog "then restart thunderbird"
+ if ! use lightning; then
+ elog
+ elog "If calendar fails to show up in extensions please open config editor"
+ elog "and set extensions.lastAppVersion to 38.0.0 to force a reload. If this"
+ elog "fails to show the calendar extension after restarting with above change"
+ elog "please file a bug report."
+ fi
+}
diff --git a/media-fonts/powerline-fonts/Manifest b/media-fonts/powerline-fonts/Manifest
new file mode 100644
index 0000000..397615d
--- /dev/null
+++ b/media-fonts/powerline-fonts/Manifest
@@ -0,0 +1,2 @@
+EBUILD powerline-fonts-9999-r3.ebuild 3534 SHA256 3acc546165d3b716bfee763691c7ebfa0c47bbd391c9f23dee70802a1e926ef6 SHA512 71e233e820297fed5d944c4b6fc31b88e2dc8323cf430c64256ff28a4bcca107fa7d9547fcc604d2b0b39f96ed1677697460fc423bb4f07ac6a079c1bdda6f30 WHIRLPOOL ab3f53a003accd5c0b22eb0f869248a079d7732882fe19a73c4ba38241c9baacb0c6226f618931548ef1f3f788ef86a3178038985126c0253e45d9db185c8e5d
+MISC metadata.xml 1251 SHA256 dde4c7bff853d7f1773cee7144c88c8374a10d1d10f0a82ff5487e7817ee4657 SHA512 75f22057b648dd592da96c0a3b710807b80fb86d4db9298bd83efe533e1cf10129fc007b061fbfd33048dbd3460550b1072ff157a830b14d207a008d55a7ec3a WHIRLPOOL b5ac782d2cdab292ecb1736a30eaccac87a2ab7e03df0e409676e52b322dee3ffd945d369ba40939c25b9297df649109144557b4b4cd42e923b25af8f9cdb830
diff --git a/media-fonts/powerline-fonts/metadata.xml b/media-fonts/powerline-fonts/metadata.xml
new file mode 100644
index 0000000..6cfb40a
--- /dev/null
+++ b/media-fonts/powerline-fonts/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>leycec@gmail.com</email>
+ <name>leycec</name>
+ </maintainer>
+ <longdescription>
+Pre-patched and adjusted fonts for usage with the new Powerline plugin.
+</longdescription>
+ <upstream>
+ <bugs-to>https://github.com/powerline/fonts/issues</bugs-to>
+ </upstream>
+ <use>
+ <flag name="anonymouspro">Install Powerline-patched Anonymous Pro fonts</flag>
+ <flag name="dejavusansmono">Install Powerline-patched DejaVu Sans Mono fonts</flag>
+ <flag name="droidsansmono">Install Powerline-patched Droid Sans Mono fonts</flag>
+ <flag name="inconsolata">Install Powerline-patched Inconsolata fonts</flag>
+ <flag name="inconsolatadz">Install Powerline-patched Inconsolata-dz fonts</flag>
+ <flag name="liberationmono">Install Powerline-patched Liberation Mono fonts</flag>
+ <flag name="meslo">Install Powerline-patched Meslo fonts</flag>
+ <flag name="sourcecodepro">Install Powerline-patched Source Code Pro fonts</flag>
+ <flag name="terminus_pcf">Install Powerline-patched Terminus fonts in PCF format</flag>
+ <flag name="ubuntumono">Install Powerline-patched Ubuntu Mono fonts</flag>
+ </use>
+</pkgmetadata>
diff --git a/media-fonts/powerline-fonts/powerline-fonts-9999-r3.ebuild b/media-fonts/powerline-fonts/powerline-fonts-9999-r3.ebuild
new file mode 100644
index 0000000..7102a30
--- /dev/null
+++ b/media-fonts/powerline-fonts/powerline-fonts-9999-r3.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/setuptools/setuptools-9999.ebuild,v 1.1 2013/01/11 09:59:31 mgorny Exp $
+EAPI="5"
+
+# Enforce Bash scrictness.
+set -e
+
+EGIT_REPO_URI="https://github.com/powerline/fonts"
+
+inherit font git-r3
+
+DESCRIPTION="Monospaced fonts pre-patched with Powerline symbols"
+HOMEPAGE="https://github.com/powerline/fonts"
+
+LICENSE="
+ anonymouspro? ( OFL-1.1 )
+ dejavusansmono? ( BitstreamVera )
+ droidsansmono? ( Apache-2.0 )
+ inconsolata? ( OFL )
+ inconsolatadz? ( OFL-1.0 )
+ liberationmono? ( OFL-1.1 )
+ meslo? ( Apache-2.0 )
+ sourcecodepro? ( OFL-1.1 )
+ terminus_pcf? ( OFL-1.1 )
+ ubuntumono? ( UbuntuFontLicense-1.0 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+
+# src_install() expects USE flags to be the lowercase basenames of the
+# corresponding font directories. See src_install_font() for details.
+IUSE_FLAGS=(
+ anonymouspro
+ arimo
+ dejavusansmono
+ droidsansmono
+ inconsolata
+ inconsolatadz
+ liberationmono
+ meslo
+ sourcecodepro
+ terminus_pcf
+ ubuntumono
+)
+IUSE="${IUSE_FLAGS[*]}"
+
+# If no such USE flags were enabled, fail.
+REQUIRED_USE="|| ( ${IUSE_FLAGS[*]} )"
+
+DEPEND=""
+RDEPEND=""
+
+# Temporary directory to which all fonts to be installed will be copied.
+# Ideally, such fonts could simply be installed from their default directories;
+# sadly, eclass "font" assumes such fonts always reside in a single directory.
+FONT_S="${S}/fonts"
+DOCS="README.rst"
+
+src_install() {
+ mkdir -p "${FONT_S}"
+
+ # Map of all font filetypes to be installed and hence appended to eclass
+ # "font" string global ${FONT_SUFFIX} below. Since we only leverage such map
+ # for its keys, we map all keys to the empty string.
+ declare -A font_filetypes
+
+ # Copy all fonts in the passed directory with the passed filetype to a
+ # temporary directory for subsequent installation if the corresponding USE
+ # flag is enabled or return silently otherwise.
+ src_install_font() {
+ (( ${#} == 2 )) || die 'Expected one dirname and one filetype.'
+ local dirname="${1}" filetype="${2}" flag_name
+ flag_name="${dirname,,}"
+
+ if use "${flag_name}"; then
+ mv ${dirname}/*.${filetype} "${FONT_S}"
+ font_filetypes[${filetype}]=
+ newdoc ${dirname}/README.rst README_${dirname}.rst
+ fi
+ }
+
+ # Copy all fonts to be installed to a temporary directory.
+ src_install_font AnonymousPro ttf
+ src_install_font Arimo ttf
+ src_install_font DejaVuSansMono ttf
+ src_install_font DroidSansMono otf
+ src_install_font Inconsolata otf
+ src_install_font InconsolataDz otf
+ src_install_font LiberationMono ttf
+ src_install_font Meslo otf
+ src_install_font SourceCodePro otf
+ src_install_font UbuntuMono ttf
+
+ # Terminus is a bitmap- rather than vector-based font and hence requires
+ # unique handling. In particular, the repository provides three variants of
+ # such patched font: in BDF, PCF, and PSF format. Since X.org is
+ # incompatible with PSF-formatted fonts and since PCF-formatted fonts are
+ # more space efficient than BDF-formatted fonts, install only the Terminus
+ # fonts in PCF format. This corresponds to the "terminus" ebuild, as well.
+ if use terminus_pcf; then
+ mv Terminus/PCF/*.pcf.gz "${FONT_S}"
+ font_filetypes[pcf.gz]=
+ newdoc Terminus/README.rst README_Terminus.rst
+ fi
+
+ # Convert the above map of all font filetypes to be installed into the
+ # whitespace-delimited string global accepted by eclass "font".
+ FONT_SUFFIX="${!font_filetypes[@]}"
+
+ # Install all such fonts.
+ font_src_install
+}
diff --git a/metadata/layout.conf b/metadata/layout.conf
new file mode 100644
index 0000000..d43e61c
--- /dev/null
+++ b/metadata/layout.conf
@@ -0,0 +1 @@
+masters = gentoo
diff --git a/profiles/repo_name b/profiles/repo_name
new file mode 100644
index 0000000..63e0908
--- /dev/null
+++ b/profiles/repo_name
@@ -0,0 +1 @@
+ennui
diff --git a/sys-apps/hprofile/Manifest b/sys-apps/hprofile/Manifest
new file mode 100644
index 0000000..dbad1df
--- /dev/null
+++ b/sys-apps/hprofile/Manifest
@@ -0,0 +1,3 @@
+DIST hprofile-6.0.1.tar.gz 17970 SHA256 e45f831ac8ba4ccaca27e3f01319caea830af311880b561656342f59816248ca SHA512 29d16a03b42659372d7873163fc7019c50b9defc736248d926b3c482579f14ebcb962a46f4f1b23335702534885123aae93a302ca4c66b9757e854811963849c WHIRLPOOL 449ed532b8eef588961477554d73af434911a4161aecb2975b05f3c05cbe2cb5c5a35604cc39a0a1154cf831f0987906dd26719728dd3e65ab094c5a19d940b0
+EBUILD hprofile-6.0.1.ebuild 528 SHA256 112e4c963b21df17da6d412959012f90e9a125c577482485ee78998b7c8022de SHA512 fd4423f3df63002135f35bd4473003383b5812b746d958a7e73376dc4f173532c8ab9b3e738fc3da3e9e84547f56ccce5f2a4fb1688991c8d92a09660c36416e WHIRLPOOL b6c7af9710d25838c8038a037ad0f345a2a89901bb9cfec5d1f958f5b6b8fc601fd74142d2a5aa36c539e5288410ea3f70bfa9f2d98b7e9cf719862474f25a9b
+MISC metadata.xml 245 SHA256 d9783961e020c190c95a0b6f3dce93e32205ac596b655053801eb691deb0d0c5 SHA512 8ec61d1a183712753ff45b18eb44cab192077e886cecad8d79b67e90e0b47124af56396aefdffdccc934b164d52b5dea7850da14a1e41dd9e637add6cb24dd36 WHIRLPOOL 0119546a0d4ba3e87a263183f01eafce27475c7fb0be94aa7a9ec28c040013fccaeaff177ba4c52fa462c819aa518092c50976ca9ce9e3d33789b9884fb54f9e
diff --git a/sys-apps/hprofile/hprofile-6.0.1.ebuild b/sys-apps/hprofile/hprofile-6.0.1.ebuild
new file mode 100644
index 0000000..cbebb2e
--- /dev/null
+++ b/sys-apps/hprofile/hprofile-6.0.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Utility to manage hardware, network, power or other profiles (fork)"
+HOMEPAGE="https://github.com/tokiclover/hprofile"
+SRC_URI="https://github.com/tokiclover/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+src_prepare() {
+ sed -i '1s:.*:#!/sbin/runscript:' hprofile.initd || die
+ sed -i "/^prefix/s:=.*:=${EPREFIX}/usr:" Makefile || die
+}
diff --git a/sys-apps/hprofile/metadata.xml b/sys-apps/hprofile/metadata.xml
new file mode 100644
index 0000000..d4d904c
--- /dev/null
+++ b/sys-apps/hprofile/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+<herd>base-system</herd>
+<upstream>
+ <remote-id type='github'>tokiclover/hprofile</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/sys-apps/lm_sensors/Manifest b/sys-apps/lm_sensors/Manifest
new file mode 100644
index 0000000..f9873c9
--- /dev/null
+++ b/sys-apps/lm_sensors/Manifest
@@ -0,0 +1,11 @@
+AUX 100-musl-compat.patch 1121 SHA256 d8b820085fe58b65c1056cc8fe0ea8daf9d57f1ccc4255ab468e87616c69b6b1 SHA512 53ad5cbf0a20e74bc03f48b66ad76589b0a55c7431eba55fac125de226eb098a7190b6e4780353593934072a63a32c36e393fc57d9903cffc8842aaa5a17cdd3 WHIRLPOOL 86d11e56c813f8763d2dbdf38ef68fb9e537b7a31429866534e4a878506287a3b30a8f2e5844704797b7722e12a3033d93c165b1fed8f8eabeed2a81c43c650f
+AUX fancontrol-init.d-2 444 SHA256 706467898d0b644c0fe1d216a4b3b9b82ed55b0cbe6aec2c2adbb4e9004145d9 SHA512 1f77189c1f9e5cd9524abead70c48f418458c0bd231b6aadf212513b8f9caad17561f04ad7e70ab6531e2aa684b6433dbbd448738e0a777c89f602a0eec463a2 WHIRLPOOL 1c940cec9a481dc46b5c67021790c8fc30b5a25b3227e0e64bc6fb386d290442f7f2f01af0f7e60321ee61ccb0655a68d78be7601adc131381aa839e582b3b91
+AUX fancontrol.service 150 SHA256 d07fb50714abfcac5d8aa818d6c40de08221401b554cb21f85dbf2a6cf2eef87 SHA512 e6a738c2458ecffa56d79ab0b187c20a7daebca737bac1a87c82fda5bae24ad4f2a61fd6daeab0a8e5582c404d57372f5eda1a66fe74ccbcb948c114d3e6a0cd WHIRLPOOL 7fb0f1170dbfca825ac245e257e275c58c76adb0bb550434b23d25cf317dffb0319bc9934da6393f279dea85aa6313941b7ff713bfcd9c8e70f36ebcb2c3e7b8
+AUX lm_sensors-3-init.d 2350 SHA256 95297bb6113c18620184f0facd8e22155b51e4fe4c6008deff6c8c374d919574 SHA512 40ecfaddaa0df66105bf6548da60cd142aed6f1f2bad6f07e021d9fe98622858ab39237e88448d3b3819fc4339f2724008e89b11ae87a1433dc3e6268e906599 WHIRLPOOL b7795f144b29c0eca793e16ed81a6848272f079436a58a68946bc4306721b6b6fe90313eebdac8d785388868aa5139386699e3cb2560181e282327bfa6ab22bb
+AUX lm_sensors-3.3.5-sensors-detect-gentoo.patch 4533 SHA256 2dd57576a76ad8d5da796f83c0324ed047d7b0bfdeb988a3c98ac90d3d4b701d SHA512 3a6f54d745e1a82b56d7ff2fd7b7f91e8fb680849946228ea1339becceb72adc1c37f42fb1e9963a89dec475faa5fbcb25dacd82aca4ea07ec96d9ec29cf22f0 WHIRLPOOL ed92561c9b5bbd913a9dbdaf142ac63d0321692c44528246d34e45564c455b46e614d68b349eb92ff5c855b574c735e1b8d9ef1b5a8c87d3323638a52d1873f4
+AUX sensord-4-init.d 456 SHA256 b12a6a9c52d2ac1088b678882ba1781b6784178fe29970f4a54b2aa596c60c66 SHA512 f0944700ea7c5efa087d4ecb1619b0138c4bc263423d56e4045916807fc646fdd41c68bcbe1f2265e2b719f69c30b34138bb464ca3e42986402ac8a27d6a662e WHIRLPOOL bd3ac4104bd0b91b8b247ca7cc0a38b835835cb2b758f3874c6248db06ab5a68ce082a490642893633536ce45b9c15f812ccaf3df27b8840a090bc4b9c77ff43
+AUX sensord-conf.d 104 SHA256 02230edf5efbb0a4de3840cd76f9ebf431c57a246fa7388e9dbeb0fe26fe7b8d SHA512 a77d81ab7ded085ba19e4c637e93268f889ccb8ce9e008a210ae135cb6e2140be07e5d455cf7fcc1084fd57cfbfb3f2bb37207123aebe9566f78b5183806fd7d WHIRLPOOL b52a37909dd45c3f7a6a3cab4695e460cf318f05b00faf25aa0717a5caaa1f185b32648711f4842d69e4aa4a062abbf39278fd903b3b07bd8389be73d4777907
+AUX sensord.service 159 SHA256 db38a15de6d311d91f336f708f63e732000731a1f07a5e7d7ac911faf58ddca3 SHA512 c554910a36e44d84f64d5c8924170c3eaccf9715aee2157a37ecf542a1d254c0d9a269555ec3e99165ef7e39874616bc07dddc01c8d708114232df58232c3906 WHIRLPOOL 1cffd3b9a62eba01af22237221980f1cbeb29738e65510532795a39ad9ea7fd72beafd2180a4342164abe9a1f6a1e11048fe3e75b342760add0548dc61e21c14
+DIST lm_sensors-3.4.0.tar.bz2 175802 SHA256 e0579016081a262dd23eafe1d22b41ebde78921e73a1dcef71e05e424340061f SHA512 993064bd14b855c1ae8c057e89313df5b3d5efe441fb2e8c3e508f42bb15658564df2563fac8fabbdb0d650dfdbc694037736c748d45cb9d85dfb8fb5a3d1ea9 WHIRLPOOL 82ed9b922a352702d974ea075222894c69a081da1fca9e026e3176266bb6a8911fd8fc0cd73f2d9ab3524cd30cfe2e688a015032829cf32d844592debaf9924d
+EBUILD lm_sensors-3.4.0-r99.ebuild 3321 SHA256 03b0493c22cfee8db75f926ada3357c7943f8e2d8e6d4acca866cd138cbbf9f6 SHA512 489ea6f6a3640e285b905d15cf49a4a1832ebeea80521867c38f99a29d3478de11b4deb6bddcb6db0f648bfb4fae23220ee059f35ce4bedf5f560415acf76358 WHIRLPOOL 007d3d80565bbf4228935aa74720b5d5fc7827a6695b651462cb6ae69a9c82e13594b463e17eb3ad3ee9313f4066c699f0d998396512b048138cd00f3c45656e
+MISC metadata.xml 415 SHA256 cfc51424e84e2549cacd6798f562164c8a5be881aa624d0ae838e21bc61bebb2 SHA512 555a7ec1ea6779cca008874c4f8af6c4932517f141b566068d3175883c95901cc5bc74eeb65f347cb11018aab46d68f875c5fe8ccad3822962e47b4122dfc274 WHIRLPOOL 5c96581e60efb5c660af6a70a181e6984e06f94dc2ee1515c12a5270a3f2efeb30d32e18fb84b71ae8f17dda19b015afc3bbf6ec3d1e3fdf77b1a2b3a2f790af
diff --git a/sys-apps/lm_sensors/files/100-musl-compat.patch b/sys-apps/lm_sensors/files/100-musl-compat.patch
new file mode 100644
index 0000000..28f16e5
--- /dev/null
+++ b/sys-apps/lm_sensors/files/100-musl-compat.patch
@@ -0,0 +1,46 @@
+https://github.com/openwrt/packages/blob/master/utils/lm-sensors/patches/100-musl-compat.patch
+Only use 'asm/io.h' for uClibc, else use 'sys/io.h'
+--- a/prog/dump/isadump.c
++++ b/prog/dump/isadump.c
+@@ -38,7 +38,7 @@
+
+
+ /* To keep glibc2 happy */
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
++#if !defined(__UCLIBC__)
+ #include <sys/io.h>
+ #else
+ #include <asm/io.h>
+--- a/prog/dump/isaset.c
++++ b/prog/dump/isaset.c
+@@ -34,7 +34,7 @@
+
+
+ /* To keep glibc2 happy */
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
++#if !defined(__UCLIBC__)
+ #include <sys/io.h>
+ #else
+ #include <asm/io.h>
+--- a/prog/dump/superio.c
++++ b/prog/dump/superio.c
+@@ -21,7 +21,7 @@
+
+ #include <stdlib.h>
+
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
++#if !defined(__UCLIBC__)
+ #include <sys/io.h>
+ #else
+ #include <asm/io.h>
+--- a/prog/dump/util.c
++++ b/prog/dump/util.c
+@@ -12,7 +12,7 @@
+ #include "util.h"
+
+ /* To keep glibc2 happy */
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
++#if !defined(__UCLIBC__)
+ #include <sys/io.h>
+ #else
+ #include <asm/io.h>
diff --git a/sys-apps/lm_sensors/files/fancontrol-init.d-2 b/sys-apps/lm_sensors/files/fancontrol-init.d-2
new file mode 100644
index 0000000..0474d12
--- /dev/null
+++ b/sys-apps/lm_sensors/files/fancontrol-init.d-2
@@ -0,0 +1,23 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+CONFIG=/etc/fancontrol
+
+depend() {
+ need localmount
+ use lm_sensors
+}
+
+command=/usr/sbin/fancontrol
+command_arguments="${CONFIG}"
+start_stop_daemon_args="--background"
+pidfile=/var/run/fancontrol.pid
+
+start_pre() {
+ if [ ! -f ${CONFIG} ]; then
+ eerror "Configuration file ${CONFIG} not found"
+ return 1
+ fi
+}
diff --git a/sys-apps/lm_sensors/files/fancontrol.service b/sys-apps/lm_sensors/files/fancontrol.service
new file mode 100644
index 0000000..c86b498
--- /dev/null
+++ b/sys-apps/lm_sensors/files/fancontrol.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Fan control daemon
+
+[Service]
+PIDFile=/var/run/fancontrol.pid
+ExecStart=/usr/sbin/fancontrol
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-apps/lm_sensors/files/lm_sensors-3-init.d b/sys-apps/lm_sensors/files/lm_sensors-3-init.d
new file mode 100644
index 0000000..b33814f
--- /dev/null
+++ b/sys-apps/lm_sensors/files/lm_sensors-3-init.d
@@ -0,0 +1,105 @@
+#!/sbin/runscript
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+checkconfig() {
+ if [ ! -f /etc/conf.d/lm_sensors ]; then
+ eerror "/etc/conf.d/lm_sensors does not exist, try running sensors-detect"
+ return 1
+ fi
+
+ if [ "${LOADMODULES}" = "yes" -a -f /proc/modules ]; then
+ if [ -z "${MODULE_0}" ]; then
+ eerror "MODULE_0 is not set in /etc/conf.d/lm_sensors, try running sensors-detect"
+ return 1
+ fi
+ fi
+}
+
+start() {
+ checkconfig || return 1
+
+ if [ "${LOADMODULES}" = "yes" -a -f /proc/modules ]; then
+ einfo "Loading lm_sensors modules..."
+
+ mount | grep sysfs >/dev/null 2>&1
+ if [ ${?} = 0 ]; then
+ if ! ( [ -e /sys/i2c ] || [ -e /sys/bus/i2c ] ); then
+ ebegin " Loading i2c-core"
+ modprobe i2c-core >/dev/null 2>&1
+ if [ ${?} != 0 ]; then
+ eerror " Could not load i2c-core!"
+ eend 1
+ fi
+ ( [ -e /sys/i2c ] || [ -e /sys/bus/i2c ] ) || return 1
+ eend 0
+ fi
+ elif ! [ -e /proc/sys/dev/sensors ]; then
+ ebegin " Loading i2c-proc"
+ modprobe i2c-proc >/dev/null 2>&1
+ if [ ${?} != 0 ]; then
+ eerror " Could not load i2c-proc!"
+ eend 1
+ fi
+ [ -e /proc/sys/dev/sensors ] || return 1
+ eend 0
+ fi
+
+ i=0
+ while true; do
+ module=`eval echo '$'MODULE_${i}`
+ module_args=`eval echo '$'MODULE_${i}_ARGS`
+ if [ -z "${module}" ]; then
+ break
+ fi
+ ebegin " Loading ${module}"
+ modprobe ${module} ${module_args} >/dev/null 2>&1
+ eend $?
+ i=$(($i+1))
+ done
+ fi
+
+ if [ "${INITSENSORS}" = "yes" ]; then
+ if ! [ -f /etc/sensors3.conf ]; then
+ eerror "/etc/sensors3.conf does not exist!"
+ return 1
+ fi
+
+ ebegin "Initializing sensors"
+ /usr/bin/sensors -s >/dev/null 2>&1
+ eend ${?}
+ fi
+}
+
+stop() {
+ checkconfig || return 1
+
+ if [ "${LOADMODULES}" = "yes" -a -f /proc/modules ]; then
+ einfo "Unloading lm_sensors modules..."
+
+ # find the highest possible MODULE_ number
+ i=0
+ while true; do
+ module=`eval echo '$'MODULE_${i}`
+ if [ -z "${module}" ] ; then
+ break
+ fi
+ i=$(($i+1))
+ done
+
+ while [ ${i} -gt 0 ]; do
+ i=$(($i-1))
+ module=`eval echo '$'MODULE_${i}`
+ ebegin " Unloading ${module}"
+ rmmod ${module} >/dev/null 2>&1
+ eend $?
+ done
+
+ if [ -e /proc/sys/dev/sensors ] ; then
+ ebegin " Unloading i2c-proc"
+ rmmod i2c-proc >/dev/null 2>&1
+ eend $?
+ fi
+ fi
+}
diff --git a/sys-apps/lm_sensors/files/lm_sensors-3.3.5-sensors-detect-gentoo.patch b/sys-apps/lm_sensors/files/lm_sensors-3.3.5-sensors-detect-gentoo.patch
new file mode 100644
index 0000000..0ea9a02
--- /dev/null
+++ b/sys-apps/lm_sensors/files/lm_sensors-3.3.5-sensors-detect-gentoo.patch
@@ -0,0 +1,120 @@
+--- lm_sensors-3.3.5/prog/detect/sensors-detect
++++ lm_sensors-3.3.5/prog/detect/sensors-detect
+@@ -20,6 +20,9 @@
+ # MA 02110-1301 USA.
+ #
+
++# Gentoo specific modifications based on a patch from Rudo Thomas
++# <thomr9am@ss1000.ms.mff.cuni.cz>
++
+ require 5.004;
+
+ use strict;
+@@ -6762,26 +6765,33 @@
+ print MODPROBE_D $configfile;
+ close(MODPROBE_D);
+ } else {
++ print "\nIf you want to load the modules at startup, generate a config file\n",
++ "below and make sure lm_sensors gets started at boot time; e.g\n",
++ "\$ rc-update add lm_sensors default\n";
+ print "To make the sensors modules behave correctly, add these lines to\n".
+- "/etc/modprobe.conf:\n\n";
++ "/etc/modules.d/lm_sensors and run modules-update:\n\n";
+ print "#----cut here----\n".
+ $configfile.
+ "#----cut here----\n\n";
+ }
+ }
+
+- my $have_sysconfig = -d '/etc/sysconfig';
+- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ",
+- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'),
+- ($have_sysconfig ? 'YES/no' : 'yes/NO');
+- $_ = read_answer();
+- if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) {
+- unless ($have_sysconfig) {
+- mkdir('/etc/sysconfig', 0777)
+- or die "Sorry, can't create /etc/sysconfig ($!)";
++ my $have_sysconfig = -f '/etc/conf.d/lm_sensors';
++ printf "Do you want to ".($have_sysconfig?"overwrite":"generate").
++ " /etc/conf.d/lm_sensors? Enter s to specify other file name?\n",
++ " (".($have_sysconfig?"yes/NO":"YES/no")."/s): ";
++ my $reply = read_answer();
++
++ if (($have_sysconfig and $reply =~ /^\s*[Yy]/) or
++ (not $have_sysconfig and not $reply =~ /^\s*[Nn]/) or
++ $reply =~ /^\s*[Ss]/) {
++ my $filename = "/etc/conf.d/lm_sensors";
++ if ($reply =~ /^\s*[Ss]/) {
++ print "Specify the file to store the configuration to: ";
++ $filename = read_answer();
+ }
+- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors")
+- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)";
++ open(local *SYSCONFIG, ">".$filename)
++ or die "Sorry, can't create $filename ($!).";
+ print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n";
+ print SYSCONFIG <<'EOT';
+ # This file is sourced by /etc/init.d/lm_sensors and defines the modules to
+@@ -6792,30 +6802,17 @@
+ # BUS_MODULES for any required bus driver module (for example for I2C or SPI).
+
+ EOT
++ print SYSCONFIG
++ "# Load modules at startup\n".
++ "LOADMODULES=yes\n\n".
++ "# Initialize sensors at startup\n".
++ "INITSENSORS=yes\n\n";
+ print SYSCONFIG "BUS_MODULES=\"", join(" ", @{$bus_modules}), "\"\n"
+ if @{$bus_modules};
+ print SYSCONFIG "HWMON_MODULES=\"", join(" ", @{$hwmon_modules}), "\"\n";
+ close(SYSCONFIG);
+
+- if (-x "/bin/systemctl" && -d "/lib/systemd/system" &&
+- ! -f "/lib/systemd/system/lm_sensors.service") {
+- print "Copy prog/init/lm_sensors.service to /lib/systemd/system\n".
+- "and run 'systemctl enable lm_sensors.service'\n".
+- "for initialization at boot time.\n";
+- return;
+- }
+-
+- if (-x "/bin/systemctl" &&
+- -f "/lib/systemd/system/lm_sensors.service") {
+- system("/bin/systemctl", "enable", "lm_sensors.service");
+- system("/bin/systemctl", "start", "lm_sensors.service");
+- # All done, don't check for /etc/init.d/lm_sensors
+- return;
+- }
+-
+- print "Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors\n".
+- "for initialization at boot time.\n"
+- unless -f "/etc/init.d/lm_sensors";
++ print "Done.\n";
+
+ if (-x "/sbin/insserv" && -f "/etc/init.d/lm_sensors") {
+ system("/sbin/insserv", "/etc/init.d/lm_sensors");
+@@ -6828,24 +6825,6 @@
+ print "You should now start the lm_sensors service to load the required\n".
+ "kernel modules.\n\n";
+ }
+- } else {
+- print "To load everything that is needed, add this to one of the system\n".
+- "initialization scripts (e.g. /etc/rc.d/rc.local):\n\n";
+- print "#----cut here----\n";
+- if (@{$bus_modules}) {
+- print "# Adapter drivers\n";
+- print "modprobe $_\n" foreach (@{$bus_modules});
+- }
+- print "# Chip drivers\n";
+- print "modprobe $_\n" foreach (@{$hwmon_modules});
+- print((-e '/usr/bin/sensors' ?
+- "/usr/bin/sensors -s\n" :
+- "/usr/local/bin/sensors -s\n").
+- "#----cut here----\n\n");
+-
+- print "You really should try these commands right now to make sure everything\n".
+- "is working properly. Monitoring programs won't work until the needed\n".
+- "modules are loaded.\n\n";
+ }
+ }
+
diff --git a/sys-apps/lm_sensors/files/sensord-4-init.d b/sys-apps/lm_sensors/files/sensord-4-init.d
new file mode 100644
index 0000000..3734dfe
--- /dev/null
+++ b/sys-apps/lm_sensors/files/sensord-4-init.d
@@ -0,0 +1,22 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+CONFIG=/etc/sensors3.conf
+
+depend() {
+ need localmount
+ use logger lm_sensors
+}
+
+pidfile=/run/sensord.pid
+command=/usr/sbin/sensord
+command_args="--config-file ${CONFIG} ${SENSORD_OPTIONS} --pid-file ${pidfile}"
+
+start_pre() {
+ if [ ! -f ${CONFIG} ]; then
+ eerror "Configuration file ${CONFIG} not found"
+ return 1
+ fi
+}
diff --git a/sys-apps/lm_sensors/files/sensord-conf.d b/sys-apps/lm_sensors/files/sensord-conf.d
new file mode 100644
index 0000000..d82841a
--- /dev/null
+++ b/sys-apps/lm_sensors/files/sensord-conf.d
@@ -0,0 +1,3 @@
+# Extra options to pass to the sensord daemon,
+# see sensord(8) for more information
+SENSORD_OPTIONS=""
diff --git a/sys-apps/lm_sensors/files/sensord.service b/sys-apps/lm_sensors/files/sensord.service
new file mode 100644
index 0000000..6d272f1
--- /dev/null
+++ b/sys-apps/lm_sensors/files/sensord.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Sensor information logging daemon
+
+[Service]
+PIDFile=/var/run/sensord.pid
+ExecStart=/usr/sbin/sensord
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-apps/lm_sensors/lm_sensors-3.4.0-r99.ebuild b/sys-apps/lm_sensors/lm_sensors-3.4.0-r99.ebuild
new file mode 100644
index 0000000..68843fe
--- /dev/null
+++ b/sys-apps/lm_sensors/lm_sensors-3.4.0-r99.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils linux-info multilib systemd toolchain-funcs
+
+DESCRIPTION="Hardware Monitoring user-space utilities"
+HOMEPAGE="http://www.lm-sensors.org/"
+SRC_URI="http://dl.lm-sensors.org/lm-sensors/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
+IUSE="sensord static-libs"
+
+RDEPEND="
+ dev-lang/perl
+ sensord? (
+ net-analyzer/rrdtool
+ virtual/logger
+ )"
+DEPEND="${RDEPEND}
+ sys-devel/bison
+ sys-devel/flex"
+
+CONFIG_CHECK="~HWMON ~I2C_CHARDEV ~I2C"
+WARNING_HWMON="${PN} requires CONFIG_HWMON to be enabled for use."
+WARNING_I2C_CHARDEV="sensors-detect requires CONFIG_I2C_CHARDEV to be enabled."
+WARNING_I2C="${PN} requires CONFIG_I2C to be enabled for most sensors."
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-3.3.5-sensors-detect-gentoo.patch
+ epatch "${FILESDIR}"/100-musl-compat.patch
+
+ use sensord && { sed -i -e 's:^#\(PROG_EXTRA.*\):\1:' Makefile || die; }
+
+ # Respect LDFLAGS
+ sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile || die
+
+ # Fix shipped unit file paths
+ sed -i -e 's:\(^EnvironmentFile=\).*:\1/etc/conf.d/lm_sensors:' \
+ prog/init/lm_sensors.service || die
+
+ use static-libs || { sed -i -e '/^BUILD_STATIC_LIB/d' Makefile || die; }
+}
+
+src_compile() {
+ einfo
+ einfo "You may safely ignore any errors from compilation"
+ einfo "that contain \"No such file or directory\" references."
+ einfo
+
+ emake CC="$(tc-getCC)"
+}
+
+src_install() {
+ emake \
+ DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" \
+ MANDIR="${EPREFIX}/usr/share/man" \
+ ETCDIR="${EPREFIX}/etc" \
+ LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+ install
+
+ newinitd "${FILESDIR}"/${PN}-3-init.d ${PN}
+ systemd_dounit prog/init/lm_sensors.service
+
+ newinitd "${FILESDIR}"/fancontrol-init.d-2 fancontrol
+ systemd_dounit "${FILESDIR}"/fancontrol.service
+
+ if use sensord; then
+ newconfd "${FILESDIR}"/sensord-conf.d sensord
+ newinitd "${FILESDIR}"/sensord-4-init.d sensord
+ systemd_dounit "${FILESDIR}"/sensord.service
+ fi
+
+ dodoc CHANGES CONTRIBUTORS INSTALL README \
+ doc/{donations,fancontrol.txt,fan-divisors,libsensors-API.txt,progs,temperature-sensors,vid}
+
+ docinto developers
+ dodoc doc/developers/applications
+}
+
+pkg_postinst() {
+ echo
+ elog "Please run \`/usr/sbin/sensors-detect' in order to setup"
+ elog "/etc/conf.d/${PN}."
+ echo
+ elog "/etc/conf.d/${PN} is vital to the init-script."
+ elog "Please make sure you also add ${PN} to the desired"
+ elog "runlevel. Otherwise your I2C modules won't get loaded"
+ elog "on the next startup."
+ echo
+ elog "You will also need to run the above command if you're upgrading from"
+ elog "<=${PN}-2, as the needed entries in /etc/conf.d/${PN} has"
+ elog "changed."
+ echo
+ elog "Be warned, the probing of hardware in your system performed by"
+ elog "sensors-detect could freeze your system. Also make sure you read"
+ elog "the documentation before running ${PN} on IBM ThinkPads."
+ echo
+ elog "Also make sure you have read:"
+ elog "http://www.lm-sensors.org/wiki/FAQ/Chapter3#Mysensorshavestoppedworkinginkernel2.6.31"
+ echo
+ elog "Please refer to the ${PN} documentation for more information."
+ elog "(http://www.lm-sensors.org/wiki/Documentation)"
+ echo
+}
diff --git a/sys-apps/lm_sensors/metadata.xml b/sys-apps/lm_sensors/metadata.xml
new file mode 100644
index 0000000..4e32df6
--- /dev/null
+++ b/sys-apps/lm_sensors/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ </maintainer>
+ <use>
+ <flag name="sensord">Enable sensord - a daemon that can be used to
+ periodically log sensor readings from hardware health-monitoring
+ chips</flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-apps/vbetool/ChangeLog b/sys-apps/vbetool/ChangeLog
new file mode 100644
index 0000000..a0395f7
--- /dev/null
+++ b/sys-apps/vbetool/ChangeLog
@@ -0,0 +1,56 @@
+# ChangeLog for sys-apps/vbetool
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# (auto-generated from git log)
+
+*vbetool-1.1 (09 Aug 2015)
+
+ 09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org>
+ +files/vbetool-1.0-build.patch, +metadata.xml, +vbetool-1.1.ebuild:
+ proj/gentoo: Initial commit
+
+ This commit represents a new era for Gentoo:
+ Storing the gentoo-x86 tree in Git, as converted from CVS.
+
+ This commit is the start of the NEW history.
+ Any historical data is intended to be grafted onto this point.
+
+ Creation process:
+ 1. Take final CVS checkout snapshot
+ 2. Remove ALL ChangeLog* files
+ 3. Transform all Manifests to thin
+ 4. Remove empty Manifests
+ 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
+ 5.1. Do not touch files with -kb/-ko keyword flags.
+
+ Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+ X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration
+ tests
+ X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this
+ project
+ X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo
+ developer, wrote Git features for the migration
+ X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve
+ cvs2svn
+ X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
+ X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014
+ work in migration
+ X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
+ X-Thanks: All of other Gentoo developers - many ideas and lots of paint on
+ the bikeshed
+
+ 24 Aug 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
+ Use https by default
+
+ Convert all URLs for sites supporting encrypted connections from http to
+ https
+
+ Signed-off-by: Justin Lecher <jlec@gentoo.org>
+
+ 24 Aug 2015; Mike Gilbert <floppym@gentoo.org> metadata.xml:
+ Revert DOCTYPE SYSTEM https changes in metadata.xml
+
+ repoman does not yet accept the https version.
+ This partially reverts eaaface92ee81f30a6ac66fe7acbcc42c00dc450.
+
+ Bug: https://bugs.gentoo.org/552720
+
diff --git a/sys-apps/vbetool/ChangeLog-2015 b/sys-apps/vbetool/ChangeLog-2015
new file mode 100644
index 0000000..835f392
--- /dev/null
+++ b/sys-apps/vbetool/ChangeLog-2015
@@ -0,0 +1,96 @@
+# ChangeLog for sys-apps/vbetool
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/vbetool/ChangeLog,v 1.22 2013/03/21 06:03:18 patrick Exp $
+
+ 21 Mar 2013; Patrick Lauer <patrick@gentoo.org> vbetool-1.1.ebuild:
+ Temp fix for autoreconf failure #439614
+
+ 24 May 2012; Mike Frysinger <vapier@gentoo.org> vbetool-1.1.ebuild:
+ Update to EAPI=4.
+
+ 03 Aug 2010; Tomáš Chvátal <scarabeus@gentoo.org> -vbetool-1.0.ebuild:
+ rm
+
+ 13 Jul 2010; Christian Faulhammer <fauli@gentoo.org> vbetool-1.1.ebuild:
+ x86 stable, bug 327777
+
+ 12 Jul 2010; Markos Chandras <hwoarang@gentoo.org> vbetool-1.1.ebuild:
+ Stable on amd64 wrt bug #327777
+
+*vbetool-1.1 (09 Nov 2009)
+
+ 09 Nov 2009; Tomáš Chvátal <scarabeus@gentoo.org> -vbetool-0.2.ebuild,
+ -vbetool-0.3.ebuild, -files/vbetool-0.3-pci-compile-fix.patch,
+ -vbetool-0.5.ebuild, -vbetool-0.5-r1.ebuild, -vbetool-0.7.ebuild,
+ +vbetool-1.1.ebuild, metadata.xml:
+ Version bump per bug #254441. Drop old stuff. Add x11 as backup herd. Fix
+ also bug #265099 for 1.1.
+
+ 05 Feb 2009; Jeremy Olexa <darkside@gentoo.org> vbetool-0.2.ebuild,
+ vbetool-0.3.ebuild, vbetool-0.5.ebuild, vbetool-0.5-r1.ebuild,
+ vbetool-0.7.ebuild, vbetool-1.0.ebuild:
+ (non maintainer commit) [QA] fix HOMEPAGE, bug 253525
+
+ 26 Nov 2008; Diego E. Pettenò <flameeyes@gentoo.org> vbetool-1.0.ebuild:
+ Use mirror://ubuntu/
+
+ 26 Nov 2008; Diego E. Pettenò <flameeyes@gentoo.org>
+ +files/vbetool-1.0-build.patch, vbetool-1.0.ebuild:
+ Fix build with --as-needed.
+
+ 07 Aug 2008; Markus Meier <maekke@gentoo.org> vbetool-1.0.ebuild:
+ amd64/x86 stable, bug #231739
+
+ 07 Aug 2008; Robin H. Johnson <robbat2@gentoo.org> vbetool-1.0.ebuild:
+ LRMI doc is gone in 1.0.
+
+*vbetool-1.0 (05 Dec 2007)
+
+ 05 Dec 2007; Robin H. Johnson <robbat2@gentoo.org> +vbetool-1.0.ebuild:
+ Ubuntu has a 1.0 of this now. Please test a lot, the package itself seems to
+ be a mess.
+
+ 14 Aug 2007; Chris Gianelloni <wolf31o2@gentoo.org> vbetool-0.7.ebuild:
+ Added a --missing false since not all versions of pciutils support the zlib
+ USE flag. This was reported to bug #188221 by Åsmund Grammeltvedt
+ <asmundg@big-oil.org>.
+
+ 22 Jun 2007; Chris Gianelloni <wolf31o2@gentoo.org> vbetool-0.7.ebuild:
+ Added USE=zlib and a check on sys-apps/pciutils so we'll link with zlib when
+ necessary. This closes bug #165064.
+
+ 22 Feb 2007; Markus Ullmann <jokey@gentoo.org> ChangeLog:
+ Redigest for Manifest2
+
+*vbetool-0.7 (28 Sep 2006)
+
+ 28 Sep 2006; Robin H. Johnson <robbat2@gentoo.org> +vbetool-0.7.ebuild:
+ Version bump, bug #148959.
+
+*vbetool-0.5-r1 (18 May 2006)
+
+ 18 May 2006; Robin H. Johnson <robbat2@gentoo.org> +vbetool-0.5-r1.ebuild:
+ Use x86emu on non-x86 arches - bug #119706.
+
+ 12 Dec 2005; Robin H. Johnson <robbat2@gentoo.org> +metadata.xml:
+ Add metadata.xml
+
+*vbetool-0.5 (30 Nov 2005)
+
+ 30 Nov 2005; Robin H. Johnson <robbat2@gentoo.org> +vbetool-0.5.ebuild:
+ Version bump, now includes emulation for non-x86 platforms.
+
+ 20 Aug 2005; Robin H. Johnson <robbat2@gentoo.org>
+ files/vbetool-0.3-pci-compile-fix.patch:
+ Bug #103062, use a slightly better PCI bug patch.
+
+*vbetool-0.3 (08 Aug 2005)
+
+ 08 Aug 2005; Robin H. Johnson <robbat2@gentoo.org>
+ +files/vbetool-0.3-pci-compile-fix.patch, +vbetool-0.3.ebuild:
+ Bug #101449, version bump.
+
+*vbetool-0.2 (29 Apr 2005)
+
+ 29 Apr 2005; Robin H. Johnson <robbat2@gentoo.org> +vbetool-0.2.ebuild:
+ Initial commit. Original ebuild submitted by alex f <acid.punk@gmx.net>.
diff --git a/sys-apps/vbetool/Manifest b/sys-apps/vbetool/Manifest
new file mode 100644
index 0000000..3c77316
--- /dev/null
+++ b/sys-apps/vbetool/Manifest
@@ -0,0 +1,8 @@
+AUX vbetool-1.0-build.patch 537 SHA256 48583507d03f140a185573b249abe1eefbd085e70c67f8ceb10327badb86deee SHA512 1b9b1b7471f09ec6dac8f535df1ea6bf09f8824f58c025b92e3e5d3e451a56e750e93836d03ee37e20f14868a9b75e97c548add36256412dfc154530c7a4be12 WHIRLPOOL de212f73ace796cb11f3eef2de25b70c74e7826ce101244159fec87b4bba321db2665d74240c79b8f1c8f5432f937ac547aa4dc687bf61e015e8dc369a28d47b
+DIST vbetool-1.1.tar.gz 182826 SHA256 4d26ddc43144593742349e69481e3536ce3482faaa9ad4494fdc7c8b7662f954 SHA512 09d8713516f074fe8e901ab3e24aba7e8b9ddf459b3ee3394b7604e4489a70a27c6dc3604cf1284c49233dba908f00da746c583562af2bc93b6df8ff413efd96 WHIRLPOOL 9b6d6b616c0b074e49c80291e48e2c951e83a2981780cf942ca535f2909e7e83a0d7cf1f9efdc6cea779a5db688635bb7a3740c3bd77a80a268776dea9b1d147
+DIST vbetool-1.2.2.tar.gz 24915 SHA256 845f6f7b0e819533251e651f82185abce0126afc6a623d82286ba9a3dbc8e423 SHA512 77011aaf4d97455a4ad4c64bedc5469e17e0d28ab191e0343017570f1b0bca7bf986a3f86496ce35219faf81e2ed016200f58bee26b797942cdba67388419b5f WHIRLPOOL dc76fe885f92d68abaf9c59de6fd346f843ad872485131365662f3312a32cc53b4aeef047c7d95adfd80875a629f9058a5a1d092d07d5a59b7432ffbe48076da
+EBUILD vbetool-1.1-r99.ebuild 797 SHA256 7b86999e025d2834ea729a0efad0e33799e87e135c3613919434edbc2b074d9f SHA512 e931fdb96b60bd5c23b59377b347c00335d54844ae844fb4293630674f83a877f6901ba42f1673cfae9deecb90623e86c42a294117e57b88c28a9942f8ddb6e4 WHIRLPOOL 53570ebefb1f995a88ec8bfba257a531620fa6f20d3a5e2b19446e266983376f6273ec842e4fe76000d139b3eeff053568f0b0930a88dbe07294e2aa37128d2d
+EBUILD vbetool-1.2.2-r99.ebuild 763 SHA256 fd7c08420f6237ef63ab8cbc6679ce2384287597db49b1be784f210cc7b10bb6 SHA512 cd0bbb32fdd2c1f28b92fca53d96d62795b654f29b141c6070f12f201cf7fbf5ec84b2ccb61abb2bde65ae5b91ac9a877f24c6a507030afaf9a4dba9c5c9d7a4 WHIRLPOOL 435f689b7b711035bb5680c114cd180ad0d91845ca1b9ba20e8e828c0e183b0b37df36a473c45f52d70bc1d805dd3457ffc4feb3ad42b091fd798ed7cace8d0c
+MISC ChangeLog 2078 SHA256 86710fed88185bb4d170d1c1c048dcb47f2d2b06e092410f70a08c3e85753595 SHA512 18ace18779fc36e521be42243a9ee937f0c55d95d1b017c12cffd3b6abd0b58b08dacac40bce490369fe829363cf5fe07e515acfdbdfe232a6c52594a725fd0a WHIRLPOOL 905857e152d800e93560fa54b3aec5ded7d54cd880491537a37791443696f5759372784dc0c67bbeff33865cf5291ed097348c2365ebb5c3085a8210d5f10b2a
+MISC ChangeLog-2015 3520 SHA256 d39c08aaf1650d30deeaf924fddfe214f40e5ca0aa24f39f0617c04406067665 SHA512 8f1b3a684d0835677fab412f6099b32f928498072fdf2d397ddddc52d96ce88111c21b96af4e8e41d36ca639f16c8225d55c4012beccc44f8be6fc3f66f001e2 WHIRLPOOL ea11bb3f9ba50e150d9674f87f774e5c17aefe213dc1d69bcf3178ff265bf645420193ebb4c28d7abded9f6f6e57cb773e43935dd79954c467d033d1acfd2828
+MISC metadata.xml 219 SHA256 4bf551cec942acf07d28760388fe51e995989d0839943e5660e9507a8a77a854 SHA512 0e03b8c4005d215613c55a2c860f091feeba320bfb713dbc24e642cd68de43e6a3e6281003b62f320c0f1bb6bdc48dfae83223f6aa91e00554a720b00d4f21d5 WHIRLPOOL 1c305e3a62d8333ee00fef9341beb2dc03a093cd4d3948c8f8e9e08e8828e128c718929c4bdbbc83741a34451b3e5c705750c8af73ff45b15c6e2f5538c697cc
diff --git a/sys-apps/vbetool/files/vbetool-1.0-build.patch b/sys-apps/vbetool/files/vbetool-1.0-build.patch
new file mode 100644
index 0000000..69d2f7b
--- /dev/null
+++ b/sys-apps/vbetool/files/vbetool-1.0-build.patch
@@ -0,0 +1,18 @@
+Index: vbetool-1.0/Makefile.am
+===================================================================
+--- vbetool-1.0.orig/Makefile.am
++++ vbetool-1.0/Makefile.am
+@@ -2,7 +2,7 @@ AUTOMAKE_OPTIONS = foreign
+
+ sbin_PROGRAMS = vbetool
+
+-vbetool_LDADD = $(libdir)/libpci.a
++vbetool_LDADD = -lpci -lz -lx86
+
+ man_MANS = vbetool.1
+ vbetool_SOURCES = vbetool.c $(x86)
+@@ -14,4 +14,3 @@ maintainer-clean-local:
+ $(RM) Makefile.in aclocal.m4 config.h.in stamp-h.in configure
+
+ AM_CFLAGS = -g -Wall -pedantic -std=gnu99
+-AM_LDFLAGS = -lz -lx86
diff --git a/sys-apps/vbetool/metadata.xml b/sys-apps/vbetool/metadata.xml
new file mode 100644
index 0000000..ad3f22a
--- /dev/null
+++ b/sys-apps/vbetool/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>x11</herd>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/sys-apps/vbetool/vbetool-1.1-r99.ebuild b/sys-apps/vbetool/vbetool-1.1-r99.ebuild
new file mode 100644
index 0000000..12110d2
--- /dev/null
+++ b/sys-apps/vbetool/vbetool-1.1-r99.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils autotools flag-o-matic pax-utils
+
+DESCRIPTION="Run real-mode video BIOS code to alter hardware state (i.e. reinitialize video card)"
+HOMEPAGE="http://www.codon.org.uk/~mjg59/vbetool/"
+SRC_URI="http://www.codon.org.uk/~mjg59/vbetool/download/vbetool-1.1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sys-libs/zlib
+ sys-apps/pciutils
+ >=dev-libs/libx86-1.1-r1"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ append-flags -nopie
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.0-build.patch
+ eaclocal # temp fix for #439614
+ eautoreconf
+}
+
+src_configure() {
+ econf --with-x86emu
+}
+
+src_compile() {
+ default_src_compile
+
+ pax-mark m vbetool
+}
diff --git a/sys-apps/vbetool/vbetool-1.2.2-r99.ebuild b/sys-apps/vbetool/vbetool-1.2.2-r99.ebuild
new file mode 100644
index 0000000..37f553f
--- /dev/null
+++ b/sys-apps/vbetool/vbetool-1.2.2-r99.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils autotools flag-o-matic pax-utils
+
+DESCRIPTION="Run real-mode video BIOS code to alter hardware state (i.e. reinitialize video card)"
+HOMEPAGE="http://www.codon.org.uk/~mjg59/vbetool/"
+SRC_URI="http://cgit.freedesktop.org/~airlied/${PN}/snapshot/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND="sys-libs/zlib
+ sys-apps/pciutils
+ >=dev-libs/libx86-1.1-r99"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ append-flags -nopie
+}
+
+src_prepare() {
+# eaclocal # temp fix for #439614
+ eautoreconf
+ eautomake
+}
+
+src_configure() {
+ econf --with-x86emu
+}
+
+src_compile() {
+ default_src_compile
+
+ pax-mark m vbetool
+}
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
new file mode 100644
index 0000000..93c6d4f
--- /dev/null
+++ b/www-client/firefox/Manifest
@@ -0,0 +1,90 @@
+AUX firefox-43.0-profiler-gettid.patch 518 SHA256 1bf7cc2ec65c8fc0720f04d7d92a24a1ee9cb634acf348c790be24b3bcb053de SHA512 ef681cb49d23c029d507277ed42b5962c5e5b85ff66e628bc4d09da875817aa65a01a48af311a6b7b9987f15908dd4875be6bd4428c59b6afa708565dde39e4d WHIRLPOOL 8b89e581977a31f8a10f8bb581be11e2a5bcb4ec1c85be64522ac955ce6af6a403cfec449c2e524dbdc3383de7684fcc2e14ba875b57b1acb30a4581d36e705f
+AUX fix-xpcom.patch 369 SHA256 beb618505cbc60228b75b660d2c6f976bc1fef72150868f1383c9c0b6a395495 SHA512 82043083b543b909a535f005fb044ca4b24037af0e89213515b85e536c51c611062fb8b88935cc2c8e5457447690f3de50b79ad43f23ce994a43102286bc4a34 WHIRLPOOL 6bfc05472514f1f07c8cd039b655d56f089a20793e2df35ff1206c4f6387d7828ddc44d0aaea7c29deb20af7fa689b46e3536f0ebf99c9cbad68b1640d946d1f
+AUX gentoo-default-prefs.js-1 821 SHA256 16259ec24a231d1d60097c8d892caa80d2703ba5be72304f6da55cfce1b329de SHA512 b63542c51edfe0158ce487b317ea6d36ffc17cf8457534adb6aa3f613d9a027f4285c9dcf76eb1b96de6bbc10ba09948fa6c081e00cfb25ca47450cbc32923f2 WHIRLPOOL 770d4b15f1b142ee1f59ce47f7b6d9e4bf4adb20a8a9fc104ea7d6c2481edb0d685c2e672008dbd869d92e8b24ea6ad8efdb4180421ff19ae88d0a9f6f752121
+AUX gentoo-hwaccel-prefs.js-1 100 SHA256 b43278c10b277a1f59dd1d381953b3f2a907b29fc10e24e3d75950bcef31bf09 SHA512 cf5385c793056e66b8853fd641dce2e7804d6878675afd24485487f2201801e1bdd5d27c15cb0d483eb34bfb75e7a21c01f1bbf701cb1c2dfa48f8f6422ed42c WHIRLPOOL 270aad6a8995e195c3eb4a6e54c123bc1ddedaec36e623876cf1241e6fecb695df1b664b79ad7687ae6e1fe82f7491a8d3a7af95fd400424f9a27cf15e4281ef
+AUX icon/firefox.desktop 276 SHA256 212f1fd0041ea481be63d46048384b781fdb1da1b8873284a8bcccd208605a0b SHA512 907e64274d96bf59bed14ca83b7307e26670e567ddf726c0ff4eb201a1641257799fa2f6b9698e671408ea1f21308a7ca499412498885608f35bc49644c71799 WHIRLPOOL 2076c00edd2890cdcb130abef6624b044973d1725da2d98bb0e9d3d72b8f32d86eddd157458fc9199d832bddddcc753a8e56572765f0d6cc410fec6f3a7b78f9
+AUX non-executable-jit.patch 482 SHA256 ea0088ee1da550e765dbef0a2ce86e48afe9bda9356185ea461d3c8529f88d19 SHA512 68da05cd0d86109d654df570dd1cc35c2faf0c2e0ec8db72d28a6557bb8eb64fb8d6cb6d2457d4d8b3f8115b08d29750d5beb6c08fd1f938fcbf61ff3b90d7a2 WHIRLPOOL c12074f143ae00d2f25022883f9a0e2cd898ca10830499f53a2805e3e79ef96173f19662febaab373f7587274fb569b5bf65225eae4add6186b90fbc77d92ce7
+AUX remove-stabs.patch 1902 SHA256 c8ec5d052dc30a4bd1c0f15ae9704567844b94d7039503e92d98e06ae8e1a8d8 SHA512 ec14890fc6587d86fbdb2ef1120ee36853a5b05a93b56f152e661d43367cf0c8237d5b773300414f88b85f04ff6254b2a5317d73010689e393a7c44391ab0891 WHIRLPOOL 53bdcdd66b642b638888cedf822fcfbac1376e59a7fd9f4603bfc5852ea65e425ca5b9747ae859a451c1bd74f4fd56c8cbaa46620589d7ef6d4ee3a18853be30
+DIST firefox-42.0-patches-0.3.tar.xz 13360 SHA256 8f1b592454695a27cd8ab6a234705d73363af0a5ecc5e64c30072def05fd5fc8 SHA512 4aa1ab7b8482b2d6af35cc293443678eb3c33a6eb2577fc0553ec94b3c3a3cbd7c322d50c004ac646296491fe1f67f5d199635750b0c50cc4f0742af704a9cac WHIRLPOOL e755b9fd4da821e8d0490e138531dcc55e9c9dd6ebbbf33771fffda9fe932df79c1d26dc8ad6b6dc9e8a444ee47659f7ef90846dc076299793db4726be06b94e
+DIST firefox-43.0-af.xpi 493733 SHA256 180ca0809e10b7a2e4d75cbed04394e1965187bfb018d9dca9128ae6d773de28 SHA512 5e51836b4bbfe51e283d8fc2daf3c971fcaf0aa6a58789d062de87c21898e61283b80e7e4861265fe9b1e33b47b3d8473bb0e343007196dacea1d21038ca57d9 WHIRLPOOL b48249bfa32b6ea9d6749c4ff429c19aae29d15ec288164623eea4daba90f5ba9a7c43b8d5b2519e96ff31bbdbff805de3e373d76ee7e44e8c546bff5a09fe20
+DIST firefox-43.0-ar.xpi 531444 SHA256 052f40e5c7c6540aaa37bc7f63ec9f7ee7d8554a3da0a5655cd7802f1cd17d9c SHA512 7ac14b4df9a9a15d892dfede4496a9b1615e2fa452d48befe11a1d0aa06b12dda41634dd7dccb0c206725848fa4a73ef160f7639a7f09175ff7ff479a18a9688 WHIRLPOOL d2c5ab81bcab0258948efe6c75f9da0233b5d1fe3a1dee22863993e4d399b81be13be1ab0230c846334918d4251f31314210e25235b9bdbb19c051f741c8babe
+DIST firefox-43.0-as.xpi 520379 SHA256 734c837c556346e1cbbf823d4587acde37ea1a1a2661ab225babc817d8a879ab SHA512 58651c76664a36d3fb241fdf68f40854ae49ef0456353b292670a80826b195fc9dff269a89737593602721c0f5d8e0b3273736330015a0c9806ba791c7f7124d WHIRLPOOL b5275d94042e4a072b5991befe3e3d9665a8b23bcf9ba50b4ad3af964f4cac2fd9bc7f3bf2b02ac14b585919e337c8429053b8e52c23f93507bb5dfb38e3fcfa
+DIST firefox-43.0-ast.xpi 414848 SHA256 ede7e21f36e207e4e0b15dd508f4cd182c7e6b6d95ef3492a44ab4aa72f87c83 SHA512 f32250f32c4f675ebf5a99be4f1fb5c26203cb6b7922fa73f92973b19cb76c3f9aebcb1be12553c873d2c6a3f0a87eff2aa5cd6542f410f1ffff1edba536ae01 WHIRLPOOL 1ddd887cec728dc31d847fc0218a3345f67a3270bd10521870b7a36ef6241cc733cfeac2ef86bc694cf60318e886097d8e23dfe5243b4197a61062824e2d0694
+DIST firefox-43.0-be.xpi 462184 SHA256 b3c0f019e5d37b3591904c79de04042d97acb7d6439a7e7abf54f49afbda95ac SHA512 3fc12633f7ec53d69e3b5f4ff81cd92991de6820cb9eb7cc7cf39ce3bd82eaa64678a1e292886056c3b42fa4cb8ce51003277861d65e5d87b83fb803bd7db25b WHIRLPOOL 657f4a0a2b5449a14818a9ed4636d13a57646f9c2b4c660f73255d88bc399f0da2d9d24b89031d77b2cde72209260933451882b1ea3082fb6028c6790aa0ad7b
+DIST firefox-43.0-bg.xpi 503613 SHA256 e6a0121f1e03017938cafb3db12113e86e662efcb04bd276d1b48f5ca307ce15 SHA512 afb08e59d0fc701462e7edc9c032c8445db431c235664e1a7e258d5256916d6532a0b9e620d38ffa7b68cb3d5ba872c93cc072dba000e4999d3a48a4af01a167 WHIRLPOOL 330cd83e971fc4788b5c3bfa3ec2b45a8b6cdce1ea7490ab44c0154acf635a22b5a3a7b0369c2b2697501f163d2b59d30c73154875a43ac2727e845c204cfb6e
+DIST firefox-43.0-bn-BD.xpi 550337 SHA256 d5d40903d83ed016efa50b9e8ff4ff29e43063cc9548baab7ae8907957b1c5b7 SHA512 cf22b6d33f4f16217580df8f08616e6f6a6a56ac88b566057526cccad669d74f68d23f0863ca77dd0ef82d0c82e72128e55859b87ef1de4bd23451793d57bd6b WHIRLPOOL 56c11a71f19a5d02896760e037e6f31f71423b9144ef2d65feb4235dc1cdd4f3d608dc3085fe379cb4280091191e0e52b291fd992f05ec75322b9ea05d00b947
+DIST firefox-43.0-bn-IN.xpi 541695 SHA256 441dc10f8a8b5ded1d37b9ab41c630272c4d1a4e03d469bff7f83ccdc1192c18 SHA512 e11f373916b3dd38b31e1177041982d035932e5cc3e962ea2cb37e238f48ca85f20982c00a5e43ab838efc80def7131156bd748bf3e8d83be02e71581a749c77 WHIRLPOOL 462f675616b29c2828be766a930a9a7d6ca00e0e328bee504b545af27cfa21640d3ab6aee891b276291dfec3739f33293c2a39a8a12f68593a36a69fec5c75b9
+DIST firefox-43.0-br.xpi 452044 SHA256 8da826f3a61e1b12d700ded5c905bf9c734f66ed9989e85021d8c8de0547e81a SHA512 ad3ac22c0a55204acf81d1113eb5251f8188c6fbe7f4f948f87ce5e1c6ade45f351dfa4b0a67339311d0b0af15b9d22ba98af6b953ad2ccceba52c9ea7a3733b WHIRLPOOL fbb13aded0f7ad787ef212f9228a1fc789306ef5f46e8248f77799e87804000f06bf78efa05ee5c6163124587d5bdc682c113da041ebeda55c246e4c67850d15
+DIST firefox-43.0-bs.xpi 491001 SHA256 ea3adaf1eb8b5fdd48b836bbeebe43f1fe717f5592b18486592632cffc70b4d7 SHA512 652d359e7fba0cf57d3c659e3af4ce52bc1807353e0795d9bfa7aeeb165cba43f44aa84ec0f28afbf657ab03afd4868f3cc87ae42ca9c15e0c106e15c6b8ddca WHIRLPOOL e9ce70815658b3026631e0047b51dd8d0e35746ea7d290538d5f717d6660958cd1d532845302e07c27ff3291ca083ce79191dbb287b3d3db386c1513570d6b7a
+DIST firefox-43.0-ca.xpi 469147 SHA256 67bcce2ee0c8006ea5fc2a472e5a0796683d92e516ace6a2437f139b1d82eec8 SHA512 9ab5c8b90938c214b0e0315f80eae0d39bddaae81ebf62283b3766c5bd3bc42d06229f33ab0acf55b35f57d1b439bf9ac1e9a165b99a01553b4aaf4c637e75cc WHIRLPOOL 5328d7fc4540159ad45b76665aca9c50b3174bcc3f8bd0669978abedb1d591a54b4bec091565962132185153a77d1af0555bc47209f3cb7bd8c9c90db254ad5f
+DIST firefox-43.0-cs.xpi 458382 SHA256 2769d5894095289660ae8a1e10ac94aeb73a0562ce6fd87a743ddf2ecde2248c SHA512 d04b118c00698bb9dee661ec82b152d22fcac4778a0fc56b99512708efbc02a3e8045212d0b851dfcee6cc3cdfb46adfb258c1265967f46936e5062823978500 WHIRLPOOL 13a976132d299b92547d27cc711afe16e0d3c90f335ea6c8055775bcc4ae8f6c1b57b874bea5f558f032bf311bd9ab9ad78ac198a696cb672fbfb2c3feebefe5
+DIST firefox-43.0-cy.xpi 454623 SHA256 d4de7555bc1cf528400d16e68872171116db6b969ed14a94cf8adfe4deae7d9e SHA512 8b56994d268bbbd5d9662ad168bc2327eeeac923ef11a560fdb4fb7cd32b6835303579c72f962cfd7e583f8fb711eef02fa25b824c89bd5660c5b5d8eb9f7d06 WHIRLPOOL 9dbb04513cbf38a269f932aa103e38be6f5d716019c04492b8864135360aaf369adcca3941846993cf2b0a1bc516234c7fc49a4fc8796a625bd13c89b9b8bd75
+DIST firefox-43.0-da.xpi 462527 SHA256 d796b27050648c0344c329ef0fb5c4d378351c802a496470e665ece2e1a27691 SHA512 cacc225b856ffc9dfb7f5fcfa17d266a77c90f90f5f4c513462d25fcbedcd137a9f081fa075e04dcc5bb4d9a52e267f23f9da9f68fc6f9189b678d41d2094879 WHIRLPOOL 02be3d8bf4b0dc9eee7581ef9805bfd5a11fbc0a18f6aae910cfb35a438664f4854c8dd29dee838e8a109eed6fc82ef2083ff6624bfbdaa0f14ff5383899ded8
+DIST firefox-43.0-de.xpi 463838 SHA256 e9f7735510f34f0cab6e742dc5b41d7c72f2e1cc25ef524267703971b6b9991a SHA512 00ce200b87acadc09403215885399e4df3107da097b1e3e0808c0adf62a171e2ca361c0b3f2886105e777ce208a2f82a9dc969c8f96aee066cb96e976a983c2a WHIRLPOOL 57546cb29cfef9c7eead1c8480e327ba38e945c2d22c1ef98f56718389a53318b54855cc942c291ddab4f03c834b81f386ddfc555e111de0ac47b7812faaaec5
+DIST firefox-43.0-el.xpi 508363 SHA256 587fdcb068bdee4bf8eb8e45d2d76afa9e5f516ae1bb8cda2af39da45e3e5630 SHA512 20c91691ec6dd5919a92d36d8ccaf72d14d48220feb8afae22205630f14a0f1ab754cdbbc3f8251f1fe35c0a14383d7ec81e47ae19e28dba275767e9433e0453 WHIRLPOOL efab18973f51c3909d27cd13a0d4b2b1a35e2ccb5494d7519d66f4ecfb4ae45622c171fe630bffb6d0093620bfd19b2a9b4ec00cf87f7be2ae30e1441cb988cf
+DIST firefox-43.0-en-GB.xpi 448387 SHA256 6c0b8dd0efe578eb8fd9546440dbc481e8ad175ed4a02271610a1cc43e838922 SHA512 efaf4d614b8e38b94ea805119fd2aac6129a3c7a7cd97fa62f2ce5c95aedc9be2b8598982fe88bb52d10ada8ed116318cb7ff9502082d206b5559f06f0cf2320 WHIRLPOOL db819a7242673c5bde1425f16b8e1336f114a5b328ff199d23a13d87a4b42fac7299e2ed499d5161476e184e03bdefe9b0dcfdb6c10d410dad5cfdac400cd266
+DIST firefox-43.0-en-ZA.xpi 453304 SHA256 e01def0453ce51d40c4fc9783e54bd93948dd75ab7902d341b83d74c76e8db2c SHA512 9d18125def313dbca75c3ad97c59e0ccec3d3b4aef0e2c3be45314c0588fd9860c13272289a4c11a01d0996216d1fb7df874e9b284f0923b1ed93bcd50dbfc14 WHIRLPOOL f3a1352b65dcf591e8c39e4746383352d4e2ae8b2f488f4dbdb1e6094d9a60a63c60c2c8fe4af03a44b3a9e6e82f3c0c0dc4802ee57d1b94011477d8c7d3e084
+DIST firefox-43.0-eo.xpi 494359 SHA256 13b1949c73bbc5dc81acd56012def20650a573e24b61320deab99c3ff019e3c6 SHA512 333a934a5f3207d6be210fdc8b01516fa9d6b50e9874816586f04a31d82951a52c16971ec178f882fbd9e6cc1de28d7427e4744de7892832f246cc8ba984386c WHIRLPOOL 00ee8643227af1e2818016a99cc93077af154dfc2b392d435ec253a8c586fcd5aa38dccf5dd65282f305ec74511655c61c57d8dfa835190b33cc42f4b737f5d5
+DIST firefox-43.0-es-AR.xpi 462416 SHA256 3bbeef6354c91fefc75f7222e39f0c2a34d79b4ce8f85a7d5dc080f85cd17b2b SHA512 cc3dfdac6620f25bd2821eeb89117ea75834c9dc1084594b3ddd6e687b208f012fd22cfa9adcd16ec647ee498799fe1613614f7ec8d72dfdb222da78c6cea33c WHIRLPOOL c331f995844478e5aa5f0f7c081bb4ae8a5ea8215782f82ec6c250b8300f8424bd0bc2565f81c326f5a3a76cbfb5eaff37d167ce90963a46ab49a767748ecd23
+DIST firefox-43.0-es-CL.xpi 388433 SHA256 9b217b02c75ad153ab6608b3b07f4cc93acd517fe856d177ca77eb66fd2b0144 SHA512 9b2b1a9151a3e98cbaf390da81b6a2f653817b3b92a09c906f949876ee5a06e5338720929863af769359d1c4ea13573dbaa27200e85fde8c48160da13d4f51f5 WHIRLPOOL aede7dfadeb319d3fdab65ac4c0bfa4673ea2db38ba4e2b15e0c6ba2a769797d03e438816a61a159ed27fb7d2a3ab2f3e99233d29d1b07f504ead3b9f54920ba
+DIST firefox-43.0-es-ES.xpi 375331 SHA256 75f03fed082391c5c315e86342c72b6f118dd5389dcf9dc1dd83aa0879aa3944 SHA512 addfab6bb71264a6a54f0c10e2e5cfef3b687613c002a9b620a4b92424a3e09159f2dddbe177954ffc5c0e13de1a76d585bf7923f395a8bea9bd22f4a51029aa WHIRLPOOL 87a315535d3a6357d2d64a7f1d57daaad17b3e028725e706db3eb40edc500dce96f7560aa59b5ca43e00c9b9a22ee379314b20ccb447d5d68752acec85c1aab3
+DIST firefox-43.0-es-MX.xpi 468293 SHA256 4228035182cdcf87c0754b87c9b0806d373f9ea874bfbd9d1e43960bc3a10bd5 SHA512 8b4eeb71f995a8a6f3e34706b922746652bd0253a998012e867023dde66ec9917ed0eeb4945a11126af5bb0fd624cd0fc9d78ea46770db4ef1d21081eba1dd4e WHIRLPOOL 1c110340161b488560be63a6f955bca25f2f917c359df2bbc92d58f63df2838abaf63d52fe8d4ee75f6f315d60e432b33d2789e1af568e2ec1b527d91c5c2b0c
+DIST firefox-43.0-et.xpi 455407 SHA256 1dd00b402340a71a7b55ae2863aa1a413493a85c48ea1f7c5f8b51366c7002cd SHA512 28b4e60a2c753c8be88b248fc85437eead70bc77836a82456656317906d60a95322937af8b98d3f24ec23401dfc6fd42852b21ad73af3d5e27718b4b8149bcf4 WHIRLPOOL 70cf64d0cd325a0245ac8944a18365cbf3957637ed0589c3088fad36e5f891afbedd72bb16d41adb6d89946ac390132de350ab5d73774e72eb29983b7bc538c1
+DIST firefox-43.0-eu.xpi 477495 SHA256 09117eade214d245c30f1aeff87e8f7152e0cb7b282049da8c30509c3e81ebcd SHA512 2eab6b700306f3644ffee09e536ec64b7a50eeb6bd733da4826f8009daa8b50c03a7cc68c56d5c1884d23598b5babe1e5b943e5bb3d93c8924a97a58903bf6b3 WHIRLPOOL 0daf336ffcd746d045bcb4c091da33678801220ac30aa9bca423903bb4de10bc75aa4869843dfce4317445ec9e572e6082a1f5edf366e1380ab437dd3fe3f259
+DIST firefox-43.0-fa.xpi 529696 SHA256 da4df284787b71339f31a1741aa8176f33833e09749400482eb7bf0a28c0f575 SHA512 1edb8b1c15264ca0fd4c6b0a36b653ec243cecc01d4d4058202a246148baaf609fbaa7d65f73802210cacdd14f8af44d2cec5fd5fe92135e964e395f3d97b168 WHIRLPOOL 91df7192437000bca6e3249e011cd870c09a45971b592037864de746d4afee1c09abe1d24553a50be14111da54f153e762ba320bd155882ffa4e5ba12f4d89b6
+DIST firefox-43.0-fi.xpi 454716 SHA256 1f2c6283ad55a5f51fd936df96c5ad12576af5101aebebb59640959657105993 SHA512 f3a16976e21d2d81f75d8acef4b54ba55b123ac8ba8521b5481b37f56d3ae18732a6853d5019ec9a55e4ece9108d474ce11bc94ce864e72ae6c6ac63c3638125 WHIRLPOOL 3ba46cb5afccafe0d5fdfc9423d655ccb371749ee36e7a69dff462cb6e69eeb3334f59dcd575f0f1973b3a8babf3c0fdb07d3421b00c6360ce5a25540c9c1089
+DIST firefox-43.0-fr.xpi 473567 SHA256 0d9bdab9b3e7de4aace3cd887c202d1b5ce94578afeccd27f7abcaa0f29bee8a SHA512 bda04b379d086dbd01241776bb8cd283f84145d4662cb7aa12b3926b96c2fbdf97604c97b0f26c9288e86aace04f766873a1ef3c0dd4c6e3c4b92de5e08a87af WHIRLPOOL 3c2f0d3b30be1014d3f1aca189640cf041dd6116847d59fae00c752ca29823240aeae9ee707c08cb004ca846de39f4ea5090a63a1dc12f3094b2dcf2189628fc
+DIST firefox-43.0-fy-NL.xpi 466643 SHA256 ae5f8a371b5e7af949c10d2a85a84853b7d5a0d4bb0acb1ff0a507fa95627379 SHA512 65f7efd1cfa19ce12f1879b5d026be1a908b5c8f0c53436da209d19cca4a9e9edd1daf3ab12d884b802642a232db1026154e272650bd3b3fe77df62ab83a4951 WHIRLPOOL d123947d2270ca85d96210d7634b22b6b421ada61173c2825d58b7717f9473014f9a932807b55e7e4922a02ee834a62d0004f5e114723eae0967a5485702ae5d
+DIST firefox-43.0-ga-IE.xpi 478965 SHA256 d3a5bd8a179e94e046782b46aec9f9aa3e704b7f5dc1ed0afb29482e749db3aa SHA512 b49c9640e98f7a33714ea4d52bd1f3a97b71a220b5fb61794459cec458ce8ebf53e0748fe8dc2d2034f192272ed476a37e943b2f9f8e1def2c0d0e32f3030458 WHIRLPOOL e3c58b2c73e724f4caca0e0f8169ee04e53a98c74a76f70795c50dc7e364bb6acc121176fa081427aab92e8483e335c9fa1a3e7e07ee41d92ff7ee43fce920e5
+DIST firefox-43.0-gd.xpi 464867 SHA256 6054fe8ad1dc52a9a4e44b9d0a0041d5a1a5e4c44f00e13b51da04bdd9835a24 SHA512 0cfb57f1d0d1f135b8586701e49a296d2b5db1902a78dd2cc2d74e7ff3e5cbcf04a4af931d2a4217b5e4fb2ec513f2e08871d7df698ce2193e1017c33692c031 WHIRLPOOL f9ce372b9c33368c20c65872c1692b7522287a5a3227a4c82ecbe2a6ae1720a703586086ceed76001de6e434f3a2e43a6d887a9b9657239d5cfd079b7536bed8
+DIST firefox-43.0-gl.xpi 454572 SHA256 dc8822ad694c1e1084763e5b8ce87ada3fdf07f91fa6bba39cde3e726ae8afc0 SHA512 7887583d51e6ddc00479791c4ad7961533d2a6c362145d660f2abffd76b58acf3fba112f273da06e11499a5e4bc173844ff4914e9003ec023d93fa6212b27241 WHIRLPOOL 921f36f4756b13be6684c65646e88718673e7d1c261f59d0e028cea60300bd3252e4722322c4f0c2a348215376d8fa556ec8f79b17309908de69bcc3c2024043
+DIST firefox-43.0-gu-IN.xpi 495780 SHA256 30468dd8973c4c048a9f7c696245a2f829b89c2a79dce9047910286e1c625f5e SHA512 6a36dc17bd750d542765e8e8f86443347458e074305c67f57147111cddc8ffdd175ec0af037f6975852b2416de68593622394ba59c8b06d33bfbdb92c294aee6 WHIRLPOOL 3b5cc686b0bb9e0489b3e4e66d9ad926eb3d92feb323ef2d0da7f834f09ff88cf8358f8ad81f61101054c2aae594a098f5ae1c8f69578eaa6ab0c313158112a3
+DIST firefox-43.0-he.xpi 484108 SHA256 f3ce8f23a772b944aee103d74b371cc14c0b78deac152231340d5cad15d0379e SHA512 dd80e0abf9efaff10d71f59af7f79877452592369a0292b579f30ae355bad941db239706a509ced4e4e3fa1667033780c8ce060b6278fa53f33e5905c74fba69 WHIRLPOOL 52ac5cce5ba50bd53cd559e7226eff9df5f15c4b7e4b64aa5f390da0eb9daeb983902483c471045b1b1f144cd3ecfdf0153c60b93d97f3a08f5b83c4dcae7e8d
+DIST firefox-43.0-hi-IN.xpi 519472 SHA256 2b0ec3e6a920e1c266ce7636ae58f405c6846943a96c14fb0798767e6fa72a26 SHA512 bf969e0de595866cb3a68b48f93574b703c2cf210da70cc7bce0dfdf1f9a59b2e1400ece110842a0575a3064eea48946e052b81947a8da9e8c52910e85143ab4 WHIRLPOOL 03d703efd8160d5fd49f5804e5dca7d6b0a1faed30675c67b82394d0b3c1daa5979b37e9de64c415c922c21d516dbfc4b3c02fb92498ce845fb268d30d6f8a50
+DIST firefox-43.0-hr.xpi 489137 SHA256 f6bf0f17b16f182fcc35763c910f66aff492c10992f5a30262d9d902837b3010 SHA512 ad7ce372b38efd0e56ff5332fafa06cf8d41d1ccc0340b8ef3f187906ee6659abf11c76f22b54a79ecb36a29a143a6991bb0c50cb1530f55aaed2e6aa3a14f85 WHIRLPOOL e75026cfd538a83018f861c4d096228db02ea32949d8a7690372d7e692bb562472a56c403a2b16dafd3c36cc964bcbd61e5ef95747e16fefc30bbe714834accb
+DIST firefox-43.0-hu.xpi 464706 SHA256 7e150a90460234e7aec18adc9a22898d038165e72853cfa084b8e94e52b04f97 SHA512 5ebc94baa54bbc506c5791b85bde4d21d0305a2499bf40d3f28c13d9d355f78338a60f089a3fb582bbb0c46aa97824cd60b41a00d2d281017163fe2bcb4528bc WHIRLPOOL 20ca6bbaba1ae796c5cc5935f0e486d390cbd0988478ba06edb91af3e9d137beb38ba0a6172a474a798f22b53c7821025b3d128d685691a3f6bb38e52e987b5c
+DIST firefox-43.0-hy-AM.xpi 548745 SHA256 e8c55c8d35e30ef89101074e475887d62df5e1bd45861b47072e568087b1db98 SHA512 94f98657059ec3e86f65eb4801225c6127791e72ebb943c841b1a0fb06f78f5a3d5f15067cb26f0279b02e71bfffb708f83113111290fff950935c50d3b1730f WHIRLPOOL 09ebabbf0349004021fd896054366b98a7431efd02c3a8cd8024b6810b3d276fe7325509599ff8b46d87aaa153cfa045c24319aedee679e73559c9fbe911eb1a
+DIST firefox-43.0-id.xpi 443808 SHA256 c39dd9abfc83f3bfb07ab981a93ba87ce6ecc5a32d43c3a604d1eeb00270fae1 SHA512 31767fd2d94ff6e80709837b2aacd6a884d57b80c1e3f714c785352cbd71dbdf3bb215fbe34347170eaba39cf79b46c007945915c2fb814bf152275eb60efe71 WHIRLPOOL e57a5c3b9b9ee4714a06509ee0e88acc890c7ea21203ac58982130a3861fb12d8150b48f5051cc3094a8bff1d8fffe0be4898fa138e56d887785f20809f157cb
+DIST firefox-43.0-is.xpi 495903 SHA256 9bd135ae55b859b73d6652b256925aabad6b6a682d5fc25a2c59cdf16fa25602 SHA512 9c36ce12b984f5c958cba82f63e0d0016326836a26d67eb6d6d99c826f6578ede8ba970fbdf1fd4682e3abe1ae9a66841a7edce628a06312b697e5cf6a36dec4 WHIRLPOOL 97628ed4b7b069fa27e242f38db5f525b9b85f394cd2de8255be12dfd113bcb57fdd15e0cc67a6a6f9654b28942544d2cd17c5fcb22ba424fece81a40a09adfb
+DIST firefox-43.0-it.xpi 369328 SHA256 cc6e3904f6f47cc2e9a97e81abcbcaa77d12998875e1b2591ee6ab57c880af78 SHA512 c1436f45e9c03cab9d4549053f0de5d2376376cb00bd2c77a1377efee184adb54a7affb61ebf2d2727a393aac342ed040abac0d9d024e53bbe3f686eeff2fd44 WHIRLPOOL 8344b10cf143e33133d7544142944ef72d8c0d0566f3a77db0b5fea27d1f2937001528a2c2605f31a1511d0ac3f958db8a2890e067281cca6533d0c1f8339257
+DIST firefox-43.0-ja.xpi 491471 SHA256 5813f20c7c3f596554af2eccd33cc07e9e6d20f841dcd7170dd15d5c82c26874 SHA512 808f3126bcb5b1b2274bf2215cbcc101f7627975277ffea2c4b82785f790657482f8ad241d00d0775c933e66b622da936af32717d58375abfde7fbfb358b6223 WHIRLPOOL f90e7861cb97c36b11dcab86ebe22db148f62ea351f7ace911d9580025b06083496ed1444b2f4e6c049fb2ff0e83be3228a6a3c837507616156cbb2952a8eabd
+DIST firefox-43.0-kk.xpi 516824 SHA256 0cda2982d9d0f6bd414af2881fc96515498d10bf5236b1d9eec6c1a913240d0b SHA512 18e57836e712aedf028cbd1d7b5d33eb003f7d6e59dd90129ef50da62b8215d880e28cd50e860220ddefade98c00f3bcab590cf9cdb0006db14ee89fafae93e2 WHIRLPOOL 899a6a4504872a12820962e29cdab14841d488180c1187cfedd9451f103f3d2b788a42dc9a1b8367ffe8c7af5d191628980d56775f550914e39533937b987097
+DIST firefox-43.0-km.xpi 581655 SHA256 884e57663c7b26b1e081ffb256437579356e660f79e832ba38f44acb181fb8b2 SHA512 73c5d4ca2250a72aa45506376876d27d1152ea78cde4bc8ed4b6de8f7b75849c99e1f0cd70db214c09af9e146179be2c73c29ab4aa0e9b02924b29ef562e4c15 WHIRLPOOL 4da6fd2d263560aea79bb79aa5d1dcc661817e0766bc2eaedb45d5026638d8293948c0531916a1b94e4d4827290b7c63250ca7f4751883586135f431efb26e83
+DIST firefox-43.0-kn.xpi 548584 SHA256 4b7d44f69494731c58b1a7662c1449a4074b26af4065c7dd1760ea30c70ea136 SHA512 c4b041b2897ce3ad0299c6871aa925c795d8df3fa4a54817b5137a390542e14c802fae15e7d46c2eb8667b6857a71a49697b0b0f29df3c81fe9e3527c710713d WHIRLPOOL ca63d17d6eb29310022f0c41e85eb2633d81cbd8cd96f2254a0305f05140132d7d52b4b40790e135c939dc21d5742026a0e409106dd841e5c79807c102118255
+DIST firefox-43.0-ko.xpi 477481 SHA256 30eef1e9ccf6424d2c9f5721599dd4ac0791195b5cdc5f781454cd14811a919c SHA512 6c443214596c764644ac8be520e411093f6a1fec3b4d37dd9fa8d79bbb5c878a805f70293ead1c6daefed0ac4e8d588f99d131b249e9fd57a5c09ab9e6231ae2 WHIRLPOOL 5620b7625849c07ddcd505cceb0b85e30dbc550732c5d261744142605a37c29e7c56e1f7a23f222186fe6fb2ba930f03ed5fde3e2afeb60915242a990b18dee4
+DIST firefox-43.0-lt.xpi 498171 SHA256 476d124015e140254dbf3dc8eed5ab4e13c754d5e3642698c3af42f4d027a0ec SHA512 b37a4c282b98a4bbae962d8b5c658b5bbbfc9fc14e094084357ece6cd3d1782aa77771ac8b81dc452e4d0ef795bb70037cb699677707cb4b522a16a4a4169742 WHIRLPOOL 251324466880940519325f3f905170e2a219fb1c18c6a59ba5a39f3cb7abd09367f74f8fa0918de3abcf399721cf186df7499013e09be57fbf2acdf88cca9ec7
+DIST firefox-43.0-lv.xpi 478095 SHA256 772e85d5d01934cd8dd3ab5a56fddcddb2167f47fb7e6f5b4bacb617979a0ec6 SHA512 22829c87729e38c43af515acf733c07dd51da31e63891653d5e03bb1c77b548e82ba29b109bdf6e5d98790826fc4324a4269f5cf3adf935f05ac1e3e9ef76e85 WHIRLPOOL 60469678fb0b980851856adb8c7c500d8c4f115bb961e7ed08371ed42efdf53cb8875ff4fb476740e2d3b2cfce63cc0c444a84f0b6827bee85728540bd6a18ab
+DIST firefox-43.0-mai.xpi 527785 SHA256 935891c42c61580d95a9b6f858a46ac2d69edea0fa3a7845cb11c4729eb5e344 SHA512 7905380ff6eaae895f971a2a6ca943bb002c0a696ba4fd8829a3267404aadb9f45d653e4c8df04a64cbcb9006bb0cf67630d2bb727c14f0d6274de29469a0daf WHIRLPOOL 408d30869a01f46adf9cd347548590a8527729fb5683c7d482be05b6fcdfe781922391051247b076a7c68683b04ce1555d32bfb5371eef0c84d11af4b0ad2bb1
+DIST firefox-43.0-mk.xpi 537950 SHA256 aacd0b020ed882083879d37cb050b6f155fba47359ca03122230c6a5189c4611 SHA512 4ec972bdff91d0bee7fa110d1773c33d204ba49da65685c16c4a09b311272c0834cb8df07fdb64e0247461b69d28ca37a9b675939ea9af71062541b987893741 WHIRLPOOL a84e206f13089d3bc3915ddaf3d8479153b8b7887427428423495d0ae85137bff4e576c88f43c9e7881126f88c92322915ab21c066f82ade1c5b316d9c171efc
+DIST firefox-43.0-ml.xpi 537547 SHA256 a277d1faf91d189f19eaa01d5ffb07dbbd36dcddb5d42b3ef6e4f143a98e068c SHA512 29a25822725bd4f655ff23b12290ee6cc729a6b68dbb1f29b4863d42d74fd8f559007fb5a0ba6d4f20d015b439da1ce6c282e3eb5348ce30116add743ac25c39 WHIRLPOOL 8b0eeb9852dcc3f805638772d3928a16a74ce267a039567deaab92e07fce40a15fcf6ebdb32e11cb5d2f535a6bc3a8c4b38befd7b6027ff3fa8ef6618773183d
+DIST firefox-43.0-mr.xpi 527026 SHA256 18698ac9fb2b4f606a22e883ca7765482d2408f77fe2466c271696f72c49e3da SHA512 1712ae876936b0de2104cdba4c59476911ff4f4ca8d379fae3e96b22d3c10206977858c01d2c5ab475b0745cf3de8bd46cfefc883e1cb0e1ad09c0304c640644 WHIRLPOOL d96fc9814a57702780b69b3769bc0ae45f8038273700673129705a6724c9710eae0838e5efcd8897698dfbbcb73f92005fc3df45706b71f7243cc21675c604de
+DIST firefox-43.0-nb-NO.xpi 456064 SHA256 66b9b339aa4b4d28773745f89db1d1ace9e4fabe49c59ac9430a6bdccf6be866 SHA512 78cc98dd88cfe148a47f09f84ff791b05c5eee298c392bfe6b939d21357ff78bc5eaafef061f8a6a2ebd5276a5fe6be09f10a70db233926a9e7f8f6d2ed4833d WHIRLPOOL 82f3fcb5d793eefc8444d7d0d70d4439091cf0eef67b31298a518e13226238dc15e195f81c07b0006cfcfd9ac45359568a397e7d3bd568624ebf57096962813c
+DIST firefox-43.0-nl.xpi 454466 SHA256 8ac68a97e0aebdf63dd6691a279af5f5c107c7a497974866966fb060ba19281a SHA512 f4599043089401df12f8ecd841e92810c95317e08dc26ba78b304d17e0a5c0ca071db83ad75504c317ca132cdbdd7b37ab22a6ecfa537239b4bcb10f06cd41e8 WHIRLPOOL 6c54d65fcf002719c348b4ead36d7020ab137fb809aaa6f0f8d2b16639282e16f1823962948016062b627912d82c9a8cc673d783d4d7da7ae476e9ccd93f3a8d
+DIST firefox-43.0-nn-NO.xpi 450232 SHA256 6766906de580f7de713c5a46c91782251075c736ebfbea4a2c0ec54dbe4a06e4 SHA512 8007c9ec91793716dbb183bdbbd5d074c5e4f142f062fcc217245ddd2fc530513980e5d97bca86dcc5d52ab93ccf6f17bed3fe563ed03baaedc63c7e46a5e3ff WHIRLPOOL af7eb9c66e8c2f880e1d70f20dd32468411a33a4755c84f064ba252c77a111c29cb68121dd4c20ef806801df783b0966f0d13b63522f00b68d0e2929b6cf1182
+DIST firefox-43.0-or.xpi 536910 SHA256 b3f76ca55ac07a60a81dee0988ac99275d973c34636a5295a5a1b61227cdacc7 SHA512 4710154668816bd7b05fd678199cdd1d0d58c0e4db3c84caf39239f1a5d08fcf96a53c7099452af809b9563e2d5e48de916d1e61767241e935336c5ad92652c3 WHIRLPOOL 5eb2b658a2c5a03277c5f15e694d1d8a62ed7ab992e28283dc2cf6c09720298b61640e847eaad38a0925267c7d9656ec46e0b08de878f8026a9581b71c275edc
+DIST firefox-43.0-pa-IN.xpi 511158 SHA256 366a751f0c541549808e4f758e3d89429ed9dc1ca87948cacbc1ecd45547238d SHA512 ce512a642e9681118776e6cbc1d3bbeb884a53acdbc32606657685827e2b9fc8ea287d33562febb8cae877e8ac09e326938422a7109599829300857a04e3d400 WHIRLPOOL d09bad42d028d9267dff4569e081abaee570368ed716032d8bbb35780b979cd099799d9b45397fc7746a367be1eab2cf28e8592497ec9080212d2484ba9dea57
+DIST firefox-43.0-pl.xpi 404459 SHA256 70421961674fde783e70065664025b16398f2647e749c8fc9e8d15105c4c8560 SHA512 17728603bb62a7dbe413f1a126c0e82881be472d00c88be1dc5201d6728365f904c840387a0937265143e4823d1a73569cdec643d8a6ac04e7400390c27100c9 WHIRLPOOL 8fd16a95dde9aad7628ff039600531e84b612a10ad49bf670f0673144ba88e89e74b1b3e2435177da1b11a5bda8e716957a44e0c0b6bcc574d980420ceb71d95
+DIST firefox-43.0-pt-BR.xpi 473005 SHA256 390cae963b46fb20ce1eca25e55461559ff34f17f8cc2cd4933e81311c868e81 SHA512 d14d447b24a8114670a7f6159d648dcc563faed4b31a2d516ee1794c7cc9682f61deeef3c549ce4e04c0cb9f64e7f9b2ffdfb85ee91f5d92c2560245d7cf4c04 WHIRLPOOL fd2f6cafbd5e6894476b2936d1a680aee0fc31fbd39f69b405a376fe19c442cacd4e954291ced998eb6116519e3664e7f93b5d96edea7189fa5737c0045b9400
+DIST firefox-43.0-pt-PT.xpi 451857 SHA256 fc5f47bfb04fa48f8c69f5e2bf85dd7fb1f58f87a3fe6c2130df947cf4587e50 SHA512 cf47aee9052d8a61d5b5f2a2cc896e52cdfebf232ee158606720395db65c0cb05588210e4f72bc378c12cd4f5b517021f656637c261d3a4151a5e0466bee42a8 WHIRLPOOL 0f73ddf480264416eb0732b40bb187e8892f1ac339f787f54034ebe0ed454a01eac055bbbaf229f976812ce163f86cd4a7fa77d2202411aa71a46354b53547ff
+DIST firefox-43.0-rm.xpi 457313 SHA256 4196a0cf866253eb914723c4d5257411faf80f8abe38bdb659960e6dc5be2f29 SHA512 f04b489bd1d2318bcee3536a6043523ad17ba39f5a7438505035042dfd5e9ec133e7cd8389ae62f9f1c340bf8afbf27dca9e4c0548474c8c9acde61454ae4a39 WHIRLPOOL 83e5992702be7c4ec7aa69b8a6f82f0048be404a3aabb20eb4be580db19929afea07d438ef2db5d55e15806acdfd5af0f3e9617e8f1dee5345f1ad61bd09d3d1
+DIST firefox-43.0-ro.xpi 505832 SHA256 1d67763e94d33f2d4ed08b59a0582340f12153448f1dbcf4da8ce6ce2ebdc2a9 SHA512 fd6b27cdab709dc595a8380b061e1552106436c6ee245bada76e64dbf26c8841d2105243188171ce56458a5554ab6c8327c81327ca628ecb64f0269a0230626f WHIRLPOOL 212eeaa123cddabeeb089591c3e3c53ccf3e71bb305f4fbebb7ee8fdc4fb49d7ea31a728a8866929b18df9c54e18073a9550b9aa94b91493b2f41b0854cc6b23
+DIST firefox-43.0-ru.xpi 417904 SHA256 9cd929152d325f703607d50faaf771ab2f424f87bc19e4af2c9a75615194e366 SHA512 cc74b74efa325f5e6fcc7cc20e7d2696452ebcbc367754a404d4c056b4d8ed7813e8967fc18af9a885a6674807e1abc57c91f93371d180098f293c939564ec3a WHIRLPOOL a15f1aca59df28a38f44eb157fc51a13b5782900279fb0224d396352fc6e494e46bbe8e40aa846cefe8d27605dfa9c7b495d8c3b5d388a22ba5d7b3323df2918
+DIST firefox-43.0-si.xpi 548391 SHA256 bdbdb92280d46784bed8c7c706f501f19630647177f7ad2e2d11f38d3dd84029 SHA512 a8e3b9e37db4e46435cd490da545fb95d5bf7a1e891d5712f9d2ad97c7e770c00f1a9d7e0a50f927d56e502bb666a846d78dca242278f4af03235921c03c746a WHIRLPOOL 2018c9641d91adfe2fafad89f848df772264a827329a87a9a524f3d99d77017867918962dec5ad1cc79c588a4ff9532c341aec6b5ed3d3b51e13c51ee76cc5e8
+DIST firefox-43.0-sk.xpi 480518 SHA256 272b4f17c16e947c86fb92823bde2fb9fdd23ca76f9cd9e6b749afbff63a4827 SHA512 c6e55d982447bd395e9f4ee8d8f180ead9a8bf8d4aa3ab0cc5964da1bf4048e4ba99c8c119a26c736f9793e13047796c9af159e6c19a7d3a7d8686d6e03b5422 WHIRLPOOL 7cfd701eeb22611e5e53fe2f55f6013068ceb563f03ac31529b6a83701a035b80b344c7a274c127c9e802463965fe8e18cc39db9fe1575b940dbe49dc7b4a77b
+DIST firefox-43.0-sl.xpi 453337 SHA256 4e65ab619fa3c7dcbe96c8e045753fbf888cd8f8b43620aaf2dee721fd62ec85 SHA512 493006bded1898d06424ae8ad7b3c888e46fa506c4d9122bb14da9d7ed2b7fd3624ea1958111beacb8c5ea5891b3f73942a1bcd4dfc34459751bed03ef2a9540 WHIRLPOOL e6f3a92b7830f5d95435e7fe3b1dc7c3ab07cc8d91a2dd1bbca8169eafe14bb5928bfa863de802cad1c5f20f780119a0f833ea3d51e55312d46adf1042059398
+DIST firefox-43.0-son.xpi 462150 SHA256 7a5bd49bce76fb5345ff9a1272bcb980ebea19c7c44b5112dfdfca43bd7a7763 SHA512 10e74d588f325061af1c5542247145b4684f2167577ae10116ebfddfb7caa7f1c3cf5de69721a9eee36ed4fc5efe6e887ac4161fac4e8e0e73c1457ab741ac34 WHIRLPOOL 3bfd63f0f832e36a73eb46d8b8c3b811181ebd2abc049891fc4afc8e9f00a2e6130878f4713dbff8e5cc4ae21e551d56de4769b1628df11a72363323eed4b8d0
+DIST firefox-43.0-sq.xpi 497505 SHA256 544adce6795116edb9afa90affa7257784ee8fc48466291ab1dadfc6fa24dfb8 SHA512 788fe39d3c3f8863c552ecf12c53aa054573f7bd390d901587d0bac0a68b2c55baf46622b4b2b1b9c9a7cbba13ae7f8bc0f2b3dfd10fd6beefb0b42f22c2a92f WHIRLPOOL fc53a6212c77e60e25563e956969a1e1634292e5c7f2527d9105d5548e94558266bc32cae85c2c2e207e3fdf387fd8367841b40933cc61208d2400702d9616c2
+DIST firefox-43.0-sr.xpi 489348 SHA256 f36b0b495d0ddbd513a0e766176d9277c27fa4d75bdc03beb3b5528e67145872 SHA512 ea5edbdd586c504a80bc165350d7399641c71f8bf48ecbe3112dc1e4e774c629d48b7a97c40f43a427edd338752ac2e959f92d448b27056abf19ad95ca3c334a WHIRLPOOL 0d038ba0df1286f5d3e64efe36346010be625f95af2be2e8845164f0f1f0f2df0a9426eb8cb6eac0c4d4d39b264acb4e20bf028d5c9bcfd9437563e5611d5728
+DIST firefox-43.0-sv-SE.xpi 463026 SHA256 ce72df8bbc670b9c1919bf03d8f28a884ddff5852cbe15aec4f18efb800e7880 SHA512 a79f2ebb17389fc13097574d208e2025ba393d08ecb594deba92db62954227e83711bcfa72929ea44c56652f81e2cad87f94cf88d8e8547189a5fe31ea1e188b WHIRLPOOL e77196f0491660f03d3aaff792046480443245c0759169f9fb7aada642d143929579f6b5907f2d672a82eb0265e62426857c1383a45f0af7e25c393a2f74684e
+DIST firefox-43.0-ta.xpi 519588 SHA256 17610620319a3b5130e461bef650bd57e36b23193e8f3967630b082d76bf4013 SHA512 7ebfa17bbe2162f6f6681fbda6a41db3443b5c3a931ce1a6fe6fad6a9f741ad49e2084dda9551bf06283b13ef473b909b213a76f3be0357c72afadf0ec9af84e WHIRLPOOL dd215ad96901539e7430df727789d1377d15b5a16db6d817f0e7fe06f4387fd81da51cf0cd6bf80b709bb4fdb22f859848672b987140b397025b92f1b0b827db
+DIST firefox-43.0-te.xpi 537275 SHA256 dbae929748c411806220f676df7588e653594cb7ad451fa4bfbb265513aac204 SHA512 d39f3fff81bd2cb357cea9eab1cae203929a9b3196ef1ff8aa1d95a3562a3e45ab1a58382d7ec2865e69f77cd18079516e9b689928e1c0586fae21aca8d62156 WHIRLPOOL 8602a40eab1a0bf68c86209931fb9cc77a697d3bace33bb865a52dd06a880cfe3f8cba1b482303c09bd42cfd1e2b983be9802e14baa4c4f1c3013e55b2bb58cd
+DIST firefox-43.0-th.xpi 546507 SHA256 a251f642989c8e00dadb204767713e33a9e24f025d65218ae4cb9315ce240ac9 SHA512 ea41b9f2d113f643d5f0c00dc5ea530f284400d35f59dc7d998a9749bc71a38eb57be9d7112ec9fc2985a96e129f528c6ba4049be850c317bbdf505fd5a73062 WHIRLPOOL c4eaf342c4ed3b3bcfa968b0ac8814481582587ca216638b6fc970bf59117873c4c8e095044fa0c3dd8dd42829a8ca388fee7f263f701d645b7cdc691c09d61d
+DIST firefox-43.0-tr.xpi 492359 SHA256 d2248600b77bc5d38497c6590de89b94ae581b1734742fd7aa65d6827c7febbd SHA512 0379f705d070bf1961b04c93c10af781f43f3f5a574cede24f86966ac64ef2938e9b51997337ee6f64584606b02d3a994c184c90457a206ecf49e49c3f237616 WHIRLPOOL 60cca6a26251daf9d5db836a5f996dc4fd5eea916dac80a9a111751fbfe124b4816920b42b5be45aaeb645488021a578378dd6617d56864e87d345bd45c675b0
+DIST firefox-43.0-uk.xpi 508884 SHA256 b1d273ae648baa73e8f6bbdfe56242c89cbdc0e5b6c4fa83fc2850013c28f4a5 SHA512 44a935139d53f823a1d2ed4913d3230ef14c534ea5436fbe4997e620a9bffc42729ea73589af2bc1bb9adc931db5a0159d50c2b95bed23b14f9f8e4f4ee946f1 WHIRLPOOL e699dbc49169d9dab1c4ef5526cf8ad09e2043e6b58b5b5fe643ad167ad52cc234976d327c32ddcd639d7205df372c0c7798eaa285cffebd99d4c9a086be4a5f
+DIST firefox-43.0-vi.xpi 476612 SHA256 a92dd9fb9c66e40c86df450c3fe856e679d50905ce9126016f31afde18e74f06 SHA512 b20d46e3eb9351ba9b36a605a56eec6dda6c2f1281c4af8ba723a96fa8abed1db5c42dc8a25235f6a3e5869f2f2bfe915bd9009d1f08a55ea0ce5f92cc4c0bfa WHIRLPOOL 8c0e5f460d0079917d5746050bb804f16974199029f2940d49dc55198dbb41b6470ade15be2546975496672502cf87b1ff114891230bbbddcd89bbd471fec560
+DIST firefox-43.0-xh.xpi 458719 SHA256 f48562863c31cd8ec05cb0e79323fbd4b0c8426e75a387872e0e9f4a8483fe08 SHA512 ec79cccbba9c27e4c6ded11c45d7e3d81a058de217401c6a9f1862ae7072cc19329046cd59940638706ca159c2afae0e4ed061bbdef79230f54d60ab67b79684 WHIRLPOOL f0ffcb30152f77a90743aa58e1fef8cecf433fa0982eb9c8ed0300f2c33f7672e6fc0f2a001b874a6dbefbd0c1e48a1627900dd3f9ef28212c464bd5cc7cc135
+DIST firefox-43.0-zh-CN.xpi 493639 SHA256 73c74a35f7862f6e583d2fd9edb6fcd3e565c564977897896761e2ba153e1b54 SHA512 1298691174e95bd79dfa24602dec4d7cb5228e9544bdf404215ac4bbee1de7230b6c9989cf8305956d23136c10470a0779233124b3f3b5ffc695230bf43301d0 WHIRLPOOL a6674405f7ec161391b7876d8f1168db2719d653411dfdd17c2373560dee243914565343c3d3d48587b7b4d07dd3edc9443385a2d5fe78e2b454961c068f6e60
+DIST firefox-43.0-zh-TW.xpi 485317 SHA256 488fb84380b3729e2c78c2bb5c9d4046988f4c457727ac19c9458f92f1fe72fb SHA512 e5a32805e3e68b54b3ebe19f5b1dc9a606df232cdc7df301a57d6ba39ab6d69347c27480c2162e30cbdcf1601364c47f3811398751ab4f63f94763772212bbbd WHIRLPOOL 2273baf3e84b7f390a9c121a125902dcf1d625ebf4b96451f78642f16dd2e62b5abf4cda70a66daaec25d68e15e5bc1cd0cb460cde26f18c17008febf6198396
+DIST firefox-43.0.source.tar.xz 175414296 SHA256 a5b16741dcce9344ca71e39e0efb0e7e1336ca5160cb9b6b12f8985f402d8fea SHA512 3ca37428d1b02ba2609ec526e86ab96563b403a03efde8439cbb4acdb282b5970ccb6a14266483c839389d59e07f6b0297314890ee04a669ba2d4b10bc4cb738 WHIRLPOOL 14d8d90452bf6d0e3965f0c8050d0dd4771f1a00a6cc68f6ae9e26334e5a2c5cad9fae92d51f0f677b07aea3120e75686655cbd5c6bcf7f0b5f84d9a1ca4553f
+EBUILD firefox-43.0-r99.ebuild 12665 SHA256 c3c7d1373713fc8263b0f7105d87e404aa525b4c1c0f8226b5d046e3776f631c SHA512 c9049669054762caf53a9467a538db43029e0eade68826b6f027338aef2242ac82efff51065d8e41214dabecdbc68e8d22426af49275c3ecb546866a128a70a2 WHIRLPOOL 5a2a544e0e8ffa2670372cf8270a65b16323c2a6f3bc0f792a0b599372f0691a230aeee98e6392667894937f3ae39be662d508f35e084f0319dc3c381664a30a
+MISC metadata.xml 1695 SHA256 9160ec3d3b5da69dfd46470a1bb1fca56026f743dc5199cb03c845adbb026816 SHA512 20c952bb0c0346812dc1af7b56a8f6746153e2d24baeaef8847730028cdf3f4fe0cd6dac15036db1d9fd2f6346fdd83707edd396949606ad03d30f027f92de13 WHIRLPOOL be37d0debd5f371535014fc2bdcbf10372fcf9bbed3333b354675e1e5ed705f2aceb7d402c9a331a56c842372638c86db43cf17b9803fcfa12c04640f1c7b931
diff --git a/www-client/firefox/files/firefox-43.0-profiler-gettid.patch b/www-client/firefox/files/firefox-43.0-profiler-gettid.patch
new file mode 100644
index 0000000..d8bd593
--- /dev/null
+++ b/www-client/firefox/files/firefox-43.0-profiler-gettid.patch
@@ -0,0 +1,16 @@
+profiler: avoid getcontext
+--- firefox-43.0/tools/profiler/core/platform-linux.cc.orig 2015-12-08 19:06:46.000000000 +0100
++++ firefox-43.0/tools/profiler/core/platform-linux.cc 2016-01-03 11:40:21.894662897 +0100
+@@ -711,10 +711,10 @@
+ {
+ MOZ_ASSERT(aContext);
+ ucontext_t* pContext = reinterpret_cast<ucontext_t*>(aContext);
+- if (!getcontext(pContext)) {
++/* if (!getcontext(pContext)) {
+ context = pContext;
+ SetSampleContext(this, aContext);
+- }
++ } */
+ }
+
+ void OS::SleepMicro(int microseconds)
diff --git a/www-client/firefox/files/fix-xpcom.patch b/www-client/firefox/files/fix-xpcom.patch
new file mode 100644
index 0000000..38dd582
--- /dev/null
+++ b/www-client/firefox/files/fix-xpcom.patch
@@ -0,0 +1,11 @@
+--- xpcom/base/nsMemoryReporterManager.cpp.orig 2015-12-16 11:53:14.211144456 +0100
++++ xpcom/base/nsMemoryReporterManager.cpp 2015-12-16 11:55:26.859476381 +0100
+@@ -46,7 +46,7 @@ using namespace mozilla;
+ # include "mozmemory.h"
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX)
++#if defined(XP_LINUX) && defined(__GLIBC__)
+
+ #include <malloc.h>
+ #include <string.h>
diff --git a/www-client/firefox/files/gentoo-default-prefs.js-1 b/www-client/firefox/files/gentoo-default-prefs.js-1
new file mode 100644
index 0000000..22a51ff
--- /dev/null
+++ b/www-client/firefox/files/gentoo-default-prefs.js-1
@@ -0,0 +1,17 @@
+pref("app.update.enabled", false);
+pref("app.update.autoInstallEnabled", false);
+pref("browser.display.use_system_colors", true);
+pref("browser.link.open_external", 3);
+pref("general.smoothScroll", true);
+pref("general.autoScroll", false);
+pref("browser.tabs.tabMinWidth", 15);
+pref("browser.backspace_action", 0);
+pref("browser.urlbar.hideGoButton", true);
+pref("accessibility.typeaheadfind", true);
+pref("browser.shell.checkDefaultBrowser", false);
+pref("browser.EULA.override", true);
+pref("general.useragent.vendor", "Gentoo");
+pref("intl.locale.matchOS", true);
+pref("general.useragent.locale", "chrome://global/locale/intl.properties");
+pref("extensions.autoDisableScopes", 0);
+pref("layout.css.dpi", 0);
diff --git a/www-client/firefox/files/gentoo-hwaccel-prefs.js-1 b/www-client/firefox/files/gentoo-hwaccel-prefs.js-1
new file mode 100644
index 0000000..0cb92b0
--- /dev/null
+++ b/www-client/firefox/files/gentoo-hwaccel-prefs.js-1
@@ -0,0 +1,2 @@
+pref("layers.acceleration.force-enabled", true);
+pref("webgl.force-enabled", true);
diff --git a/www-client/firefox/files/icon/firefox.desktop b/www-client/firefox/files/icon/firefox.desktop
new file mode 100644
index 0000000..d772c2f
--- /dev/null
+++ b/www-client/firefox/files/icon/firefox.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=@NAME@
+Comment=Web Browser
+Exec=firefox %u
+Icon=@ICON@
+Terminal=false
+Type=Application
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
+Categories=Network;WebBrowser;
diff --git a/www-client/firefox/files/non-executable-jit.patch b/www-client/firefox/files/non-executable-jit.patch
new file mode 100644
index 0000000..554198b
--- /dev/null
+++ b/www-client/firefox/files/non-executable-jit.patch
@@ -0,0 +1,12 @@
+diff -Naurw mozilla-release.orig/js/src/jit/ExecutableAllocator.cpp mozilla-release/js/src/jit/ExecutableAllocator.cpp
+--- mozilla-release.orig/js/src/jit/ExecutableAllocator.cpp 2015-10-14 14:41:41.000000000 -0700
++++ mozilla-release/js/src/jit/ExecutableAllocator.cpp 2015-10-22 09:13:15.440059937 -0700
+@@ -88,8 +88,4 @@
+ }
+ }
+
+-#if TARGET_OS_IPHONE
+ bool ExecutableAllocator::nonWritableJitCode = true;
+-#else
+-bool ExecutableAllocator::nonWritableJitCode = false;
+-#endif
diff --git a/www-client/firefox/files/remove-stabs.patch b/www-client/firefox/files/remove-stabs.patch
new file mode 100644
index 0000000..b4de885
--- /dev/null
+++ b/www-client/firefox/files/remove-stabs.patch
@@ -0,0 +1,43 @@
+diff -Naurw firefox-42.0.orig/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc firefox-42.0/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc
+--- firefox-42.0.orig/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc 2015-11-27 11:49:14.436842904 -0800
++++ firefox-42.0/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.cc 2015-11-27 11:50:29.870178485 -0800
+@@ -34,7 +34,6 @@
+ #include "common/stabs_reader.h"
+
+ #include <assert.h>
+-#include <stab.h>
+ #include <string.h>
+
+ #include <string>
+diff -Naurw firefox-42.0.orig/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h firefox-42.0/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h
+--- firefox-42.0.orig/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h 2015-11-27 11:49:14.436842904 -0800
++++ firefox-42.0/toolkit/crashreporter/google-breakpad/src/common/stabs_reader.h 2015-11-27 11:52:50.146849332 -0800
+@@ -61,6 +61,17 @@
+ #include <mach-o/nlist.h>
+ #endif
+
++// Definitions from <stab.h> and <a.out.h> for systems which
++// do not have them
++#undef N_UNDF
++#define N_UNDF 0x0
++#define N_FUN 0x24
++#define N_SLINE 0x44
++#define N_SO 0x64
++#define N_LSYM 0x80
++#define N_BINCL 0x82
++#define N_SOL 0x84
++
+ #include <string>
+ #include <vector>
+
+diff -Naurw firefox-42.0.orig/toolkit/crashreporter/google-breakpad/src/common/stabs_reader_unittest.cc firefox-42.0/toolkit/crashreporter/google-breakpad/src/common/stabs_reader_unittest.cc
+--- firefox-42.0.orig/toolkit/crashreporter/google-breakpad/src/common/stabs_reader_unittest.cc 2015-11-27 11:49:14.436842904 -0800
++++ firefox-42.0/toolkit/crashreporter/google-breakpad/src/common/stabs_reader_unittest.cc 2015-11-27 11:50:35.980178668 -0800
+@@ -33,7 +33,6 @@
+
+ #include <assert.h>
+ #include <errno.h>
+-#include <stab.h>
+ #include <stdarg.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/www-client/firefox/firefox-43.0-r99.ebuild b/www-client/firefox/firefox-43.0-r99.ebuild
new file mode 100644
index 0000000..2cc0a6d
--- /dev/null
+++ b/www-client/firefox/firefox-43.0-r99.ebuild
@@ -0,0 +1,415 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=""
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+# No official support as of fetch time
+# csb
+MOZ_LANGS=( af ar as ast be bg bn-BD bn-IN br bs ca cs cy da de el en
+en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gd
+gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko lt lv mai mk ml mr
+nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te
+th tr uk vi xh zh-CN zh-TW )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
+MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
+
+if [[ ${MOZ_ESR} == 1 ]]; then
+ # ESR releases have slightly version numbers
+ MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+PATCH="${PN}-42.0-patches-0.3"
+MOZ_HTTP_URI="http://archive.mozilla.org/pub/${PN}/releases"
+
+MOZCONFIG_OPTIONAL_GTK3=1
+MOZCONFIG_OPTIONAL_WIFI=1
+MOZCONFIG_OPTIONAL_JIT="enabled"
+
+inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v6.43 multilib pax-utils fdo-mime autotools virtualx mozlinguas
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="http://www.mozilla.com/firefox"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist egl hardened +hwaccel +minimal pgo selinux +gmp-autoupdate test"
+RESTRICT="!bindist? ( bindist )"
+
+# More URIs appended below...
+SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz
+ https://dev.gentoo.org/~axs/mozilla/patchsets/${PATCH}.tar.xz
+ https://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+# Mesa 7.10 needed for WebGL + bugfixes
+RDEPEND="
+ >=dev-libs/nss-3.20.1
+ >=dev-libs/nspr-4.10.10-r1
+ selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${RDEPEND}
+ pgo? (
+ >=sys-devel/gcc-4.5 )
+ amd64? ( ${ASM_DEPEND}
+ virtual/opengl )
+ x86? ( ${ASM_DEPEND}
+ virtual/opengl )"
+
+# No source releases for alpha|beta
+if [[ ${PV} =~ alpha ]]; then
+ CHANGESET="8a3042764de7"
+ SRC_URI="${SRC_URI}
+ https://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.xz"
+ S="${WORKDIR}/mozilla-aurora-${CHANGESET}"
+else
+ S="${WORKDIR}/firefox-${MOZ_PV}"
+ SRC_URI="${SRC_URI}
+ ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
+fi
+#elif [[ ${PV} =~ beta ]]; then
+# S="${WORKDIR}/mozilla-beta"
+# SRC_URI="${SRC_URI}
+# ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
+#else
+# SRC_URI="${SRC_URI}
+# ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz"
+# if [[ ${MOZ_ESR} == 1 ]]; then
+# S="${WORKDIR}/mozilla-esr${PV%%.*}"
+# else
+# S="${WORKDIR}/mozilla-release"
+# fi
+#fi
+
+QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox"
+
+BUILD_OBJ_DIR="${S}/ff"
+
+pkg_setup() {
+ moz_pkgsetup
+
+ # Avoid PGO profiling problems due to enviroment leakage
+ # These should *always* be cleaned up anyway
+ unset DBUS_SESSION_BUS_ADDRESS \
+ DISPLAY \
+ ORBIT_SOCKETDIR \
+ SESSION_MANAGER \
+ XDG_SESSION_COOKIE \
+ XAUTHORITY
+
+ if ! use bindist; then
+ einfo
+ elog "You are enabling official branding. You may not redistribute this build"
+ elog "to any users on your network or the internet. Doing so puts yourself into"
+ elog "a legal problem with Mozilla Foundation"
+ elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
+ fi
+
+ if use pgo; then
+ einfo
+ ewarn "You will do a double build for profile guided optimization."
+ ewarn "This will result in your build taking at least twice as long as before."
+ fi
+}
+
+pkg_pretend() {
+ # Ensure we have enough disk space to compile
+ if use pgo || use debug || use test ; then
+ CHECKREQS_DISK_BUILD="8G"
+ else
+ CHECKREQS_DISK_BUILD="4G"
+ fi
+ check-reqs_pkg_setup
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # Unpack language packs
+ mozlinguas_src_unpack
+}
+
+src_prepare() {
+ # Apply our patches
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ EPATCH_EXCLUDE="8002_jemalloc_configure_unbashify.patch
+ 8011_bug1194520-freetype261_until_moz43.patch" \
+ epatch "${WORKDIR}/firefox"
+
+ epatch "${FILESDIR}"/non-executable-jit.patch
+
+ # Fix for MUSL
+ epatch "${FILESDIR}"/remove-stabs.patch
+ epatch "${FILESDIR}"/fix-xpcom.patch
+ epatch "${FILESDIR}"/${PN}-43.0-profiler-gettid.patch
+
+ # Allow user to apply any additional patches without modifing ebuild
+ epatch_user
+
+ # Enable gnomebreakpad
+ if use debug ; then
+ sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+ "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+ fi
+
+ # Ensure that our plugins dir is enabled as default
+ sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
+ sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
+ "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
+
+ # Fix sandbox violations during make clean, bug 372817
+ sed -e "s:\(/no-such-file\):${T}\1:g" \
+ -i "${S}"/config/rules.mk \
+ -i "${S}"/nsprpub/configure{.in,} \
+ || die
+
+ # Don't exit with error when some libs are missing which we have in
+ # system.
+ sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+ -i "${S}"/browser/installer/Makefile.in || die
+
+ # Don't error out when there's no files to be removed:
+ sed 's@\(xargs rm\)$@\1 -f@' \
+ -i "${S}"/toolkit/mozapps/installer/packager.mk || die
+
+ # Keep codebase the same even if not using official branding
+ sed '/^MOZ_DEV_EDITION=1/d' \
+ -i "${S}"/browser/branding/aurora/configure.sh || die
+
+ eautoreconf
+
+ # Must run autoconf in js/src
+ cd "${S}"/js/src || die
+ eautoconf
+
+ # Need to update jemalloc's configure
+ cd "${S}"/memory/jemalloc/src || die
+ WANT_AUTOCONF= eautoconf
+}
+
+src_configure() {
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+ MEXTENSIONS="default"
+ # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+ # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+ # get your own set of keys.
+ _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ # We want rpath support to prevent unneeded hacks on different libc variants
+ append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}"
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ # Add full relro support for hardened
+ use hardened && append-ldflags "-Wl,-z,relro,-z,now"
+
+ use egl && mozconfig_annotate 'Enable EGL as GL provider' --with-gl-provider=EGL
+
+ # Setup api key for location services
+ echo -n "${_google_api_key}" > "${S}"/google-api-key
+ mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key"
+
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+ mozconfig_annotate '' --disable-mailnews
+
+ # Other ff-specific settings
+ mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+
+ # Allow for a proper pgo build
+ if use pgo; then
+ echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig
+ fi
+
+ echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
+
+ # Finalize and report settings
+ mozconfig_final
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-cxxflags -fno-stack-protector
+ fi
+
+ # workaround for funky/broken upstream configure...
+ emake -f client.mk configure
+}
+
+src_compile() {
+ if use pgo; then
+ addpredict /root
+ addpredict /etc/gconf
+ # Reset and cleanup environment variables used by GNOME/XDG
+ gnome2_environment_reset
+
+ # Firefox tries to use dri stuff when it's run, see bug 380283
+ shopt -s nullglob
+ cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+ if test -z "${cards}"; then
+ cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
+ if test -n "${cards}"; then
+ # Binary drivers seem to cause access violations anyway, so
+ # let's use indirect rendering so that the device files aren't
+ # touched at all. See bug 394715.
+ export LIBGL_ALWAYS_INDIRECT=1
+ fi
+ fi
+ shopt -u nullglob
+ addpredict "${cards}"
+
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ Xemake -f client.mk profiledbuild || die "Xemake failed"
+ else
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX%/}/bin/bash}" \
+ emake -f client.mk realbuild
+ fi
+
+}
+
+src_install() {
+ MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+ DICTPATH="\"${EPREFIX}/usr/share/myspell\""
+
+ cd "${BUILD_OBJ_DIR}" || die
+
+ # Pax mark xpcshell for hardened support, only used for startupcache creation.
+ pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
+
+ # Add our default prefs for firefox
+ cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ # Augment this with hwaccel prefs
+ if use hwaccel ; then
+ cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-1 >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ fi
+
+ # Set default path to search for dictionaries.
+ echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
+ >> "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+
+ local plugin
+ use gmp-autoupdate || for plugin in \
+ gmp-gmpopenh264 ; do
+ echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
+ "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+ || die
+ done
+
+ MOZ_MAKE_FLAGS="${MAKEOPTS}" \
+ emake DESTDIR="${D}" install
+
+ # Install language packs
+ mozlinguas_src_install
+
+ local size sizes icon_path icon name
+ if use bindist; then
+ sizes="16 32 48"
+ icon_path="${S}/browser/branding/aurora"
+ # Firefox's new rapid release cycle means no more codenames
+ # Let's just stick with this one...
+ icon="aurora"
+ name="Aurora"
+
+ # Override preferences to set the MOZ_DEV_EDITION defaults, since we
+ # don't define MOZ_DEV_EDITION to avoid profile debaucles.
+ # (source: browser/app/profile/firefox.js)
+ cat >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" <<PROFILE_EOF
+pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/firefoxdev/%VERSION%/");
+sticky_pref("lightweightThemes.selectedThemeID", "firefox-devedition@mozilla.org");
+sticky_pref("browser.devedition.theme.enabled", true);
+sticky_pref("devtools.theme", "dark");
+PROFILE_EOF
+
+ else
+ sizes="16 22 24 32 256"
+ icon_path="${S}/browser/branding/official"
+ icon="${PN}"
+ name="Mozilla Firefox"
+ fi
+
+ # Install icons and .desktop for menu entry
+ for size in ${sizes}; do
+ insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+ newins "${icon_path}/default${size}.png" "${icon}.png"
+ done
+ # The 128x128 icon has a different name
+ insinto "/usr/share/icons/hicolor/128x128/apps"
+ newins "${icon_path}/mozicon128.png" "${icon}.png"
+ # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+ newicon "${icon_path}/content/icon48.png" "${icon}.png"
+ newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop"
+ sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
+ "${ED}/usr/share/applications/${PN}.desktop" || die
+
+ # Add StartupNotify=true bug 237317
+ if use startup-notification ; then
+ echo "StartupNotify=true"\
+ >> "${ED}/usr/share/applications/${PN}.desktop" \
+ || die
+ fi
+
+ # Required in order to use plugins and even run firefox on hardened.
+ if use jit; then
+ pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
+ else
+ pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container
+ fi
+
+ if use minimal; then
+ rm -r "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} \
+ || die "Failed to remove sdk and headers"
+ fi
+
+ # very ugly hack to make firefox not sigbus on sparc
+ # FIXME: is this still needed??
+ use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \
+ -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" \
+ || die "sparc sed failed"; }
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ # Update mimedb for the new .desktop file
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/www-client/firefox/metadata.xml b/www-client/firefox/metadata.xml
new file mode 100644
index 0000000..c2dcadb
--- /dev/null
+++ b/www-client/firefox/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>mozilla</herd>
+<use>
+ <flag name="bindist">Disable official Firefox branding (icons, name) which
+ are not binary-redistributable according to upstream.</flag>
+ <flag name="custom-optimization">Fine-tune custom compiler
+ optimizations (-Os, -O0, -O1, -O2, -O3)</flag>
+ <flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
+ downloaded and kept up-to-date in user profiles</flag>
+ <flag name="gstreamer-0">Use gstreamer:0.10 instead of gstreamer:1 for media support</flag>
+ <flag name="gtk3">Use the cairo-gtk3 rendering engine</flag>
+ <flag name="hwaccel">Use hardware-accelerated rendering</flag>
+ <flag name="jemalloc3">Enable or disable jemalloc3 (forced-on when supported prior to 38.0)</flag>
+ <flag name="minimal">Prevent sdk and headers from being installed</flag>
+ <flag name="pgo">Add support for profile-guided optimization using gcc-4.5,
+ for faster binaries. This option will double the compile time.</flag>
+ <flag name="system-cairo">Use the system-wide <pkg>x11-libs/cairo</pkg>
+ instead of bundled.</flag>
+ <flag name="system-icu">Use the system-wide <pkg>dev-libs/icu</pkg>
+ instead of bundled.</flag>
+ <flag name="system-jpeg">Use the system-wide <pkg>media-libs/libjpeg-turbo</pkg>
+ instead of bundled.</flag>
+ <flag name="system-libvpx">Use the system-wide <pkg>media-libs/libvpx</pkg>
+ instead of bundled.</flag>
+ <flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
+ installation with secure-delete enabled</flag>
+ <flag name="egl">Enable EGL provider</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-base/xorg-drivers/Manifest b/x11-base/xorg-drivers/Manifest
new file mode 100644
index 0000000..1cf652d
--- /dev/null
+++ b/x11-base/xorg-drivers/Manifest
@@ -0,0 +1,2 @@
+EBUILD xorg-drivers-1.18.ebuild 6257 SHA256 0b6d749d620d640dc9e761d3ae3cd764d0f15dd44290826eb04c63ae9d986e1a SHA512 4ecb4ad302c5397b4edab2161774b90ae883d20701d519dc0e47fb16de5dbfb9dc65a61994427d3cca9d3db31118e1495fd6e1023af6133e8fcb8656b1696781 WHIRLPOOL d8db829b357e80c7d245e692d07d7eace7332f1f5903a1fce73969c6fb7879632fee8278fb1e074c7eff776a36d1bf4b15bb66ffb089103d6168fd01863729a6
+MISC metadata.xml 157 SHA256 bc6a4a3d5e32f9329039b242036828256c9f2c33862bc1d606d4ac8427032fdc SHA512 e30223e19870c9ee1cb96dbff14df3b5287e3d21a415f52723ef2f9d4968cc4ad865b76b0078e84aa03f8933d4930f36455dbf62c372bbc17be8bdf6d7410bf7 WHIRLPOOL a22bf55ae1b68446b851f6b2bdf9cc6bb8244acc787aaabb472cde13e36e64293741b80c52569f1e59e4fb4962f6f738eca8be09bddf732c2454f9ab07ac11d4
diff --git a/x11-base/xorg-drivers/metadata.xml b/x11-base/xorg-drivers/metadata.xml
new file mode 100644
index 0000000..6cc3982
--- /dev/null
+++ b/x11-base/xorg-drivers/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>x11</herd>
+</pkgmetadata>
diff --git a/x11-base/xorg-drivers/xorg-drivers-1.18.ebuild b/x11-base/xorg-drivers/xorg-drivers-1.18.ebuild
new file mode 100644
index 0000000..876903e
--- /dev/null
+++ b/x11-base/xorg-drivers/xorg-drivers-1.18.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+DESCRIPTION="Meta package containing deps on all xorg drivers"
+HOMEPAGE="https://www.gentoo.org/"
+SRC_URI=""
+
+LICENSE="metapackage"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+
+IUSE_INPUT_DEVICES="
+ input_devices_acecad
+ input_devices_aiptek
+ input_devices_elographics
+ input_devices_evdev
+ input_devices_fpit
+ input_devices_hyperpen
+ input_devices_joystick
+ input_devices_keyboard
+ input_devices_libinput
+ input_devices_mouse
+ input_devices_mutouch
+ input_devices_penmount
+ input_devices_tslib
+ input_devices_vmmouse
+ input_devices_void
+ input_devices_synaptics
+ input_devices_wacom
+"
+IUSE_VIDEO_CARDS="
+ video_cards_amdgpu
+ video_cards_apm
+ video_cards_ast
+ video_cards_chips
+ video_cards_cirrus
+ video_cards_dummy
+ video_cards_epson
+ video_cards_fbdev
+ video_cards_freedreno
+ video_cards_geode
+ video_cards_glint
+ video_cards_i128
+ video_cards_i740
+ video_cards_intel
+ video_cards_mach64
+ video_cards_mga
+ video_cards_neomagic
+ video_cards_nouveau
+ video_cards_nv
+ video_cards_omap
+ video_cards_omapfb
+ video_cards_qxl
+ video_cards_r128
+ video_cards_radeon
+ video_cards_radeonsi
+ video_cards_rendition
+ video_cards_s3
+ video_cards_s3virge
+ video_cards_savage
+ video_cards_siliconmotion
+ video_cards_sisusb
+ video_cards_sunbw2
+ video_cards_suncg14
+ video_cards_suncg3
+ video_cards_suncg6
+ video_cards_sunffb
+ video_cards_sunleo
+ video_cards_suntcx
+ video_cards_tdfx
+ video_cards_tegra
+ video_cards_tga
+ video_cards_trident
+ video_cards_tseng
+ video_cards_vesa
+ video_cards_via
+ video_cards_virtualbox
+ video_cards_vmware
+ video_cards_voodoo
+ video_cards_fglrx
+ video_cards_nvidia
+"
+
+IUSE="${IUSE_VIDEO_CARDS} ${IUSE_INPUT_DEVICES}"
+
+PDEPEND="
+ input_devices_acecad? ( x11-drivers/xf86-input-acecad )
+ input_devices_aiptek? ( x11-drivers/xf86-input-aiptek )
+ input_devices_elographics? ( x11-drivers/xf86-input-elographics )
+ input_devices_evdev? ( x11-drivers/xf86-input-evdev )
+ input_devices_fpit? ( x11-drivers/xf86-input-fpit )
+ input_devices_hyperpen? ( x11-drivers/xf86-input-hyperpen )
+ input_devices_joystick? ( x11-drivers/xf86-input-joystick )
+ input_devices_keyboard? ( x11-drivers/xf86-input-keyboard )
+ input_devices_libinput? ( x11-drivers/xf86-input-libinput )
+ input_devices_mouse? ( x11-drivers/xf86-input-mouse )
+ input_devices_mutouch? ( x11-drivers/xf86-input-mutouch )
+ input_devices_penmount? ( x11-drivers/xf86-input-penmount )
+ input_devices_tslib? ( x11-drivers/xf86-input-tslib )
+ input_devices_vmmouse? ( x11-drivers/xf86-input-vmmouse )
+ input_devices_void? ( x11-drivers/xf86-input-void )
+ input_devices_synaptics? ( x11-drivers/xf86-input-synaptics )
+ input_devices_wacom? ( x11-drivers/xf86-input-wacom )
+
+ video_cards_amdgpu? ( x11-drivers/xf86-video-amdgpu )
+ video_cards_apm? ( x11-drivers/xf86-video-apm )
+ video_cards_ast? ( x11-drivers/xf86-video-ast )
+ video_cards_chips? ( x11-drivers/xf86-video-chips )
+ video_cards_cirrus? ( x11-drivers/xf86-video-cirrus )
+ video_cards_dummy? ( x11-drivers/xf86-video-dummy )
+ video_cards_fbdev? ( x11-drivers/xf86-video-fbdev )
+ video_cards_freedreno? ( x11-drivers/xf86-video-freedreno )
+ video_cards_geode? ( x11-drivers/xf86-video-geode )
+ video_cards_glint? ( x11-drivers/xf86-video-glint )
+ video_cards_i128? ( x11-drivers/xf86-video-i128 )
+ video_cards_i740? ( x11-drivers/xf86-video-i740 )
+ video_cards_intel? ( x11-drivers/xf86-video-intel )
+ video_cards_mach64? ( x11-drivers/xf86-video-mach64 )
+ video_cards_mga? ( x11-drivers/xf86-video-mga )
+ video_cards_neomagic? ( x11-drivers/xf86-video-neomagic )
+ video_cards_nouveau? ( x11-drivers/xf86-video-nouveau )
+ video_cards_nv? ( x11-drivers/xf86-video-nv )
+ video_cards_omap? ( x11-drivers/xf86-video-omap )
+ video_cards_omapfb? ( x11-drivers/xf86-video-omapfb )
+ video_cards_qxl? ( x11-drivers/xf86-video-qxl )
+ video_cards_nvidia? ( x11-drivers/nvidia-drivers )
+ video_cards_fglrx? ( x11-drivers/ati-drivers )
+ video_cards_r128? ( x11-drivers/xf86-video-r128 )
+ video_cards_radeon? ( x11-drivers/xf86-video-ati )
+ video_cards_radeonsi? ( x11-drivers/xf86-video-ati[glamor] )
+ video_cards_rendition? ( x11-drivers/xf86-video-rendition )
+ video_cards_s3? ( x11-drivers/xf86-video-s3 )
+ video_cards_s3virge? ( x11-drivers/xf86-video-s3virge )
+ video_cards_savage? ( x11-drivers/xf86-video-savage )
+ video_cards_siliconmotion? ( x11-drivers/xf86-video-siliconmotion )
+ video_cards_sisusb? ( x11-drivers/xf86-video-sisusb )
+ video_cards_suncg14? ( x11-drivers/xf86-video-suncg14 )
+ video_cards_suncg3? ( x11-drivers/xf86-video-suncg3 )
+ video_cards_suncg6? ( x11-drivers/xf86-video-suncg6 )
+ video_cards_sunffb? ( x11-drivers/xf86-video-sunffb )
+ video_cards_sunleo? ( x11-drivers/xf86-video-sunleo )
+ video_cards_suntcx? ( x11-drivers/xf86-video-suntcx )
+ video_cards_tdfx? ( x11-drivers/xf86-video-tdfx )
+ video_cards_tegra? ( x11-drivers/xf86-video-opentegra )
+ video_cards_tga? ( x11-drivers/xf86-video-tga )
+ video_cards_trident? ( x11-drivers/xf86-video-trident )
+ video_cards_tseng? ( x11-drivers/xf86-video-tseng )
+ video_cards_vesa? ( x11-drivers/xf86-video-vesa )
+ video_cards_via? ( x11-drivers/xf86-video-openchrome )
+ video_cards_virtualbox? ( x11-drivers/xf86-video-virtualbox )
+ video_cards_vmware? ( x11-drivers/xf86-video-vmware )
+ video_cards_voodoo? ( x11-drivers/xf86-video-voodoo )
+
+ !x11-drivers/xf86-input-citron
+ !x11-drivers/xf86-video-cyrix
+ !x11-drivers/xf86-video-impact
+ !x11-drivers/xf86-video-nsc
+ !x11-drivers/xf86-video-sunbw2
+ !<=x11-drivers/xf86-video-ark-0.7.5
+ !<=x11-drivers/xf86-video-newport-0.2.4
+ !<=x11-drivers/xf86-video-nouveau-1.0.11
+ !<=x11-drivers/xf86-video-sis-0.10.7
+ !<=x11-drivers/xf86-video-v4l-0.2.0
+"
diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
new file mode 100644
index 0000000..184c68a
--- /dev/null
+++ b/x11-base/xorg-server/Manifest
@@ -0,0 +1,10 @@
+AUX xdm-setup.initd-1 346 SHA256 942ce5e8d1a0770543b683dcc388bae7619a24eb9741c1cd678ed3df97c01406 SHA512 b12ef1a757213c2df2d4fb50691695fdaf00ee9edb7d4ec551980c48b6eb05598d3eda0db543719a11a82b019939fb4af82a19813d238a725dcc0d818379103e WHIRLPOOL 28a033355ec3871eba2dfdf45969e9ac354d8ae542dcb1449901af856b9c26314318f6a91cec81f2548caaede19d88e14eac2de0fd7dab8957a7358e94a594b2
+AUX xdm.confd-4 562 SHA256 9d26b72bb28611a60a6b9f942b8d8cfe47b59f926be89af9709b5912668344d8 SHA512 facfb91c0b4e0b1cae86b707d263523215633720e1e8f4595639411f936907b321643e8a06111dd3f7b74fa601476e4b0d09768edfdec762c73fa07cb227588b WHIRLPOOL d701fb5f40ecde2b2f2bb56970576c8abde1499916168fee4a6d27afbc1c0493eb17ddd1a8ee70bfbc77d553a47e219e538febada4946d19cccbdabc90f40e6f
+AUX xdm.initd-11 6136 SHA256 86a17c9ba172481318d5fd51c3aadfdcad9e5d52ed7478379723ce1784061930 SHA512 6ebd1d4aa538c4de0591348e2befe0d03da2014863208ce52dbe9966e069908adcd5efd5b8ed01cfa3bd3c84121e91494e6d82e1cf96acac2ab0b03a2961dfae WHIRLPOOL 16c6f69008c28f3fc2b84e7257e75df578308ed4a4a537600c43d7a6d372c64a3d8f9e8f1a59c2d8106e1bee9a87694d06f3d1f777d132a19544b747e745473d
+AUX xorg-server-1.12-unloadsubmodule.patch 1373 SHA256 c68c4c0749b9229c3ca11c72b5ca98b58c7dbaf5c7311ce45890204bdc637c3c SHA512 a6a8ebbb1005f2ea9cfdfc928209a23fe213caab31a889c3290f14bcae0a9afd40176330e2e56cb5ff986d522505e7fb98fa0c71187f403e2afd33c9c919780e WHIRLPOOL 7e9dce7dc4e064567e68697a2966f87cef756670db7e49da50c8d9a5379d7930c3f9642913b8482b8c7597067ef9098e1989284986b5ec605aca6a536329c05c
+AUX xorg-server-1.17-support-multiple-Files-sections.patch 2256 SHA256 1cc57d2e8449d50737c507005df348610bb68241fe36e997e4803b3b8b3e6d86 SHA512 e3141727c993e02b2e067095807e96ef0cc82e2e7c8b65664d0530ef05a0f7b9170272e4e1e3523ede3f1cc23b00c4776785b8299e0b58a6e7fd56062aecefb6 WHIRLPOOL 078a5e30777a8f6e908421a1c7cc4a7e63c23f57b600bb1117bc1e8de2db0e6440870f811e65283acaa48da06fcc5666434d2bdce257709344e8f584d1525623
+AUX xorg-server-1.17.4-arm-musl.patch 682 SHA256 b210a93b4d6128c0963ade3458925ff293e1c68ac20a15964357fd401f7161e0 SHA512 b799e757a22a61ac283adbd7a8df1ad4eccce0bb6cac38a0c962ba8438bba3cf6637a65bb64859e7b32399fca672283a49960207e186c271ba574580de360d09 WHIRLPOOL 3a197692f3d5a7563294248784d8afb5d74eb19e8533cab5166364e96753e0c99c1cbfc236b74c9fcfa553822e277b62f19a4b7193697c9e0c991d3f00de5b8e
+AUX xorg-sets.conf 199 SHA256 1201d0337ac69d9715f4454a86dfb8a7bd1ae6f4c2578042fc08f283a997597c SHA512 910fe28f20909243044f079ff35136942b8790f4f28ac42ffc64a76b7f03cd22057087fa5e4e01192080b52c0d89000ea96d5a807c6f11f680d3f43312c5be41 WHIRLPOOL 4acac88e1688ea71df59a86a8a188b5369ad05f61e1369cd620eecd754511578e961a537ff6d0b22156f671d3485289cbc941dfe83bea24a27329b7bebb46c7d
+DIST xorg-server-1.18.0.tar.bz2 5818703 SHA256 195670819695d9cedd8dde95fbe069be0d0f488a77797a2d409f9f702daf312e SHA512 c7b1403e79e26ea96690f5634eb2fa424f9436a8a3c8a17779f71d254a813ae9b2ff1eb3dc8c6b4c37da125f3108ee86f6f5b1c27c1db6ab28eb6c8ee62e5768 WHIRLPOOL 439cfc2da70f3234facd4684e8ef5cea8b0b2d73251280de4a705bd31c2498df814c189f01ec057da3b810d994dc1e30e1faceec4b059ef428e137c8584450d9
+EBUILD xorg-server-1.18.0.ebuild 6337 SHA256 960f0998358b161c4b2c00a53661ab2af4accc3ab5cf2526bfe351289245549d SHA512 87728680626a0f2c8670e94e933fab953f24e6d8aa6cd07821640b5282b48c7d759401e37239ba7b9252af5ae820d24e3861e65333cc6377084b1254aa9dd344 WHIRLPOOL 20655ae66ed4ef04fa9e72038f949bcb56ffe19ccacca567599be854f9a120e8eef1039f4bab311b8c998380cd6a62f3c15ca258460ca000075d0b1564777cb0
+MISC metadata.xml 751 SHA256 02f470045d13e4baad4089f1cbc7cafd4dd1ab1b1799eeb2c0fb7864e956df80 SHA512 a58ad7f347519d7ba3bd710f1eab0f67925645961bcfa97fd9f106d5ea81400da79eebe95037ee4589b19c462fbdf6948949818f31210995ec9a930eaef78b26 WHIRLPOOL 67b3f0584a5c1d9e6da206761fc34a82caae36a4d9544c5512a95cdef800417c0f3f03a49606ebef72aa61522f097bf448fa0bdf651b5dd3b04554dcc86aaf5f
diff --git a/x11-base/xorg-server/files/xdm-setup.initd-1 b/x11-base/xorg-server/files/xdm-setup.initd-1
new file mode 100644
index 0000000..365664e
--- /dev/null
+++ b/x11-base/xorg-server/files/xdm-setup.initd-1
@@ -0,0 +1,14 @@
+#!/sbin/runscript
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/files/xdm-setup.initd-1,v 1.1 2010/04/13 10:07:39 scarabeus Exp $
+
+depend() {
+ need localmount
+}
+
+start() {
+ if get_bootparam "nox" ; then
+ touch /etc/.noxdm
+ fi
+}
diff --git a/x11-base/xorg-server/files/xdm.confd-4 b/x11-base/xorg-server/files/xdm.confd-4
new file mode 100644
index 0000000..c82fece
--- /dev/null
+++ b/x11-base/xorg-server/files/xdm.confd-4
@@ -0,0 +1,10 @@
+# We always try and start X on a static VT. The various DMs normally default
+# to using VT7. If you wish to use the xdm init script, then you should ensure
+# that the VT checked is the same VT your DM wants to use. We do this check to
+# ensure that you haven't accidentally configured something to run on the VT
+# in your /etc/inittab file so that you don't get a dead keyboard.
+CHECKVT=7
+
+# What display manager do you use ? [ xdm | gdm | kdm | gpe | entrance ]
+# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
+DISPLAYMANAGER="xdm"
diff --git a/x11-base/xorg-server/files/xdm.initd-11 b/x11-base/xorg-server/files/xdm.initd-11
new file mode 100644
index 0000000..2f7b47c
--- /dev/null
+++ b/x11-base/xorg-server/files/xdm.initd-11
@@ -0,0 +1,231 @@
+#!/sbin/runscript
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2
+# $Header: /var/cvsroot/gentoo-x86/x11-base/xorg-server/files/xdm.initd-11,v 1.1 2014/04/14 16:19:25 chithanh Exp $
+
+# This is here to serve as a note to myself, and future developers.
+#
+# Any Display manager (gdm,kdm,xdm) has the following problem: if
+# it is started before any getty, and no vt is specified, it will
+# usually run on vt2. When the getty on vt2 then starts, and the
+# DM is already started, the getty will take control of the keyboard,
+# leaving us with a "dead" keyboard.
+#
+# Resolution: add the following line to /etc/inittab
+#
+# x:a:once:/etc/X11/startDM.sh
+#
+# and have /etc/X11/startDM.sh start the DM in daemon mode if
+# a lock is present (with the info of what DM should be started),
+# else just fall through.
+#
+# How this basically works, is the "a" runlevel is a additional
+# runlevel that you can use to fork processes with init, but the
+# runlevel never gets changed to this runlevel. Along with the "a"
+# runlevel, the "once" key word means that startDM.sh will only be
+# run when we specify it to run, thus eliminating respawning
+# startDM.sh when "xdm" is not added to the default runlevel, as was
+# done previously.
+#
+# This script then just calls "telinit a", and init will run
+# /etc/X11/startDM.sh after the current runlevel completes (this
+# script should only be added to the actual runlevel the user is
+# using).
+#
+# Martin Schlemmer
+# aka Azarah
+# 04 March 2002
+
+depend() {
+ need localmount xdm-setup
+
+ # this should start as early as possible
+ # we can't do 'before *' as that breaks it
+ # (#139824) Start after ypbind and autofs for network authentication
+ # (#145219 #180163) Could use lirc mouse as input device
+ # (#70689 comment #92) Start after consolefont to avoid display corruption
+ # (#291269) Start after quota, since some dm need readable home
+ # (#390609) gdm-3 will fail when dbus is not running
+ # (#366753) starting keymaps after X causes problems
+ after bootmisc consolefont modules netmount
+ after readahead-list ypbind autofs openvpn gpm lircmd
+ after quota keymaps
+ before alsasound
+
+ # Start before X
+ use consolekit dbus xfs
+}
+
+setup_dm() {
+ local MY_XDM
+
+ MY_XDM=$(echo "${DISPLAYMANAGER}" | tr '[:upper:]' '[:lower:]')
+
+ # Load our root path from profile.env
+ # Needed for kdm
+ PATH=${PATH}:$(. /etc/profile.env; echo "${ROOTPATH}")
+
+ NAME=
+ case "${MY_XDM}" in
+ kdm|kde)
+ EXE=/usr/bin/kdm
+ PIDFILE=/run/kdm.pid
+ ;;
+ entrance*)
+ EXE=/usr/sbin/entrance
+ PIDFILE=/run/entrance.pid
+ ;;
+ gdm|gnome)
+ # gdm-3 and above has different paths
+ if [ -f /usr/sbin/gdm ]; then
+ EXE=/usr/sbin/gdm
+ PIDFILE=/run/gdm/gdm.pid
+ START_STOP_ARGS="--background"
+ AUTOCLEAN_CGROUP="yes"
+ else
+ EXE=/usr/bin/gdm
+ PIDFILE=/run/gdm.pid
+ fi
+ [ "${RC_UNAME}" != "Linux" ] && NAME=gdm-binary
+ ;;
+ wdm)
+ EXE=/usr/bin/wdm
+ PIDFILE=
+ ;;
+ gpe)
+ EXE=/usr/bin/gpe-dm
+ PIDFILE=/run/gpe-dm.pid
+ ;;
+ lxdm)
+ EXE=/usr/sbin/lxdm-binary
+ PIDFILE=/run/lxdm.pid
+ START_STOP_ARGS="--background"
+ ;;
+ lightdm)
+ EXE=/usr/sbin/lightdm
+ PIDFILE=/run/lightdm.pid
+ START_STOP_ARGS="--background"
+ ;;
+ sddm)
+ EXE="/usr/bin/sddm"
+ START_STOP_ARGS="-m --background"
+ PIDFILE=/run/sddm.pid
+ ;;
+ *)
+ # first find out if there is such executable
+ EXE="$(command -v ${MY_XDM} 2>/dev/null)"
+ PIDFILE="/run/${MY_XDM}.pid"
+
+ # warn user that he is doing sick things if the exe was not found
+ if [ -z "${EXE}" ]; then
+ echo "ERROR: Your XDM value is invalid."
+ echo " No ${MY_XDM} executable could be found on your system."
+ fi
+ ;;
+ esac
+
+ if ! [ -x "${EXE}" ]; then
+ EXE=/usr/bin/xdm
+ PIDFILE=/run/xdm.pid
+ if ! [ -x "/usr/bin/xdm" ]; then
+ echo "ERROR: Please set your DISPLAYMANAGER variable in /etc/conf.d/xdm,"
+ echo " or install x11-apps/xdm package"
+ eend 255
+ fi
+ fi
+}
+
+# Check to see if something is defined on our VT
+vtstatic() {
+ if [ -e /etc/inittab ] ; then
+ grep -Eq "^[^#]+.*\<tty$1\>" /etc/inittab
+ elif [ -e /etc/ttys ] ; then
+ grep -q "^ttyv$(($1 - 1))" /etc/ttys
+ else
+ return 1
+ fi
+}
+
+start() {
+ local EXE NAME PIDFILE AUTOCLEAN_CGROUP
+ setup_dm
+
+ if [ -f /etc/.noxdm ]; then
+ einfo "Skipping ${EXE##*/}, /etc/.noxdm found or \"nox\" bootparam passed."
+ rm /etc/.noxdm
+ return 0
+ fi
+
+ ebegin "Setting up ${EXE##*/}"
+
+ # save the prefered DM
+ save_options "service" "${EXE}"
+ save_options "name" "${NAME}"
+ save_options "pidfile" "${PIDFILE}"
+ save_options "start_stop_args" "${START_STOP_ARGS}"
+ save_options "autoclean_cgroup" "${AUTOCLEAN_CGROUP:-no}"
+
+ if [ -n "${CHECKVT-y}" ] ; then
+ if vtstatic "${CHECKVT:-7}" ; then
+ if [ -x /sbin/telinit ] && [ "${SOFTLEVEL}" != "BOOT" ] && [ "${RC_SOFTLEVEL}" != "BOOT" ]; then
+ ewarn "Something is already defined on VT ${CHECKVT:-7}, will start X later"
+ telinit a >/dev/null 2>&1
+ return 0
+ else
+ eerror "Something is already defined on VT ${CHECKVT:-7}, not starting"
+ return 1
+ fi
+ fi
+ fi
+
+ /etc/X11/startDM.sh
+ eend 0
+}
+
+stop() {
+ local curvt retval
+
+ retval=0
+ if [ -t 0 ]; then
+ if type fgconsole >/dev/null 2>&1; then
+ curvt=$(fgconsole 2>/dev/null)
+ else
+ curvt=$(tty)
+ case "${curvt}" in
+ /dev/ttyv[0-9]*) curvt=${curvt#/dev/ttyv} ;;
+ *) curvt= ;;
+ esac
+ fi
+ fi
+ local myexe myname mypidfile myservice
+ myexe=$(get_options "service")
+ myname=$(get_options "name")
+ mypidfile=$(get_options "pidfile")
+ myservice=${myexe##*/}
+ yesno "${rc_cgroup_cleanup:-no}" || rc_cgroup_cleanup=$(get_options "autoclean_cgroup")
+
+ [ -z "${myexe}" ] && return 0
+
+ ebegin "Stopping ${myservice}"
+
+ if start-stop-daemon --quiet --test --stop --exec "${myexe}"; then
+ start-stop-daemon --stop --exec "${myexe}" --retry TERM/5/TERM/5 \
+ ${mypidfile:+--pidfile} ${mypidfile} \
+ ${myname:+--name} ${myname}
+ retval=${?}
+ fi
+
+ # switch back to original vt
+ if [ -n "${curvt}" ]; then
+ if type chvt >/dev/null 2>&1; then
+ chvt "${curvt}"
+ else
+ vidcontrol -s "$((curvt + 1))"
+ fi
+ fi
+
+ eend ${retval} "Error stopping ${myservice}"
+ return ${retval}
+}
+
+# vim: set ts=4 :
diff --git a/x11-base/xorg-server/files/xorg-server-1.12-unloadsubmodule.patch b/x11-base/xorg-server/files/xorg-server-1.12-unloadsubmodule.patch
new file mode 100644
index 0000000..57c7349
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.12-unloadsubmodule.patch
@@ -0,0 +1,53 @@
+diff -u13 -r xorg-server-1.12.3-old/hw/xfree86/loader/loadmod.c xorg-server-1.12.3/hw/xfree86/loader/loadmod.c
+--- xorg-server-1.12.3-old/hw/xfree86/loader/loadmod.c 2012-09-05 18:26:42.000000000 +0200
++++ xorg-server-1.12.3/hw/xfree86/loader/loadmod.c 2012-09-05 18:28:54.000000000 +0200
+@@ -1109,39 +1109,38 @@
+ static void
+ RemoveChild(ModuleDescPtr child)
+ {
+ ModuleDescPtr mdp;
+ ModuleDescPtr prevsib;
+ ModuleDescPtr parent;
+
+ if (!child->parent)
+ return;
+
+ parent = child->parent;
+ if (parent->child == child) {
+ parent->child = child->sib;
+- return;
+- }
+-
+- prevsib = parent->child;
+- mdp = prevsib->sib;
+- while (mdp && mdp != child) {
+- prevsib = mdp;
+- mdp = mdp->sib;
++ }
++ else {
++ prevsib = parent->child;
++ mdp = prevsib->sib;
++ while (mdp && mdp != child) {
++ prevsib = mdp;
++ mdp = mdp->sib;
++ }
++ if (mdp == child)
++ prevsib->sib = child->sib;
+ }
+- if (mdp == child)
+- prevsib->sib = child->sib;
+ child->sib = NULL;
+- return;
+ }
+
+ void
+ LoaderErrorMsg(const char *name, const char *modname, int errmaj, int errmin)
+ {
+ const char *msg;
+ MessageType type = X_ERROR;
+
+ switch (errmaj) {
+ case LDR_NOERROR:
+ msg = "no error";
+ break;
+ case LDR_NOMEM:
diff --git a/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch b/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch
new file mode 100644
index 0000000..789a118
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch
@@ -0,0 +1,65 @@
+From a140d7ce3f37f30b4fed27c5a70ebcc4ed13c612 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Tue, 24 Feb 2015 12:57:24 +0100
+Subject: [PATCH] config: Support multiple 'Files' sections
+
+---
+ hw/xfree86/parser/Files.c | 8 ++++++--
+ hw/xfree86/parser/configProcs.h | 2 +-
+ hw/xfree86/parser/read.c | 2 +-
+ 3 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/hw/xfree86/parser/Files.c b/hw/xfree86/parser/Files.c
+index 849bf92..5cc3ec7 100644
+--- a/hw/xfree86/parser/Files.c
++++ b/hw/xfree86/parser/Files.c
+@@ -76,14 +76,18 @@ static xf86ConfigSymTabRec FilesTab[] = {
+ #define CLEANUP xf86freeFiles
+
+ XF86ConfFilesPtr
+-xf86parseFilesSection(void)
++xf86parseFilesSection(XF86ConfFilesPtr ptr)
+ {
+ int i, j;
+ int k, l;
+ char *str;
+ int token;
+
+- parsePrologue(XF86ConfFilesPtr, XF86ConfFilesRec)
++ if (!ptr) {
++ if( (ptr=calloc(1,sizeof(XF86ConfFilesRec))) == NULL ) {
++ return NULL;
++ }
++ }
+
+ while ((token = xf86getToken(FilesTab)) != ENDSECTION) {
+ switch (token) {
+diff --git a/hw/xfree86/parser/configProcs.h b/hw/xfree86/parser/configProcs.h
+index 774e2a2..b9fdebb 100644
+--- a/hw/xfree86/parser/configProcs.h
++++ b/hw/xfree86/parser/configProcs.h
+@@ -37,7 +37,7 @@ void xf86freeDeviceList(XF86ConfDevicePtr ptr);
+ int xf86validateDevice(XF86ConfigPtr p);
+
+ /* Files.c */
+-XF86ConfFilesPtr xf86parseFilesSection(void);
++XF86ConfFilesPtr xf86parseFilesSection(XF86ConfFilesPtr ptr);
+ void xf86printFileSection(FILE * cf, XF86ConfFilesPtr ptr);
+ void xf86freeFiles(XF86ConfFilesPtr p);
+
+diff --git a/hw/xfree86/parser/read.c b/hw/xfree86/parser/read.c
+index 327c02a..e0d6139 100644
+--- a/hw/xfree86/parser/read.c
++++ b/hw/xfree86/parser/read.c
+@@ -110,7 +110,7 @@ xf86readConfigFile(void)
+ if (xf86nameCompare(xf86_lex_val.str, "files") == 0) {
+ free(xf86_lex_val.str);
+ xf86_lex_val.str = NULL;
+- HANDLE_RETURN(conf_files, xf86parseFilesSection());
++ HANDLE_RETURN(conf_files, xf86parseFilesSection(ptr->conf_files));
+ }
+ else if (xf86nameCompare(xf86_lex_val.str, "serverflags") == 0) {
+ free(xf86_lex_val.str);
+--
+2.3.0
+
diff --git a/x11-base/xorg-server/files/xorg-server-1.17.4-arm-musl.patch b/x11-base/xorg-server/files/xorg-server-1.17.4-arm-musl.patch
new file mode 100644
index 0000000..e661ae1
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.17.4-arm-musl.patch
@@ -0,0 +1,20 @@
+--- ./hw/xfree86/common/compiler.h.orig
++++ ./hw/xfree86/common/compiler.h
+@@ -721,7 +721,7 @@
+ :"r"(val), "r"(addr), "i"(ASI_PL));
+ }
+
+-#elif defined(__mips__) || (defined(__arm32__) && !defined(__linux__))
++#elif defined(__mips__) || (defined(__arm32__) && !defined(__GLIBC__))
+ #if defined(__arm32__) || defined(__mips64)
+ #define PORT_SIZE long
+ #else
+@@ -996,7 +996,7 @@
+ return xf86ReadMmio32Le((void *) ioBase, port);
+ }
+
+-#elif defined(__arm__) && defined(__linux__)
++#elif defined(__arm__) && defined(__GLIBC__)
+
+ /* for Linux on ARM, we use the LIBC inx/outx routines */
+ /* note that the appropriate setup via "ioperm" needs to be done */
diff --git a/x11-base/xorg-server/files/xorg-sets.conf b/x11-base/xorg-server/files/xorg-sets.conf
new file mode 100644
index 0000000..5cd8112
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-sets.conf
@@ -0,0 +1,6 @@
+# Rebuild all X11 modules (mostly useful after xorg-server ABI change).
+[x11-module-rebuild]
+class = portage.sets.dbapi.VariableSet
+world-candidate = false
+variable = CATEGORY
+includes = x11-drivers
diff --git a/x11-base/xorg-server/metadata.xml b/x11-base/xorg-server/metadata.xml
new file mode 100644
index 0000000..cbff1d2
--- /dev/null
+++ b/x11-base/xorg-server/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>x11</herd>
+<use>
+ <flag name='dmx'>Build the Distributed Multiheaded X server</flag>
+ <flag name='glamor'>Enable Glamor OpenGL 2D acceleration</flag>
+ <flag name='kdrive'>Build the kdrive X servers</flag>
+ <flag name='tslib'>Build with tslib support for touchscreen devices</flag>
+ <flag name='unwind'>Enable libunwind usage for backtraces</flag>
+ <flag name='xnest'>Build the Xnest server</flag>
+ <flag name='xorg'>Build the Xorg X server (HIGHLY RECOMMENDED)</flag>
+ <flag name='xvfb'>Build the Xvfb server</flag>
+</use>
+<upstream>
+ <remote-id type="cpe">cpe:/a:x.org:xorg-server</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/x11-base/xorg-server/xorg-server-1.18.0.ebuild b/x11-base/xorg-server/xorg-server-1.18.0.ebuild
new file mode 100644
index 0000000..036957f
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.18.0.ebuild
@@ -0,0 +1,245 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_DOC=doc
+inherit xorg-2 multilib versionator flag-o-matic
+EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
+
+DESCRIPTION="X.Org X servers"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+
+IUSE_SERVERS="dmx kdrive xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} glamor ipv6 libressl minimal nptl selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-eselect/eselect-opengl-1.3.0
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ media-libs/freetype
+ >=x11-apps/iceauth-1.0.2
+ >=x11-apps/rgb-1.0.3
+ >=x11-apps/xauth-1.0.3
+ x11-apps/xkbcomp
+ >=x11-libs/libdrm-2.4.46
+ >=x11-libs/libpciaccess-0.12.901
+ >=x11-libs/libXau-1.0.4
+ >=x11-libs/libXdmcp-1.0.2
+ >=x11-libs/libXfont-1.4.2
+ >=x11-libs/libxkbfile-1.0.4
+ >=x11-libs/libxshmfence-1.1
+ >=x11-libs/pixman-0.27.2
+ >=x11-libs/xtrans-1.3.5
+ >=x11-misc/xbitmaps-1.0.1
+ >=x11-misc/xkeyboard-config-2.4.1-r3
+ dmx? (
+ x11-libs/libXt
+ >=x11-libs/libdmx-1.0.99.1
+ >=x11-libs/libX11-1.1.5
+ >=x11-libs/libXaw-1.0.4
+ >=x11-libs/libXext-1.0.99.4
+ >=x11-libs/libXfixes-5.0
+ >=x11-libs/libXi-1.2.99.1
+ >=x11-libs/libXmu-1.0.3
+ x11-libs/libXrender
+ >=x11-libs/libXres-1.0.3
+ >=x11-libs/libXtst-1.0.99.2
+ )
+ glamor? (
+ media-libs/libepoxy
+ >=media-libs/mesa-10.3.4-r1[egl,gbm]
+ !x11-libs/glamor
+ )
+ kdrive? (
+ >=x11-libs/libXext-1.0.5
+ x11-libs/libXv
+ )
+ xephyr? (
+ x11-libs/libxcb
+ x11-libs/xcb-util
+ x11-libs/xcb-util-image
+ x11-libs/xcb-util-keysyms
+ x11-libs/xcb-util-renderutil
+ x11-libs/xcb-util-wm
+ )
+ !minimal? (
+ >=x11-libs/libX11-1.1.5
+ >=x11-libs/libXext-1.0.5
+ >=media-libs/mesa-10.3.4-r1[nptl=]
+ )
+ tslib? ( >=x11-libs/tslib-1.0 )
+ udev? ( >=virtual/udev-150 )
+ unwind? ( sys-libs/libunwind )
+ wayland? (
+ >=dev-libs/wayland-1.3.0
+ media-libs/libepoxy
+ )
+ >=x11-apps/xinit-1.3.3-r1
+ systemd? (
+ sys-apps/dbus
+ sys-apps/systemd
+ )"
+
+DEPEND="${CDEPEND}
+ sys-devel/flex
+ >=x11-proto/bigreqsproto-1.1.0
+ >=x11-proto/compositeproto-0.4
+ >=x11-proto/damageproto-1.1
+ >=x11-proto/fixesproto-5.0
+ >=x11-proto/fontsproto-2.1.3
+ >=x11-proto/glproto-1.4.17-r1
+ >=x11-proto/inputproto-2.2.99.1
+ >=x11-proto/kbproto-1.0.3
+ >=x11-proto/randrproto-1.4.0
+ >=x11-proto/recordproto-1.13.99.1
+ >=x11-proto/renderproto-0.11
+ >=x11-proto/resourceproto-1.2.0
+ >=x11-proto/scrnsaverproto-1.1
+ >=x11-proto/trapproto-3.4.3
+ >=x11-proto/videoproto-2.2.2
+ >=x11-proto/xcmiscproto-1.2.0
+ >=x11-proto/xextproto-7.2.99.901
+ >=x11-proto/xf86dgaproto-2.0.99.1
+ >=x11-proto/xf86rushproto-1.1.2
+ >=x11-proto/xf86vidmodeproto-2.2.99.1
+ >=x11-proto/xineramaproto-1.1.3
+ >=x11-proto/xproto-7.0.26
+ >=x11-proto/presentproto-1.0
+ >=x11-proto/dri3proto-1.0
+ dmx? (
+ >=x11-proto/dmxproto-2.2.99.1
+ doc? (
+ || (
+ www-client/links
+ www-client/lynx
+ www-client/w3m
+ )
+ )
+ )
+ !minimal? (
+ >=x11-proto/xf86driproto-2.1.0
+ >=x11-proto/dri2proto-2.8
+ )"
+
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-xserver )
+ !x11-drivers/xf86-video-modesetting
+"
+
+PDEPEND="
+ xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+ || ( ${IUSE_SERVERS} )
+ )
+ xephyr? ( kdrive )"
+
+#UPSTREAMED_PATCHES=(
+# "${WORKDIR}/patches/"
+#)
+
+PATCHES=(
+ "${UPSTREAMED_PATCHES[@]}"
+ "${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
+ # needed for new eselect-opengl, bug #541232
+ "${FILESDIR}"/${PN}-1.17-support-multiple-Files-sections.patch
+ "${FILESDIR}"/${PN}-1.17.4-arm-musl.patch
+)
+
+pkg_pretend() {
+ # older gcc is not supported
+ [[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+ die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+src_configure() {
+ # localstatedir is used for the log location; we need to override the default
+ # from ebuild.sh
+ # sysconfdir is used for the xorg.conf location; same applies
+ # NOTE: fop is used for doc generating ; and i have no idea if gentoo
+ # package it somewhere
+ XORG_CONFIGURE_OPTIONS=(
+ $(use_enable ipv6)
+ $(use_enable dmx)
+ $(use_enable glamor)
+ $(use_enable kdrive)
+ $(use_enable kdrive kdrive-kbd)
+ $(use_enable kdrive kdrive-mouse)
+ $(use_enable kdrive kdrive-evdev)
+ $(use_enable suid install-setuid)
+ $(use_enable tslib)
+ $(use_enable unwind libunwind)
+ $(use_enable wayland xwayland)
+ $(use_enable !minimal record)
+ $(use_enable !minimal xfree86-utils)
+ $(use_enable !minimal install-libxf86config)
+ $(use_enable !minimal dri)
+ $(use_enable !minimal dri2)
+ $(use_enable !minimal glx)
+ $(use_enable xephyr)
+ $(use_enable xnest)
+ $(use_enable xorg)
+ $(use_enable xvfb)
+ $(use_enable nptl glx-tls)
+ $(use_enable udev config-udev)
+ $(use_with doc doxygen)
+ $(use_with doc xmlto)
+ $(use_with systemd systemd-daemon)
+ $(use_enable systemd systemd-logind)
+ --enable-libdrm
+ --sysconfdir="${EPREFIX}"/etc/X11
+ --localstatedir="${EPREFIX}"/var
+ --with-fontrootdir="${EPREFIX}"/usr/share/fonts
+ --with-xkb-output="${EPREFIX}"/var/lib/xkb
+ --disable-config-hal
+ --disable-linux-acpi
+ --without-dtrace
+ --without-fop
+ --with-os-vendor=Gentoo
+ --with-sha1=libcrypto
+ )
+
+ xorg-2_src_configure
+}
+
+src_install() {
+ xorg-2_src_install
+
+ server_based_install
+
+ if ! use minimal && use xorg; then
+ # Install xorg.conf.example into docs
+ dodoc "${AUTOTOOLS_BUILD_DIR}"/hw/xfree86/xorg.conf.example
+ fi
+
+ newinitd "${FILESDIR}"/xdm-setup.initd-1 xdm-setup
+ newinitd "${FILESDIR}"/xdm.initd-11 xdm
+ newconfd "${FILESDIR}"/xdm.confd-4 xdm
+
+ # install the @x11-module-rebuild set for Portage
+ insinto /usr/share/portage/config/sets
+ newins "${FILESDIR}"/xorg-sets.conf xorg.conf
+}
+
+pkg_postinst() {
+ # sets up libGL and DRI2 symlinks if needed (ie, on a fresh install)
+ eselect opengl set xorg-x11 --use-old
+}
+
+pkg_postrm() {
+ # Get rid of module dir to ensure opengl-update works properly
+ if [[ -z ${REPLACED_BY_VERSION} && -e ${EROOT}/usr/$(get_libdir)/xorg/modules ]]; then
+ rm -rf "${EROOT}"/usr/$(get_libdir)/xorg/modules
+ fi
+}
+
+server_based_install() {
+ if ! use xorg; then
+ rm "${ED}"/usr/share/man/man1/Xserver.1x \
+ "${ED}"/usr/$(get_libdir)/xserver/SecurityPolicy \
+ "${ED}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
+ "${ED}"/usr/share/man/man1/Xserver.1x
+ fi
+}
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
new file mode 100644
index 0000000..4d499b5
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -0,0 +1,30 @@
+AUX 95-nvidia-settings 54 SHA256 c4b293c6c2659bebcbad9cffc1e237c6908a3763599e432aba89d07bc2826ba0 SHA512 0fdaff8701598081eeb78defcd140b78f75309ace998df67569a15d0ff653aca7ad0576912bf9a619f42990e6fb35cdb79e21f8181d3cd04dea719d912da8be9 WHIRLPOOL d71fef01f8c346089ef2556ffe62c5094f89582b73500711a7f18f25424e59baa12f6b0861bd8efd9bf4c5bbf794642927ca322cee218fd2da9fc7baa50fa827
+AUX nvidia-169.07 639 SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577 SHA512 3af295c026280dc3a2b73c2cc7772254686b09cad15f1333ab0b4de8cb0ccf78e725ced2a399b10edcf8af6ba42ab1485dc0661af67461b0c3789f786357772f WHIRLPOOL 626ae3c01c879e0cfe05bd373e0b9dfd6f462dd9ef6ae94a7d60276fe2d17c57fbb20aaa4d2a186a0ffc2a860076692aac854d00a3545bc9736e7bb8d0581055
+AUX nvidia-drivers-355.06-pax.patch 4566 SHA256 ae3bca3cb4d87c0311511cd9c0fc0d0ddd45dc03f3d83dc2b2b31838231f7e71 SHA512 3fe5b7674ecc0d6372cf6a91b81d5ffa71a1622f41f62a78aa0deeb3817004b4b1e3b4ca8f41ab6b3ed172a3597d6e72fba10ea435bb58d8da184a5cc8d4862e WHIRLPOOL fe6b681e96b7852c4af23652b94f7a5fe4aeeb9279a0ebb800b99e796c16527390ae0cf45daa0125677b98e80b28faede787b76ce803b856fb351e7617efad8a
+AUX nvidia-drivers-355.11-nv-procfs.patch 979 SHA256 8abffa2f36184fbfb73b876e31ee7d9a5ba12ce3be067a2d869d3e3706d20866 SHA512 9b57b5f2d1a4e426fcd08bf2a1ca46c807c76c1cde73b998e30f8d1e3b739988d9600ce40305d1ab3fd2138f03209194f80a02611f4d1b254463a83ff9a51d84 WHIRLPOOL 9cf59cc42f9579e90b4a4fc525e288be0ac1d1a2bdde4281e937fc01db3b6dba196cf79f6a32080d700290969f70e4073cdae9e98e7065e16b63b3fd5b9549ec
+AUX nvidia-drivers-358.16-randstruct.patch 932 SHA256 4247b64b7e07131ed5eb5ec74c2305260367ed5b8ab2a250c4ed6ba9a54ae548 SHA512 b1cec295275ae21abfc3cd08135b3949b65fd8b74f6d50747e23d6cca52c8d84fc5e81367a1931259b2620bad4445933b817bd419582fafc410a693a5b835119 WHIRLPOOL 6ef67a9a653cd58c90231be463539245275aa691b543d641198412146b43ad60ea9e9b09c2994ac13a7c7c6a84ee5983c91f2984f31fc54cecbf62ed4ce582f0
+AUX nvidia-drivers-361.18-pax.patch 14008 SHA256 d4b204fbb2d6ec03ae0894bbd6228d468f97bbe968a017c72fa343488648862a SHA512 86b1454d58c209f4e115ca16a57c649f7bdefa8f359ff00c7fc77c3ffb96882ecd074ced22a770c9472a56fa17bea43cbd64c4c60776a570bda39a1f62b4998e WHIRLPOOL 2f03675a28e2d6cfec3037fcd64b22576e46cc2ba852cf0022eb3c02fddc4f94c8999ccba82bf5da69be80753e269252be9b57949d74935cb3c40d7838ac18da
+AUX nvidia-drivers-settings.desktop 193 SHA256 31c062449b8bcc8adcd3ee649d8aebf0bef502400bcbbbb46124217e1efb17a3 SHA512 fbb81d2520e9025fbffb2a8e7b3647f621ddc9d36c79d063d49e901286e8d1ea45de1274f42e33ff1aece5cebd547a42829d65b421db39d808947554b0f57453 WHIRLPOOL c797eb0ec1044ecaaa979ca5180f840d9c82c5c040dd81b2d86ca4afade9f0c006fb8951f04cc4d2b206110d38b339690386d291ff8f625a22b38178a3cd970b
+AUX nvidia-persistenced.conf 250 SHA256 347437868119e8ae12852a574597936e855f534a9ad290fef3f62b4083a38516 SHA512 9c9562bb15bf4552754dd50a1b01dec5df76f7f5666fba2fff642a169f87e9ed421a260f2258ab469f7e4cd9ef8161653355795624387fe7ad5ae6a0d71e5f46 WHIRLPOOL 1422504c6688fce28719146c7d95fe196ca617556942e8dc04c7f8c1412fa80b5b8289c0f86b835eece90eed4b4017093d686779f88d44cd41fa3de1a10e9bbe
+AUX nvidia-persistenced.init 656 SHA256 13bedd40d44e125243a3da52e07df850808f6e312a50a0ad29549d5c29888cf1 SHA512 eb875afb42cb1b71ff8b08588991478b0e25e633dfca9e94aaf9ac61c1c6f78c1da2c394137f9cbc978a75b91ba83d33cd290af5d6fc9ceb0edb7da867f55cdd WHIRLPOOL 2a621b5a553293e81079b73cd4c8d026c5a7295e99db161e39b6df73cde72b18e246b962f90dade8b3a838ad63c7ec794521374884d9f8ce9cebcd4503b9ff26
+AUX nvidia-rmmod.conf 97 SHA256 7b8912f9865958755aa26c2e32930f7c6e6f7eb5e5d0d075059b93e0e5b824f0 SHA512 517e7daf74496f2ec0cca9aa2654ef26eb9f07ee942f03f6e6b97b1b311c0d9915d56ccdd2acd73680dc39373a8090c993b16d5cb9329024609a52027757c240 WHIRLPOOL 586a30a716201820d762e9715b2ef1a7bb729664900ebf18ab2c8a4347ae2add0defe4d6ed76972864a0e986cd257bb51753c5152c52e42708ed05bcac5d1e85
+AUX nvidia-smi.init 551 SHA256 706ae49d4a61d400b6cb1cd942a98a7764e617ccb3256b3ab7d92e22b1421605 SHA512 6f207caf52170707b5afc66f9a93b3ca3bf1235dd5fde2fbba5001f689df634cfb703f0eb2c137a865454f3bb588470e1b293aa4f6639d8907512e4d84a51cda WHIRLPOOL aea827c7b87b3349549b0820def93740f02f560eacc561bbc96c6b66104775d691b9e2d3aa8540a4ba8f879d645929c271ef9d821f741020d7f14c7437bd89f7
+AUX nvidia-udev.sh 185 SHA256 120c0af2b64fbcbd7032217a78eec8b104874c1ca68726367bce22c57944e07e SHA512 166df3a4e7c1862ca2e0f634bf5eed7aad1bdd7e55764ca42371b91a7077c59f0bc243de5616fd38dac9694159d1695d54fbd08ac89d4d3f3649c70c7db5977e WHIRLPOOL cb9995029cdb2fe1bc7fe5ae54041ee5de8da86bf5eb3616d062475e56c44d436e1e66683ecddd986fc5bca5723d88da4b1a42f65f3cd7e15636928bd21fce14
+AUX nvidia-udev.sh-r1 285 SHA256 5ca08a5329cccd9e32dd3cd573525f510edf7b12d8c531cbe781a70b2ceade63 SHA512 493b0d5f2698d299e3b8d5782ac7fb8174e7ee93f1dae66bc1161eb4dd16d4db91048444dc6e7bea344960936c0a5c825041f6909af004438d8009a3d3fe71c9 WHIRLPOOL 14c2d01d8280dc9c4afaacc75b8ef97875553b5ed50e6dba6209280ebea5cd9c607505870ee37d719530428a9f57034511cd080ba0ab3a1d831b767b4cd15305
+AUX nvidia-uvm.conf 82 SHA256 4407c7ceed58ead98492560c07fc44d4285a70ed5165407f1b959e46d6e6d081 SHA512 cbdb946934a0b7c7d0fab0937ead0a161ff20238e0b53f9e05ea18a4fa0507df8d37594bd13402e3ec2001d488daeb2bec718d612f68202768d62a3cec97aacb WHIRLPOOL a79d65d67b0ff446bb2c65f5f3ec16ffaf0268ab0abbc137b413168aa7f5e617e502eaaf00fd21a149778bdd134da532b25bb066fc70bfa601caa97397aaf424
+AUX nvidia.udev-rule 462 SHA256 37b152a5055a16d1947171567178e2841679ddf03dba9d48e7d30f1e3b469ac6 SHA512 96f9edaa0b46bea5fce17596f868bea5265b303d7185af6ba81527bbd7b8fdf92de9311317cbde51a29d222083d451c25ab77c3d6837cbc4072a50d9af89aa86 WHIRLPOOL 89ed95f33db7485a3a1acd91df33ecdfb7d0a249db2d7674f134fb85b35a54653d0458e478503315ce506ae5d3c8dcd4ac20420711fdbdd087ea4bd779627d13
+DIST NVIDIA-FreeBSD-x86-355.11.tar.gz 56832647 SHA256 3d4d5d8fcf558a8f5f1a88846161b1a89bd7fc66c0268b40613c7e3457f5ce7b SHA512 744d9b8c48b82bac0bfeea5e8b2b2bbaa0e6a183cbd1f5d4f782fa7b21a6f6c5b252e556a8b2161c3b5d43938ef8fabf6cb36f995ee823fbf792f3c9a92b87e1 WHIRLPOOL 43bceb8e8d3b00789cf2c8163a055b1d2405ef93e471fda4c4e2146093289891557f4ec8debfe6bca89ad6ed6dc2e389f1d3060759a71e8949df343bc31b85b9
+DIST NVIDIA-FreeBSD-x86-358.16.tar.gz 58548165 SHA256 2257d9a2b3661d024be0864e2fe192de34fdf8e206073930541e0fa6f232016e SHA512 e1d84c2cc3473253b31aa3df8e2ad7418da5789e31d6f71f07e6bf5e712ffcb6417cf8931c16e5e5a19d0f4cdaebf229e4edbee53d5613bea1ff6b4e4c6657cc WHIRLPOOL 15b760556d978c9e82b063c1135089e1b1222460285ab2c40d450cf26820e701ff5d7ebdd04815f80a68a07eea0e622fa621b8369883f4168af5b45d4edde62d
+DIST NVIDIA-FreeBSD-x86-361.18.tar.gz 64866939 SHA256 93cdf053e2e0cf9dcd0e888c41ea95cedd9c3521e0ab14d9e4826ba1245aef35 SHA512 aa0e23253330496e076a23335743ab16f0996406c7e9b0991d3f0cbe834be6a66b6a1d69fc5f92d7c29bbc748ec1d4ee4d161f130daea3fa85cb15c1f9411a86 WHIRLPOOL c0387f0780b0717503c9ab15448229781eb9ef4f57ee0b4df3b42eb3f48c53ebf1a7b1d14102b959fa6a5db05702b0f65d359f9b42734fcaa9fde52d7647081c
+DIST NVIDIA-FreeBSD-x86_64-355.11.tar.gz 54031364 SHA256 3637a879905bb541bf02f9bcdfe37c242a52ec6071671a0ba33581efdce1504e SHA512 84add7d90c7f45d19d736ee70c1c4a6434be1c512bafa29cbbf9221e99a31fc383971696dce99da5a77a171eb3537c98cfec7005ff061411ac9c310fa219c906 WHIRLPOOL d8ade5d63c3ef78fa92f9dc07934eed8fdd4ead1e40f1820ad95feb166264a95a800879e1fc6374bf2deef419b0838b4864796d9f81a81110d06ccd9b65c459d
+DIST NVIDIA-FreeBSD-x86_64-358.16.tar.gz 55338634 SHA256 29b62c266bb96604e82c5a514aebea86b65057fa59ba37f91bd01cd870a0725c SHA512 2e5aef35d5c4aa605ebe18a23ab132fe373c9b87a915ada005ecd28d75a476d6ac9d978394f8c63123f98a408dcc97d624b5deda5f242faea7304fc8ddf76d0d WHIRLPOOL bc8ee78214209fdeb0c6fc196cbc3acc244c777df8a83b5a5489959a73b744ecc125d7a9be6ca2f08d43b6a080898b1090eca45e627c96210dcfeb6207512c8e
+DIST NVIDIA-FreeBSD-x86_64-361.18.tar.gz 61651804 SHA256 83fe66f611ff2ef25fa9593ffc7fa49ef1c96597a263138918441acef3d4d066 SHA512 fe27a9eb3c7b3488fc2ad7b13a4477a4d5eb1039b6d13c584bd558f9a0de1f6b8af7db425aa78d1700d113486246f136b65e72b8f22731ac0a76537ff3e51cf1 WHIRLPOOL 08bff8b3dd4961c77dcd10d02e38a5cd013a77e9a791520453db7151d7f4facee69359910dac8abdb8016365ae8f423224995cb2f95c84282a8f1f35f7e4ca81
+DIST NVIDIA-Linux-x86-355.11.run 43569515 SHA256 94ce6b879581b931b84d83a9111040b9a5aa9306b012b4380cd93f6ffede3066 SHA512 450caea472c5e1b3d7098adba28d18c1221cf809c6bd0071466ff2a946dd0eca6555475f5f6bc044fb19a21c8939b1020357d4aeb0ce47d0edfcda071a66fd46 WHIRLPOOL 3a95e83ab3f46e64150caf1489aa3173aae69919bf432eabcdd0501de8bcdee5402cdb33e149a4d5d429ccb85e4b4af9b30bec5516ad7b7f091ae42f6093d26f
+DIST NVIDIA-Linux-x86-358.16.run 43972195 SHA256 d3a2842cbfb1163e20c658fbfaf5a235d5c9f035cd2d657f15df8a14b3fe80b1 SHA512 a5d37fb56a59b9958f6c34139250baf13a1c42ffc70f7deb19ffaac1ae6c2ce80b96649c5797d60754050d75792d14141cd5ebc8820bb73ee4aad4aa6d6c5b20 WHIRLPOOL 336e56827619ad53622c3fbf9fb3e9895a08b8500b81f3830514a34913180e3dc5c6f170f14675fa628e2c9658a084d7f9c45f47213d28335ecfee53c8110907
+DIST NVIDIA-Linux-x86-361.18.run 48780711 SHA256 45171c24e0011d0e062ba487bd9abef3797752e29ee4cbe665af8d9ccacfd6d8 SHA512 9a41fc6319467cc947df739e7b596d2e72dc7343ee4cce810146166356081406bc3df08d0b649209ea569e0e7faae30fc2d9da22293916b82fec03f66387f9c5 WHIRLPOOL 31eb74835dc27c1dd999e53ac24fbe29e76c6d91e828d60b923a1adce9f8451d162f2fc85f5c279d9916509ceb18c936b9a43c30b66485938d8d5414f9c6b46b
+DIST NVIDIA-Linux-x86_64-355.11.run 76490009 SHA256 a59b425381add9d9058dc2d987bf3087ab59c43224b5eb04c3f273f5886451ed SHA512 bfc7ab7741183408aa0226dc29176c8ffe08566fbea7cebf78f4aa30627dc27ddf90bb82951c99006b34bc481be15712b4f5867ef543a32bfe3fe81a8e6ddeae WHIRLPOOL bb5d3397a855a53c2cd7e48056564085b906550f856207932e4670fef995030a3a7bcc0a9b97fee2e60aaff9b41c4a954afc57585441f5dec92c795358da810a
+DIST NVIDIA-Linux-x86_64-358.16.run 77353969 SHA256 a942cdb29ed715ff1ce25beb06b6c2490126b98ef8bee5d9973967b557596bf2 SHA512 4ae43f5e8c311d6c97eb89b02504bf52e3a947c71662f30641988a78eb9fe083370124aeee3b89db74f8ee50f454338db98dc7abeb35a242ba5729fefccead77 WHIRLPOOL 3dd0dcd4b455fcac12d55f40cfb8db0536af82d90c32b8471528b44a9fa1b3f3706ac26558d7395f82649c37550fded17b48d75d5584b3a41390c94bb1135c48
+DIST NVIDIA-Linux-x86_64-361.18.run 86447500 SHA256 94cccc3ff10ee9544f60bf1d32d04dddabc5103880b57895ea60e1167b89a155 SHA512 d307b50226b145761de69892c51af3cd4498b91f9c56b5d5bf7b1f4f00cc073af586008cb060a16c036426240853ed30d244e63d3f727eadf39338736a5c0b02 WHIRLPOOL 87e03bfe694f708d57fb548c01d853bbae1335a696bce225ce997000387189b55c27644922a051e9a50dfa94ec917bda14b6ed4b76f345c8adc8d8f54aebff97
+EBUILD nvidia-drivers-355.11-r99.ebuild 14024 SHA256 0ace9e3dba37543144fc0b21ce089821ac67d748531d49d7ef077420b7dca643 SHA512 45920bd95691dcffb18b2afbf1121200313af9006049d8782cfccff14001773f06d9152d25834f8c97b26194ad3667b9b11192661cfab877c9f358ce8a9c279c WHIRLPOOL e977dfc5728af883ff6e91d700fd550c7ef82bbec8d0e062732b31516af12846f078abc2d0a9cb31dae74fd3a6eece075b694b725dfd32a16ce1022c46a5f63f
+EBUILD nvidia-drivers-358.16-r99.ebuild 14056 SHA256 aabe012d5dd52ded7d666d7fd1b4c6cbf4695caba63add22f3a711c663d19641 SHA512 f36c4d20511c5b8dbe3ea53580dae67fdc31d2b5436c521c0cba69d1edbe8d367207e7c29252afed8147039701436e74e678e03f5dbb972fd6c191a72b2bbf2d WHIRLPOOL 1dd6731f4e8ad7d9764e71d68f3ead9ba77c8713d4a6c4b8c5f570090d2229f92eccf605b55f7bfc7e72d1eac2dbffff1eb8d770b1f5f9cdd0af02789a49eef1
+EBUILD nvidia-drivers-361.18-r99.ebuild 13921 SHA256 d06774619aaf4e2d766149d94f2de80384c7b4f85db5ee9411a1f83782f4d9f4 SHA512 2f2f2cdef44f9386284dd6154a405f868f7fc07b60027e90a7e05aa928c9db342c4a85bd91cdf53f22093c3132d58f632fcd2583aec6eb6c3d73423c3cc0759e WHIRLPOOL 25cf9b1913cf9406f72cb2f5a1142ba8ab6fbe6fab9d99148d7ac20d69750441759fab94f014dae94aed05d1d1164be2883a183b906635fb67665d64f9a72c8d
diff --git a/x11-drivers/nvidia-drivers/files/95-nvidia-settings b/x11-drivers/nvidia-drivers/files/95-nvidia-settings
new file mode 100644
index 0000000..e9d6274
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/95-nvidia-settings
@@ -0,0 +1,2 @@
+#!/bin/sh
+/opt/bin/nvidia-settings --load-config-only
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-169.07 b/x11-drivers/nvidia-drivers/files/nvidia-169.07
new file mode 100644
index 0000000..a96b0cd
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-169.07
@@ -0,0 +1,14 @@
+# Nvidia drivers support
+alias char-major-195 nvidia
+alias /dev/nvidiactl char-major-195
+
+# To tweak the driver the following options can be used, note that
+# you should be careful, as it could cause instability!! For more
+# options see /usr/share/doc/PACKAGE/README
+#
+# !!! SECURITY WARNING !!!
+# DO NOT MODIFY OR REMOVE THE DEVICE FILE RELATED OPTIONS UNLESS YOU KNOW
+# WHAT YOU ARE DOING.
+# ONLY ADD TRUSTED USERS TO THE VIDEO GROUP, THESE USERS MAY BE ABLE TO CRASH,
+# COMPROMISE, OR IRREPARABLY DAMAGE THE MACHINE.
+options nvidia NVreg_DeviceFileMode=432 NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=VIDEOGID NVreg_ModifyDeviceFiles=1
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-355.06-pax.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-355.06-pax.patch
new file mode 100644
index 0000000..cc5ebdf
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-355.06-pax.patch
@@ -0,0 +1,102 @@
+diff -urp NVIDIA-Linux-x86_64-355.06.orig/kernel/common/inc/nv-linux.h NVIDIA-Linux-x86_64-355.06/kernel/common/inc/nv-linux.h
+--- NVIDIA-Linux-x86_64-355.06.orig/kernel/common/inc/nv-linux.h 2015-07-29 05:13:57.000000000 +0200
++++ NVIDIA-Linux-x86_64-355.06/kernel/common/inc/nv-linux.h 2015-08-21 16:45:55.624336728 +0200
+@@ -1408,11 +1408,11 @@ extern void *nvidia_stack_t_cache;
+
+ #if !defined(NV_VMWARE)
+ #if (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 5)
+-#define NV_KMEM_CACHE_CREATE(name, type) \
+- kmem_cache_create(name, sizeof(type), 0, 0, NULL)
++#define NV_KMEM_CACHE_CREATE(name, type, flags) \
++ kmem_cache_create(name, sizeof(type), 0, flags, NULL)
+ #else
+-#define NV_KMEM_CACHE_CREATE(name, type) \
+- kmem_cache_create(name, sizeof(type), 0, 0, NULL, \
++#define NV_KMEM_CACHE_CREATE(name, type, flags) \
++ kmem_cache_create(name, sizeof(type), 0, flags, NULL, \
+ NULL)
+ #endif
+ #define NV_KMEM_CACHE_DESTROY(kmem_cache) \
+diff -urp NVIDIA-Linux-x86_64-355.06.orig/kernel/nvidia/nv.c NVIDIA-Linux-x86_64-355.06/kernel/nvidia/nv.c
+--- NVIDIA-Linux-x86_64-355.06.orig/kernel/nvidia/nv.c 2015-07-29 05:13:57.000000000 +0200
++++ NVIDIA-Linux-x86_64-355.06/kernel/nvidia/nv.c 2015-08-21 16:44:51.008340178 +0200
+@@ -719,7 +719,7 @@ int __init nvidia_init_module(void)
+ #endif
+
+ nvidia_stack_t_cache = NV_KMEM_CACHE_CREATE(nvidia_stack_cache_name,
+- nvidia_stack_t);
++ nvidia_stack_t, SLAB_USERCOPY);
+ if (nvidia_stack_t_cache == NULL)
+ {
+ nv_printf(NV_DBG_ERRORS, "NVRM: stack cache allocation failed!\n");
+@@ -861,7 +861,7 @@ int __init nvidia_init_module(void)
+ nv_state_init_gpu_uuid_cache(nv);
+
+ nvidia_pte_t_cache = NV_KMEM_CACHE_CREATE(nvidia_pte_cache_name,
+- nvidia_pte_t);
++ nvidia_pte_t, 0);
+ if (nvidia_pte_t_cache == NULL)
+ {
+ rc = -ENOMEM;
+@@ -872,7 +872,7 @@ int __init nvidia_init_module(void)
+ if (!nv_multiple_kernel_modules)
+ {
+ nvidia_p2p_page_t_cache = NV_KMEM_CACHE_CREATE(nvidia_p2p_page_cache_name,
+- nvidia_p2p_page_t);
++ nvidia_p2p_page_t, 0);
+ if (nvidia_p2p_page_t_cache == NULL)
+ {
+ rc = -ENOMEM;
+diff -urp NVIDIA-Linux-x86_64-355.06.orig/kernel/nvidia/nv-mmap.c NVIDIA-Linux-x86_64-355.06/kernel/nvidia/nv-mmap.c
+--- NVIDIA-Linux-x86_64-355.06.orig/kernel/nvidia/nv-mmap.c 2015-07-29 05:13:57.000000000 +0200
++++ NVIDIA-Linux-x86_64-355.06/kernel/nvidia/nv-mmap.c 2015-08-21 16:58:15.968297199 +0200
+@@ -113,12 +113,12 @@ nvidia_vma_release(struct vm_area_struct
+ }
+
+ #if defined(NV_VM_OPERATIONS_STRUCT_HAS_ACCESS)
+-static int
++static ssize_t
+ nvidia_vma_access(
+ struct vm_area_struct *vma,
+ unsigned long addr,
+ void *buffer,
+- int length,
++ size_t length,
+ int write
+ )
+ {
+diff -urp NVIDIA-Linux-x86_64-355.06.orig/kernel/nvidia-uvm/uvm_common.c NVIDIA-Linux-x86_64-355.06/kernel/nvidia-uvm/uvm_common.c
+--- NVIDIA-Linux-x86_64-355.06.orig/kernel/nvidia-uvm/uvm_common.c 2015-07-29 05:10:08.000000000 +0200
++++ NVIDIA-Linux-x86_64-355.06/kernel/nvidia-uvm/uvm_common.c 2015-08-21 17:00:33.788289841 +0200
+@@ -60,7 +60,7 @@ static void uvmnext_exit(void)
+ {
+
+ }
+-static NV_STATUS uvmnext_isr_top_half(void)
++static NV_STATUS uvmnext_isr_top_half(UvmGpuUuid *gpuUuidStruct)
+ {
+ return NV_ERR_NO_INTR_PENDING;
+ }
+@@ -79,7 +79,6 @@ NvBool uvmnext_activated(void)
+ #endif // NVIDIA_UVM_NEXT_ENABLED
+
+ static dev_t g_uvmBaseDev;
+-struct UvmOpsUvmEvents g_exportedUvmOps;
+
+ // TODO: This would be easier if RM allowed for multiple registrations, since we
+ // could register UVM-Lite and UVM-Next separately (bug 1372835).
+@@ -112,9 +111,11 @@ static NV_STATUS uvmSetupGpuProvider(voi
+ NV_STATUS status = NV_OK;
+
+ #ifdef NVIDIA_UVM_RM_ENABLED
+- g_exportedUvmOps.startDevice = uvm_gpu_event_start_device;
+- g_exportedUvmOps.stopDevice = uvm_gpu_event_stop_device;
+- g_exportedUvmOps.isrTopHalf = uvmnext_isr_top_half;
++ static struct UvmOpsUvmEvents g_exportedUvmOps = {
++ .startDevice = uvm_gpu_event_start_device,
++ .stopDevice = uvm_gpu_event_stop_device,
++ .isrTopHalf = uvmnext_isr_top_half,
++ };
+
+ // call RM to exchange the function pointers.
+ status = nvUvmInterfaceRegisterUvmCallbacks(&g_exportedUvmOps);
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-355.11-nv-procfs.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-355.11-nv-procfs.patch
new file mode 100644
index 0000000..9a06cd7
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-355.11-nv-procfs.patch
@@ -0,0 +1,32 @@
+Forward-port changes from nv-procfs.c in 361.18 in order to build against newer kernels.
+--- nvidia-drivers-355.11-r99/work/kernel/nvidia/nv-procfs.c 2015-08-27 00:23:15.000000000 +0200
++++ nvidia-drivers-361.18-r99/work/kernel/nvidia/nv-procfs.c 2016-01-10 05:03:42.000000000 +0100
+@@ -40,8 +40,6 @@
+ static struct proc_dir_entry *proc_nvidia_patches;
+ static struct proc_dir_entry *proc_nvidia_gpus;
+
+-extern nv_linux_state_t *nv_linux_devices;
+-
+ extern char *NVreg_RegistryDwords;
+ extern char *NVreg_RmMsg;
+ extern char *NVreg_AssignGpus;
+@@ -360,7 +358,8 @@
+ registry_keys = ((nvl != NULL) ?
+ nvl->registry_keys : nv_registry_keys);
+
+- return seq_printf(s, "Binary: \"%s\"\n", registry_keys);
++ seq_printf(s, "Binary: \"%s\"\n", registry_keys);
++ return 0;
+ }
+
+ static ssize_t
+@@ -560,7 +559,8 @@
+ void *v
+ )
+ {
+- return seq_puts(s, s->private);
++ seq_puts(s, s->private);
++ return 0;
+ }
+
+ NV_DEFINE_PROCFS_SINGLE_FILE(text_file);
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-358.16-randstruct.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-358.16-randstruct.patch
new file mode 100644
index 0000000..56e7f9d
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-358.16-randstruct.patch
@@ -0,0 +1,18 @@
+diff -urNp NVIDIA-Linux-x86_64-358.09/kernel/nvidia-modeset/nvidia-modeset-linux.c NVIDIA-Linux-x86_64-358.09/kernel/nvidia-modeset/nvidia-modeset-linux.c
+--- NVIDIA-Linux-x86_64-358.09/kernel/nvidia-modeset/nvidia-modeset-linux.c 2015-10-07 21:44:21.000000000 -0400
++++ NVIDIA-Linux-x86_64-358.09/kernel/nvidia-modeset/nvidia-modeset-linux.c 2015-10-24 22:34:39.000000000 -0400
+@@ -290,11 +290,11 @@ static void nvkms_resume(NvU32 gpuId)
+ * so we can use a single nvidia_modeset_stack_ptr for calling RM.
+ *************************************************************************/
+
+-static nvidia_modeset_rm_ops_t __rm_ops = { 0 };
++static nvidia_modeset_rm_ops_t __rm_ops;
+ static nvidia_modeset_stack_ptr nvkms_nvidia_stack = NULL;
+ static nvidia_modeset_callbacks_t nvkms_rm_callbacks = {
+- nvkms_suspend,
+- nvkms_resume
++ .suspend = nvkms_suspend,
++ .resume = nvkms_resume
+ };
+
+ static int nvkms_alloc_rm(void)
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-361.18-pax.patch b/x11-drivers/nvidia-drivers/files/nvidia-drivers-361.18-pax.patch
new file mode 100644
index 0000000..2744c70
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-361.18-pax.patch
@@ -0,0 +1,348 @@
+diff -urp work.orig/kernel/common/inc/nv-linux.h work/kernel/common/inc/nv-linux.h
+--- work.orig/kernel/common/inc/nv-linux.h 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/common/inc/nv-linux.h 2016-01-16 08:58:58.401122847 +0100
+@@ -1330,9 +1330,14 @@ extern void *nvidia_stack_t_cache;
+ #if (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 5)
+ #define NV_KMEM_CACHE_CREATE(name, type) \
+ kmem_cache_create(name, sizeof(type), 0, 0, NULL)
++#define NV_KMEM_CACHE_CREATE_USERCOPY(name, type) \
++ kmem_cache_create(name, sizeof(type), 0, SLAB_USERCOPY, NULL)
+ #else
+ #define NV_KMEM_CACHE_CREATE(name, type) \
+ kmem_cache_create(name, sizeof(type), 0, 0, NULL, \
++ NULL)
++#define NV_KMEM_CACHE_CREATE_USERCOPY(name, type) \
++ kmem_cache_create(name, sizeof(type), 0, SLAB_USERCOPY, NULL, \
+ NULL)
+ #endif
+ #define NV_KMEM_CACHE_DESTROY(kmem_cache) \
+diff -urp work.orig/kernel/common/inc/nv-modeset-interface.h work/kernel/common/inc/nv-modeset-interface.h
+--- work.orig/kernel/common/inc/nv-modeset-interface.h 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/common/inc/nv-modeset-interface.h 2016-01-16 09:07:45.833166370 +0100
+@@ -70,7 +70,7 @@ typedef struct {
+ * mix nvidia and nvidia-modeset kernel modules from different
+ * releases.
+ */
+- const char *version_string;
++// const char *version_string;
+
+ /*
+ * Allocate and free an nvidia_stack_t to pass into
+@@ -104,6 +104,6 @@ typedef struct {
+
+ } nvidia_modeset_rm_ops_t;
+
+-NV_STATUS nvidia_get_rm_ops(nvidia_modeset_rm_ops_t *rm_ops);
++NV_STATUS nvidia_get_rm_ops(const nvidia_modeset_rm_ops_t **rm_ops, const char **version_string);
+
+ #endif /* _NV_MODESET_INTERFACE_H_ */
+diff -urp work.orig/kernel/common/inc/nv-register-module.h work/kernel/common/inc/nv-register-module.h
+--- work.orig/kernel/common/inc/nv-register-module.h 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/common/inc/nv-register-module.h 2016-01-16 09:34:35.788680786 +0100
+@@ -34,7 +34,7 @@ typedef struct nvidia_module_s {
+ int (*ioctl)(struct inode *, struct file * file, unsigned int cmd, unsigned long arg);
+ unsigned int (*poll)(struct file * file, poll_table *wait);
+
+-} nvidia_module_t;
++} __do_const nvidia_module_t;
+
+ int nvidia_register_module(nvidia_module_t *);
+ int nvidia_unregister_module(nvidia_module_t *);
+diff -urp work.orig/kernel/nvidia/nv.c work/kernel/nvidia/nv.c
+--- work.orig/kernel/nvidia/nv.c 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/nvidia/nv.c 2016-01-16 08:58:58.401122847 +0100
+@@ -704,7 +704,7 @@ int __init nvidia_init_module(void)
+ NV_SPIN_LOCK_INIT(&km_lock);
+ #endif
+
+- nvidia_stack_t_cache = NV_KMEM_CACHE_CREATE(nvidia_stack_cache_name,
++ nvidia_stack_t_cache = NV_KMEM_CACHE_CREATE_USERCOPY(nvidia_stack_cache_name,
+ nvidia_stack_t);
+ if (nvidia_stack_t_cache == NULL)
+ {
+diff -urp work.orig/kernel/nvidia/nv-chrdev.c work/kernel/nvidia/nv-chrdev.c
+--- work.orig/kernel/nvidia/nv-chrdev.c 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/nvidia/nv-chrdev.c 2016-01-16 09:38:33.533905857 +0100
+@@ -20,8 +20,6 @@ int nv_register_chrdev(void *param)
+ {
+ nvidia_module_t *module = (nvidia_module_t *)param;
+
+- module->instance = nv_module_instance;
+-
+ return (nvidia_register_module(module));
+ }
+
+diff -urp work.orig/kernel/nvidia/nv-instance.c work/kernel/nvidia/nv-instance.c
+--- work.orig/kernel/nvidia/nv-instance.c 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/nvidia/nv-instance.c 2016-01-16 09:36:56.761685481 +0100
+@@ -54,6 +54,7 @@ struct pci_driver nv_pci_driver = {
+ nvidia_module_t nv_fops = {
+ .owner = THIS_MODULE,
+ .module_name = MODULE_NAME,
++ .instance = MODULE_INSTANCE_NUMBER,
+ .open = nvidia_open,
+ .close = nvidia_close,
+ .ioctl = nvidia_ioctl,
+diff -urp work.orig/kernel/nvidia/nv-mmap.c work/kernel/nvidia/nv-mmap.c
+--- work.orig/kernel/nvidia/nv-mmap.c 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/nvidia/nv-mmap.c 2016-01-16 08:58:58.401122847 +0100
+@@ -113,12 +113,12 @@ nvidia_vma_release(struct vm_area_struct
+ }
+
+ #if defined(NV_VM_OPERATIONS_STRUCT_HAS_ACCESS)
+-static int
++static ssize_t
+ nvidia_vma_access(
+ struct vm_area_struct *vma,
+ unsigned long addr,
+ void *buffer,
+- int length,
++ size_t length,
+ int write
+ )
+ {
+diff -urp work.orig/kernel/nvidia/nv-modeset-interface.c work/kernel/nvidia/nv-modeset-interface.c
+--- work.orig/kernel/nvidia/nv-modeset-interface.c 2016-01-10 05:03:42.000000000 +0100
++++ work/kernel/nvidia/nv-modeset-interface.c 2016-01-16 09:15:09.126954666 +0100
+@@ -59,10 +59,9 @@ void nvidia_modeset_resume(NvU32 gpuId)
+ }
+ }
+
+-NV_STATUS nvidia_get_rm_ops(nvidia_modeset_rm_ops_t *rm_ops)
++NV_STATUS nvidia_get_rm_ops(const nvidia_modeset_rm_ops_t **rm_ops, const char **version_string)
+ {
+- const nvidia_modeset_rm_ops_t local_rm_ops = {
+- .version_string = NV_VERSION_STRING,
++ static const nvidia_modeset_rm_ops_t local_rm_ops = {
+ .alloc_stack = nvidia_modeset_rm_ops_alloc_stack,
+ .free_stack = nvidia_modeset_rm_ops_free_stack,
+ .get_gpuid_list = nvidia_get_gpuid_list,
+@@ -72,13 +71,13 @@ NV_STATUS nvidia_get_rm_ops(nvidia_modes
+ .set_callbacks = nvidia_modeset_set_callbacks,
+ };
+
+- if (strcmp(rm_ops->version_string, NV_VERSION_STRING) != 0)
++ if (strcmp(*version_string, NV_VERSION_STRING) != 0)
+ {
+- rm_ops->version_string = NV_VERSION_STRING;
++ *version_string = NV_VERSION_STRING;
+ return NV_ERR_GENERIC;
+ }
+
+- *rm_ops = local_rm_ops;
++ *rm_ops = &local_rm_ops;
+
+ return NV_OK;
+ }
+diff -urp work.orig/kernel/nvidia-modeset/nvidia-modeset-linux.c work/kernel/nvidia-modeset/nvidia-modeset-linux.c
+--- work.orig/kernel/nvidia-modeset/nvidia-modeset-linux.c 2016-01-10 05:04:03.000000000 +0100
++++ work/kernel/nvidia-modeset/nvidia-modeset-linux.c 2016-01-16 09:10:46.866072615 +0100
+@@ -320,49 +320,48 @@ static void nvkms_resume(NvU32 gpuId)
+ * so we can use a single nvidia_modeset_stack_ptr for calling RM.
+ *************************************************************************/
+
+-static nvidia_modeset_rm_ops_t __rm_ops = { 0 };
++static const nvidia_modeset_rm_ops_t *__rm_ops;
+ static nvidia_modeset_stack_ptr nvkms_nvidia_stack = NULL;
+ static nvidia_modeset_callbacks_t nvkms_rm_callbacks = {
+- nvkms_suspend,
+- nvkms_resume
++ .suspend = nvkms_suspend,
++ .resume = nvkms_resume
+ };
+
+ static int nvkms_alloc_rm(void)
+ {
+ NV_STATUS nvstatus;
+ int ret;
++ const char *version_string = NV_VERSION_STRING;
+
+- __rm_ops.version_string = NV_VERSION_STRING;
+-
+- nvstatus = nvidia_get_rm_ops(&__rm_ops);
++ nvstatus = nvidia_get_rm_ops(&__rm_ops, &version_string);
+
+ if (nvstatus != NV_OK) {
+ printk(KERN_ERR NVKMS_LOG_PREFIX "Version mismatch: "
+ "nvidia.ko(%s) nvidia-modeset.ko(%s)\n",
+- __rm_ops.version_string, NV_VERSION_STRING);
++ version_string, NV_VERSION_STRING);
+ return -EINVAL;
+ }
+
+- ret = __rm_ops.set_callbacks(&nvkms_rm_callbacks);
++ ret = __rm_ops->set_callbacks(&nvkms_rm_callbacks);
+ if (ret < 0) {
+ printk(KERN_ERR NVKMS_LOG_PREFIX "Failed to register callbacks\n");
+ return ret;
+ }
+
+- return __rm_ops.alloc_stack(&nvkms_nvidia_stack);
++ return __rm_ops->alloc_stack(&nvkms_nvidia_stack);
+ }
+
+ static void nvkms_free_rm(void)
+ {
+- __rm_ops.set_callbacks(NULL);
+- if (__rm_ops.free_stack != NULL) {
+- __rm_ops.free_stack(nvkms_nvidia_stack);
++ __rm_ops->set_callbacks(NULL);
++ if (__rm_ops->free_stack != NULL) {
++ __rm_ops->free_stack(nvkms_nvidia_stack);
+ }
+ }
+
+ void NVKMS_API_CALL nvkms_call_rm(void *ops)
+ {
+- __rm_ops.op(nvkms_nvidia_stack, ops);
++ __rm_ops->op(nvkms_nvidia_stack, ops);
+ }
+
+ /*************************************************************************
+@@ -681,17 +680,17 @@ done:
+
+ NvBool NVKMS_API_CALL nvkms_open_gpu(NvU32 gpuId)
+ {
+- return __rm_ops.open_gpu(gpuId, nvkms_nvidia_stack) == 0;
++ return __rm_ops->open_gpu(gpuId, nvkms_nvidia_stack) == 0;
+ }
+
+ void NVKMS_API_CALL nvkms_close_gpu(NvU32 gpuId)
+ {
+- __rm_ops.close_gpu(gpuId, nvkms_nvidia_stack);
++ __rm_ops->close_gpu(gpuId, nvkms_nvidia_stack);
+ }
+
+ NvBool NVKMS_API_CALL nvkms_list_gpus(NvU32 *gpu_ids, NvU32 *gpu_count)
+ {
+- return __rm_ops.get_gpuid_list(gpu_ids, gpu_count);
++ return __rm_ops->get_gpuid_list(gpu_ids, gpu_count);
+ }
+
+ /*************************************************************************
+diff -urp work.orig/kernel/nvidia-uvm/uvm8_channel.c work/kernel/nvidia-uvm/uvm8_channel.c
+--- work.orig/kernel/nvidia-uvm/uvm8_channel.c 2016-01-10 05:04:16.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm8_channel.c 2016-01-16 08:58:58.401122847 +0100
+@@ -255,7 +255,7 @@ void uvm_channel_end_push(uvm_push_t *pu
+ mb();
+
+ channel->cpu_put = new_cpu_put;
+- ACCESS_ONCE(*channel->channel_info.GPPut) = new_cpu_put;
++ ACCESS_ONCE_RW(*channel->channel_info.GPPut) = new_cpu_put;
+
+ uvm_spin_unlock(&channel->pool->lock);
+
+diff -urp work.orig/kernel/nvidia-uvm/uvm8_global.c work/kernel/nvidia-uvm/uvm8_global.c
+--- work.orig/kernel/nvidia-uvm/uvm8_global.c 2016-01-10 05:04:16.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm8_global.c 2016-01-16 08:58:58.401122847 +0100
+@@ -30,16 +30,17 @@
+ #include "nv_uvm_interface.h"
+
+ uvm_global_t g_uvm_global;
+-static struct UvmOpsUvmEvents g_exported_uvm8_ops;
++static struct UvmOpsUvmEvents g_exported_uvm8_ops = {
++ .startDevice = NULL,
++ .stopDevice = NULL,
++ .isrTopHalf = uvm8_isr_top_half,
++
++};
+
+ static NV_STATUS uvm8_register_callbacks(void)
+ {
+ NV_STATUS status = NV_OK;
+
+- g_exported_uvm8_ops.startDevice = NULL;
+- g_exported_uvm8_ops.stopDevice = NULL;
+- g_exported_uvm8_ops.isrTopHalf = uvm8_isr_top_half;
+-
+ // Register the UVM callbacks with the main GPU driver:
+ status = uvm_rm_locked_call(nvUvmInterfaceRegisterUvmCallbacks(&g_exported_uvm8_ops));
+ return status;
+diff -urp work.orig/kernel/nvidia-uvm/uvm8_gpu_semaphore.c work/kernel/nvidia-uvm/uvm8_gpu_semaphore.c
+--- work.orig/kernel/nvidia-uvm/uvm8_gpu_semaphore.c 2016-01-10 05:04:16.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm8_gpu_semaphore.c 2016-01-16 08:58:58.401122847 +0100
+@@ -303,7 +303,7 @@ void uvm_gpu_semaphore_set_payload(uvm_g
+ // being optimized out on non-SMP configs (we need them for interacting with
+ // the GPU correctly even on non-SMP).
+ mb();
+- ACCESS_ONCE(*semaphore->payload) = payload;
++ ACCESS_ONCE_RW(*semaphore->payload) = payload;
+ }
+
+ NV_STATUS uvm_gpu_tracking_semaphore_alloc(uvm_gpu_semaphore_pool_t *pool, uvm_gpu_tracking_semaphore_t *tracking_sem)
+diff -urp work.orig/kernel/nvidia-uvm/uvm8_hal.c work/kernel/nvidia-uvm/uvm8_hal.c
+--- work.orig/kernel/nvidia-uvm/uvm8_hal.c 2016-01-10 05:04:16.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm8_hal.c 2016-01-16 09:40:24.230268412 +0100
+@@ -61,7 +61,7 @@ typedef struct
+ // arch_ops: id is an architecture
+ uvm_arch_hal_t arch_ops;
+ } u;
+-} uvm_hal_class_ops_t;
++} __do_const uvm_hal_class_ops_t;
+
+ // Table for copy engine functions.
+ // Each entry is associated with a copy engine class through the 'class' field.
+diff -urp work.orig/kernel/nvidia-uvm/uvm8_mmu.h work/kernel/nvidia-uvm/uvm8_mmu.h
+--- work.orig/kernel/nvidia-uvm/uvm8_mmu.h 2016-01-10 05:04:16.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm8_mmu.h 2016-01-16 11:00:29.069194590 +0100
+@@ -24,7 +24,6 @@
+ #ifndef __UVM8_MMU_H__
+ #define __UVM8_MMU_H__
+
+-#include "uvm8_forward_decl.h"
+ #include "uvmtypes.h"
+ #include "uvm_common.h"
+
+diff -urp work.orig/kernel/nvidia-uvm/uvm_common.c work/kernel/nvidia-uvm/uvm_common.c
+--- work.orig/kernel/nvidia-uvm/uvm_common.c 2016-01-10 05:04:16.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm_common.c 2016-01-16 08:58:58.401122847 +0100
+@@ -74,7 +74,6 @@ static int uvmnext_activated(void)
+ #endif
+
+ static dev_t g_uvmBaseDev;
+-struct UvmOpsUvmEvents g_exportedUvmOps;
+
+ static char* uvm_driver_mode = "lite";
+
+@@ -199,12 +198,17 @@ static NV_STATUS uvmSetupGpuProvider(voi
+ {
+ NV_STATUS status = NV_OK;
+
+- g_exportedUvmOps.startDevice = uvm_gpu_event_start_device;
+- g_exportedUvmOps.stopDevice = uvm_gpu_event_stop_device;
++ static struct UvmOpsUvmEvents g_exportedUvmOps = {
++ .startDevice = uvm_gpu_event_start_device,
++ .stopDevice = uvm_gpu_event_stop_device,
++ .isrTopHalf = NULL,
++ };
++ pax_open_kernel();
+ if (uvmnext_activated())
+- g_exportedUvmOps.isrTopHalf = uvmnext_isr_top_half;
++ *(void **)&g_exportedUvmOps.isrTopHalf = uvmnext_isr_top_half;
+ else if (uvmfull_activated())
+- g_exportedUvmOps.isrTopHalf = uvmfull_isr_top_half;
++ *(void **)&g_exportedUvmOps.isrTopHalf = uvmfull_isr_top_half;
++ pax_close_kernel();
+
+ // call RM to exchange the function pointers.
+ status = nvUvmInterfaceRegisterUvmCallbacks(&g_exportedUvmOps);
+diff -urp work.orig/kernel/nvidia-uvm/uvm_full_fault_buffer.h work/kernel/nvidia-uvm/uvm_full_fault_buffer.h
+--- work.orig/kernel/nvidia-uvm/uvm_full_fault_buffer.h 2016-01-10 05:04:17.000000000 +0100
++++ work/kernel/nvidia-uvm/uvm_full_fault_buffer.h 2016-01-16 08:58:58.405148231 +0100
+@@ -31,6 +31,7 @@
+ #define _UVM_FULL_FAULT_BUFFER_H_
+
+ #include "uvmtypes.h"
++#include "linux/compiler.h"
+
+ #define MAXWELL_FAULT_BUFFER_A (0xb069)
+ #define MEM_RD32(a) (*(const volatile NvU32 *)(a))
+@@ -303,7 +304,7 @@ typedef struct
+ NvUvmControlPrefetch_t controlPrefetch;
+ NvUvmTestFaultBufferOverflow_t testFaultBufferOverflow;
+ NvUvmClearFaultBufferOverflow_t clearFaultBufferOverflow;
+-} UvmFaultBufferOps;
++} UvmFaultBufferOps __no_const;
+
+ /******************************************************************************
+ uvmfull_fault_buffer_init
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-drivers-settings.desktop b/x11-drivers/nvidia-drivers/files/nvidia-drivers-settings.desktop
new file mode 100644
index 0000000..773a5af
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-drivers-settings.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=NVIDIA X Server Settings
+Comment=Configure NVIDIA X Server Settings
+Exec=/opt/bin/nvidia-settings
+Icon=nvidia-drivers-settings
+Categories=System;Settings;
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf b/x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf
new file mode 100644
index 0000000..637ac1a
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-persistenced.conf
@@ -0,0 +1,8 @@
+# run-time configuration file for /etc/init.d/nvidia-persistenced
+
+# NVPD_USER: The user nvidia-persistenced is intended to run for
+NVPD_USER=""
+
+# ARGS: Additional arguments to set the default persistence mode
+# (see nvidia-persistenced(1))
+ARGS=""
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-persistenced.init b/x11-drivers/nvidia-drivers/files/nvidia-persistenced.init
new file mode 100644
index 0000000..07f6905
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-persistenced.init
@@ -0,0 +1,25 @@
+#!/sbin/runscript
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+pidfile="/var/run/nvidia-persistenced/nvidia-persistenced.pid"
+
+start() {
+ if ! [ "${NVPD_USER}x" = x ]; then
+ ebegin "Starting nvidia-persistenced for ${NVPD_USER}"
+ NVPD_USER_ARG="--user ${NVPD_USER}"
+ else
+ ebegin "Starting nvidia-persistenced"
+ fi
+ start-stop-daemon --start --quiet --pidfile ${pidfile} \
+ --background --exec /opt/bin/nvidia-persistenced \
+ -- ${NVPD_USER_ARG} ${ARGS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping nvidia-persistenced"
+ start-stop-daemon --stop --quiet --pidfile ${pidfile}
+ eend $?
+}
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-rmmod.conf b/x11-drivers/nvidia-drivers/files/nvidia-rmmod.conf
new file mode 100644
index 0000000..48a8273
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-rmmod.conf
@@ -0,0 +1,3 @@
+# Nvidia UVM support
+
+remove nvidia modprobe -r --ignore-remove nvidia-modeset nvidia-uvm nvidia
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-smi.init b/x11-drivers/nvidia-drivers/files/nvidia-smi.init
new file mode 100644
index 0000000..6dce4e8
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-smi.init
@@ -0,0 +1,25 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+pidfile="/run/nvidia-smi.pid"
+
+depend() {
+ after modules
+}
+
+start() {
+ ebegin "Starting NVIDIA System Management Interface"
+ rm -f ${pidfile}
+ start-stop-daemon --start --quiet --pidfile ${pidfile} \
+ --make-pidfile --background --exec /opt/bin/nvidia-smi -- \
+ -q -l 300
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping NVIDIA System Management Interface"
+ start-stop-daemon --stop --quiet --pidfile ${pidfile}
+ eend $?
+}
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-udev.sh b/x11-drivers/nvidia-drivers/files/nvidia-udev.sh
new file mode 100644
index 0000000..9487b08
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-udev.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+if [ $# -ne 1 ]; then
+ echo "Invalid args" >&2
+ exit 1
+fi
+
+case $1 in
+ add|ADD)
+ /opt/bin/nvidia-smi > /dev/null
+ ;;
+ remove|REMOVE)
+ rm -f /dev/nvidia*
+ ;;
+esac
+
+exit 0
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1 b/x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1
new file mode 100644
index 0000000..6579bf7
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-udev.sh-r1
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+if [ $# -ne 1 ]; then
+ echo "Invalid args" >&2
+ exit 1
+fi
+
+case $1 in
+ add|ADD)
+ #hopefully this prevents infinite loops like bug #454740
+ if lsmod | grep -iq nvidia; then
+ /opt/bin/nvidia-smi > /dev/null
+ fi
+ ;;
+ remove|REMOVE)
+ rm -f /dev/nvidia*
+ ;;
+esac
+
+exit 0
diff --git a/x11-drivers/nvidia-drivers/files/nvidia-uvm.conf b/x11-drivers/nvidia-drivers/files/nvidia-uvm.conf
new file mode 100644
index 0000000..222c5ba
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-uvm.conf
@@ -0,0 +1,3 @@
+# Nvidia UVM support
+
+remove nvidia modprobe -r --ignore-remove nvidia-uvm nvidia
diff --git a/x11-drivers/nvidia-drivers/files/nvidia.udev-rule b/x11-drivers/nvidia-drivers/files/nvidia.udev-rule
new file mode 100644
index 0000000..2eb30bb
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia.udev-rule
@@ -0,0 +1,6 @@
+ACTION=="add", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia-udev.sh $env{ACTION}"
+# Previously the ACTION was "add|remove" but one user on bug #376527 had a
+# problem until he recompiled udev-171-r5, which is one of the versions I
+# tested with and it was fine. I'm breaking the rules out just to be safe
+# so someone else doesn't have an issue
+ACTION=="remove", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia-udev.sh $env{ACTION}"
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-355.11-r99.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-355.11-r99.ebuild
new file mode 100644
index 0000000..875ab19
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-355.11-r99.ebuild
@@ -0,0 +1,502 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \
+ portability toolchain-funcs unpacker user udev
+
+NV_URI="http://us.download.nvidia.com/XFree86/"
+X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
+X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
+AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="http://www.nvidia.com/"
+SRC_URI="
+ amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
+ amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
+ x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
+ x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
+"
+
+LICENSE="GPL-2 NVIDIA-r2"
+SLOT="0/${PV%.*}"
+KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
+RESTRICT="bindist mirror strip"
+EMULTILIB_PKG="true"
+
+IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel +tools gtk2 gtk3 +X uvm"
+REQUIRED_USE="
+ tools? ( X || ( gtk2 gtk3 ) )
+"
+
+COMMON="
+ app-eselect/eselect-opencl
+ gtk3? ( x11-libs/cairo )
+ X? (
+ >=app-eselect/eselect-opengl-1.0.9
+ )
+"
+DEPEND="
+ ${COMMON}
+ app-arch/xz-utils
+ kernel_linux? ( virtual/linux-sources )
+"
+RDEPEND="
+ ${COMMON}
+ acpi? ( sys-power/acpid )
+ tools? (
+ dev-libs/atk
+ dev-libs/glib:2
+ x11-libs/gdk-pixbuf
+ gtk2? ( >=x11-libs/gtk+-2.4:2 )
+ gtk3? ( x11-libs/gtk+:3 )
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/pango[X]
+ )
+ X? (
+ x11-base/xorg-server
+ >=x11-libs/libvdpau-0.3-r1
+ multilib? (
+ >=x11-libs/libX11-1.6.2[abi_x86_32]
+ >=x11-libs/libXext-1.3.2[abi_x86_32]
+ )
+ )
+"
+
+QA_PREBUILT="opt/* usr/lib*"
+
+S=${WORKDIR}/
+
+pkg_pretend() {
+ if use amd64 && has_multilib_profile && \
+ [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default ABI"
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if use kernel_linux && kernel_is ge 4 3; then
+ ewarn "Gentoo supports kernels which are supported by NVIDIA"
+ ewarn "which are limited to the following kernels:"
+ ewarn "<sys-kernel/gentoo-sources-4.3"
+ ewarn "<sys-kernel/vanilla-sources-4.3"
+ ewarn ""
+ ewarn "You are free to utilize epatch_user to provide whatever"
+ ewarn "support you feel is appropriate, but will not receive"
+ ewarn "support as a result of those changes."
+ ewarn ""
+ ewarn "Do not file a bug report about this."
+ fi
+
+ # Since Nvidia ships many different series of drivers, we need to give the user
+ # some kind of guidance as to what version they should install. This tries
+ # to point the user in the right direction but can't be perfect. check
+ # nvidia-driver.eclass
+ nvidia-driver-check-warning
+
+ # Kernel features/options to check for
+ CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
+ use x86 && CONFIG_CHECK+=" ~HIGHMEM"
+
+ # Now do the above checks
+ use kernel_linux && check_extra_config
+}
+
+pkg_setup() {
+ # try to turn off distcc and ccache for people that have a problem with it
+ export DISTCC_DISABLE=1
+ export CCACHE_DISABLE=1
+
+ if use kernel_linux; then
+ MODULE_NAMES="nvidia(video:${S}/kernel)"
+ use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
+
+ # This needs to run after MODULE_NAMES (so that the eclass checks
+ # whether the kernel supports loadable modules) but before BUILD_PARAMS
+ # is set (so that KV_DIR is populated).
+ linux-mod_pkg_setup
+
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
+ SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
+
+ # linux-mod_src_compile calls set_arch_to_kernel, which
+ # sets the ARCH to x86 but NVIDIA's wrapping Makefile
+ # expects x86_64 or i386 and then converts it to x86
+ # later on in the build process
+ BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
+ fi
+
+ # set variables to where files are in the package structure
+ if use kernel_FreeBSD; then
+ use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
+ use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
+ NV_DOC="${S}/doc"
+ NV_OBJ="${S}/obj"
+ NV_SRC="${S}/src"
+ NV_MAN="${S}/x11/man"
+ NV_X11="${S}/obj"
+ NV_SOVER=1
+ elif use kernel_linux; then
+ NV_DOC="${S}"
+ NV_OBJ="${S}"
+ NV_SRC="${S}/kernel"
+ NV_MAN="${S}"
+ NV_X11="${S}"
+ NV_SOVER=${PV}
+ else
+ die "Could not determine proper NVIDIA package"
+ fi
+}
+
+src_prepare() {
+ # Please add a brief description for every added patch
+
+ if use kernel_linux; then
+ if kernel_is lt 2 6 9; then
+ eerror "You must build this against 2.6.9 or higher kernels."
+ fi
+
+ # If greater than 2.6.5 use M= instead of SUBDIR=
+# convert_to_m "${NV_SRC}"/Makefile.kbuild
+ fi
+
+ if use pax_kernel; then
+ ewarn "Using PAX patches is not supported. You will be asked to"
+ ewarn "use a standard kernel should you have issues. Should you"
+ ewarn "need support with these patches, contact the PaX team."
+ epatch "${FILESDIR}"/${PN}-355.06-pax.patch
+ fi
+
+ # Allow compilation against newer kernels (think 4.3+)
+ epatch "${FILESDIR}"/${P}-nv-procfs.patch
+
+ # Allow user patches so they can support RC kernels and whatever else
+ epatch_user
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+
+ cd "${NV_SRC}"
+ if use kernel_FreeBSD; then
+ MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
+ elif use kernel_linux; then
+ MAKEOPTS=-j1
+ linux-mod_src_compile
+ fi
+}
+
+# Install nvidia library:
+# the first parameter is the library to install
+# the second parameter is the provided soversion
+# the third parameter is the target directory if it is not /usr/lib
+donvidia() {
+ # Full path to library minus SOVER
+ MY_LIB="$1"
+
+ # SOVER to use
+ MY_SOVER="$2"
+
+ # Where to install
+ MY_DEST="$3"
+
+ if [[ -z "${MY_DEST}" ]]; then
+ MY_DEST="/usr/$(get_libdir)"
+ action="dolib.so"
+ else
+ exeinto ${MY_DEST}
+ action="doexe"
+ fi
+
+ # Get just the library name
+ libname=$(basename $1)
+
+ # Install the library with the correct SOVER
+ ${action} ${MY_LIB}.${MY_SOVER} || \
+ die "failed to install ${libname}"
+
+ # If SOVER wasn't 1, then we need to create a .1 symlink
+ if [[ "${MY_SOVER}" != "1" ]]; then
+ dosym ${libname}.${MY_SOVER} \
+ ${MY_DEST}/${libname}.1 || \
+ die "failed to create ${libname} symlink"
+ fi
+
+ # Always create the symlink from the raw lib to the .1
+ dosym ${libname}.1 \
+ ${MY_DEST}/${libname} || \
+ die "failed to create ${libname} symlink"
+}
+
+src_install() {
+ if use kernel_linux; then
+ linux-mod_src_install
+
+ # Add the aliases
+ # This file is tweaked with the appropriate video group in
+ # pkg_preinst, see bug #491414
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
+ use uvm && doins "${FILESDIR}"/nvidia-uvm.conf
+
+ # Ensures that our device nodes are created when not using X
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
+ udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
+ elif use kernel_FreeBSD; then
+ if use x86-fbsd; then
+ insinto /boot/modules
+ doins "${S}/src/nvidia.kld"
+ fi
+
+ exeinto /boot/modules
+ doexe "${S}/src/nvidia.ko"
+ fi
+
+ # NVIDIA kernel <-> userspace driver config lib
+ donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER}
+
+ # NVIDIA framebuffer capture library
+ donvidia ${NV_OBJ}/libnvidia-fbc.so ${NV_SOVER}
+
+ # NVIDIA video encode/decode <-> CUDA
+ if use kernel_linux; then
+ donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER}
+ donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER}
+ fi
+
+ if use X; then
+ # Xorg DDX driver
+ insinto /usr/$(get_libdir)/xorg/modules/drivers
+ doins ${NV_X11}/nvidia_drv.so
+
+ # Xorg GLX driver
+ donvidia ${NV_X11}/libglx.so ${NV_SOVER} \
+ /usr/$(get_libdir)/opengl/nvidia/extensions
+
+ # Xorg nvidia.conf
+ if has_version '>=x11-base/xorg-server-1.16'; then
+ insinto /usr/share/X11/xorg.conf.d
+ newins {,50-}nvidia-drm-outputclass.conf
+ fi
+ fi
+
+ # OpenCL ICD for NVIDIA
+ if use kernel_linux; then
+ insinto /etc/OpenCL/vendors
+ doins ${NV_OBJ}/nvidia.icd
+ fi
+
+ # Documentation
+ dohtml ${NV_DOC}/html/*
+ if use kernel_FreeBSD; then
+ dodoc "${NV_DOC}/README"
+ use X && doman "${NV_MAN}/nvidia-xconfig.1"
+ use tools && doman "${NV_MAN}/nvidia-settings.1"
+ else
+ # Docs
+ newdoc "${NV_DOC}/README.txt" README
+ dodoc "${NV_DOC}/NVIDIA_Changelog"
+ doman "${NV_MAN}/nvidia-smi.1.gz"
+ use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
+ use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
+ doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
+ fi
+
+ # Helper Apps
+ exeinto /opt/bin/
+
+ if use X; then
+ doexe ${NV_OBJ}/nvidia-xconfig
+ fi
+
+ if use kernel_linux; then
+ doexe ${NV_OBJ}/nvidia-cuda-mps-control
+ doexe ${NV_OBJ}/nvidia-cuda-mps-server
+ doexe ${NV_OBJ}/nvidia-debugdump
+ doexe ${NV_OBJ}/nvidia-persistenced
+ doexe ${NV_OBJ}/nvidia-smi
+
+ # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
+ doexe ${NV_OBJ}/nvidia-modprobe
+ fowners root:video /opt/bin/nvidia-modprobe
+ fperms 4710 /opt/bin/nvidia-modprobe
+ dosym /{opt,usr}/bin/nvidia-modprobe
+
+ doman nvidia-cuda-mps-control.1.gz
+ doman nvidia-modprobe.1.gz
+ doman nvidia-persistenced.1.gz
+ newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
+ newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
+ newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
+ fi
+
+ if use tools; then
+ doexe ${NV_OBJ}/nvidia-settings
+ use gtk2 && donvidia libnvidia-gtk2.so ${PV}
+ use gtk3 && donvidia libnvidia-gtk3.so ${PV}
+ insinto /usr/share/nvidia/
+ doins nvidia-application-profiles-${PV}-key-documentation
+ insinto /etc/nvidia
+ newins nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
+ fi
+
+ dobin ${NV_OBJ}/nvidia-bug-report.sh
+
+ # Desktop entries for nvidia-settings
+ if use tools; then
+ # There is no icon in the FreeBSD tarball.
+ use kernel_FreeBSD || newicon ${NV_OBJ}/nvidia-settings.png ${PN}-settings.png
+ domenu "${FILESDIR}"/${PN}-settings.desktop
+ exeinto /etc/X11/xinit/xinitrc.d
+ doexe "${FILESDIR}"/95-nvidia-settings
+ fi
+
+ #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
+
+ if has_multilib_profile && use multilib; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis); do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ else
+ src_install-libs
+ fi
+
+ is_final_abi || die "failed to iterate through all ABIs"
+
+ readme.gentoo_create_doc
+}
+
+src_install-libs() {
+ local inslibdir=$(get_libdir)
+ local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
+ local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
+ local libdir=${NV_OBJ}
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
+ libdir=${NV_OBJ}/32
+ fi
+
+ if use X; then
+ NV_GLX_LIBRARIES=(
+ "libEGL.so 1 ${GL_ROOT}"
+ "libEGL_nvidia.so 0 ${GL_ROOT}"
+ "libGL.so ${NV_SOVER} ${GL_ROOT}"
+ "libGLESv1_CM.so ${NV_SOVER} ${GL_ROOT}"
+ "libGLdispatch.so 0 ${GL_ROOT}"
+ "libOpenCL.so 1.0.0 ${CL_ROOT}"
+ "libOpenGL.so 0 ${GL_ROOT}"
+ "libcuda.so ${NV_SOVER}"
+ "libnvcuvid.so ${NV_SOVER}"
+ "libnvidia-compiler.so ${NV_SOVER}"
+ "libnvidia-eglcore.so ${NV_SOVER}"
+ "libnvidia-encode.so ${NV_SOVER}"
+ "libnvidia-fbc.so ${NV_SOVER}"
+ "libnvidia-glcore.so ${NV_SOVER}"
+ "libnvidia-glsi.so ${NV_SOVER}"
+ "libnvidia-ifr.so ${NV_SOVER}"
+ "libnvidia-opencl.so ${NV_SOVER}"
+ "libvdpau.so ${NV_SOVER} ${GL_ROOT}"
+ "libvdpau_nvidia.so ${NV_SOVER}"
+ "libvdpau_trace.so ${NV_SOVER} ${GL_ROOT}"
+ )
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
+ then
+ NV_GLX_LIBRARIES+=( "libnvidia-wfb.so ${NV_SOVER}" )
+ fi
+
+ if use kernel_FreeBSD; then
+ NV_GLX_LIBRARIES+=( "libnvidia-tls.so ${NV_SOVER}" )
+ fi
+
+ if use kernel_linux; then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-ml.so ${NV_SOVER}"
+ "tls/libnvidia-tls.so ${NV_SOVER}"
+ )
+ fi
+
+ for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
+ donvidia ${libdir}/${NV_LIB}
+ done
+
+ # GLES v2 library is special
+ insinto ${GL_ROOT}
+ doexe ${libdir}/libGLESv2.so.${PV}
+ dosym libGLESv2.so.${PV} ${GL_ROOT}/libGLESv2.so.2
+ dosym libGLESv2.so.2 ${GL_ROOT}/libGLESv2.so
+ fi
+}
+
+pkg_preinst() {
+ if use kernel_linux; then
+ linux-mod_pkg_preinst
+
+ local videogroup="$(egetent group video | cut -d ':' -f 3)"
+ if [ -z "${videogroup}" ]; then
+ eerror "Failed to determine the video group gid"
+ die "Failed to determine the video group gid"
+ else
+ sed -i \
+ -e "s:PACKAGE:${PF}:g" \
+ -e "s:VIDEOGID:${videogroup}:" \
+ "${D}"/etc/modprobe.d/nvidia.conf || die
+ fi
+ fi
+
+ # Clean the dynamic libGL stuff's home to ensure
+ # we dont have stale libs floating around
+ if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
+ rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
+ fi
+ # Make sure we nuke the old nvidia-glx's env.d file
+ if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
+ rm -f "${ROOT}"/etc/env.d/09nvidia
+ fi
+}
+
+pkg_postinst() {
+ use kernel_linux && linux-mod_pkg_postinst
+
+ # Switch to the nvidia implementation
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
+ "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
+
+ readme.gentoo_print_elog
+
+ if ! use X; then
+ elog "You have elected to not install the X.org driver. Along with"
+ elog "this the OpenGL libraries and VDPAU libraries were not"
+ elog "installed. Additionally, once the driver is loaded your card"
+ elog "and fan will run at max speed which may not be desirable."
+ elog "Use the 'nvidia-smi' init script to have your card and fan"
+ elog "speed scale appropriately."
+ elog
+ fi
+ if ! use tools; then
+ elog "USE=tools controls whether the nvidia-settings application"
+ elog "is installed. If you would like to use it, enable that"
+ elog "flag and re-emerge this ebuild. Optionally you can install"
+ elog "media-video/nvidia-settings"
+ elog
+ fi
+}
+
+pkg_prerm() {
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
+
+pkg_postrm() {
+ use kernel_linux && linux-mod_pkg_postrm
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-358.16-r99.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-358.16-r99.ebuild
new file mode 100644
index 0000000..f320bf3
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-358.16-r99.ebuild
@@ -0,0 +1,502 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \
+ portability toolchain-funcs unpacker user udev
+
+NV_URI="http://us.download.nvidia.com/XFree86/"
+X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
+X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
+AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="http://www.nvidia.com/"
+SRC_URI="
+ amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
+ amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
+ x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
+ x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
+"
+
+LICENSE="GPL-2 NVIDIA-r2"
+SLOT="0/358"
+KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
+RESTRICT="bindist mirror strip"
+EMULTILIB_PKG="true"
+
+IUSE="acpi multilib kernel_FreeBSD kernel_linux +kms pax_kernel +tools gtk2 gtk3 +X uvm"
+REQUIRED_USE="
+ tools? ( X || ( gtk2 gtk3 ) )
+"
+
+COMMON="
+ app-eselect/eselect-opencl
+ gtk3? ( x11-libs/cairo )
+ X? (
+ >=app-eselect/eselect-opengl-1.0.9
+ )
+"
+DEPEND="
+ ${COMMON}
+ app-arch/xz-utils
+ kernel_linux? ( virtual/linux-sources )
+"
+RDEPEND="
+ ${COMMON}
+ acpi? ( sys-power/acpid )
+ tools? (
+ dev-libs/atk
+ dev-libs/glib:2
+ x11-libs/gdk-pixbuf
+ gtk2? ( >=x11-libs/gtk+-2.4:2 )
+ gtk3? ( x11-libs/gtk+:3 )
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/pango[X]
+ )
+ X? (
+ <x11-base/xorg-server-1.17.99:=
+ >=x11-libs/libvdpau-0.3-r1
+ multilib? (
+ >=x11-libs/libX11-1.6.2[abi_x86_32]
+ >=x11-libs/libXext-1.3.2[abi_x86_32]
+ )
+ )
+"
+
+QA_PREBUILT="opt/* usr/lib*"
+
+S=${WORKDIR}/
+
+pkg_pretend() {
+ if use amd64 && has_multilib_profile && \
+ [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default ABI"
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if use kernel_linux && kernel_is ge 4 4; then
+ ewarn "Gentoo supports kernels which are supported by NVIDIA"
+ ewarn "which are limited to the following kernels:"
+ ewarn "<sys-kernel/gentoo-sources-4.4"
+ ewarn "<sys-kernel/vanilla-sources-4.4"
+ ewarn ""
+ ewarn "You are free to utilize epatch_user to provide whatever"
+ ewarn "support you feel is appropriate, but will not receive"
+ ewarn "support as a result of those changes."
+ ewarn ""
+ ewarn "Do not file a bug report about this."
+ ewarn ""
+ fi
+
+ # Since Nvidia ships many different series of drivers, we need to give the user
+ # some kind of guidance as to what version they should install. This tries
+ # to point the user in the right direction but can't be perfect. check
+ # nvidia-driver.eclass
+ nvidia-driver-check-warning
+
+ # Kernel features/options to check for
+ CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
+ use x86 && CONFIG_CHECK+=" ~HIGHMEM"
+
+ # Now do the above checks
+ use kernel_linux && check_extra_config
+}
+
+pkg_setup() {
+ # try to turn off distcc and ccache for people that have a problem with it
+ export DISTCC_DISABLE=1
+ export CCACHE_DISABLE=1
+
+ if use kernel_linux; then
+ MODULE_NAMES="nvidia(video:${S}/kernel)"
+ use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
+ use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel)"
+
+ # This needs to run after MODULE_NAMES (so that the eclass checks
+ # whether the kernel supports loadable modules) but before BUILD_PARAMS
+ # is set (so that KV_DIR is populated).
+ linux-mod_pkg_setup
+
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
+ SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
+
+ # linux-mod_src_compile calls set_arch_to_kernel, which
+ # sets the ARCH to x86 but NVIDIA's wrapping Makefile
+ # expects x86_64 or i386 and then converts it to x86
+ # later on in the build process
+ BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
+ fi
+
+ # set variables to where files are in the package structure
+ if use kernel_FreeBSD; then
+ use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
+ use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
+ NV_DOC="${S}/doc"
+ NV_OBJ="${S}/obj"
+ NV_SRC="${S}/src"
+ NV_MAN="${S}/x11/man"
+ NV_X11="${S}/obj"
+ NV_SOVER=1
+ elif use kernel_linux; then
+ NV_DOC="${S}"
+ NV_OBJ="${S}"
+ NV_SRC="${S}/kernel"
+ NV_MAN="${S}"
+ NV_X11="${S}"
+ NV_SOVER=${PV}
+ else
+ die "Could not determine proper NVIDIA package"
+ fi
+}
+
+src_prepare() {
+ # Please add a brief description for every added patch
+
+ if use kernel_linux; then
+ if kernel_is lt 2 6 9; then
+ eerror "You must build this against 2.6.9 or higher kernels."
+ fi
+
+ # If greater than 2.6.5 use M= instead of SUBDIR=
+# convert_to_m "${NV_SRC}"/Makefile.kbuild
+ fi
+
+ if use pax_kernel; then
+ ewarn "Using PAX patches is not supported. You will be asked to"
+ ewarn "use a standard kernel should you have issues. Should you"
+ ewarn "need support with these patches, contact the PaX team."
+ epatch "${FILESDIR}"/${PN}-355.06-pax.patch
+ epatch "${FILESDIR}"/${PN}-358.16-randstruct.patch
+ fi
+
+ # Allow user patches so they can support RC kernels and whatever else
+ epatch_user
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+
+ cd "${NV_SRC}"
+ if use kernel_FreeBSD; then
+ MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
+ elif use kernel_linux; then
+ MAKEOPTS=-j1
+ linux-mod_src_compile
+ fi
+}
+
+# Install nvidia library:
+# the first parameter is the library to install
+# the second parameter is the provided soversion
+# the third parameter is the target directory if it is not /usr/lib
+donvidia() {
+ # Full path to library minus SOVER
+ MY_LIB="$1"
+
+ # SOVER to use
+ MY_SOVER="$2"
+
+ # Where to install
+ MY_DEST="$3"
+
+ if [[ -z "${MY_DEST}" ]]; then
+ MY_DEST="/usr/$(get_libdir)"
+ action="dolib.so"
+ else
+ exeinto ${MY_DEST}
+ action="doexe"
+ fi
+
+ # Get just the library name
+ libname=$(basename $1)
+
+ # Install the library with the correct SOVER
+ ${action} ${MY_LIB}.${MY_SOVER} || \
+ die "failed to install ${libname}"
+
+ # If SOVER wasn't 1, then we need to create a .1 symlink
+ if [[ "${MY_SOVER}" != "1" ]]; then
+ dosym ${libname}.${MY_SOVER} \
+ ${MY_DEST}/${libname}.1 || \
+ die "failed to create ${libname} symlink"
+ fi
+
+ # Always create the symlink from the raw lib to the .1
+ dosym ${libname}.1 \
+ ${MY_DEST}/${libname} || \
+ die "failed to create ${libname} symlink"
+}
+
+src_install() {
+ if use kernel_linux; then
+ linux-mod_src_install
+
+ # Add the aliases
+ # This file is tweaked with the appropriate video group in
+ # pkg_preinst, see bug #491414
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
+ doins "${FILESDIR}"/nvidia-rmmod.conf
+
+ # Ensures that our device nodes are created when not using X
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
+ udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
+ elif use kernel_FreeBSD; then
+ if use x86-fbsd; then
+ insinto /boot/modules
+ doins "${S}/src/nvidia.kld"
+ fi
+
+ exeinto /boot/modules
+ doexe "${S}/src/nvidia.ko"
+ fi
+
+ # NVIDIA kernel <-> userspace driver config lib
+ donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER}
+
+ # NVIDIA framebuffer capture library
+ donvidia ${NV_OBJ}/libnvidia-fbc.so ${NV_SOVER}
+
+ # NVIDIA video encode/decode <-> CUDA
+ if use kernel_linux; then
+ donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER}
+ donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER}
+ fi
+
+ if use X; then
+ # Xorg DDX driver
+ insinto /usr/$(get_libdir)/xorg/modules/drivers
+ doins ${NV_X11}/nvidia_drv.so
+
+ # Xorg GLX driver
+ donvidia ${NV_X11}/libglx.so ${NV_SOVER} \
+ /usr/$(get_libdir)/opengl/nvidia/extensions
+
+ # Xorg nvidia.conf
+ if has_version '>=x11-base/xorg-server-1.16'; then
+ insinto /usr/share/X11/xorg.conf.d
+ newins {,50-}nvidia-drm-outputclass.conf
+ fi
+ fi
+
+ # OpenCL ICD for NVIDIA
+ if use kernel_linux; then
+ insinto /etc/OpenCL/vendors
+ doins ${NV_OBJ}/nvidia.icd
+ fi
+
+ # Documentation
+ dohtml ${NV_DOC}/html/*
+ if use kernel_FreeBSD; then
+ dodoc "${NV_DOC}/README"
+ use X && doman "${NV_MAN}/nvidia-xconfig.1"
+ use tools && doman "${NV_MAN}/nvidia-settings.1"
+ else
+ # Docs
+ newdoc "${NV_DOC}/README.txt" README
+ dodoc "${NV_DOC}/NVIDIA_Changelog"
+ doman "${NV_MAN}/nvidia-smi.1.gz"
+ use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
+ use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
+ doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
+ fi
+
+ # Helper Apps
+ exeinto /opt/bin/
+
+ if use X; then
+ doexe ${NV_OBJ}/nvidia-xconfig
+ fi
+
+ if use kernel_linux; then
+ doexe ${NV_OBJ}/nvidia-cuda-mps-control
+ doexe ${NV_OBJ}/nvidia-cuda-mps-server
+ doexe ${NV_OBJ}/nvidia-debugdump
+ doexe ${NV_OBJ}/nvidia-persistenced
+ doexe ${NV_OBJ}/nvidia-smi
+
+ # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
+ doexe ${NV_OBJ}/nvidia-modprobe
+ fowners root:video /opt/bin/nvidia-modprobe
+ fperms 4710 /opt/bin/nvidia-modprobe
+ dosym /{opt,usr}/bin/nvidia-modprobe
+
+ doman nvidia-cuda-mps-control.1.gz
+ doman nvidia-modprobe.1.gz
+ doman nvidia-persistenced.1.gz
+ newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
+ newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
+ newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
+ fi
+
+ if use tools; then
+ doexe ${NV_OBJ}/nvidia-settings
+ use gtk2 && donvidia libnvidia-gtk2.so ${PV}
+ use gtk3 && donvidia libnvidia-gtk3.so ${PV}
+ insinto /usr/share/nvidia/
+ doins nvidia-application-profiles-${PV}-key-documentation
+ insinto /etc/nvidia
+ newins nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
+ fi
+
+ dobin ${NV_OBJ}/nvidia-bug-report.sh
+
+ # Desktop entries for nvidia-settings
+ if use tools; then
+ # There is no icon in the FreeBSD tarball.
+ use kernel_FreeBSD || newicon ${NV_OBJ}/nvidia-settings.png ${PN}-settings.png
+ domenu "${FILESDIR}"/${PN}-settings.desktop
+ exeinto /etc/X11/xinit/xinitrc.d
+ doexe "${FILESDIR}"/95-nvidia-settings
+ fi
+
+ #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
+
+ if has_multilib_profile && use multilib; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis); do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ else
+ src_install-libs
+ fi
+
+ is_final_abi || die "failed to iterate through all ABIs"
+
+ readme.gentoo_create_doc
+}
+
+src_install-libs() {
+ local inslibdir=$(get_libdir)
+ local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
+ local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
+ local libdir=${NV_OBJ}
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
+ libdir=${NV_OBJ}/32
+ fi
+
+ if use X; then
+ NV_GLX_LIBRARIES=(
+ "libEGL.so 1 ${GL_ROOT}"
+ "libEGL_nvidia.so 0 ${GL_ROOT}"
+ "libGL.so ${NV_SOVER} ${GL_ROOT}"
+ "libGLESv1_CM.so ${NV_SOVER} ${GL_ROOT}"
+ "libGLdispatch.so 0 ${GL_ROOT}"
+ "libOpenCL.so 1.0.0 ${CL_ROOT}"
+ "libOpenGL.so 0 ${GL_ROOT}"
+ "libcuda.so ${NV_SOVER}"
+ "libnvcuvid.so ${NV_SOVER}"
+ "libnvidia-compiler.so ${NV_SOVER}"
+ "libnvidia-eglcore.so ${NV_SOVER}"
+ "libnvidia-encode.so ${NV_SOVER}"
+ "libnvidia-fbc.so ${NV_SOVER}"
+ "libnvidia-glcore.so ${NV_SOVER}"
+ "libnvidia-glsi.so ${NV_SOVER}"
+ "libnvidia-ifr.so ${NV_SOVER}"
+ "libnvidia-opencl.so ${NV_SOVER}"
+ "libvdpau.so ${NV_SOVER} ${GL_ROOT}"
+ "libvdpau_nvidia.so ${NV_SOVER}"
+ "libvdpau_trace.so ${NV_SOVER} ${GL_ROOT}"
+ )
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
+ then
+ NV_GLX_LIBRARIES+=( "libnvidia-wfb.so ${NV_SOVER}" )
+ fi
+
+ if use kernel_FreeBSD; then
+ NV_GLX_LIBRARIES+=( "libnvidia-tls.so ${NV_SOVER}" )
+ fi
+
+ if use kernel_linux; then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-ml.so ${NV_SOVER}"
+ "tls/libnvidia-tls.so ${NV_SOVER}"
+ )
+ fi
+
+ for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
+ donvidia ${libdir}/${NV_LIB}
+ done
+
+ # GLES v2 library is special
+ insinto ${GL_ROOT}
+ doexe ${libdir}/libGLESv2.so.${PV}
+ dosym libGLESv2.so.${PV} ${GL_ROOT}/libGLESv2.so.2
+ dosym libGLESv2.so.2 ${GL_ROOT}/libGLESv2.so
+ fi
+}
+
+pkg_preinst() {
+ if use kernel_linux; then
+ linux-mod_pkg_preinst
+
+ local videogroup="$(egetent group video | cut -d ':' -f 3)"
+ if [ -z "${videogroup}" ]; then
+ eerror "Failed to determine the video group gid"
+ die "Failed to determine the video group gid"
+ else
+ sed -i \
+ -e "s:PACKAGE:${PF}:g" \
+ -e "s:VIDEOGID:${videogroup}:" \
+ "${D}"/etc/modprobe.d/nvidia.conf || die
+ fi
+ fi
+
+ # Clean the dynamic libGL stuff's home to ensure
+ # we dont have stale libs floating around
+ if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
+ rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
+ fi
+ # Make sure we nuke the old nvidia-glx's env.d file
+ if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
+ rm -f "${ROOT}"/etc/env.d/09nvidia
+ fi
+}
+
+pkg_postinst() {
+ use kernel_linux && linux-mod_pkg_postinst
+
+ # Switch to the nvidia implementation
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
+ "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
+
+ readme.gentoo_print_elog
+
+ if ! use X; then
+ elog "You have elected to not install the X.org driver. Along with"
+ elog "this the OpenGL libraries and VDPAU libraries were not"
+ elog "installed. Additionally, once the driver is loaded your card"
+ elog "and fan will run at max speed which may not be desirable."
+ elog "Use the 'nvidia-smi' init script to have your card and fan"
+ elog "speed scale appropriately."
+ elog
+ fi
+ if ! use tools; then
+ elog "USE=tools controls whether the nvidia-settings application"
+ elog "is installed. If you would like to use it, enable that"
+ elog "flag and re-emerge this ebuild. Optionally you can install"
+ elog "media-video/nvidia-settings"
+ elog
+ fi
+}
+
+pkg_prerm() {
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
+
+pkg_postrm() {
+ use kernel_linux && linux-mod_pkg_postrm
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r99.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r99.ebuild
new file mode 100644
index 0000000..2c5f6f9
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-361.18-r99.ebuild
@@ -0,0 +1,491 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \
+ portability toolchain-funcs unpacker user udev
+
+NV_URI="http://us.download.nvidia.com/XFree86/"
+X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
+X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
+AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="http://www.nvidia.com/"
+SRC_URI="
+ amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
+ amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
+ x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
+ x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
+"
+
+LICENSE="GPL-2 NVIDIA-r2"
+SLOT="0/${PV%.*}"
+KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
+RESTRICT="bindist mirror strip"
+EMULTILIB_PKG="true"
+
+IUSE="acpi +driver multilib kernel_FreeBSD +kms pax_kernel +tools gtk2 gtk3 +X uvm"
+REQUIRED_USE="
+ tools? ( X || ( gtk2 gtk3 ) )
+"
+
+COMMON="
+ app-eselect/eselect-opencl
+ gtk3? ( x11-libs/cairo )
+ X? (
+ >=app-eselect/eselect-opengl-1.0.9
+ app-misc/pax-utils
+ )
+"
+DEPEND="
+ ${COMMON}
+ app-arch/xz-utils
+ kernel_linux? ( virtual/linux-sources )
+"
+RDEPEND="
+ ${COMMON}
+ acpi? ( sys-power/acpid )
+ tools? (
+ dev-libs/atk
+ dev-libs/glib:2
+ x11-libs/gdk-pixbuf
+ gtk2? ( >=x11-libs/gtk+-2.4:2 )
+ gtk3? ( x11-libs/gtk+:3 )
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/pango[X]
+ )
+ X? (
+ x11-base/xorg-server
+ >=x11-libs/libvdpau-0.3-r1
+ multilib? (
+ >=x11-libs/libX11-1.6.2[abi_x86_32]
+ >=x11-libs/libXext-1.3.2[abi_x86_32]
+ )
+ )
+"
+
+QA_PREBUILT="opt/* usr/lib*"
+
+S=${WORKDIR}/
+
+pkg_pretend() {
+ if use amd64 && has_multilib_profile && \
+ [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default ABI"
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if use kernel_linux && kernel_is ge 4 5; then
+ ewarn "Gentoo supports kernels which are supported by NVIDIA"
+ ewarn "which are limited to the following kernels:"
+ ewarn "<sys-kernel/gentoo-sources-4.5"
+ ewarn "<sys-kernel/vanilla-sources-4.5"
+ ewarn ""
+ ewarn "You are free to utilize epatch_user to provide whatever"
+ ewarn "support you feel is appropriate, but will not receive"
+ ewarn "support as a result of those changes."
+ ewarn ""
+ ewarn "Do not file a bug report about this."
+ ewarn ""
+ fi
+
+ # Since Nvidia ships many different series of drivers, we need to give the user
+ # some kind of guidance as to what version they should install. This tries
+ # to point the user in the right direction but can't be perfect. check
+ # nvidia-driver.eclass
+ nvidia-driver-check-warning
+
+ # Kernel features/options to check for
+ CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
+ use x86 && CONFIG_CHECK+=" ~HIGHMEM"
+
+ # Now do the above checks
+ use kernel_linux && check_extra_config
+}
+
+pkg_setup() {
+ # try to turn off distcc and ccache for people that have a problem with it
+ export DISTCC_DISABLE=1
+ export CCACHE_DISABLE=1
+
+ if use driver && use kernel_linux; then
+ MODULE_NAMES="nvidia(video:${S}/kernel)"
+ use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
+ use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel)"
+
+ # This needs to run after MODULE_NAMES (so that the eclass checks
+ # whether the kernel supports loadable modules) but before BUILD_PARAMS
+ # is set (so that KV_DIR is populated).
+ linux-mod_pkg_setup
+
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
+ SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
+
+ # linux-mod_src_compile calls set_arch_to_kernel, which
+ # sets the ARCH to x86 but NVIDIA's wrapping Makefile
+ # expects x86_64 or i386 and then converts it to x86
+ # later on in the build process
+ BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
+ fi
+
+ if use kernel_linux && kernel_is lt 2 6 9; then
+ eerror "You must build this against 2.6.9 or higher kernels."
+ fi
+
+ # set variables to where files are in the package structure
+ if use kernel_FreeBSD; then
+ use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
+ use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
+ NV_DOC="${S}/doc"
+ NV_OBJ="${S}/obj"
+ NV_SRC="${S}/src"
+ NV_MAN="${S}/x11/man"
+ NV_X11="${S}/obj"
+ NV_SOVER=1
+ elif use kernel_linux; then
+ NV_DOC="${S}"
+ NV_OBJ="${S}"
+ NV_SRC="${S}/kernel"
+ NV_MAN="${S}"
+ NV_X11="${S}"
+ NV_SOVER=${PV}
+ else
+ die "Could not determine proper NVIDIA package"
+ fi
+}
+
+src_prepare() {
+ if use pax_kernel; then
+ ewarn "Using PAX patches is not supported. You will be asked to"
+ ewarn "use a standard kernel should you have issues. Should you"
+ ewarn "need support with these patches, contact the PaX team."
+ epatch "${FILESDIR}"/${P}-pax.patch
+ fi
+
+ # Allow user patches so they can support RC kernels and whatever else
+ epatch_user
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+
+ cd "${NV_SRC}"
+ if use kernel_FreeBSD; then
+ MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
+ elif use driver && use kernel_linux; then
+ MAKEOPTS=-j1
+ linux-mod_src_compile
+ fi
+}
+
+# Install nvidia library:
+# the first parameter is the library to install
+# the second parameter is the provided soversion
+# the third parameter is the target directory if it is not /usr/lib
+donvidia() {
+ # Full path to library
+ nv_LIB="${1}"
+
+ # SOVER to use
+ nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
+
+ # Where to install
+ nv_DEST="${2}"
+
+ # Get just the library name
+ nv_LIBNAME=$(basename "${nv_LIB}")
+
+ if [[ "${nv_DEST}" ]]; then
+ exeinto ${nv_DEST}
+ action="doexe"
+ else
+ nv_DEST="/usr/$(get_libdir)"
+ action="dolib.so"
+ fi
+
+ # Install the library
+ ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
+
+ # If the library has a SONAME and SONAME does not match the library name,
+ # then we need to create a symlink
+ if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
+ dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
+ || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
+ fi
+
+ dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
+ || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
+}
+
+src_install() {
+ if use driver && use kernel_linux; then
+ linux-mod_src_install
+
+ # Add the aliases
+ # This file is tweaked with the appropriate video group in
+ # pkg_preinst, see bug #491414
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
+ doins "${FILESDIR}"/nvidia-rmmod.conf
+
+ # Ensures that our device nodes are created when not using X
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
+ udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
+ elif use kernel_FreeBSD; then
+ if use x86-fbsd; then
+ insinto /boot/modules
+ doins "${S}/src/nvidia.kld"
+ fi
+
+ exeinto /boot/modules
+ doexe "${S}/src/nvidia.ko"
+ fi
+
+ # NVIDIA kernel <-> userspace driver config lib
+ donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
+
+ # NVIDIA framebuffer capture library
+ donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
+
+ # NVIDIA video encode/decode <-> CUDA
+ if use kernel_linux; then
+ donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
+ donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
+ fi
+
+ if use X; then
+ # Xorg DDX driver
+ insinto /usr/$(get_libdir)/xorg/modules/drivers
+ doins ${NV_X11}/nvidia_drv.so
+
+ # Xorg GLX driver
+ donvidia ${NV_X11}/libglx.so.${NV_SOVER} \
+ /usr/$(get_libdir)/opengl/nvidia/extensions
+
+ # Xorg nvidia.conf
+ if has_version '>=x11-base/xorg-server-1.16'; then
+ insinto /usr/share/X11/xorg.conf.d
+ newins {,50-}nvidia-drm-outputclass.conf
+ fi
+ fi
+
+ # OpenCL ICD for NVIDIA
+ if use kernel_linux; then
+ insinto /etc/OpenCL/vendors
+ doins ${NV_OBJ}/nvidia.icd
+ fi
+
+ # Documentation
+ dohtml ${NV_DOC}/html/*
+ if use kernel_FreeBSD; then
+ dodoc "${NV_DOC}/README"
+ use X && doman "${NV_MAN}/nvidia-xconfig.1"
+ use tools && doman "${NV_MAN}/nvidia-settings.1"
+ else
+ # Docs
+ newdoc "${NV_DOC}/README.txt" README
+ dodoc "${NV_DOC}/NVIDIA_Changelog"
+ doman "${NV_MAN}/nvidia-smi.1.gz"
+ use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
+ use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
+ doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
+ fi
+
+ # Helper Apps
+ exeinto /opt/bin/
+
+ if use X; then
+ doexe ${NV_OBJ}/nvidia-xconfig
+ fi
+
+ if use kernel_linux; then
+ doexe ${NV_OBJ}/nvidia-cuda-mps-control
+ doexe ${NV_OBJ}/nvidia-cuda-mps-server
+ doexe ${NV_OBJ}/nvidia-debugdump
+ doexe ${NV_OBJ}/nvidia-persistenced
+ doexe ${NV_OBJ}/nvidia-smi
+
+ # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
+ doexe ${NV_OBJ}/nvidia-modprobe
+ fowners root:video /opt/bin/nvidia-modprobe
+ fperms 4710 /opt/bin/nvidia-modprobe
+ dosym /{opt,usr}/bin/nvidia-modprobe
+
+ doman nvidia-cuda-mps-control.1.gz
+ doman nvidia-modprobe.1.gz
+ doman nvidia-persistenced.1.gz
+ newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
+ newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
+ newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
+ fi
+
+ if use tools; then
+ doexe ${NV_OBJ}/nvidia-settings
+ use gtk2 && donvidia libnvidia-gtk2.so.${PV}
+ use gtk3 && donvidia libnvidia-gtk3.so.${PV}
+ insinto /usr/share/nvidia/
+ doins nvidia-application-profiles-${PV}-key-documentation
+ insinto /etc/nvidia
+ newins nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
+ fi
+
+ dobin ${NV_OBJ}/nvidia-bug-report.sh
+
+ # Desktop entries for nvidia-settings
+ if use tools; then
+ # There is no icon in the FreeBSD tarball.
+ use kernel_FreeBSD || newicon ${NV_OBJ}/nvidia-settings.png ${PN}-settings.png
+ domenu "${FILESDIR}"/${PN}-settings.desktop
+ exeinto /etc/X11/xinit/xinitrc.d
+ doexe "${FILESDIR}"/95-nvidia-settings
+ fi
+
+ #doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
+
+ if has_multilib_profile && use multilib; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis); do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ else
+ src_install-libs
+ fi
+
+ is_final_abi || die "failed to iterate through all ABIs"
+
+ readme.gentoo_create_doc
+}
+
+src_install-libs() {
+ local inslibdir=$(get_libdir)
+ local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
+ local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
+ local libdir=${NV_OBJ}
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
+ libdir=${NV_OBJ}/32
+ fi
+
+ if use X; then
+ NV_GLX_LIBRARIES=(
+ "libEGL.so.1 ${GL_ROOT}"
+ "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGL.so.1 ${GL_ROOT}"
+ "libGLESv1_CM.so.1 ${GL_ROOT}"
+ "libGLESv2.so.2 ${GL_ROOT}"
+ "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGLX.so.0 ${GL_ROOT}"
+ "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGLdispatch.so.0 ${GL_ROOT}"
+ "libOpenCL.so.1.0.0 ${CL_ROOT}"
+ "libOpenGL.so.0 ${GL_ROOT}"
+ "libcuda.so.${NV_SOVER}"
+ "libnvcuvid.so.${NV_SOVER}"
+ "libnvidia-compiler.so.${NV_SOVER}"
+ "libnvidia-eglcore.so.${NV_SOVER}"
+ "libnvidia-encode.so.${NV_SOVER}"
+ "libnvidia-fatbinaryloader.so.${NV_SOVER}"
+ "libnvidia-fbc.so.${NV_SOVER}"
+ "libnvidia-glcore.so.${NV_SOVER}"
+ "libnvidia-glsi.so.${NV_SOVER}"
+ "libnvidia-ifr.so.${NV_SOVER}"
+ "libnvidia-opencl.so.${NV_SOVER}"
+ "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
+ "libvdpau_nvidia.so.${NV_SOVER}"
+ )
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
+ then
+ NV_GLX_LIBRARIES+=( "libnvidia-wfb.so.${NV_SOVER}" )
+ fi
+
+ if use kernel_FreeBSD; then
+ NV_GLX_LIBRARIES+=( "libnvidia-tls.so.${NV_SOVER}" )
+ fi
+
+ if use kernel_linux; then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-ml.so.${NV_SOVER}"
+ "tls/libnvidia-tls.so.${NV_SOVER}"
+ )
+ fi
+
+ for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
+ donvidia ${libdir}/${NV_LIB}
+ done
+ fi
+}
+
+pkg_preinst() {
+ if use driver && use kernel_linux; then
+ linux-mod_pkg_preinst
+
+ local videogroup="$(egetent group video | cut -d ':' -f 3)"
+ if [ -z "${videogroup}" ]; then
+ eerror "Failed to determine the video group gid"
+ die "Failed to determine the video group gid"
+ else
+ sed -i \
+ -e "s:PACKAGE:${PF}:g" \
+ -e "s:VIDEOGID:${videogroup}:" \
+ "${D}"/etc/modprobe.d/nvidia.conf || die
+ fi
+ fi
+
+ # Clean the dynamic libGL stuff's home to ensure
+ # we dont have stale libs floating around
+ if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
+ rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
+ fi
+ # Make sure we nuke the old nvidia-glx's env.d file
+ if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
+ rm -f "${ROOT}"/etc/env.d/09nvidia
+ fi
+}
+
+pkg_postinst() {
+ use driver && use kernel_linux && linux-mod_pkg_postinst
+
+ # Switch to the nvidia implementation
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
+ "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
+
+ readme.gentoo_print_elog
+
+ if ! use X; then
+ elog "You have elected to not install the X.org driver. Along with"
+ elog "this the OpenGL libraries and VDPAU libraries were not"
+ elog "installed. Additionally, once the driver is loaded your card"
+ elog "and fan will run at max speed which may not be desirable."
+ elog "Use the 'nvidia-smi' init script to have your card and fan"
+ elog "speed scale appropriately."
+ elog
+ fi
+ if ! use tools; then
+ elog "USE=tools controls whether the nvidia-settings application"
+ elog "is installed. If you would like to use it, enable that"
+ elog "flag and re-emerge this ebuild. Optionally you can install"
+ elog "media-video/nvidia-settings"
+ elog
+ fi
+}
+
+pkg_prerm() {
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
+
+pkg_postrm() {
+ use driver && use kernel_linux && linux-mod_pkg_postrm
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
diff --git a/x11-drivers/xf86-video-nouveau/Manifest b/x11-drivers/xf86-video-nouveau/Manifest
new file mode 100644
index 0000000..7d05196
--- /dev/null
+++ b/x11-drivers/xf86-video-nouveau/Manifest
@@ -0,0 +1,3 @@
+DIST xf86-video-nouveau-1.0.12.tar.bz2 599816 SHA256 0ea057ad7fc31caba2d4e46c7e418fe2b3c762b04fb8d382f53383397fd8391e SHA512 dd3be4b89d4b39f02b7cbf058be90e6777adc61a580c0987e737056ff85ed2685e7d6a7848b2c7ab8957810e057d7693c5dd2c425f88609670e02ea8368d77e9 WHIRLPOOL b2d4b7376a747ae1b44dde217a26cedaf4648c7b127e811a8230e39d73040b1ab8f1383f77cb69d9b576d21f8287a5ffa9ebc136c3ea6ada7c7acbb025a13170
+EBUILD xf86-video-nouveau-1.0.12.ebuild 571 SHA256 6a6067243dd1dd92c3438e0037771e87cb5e260c4d8bf4c3c1f8305c39df3892 SHA512 940b4694558c6cd41361b4be9652304740800c477d6f1a9fb20ce362f2abaa3702bdd3fb545765108ed0fe8796c4ff554da8224d294ff2a2199f0127dcdb872e WHIRLPOOL a199bc48c8ee328c686c44bb2b0419055a22edb3d4d23ce4374b21435b3d2b242a25360b867b8a98f8ed4c6c7851fa39b79c3007a7ef6a5363b952364d9f2c2a
+MISC metadata.xml 234 SHA256 c576bf25080db3484d07d654f7154894c03e15ba75c1e0a2461e4b3cee64ea3e SHA512 68aca8ec7b1603cc347d814cacf1415dd0eb3211b28e3325a8218c27a47ebe0e8dcb1d336db6054005da5fd9a85c4c3a7b67fababdb2f0a311e4b6b9e82caec7 WHIRLPOOL a72d888c968b4f22f8b37fe083b70ec18bce0942543fe6d1644ed27080ec882122972c78271689f2096ce6615c9a21ee3e4758da8288be6813da0b1efc07d335
diff --git a/x11-drivers/xf86-video-nouveau/metadata.xml b/x11-drivers/xf86-video-nouveau/metadata.xml
new file mode 100644
index 0000000..b19c4dc
--- /dev/null
+++ b/x11-drivers/xf86-video-nouveau/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>x11</herd>
+<use>
+ <flag name="glamor">Enable Glamor OpenGL 2D acceleration</flag>
+</use>
+</pkgmetadata>
diff --git a/x11-drivers/xf86-video-nouveau/xf86-video-nouveau-1.0.12.ebuild b/x11-drivers/xf86-video-nouveau/xf86-video-nouveau-1.0.12.ebuild
new file mode 100644
index 0000000..9c1420c
--- /dev/null
+++ b/x11-drivers/xf86-video-nouveau/xf86-video-nouveau-1.0.12.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+XORG_DRI="always"
+XORG_EAUTORECONF=yes
+inherit xorg-2
+
+if [[ ${PV} == 9999* ]]; then
+ EGIT_REPO_URI="git://anongit.freedesktop.org/git/nouveau/${PN}"
+ SRC_URI=""
+fi
+
+DESCRIPTION="Accelerated Open Source driver for nVidia cards"
+HOMEPAGE="http://nouveau.freedesktop.org/"
+
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+RDEPEND=">=x11-libs/libdrm-2.4.34[video_cards_nouveau]
+ x11-base/xorg-server"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ xorg-2_src_configure
+}
diff --git a/x11-libs/libva-vdpau-driver/Manifest b/x11-libs/libva-vdpau-driver/Manifest
new file mode 100644
index 0000000..18bec3d
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/Manifest
@@ -0,0 +1,8 @@
+AUX libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch 892 SHA256 1ae32b8e5cca1717be4a63f09e8c6bd84a3e9b712b933816cdb32bb315dbda98 SHA512 f60e84f88eca17e762e3d5a53404d0215bca27051c02ff3e4441ad2c2897c0c04297b8e7b4693c37404bde95d7b5d7a6392b4c17ab1ece5f1bd78e6af376b301 WHIRLPOOL 801511b1d4d91ffc50f03c1ed53b5469db495fe62b88ea987857e2c109b53eb441aeabbd1043c0f265ff0bf020da090ff978239d3b8d4d2e89e5e2fff37ca591
+AUX libva-vdpau-driver-0.7.4-glext-missing-definition.patch 659 SHA256 031f1a6b43c20fc3ac2f9da841eff02f6950569cb34f0b4be9fc93642d2dd927 SHA512 bb86ef063eb695c77bbe0fd0c273f1c2a479d1803b8381ffaeac5917de8a7d6e11cef33569d75fbbc1d16e9b64913e8f4a60fbb1b80afc5e381033bf34a192de WHIRLPOOL 2a28f72863c6fa0b36f99d398dead39051d895dfdbf3929809d3f5185a121569da96148c2c49a7ccd17cd3ded058f71de0be18fd9ade6844d0989c0d02be6ca5
+AUX libva-vdpau-driver-0.7.4-include-systime.patch 289 SHA256 6154b14bcf7c0ebb9bc3f464557c025c5ff5beeb1bcdcee9c01d36753a0ea6ce SHA512 c6a5ddc8a25a58e8e969ccbd0ac64ebd04f14b65199468658c7a68f13d6a72cd674a206ca821dd5ea36f6485c9f71fe0d34e1806607cb8193570dc953059e56f WHIRLPOOL 11452ea41bb6715313720fea5a3acbaf4e3ac0acb2202962699c2a961f2479f6bceb2e48b5c17b6ef474df05e05a8c5042bfbb560583eab58fdb56fcd233a423
+AUX libva-vdpau-driver-0.7.4-libvdpau-0.8.patch 442 SHA256 74b9ccd36e7fb90655e0855cf62111fd555390d1a396983af5687b9e8af64cd8 SHA512 969fb8011408acb2bc78a52672cb5a227ae876a2beb5cf209ae558031d71cf255849d5aeb301479f420de97a69b0055990d4ecdd3e0c684f678845b08e6b6632 WHIRLPOOL 22ee9c6a5dbc9f62f28d6602ceaf9729753d45eb1b097005df1ab9cf4d4c06ea497dde8a6abeead13707a2c0412dc510a927bc44240771ff08adc82de74f96c1
+AUX libva-vdpau-driver-0.7.4-nouveau.patch 189 SHA256 75897391fdcec4cc28f176ed62184fe0042c4abb8f3c80d19d975050ffaa6072 SHA512 0eb5b3a1e6b077ad0ba350309cd64ab54fa8499c1c27d2789ee3bb433c59adbed3497e79e7870af38d82b91525376bf8116242570b9fdf4f1836ab8c76122330 WHIRLPOOL e028f2f2e5d1023fd1884776a08d67fcabe3d79cfcd3fccfa1182a2012b6f29a81a7b1328707199734443c01cbf9c800bcf38e21affa3ba83a3a1c2dc531b111
+DIST libva-vdpau-driver-0.7.4.tar.bz2 316729 SHA256 155c1982f0ac3f5435ba20b221bcaa11be212c37db548cd1f2a030ffa17e9bb9 SHA512 89f98dc1d7d590fb68f440dd1e37e025d64a621324e013e85dd1367681c07b09132fd2089539fc5b48934624648887a8a97539b4f07ddf9f56a8a456ad030094 WHIRLPOOL b6ba281a482dc944acff67d83d26d5a5ac7f15ea1de05c921383bdf0f6dae769d0389e6d15b607e01a8d4e18d3254f66391bbd497aa4e0eed2adbab54a13bce1
+EBUILD libva-vdpau-driver-0.7.4-r99.ebuild 1215 SHA256 a9b4e61e792809390e9d19d670d80096ecc531d504163c30da03fc8068278076 SHA512 f94f165a420f090a70d47973d71c2a62df542422cfde8185cf094b930cfc1d3d32fe3ab18a2a20beb23acff9861fccaf15260e346acb175c423f6b7322659efd WHIRLPOOL d45412d73a100f60f9bd6cf25154c32da42c9a6b4c66700e3b475cc3a5641af700462ea4c212fc824757cb38b52a2392a4fc61a647c3f43692ad0d2bcba56cbc
+MISC metadata.xml 260 SHA256 b988a48d8a4e40a98f84e7a463852923b7f2103584e3ca7a46a9212cb621125d SHA512 438a7ea3bc4a9abfa5da583ab08c3a9c195b384fdb6d302996971b0249826cf5edd290640e8d210081178bc48a9df796c9a7d3279599f437eab6e9ccaa32251d WHIRLPOOL e42bf3eb50d3c67373a648d1de56c66c61d6f1ab7762993bdce2adb86254a8bdf219bdad0a849468102d6f3bf6d520bb007e7c28193c52dc331d97eebf42fec6
diff --git a/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch
new file mode 100644
index 0000000..74caee3
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch
@@ -0,0 +1,29 @@
+>From fda3706eb74ba5ad874853969f3df3e372739c8d Mon Sep 17 00:00:00 2001
+From: "Xiang, Haihao" <haihao.xiang@intel.com>
+Date: Fri, 21 Jun 2013 12:55:30 +0800
+Subject: [PATCH] VAEncH264VUIBufferType and VAEncH264SEIBufferType are
+ dropped from VA API
+
+The driver doesn't use them indeed
+
+Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
+---
+ src/vdpau_dump.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/src/vdpau_dump.c b/src/vdpau_dump.c
+index 899888b..610e7cd 100644
+--- a/src/vdpau_dump.c
++++ b/src/vdpau_dump.c
+@@ -59,8 +59,6 @@ const char *string_of_VABufferType(VABufferType type)
+ _(VAEncSequenceParameterBufferType);
+ _(VAEncPictureParameterBufferType);
+ _(VAEncSliceParameterBufferType);
+- _(VAEncH264VUIBufferType);
+- _(VAEncH264SEIBufferType);
+ #endif
+ #if VA_CHECK_VERSION(0,31,1)
+ _(VAQMatrixBufferType);
+--
+1.7.9.5
+
diff --git a/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-glext-missing-definition.patch b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-glext-missing-definition.patch
new file mode 100644
index 0000000..221b960
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-glext-missing-definition.patch
@@ -0,0 +1,16 @@
+--- ./src/utils_glx.h~ 2012-10-05 16:02:58.000000000 +0100
++++ ./src/utils_glx.h 2012-10-19 08:44:12.469642440 +0100
+@@ -48,6 +48,13 @@
+ typedef void (*PFNGLXRELEASETEXIMAGEEXTPROC)(Display *, GLXDrawable, int);
+ #endif
+
++#if GL_GLEXT_VERSION >= 85
++/* XXX: PFNGLMULTITEXCOORD2FPROC got out of the GL_VERSION_1_3_DEPRECATED
++ block and is not defined if GL_VERSION_1_3 is defined in <GL/gl.h>
++ Redefine the type here as an interim solution */
++typedef void (*PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t);
++#endif
++
+ #ifndef GL_FRAMEBUFFER_BINDING
+ #define GL_FRAMEBUFFER_BINDING GL_FRAMEBUFFER_BINDING_EXT
+ #endif
diff --git a/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-include-systime.patch b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-include-systime.patch
new file mode 100644
index 0000000..7561cf9
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-include-systime.patch
@@ -0,0 +1,10 @@
+--- ./libva-vdpau-driver-0.7.4/src/utils.c.orig 2016-01-08 19:41:43.264868224 +0000
++++ ./libva-vdpau-driver-0.7.4/src/utils.c 2016-01-08 19:42:16.607458827 +0000
+@@ -20,6 +20,7 @@
+
+ #include "sysdeps.h"
+ #include "utils.h"
++#include <sys/time.h>
+ #include <time.h>
+ #include <errno.h>
+
diff --git a/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch
new file mode 100644
index 0000000..6d6d47a
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch
@@ -0,0 +1,13 @@
+http://bugs.gentoo.org/517778
+
+--- src/vdpau_decode.c
++++ src/vdpau_decode.c
+@@ -1289,7 +1289,7 @@
+ driver_data,
+ obj_context->vdp_decoder,
+ obj_surface->vdp_surface,
+- (VdpPictureInfo)&obj_context->vdp_picture_info,
++ (VdpPictureInfo *)&obj_context->vdp_picture_info,
+ obj_context->vdp_bitstream_buffers_count,
+ obj_context->vdp_bitstream_buffers
+ );
diff --git a/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-nouveau.patch b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-nouveau.patch
new file mode 100644
index 0000000..b697698
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-nouveau.patch
@@ -0,0 +1,8 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,4 +1,5 @@
+ DRIVERS = nvidia
++DRIVERS += nouveau
+ DRIVERS += s3g # native VA-API driver is too old, so use VDPAU based one
+
+ INCLUDES = \
diff --git a/x11-libs/libva-vdpau-driver/libva-vdpau-driver-0.7.4-r99.ebuild b/x11-libs/libva-vdpau-driver/libva-vdpau-driver-0.7.4-r99.ebuild
new file mode 100644
index 0000000..491c9a3
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/libva-vdpau-driver-0.7.4-r99.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF="yes"
+inherit autotools-multilib eutils
+
+DESCRIPTION="VDPAU Backend for Video Acceleration (VA) API"
+HOMEPAGE="http://www.freedesktop.org/wiki/Software/vaapi"
+SRC_URI="http://www.freedesktop.org/software/vaapi/releases/libva-vdpau-driver/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="debug opengl"
+
+RDEPEND=">=x11-libs/libva-1.2.1-r1[X,opengl?,${MULTILIB_USEDEP}]
+ opengl? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] )
+ >=x11-libs/libvdpau-0.8[${MULTILIB_USEDEP}]
+ !x11-libs/vdpau-video"
+
+DEPEND="${DEPEND}
+ virtual/pkgconfig"
+
+DOCS=( NEWS README AUTHORS )
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-glext-missing-definition.patch \
+ "${FILESDIR}"/${P}-VAEncH264VUIBufferType.patch \
+ "${FILESDIR}"/${P}-libvdpau-0.8.patch \
+ "${FILESDIR}"/${P}-include-systime.patch \
+ "${FILESDIR}"/${P}-nouveau.patch
+ sed -i 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' configure.ac || die
+ autotools-multilib_src_prepare
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ $(use_enable debug)
+ $(use_enable opengl glx)
+ )
+ autotools-utils_src_configure
+}
diff --git a/x11-libs/libva-vdpau-driver/metadata.xml b/x11-libs/libva-vdpau-driver/metadata.xml
new file mode 100644
index 0000000..2861eaa
--- /dev/null
+++ b/x11-libs/libva-vdpau-driver/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>x11</herd>
+ <maintainer>
+ <email>aballier@gentoo.org</email>
+ <name>Alexis Ballier</name>
+ </maintainer>
+</pkgmetadata>