Sync with portage [Thu Aug 23 12:16:54 MSK 2018].

mhiretskiy 1204
root 6 years ago
parent e9ffc64af0
commit 998588207e

Binary file not shown.

Binary file not shown.

@ -23,7 +23,7 @@ if [[ ${PV} != "9999" ]] ; then
SRC_URI="https://www.sudo.ws/sudo/dist/${uri_prefix}${MY_P}.tar.gz
ftp://ftp.sudo.ws/pub/sudo/${uri_prefix}${MY_P}.tar.gz"
if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd ~x86-fbsd ~sparc-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd ~sparc-solaris"
fi
fi

Binary file not shown.

@ -3,7 +3,7 @@
EAPI="6"
inherit systemd toolchain-funcs
inherit flag-o-matic systemd toolchain-funcs
MY_P="${P/_/-}"
@ -65,6 +65,10 @@ src_configure() {
--enable-scdaemon
$(use_enable usb ccid-driver)
)
if use prefix && use usb ; then
# bug #649598
append-cppflags -I"${EPREFIX}/usr/include/libusb-1.0"
fi
else
myconf+=( --disable-scdaemon )
fi

Binary file not shown.

@ -11,7 +11,7 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://libvirt.org/git/libvirt.git"
SRC_URI=""
KEYWORDS=""
KEYWORDS="amd64 x86"
SLOT="0"
else
# Versions with 4 numbers are stable updates:
@ -20,7 +20,7 @@ else
else
SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
fi
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 ~arm64 x86"
SLOT="0/${PV}"
fi

@ -19,7 +19,7 @@ if [[ ${PV} = *9999* ]]; then
SRC_URI=""
else
SRC_URI="http://wiki.qemu-project.org/download/${P}.tar.bz2"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~x86-fbsd"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 x86 ~x86-fbsd"
# Gentoo specific patchsets:
SRC_URI+=" https://dev.gentoo.org/~tamiko/distfiles/${P}-patches-r1.tar.xz"

Binary file not shown.

@ -0,0 +1 @@
DIST imgurbash2-2.1.tar.gz 3619 BLAKE2B 01bb37615184113082a87b79b5bbda1707e36d8f4a28715e0686eb63f8d7c55f7aa760ecab9ab2457c1601e9cb0ff4b558cd08f8a77a123cfe97d8008ad1aa93 SHA512 32e7c39d3456f3d540af2db8b21d8a5724bf9b1db372953f3dd0ed21a6f7529209ec7afffe22410be46a99753202aca2454732d09c1314350187c5610b36ab9d

@ -0,0 +1,29 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/ram-on/imgurbash2.git"
else
SRC_URI="https://github.com/ram-on/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Bash script that uploads/deletes images to/from imgur"
HOMEPAGE="https://github.com/ram-on/imgurbash2"
LICENSE="MIT"
SLOT="0"
IUSE="X"
RDEPEND="
net-misc/curl
X? ( || ( x11-misc/xclip x11-misc/xsel ) )
"
src_install() {
einstalldocs
dobin imgurbash2
}

@ -0,0 +1,29 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/ram-on/imgurbash2.git"
else
SRC_URI="https://github.com/ram-on/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Bash script that uploads/deletes images to/from imgur"
HOMEPAGE="https://github.com/ram-on/imgurbash2"
LICENSE="MIT"
SLOT="0"
IUSE="X"
RDEPEND="
net-misc/curl
X? ( || ( x11-misc/xclip x11-misc/xsel ) )
"
src_install() {
einstalldocs
dobin imgurbash2
}

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>lucianposton@pm.me</email>
<name>Lucian Poston</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">ram-on/imgurbash2</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 sparc ~x86 ~x64-cygwin ~amd64-fbsd"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~x64-cygwin ~amd64-fbsd"
IUSE="+blake2 bzip2 +gpg lzma sha3 test tools"
MODULE_RDEPEND="

Binary file not shown.

@ -0,0 +1,19 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="A helper package for sgml docbook"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
HOMEPAGE="https://www.docbook.org/sgml/"
RDEPEND="app-text/sgml-common app-text/openjade
>=app-text/docbook-dsssl-stylesheets-1.64
>=app-text/docbook-sgml-utils-0.6.6
~app-text/docbook-sgml-dtd-3.0
~app-text/docbook-sgml-dtd-3.1
~app-text/docbook-sgml-dtd-4.0
~app-text/docbook-sgml-dtd-4.1"

Binary file not shown.

@ -1,8 +1,10 @@
DIST redis-3.2.12.tar.gz 1551468 BLAKE2B 85483de2588e4161521fe958225a53ab4357d0db83954c22f755d5d512e6e2126f9e7fdc1032353bd491353af3805c806b89546f886fe78fa5e5d2dc1446420b SHA512 eec64a17e331ac220ba425a495127b3873048dc2597a6508962469c0c99763deffcec97254915e2b1f3867eb556b917e8861baa9609c727d0abb254a90d87cdc
DIST redis-3.2.8.tar.gz 1547237 BLAKE2B fb03e263ad7b135dff38e018d9b830c4992cf331efc7c23c10b087c47e597abedb52f259d4dd9a9ee1d661685157fc29a2022d74bc21d406bb10c9b7dfab8b7e SHA512 7334faf73af3644f7f9dcaddd322955d5df1e88a1640b509ae623f322615a20f6dc143eb57dd89ff3a278557df309ac4215c3fb458235682ce28e16c817068ba
DIST redis-4.0.10.tar.gz 1738465 BLAKE2B 572cbb3d2d5d7209f81ebd53ee68f40b404d0e4623bd1864845bf1f47135d4e097a6974d346ffd845d848c39ace6d3fb9f1a347e0c9d16d06d22aed7a8b3ae7b SHA512 0978dabaf637e61889d492fd3629acd58ca8fb0c0088cdd7036ffd1a7ed3f018c107039d4c96bd61d0b7d35757df2366d051f57d77ffb5642aca0e5651b30603
DIST redis-4.0.11.tar.gz 1739656 BLAKE2B d94f380ad1600e58942cc5b27b512984396cdbb06ea6e947c7d7ce5b8ecdb8a2a56c6356af2caa82a96887a610716c9575b78eb2f46da89efb940febc1c30f22 SHA512 f0054af9ca2143731a397b2b21285387707b7f40d9326ba15225feb1a2ff470fab5194308342f63bbe1081f84c7e9ef19543c5a8e3eae49e17bfc515c64201f0
DIST redis-4.0.2.tar.gz 1713990 BLAKE2B 307ab76b336f7520e14a23a1577c46e1b63cc5a5a5b6afb725cb87934fbcb62107085671fd1072d1142ce8e92f069e6b6064c9f4468335bc6997897c8f494471 SHA512 1458909c6fc16cff8ca5e6dddff23b988ee1e447f2d0bccf5941553b22bab6abb851732b3fe53dafb8a69d6c0939c3ce7e0686d51e03be720fb018c038d3b1b4
DIST redis-4.0.6.tar.gz 1723533 BLAKE2B 94c2a9b7eeaa676efaac75cd5c143b0f4b02440b5a21ecc9b2a68cc27ad4abc1fc4d7dbc903dea5d956ce737ca434ea5b5bdde4a35df3a3689da60c5fb0bddf1 SHA512 784aad612664df666c36f969cb6a9ab794f004abcf9aa761bd1f5f0f8fdb248d5b38f48a59b68c2de7d2a344755f1537efc9d5847de0d662302699ed94d40813
DIST redis-4.0.7.tar.gz 1729488 BLAKE2B 7a5337b868e4da4a7387b31bc9d6bd4c86abd701b9ba999f64296ed5188cbba7208ced466973a500730ca03e70a9a85fbab2fb4700fdc977e58defc0126487d1 SHA512 6f317d9e76224b2a2b047dc8f56b126ea85ee5c6112c4c6238cb5cdfa3a83756bff3a82b106b00d1124a93d210a900d836587b8d9563916f19274de0e84c4c6b
DIST redis-4.0.8.tar.gz 1729973 BLAKE2B 32d82a07beba9ea8f0b08a8fc69da548a1974e5839f052a9803ffb0f52ef920df9b128092e061b5e693581a50efef4a1212c1f6310dc8492eff5ca841ff3b03a SHA512 11c126ddef3bedbceb02ee7a80a61374e081da8087055d77970b0097066a6f1c5e0c4f0d246c9851f8c3beca22f185c184669a9dc4f1c7c229f8cd2c34196ab6
DIST redis-4.0.9.tar.gz 1737022 BLAKE2B 35a83d146062f5b14c023d7fd9f28d743ba6bec3e0e4bf9ce8e065a706bbd7508ffbcb8b1b4d18f6b6774589b5456540ba8717b9f449fcbd758c0f57dbd505a3 SHA512 a6cf63cb361f0a87da3955ba628190dc04cad342f7a664d18e44416ee67dd86ed6e3a46b9701e994f1417e56b819b3c6fc595f363c10bb4b83d5033919d29598
DIST redis-5.0_rc4.tar.gz 1937238 BLAKE2B b8f768b83e27476bc038fc554193680f4873eb2405f238e0a6f2053cf68c4a9e6c45546730a263463b805d6811334c1ba056be0230676f19d0562d488a3d4c97 SHA512 75b308bca026fe3b7cff1a92df3990bab5bb7ffe24cdfbc263f4d522ebe7ec8d86a9ed66da1778fe67c08a39b6f0c83cb10c5a332818c6ad04621d01c4aa6add

@ -0,0 +1,32 @@
diff --git a/src/Makefile b/src/Makefile
index f5525bd..6f12a20 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -29,14 +29,7 @@ INSTALL_BIN=$(PREFIX)/bin
INSTALL=install
# Default allocator defaults to Jemalloc if it's not an ARM
-MALLOC=libc
-ifneq ($(uname_M),armv6l)
-ifneq ($(uname_M),armv7l)
-ifeq ($(uname_S),Linux)
- MALLOC=jemalloc
-endif
-endif
-endif
+MALLOC?=jemalloc
# To get ARM stack traces if Redis crashes we need a special C flag.
ifneq (,$(filter aarch64 armv,$(uname_M)))
@@ -120,9 +113,8 @@ ifeq ($(MALLOC),tcmalloc_minimal)
endif
ifeq ($(MALLOC),jemalloc)
- DEPENDENCY_TARGETS+= jemalloc
- FINAL_CFLAGS+= -DUSE_JEMALLOC -I../deps/jemalloc/include
- FINAL_LIBS := ../deps/jemalloc/lib/libjemalloc.a $(FINAL_LIBS)
+ FINAL_CFLAGS+= -DUSE_JEMALLOC -DJEMALLOC_NO_DEMANGLE
+ FINAL_LIBS+= -ljemalloc -ldl
endif
REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS)

@ -0,0 +1,61 @@
diff --git a/deps/lua/src/lua_cjson.c b/deps/lua/src/lua_cjson.c
index c26c0d7..fa50c41 100644
--- a/deps/lua/src/lua_cjson.c
+++ b/deps/lua/src/lua_cjson.c
@@ -46,7 +46,7 @@
#include "strbuf.h"
#include "fpconv.h"
-#include "../../../src/solarisfixes.h"
+#include "solarisfixes.h"
#ifndef CJSON_MODNAME
#define CJSON_MODNAME "cjson"
diff --git a/src/Makefile b/src/Makefile
index 6f12a20..205cd59 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -16,7 +16,7 @@ release_hdr := $(shell sh -c './mkreleasehdr.sh')
uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not')
uname_M := $(shell sh -c 'uname -m 2>/dev/null || echo not')
OPTIMIZATION?=-O2
-DEPENDENCY_TARGETS=hiredis linenoise lua
+DEPENDENCY_TARGETS=hiredis linenoise
NODEPS:=clean distclean
# Default settings
@@ -58,7 +58,7 @@ endif
FINAL_CFLAGS=$(STD) $(WARN) $(OPT) $(DEBUG) $(CFLAGS) $(REDIS_CFLAGS)
FINAL_LDFLAGS=$(LDFLAGS) $(REDIS_LDFLAGS) $(DEBUG)
-FINAL_LIBS=-lm
+FINAL_LIBS=@LUA_LIBS@
DEBUG=-g -ggdb
ifeq ($(uname_S),SunOS)
@@ -100,7 +100,7 @@ endif
endif
endif
# Include paths to dependencies
-FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src
+FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise @LUA_CFLAGS@
ifeq ($(MALLOC),tcmalloc)
FINAL_CFLAGS+= -DUSE_TCMALLOC
@@ -137,6 +137,7 @@ endif
REDIS_SERVER_NAME=redis-server
REDIS_SENTINEL_NAME=redis-sentinel
REDIS_SERVER_OBJ=adlist.o quicklist.o ae.o anet.o dict.o server.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o cluster.o crc16.o endianconv.o slowlog.o scripting.o bio.o rio.o rand.o memtest.o crc64.o bitops.o sentinel.o notify.o setproctitle.o blocked.o hyperloglog.o latency.o sparkline.o redis-check-rdb.o redis-check-aof.o geo.o lazyfree.o module.o evict.o expire.o geohash.o geohash_helper.o childinfo.o defrag.o siphash.o rax.o t_stream.o listpack.o localtime.o
+REDIS_SERVER_OBJ+=fpconv.o strbuf.o lua_bit.o lua_cjson.o lua_cmsgpack.o lua_struct.o
REDIS_CLI_NAME=redis-cli
REDIS_CLI_OBJ=anet.o adlist.o dict.o redis-cli.o zmalloc.o release.o anet.o ae.o crc64.o siphash.o crc16.o
REDIS_BENCHMARK_NAME=redis-benchmark
@@ -188,7 +189,7 @@ endif
# redis-server
$(REDIS_SERVER_NAME): $(REDIS_SERVER_OBJ)
- $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a $(FINAL_LIBS)
+ $(REDIS_LD) -o $@ $^ ../deps/hiredis/libhiredis.a $(FINAL_LIBS)
# redis-sentinel
$(REDIS_SENTINEL_NAME): $(REDIS_SERVER_NAME)

@ -0,0 +1,10 @@
diff --git a/sentinel.conf b/sentinel.conf
index 3703c73..964ffa3 100644
--- a/sentinel.conf
+++ b/sentinel.conf
@@ -222,3 +222,5 @@ sentinel deny-scripts-reconfig yes
# case, so writing "config guessme" is the same in the example above.
#
# SENTINEL SET can also be used in order to perform this configuration at runtime.
+
+logfile "/var/log/redis/sentinel.log"

@ -0,0 +1,141 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools eutils flag-o-matic systemd toolchain-funcs user
DESCRIPTION="A persistent caching system, key-value and data structures database"
HOMEPAGE="https://redis.io"
SRC_URI="http://download.redis.io/releases/${P}.tar.gz"
LICENSE="BSD"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
IUSE="+jemalloc tcmalloc luajit test"
SLOT="0"
# Redis does NOT build with Lua 5.2 or newer at this time.
# This should link correctly with both unslotted & slotted Lua, without
# changes.
RDEPEND="
luajit? ( dev-lang/luajit:2 )
!luajit? ( || ( dev-lang/lua:5.1 =dev-lang/lua-5.1*:0 ) )
tcmalloc? ( dev-util/google-perftools )
jemalloc? ( >=dev-libs/jemalloc-3.2 )"
DEPEND="
${RDEPEND}
virtual/pkgconfig
>=sys-devel/autoconf-2.63
test? ( dev-lang/tcl:0= )"
REQUIRED_USE="?? ( tcmalloc jemalloc )"
S="${WORKDIR}/${PN}-${PV/_/-}"
pkg_setup() {
enewgroup redis 75
enewuser redis 75 -1 /var/lib/redis redis
}
src_prepare() {
eapply \
"${FILESDIR}"/${PN}-3.2.3-config.patch \
"${FILESDIR}"/${PN}-4.0.1-shared.patch \
"${FILESDIR}"/${PN}-4.0.1-sharedlua.patch \
"${FILESDIR}"/${PN}-sentinel-4.0.6-config.patch
eapply_user
# Copy lua modules into build dir
cp "${S}"/deps/lua/src/{fpconv,lua_bit,lua_cjson,lua_cmsgpack,lua_struct,strbuf}.c "${S}"/src || die
cp "${S}"/deps/lua/src/{fpconv,strbuf}.h "${S}"/src || die
# Append cflag for lua_cjson
# https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61
append-cflags "-DENABLE_CJSON_GLOBAL"
# now we will rewrite present Makefiles
local makefiles="" MKF
for MKF in $(find -name 'Makefile' | cut -b 3-); do
mv "${MKF}" "${MKF}.in"
sed -i -e 's:$(CC):@CC@:g' \
-e 's:$(CFLAGS):@AM_CFLAGS@:g' \
-e 's: $(DEBUG)::g' \
-e 's:$(OBJARCH)::g' \
-e 's:ARCH:TARCH:g' \
-e '/^CCOPT=/s:$: $(LDFLAGS):g' \
"${MKF}.in" \
|| die "Sed failed for ${MKF}"
makefiles+=" ${MKF}"
done
# autodetection of compiler and settings; generates the modified Makefiles
cp "${FILESDIR}"/configure.ac-3.2 configure.ac || die
# Use the correct pkgconfig name for Lua
has_version 'dev-lang/lua:5.1' \
&& LUAPKGCONFIG=lua5.1 \
|| LUAPKGCONFIG=lua
sed -i \
-e "/^AC_INIT/s|, [0-9].+, |, $PV, |" \
-e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \
-e "/PKG_CHECK_MODULES.*\<LUA\>/s,lua5.1,${LUAPKGCONFIG},g" \
configure.ac || die "Sed failed for configure.ac"
eautoreconf
}
src_configure() {
econf \
$(use_with luajit)
# Linenoise can't be built with -std=c99, see https://bugs.gentoo.org/451164
# also, don't define ANSI/c99 for lua twice
sed -i -e "s:-std=c99::g" deps/linenoise/Makefile deps/Makefile || die
}
src_compile() {
tc-export CC AR RANLIB
local myconf=""
if use tcmalloc; then
myconf="${myconf} USE_TCMALLOC=yes"
elif use jemalloc; then
myconf="${myconf} JEMALLOC_SHARED=yes"
else
myconf="${myconf} MALLOC=yes"
fi
emake ${myconf} V=1 CC="${CC}" AR="${AR} rcu" RANLIB="${RANLIB}"
}
src_install() {
insinto /etc/
doins redis.conf sentinel.conf
use prefix || fowners redis:redis /etc/{redis,sentinel}.conf
fperms 0644 /etc/{redis,sentinel}.conf
newconfd "${FILESDIR}/redis.confd-r1" redis
newinitd "${FILESDIR}/redis.initd-5" redis
systemd_newunit "${FILESDIR}/redis.service-2" redis.service
systemd_newtmpfilesd "${FILESDIR}/redis.tmpfiles" redis.conf
newconfd "${FILESDIR}/redis-sentinel.confd" redis-sentinel
newinitd "${FILESDIR}/redis-sentinel.initd" redis-sentinel
insinto /etc/logrotate.d/
newins "${FILESDIR}/${PN}.logrotate" ${PN}
dodoc 00-RELEASENOTES BUGS CONTRIBUTING MANIFESTO README.md
dobin src/redis-cli
dosbin src/redis-benchmark src/redis-server src/redis-check-aof src/redis-check-rdb
fperms 0750 /usr/sbin/redis-benchmark
dosym redis-server /usr/sbin/redis-sentinel
if use prefix; then
diropts -m0750
else
diropts -m0750 -o redis -g redis
fi
keepdir /var/{log,lib}/redis
}

@ -0,0 +1,144 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools eutils flag-o-matic systemd toolchain-funcs user
MY_PV="${PV/_/-}"
MY_P="${PN}-${MY_PV}"
DESCRIPTION="A persistent caching system, key-value and data structures database"
HOMEPAGE="https://redis.io"
SRC_URI="https://github.com/antirez/redis/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
IUSE="+jemalloc tcmalloc luajit test"
SLOT="0"
# Redis does NOT build with Lua 5.2 or newer at this time.
# This should link correctly with both unslotted & slotted Lua, without
# changes.
RDEPEND="
luajit? ( dev-lang/luajit:2 )
!luajit? ( || ( dev-lang/lua:5.1 =dev-lang/lua-5.1*:0 ) )
tcmalloc? ( dev-util/google-perftools )
jemalloc? ( >=dev-libs/jemalloc-3.2 )"
DEPEND="
${RDEPEND}
virtual/pkgconfig
>=sys-devel/autoconf-2.63
test? ( dev-lang/tcl:0= )"
REQUIRED_USE="?? ( tcmalloc jemalloc )"
S="${WORKDIR}/${MY_P}"
pkg_setup() {
enewgroup redis 75
enewuser redis 75 -1 /var/lib/redis redis
}
src_prepare() {
eapply \
"${FILESDIR}"/${PN}-3.2.3-config.patch \
"${FILESDIR}"/${PN}-5.0-shared.patch \
"${FILESDIR}"/${PN}-5.0-sharedlua.patch \
"${FILESDIR}"/${PN}-sentinel-5.0-config.patch
eapply_user
# Copy lua modules into build dir
cp "${S}"/deps/lua/src/{fpconv,lua_bit,lua_cjson,lua_cmsgpack,lua_struct,strbuf}.c "${S}"/src || die
cp "${S}"/deps/lua/src/{fpconv,strbuf}.h "${S}"/src || die
# Append cflag for lua_cjson
# https://github.com/antirez/redis/commit/4fdcd213#diff-3ba529ae517f6b57803af0502f52a40bL61
append-cflags "-DENABLE_CJSON_GLOBAL"
# now we will rewrite present Makefiles
local makefiles="" MKF
for MKF in $(find -name 'Makefile' | cut -b 3-); do
mv "${MKF}" "${MKF}.in"
sed -i -e 's:$(CC):@CC@:g' \
-e 's:$(CFLAGS):@AM_CFLAGS@:g' \
-e 's: $(DEBUG)::g' \
-e 's:$(OBJARCH)::g' \
-e 's:ARCH:TARCH:g' \
-e '/^CCOPT=/s:$: $(LDFLAGS):g' \
"${MKF}.in" \
|| die "Sed failed for ${MKF}"
makefiles+=" ${MKF}"
done
# autodetection of compiler and settings; generates the modified Makefiles
cp "${FILESDIR}"/configure.ac-3.2 configure.ac || die
# Use the correct pkgconfig name for Lua
has_version 'dev-lang/lua:5.1' \
&& LUAPKGCONFIG=lua5.1 \
|| LUAPKGCONFIG=lua
sed -i \
-e "/^AC_INIT/s|, [0-9].+, |, $PV, |" \
-e "s:AC_CONFIG_FILES(\[Makefile\]):AC_CONFIG_FILES([${makefiles}]):g" \
-e "/PKG_CHECK_MODULES.*\<LUA\>/s,lua5.1,${LUAPKGCONFIG},g" \
configure.ac || die "Sed failed for configure.ac"
eautoreconf
}
src_configure() {
econf \
$(use_with luajit)
# Linenoise can't be built with -std=c99, see https://bugs.gentoo.org/451164
# also, don't define ANSI/c99 for lua twice
sed -i -e "s:-std=c99::g" deps/linenoise/Makefile deps/Makefile || die
}
src_compile() {
tc-export CC AR RANLIB
local myconf=""
if use tcmalloc; then
myconf="${myconf} USE_TCMALLOC=yes"
elif use jemalloc; then
myconf="${myconf} JEMALLOC_SHARED=yes"
else
myconf="${myconf} MALLOC=yes"
fi
emake ${myconf} V=1 CC="${CC}" AR="${AR} rcu" RANLIB="${RANLIB}"
}
src_install() {
insinto /etc/
doins redis.conf sentinel.conf
use prefix || fowners redis:redis /etc/{redis,sentinel}.conf
fperms 0644 /etc/{redis,sentinel}.conf
newconfd "${FILESDIR}/redis.confd-r1" redis
newinitd "${FILESDIR}/redis.initd-5" redis
systemd_newunit "${FILESDIR}/redis.service-2" redis.service
systemd_newtmpfilesd "${FILESDIR}/redis.tmpfiles" redis.conf
newconfd "${FILESDIR}/redis-sentinel.confd" redis-sentinel
newinitd "${FILESDIR}/redis-sentinel.initd" redis-sentinel
insinto /etc/logrotate.d/
newins "${FILESDIR}/${PN}.logrotate" ${PN}
dodoc 00-RELEASENOTES BUGS CONTRIBUTING MANIFESTO README.md
dobin src/redis-cli
dosbin src/redis-benchmark src/redis-server src/redis-check-aof src/redis-check-rdb
fperms 0750 /usr/sbin/redis-benchmark
dosym redis-server /usr/sbin/redis-sentinel
if use prefix; then
diropts -m0750
else
diropts -m0750 -o redis -g redis
fi
keepdir /var/{log,lib}/redis
}

@ -19,7 +19,7 @@ SRC_URI="doc? ( https://sqlite.org/2018/${PN}-doc-${DOC_PV}.zip )
LICENSE="public-domain"
SLOT="3"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug doc icu +readline secure-delete static-libs tcl test tools"
RDEPEND="sys-libs/zlib:0=[${MULTILIB_USEDEP}]

Binary file not shown.

@ -1,3 +1,4 @@
DIST efl-1.17.0.tar.xz 43485360 BLAKE2B 97a79bda40658eac6e50886a01821bb8c98d6f56d18fcd51dc3827154506064bec3bf665c8f471919aedb03ae83ce4045293afa9a0bf8d3eaf947221ef7cba9e SHA512 e4f28f938daf4ec1cb3d761407a443e401b59c6bb0f9fa6cd771dbd256b95f4a32a5f9e6bd8ad8328708a382f732e67abd1a23c7be2ff222f08bc8135a2435da
DIST efl-1.18.4.tar.xz 64609944 BLAKE2B b36e5ee7c64a57772c5826e990a85110fffc3488e605d72515d4db7a6ec56eee25eb68c7136840f24cb8cdcdc8d7050e2825c17f0e4c5566db7d9ec2c96fd557 SHA512 2cfdcde8b5adb93310e75e4923e3845392bed97563ca1a68f4537e346b51f59acefaa85a425bdbb5619e5bfd6c9ff92b4bd1888b5d4ddd8db94c8a555e3934c9
DIST efl-1.20.7.tar.xz 65509444 BLAKE2B f58f7daf850ef9983fe4b3a10a3ceb137be7f7ae32c71f476498f677de690bfcc7c16aea5032168a42aa6b5f97d1fb5ca51dafc69d80e2a9262f4d78220a8562 SHA512 c1bf18b74316cf9bd0bc16635c216ca0d8005b2ded1c014b22590388e37368343e5e5318f526dcb042cfce8ab2c7a82655e4718cbcac5dd1ed0d2522a7a2d7de
DIST efl-1.21.0.tar.xz 71030532 BLAKE2B 3480e261aef05b169a850d27f3d9fa6da0ad9bc9ac04548137829e662546cd7d85c87596576e561bba33f9f1be657d81f261595e34c711ff9e35d551ae5f09a8 SHA512 497735f518976d70b96023b013a6d821f6695fe56def2abf5bd1e1c7ad89d324428017d7909c7b73bfb332b811b5596592b105bb4c3d2f6a40929f1cefc2b789

@ -0,0 +1,281 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit gnome2-utils pax-utils xdg-utils
DESCRIPTION="Enlightenment Foundation Libraries all-in-one package"
HOMEPAGE="https://www.enlightenment.org/"
SRC_URI="https://download.enlightenment.org/rel/libs/${PN}/${P}.tar.xz"
LICENSE="BSD-2 GPL-2 LGPL-2.1 ZLIB"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="avahi +bmp dds connman debug drm +eet egl examples fbcon +fontconfig fribidi gif gles glib gnutls gstreamer harfbuzz hyphen +ico ibus jpeg2k libressl libuv luajit neon nls opengl ssl pdf physics postscript +ppm +psd pulseaudio raw scim sdl sound static-libs svg +system-lz4 systemd tga tiff tslib unwind v4l valgrind vlc vnc wayland webp X xcf xim xine xpresent xpm"
REQUIRED_USE="
?? ( opengl egl )
?? ( opengl gles )
fbcon? ( !tslib )
gles? (
|| ( X wayland )
!sdl
egl
)
ibus? ( glib )
opengl? ( X )
pulseaudio? ( sound )
sdl? ( opengl )
vnc? ( X fbcon )
wayland? ( egl gles !opengl )
xim? ( X )
"
COMMON_DEPEND="
net-misc/curl
media-libs/libpng:0=
sys-apps/dbus
sys-apps/util-linux
sys-libs/zlib:=
virtual/jpeg:0=
avahi? ( net-dns/avahi )
connman? ( net-misc/connman )
drm? (
dev-libs/libinput
media-libs/mesa[gbm]
x11-libs/libdrm
x11-libs/libxkbcommon
)
egl? ( media-libs/mesa[egl] )
fontconfig? ( media-libs/fontconfig )
fribidi? ( dev-libs/fribidi )
gif? ( media-libs/giflib:= )
glib? ( dev-libs/glib:2 )
gles? ( media-libs/mesa[gles2] )
gstreamer? (
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
)
harfbuzz? ( media-libs/harfbuzz )
hyphen? ( dev-libs/hyphen )
ibus? ( app-i18n/ibus )
jpeg2k? ( media-libs/openjpeg:0= )
libuv? ( dev-libs/libuv )
luajit? ( dev-lang/luajit:= )
!luajit? ( dev-lang/lua:* )
nls? ( sys-devel/gettext )
pdf? ( app-text/poppler:=[cxx] )
physics? ( sci-physics/bullet:= )
postscript? ( app-text/libspectre )
pulseaudio? ( media-sound/pulseaudio )
raw? ( media-libs/libraw:= )
scim? ( app-i18n/scim )
sdl? (
media-libs/libsdl2
virtual/opengl
)
sound? ( media-libs/libsndfile )
ssl? (
gnutls? ( net-libs/gnutls:= )
!gnutls? (
!libressl? ( dev-libs/openssl:= )
libressl? ( dev-libs/libressl:= )
)
)
svg? (
gnome-base/librsvg
x11-libs/cairo
)
system-lz4? ( app-arch/lz4 )
systemd? ( sys-apps/systemd )
tiff? ( media-libs/tiff:0= )
tslib? ( x11-libs/tslib:= )
unwind? ( sys-libs/libunwind )
valgrind? ( dev-util/valgrind )
vlc? ( media-video/vlc )
vnc? ( net-libs/libvncserver )
wayland? (
dev-libs/wayland
media-libs/mesa[gles2,wayland]
x11-libs/libxkbcommon
)
webp? ( media-libs/libwebp:= )
X? (
media-libs/freetype
x11-libs/libXcursor
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libXrender
x11-libs/libXtst
x11-libs/libXScrnSaver
opengl? (
x11-libs/libX11
x11-libs/libXrender
virtual/opengl
)
gles? (
x11-libs/libX11
x11-libs/libXrender
virtual/opengl
xpresent? ( x11-libs/libXpresent )
)
)
xine? ( media-libs/xine-lib )
xpm? ( x11-libs/libXpm )
"
DEPEND="
${COMMON_DEPEND}
virtual/pkgconfig
"
RDEPEND="
${COMMON_DEPEND}
!media-libs/elementary
!media-plugins/emotion_generic_players
!media-plugins/evas_generic_loaders
"
src_prepare() {
default
# Upstream still doesnt offer a configure flag. #611108
if ! use unwind ; then
sed -i -e 's:libunwind libunwind-generic:xxxxxxxxxxxxxxxx:' \
configure || die "Sedding configure file with unwind fix failed."
fi
xdg_environment_reset
}
src_configure() {
local myconf=(
--enable-cserve
--enable-image-loader-generic
--enable-image-loader-jpeg
--enable-image-loader-png
--enable-libeeze
--enable-libmount
--enable-xinput22
--disable-doc
--disable-gesture
--disable-gstreamer
--disable-image-loader-tgv
--disable-tizen
--disable-wayland-ivi-shell
$(use_enable avahi)
$(use_enable bmp image-loader-bmp)
$(use_enable bmp image-loader-wbmp)
$(use_enable dds image-loader-dds)
$(use_enable drm)
$(use_enable drm elput)
$(use_enable eet image-loader-eet)
$(use_enable egl)
$(use_enable examples always-build-examples)
$(use_enable fbcon fb)
$(use_enable fontconfig)
$(use_enable fribidi)
$(use_enable gif image-loader-gif)
$(use_enable gstreamer gstreamer1)
$(use_enable harfbuzz)
$(use_enable hyphen)
$(use_enable ico image-loader-ico)
$(use_enable ibus)
$(use_enable jpeg2k image-loader-jp2k)
$(use_enable libuv)
$(use_enable !luajit lua-old)
$(use_enable neon)
$(use_enable nls)
$(use_enable pdf poppler)
$(use_enable physics)
$(use_enable postscript spectre)
$(use_enable ppm image-loader-pmaps)
$(use_enable psd image-loader-psd)
$(use_enable pulseaudio)
$(use_enable raw libraw)
$(use_enable scim)
$(use_enable sdl)
$(use_enable sound audio)
$(use_enable static-libs static)
$(use_enable svg librsvg)
$(use_enable system-lz4 liblz4)
$(use_enable systemd)
$(use_enable tga image-loader-tga)
$(use_enable tiff image-loader-tiff)
$(use_enable tslib)
$(use_enable v4l v4l2)
$(use_enable valgrind)
$(use_enable vlc libvlc)
$(use_enable vnc vnc-server)
$(use_enable wayland)
$(use_enable webp image-loader-webp)
$(use_enable xcf)
$(use_enable xim)
$(use_enable xine)
$(use_enable xpm image-loader-xpm)
--with-crypto=$(usex gnutls gnutls $(usex ssl openssl none))
--with-glib=$(usex glib)
--with-js=none
--with-net-control=$(usex connman connman none)
--with-profile=$(usex debug debug release)
--with-x11=$(usex X xlib none)
$(use_with X x)
)
use fbcon && use egl && myconf+=( --enable-eglfs )
use drm && use wayland && myconf+=( --enable-gl-drm )
use X && use xpresent && myconf+=( --enable-xpresent )
if use opengl ; then
myconf+=( --with-opengl=full )
elif use egl ; then
myconf+=( --with-opengl=es )
elif use drm && use wayland ; then
myconf+=( --with-opengl=es )
else
myconf+=( --with-opengl=none )
fi
econf "${myconf[@]}"
}
src_compile() {
if host-is-pax && use luajit ; then
# We need to build the lua code first so we can pax-mark it. #547076
local target='_e_built_sources_target_gogogo_'
printf '%s: $(BUILT_SOURCES)\n' "${target}" >> src/Makefile || die
emake -C src "${target}"
emake -C src bin/elua/elua
pax-mark m src/bin/elua/.libs/elua
fi
V=1 emake || die "Compiling EFL failed."
}
src_install() {
einstalldocs
V=1 emake install DESTDIR="${D}" || die "Installing EFL files failed."
find "${D}" -name '*.la' -delete || die
}
pkg_postinst() {
gnome2_icon_cache_update
xdg_mimeinfo_database_update
}
pkg_postrm() {
gnome2_icon_cache_update
xdg_mimeinfo_database_update
}

@ -23,13 +23,14 @@
<flag name="ico">Enable Ico image loader</flag>
<flag name="ivi">Enable ivi-shell support</flag>
<flag name="libuv">Enable <pkg>dev-libs/libuv</pkg> support</flag>
<flag name="luajit">USE <pkg>dev-lang/lua</pkg> instead of <pkg>dev-lang/luajit</pkg></flag>
<flag name="luajit">USE <pkg>dev-lang/luajit</pkg> instead of <pkg>dev-lang/lua</pkg></flag>
<flag name="oldlua">USE <pkg>dev-lang/lua</pkg> instead of <pkg>dev-lang/luajit</pkg></flag>
<flag name="physics">Enable Bullet physics effects and support</flag>
<flag name="pixman">Enable PixMan for software rendering</flag>
<flag name="ppm">Enable PMAPS image loader</flag>
<flag name="psd">Enable PSD image loader</flag>
<flag name="scim">Enable Smart Common Input Method</flag>
<flag name="system-lz4">Use system liblz4 instead of bundled one</flag>
<flag name="tga">Enable Tga image loader</flag>
<flag name="tslib">Enable <pkg>x11-libs/tslib</pkg> for touchscreen events</flag>
<flag name="unwind">Enable debug support via <pkg>sys-libs/libunwind</pkg></flag>

@ -2,3 +2,4 @@ DIST jemalloc-3.6.0.tar.bz2 338964 BLAKE2B a5edacc85c5bebf3b373e7fc8bafd9449273f
DIST jemalloc-4.4.0.tar.bz2 440144 BLAKE2B 6acb91c5be6c5b17c209341dd08e6973e3ad5ecdfe7ebe5d8c78181cddca1fccba3c11628e736d66acd7698f7813f38077033d39093bf2e4bd704c8b4de60e7b SHA512 2f88fb17ede3bf87e334e9c80949870e0dd85b5adcdd89a1750ccf6df5240f35293159ac0a360d3a29cf0b1d17edf86dcc7997c6bf3190ae7da7442d3a3cc14e
DIST jemalloc-4.5.0.tar.bz2 449992 BLAKE2B 6141c71f7f5f9cee91a59eeed9c69b0a69b3cc39666aa608445073c11ee3ca9b4777a851c5cb5adac80d42bfbf10a6726e5dc1340ffe85ea1ee884d87c7865da SHA512 76953363fe1007952232220afa1a91da4c1c33c02369b5ad239d8dd1d0792141197c15e8489a8f4cd301b08494e65cadd8ecd34d025cb0285700dd78d7248821
DIST jemalloc-5.0.1.tar.bz2 499300 BLAKE2B 551933fcd93315968cbf89bfadc40313717ff216141af8a131f2333d10090438ddf36fbfdc0ee831cbec6f930ae15aa9cfaafae72ed4f38dd97b00712ca918e8 SHA512 8cb5957a5724eb2bbad120cf0028ea8b2b14b4a416c1751b7c967351a7fd51135058ea0d3c4dc1d127c86f3aa7e9fd5ef101857110aabfdb7789427791c432c3
DIST jemalloc-5.1.0.tar.bz2 515622 BLAKE2B 3c8b35d30fca0018e3e32452e6fa41c7ac59f9f2f7d4bc243237fde95025ab5a7562fb86b5afe2ca9b7bb072f7baf6ac7589a4862d9ebaafddae187d93e20da0 SHA512 d9abebe54d303ca931b8c31c1033f23ff5fb060f2377ec8386f4d79c352e65c78ed34f680c352dac14f7d7115d10245782d553d988bc13df2eb34a2f0942ef6f

@ -0,0 +1,61 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools toolchain-funcs multilib-minimal
DESCRIPTION="Jemalloc is a general-purpose scalable concurrent allocator"
HOMEPAGE="http://jemalloc.net/ https://github.com/jemalloc/jemalloc"
SRC_URI="https://github.com/jemalloc/jemalloc/releases/download/${PV}/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0/2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
IUSE="debug hardened lazy-lock static-libs stats xmalloc"
HTML_DOCS=( doc/jemalloc.html )
PATCHES=( "${FILESDIR}/${PN}-5.0.1-strip-optimization.patch"
"${FILESDIR}/${PN}-4.5.0-fix_html_install.patch"
)
MULTILIB_WRAPPED_HEADERS=( /usr/include/jemalloc/jemalloc.h )
# autotools-utils.eclass auto-adds configure options when static-libs is in IUSE
# but jemalloc doesn't implement them in its configure; need this here to
# supress the warnings until automagic is removed from the eclass
QA_CONFIGURE_OPTIONS="--enable-static --disable-static --enable-shared --disable-shared"
src_prepare() {
default
eautoreconf
}
multilib_src_configure() {
local myconf=()
if use hardened ; then
myconf+=( --disable-syscall )
fi
ECONF_SOURCE="${S}" \
econf \
$(use_enable debug) \
$(use_enable lazy-lock) \
$(use_enable stats) \
$(use_enable xmalloc) \
"${myconf[@]}"
}
multilib_src_install() {
# Copy man file which the Makefile looks for
cp "${S}/doc/jemalloc.3" "${BUILD_DIR}/doc" || die
emake DESTDIR="${D}" install
}
multilib_src_install_all() {
if [[ ${CHOST} == *-darwin* ]] ; then
# fixup install_name, #437362
install_name_tool \
-id "${EPREFIX}"/usr/$(get_libdir)/libjemalloc.2.dylib \
"${ED}"/usr/$(get_libdir)/libjemalloc.2.dylib || die
fi
use static-libs || find "${ED}" -name '*.a' -delete
}

@ -0,0 +1,28 @@
commit 0d88b73d189ea3440ccaab00418d6469f76fa590
Author: Michal Hocko <mhocko@suse.com>
Date: Wed Jul 18 11:24:29 2018 +0200
cgrulesengd: remove umask(0)
One of our partners has noticed that cgred daemon is creating a log file
(/var/log/cgred) with too wide permissions (0666) and that is seen as
a security bug because an untrusted user can write to otherwise
restricted area. CVE-2018-14348 has been assigned to this issue.
Signed-off-by: Michal Hocko <mhocko@suse.com>
Acked-by: Balbir Singh <bsingharora@gmail.com>
diff --git a/src/daemon/cgrulesengd.c b/src/daemon/cgrulesengd.c
index ea51f11..0d288f3 100644
--- a/src/daemon/cgrulesengd.c
+++ b/src/daemon/cgrulesengd.c
@@ -889,9 +889,6 @@ int cgre_start_daemon(const char *logp, const int logf,
} else if (pid > 0) {
exit(EXIT_SUCCESS);
}
-
- /* Change the file mode mask. */
- umask(0);
} else {
flog(LOG_DEBUG, "Not using daemon mode\n");
pid = getpid();

@ -37,6 +37,7 @@ PATCHES=(
"${FILESDIR}"/${P}-replace_DECLS.patch
"${FILESDIR}"/${P}-replace_INLCUDES.patch
"${FILESDIR}"/${P}-reorder-headers.patch
"${FILESDIR}"/${P}-remove-umask.patch
)
src_prepare() {

@ -11,7 +11,7 @@ SRC_URI="https://github.com/linuxwacom/${PN}/archive/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 sparc x86"
IUSE="doc static-libs"
RDEPEND="

@ -11,7 +11,7 @@ SRC_URI="https://github.com/lloyd/yajl/tarball/${PV} -> ${P}.tar.gz"
LICENSE="ISC"
SLOT="0/2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs"
PATCHES=( "${FILESDIR}"/${P}-uclibc.patch )

@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="A simple, sane and efficient file slurper"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
IUSE="test"
RDEPEND="

Binary file not shown.

@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="Extremely flexible deep comparison testing"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
IUSE="test"
RDEPEND="

@ -11,7 +11,7 @@ inherit perl-module
DESCRIPTION="Traces memory leaks"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-fbsd ~x86-fbsd"
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-fbsd ~x86-fbsd"
IUSE=""
RDEPEND="

@ -9,7 +9,7 @@ inherit perl-module
DESCRIPTION="Skip tests when modules not available"
SLOT="0"
KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
IUSE="test"
RDEPEND=""

@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="Plain ASCII transliterations of Unicode text"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND=""

@ -11,7 +11,7 @@ inherit perl-module
DESCRIPTION="(Super)class for representing nodes in a tree"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
IUSE="test"
RDEPEND="

@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="Uniform Resource Identifiers (absolute and relative)"
SLOT="0"
KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
KEYWORDS="alpha amd64 ~arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
IUSE="test"
RDEPEND="

@ -10,7 +10,7 @@ inherit perl-module eutils
DESCRIPTION="Perl module for using and building Perl SAX2 XML parsers, filters, and drivers"
SLOT="0"
KEYWORDS="alpha ~amd64 ~arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="alpha ~amd64 ~arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE=""
RDEPEND="

Binary file not shown.

@ -1,2 +1,3 @@
DIST blessings-1.6.1.tar.gz 20122 BLAKE2B b2158f3fd538ef8641438bce7800efc9417e9febec6509d0e11389277b02ee03e661fe70198176a6a3578c216aeb4a6957da28d090cb1dc2849efff135cdf400 SHA512 7a4b051e448cddde7e8ce24106ce0d5d893eb442b19fff04f9ddf28381dfa1b4bdd4be79b87782162b2ead13597a346f533edb944130f2e5bc39aa936ca48db2
DIST blessings-1.6.tar.gz 19974 BLAKE2B 5b454c7199c637f9b8d4de69a92b8137e65b925898064f31dabb56bf4fd7af8b3374b7311bcd0369b668868bc2335ce945306c242c1bf58d6d7d50c09150c017 SHA512 5d0fc365416bf2b36b6de72f6b8c01bf0ab8df4a0148f492c80056a9ebd5d569e9c01966481e0d70a25add16da2bc3e73be933226369abca533ce019f97479f2
DIST blessings-1.7.tar.gz 22844 BLAKE2B 3694d3e421416bf876265fd0877240b2e0d61e8c58dfa63a6e74dd2f5efd2307cc4a0eef0e825adc0c0f37f6e78e15640362f9477c0dc5c89846416e16f180a9 SHA512 9b1e3eded3fa588c48898d88ba466836be8f25264ce908a2289504e8f13b01315ae1686ee34c0e3a44cdd2bf73da8c1b65e0aaf49ffc0e5b29c412a497c3d76e

@ -0,0 +1,42 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy{,3} python{2_7,3_{4,5,6,7}} )
inherit distutils-r1
DESCRIPTION="A thin, practical wrapper around terminal coloring, styling, and positioning"
HOMEPAGE="https://github.com/erikrose/blessings https://pypi.org/project/blessings/"
# https://github.com/erikrose/blessings/pull/136
SRC_URI="https://github.com/erikrose/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
SLOT="0"
LICENSE="MIT"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="doc test"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
test? (
${RDEPEND}
dev-python/nose[${PYTHON_USEDEP}]
)
"
python_compile_all() {
if use doc; then
sphinx-build docs/ docs/_build/html || die
HTML_DOCS=( docs/_build/html/. )
fi
}
python_test() {
# The tests need an interactive terminal
# https://github.com/erikrose/blessings/issues/117
script -eqc "nosetests -v -w \"${BUILD_DIR}\"" /dev/null \
|| die "tests failed with ${EPYTHON}"
}

@ -3,7 +3,7 @@
EAPI=6
PYTHON_COMPAT=( python2_7 python3_{5,6} )
PYTHON_COMPAT=( python2_7 python3_{5..7} )
inherit distutils-r1
DESCRIPTION="A library for wrapping and filling UTF-8 CJK text"

@ -13,11 +13,11 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://libvirt.org/git/libvirt-python.git"
SRC_URI=""
KEYWORDS=""
KEYWORDS="amd64 x86"
RDEPEND="app-emulation/libvirt:=[-python(-)]"
else
SRC_URI="https://libvirt.org/sources/python/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 ~arm64 x86"
RDEPEND="app-emulation/libvirt:0/${PV}"
fi
S="${WORKDIR}/${P%_rc*}"

@ -1,8 +1,8 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=(python{2_7,3_4,3_5,3_6})
PYTHON_COMPAT=( python{2_7,3_{4..7}} )
inherit distutils-r1

@ -1,2 +1,3 @@
DIST fastimport-0.9.6.tar.gz 33333 BLAKE2B 46e654c26bd388a61ae0717b66294dbc1261aca9a2b6e1823e6d8afad014fd21d0ea54e70e018ba79cc45dc6111ccf84a4eb68e053c0812773a4c25cb32e0569 SHA512 cc38c1218d65ef4a9e3a68d8af3fadf98c7cc0dcd8075b338b8f492d25765bc2fe2247000868fd3c95e1f7f4c2b9a05964ef7b4f9196c2777f6a7941f127f416
DIST fastimport-0.9.8.tar.gz 39512 BLAKE2B 484ba865e749cca33df73417285e51a9117e7c905ab2922588d6eef9a64ea6b3d72de285a2affbe7d4a770ead9ece30f6242777087af1c469d59c8f2a4e1b008 SHA512 5d195b641cf6138fdbc6c75781a4a6d3699e3ada9743bbe4c4264879b2da2f8a2e995e7cc3955a5241e9c7a7f24f8114474a0a30907f86e2e335e2be4669f588
DIST python-fastimport-0.9.2.tar.gz 30762 BLAKE2B 2484e02077017c5534afafcc17627bef8875379bd8e66b5610408b5b11feb6db32cd9e97905a9ff3bc23cc58f6e01255bb3e18ea6fa66e0d077a42504e0def39 SHA512 8fd9f89267ca88edff94cea7537740431d02680a1eebd085ee376954b47bf5222e7575750895d0d2da246694cdac7a5afe50d857b87c0f36e04eb3511bcbe472

@ -5,6 +5,10 @@
<email>tetromino@gentoo.org</email>
<name>Alexandre Rostovtsev</name>
</maintainer>
<maintainer type="project">
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
<upstream>
<remote-id type="github">jelmer/python-fastimport</remote-id>
<bugs-to>https://github.com/jelmer/python-fastimport/issues</bugs-to>

@ -0,0 +1,28 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy{,3} python{2_7,3_{4,5,6,7}} )
inherit distutils-r1
MY_PN="${PN#python-}"
MY_P="${MY_PN}-${PV}"
DESCRIPTION="Library for parsing the fastimport VCS serialization format"
HOMEPAGE="https://github.com/jelmer/python-fastimport"
SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="test"
BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
S="${WORKDIR}/${MY_P}"
python_test() {
"${EPYTHON}" -m unittest -v fastimport.tests.test_suite \
|| die "Tests fail with ${EPYTHON}"
}

@ -0,0 +1,65 @@
commit acfda9c26df888741805249f3ec0f60f369fc664
Author: Louis Sautier <sautier.louis@gmail.com>
Date: Tue Aug 14 11:14:19 2018 +0200
Tests: allow differences when reading a buffer or a file, fixes #173
Also remove the loop in order to avoid analyzing files or buffers for each
expected value, replace it with a call to assertIn().
diff --git a/test/test.py b/test/test.py
index addccc6..67957ee 100755
--- a/test/test.py
+++ b/test/test.py
@@ -10,7 +10,7 @@ import magic
class MagicTest(unittest.TestCase):
TESTDATA_DIR = os.path.join(os.path.dirname(__file__), 'testdata')
- def assert_values(self, m, expected_values):
+ def assert_values(self, m, expected_values, buf_equals_file=True):
for filename, expected_value in expected_values.items():
try:
filename = os.path.join(self.TESTDATA_DIR, filename)
@@ -21,15 +21,16 @@ class MagicTest(unittest.TestCase):
if type(expected_value) is not tuple:
expected_value = (expected_value,)
- for i in expected_value:
- with open(filename, 'rb') as f:
- buf_value = m.from_buffer(f.read())
+ with open(filename, 'rb') as f:
+ buf_value = m.from_buffer(f.read())
- file_value = m.from_file(filename)
- if buf_value == i and file_value == i:
- break
- else:
- self.assertTrue(False, "no match for " + repr(expected_value))
+ file_value = m.from_file(filename)
+
+ if buf_equals_file:
+ self.assertEqual(buf_value, file_value)
+
+ for value in (buf_value, file_value):
+ self.assertIn(value, expected_value)
def test_from_buffer_str_and_bytes(self):
m = magic.Magic(mime=True)
@@ -62,10 +63,14 @@ class MagicTest(unittest.TestCase):
'magic._pyc_': 'python 2.4 byte-compiled',
'test.pdf': 'PDF document, version 1.2',
'test.gz':
- ('gzip compressed data, was "test", from Unix, last modified: Sun Jun 29 01:32:52 2008',
- 'gzip compressed data, was "test", last modified: Sun Jun 29 01:32:52 2008, from Unix'),
+ ('gzip compressed data, was "test", from Unix, last '
+ 'modified: Sun Jun 29 01:32:52 2008',
+ 'gzip compressed data, was "test", last modified'
+ ': Sun Jun 29 01:32:52 2008, from Unix',
+ 'gzip compressed data, was "test", last modified'
+ ': Sun Jun 29 01:32:52 2008, from Unix, original size 15'),
'text.txt': 'ASCII text',
- })
+ }, buf_equals_file=False)
finally:
del os.environ['TZ']

@ -0,0 +1,19 @@
commit e83487a20bacd4f9b33d0478861671bf79468f59
Author: Louis Sautier <sautier.louis@gmail.com>
Date: Mon Aug 13 12:15:13 2018 +0200
Allow x-gzip as MIME type for gzip files, fixes #96
diff --git a/test/test.py b/test/test.py
index e29335f..e3ee703 100755
--- a/test/test.py
+++ b/test/test.py
@@ -54,7 +54,7 @@ class MagicTest(unittest.TestCase):
self.assert_values(m, {
'magic._pyc_': 'application/octet-stream',
'test.pdf': 'application/pdf',
- 'test.gz': 'application/gzip',
+ 'test.gz': ('application/gzip', 'application/x-gzip'),
'text.txt': 'text/plain',
b'\xce\xbb'.decode('utf-8'): 'text/plain',
b'\xce\xbb': 'text/plain',

@ -0,0 +1,49 @@
commit 4bda684f8b461cc1f69593799efcf6afe8397756
Author: Adam Hupp <adam@hupp.org>
Date: Sat Dec 9 09:09:00 2017 -0800
fix test for xenial since travis started enabling it
diff --git a/test/test.py b/test/test.py
index addccc6..c6e2d9c 100755
--- a/test/test.py
+++ b/test/test.py
@@ -17,7 +17,7 @@ class MagicTest(unittest.TestCase):
except TypeError:
filename = os.path.join(self.TESTDATA_DIR.encode('utf-8'), filename)
-
+
if type(expected_value) is not tuple:
expected_value = (expected_value,)
@@ -37,7 +37,7 @@ class MagicTest(unittest.TestCase):
self.assertEqual("text/x-python", m.from_buffer(s))
b = b'#!/usr/bin/env python\nprint("foo")'
self.assertEqual("text/x-python", m.from_buffer(b))
-
+
def test_mime_types(self):
dest = os.path.join(MagicTest.TESTDATA_DIR, b'\xce\xbb'.decode('utf-8'))
shutil.copyfile(os.path.join(MagicTest.TESTDATA_DIR, 'lambda'), dest)
@@ -92,9 +92,9 @@ class MagicTest(unittest.TestCase):
m = magic.Magic(mime=True)
self.assertEqual(m.from_file(filename), 'image/jpeg')
-
+
m = magic.Magic(mime=True, keep_going=True)
- self.assertEqual(m.from_file(filename), 'image/jpeg')
+ self.assertEqual(m.from_file(filename), 'image/jpeg\\012- application/octet-stream')
def test_rethrow(self):
@@ -103,7 +103,7 @@ class MagicTest(unittest.TestCase):
def t(x,y):
raise magic.MagicException("passthrough")
magic.magic_buffer = t
-
+
self.assertRaises(magic.MagicException, magic.from_buffer, "hello", True)
finally:
magic.magic_buffer = old

@ -0,0 +1,37 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy{,3} python{2_7,3_{4,5,6,7}} )
inherit distutils-r1
DESCRIPTION="Access the libmagic file type identification library"
HOMEPAGE="https://github.com/ahupp/python-magic"
# https://github.com/ahupp/python-magic/pull/178
SRC_URI="https://github.com/ahupp/python-magic/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~hppa ~ia64 ~x86"
IUSE="test"
RDEPEND="sys-apps/file[-python]"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
test? ( ${RDEPEND} )
"
PATCHES=(
# https://github.com/ahupp/python-magic/pull/177
"${FILESDIR}/${P}-fix-buffer-test.patch"
# https://github.com/ahupp/python-magic/pull/176
"${FILESDIR}/${P}-fix-gzip-test.patch"
# https://github.com/ahupp/python-magic/commit/4bda684f8b461cc1f69593799efcf6afe8397756
"${FILESDIR}/${P}-fix-jpeg-test.patch"
)
python_test() {
"${EPYTHON}" test/test.py -v || die "Tests fail with ${EPYTHON}"
}

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python{2_7,3_{5,6}} )
PYTHON_COMPAT=( python{2_7,3_{5..7}} )
inherit distutils-r1

Binary file not shown.

@ -1 +1,2 @@
DIST hiera-3.4.3.gem 40960 BLAKE2B a4747c6096065c1272bd3099893d27c53b5e869be16643fbd59fa0eead692e3bd082fcbf82463614336d00c3068244bd632fd6c3a87ba520566a8643f674bfc4 SHA512 126e626b9c9020f2b8565aaff35f30b35c73785120425d186c97186c5bdfafc4831216250f78fd33ffd5e1dde49646b262887747c0d73442a252c391329959e2
DIST hiera-3.4.4.gem 41472 BLAKE2B 12c098d4cbf3bbf5980a4638d7dd7a67a56b9874c96e5be483335be2e0c9ac2417b7e187737c40c9cfa4f1d822f7d3bd9ac74f96e2df040c7aa029b82f295304 SHA512 bfac2d76cca90708a52f907a31c35f8e3944d50d473e3f17ad13f3673ab2efed0ee9edcbb4c40242f398ab2e3bd08b249b191a6b9d534c185ed540802684beca

@ -0,0 +1,25 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
USE_RUBY="ruby23 ruby24 ruby25"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="README.md"
inherit ruby-fakegem
DESCRIPTION="A simple pluggable Hierarchical Database"
HOMEPAGE="https://docs.puppet.com/hiera/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86"
ruby_add_bdepend "test? ( dev-ruby/mocha )"
ruby_add_rdepend "dev-ruby/deep_merge"

Binary file not shown.

@ -1 +1,2 @@
DIST gnome-nibbles-3.24.0.tar.xz 1614604 BLAKE2B 04ba4f761bf21af466cb7761a8d7ac511f92871548df9e8ff8950efe6ea95c3674e00360dc9c3e02ce670dc66ae7639094c9c8c53fe0a0134089db976976ce99 SHA512 716a79541fa8dd0f86cce5bc211574d4ad50f762bb2b74a2881ad4adcdde47520784f67672e2da3fb33fbc60928d710a2afebb8997d6dd10f633289e0d8163b7
DIST gnome-nibbles-3.24.1.tar.xz 1651024 BLAKE2B 99b3f4f2e0c3a2ec8b75cf137f6e73848461fb20cbed55e6aef216f357babd67dd449ec36fde87084acf3b8f014b813672a75e1dbe11d33ee8fcc3e52af2a903 SHA512 7f3d7240f64429398dae1cdee96d912a22a4f534752d656ab470bcaa8515e005c8b7015e93b162ba24c3b891a64f3b3b84639c2254c1c7e6c45aea229492cc02

@ -0,0 +1,38 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
VALA_MIN_API_VERSION="0.28"
inherit gnome2 vala
DESCRIPTION="Nibbles clone for Gnome"
HOMEPAGE="https://wiki.gnome.org/Apps/Nibbles"
LICENSE="GPL-3+ CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
RDEPEND="
>=dev-libs/glib-2.40.0:2
dev-libs/libgee:0.8=
dev-libs/libgnome-games-support:1
>=media-libs/clutter-1.22.0:1.0
>=media-libs/clutter-gtk-1.4.0:1.0
>=media-libs/libcanberra-0.26[gtk3]
>=x11-libs/gtk+-3.18.0:3
"
DEPEND="${RDEPEND}
$(vala_depend)
app-text/yelp-tools
dev-libs/appstream-glib
>=dev-util/intltool-0.50.2
sys-devel/gettext
virtual/pkgconfig
"
src_prepare() {
gnome2_src_prepare
vala_src_prepare
}

Binary file not shown.

@ -12,7 +12,7 @@ HOMEPAGE="https://www.linux-apps.com/content/show.php?action=content&content=114
SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
LICENSE="GPL-2"
KEYWORDS="~amd64 ~x86"
KEYWORDS="~amd64 x86"
IUSE=""
CDEPEND="

Binary file not shown.

@ -1 +1 @@
DIST protonmail-bridge-1.0.5-1.x86_64.rpm 46864229 BLAKE2B bfd35880dd172dd4fc2352f28f9dc9e57049a114b15fbcc2f462c286e005276ac78b14ea2eab074f5e767aa39f6d58138d06118b8f5618d38e3aa977ceb7a725 SHA512 11a9230dd6ba9655b17cccc2a84529ea32852fe237e5174948aa711d9afe44fb3db3d29175933aa1f4dfffaf06207e6d38b815a0cce1f9d23e116a7cf9895f64
DIST protonmail-bridge-1.0.6-2.x86_64.rpm 46921976 BLAKE2B 0e56ad21f9bf2a94400db3b27ade946bbec5016481674eba0a36e89169fd8136ec3d8f8ae422b579fba5a9c7ac00cab569c97774a5f014764e1f98a5b712be1f SHA512 63adda37a08179d29cba935572d9e39023c225338f2467c1f0a747817321285592870e38d1b8ad1053c2ce86e9dae7681cb02609936c065a18fa954516c42041

@ -1,188 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit rpm
DESCRIPTION="Serves ProtonMail to IMAP/SMTP clients"
HOMEPAGE="https://protonmail.com/bridge/"
SRC_URI="https://protonmail.com/download/${P/-bin/}-1.x86_64.rpm"
RESTRICT="bindist mirror"
LICENSE="MIT protonmail-bridge-EULA"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
DEPEND=""
RDEPEND="
app-crypt/libsecret
dev-libs/glib:2
media-sound/pulseaudio
sys-apps/dbus
virtual/opengl
media-libs/fontconfig
media-libs/freetype
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libxcb
x11-libs/libXext
x11-libs/libXi
"
BDEPEND="dev-util/patchelf"
S="${WORKDIR}"
QA_PREBUILT="*"
src_prepare() {
# Bug #660366. To workaround preserving libs, set RUNPATH and rm unused libs
cd "${S}/usr/lib/protonmail/bridge" || die
patchelf --set-rpath '$ORIGIN/lib' Desktop-Bridge || die "patchelf failed"
patchelf --set-rpath '$ORIGIN' lib/libicui18n.so.56 || die "patchelf failed"
patchelf --set-rpath '$ORIGIN' lib/libicuuc.so.56 || die "patchelf failed"
rm "lib/libQt53DCore.so.5"
rm "lib/libQt53DExtras.so.5"
rm "lib/libQt53DInput.so.5"
rm "lib/libQt53DLogic.so.5"
rm "lib/libQt53DQuick.so.5"
rm "lib/libQt53DQuickExtras.so.5"
rm "lib/libQt53DQuickInput.so.5"
rm "lib/libQt53DQuickRender.so.5"
rm "lib/libQt53DRender.so.5"
rm "lib/libQt5Concurrent.so.5"
rm "lib/libQt5Gamepad.so.5"
rm "lib/libQt5QuickParticles.so.5"
rm "lib/libqgsttools_p.so.1"
rm "plugins/audio/libqtaudio_alsa.so"
rm "plugins/audio/libqtmedia_pulse.so"
rm "plugins/bearer/libqconnmanbearer.so"
rm "plugins/bearer/libqgenericbearer.so"
rm "plugins/bearer/libqnmbearer.so"
rm "plugins/canbus/libqtpeakcanbus.so"
rm "plugins/canbus/libqtsocketcanbus.so"
rm "plugins/canbus/libqttinycanbus.so"
rm "plugins/designer/libqquickwidget.so"
rm "plugins/designer/libqwebengineview.so"
rm "plugins/egldeviceintegrations/libqeglfs-emu-integration.so"
rm "plugins/egldeviceintegrations/libqeglfs-x11-integration.so"
rm "plugins/gamepads/libevdevgamepad.so"
rm "plugins/generic/libqevdevkeyboardplugin.so"
rm "plugins/generic/libqevdevmouseplugin.so"
rm "plugins/generic/libqevdevtabletplugin.so"
rm "plugins/generic/libqevdevtouchplugin.so"
rm "plugins/generic/libqtuiotouchplugin.so"
rm "plugins/geometryloaders/libdefaultgeometryloader.so"
rm "plugins/geometryloaders/libgltfgeometryloader.so"
rm "plugins/geoservices/libqtgeoservices_esri.so"
rm "plugins/geoservices/libqtgeoservices_itemsoverlay.so"
rm "plugins/geoservices/libqtgeoservices_mapbox.so"
rm "plugins/geoservices/libqtgeoservices_mapboxgl.so"
rm "plugins/geoservices/libqtgeoservices_nokia.so"
rm "plugins/geoservices/libqtgeoservices_osm.so"
rm "plugins/iconengines/libqsvgicon.so"
rm "plugins/imageformats/libqjp2.so"
rm "plugins/mediaservice/libgstaudiodecoder.so"
rm "plugins/mediaservice/libgstcamerabin.so"
rm "plugins/mediaservice/libgstmediacapture.so"
rm "plugins/mediaservice/libgstmediaplayer.so"
rm "plugins/platforminputcontexts/libibusplatforminputcontextplugin.so"
rm "plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so"
rm "plugins/platforms/libqeglfs.so"
rm "plugins/platforms/libqlinuxfb.so"
rm "plugins/platforms/libqminimal.so"
rm "plugins/platforms/libqminimalegl.so"
rm "plugins/platforms/libqoffscreen.so"
rm "plugins/platforms/libqvnc.so"
rm "plugins/platformthemes/libqgtk3.so"
rm "plugins/playlistformats/libqtmultimedia_m3u.so"
rm "plugins/position/libqtposition_geoclue.so"
rm "plugins/position/libqtposition_positionpoll.so"
rm "plugins/printsupport/libcupsprintersupport.so"
rm "plugins/qmltooling/libqmldbg_debugger.so"
rm "plugins/qmltooling/libqmldbg_inspector.so"
rm "plugins/qmltooling/libqmldbg_local.so"
rm "plugins/qmltooling/libqmldbg_messages.so"
rm "plugins/qmltooling/libqmldbg_native.so"
rm "plugins/qmltooling/libqmldbg_nativedebugger.so"
rm "plugins/qmltooling/libqmldbg_profiler.so"
rm "plugins/qmltooling/libqmldbg_quickprofiler.so"
rm "plugins/qmltooling/libqmldbg_server.so"
rm "plugins/qmltooling/libqmldbg_tcp.so"
rm "plugins/renderplugins/libscene2d.so"
rm "plugins/sceneparsers/libassimpsceneimport.so"
rm "plugins/sceneparsers/libgltfsceneexport.so"
rm "plugins/sceneparsers/libgltfsceneimport.so"
rm "plugins/sensorgestures/libqtsensorgestures_plugin.so"
rm "plugins/sensorgestures/libqtsensorgestures_shakeplugin.so"
rm "plugins/sensors/libqtsensors_generic.so"
rm "plugins/sensors/libqtsensors_iio-sensor-proxy.so"
rm "plugins/sensors/libqtsensors_linuxsys.so"
rm "plugins/sqldrivers/libqsqlite.so"
rm "plugins/sqldrivers/libqsqlmysql.so"
rm "plugins/sqldrivers/libqsqlpsql.so"
rm "plugins/xcbglintegrations/libqxcb-egl-integration.so"
rm "qml/Qt/labs/calendar/libqtlabscalendarplugin.so"
rm "qml/Qt/labs/folderlistmodel/libqmlfolderlistmodelplugin.so"
rm "qml/Qt/labs/platform/libqtlabsplatformplugin.so"
rm "qml/Qt/labs/settings/libqmlsettingsplugin.so"
rm "qml/Qt/labs/sharedimage/libsharedimageplugin.so"
rm "qml/Qt3D/Animation/libquick3danimationplugin.so"
rm "qml/Qt3D/Core/libquick3dcoreplugin.so"
rm "qml/Qt3D/Extras/libquick3dextrasplugin.so"
rm "qml/Qt3D/Input/libquick3dinputplugin.so"
rm "qml/Qt3D/Logic/libquick3dlogicplugin.so"
rm "qml/Qt3D/Render/libquick3drenderplugin.so"
rm "qml/QtBluetooth/libdeclarative_bluetooth.so"
rm "qml/QtCanvas3D/libqtcanvas3d.so"
rm "qml/QtCharts/libqtchartsqml2.so"
rm "qml/QtDataVisualization/libdatavisualizationqml2.so"
rm "qml/QtGamepad/libdeclarative_gamepad.so"
rm "qml/QtLocation/libdeclarative_location.so"
rm "qml/QtMultimedia/libdeclarative_multimedia.so"
rm "qml/QtNfc/libdeclarative_nfc.so"
rm "qml/QtPositioning/libdeclarative_positioning.so"
rm "qml/QtPurchasing/libdeclarative_purchasing.so"
rm "qml/QtQml/Models.2/libmodelsplugin.so"
rm "qml/QtQml/StateMachine/libqtqmlstatemachine.so"
rm "qml/QtQuick/Controls.2/Material/libqtquickcontrols2materialstyleplugin.so"
rm "qml/QtQuick/Controls.2/Universal/libqtquickcontrols2universalstyleplugin.so"
rm "qml/QtQuick/Controls/Styles/Flat/libqtquickextrasflatplugin.so"
rm "qml/QtQuick/Controls/libqtquickcontrolsplugin.so"
rm "qml/QtQuick/Dialogs/Private/libdialogsprivateplugin.so"
rm "qml/QtQuick/Dialogs/libdialogplugin.so"
rm "qml/QtQuick/Extras/libqtquickextrasplugin.so"
rm "qml/QtQuick/LocalStorage/libqmllocalstorageplugin.so"
rm "qml/QtQuick/Particles.2/libparticlesplugin.so"
rm "qml/QtQuick/PrivateWidgets/libwidgetsplugin.so"
rm "qml/QtQuick/Scene2D/libqtquickscene2dplugin.so"
rm "qml/QtQuick/Scene3D/libqtquickscene3dplugin.so"
rm "qml/QtQuick/VirtualKeyboard/Styles/libqtvirtualkeyboardstylesplugin.so"
rm "qml/QtQuick/XmlListModel/libqmlxmllistmodelplugin.so"
rm "qml/QtScxml/libdeclarative_scxml.so"
rm "qml/QtSensors/libdeclarative_sensors.so"
rm "qml/QtTest/libqmltestplugin.so"
rm "qml/QtWebChannel/libdeclarative_webchannel.so"
rm "qml/QtWebEngine/libqtwebengineplugin.so"
rm "qml/QtWebSockets/libdeclarative_qmlwebsockets.so"
rm "qml/QtWebView/libdeclarative_webview.so"
default
}
src_install() {
# Using doins -r would strip executable bits from all binaries
cp -pPR "${S}"/usr "${D}"/ || die "Failed to copy files"
dosym "Desktop-Bridge" "/usr/bin/${PN}" || die
cat <<-EOF > "${T}/50-${PN}" || die
SEARCH_DIRS_MASK="/usr/lib*/protonmail/bridge"
EOF
insinto /etc/revdep-rebuild
doins "${T}/50-${PN}"
}

@ -0,0 +1,187 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit rpm
DESCRIPTION="Serves ProtonMail to IMAP/SMTP clients"
HOMEPAGE="https://protonmail.com/bridge/"
SRC_URI="https://protonmail.com/download/${P/-bin/}-2.x86_64.rpm"
RESTRICT="bindist mirror"
LICENSE="MIT protonmail-bridge-EULA"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
DEPEND=""
RDEPEND="
app-crypt/libsecret
dev-libs/glib:2
media-sound/pulseaudio
sys-apps/dbus
virtual/opengl
media-libs/fontconfig
media-libs/freetype
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libxcb
x11-libs/libXext
x11-libs/libXi
"
BDEPEND="dev-util/patchelf"
S="${WORKDIR}"
QA_PREBUILT="*"
src_prepare() {
# Bug #660366. To workaround preserving libs, set RUNPATH and rm unused libs
cd "${S}/usr/lib/protonmail/bridge" || die
patchelf --set-rpath '$ORIGIN/lib' Desktop-Bridge || die "patchelf failed"
patchelf --set-rpath '$ORIGIN' lib/libicui18n.so.56 || die "patchelf failed"
patchelf --set-rpath '$ORIGIN' lib/libicuuc.so.56 || die "patchelf failed"
rm "lib/libQt53DCore.so.5" || die
rm "lib/libQt53DExtras.so.5" || die
rm "lib/libQt53DInput.so.5" || die
rm "lib/libQt53DLogic.so.5" || die
rm "lib/libQt53DQuick.so.5" || die
rm "lib/libQt53DQuickExtras.so.5" || die
rm "lib/libQt53DQuickInput.so.5" || die
rm "lib/libQt53DQuickRender.so.5" || die
rm "lib/libQt53DRender.so.5" || die
rm "lib/libQt5Concurrent.so.5" || die
rm "lib/libQt5Gamepad.so.5" || die
rm "lib/libQt5QuickParticles.so.5" || die
rm "lib/libqgsttools_p.so.1" || die
rm "plugins/audio/libqtaudio_alsa.so" || die
rm "plugins/audio/libqtmedia_pulse.so" || die
rm "plugins/bearer/libqconnmanbearer.so" || die
rm "plugins/bearer/libqgenericbearer.so" || die
rm "plugins/bearer/libqnmbearer.so" || die
rm "plugins/canbus/libqtpeakcanbus.so" || die
rm "plugins/canbus/libqtsocketcanbus.so" || die
rm "plugins/canbus/libqttinycanbus.so" || die
rm "plugins/designer/libqquickwidget.so" || die
rm "plugins/designer/libqwebengineview.so" || die
rm "plugins/egldeviceintegrations/libqeglfs-emu-integration.so" || die
rm "plugins/egldeviceintegrations/libqeglfs-x11-integration.so" || die
rm "plugins/gamepads/libevdevgamepad.so" || die
rm "plugins/generic/libqevdevkeyboardplugin.so" || die
rm "plugins/generic/libqevdevmouseplugin.so" || die
rm "plugins/generic/libqevdevtabletplugin.so" || die
rm "plugins/generic/libqevdevtouchplugin.so" || die
rm "plugins/generic/libqtuiotouchplugin.so" || die
rm "plugins/geometryloaders/libdefaultgeometryloader.so" || die
rm "plugins/geometryloaders/libgltfgeometryloader.so" || die
rm "plugins/geoservices/libqtgeoservices_esri.so" || die
rm "plugins/geoservices/libqtgeoservices_itemsoverlay.so" || die
rm "plugins/geoservices/libqtgeoservices_mapbox.so" || die
rm "plugins/geoservices/libqtgeoservices_mapboxgl.so" || die
rm "plugins/geoservices/libqtgeoservices_nokia.so" || die
rm "plugins/geoservices/libqtgeoservices_osm.so" || die
rm "plugins/iconengines/libqsvgicon.so" || die
rm "plugins/imageformats/libqjp2.so" || die
rm "plugins/mediaservice/libgstaudiodecoder.so" || die
rm "plugins/mediaservice/libgstcamerabin.so" || die
rm "plugins/mediaservice/libgstmediacapture.so" || die
rm "plugins/mediaservice/libgstmediaplayer.so" || die
rm "plugins/platforminputcontexts/libibusplatforminputcontextplugin.so" || die
rm "plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so" || die
rm "plugins/platforms/libqeglfs.so" || die
rm "plugins/platforms/libqlinuxfb.so" || die
rm "plugins/platforms/libqminimal.so" || die
rm "plugins/platforms/libqminimalegl.so" || die
rm "plugins/platforms/libqoffscreen.so" || die
rm "plugins/platforms/libqvnc.so" || die
rm "plugins/platformthemes/libqgtk3.so" || die
rm "plugins/playlistformats/libqtmultimedia_m3u.so" || die
rm "plugins/position/libqtposition_geoclue.so" || die
rm "plugins/position/libqtposition_positionpoll.so" || die
rm "plugins/printsupport/libcupsprintersupport.so" || die
rm "plugins/qmltooling/libqmldbg_debugger.so" || die
rm "plugins/qmltooling/libqmldbg_inspector.so" || die
rm "plugins/qmltooling/libqmldbg_local.so" || die
rm "plugins/qmltooling/libqmldbg_messages.so" || die
rm "plugins/qmltooling/libqmldbg_native.so" || die
rm "plugins/qmltooling/libqmldbg_nativedebugger.so" || die
rm "plugins/qmltooling/libqmldbg_profiler.so" || die
rm "plugins/qmltooling/libqmldbg_quickprofiler.so" || die
rm "plugins/qmltooling/libqmldbg_server.so" || die
rm "plugins/qmltooling/libqmldbg_tcp.so" || die
rm "plugins/renderplugins/libscene2d.so" || die
rm "plugins/sceneparsers/libassimpsceneimport.so" || die
rm "plugins/sceneparsers/libgltfsceneexport.so" || die
rm "plugins/sceneparsers/libgltfsceneimport.so" || die
rm "plugins/sensorgestures/libqtsensorgestures_plugin.so" || die
rm "plugins/sensorgestures/libqtsensorgestures_shakeplugin.so" || die
rm "plugins/sensors/libqtsensors_generic.so" || die
rm "plugins/sensors/libqtsensors_iio-sensor-proxy.so" || die
rm "plugins/sensors/libqtsensors_linuxsys.so" || die
rm "plugins/sqldrivers/libqsqlite.so" || die
rm "plugins/sqldrivers/libqsqlmysql.so" || die
rm "plugins/sqldrivers/libqsqlpsql.so" || die
rm "plugins/xcbglintegrations/libqxcb-egl-integration.so" || die
rm "qml/Qt/labs/calendar/libqtlabscalendarplugin.so" || die
rm "qml/Qt/labs/folderlistmodel/libqmlfolderlistmodelplugin.so" || die
rm "qml/Qt/labs/platform/libqtlabsplatformplugin.so" || die
rm "qml/Qt/labs/settings/libqmlsettingsplugin.so" || die
rm "qml/Qt/labs/sharedimage/libsharedimageplugin.so" || die
rm "qml/Qt3D/Animation/libquick3danimationplugin.so" || die
rm "qml/Qt3D/Core/libquick3dcoreplugin.so" || die
rm "qml/Qt3D/Extras/libquick3dextrasplugin.so" || die
rm "qml/Qt3D/Input/libquick3dinputplugin.so" || die
rm "qml/Qt3D/Logic/libquick3dlogicplugin.so" || die
rm "qml/Qt3D/Render/libquick3drenderplugin.so" || die
rm "qml/QtBluetooth/libdeclarative_bluetooth.so" || die
rm "qml/QtCanvas3D/libqtcanvas3d.so" || die
rm "qml/QtCharts/libqtchartsqml2.so" || die
rm "qml/QtDataVisualization/libdatavisualizationqml2.so" || die
rm "qml/QtGamepad/libdeclarative_gamepad.so" || die
rm "qml/QtLocation/libdeclarative_location.so" || die
rm "qml/QtMultimedia/libdeclarative_multimedia.so" || die
rm "qml/QtNfc/libdeclarative_nfc.so" || die
rm "qml/QtPositioning/libdeclarative_positioning.so" || die
rm "qml/QtPurchasing/libdeclarative_purchasing.so" || die
rm "qml/QtQml/Models.2/libmodelsplugin.so" || die
rm "qml/QtQml/StateMachine/libqtqmlstatemachine.so" || die
rm "qml/QtQuick/Controls.2/Material/libqtquickcontrols2materialstyleplugin.so" || die
rm "qml/QtQuick/Controls.2/Universal/libqtquickcontrols2universalstyleplugin.so" || die
rm "qml/QtQuick/Controls/Styles/Flat/libqtquickextrasflatplugin.so" || die
rm "qml/QtQuick/Controls/libqtquickcontrolsplugin.so" || die
rm "qml/QtQuick/Dialogs/Private/libdialogsprivateplugin.so" || die
rm "qml/QtQuick/Dialogs/libdialogplugin.so" || die
rm "qml/QtQuick/Extras/libqtquickextrasplugin.so" || die
rm "qml/QtQuick/LocalStorage/libqmllocalstorageplugin.so" || die
rm "qml/QtQuick/Particles.2/libparticlesplugin.so" || die
rm "qml/QtQuick/PrivateWidgets/libwidgetsplugin.so" || die
rm "qml/QtQuick/Scene2D/libqtquickscene2dplugin.so" || die
rm "qml/QtQuick/Scene3D/libqtquickscene3dplugin.so" || die
rm "qml/QtQuick/VirtualKeyboard/Styles/libqtvirtualkeyboardstylesplugin.so" || die
rm "qml/QtQuick/XmlListModel/libqmlxmllistmodelplugin.so" || die
rm "qml/QtScxml/libdeclarative_scxml.so" || die
rm "qml/QtSensors/libdeclarative_sensors.so" || die
rm "qml/QtTest/libqmltestplugin.so" || die
rm "qml/QtWebChannel/libdeclarative_webchannel.so" || die
rm "qml/QtWebEngine/libqtwebengineplugin.so" || die
rm "qml/QtWebSockets/libdeclarative_qmlwebsockets.so" || die
rm "qml/QtWebView/libdeclarative_webview.so" || die
default
}
src_install() {
# Using doins -r would strip executable bits from all binaries
cp -pPR usr "${D}"/ || die "Failed to copy files"
dosym "Desktop-Bridge" "/usr/bin/${PN}"
insinto /etc/revdep-rebuild
newins - "50-${PN}" <<-EOF
SEARCH_DIRS_MASK="/usr/lib*/protonmail/bridge"
EOF
}

Binary file not shown.

@ -9,7 +9,7 @@ SRC_URI="https://www.lcdf.org/~eddietwo/${PN}/${P}.tar.gz"
LICENSE="GPL-2 MIT"
SLOT="0"
KEYWORDS="~alpha amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
KEYWORDS="~alpha amd64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE="X"
RDEPEND="

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="https://fontconfig.org/release/${P}.tar.bz2"
LICENSE="MIT"
SLOT="1.0"
[[ $(ver_cut 3) -ge 90 ]] || \
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc ~x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="doc static-libs"
# Purposefully dropped the xml USE flag and libxml2 support. Expat is the

@ -12,7 +12,7 @@ SRC_URI="mirror://sourceforge/sbsms/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~mips ~ppc ~ppc64 ~x86"
KEYWORDS="~amd64 ~mips ~ppc ~ppc64 x86"
IUSE="cpu_flags_x86_sse static-libs"
PATCHES=( "${FILESDIR}/${P}-cflags.patch" )

@ -1,7 +1,7 @@
http://bugs.gentoo.org/show_bug.cgi?id=247761
--- config/NetAudio.tmpl
+++ config/NetAudio.tmpl
--- a/config/NetAudio.tmpl
+++ b/config/NetAudio.tmpl
@@ -162,7 +162,7 @@
AUDIODEPLIBS = $(DEPAULIB) $(DEPXTOOLLIB) $(DEPXLIB)

@ -0,0 +1,12 @@
diff -pur nas-1.9.4-orig/server/Imakefile nas-1.9.4/server/Imakefile
--- a/server/Imakefile 2013-04-27 02:41:06.000000000 +0200
+++ b/server/Imakefile 2017-03-14 18:58:27.445311356 +0100
@@ -57,7 +57,7 @@ XCOMM $NCDId: @(#)Imakefile,v 1.17 1995/
# endif
#else
- SYSLIBS =
+ SYSLIBS = $(LEXLIB)
#endif
#ifdef NetBSDArchitecture

@ -1,19 +1,21 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils multilib toolchain-funcs multilib-minimal
EAPI=7
inherit multilib-minimal toolchain-funcs
DESCRIPTION="Network Audio System"
HOMEPAGE="http://radscan.com/nas.html"
HOMEPAGE="https://radscan.com/nas.html"
SRC_URI="mirror://sourceforge/${PN}/${P}.src.tar.gz"
LICENSE="HPND MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc x86 ~x86-fbsd"
IUSE="doc static-libs"
RDEPEND="x11-libs/libICE
RDEPEND="
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
>=x11-libs/libXau-1.0.7-r1[${MULTILIB_USEDEP}]
@ -32,10 +34,14 @@ DEPEND="${RDEPEND}
DOCS=( BUILDNOTES FAQ HISTORY README RELEASE TODO )
src_prepare() {
epatch "${FILESDIR}"/${PN}-1.9.2-asneeded.patch
epatch "${FILESDIR}"/${PN}-1.9.4-remove-abs-fabs.patch
PATCHES=(
"${FILESDIR}"/${PN}-1.9.2-asneeded.patch
"${FILESDIR}"/${PN}-1.9.4-remove-abs-fabs.patch
"${FILESDIR}"/${PN}-1.9.4-libfl.patch
)
src_prepare() {
default
multilib_copy_sources
}
@ -99,5 +105,7 @@ multilib_src_install_all() {
newconfd "${FILESDIR}"/nas.conf.d nas
newinitd "${FILESDIR}"/nas.init.d nas
use static-libs || rm -f "${D}"/usr/lib*/libaudio.a
if ! use static-libs; then
rm -f "${D}"/usr/lib*/libaudio.a || die
fi
}

Binary file not shown.

@ -15,7 +15,7 @@ SRC_URI="https://dev.gentoo.org/~polynomial-c/dist/${MY_P}.tar.xz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~mips ~ppc ~ppc64 ~x86"
KEYWORDS="amd64 ~mips ~ppc ~ppc64 x86"
IUSE="alsa cpu_flags_x86_sse doc ffmpeg +flac id3tag jack +ladspa +lame libav
+lv2 mad +midi nls +portmixer sbsms +soundtouch twolame vamp +vorbis +vst"

@ -10,7 +10,7 @@ SRC_URI="mirror://sourceforge/grip/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
KEYWORDS="~alpha amd64 ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd"
IUSE="vorbis"
# lame and vorbis-tools are no real RDEPENDs. But without them

@ -2,6 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit flag-o-matic toolchain-funcs libtool multilib-minimal
DESCRIPTION="a realtime MPEG 1.0/2.0/2.5 audio player for layers 1, 2 and 3"
@ -14,7 +15,8 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~a
IUSE="cpu_flags_x86_3dnow cpu_flags_x86_3dnowext alsa altivec coreaudio int-quality ipv6 jack cpu_flags_x86_mmx nas oss portaudio pulseaudio sdl cpu_flags_x86_sse"
# No MULTILIB_USEDEP here since we only build libmpg123 for non native ABIs.
RDEPEND="app-eselect/eselect-mpg123
RDEPEND="
app-eselect/eselect-mpg123
dev-libs/libltdl:0
alsa? ( media-libs/alsa-lib )
jack? ( virtual/jack )
@ -91,7 +93,7 @@ multilib_src_configure() {
multilib_src_install_all() {
einstalldocs
mv "${ED}"/usr/bin/mpg123{,-mpg123}
find "${ED}" -name '*.la' -exec sed -i -e "/^dependency_libs/s:=.*:='':" {} +
find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {

@ -10,7 +10,7 @@ DESCRIPTION="Qt5-based audio player with winamp/xmms skins support"
HOMEPAGE="http://qmmp.ylsoftware.com"
if [[ ${PV} != 9999 ]]; then
SRC_URI="http://qmmp.ylsoftware.com/files/${P}.tar.bz2"
KEYWORDS="~amd64 ~x86"
KEYWORDS="~amd64 x86"
else
QMMP_DEV_BRANCH="1.2"
ESVN_REPO_URI="svn://svn.code.sf.net/p/${PN}-dev/code/branches/${PN}-${QMMP_DEV_BRANCH}"

@ -1,3 +1,3 @@
DIST spotify-client_1.0.72.117.g6bd7cc73-35_i386.deb 95135550 BLAKE2B ad4587dd6b3c64a0398e0790203a7826e290a27542fa39ebbd6c7198d8ad1fd3fb06e8b030b64e1e61e0624ef20aafda08189266486cd073cb779ebff62ef502 SHA512 51d60f7592e5f31ea4b7e67736a85271cb48d4108459630da61c4ab67d2a470038240c1d6ff577280cb4498cf44f14d7bc7e0312f63d34265bcd1e70cd13142f
DIST spotify-client_1.0.80.480.g51b03ac3-13_amd64.deb 97542898 BLAKE2B a89f3f607c9fb03327886fc1b6eb8d433b32913aa7ff32e95f626a8ef7710c4d6102721b76e9a83f1342d1ac6f6941d85376b4cb878cf641f42f3c3756582eb9 SHA512 a46b1d28e6c40dbe9a86a38794186f2cdf31341fff953eaa5a5fdbb37c27c00ffe14a918b2552df0996d2842f009e6700bf8683e0667fc671dfd5b343251f20e
DIST spotify-client_1.0.88.345.gc64d9bb3-2_amd64.deb 103366188 BLAKE2B 9c18dce84a2c4a634ddfe360539ecc590f3f85b7ab65063dfbc20ac102cfb06310592ae1f06deee5f09cc93179d887e917db2666bf53fd86ae026a883343787e SHA512 23207a2d5ec0bd6e1e614ea58576339146c210d1cb453e3e5eb4fa03b80f15e9ebae3cb38c1fec72ffd2f206a9d0476bab3a079ed0f9f0fbf1aefa40baabfa35
DIST spotify-client_1.0.88.353.g15c26ea1-14_amd64.deb 103367590 BLAKE2B 90de37c58643cd864b35e26f2d97507872adfa3a6d9b7832d46d0caf9d3383673c67b2e4d7d7015075912cc2ae3754f575f968bd6b743760d7a910d90581d25c SHA512 30592c34a2b1b9d546c753d03a8ead7459d83bd5f420e1dab92a1f2ff40ac2daa0f4f447b95cd499a30328aea1afe8949e05fdd0668b9caf637abdecf5e45742

@ -7,7 +7,7 @@ inherit gnome2-utils pax-utils unpacker xdg-utils
DESCRIPTION="Spotify is a social music platform"
HOMEPAGE="https://www.spotify.com/ch-de/download/previews/"
SRC_BASE="http://repository.spotify.com/pool/non-free/s/${PN}-client/"
BUILD_ID_AMD64="345.gc64d9bb3-2"
BUILD_ID_AMD64="353.g15c26ea1-14"
#BUILD_ID_X86=""
#SRC_URI="amd64? ( ${SRC_BASE}${PN}-client_${PV}.${BUILD_ID_AMD64}_amd64.deb )
# x86? ( ${SRC_BASE}${PN}-client_${PV}.${BUILD_ID_X86}_i386.deb )"

@ -0,0 +1,31 @@
From 2386ec2c745f6c5075e53ea051da211336b44b84 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Tue, 26 Jun 2018 22:31:27 +0200
Subject: readmidi: Fix division by zero
References: CVE-2017-11546
An adhoc fix for division by zero in insert_note_steps().
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bug-debian: https://bugs.debian.org/870338
bug-suse: https://bugzilla.suse.com/show_bug.cgi?id=1081694
bug: https://bugzilla.suse.com/show_bug.cgi?id=1081694
origin: https://bugzilla.suse.com/attachment.cgi?id=760825
---
timidity/readmidi.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/timidity/readmidi.c b/timidity/readmidi.c
index 158388a..341777e 100644
--- a/timidity/readmidi.c
+++ b/timidity/readmidi.c
@@ -4585,6 +4585,8 @@ static void insert_note_steps(void)
if (beat != 0)
meas++, beat = 0;
num = timesig[n].a, denom = timesig[n].b, n++;
+ if (!denom)
+ denom = 1;
}
a = (meas + 1) & 0xff;
b = (((meas + 1) >> 8) & 0x0f) + ((beat + 1) << 4);

@ -0,0 +1,67 @@
From 34328d22cbb4ccf03f29223f54f1834c796d86a2 Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Tue, 26 Jun 2018 22:31:28 +0200
Subject: resample: Fix out-of-bound access in resamplers
References: CVE-2017-11547
An adhoc fix for out-of-bound accesses in resamples.
The offset might overflow the given data range.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bug-debian: https://bugs.debian.org/870338
bug-suse: https://bugzilla.suse.com/show_bug.cgi?id=1081694
origin: https://bugzilla.suse.com/attachment.cgi?id=760826
---
timidity/resample.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/timidity/resample.c b/timidity/resample.c
index cd6b8e6..4a3fadf 100644
--- a/timidity/resample.c
+++ b/timidity/resample.c
@@ -57,6 +57,8 @@ static resample_t resample_cspline(sample_t *src, splen_t ofs, resample_rec_t *r
{
int32 ofsi, ofsf, v0, v1, v2, v3, temp;
+ if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
+ return src[ofs >> FRACTION_BITS];
ofsi = ofs >> FRACTION_BITS;
v1 = src[ofsi];
v2 = src[ofsi + 1];
@@ -96,6 +98,8 @@ static resample_t resample_lagrange(sample_t *src, splen_t ofs, resample_rec_t *
{
int32 ofsi, ofsf, v0, v1, v2, v3;
+ if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
+ return src[ofs >> FRACTION_BITS];
ofsi = ofs >> FRACTION_BITS;
v1 = (int32)src[ofsi];
v2 = (int32)src[ofsi + 1];
@@ -154,6 +158,8 @@ static resample_t resample_gauss(sample_t *src, splen_t ofs, resample_rec_t *rec
sample_t *sptr;
int32 left, right, temp_n;
+ if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
+ return src[ofs >> FRACTION_BITS];
left = (ofs>>FRACTION_BITS);
right = (rec->data_length>>FRACTION_BITS) - left - 1;
temp_n = (right<<1)-1;
@@ -261,6 +267,8 @@ static resample_t resample_newton(sample_t *src, splen_t ofs, resample_rec_t *re
int32 left, right, temp_n;
int ii, jj;
+ if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
+ return src[ofs >> FRACTION_BITS];
left = (ofs>>FRACTION_BITS);
right = (rec->data_length>>FRACTION_BITS)-(ofs>>FRACTION_BITS)-1;
temp_n = (right<<1)-1;
@@ -330,6 +338,8 @@ static resample_t resample_linear(sample_t *src, splen_t ofs, resample_rec_t *re
{
int32 v1, v2, ofsi;
+ if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
+ return src[ofs >> FRACTION_BITS];
ofsi = ofs >> FRACTION_BITS;
v1 = src[ofsi];
v2 = src[ofsi + 1];

@ -1,5 +1,5 @@
--- configure.in
+++ configure.in
--- a/configure.in
+++ b/configure.in
@@ -2245,10 +2245,15 @@
AM_CONDITIONAL(W32READDIR, test "x$W32READDIR" = "xyes")

@ -8,8 +8,8 @@ Because otherwise TiMidity++ simply won't build as per:
xskin_c.c:(.text+0x17c): undefined reference to `ctl_speana_data'
collect2: error: ld returned 1 exit status
--- interface/xskin_c.c
+++ interface/xskin_c.c
--- a/interface/xskin_c.c
+++ b/interface/xskin_c.c
@@ -228,7 +228,6 @@
}
}

@ -1,7 +1,7 @@
http://bugs.gentoo.org/451296
--- interface/tk_c.c
+++ interface/tk_c.c
--- a/interface/tk_c.c
+++ b/interface/tk_c.c
@@ -913,7 +913,7 @@
vsnprintf(buf, sizeof(buf), fmt, ap);
Tcl_Eval(my_interp, buf);

@ -0,0 +1,199 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools desktop elisp-common systemd toolchain-funcs user xdg-utils
MY_PV=${PV/_/-}
MY_P=TiMidity++-${MY_PV}
S=${WORKDIR}/${MY_P}
DESCRIPTION="A handy MIDI to WAV converter with OSS and ALSA output support"
HOMEPAGE="http://timidity.sourceforge.net/"
SRC_URI="mirror://sourceforge/timidity/${MY_P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
IUSE="motif oss nas X gtk vorbis tk slang alsa jack emacs ao selinux speex flac ncurses"
DEPEND="
alsa? ( media-libs/alsa-lib )
ao? ( >=media-libs/libao-0.8.5 )
emacs? ( virtual/emacs )
flac? ( media-libs/flac )
gtk? ( x11-libs/gtk+:2 )
jack? ( virtual/jack )
motif? ( >=x11-libs/motif-2.3:0 )
nas? ( >=media-libs/nas-1.4 )
ncurses? ( sys-libs/ncurses:0= )
slang? ( sys-libs/slang )
speex? ( media-libs/speex )
tk? ( dev-lang/tk:0= )
vorbis? ( media-libs/libvorbis )
X? (
media-libs/libpng:0=
x11-libs/libXaw
x11-libs/libXext
)
"
RDEPEND="${DEPEND}
app-eselect/eselect-timidity
alsa? ( media-sound/alsa-utils )
selinux? ( sec-policy/selinux-timidity )
"
PDEPEND="|| ( media-sound/timidity-eawpatches media-sound/timidity-freepats )"
SITEFILE=50${PN}-gentoo.el
pkg_setup() {
enewgroup audio 18 # Just make sure it exists
enewuser timidity -1 -1 /var/lib/timidity audio
}
DOCS=( AUTHORS ChangeLog NEWS README "${FILESDIR}"/timidity.cfg-r1 )
PATCHES=(
"${FILESDIR}"/${P}-params.patch
"${FILESDIR}"/${P}-revert-for-required-ctl_speana_data-function.patch
"${FILESDIR}"/${P}-tcltk86.patch
"${FILESDIR}"/${P}-ar.patch
"${FILESDIR}"/${P}-configure-flags.patch
"${FILESDIR}"/${P}-pkg-config.patch
"${FILESDIR}"/${P}-CVE-2017-1154{6,7}.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
export EXTRACFLAGS="${CFLAGS}" #385817
local myconf=()
local audios
use flac && audios+=",flac"
use speex && audios+=",speex"
use vorbis && audios+=",vorbis"
use oss && audios+=",oss"
use jack && audios+=",jack"
use ao && audios+=",ao"
if use nas; then
audios+=",nas"
myconf+=( --with-nas-library="/usr/$(get_libdir)/libaudio.so" --with-x )
use X || ewarn "Basic X11 support will be enabled because required by nas."
fi
if use alsa; then
audios+=",alsa"
myconf+=( --with-default-output=alsa --enable-alsaseq )
fi
# We disable motif by default and then only enable it if it's requested.
if use motif; then
myconf+=( --enable-motif --with-x )
use X || ewarn "Basic X11 support will be enabled because required by motif."
fi
econf \
--localstatedir=/var/state/timidity++ \
--with-module-dir="${EPREFIX}/usr/share/timidity" \
--with-lispdir="${SITELISP}/${PN}" \
--with-elf \
--enable-audio=${audios} \
--enable-server \
--enable-network \
--enable-dynamic \
--enable-vt100 \
--enable-spline=cubic \
$(use_enable emacs) \
$(use_enable slang) \
$(use_enable ncurses) \
$(use_with X x) \
$(use_enable X spectrogram) \
$(use_enable X wrd) \
$(use_enable X xskin) \
$(use_enable X xaw) \
$(use_enable gtk) \
$(use_enable tk tcltk) \
--disable-motif \
"${myconf[@]}"
}
src_install() {
emake DESTDIR="${D}" install
einstalldocs
# these are only for the ALSA sequencer mode
if use alsa; then
newconfd "${FILESDIR}"/conf.d.timidity.2 timidity
newinitd "${FILESDIR}"/init.d.timidity.4 timidity
systemd_dounit "${FILESDIR}"/timidity.service
fi
insinto /etc
newins "${FILESDIR}"/timidity.cfg-r1 timidity.cfg
dodir /usr/share/timidity
dosym ../../../etc/timidity.cfg /usr/share/timidity/timidity.cfg
if use emacs; then
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
fi
diropts -o timidity -g nobody -m 0700
keepdir /var/lib/timidity
doicon "${FILESDIR}"/timidity.xpm
newmenu "${FILESDIR}"/timidity.desktop.2 timidity.desktop
# Order of preference: gtk, X (Xaw), ncurses, slang
# Do not create menu item for terminal ones
local interface="-id"
local terminal="true"
local nodisplay="true"
if use gtk || use X; then
interface="-ia"
terminal="false"
nodisplay="false"
use gtk && interface="-ig"
elif use ncurses || use slang; then
local interface="-is"
use ncurses && interface="-in"
fi
sed -e "s/Exec=timidity/Exec=timidity ${interface}/" \
-e "s/Terminal=.*/Terminal=${terminal}/" \
-e "s/NoDisplay=.*/NoDisplay=${nodisplay}/" \
-i "${D}"/usr/share/applications/timidity.desktop || die
}
pkg_postinst() {
use emacs && elisp-site-regen
elog "A timidity config file has been installed in /etc/timidity.cfg."
elog "Do not edit this file as it will interfere with the eselect timidity tool."
elog "The tool 'eselect timidity' can be used to switch between installed patchsets."
if use alsa; then
elog "An init script for the alsa timidity sequencer has been installed."
elog "If you wish to use the timidity virtual sequencer, edit /etc/conf.d/timidity"
elog "and run 'rc-update add timidity <runlevel> && /etc/init.d/timidity start'"
fi
if use sparc; then
elog "Only saving to wave file and ALSA soundback has been tested working."
fi
xdg_desktop_database_update
}
pkg_postrm() {
use emacs && elisp-site-regen
xdg_desktop_database_update
}

@ -0,0 +1,59 @@
From: David Bryant <david@wavpack.com>
Date: Tue, 24 Apr 2018 22:18:07 -0700
Subject: issue #30 issue #31 issue #32: no multiple format chunks in WAV or
W64
---
cli/riff.c | 7 ++++++-
cli/wave64.c | 6 ++++++
2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/cli/riff.c b/cli/riff.c
index 7bddf63..5d6452e 100644
--- a/cli/riff.c
+++ b/cli/riff.c
@@ -53,7 +53,7 @@ extern int debug_logging_mode;
int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, WavpackContext *wpc, WavpackConfig *config)
{
- int is_rf64 = !strncmp (fourcc, "RF64", 4), got_ds64 = 0;
+ int is_rf64 = !strncmp (fourcc, "RF64", 4), got_ds64 = 0, format_chunk = 0;
int64_t total_samples = 0, infilesize;
RiffChunkHeader riff_chunk_header;
ChunkHeader chunk_header;
@@ -140,6 +140,11 @@ int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
else if (!strncmp (chunk_header.ckID, "fmt ", 4)) { // if it's the format chunk, we want to get some info out of there and
int supported = TRUE, format; // make sure it's a .wav file we can handle
+ if (format_chunk++) {
+ error_line ("%s is not a valid .WAV file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
if (chunk_header.ckSize < 16 || chunk_header.ckSize > sizeof (WaveHeader) ||
!DoReadFile (infile, &WaveHeader, chunk_header.ckSize, &bcount) ||
bcount != chunk_header.ckSize) {
diff --git a/cli/wave64.c b/cli/wave64.c
index fa928a0..0388dc7 100644
--- a/cli/wave64.c
+++ b/cli/wave64.c
@@ -53,6 +53,7 @@ int ParseWave64HeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpa
Wave64ChunkHeader chunk_header;
Wave64FileHeader filehdr;
WaveHeader WaveHeader;
+ int format_chunk = 0;
uint32_t bcount;
infilesize = DoGetFileSize (infile);
@@ -104,6 +105,11 @@ int ParseWave64HeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpa
if (!memcmp (chunk_header.ckID, fmt_guid, sizeof (fmt_guid))) {
int supported = TRUE, format;
+ if (format_chunk++) {
+ error_line ("%s is not a valid .W64 file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
chunk_header.ckSize = (chunk_header.ckSize + 7) & ~7L;
if (chunk_header.ckSize < 16 || chunk_header.ckSize > sizeof (WaveHeader) ||

@ -0,0 +1,70 @@
From: David Bryant <david@wavpack.com>
Date: Tue, 24 Apr 2018 17:27:01 -0700
Subject: issue #33, sanitize size of unknown chunks before malloc()
---
cli/dsdiff.c | 9 ++++++++-
cli/riff.c | 9 ++++++++-
cli/wave64.c | 9 ++++++++-
3 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/cli/dsdiff.c b/cli/dsdiff.c
index c016df9..fa56bbb 100644
--- a/cli/dsdiff.c
+++ b/cli/dsdiff.c
@@ -279,7 +279,14 @@ int ParseDsdiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpa
else { // just copy unknown chunks to output file
int bytes_to_copy = (int)(((dff_chunk_header.ckDataSize) + 1) & ~(int64_t)1);
- char *buff = malloc (bytes_to_copy);
+ char *buff;
+
+ if (bytes_to_copy < 0 || bytes_to_copy > 4194304) {
+ error_line ("%s is not a valid .DFF file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
+ buff = malloc (bytes_to_copy);
if (debug_logging_mode)
error_line ("extra unknown chunk \"%c%c%c%c\" of %d bytes",
diff --git a/cli/riff.c b/cli/riff.c
index de98c1e..7bddf63 100644
--- a/cli/riff.c
+++ b/cli/riff.c
@@ -286,7 +286,14 @@ int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
else { // just copy unknown chunks to output file
int bytes_to_copy = (chunk_header.ckSize + 1) & ~1L;
- char *buff = malloc (bytes_to_copy);
+ char *buff;
+
+ if (bytes_to_copy < 0 || bytes_to_copy > 4194304) {
+ error_line ("%s is not a valid .WAV file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
+ buff = malloc (bytes_to_copy);
if (debug_logging_mode)
error_line ("extra unknown chunk \"%c%c%c%c\" of %d bytes",
diff --git a/cli/wave64.c b/cli/wave64.c
index 591d640..fa928a0 100644
--- a/cli/wave64.c
+++ b/cli/wave64.c
@@ -241,7 +241,14 @@ int ParseWave64HeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpa
}
else { // just copy unknown chunks to output file
int bytes_to_copy = (chunk_header.ckSize + 7) & ~7L;
- char *buff = malloc (bytes_to_copy);
+ char *buff;
+
+ if (bytes_to_copy < 0 || bytes_to_copy > 4194304) {
+ error_line ("%s is not a valid .W64 file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
+ buff = malloc (bytes_to_copy);
if (debug_logging_mode)
error_line ("extra unknown chunk \"%c%c%c%c\" of %d bytes",

@ -0,0 +1,111 @@
From: David Bryant <david@wavpack.com>
Date: Sun, 4 Feb 2018 11:28:15 -0800
Subject: issue #27, do not overwrite stack on corrupt RF64 file
---
cli/riff.c | 39 ++++++++++++++++++++++++++++++++-------
1 file changed, 32 insertions(+), 7 deletions(-)
diff --git a/cli/riff.c b/cli/riff.c
index 8b1af45..de98c1e 100644
--- a/cli/riff.c
+++ b/cli/riff.c
@@ -42,6 +42,7 @@ typedef struct {
#pragma pack(pop)
+#define CS64ChunkFormat "4D"
#define DS64ChunkFormat "DDDL"
#define WAVPACK_NO_ERROR 0
@@ -101,13 +102,13 @@ int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
if (!strncmp (chunk_header.ckID, "ds64", 4)) {
if (chunk_header.ckSize < sizeof (DS64Chunk) ||
- !DoReadFile (infile, &ds64_chunk, chunk_header.ckSize, &bcount) ||
- bcount != chunk_header.ckSize) {
+ !DoReadFile (infile, &ds64_chunk, sizeof (DS64Chunk), &bcount) ||
+ bcount != sizeof (DS64Chunk)) {
error_line ("%s is not a valid .WAV file!", infilename);
return WAVPACK_SOFT_ERROR;
}
else if (!(config->qmode & QMODE_NO_STORE_WRAPPER) &&
- !WavpackAddWrapper (wpc, &ds64_chunk, chunk_header.ckSize)) {
+ !WavpackAddWrapper (wpc, &ds64_chunk, sizeof (DS64Chunk))) {
error_line ("%s", WavpackGetErrorMessage (wpc));
return WAVPACK_SOFT_ERROR;
}
@@ -315,10 +316,11 @@ int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples, int qmode)
{
- int do_rf64 = 0, write_junk = 1;
+ int do_rf64 = 0, write_junk = 1, table_length = 0;
ChunkHeader ds64hdr, datahdr, fmthdr;
RiffChunkHeader riffhdr;
DS64Chunk ds64_chunk;
+ CS64Chunk cs64_chunk;
JunkChunk junkchunk;
WaveHeader wavhdr;
uint32_t bcount;
@@ -380,6 +382,7 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
strncpy (riffhdr.formType, "WAVE", sizeof (riffhdr.formType));
total_riff_bytes = sizeof (riffhdr) + wavhdrsize + sizeof (datahdr) + ((total_data_bytes + 1) & ~(int64_t)1);
if (do_rf64) total_riff_bytes += sizeof (ds64hdr) + sizeof (ds64_chunk);
+ total_riff_bytes += table_length * sizeof (CS64Chunk);
if (write_junk) total_riff_bytes += sizeof (junkchunk);
strncpy (fmthdr.ckID, "fmt ", sizeof (fmthdr.ckID));
strncpy (datahdr.ckID, "data", sizeof (datahdr.ckID));
@@ -394,11 +397,12 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
if (do_rf64) {
strncpy (ds64hdr.ckID, "ds64", sizeof (ds64hdr.ckID));
- ds64hdr.ckSize = sizeof (ds64_chunk);
+ ds64hdr.ckSize = sizeof (ds64_chunk) + (table_length * sizeof (CS64Chunk));
CLEAR (ds64_chunk);
ds64_chunk.riffSize64 = total_riff_bytes;
ds64_chunk.dataSize64 = total_data_bytes;
ds64_chunk.sampleCount64 = total_samples;
+ ds64_chunk.tableLength = table_length;
riffhdr.ckSize = (uint32_t) -1;
datahdr.ckSize = (uint32_t) -1;
WavpackNativeToLittleEndian (&ds64hdr, ChunkHeaderFormat);
@@ -409,6 +413,14 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
datahdr.ckSize = (uint32_t) total_data_bytes;
}
+ // this "table" is just a dummy placeholder for testing (normally not written)
+
+ if (table_length) {
+ strncpy (cs64_chunk.ckID, "dmmy", sizeof (cs64_chunk.ckID));
+ cs64_chunk.chunkSize64 = 12345678;
+ WavpackNativeToLittleEndian (&cs64_chunk, CS64ChunkFormat);
+ }
+
// write the RIFF chunks up to just before the data starts
WavpackNativeToLittleEndian (&riffhdr, ChunkHeaderFormat);
@@ -418,8 +430,21 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
if (!DoWriteFile (outfile, &riffhdr, sizeof (riffhdr), &bcount) || bcount != sizeof (riffhdr) ||
(do_rf64 && (!DoWriteFile (outfile, &ds64hdr, sizeof (ds64hdr), &bcount) || bcount != sizeof (ds64hdr))) ||
- (do_rf64 && (!DoWriteFile (outfile, &ds64_chunk, sizeof (ds64_chunk), &bcount) || bcount != sizeof (ds64_chunk))) ||
- (write_junk && (!DoWriteFile (outfile, &junkchunk, sizeof (junkchunk), &bcount) || bcount != sizeof (junkchunk))) ||
+ (do_rf64 && (!DoWriteFile (outfile, &ds64_chunk, sizeof (ds64_chunk), &bcount) || bcount != sizeof (ds64_chunk)))) {
+ error_line ("can't write .WAV data, disk probably full!");
+ return FALSE;
+ }
+
+ // again, this is normally not written except for testing
+
+ while (table_length--)
+ if (!DoWriteFile (outfile, &cs64_chunk, sizeof (cs64_chunk), &bcount) || bcount != sizeof (cs64_chunk)) {
+ error_line ("can't write .WAV data, disk probably full!");
+ return FALSE;
+ }
+
+
+ if ((write_junk && (!DoWriteFile (outfile, &junkchunk, sizeof (junkchunk), &bcount) || bcount != sizeof (junkchunk))) ||
!DoWriteFile (outfile, &fmthdr, sizeof (fmthdr), &bcount) || bcount != sizeof (fmthdr) ||
!DoWriteFile (outfile, &wavhdr, wavhdrsize, &bcount) || bcount != wavhdrsize ||
!DoWriteFile (outfile, &datahdr, sizeof (datahdr), &bcount) || bcount != sizeof (datahdr)) {

@ -0,0 +1,31 @@
From: David Bryant <david@wavpack.com>
Date: Sat, 10 Feb 2018 16:01:39 -0800
Subject: issue #28, do not overwrite heap on corrupt DSDIFF file
---
cli/dsdiff.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/cli/dsdiff.c b/cli/dsdiff.c
index 410dc1c..c016df9 100644
--- a/cli/dsdiff.c
+++ b/cli/dsdiff.c
@@ -153,7 +153,17 @@ int ParseDsdiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpa
error_line ("dsdiff file version = 0x%08x", version);
}
else if (!strncmp (dff_chunk_header.ckID, "PROP", 4)) {
- char *prop_chunk = malloc ((size_t) dff_chunk_header.ckDataSize);
+ char *prop_chunk;
+
+ if (dff_chunk_header.ckDataSize < 4 || dff_chunk_header.ckDataSize > 1024) {
+ error_line ("%s is not a valid .DFF file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
+ if (debug_logging_mode)
+ error_line ("got PROP chunk of %d bytes total", (int) dff_chunk_header.ckDataSize);
+
+ prop_chunk = malloc ((size_t) dff_chunk_header.ckDataSize);
if (!DoReadFile (infile, prop_chunk, (uint32_t) dff_chunk_header.ckDataSize, &bcount) ||
bcount != dff_chunk_header.ckDataSize) {

@ -0,0 +1,64 @@
From: David Bryant <david@wavpack.com>
Date: Sun, 11 Feb 2018 16:37:47 -0800
Subject: issue #28, fix buffer overflows and bad allocs on corrupt CAF files
---
cli/caff.c | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/cli/caff.c b/cli/caff.c
index ae57c4b..6248a71 100644
--- a/cli/caff.c
+++ b/cli/caff.c
@@ -89,8 +89,8 @@ typedef struct
#define CAFChannelDescriptionFormat "LLLLL"
-static const char TMH_full [] = { 1,2,3,13,9,10,5,6,12,14,15,16,17,9,4,18,7,8,19,20,21 };
-static const char TMH_std [] = { 1,2,3,11,8,9,5,6,10,12,13,14,15,7,4,16 };
+static const char TMH_full [] = { 1,2,3,13,9,10,5,6,12,14,15,16,17,9,4,18,7,8,19,20,21,0 };
+static const char TMH_std [] = { 1,2,3,11,8,9,5,6,10,12,13,14,15,7,4,16,0 };
static struct {
uint32_t mChannelLayoutTag; // Core Audio layout, 100 - 146 in high word, num channels in low word
@@ -274,10 +274,19 @@ int ParseCaffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
}
}
else if (!strncmp (caf_chunk_header.mChunkType, "chan", 4)) {
- CAFChannelLayout *caf_channel_layout = malloc ((size_t) caf_chunk_header.mChunkSize);
+ CAFChannelLayout *caf_channel_layout;
- if (caf_chunk_header.mChunkSize < sizeof (CAFChannelLayout) ||
- !DoReadFile (infile, caf_channel_layout, (uint32_t) caf_chunk_header.mChunkSize, &bcount) ||
+ if (caf_chunk_header.mChunkSize < sizeof (CAFChannelLayout) || caf_chunk_header.mChunkSize > 1024) {
+ error_line ("this .CAF file has an invalid 'chan' chunk!");
+ return WAVPACK_SOFT_ERROR;
+ }
+
+ if (debug_logging_mode)
+ error_line ("'chan' chunk is %d bytes", (int) caf_chunk_header.mChunkSize);
+
+ caf_channel_layout = malloc ((size_t) caf_chunk_header.mChunkSize);
+
+ if (!DoReadFile (infile, caf_channel_layout, (uint32_t) caf_chunk_header.mChunkSize, &bcount) ||
bcount != caf_chunk_header.mChunkSize) {
error_line ("%s is not a valid .CAF file!", infilename);
free (caf_channel_layout);
@@ -495,8 +504,15 @@ int ParseCaffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
}
else { // just copy unknown chunks to output file
- int bytes_to_copy = (uint32_t) caf_chunk_header.mChunkSize;
- char *buff = malloc (bytes_to_copy);
+ uint32_t bytes_to_copy = (uint32_t) caf_chunk_header.mChunkSize;
+ char *buff;
+
+ if (caf_chunk_header.mChunkSize < 0 || caf_chunk_header.mChunkSize > 1048576) {
+ error_line ("%s is not a valid .CAF file!", infilename);
+ return WAVPACK_SOFT_ERROR;
+ }
+
+ buff = malloc (bytes_to_copy);
if (debug_logging_mode)
error_line ("extra unknown chunk \"%c%c%c%c\" of %d bytes",

@ -0,0 +1,32 @@
From: David Bryant <david@wavpack.com>
Date: Sun, 8 Apr 2018 16:27:40 -0700
Subject: fix memory leaks
---
src/common_utils.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/src/common_utils.c b/src/common_utils.c
index caf6b8f..629e60e 100644
--- a/src/common_utils.c
+++ b/src/common_utils.c
@@ -373,6 +373,19 @@ WavpackContext *WavpackCloseFile (WavpackContext *wpc)
WavpackFreeWrapper (wpc);
+ if (wpc->metadata) {
+ int i;
+
+ for (i = 0; i < wpc->metacount; ++i)
+ if (wpc->metadata [i].data)
+ free (wpc->metadata [i].data);
+
+ free (wpc->metadata);
+ }
+
+ if (wpc->channel_identities)
+ free (wpc->channel_identities);
+
if (wpc->channel_reordering)
free (wpc->channel_reordering);

@ -0,0 +1,41 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools multilib-minimal
DESCRIPTION="Hybrid lossless audio compression tools"
HOMEPAGE="http://www.wavpack.com/"
SRC_URI="http://www.wavpack.com/${P}.tar.bz2"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
IUSE="static-libs"
RDEPEND=">=virtual/libiconv-0-r1"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-armv7.patch
"${FILESDIR}"/${P}-CVE-2018-{6767,7253,7254}.patch
"${FILESDIR}"/${P}-CVE-2018-10536-CVE-2018-10537.patch
"${FILESDIR}"/${P}-CVE-2018-10538-CVE-2018-10539-CVE-2018-10540.patch
"${FILESDIR}"/${P}-memleaks.patch
)
src_prepare() {
default
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE=${S} econf \
$(multilib_native_enable apps)
}
multilib_src_install_all() {
einstalldocs
find "${D}" -name '*.la' -delete || die
}

@ -0,0 +1 @@
DIST whipper-0.7.0.tar.gz 160649 BLAKE2B 8e14b6dda00b3c8be7ba0fabb25d1cbca536edc785373986f857bafbc2e54d358f18b27140ffda74384c4e815e68ee466c8fc5e4e5d17aa80c8237fda389ba2b SHA512 b4bf4ca64521d8600288addecec6cbd8e43d1ff9a6b9a60872eff1bd5a2b6966af036d6467ba09273ac78aa01d8cac3be29a0e2c4e6600829b9988a74ef8cd88

@ -0,0 +1,51 @@
diff -ur a/whipper/program/cdparanoia.py b/whipper/program/cdparanoia.py
--- a/whipper/program/cdparanoia.py 2018-04-09 10:05:00.000000000 +0200
+++ b/whipper/program/cdparanoia.py 2018-08-03 11:59:22.582106444 +0200
@@ -280,10 +280,10 @@
bufsize = 1024
if self._overread:
- argv = ["cd-paranoia", "--stderr-progress",
+ argv = ["libcdio-paranoia", "--stderr-progress",
"--sample-offset=%d" % self._offset, "--force-overread", ]
else:
- argv = ["cd-paranoia", "--stderr-progress",
+ argv = ["libcdio-paranoia", "--stderr-progress",
"--sample-offset=%d" % self._offset, ]
if self._device:
argv.extend(["--force-cdrom-device", self._device, ])
@@ -302,7 +302,7 @@
except OSError, e:
import errno
if e.errno == errno.ENOENT:
- raise common.MissingDependencyException('cd-paranoia')
+ raise common.MissingDependencyException('libcdio-paranoia')
raise
@@ -559,8 +559,8 @@
def getCdParanoiaVersion():
- getter = common.VersionGetter('cd-paranoia',
- ["cd-paranoia", "-V"],
+ getter = common.VersionGetter('libcdio-paranoia',
+ ["libcdio-paranoia", "-V"],
_VERSION_RE,
"%(version)s %(release)s")
@@ -585,12 +585,12 @@
def __init__(self, device=None):
# cdparanoia -A *always* writes cdparanoia.log
self.cwd = tempfile.mkdtemp(suffix='.whipper.cache')
- self.command = ['cd-paranoia', '-A']
+ self.command = ['libcdio-paranoia', '-A']
if device:
self.command += ['-d', device]
def commandMissing(self):
- raise common.MissingDependencyException('cd-paranoia')
+ raise common.MissingDependencyException('libcdio-paranoia')
def readbyteserr(self, bytes):
self._output.append(bytes)

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save