Sync with portage [Tue Feb 14 22:27:18 MSK 2023].

master 2394
root 1 year ago
parent f0d8e68f08
commit ee1a7fc88a

Binary file not shown.

Binary file not shown.

@ -0,0 +1,8 @@
# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit acct-group
ACCT_GROUP_ID=11

@ -1,5 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="project">
<email>base-system@gentoo.org</email>
</maintainer>
</pkgmetadata>

Binary file not shown.

@ -1,23 +1,20 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
inherit autotools flag-o-matic
DESCRIPTION="language independent text-to-speech system"
DESCRIPTION="Language independent text-to-speech system"
HOMEPAGE="http://epos.ufe.cz/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~hppa ~ia64 ppc ppc64 x86"
IUSE=""
RESTRICT="test" # needs running eposd
RESTRICT=test # needs running eposd
DEPEND="dev-util/byacc"
RDEPEND=""
BDEPEND="dev-util/byacc"
PATCHES=(
"${FILESDIR}"/${PN}-2.5.37-gcc43.patch
@ -36,6 +33,9 @@ src_prepare() {
}
src_configure() {
# Uses removed 'register' keyword, bug #894178
append-cxxflags -std=c++03
econf \
--enable-charsets \
--disable-portaudio \

@ -1,9 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs
inherit flag-o-matic toolchain-funcs
MY_P="${P}-source"
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.zip"
@ -46,6 +46,9 @@ src_prepare() {
}
src_compile() {
# Uses removed 'register' keyword, bug #894180
append-flags -std=c++14
emake \
PREFIX="${EPREFIX}/usr" \
CC="$(tc-getCC)" \

@ -1,9 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools toolchain-funcs
inherit autotools flag-o-matic toolchain-funcs
MY_P=${P/speech-/speech_}
PATCHSET="r3"
@ -99,6 +99,11 @@ src_configure() {
}
src_compile() {
# Lacks prototypes, bug #881863
append-cflags -std=gnu89
# Uses 'register' keyword removed in C++17, bug #894184
append-cxxflags -std=c++14
emake -j1 \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \

Binary file not shown.

@ -11,7 +11,7 @@ SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris"
IUSE="ssl"
RESTRICT="test"

@ -1,4 +1,4 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -20,6 +20,10 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}"/${PN}-0.19.7-c++17.patch
)
src_configure() {
econf \
--with-logfile="${EPREFIX}"/var/log/apache2/access_log \

@ -0,0 +1,90 @@
https://github.com/tessus/apachetop/pull/13
From f89ae55bb09eb1a67fc73555d149fb85f82bfbd6 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Tue, 14 Feb 2023 03:34:36 +0000
Subject: [PATCH] Fix C++17 compatibility (drop register keyword)
register doesn't do anything in any reasonable C++ compiler anyway, but
it was deprecated in C++14 and removed in C++17. Without this, apachetop
will fail to compile with Clang 16 which defaults to -std=c++17.
Bug: https://bugs.gentoo.org/894186
--- a/src/inlines.cc
+++ b/src/inlines.cc
@@ -4,10 +4,10 @@
#define ONE_EIGHTH 4
#define HIGH_BITS (~((unsigned int)(~0) >> ONE_EIGHTH))
-inline unsigned int StringHash(register const char *str)
+inline unsigned int StringHash(const char *str)
{
- register unsigned int val;
- register unsigned int i;
+ unsigned int val;
+ unsigned int i;
for (val = 0; *str; str++)
{
@@ -19,9 +19,9 @@ inline unsigned int StringHash(register const char *str)
return val;
}
-inline unsigned int QuickHash(register const char *str)
+inline unsigned int QuickHash(const char *str)
{
- register unsigned int val, tmp;
+ unsigned int val, tmp;
for(val = 0 ; *str ; str++)
{
@@ -32,7 +32,7 @@ inline unsigned int QuickHash(register const char *str)
return val;
}
-inline unsigned long TTHash(register const char *str)
+inline unsigned long TTHash(const char *str)
{
unsigned long hash = 5381;
int c;
--- a/src/ohtbl.cc
+++ b/src/ohtbl.cc
@@ -13,7 +13,7 @@ static int primes[] = {101, 241, 499, 1009, 2003, 3001, 4001, 5003,
int OAHash::getNextPrime(int size)
{
- register int *prime;
+ int *prime;
for (prime = &primes[0] ; *prime ; prime++)
if (*prime > size)
return *prime;
@@ -51,7 +51,7 @@ void OAHash::destroy(void)
void *OAHash::insert(char *key, void *data)
{
- register unsigned int p, i;
+ unsigned int p, i;
void *d;
// Do not exceed the number of positions in the table.
@@ -81,7 +81,7 @@ void *OAHash::insert(char *key, void *data)
int OAHash::remove(char *key)
{
- register unsigned int p, i;
+ unsigned int p, i;
for (i = 0; i < positions; ++i)
{
@@ -108,7 +108,7 @@ int OAHash::remove(char *key)
void *OAHash::lookup(char *key)
{
- register unsigned int p, i;
+ unsigned int p, i;
for (i = 0; i < positions; ++i)
{
--
2.39.1

@ -0,0 +1,53 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="A library for changing configuration files"
HOMEPAGE="http://augeas.net/"
SRC_URI="https://github.com/hercules-team/augeas/releases/download/release-${PV}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/libxml2
sys-libs/readline:="
DEPEND="${RDEPEND}"
BDEPEND="
>=app-doc/NaturalDocs-1.40
virtual/pkgconfig
test? ( dev-lang/ruby )
"
PATCHES=(
"${FILESDIR}"/${PN}-1.14.0-musl-strerror_r.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
# selinux needs to be implemented
econf --without-selinux
}
src_compile() {
addpredict /usr/share/NaturalDocs/Config/Languages.txt
addpredict /usr/share/NaturalDocs/Config/Topics.txt
default
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}

@ -0,0 +1,22 @@
https://github.com/hercules-team/augeas/pull/791
From 46ecd3542820604603ab4f046f9fb3e6195f60aa Mon Sep 17 00:00:00 2001
From: Dimitry Andric <dimitry@andric.com>
Date: Thu, 8 Dec 2022 13:08:53 +0100
Subject: [PATCH] Only use GNU specific strerror_r() API when __GLIBC__ is
defined.
--- a/src/internal.c
+++ b/src/internal.c
@@ -431,8 +431,8 @@ char *cleanpath(char *path) {
const char *xstrerror(int errnum, char *buf, size_t len) {
#ifdef HAVE_STRERROR_R
-# ifdef __USE_GNU
- /* Annoying linux specific API contract */
+# if defined(__USE_GNU) && defined(__GLIBC__)
+ /* Annoying GNU specific API contract */
return strerror_r(errnum, buf, len);
# else
strerror_r(errnum, buf, len);

@ -1,6 +1,8 @@
DIST awscli-exe-linux-aarch64-2.7.20.zip 46289081 BLAKE2B 1750e609bef53775e4bf66f1be78e2b05f763bde7677be99867ae89e252f1deb81dddf6011718ceafe1f97b53ac4871657f2644c478887eb4d021e14be400121 SHA512 f519aaaf2ebc3e163ae55abdb85b08dd49e148f902a06e671f582879790bdfa07e32f8d8e773ddeb95494aee3a38dc3fbdf91a93b14215f63e13ae87cdf3de4a
DIST awscli-exe-linux-aarch64-2.7.24.zip 46460084 BLAKE2B c24cf41c888b1469a793354c9a97cec4273f6a762ec74b4079ab8626d0eddeb95dec5ef66270764a1c8d3b1525a5460e63009441ac83ef966b43f68efe41b00a SHA512 ee4201a193e393cf7fd1e9c473eaf41a1d7934e342035b931c3d69e985bc9e74434d31d0b46bf176c27c41d1b1000bbd487a514d62c8ccdf8d7c7e82c621d1f4
DIST awscli-exe-linux-aarch64-2.7.28.zip 46543587 BLAKE2B aba4c360ed9ce37406f552db1df9ddd69b46b2f87a9c12c46a5026d9259202ce485a25f7cc1d768ab9c3caff3165e56f13529f3ccc1e65935e327b5980a16af5 SHA512 b126bf26c52e2ab32bf4b7f425527960fcf5a07f0e446aaf2fe0deced802419e12cc48f9c87e0cbe4fc01430264a48b1103a9b5ea5e871a811b8e8b8c8a691d6
DIST awscli-exe-linux-aarch64-2.9.23.zip 47582887 BLAKE2B 3159308e20f54462c04c9e290fdbcc1d0433973fba36ba53fe7886f9ecd16eac0ecea6ac10a1f1cf49eb71c1ee704b84a6cdf18373fc94a1f9c648741ac5bcf0 SHA512 4f407c722c38a4f6adfda4e938f1039208774a897d62e9ccceb52f905a751a4dcb022342180d74fa39dd0cfd2af6787c550f8a214707b922d7bd135465074179
DIST awscli-exe-linux-x86_64-2.7.20.zip 47092365 BLAKE2B 26320deb54f66043693aa40cd2fee2e110f2dbf1710278ce431781d49096860dacd906bd91a01160c69c484020cc1ca497954283213e85d42206ab2dba3f1c92 SHA512 6f5ab60fe3b59a7c8ad73e81b3d3003660736fe9da35e5e44b8d222a94cf195676a4802e8ea391bbefb9cbece77860148be1f616f32281d18726af126c7daa4b
DIST awscli-exe-linux-x86_64-2.7.24.zip 47216162 BLAKE2B f99393a089bc495fc82d4f208f555bce144adf817b15c2995ad97493c16e18e38ee6cb77fb29c9225ff144193f878a7334ef90c318a5770d5c58b1f7e2209632 SHA512 2c25637fa421117aa3629ddfe8f9ead7ad3d7f04ead819b958e2b274621c858ea9e1ba2d9c111e63511ab75a1a7f0db275f653da2fef58dd5ee03274b1e7e8b7
DIST awscli-exe-linux-x86_64-2.7.28.zip 47299458 BLAKE2B 3ac11104ad062ccf70fe697406a65cc08949f9b89784c5cf3f8e80c33629f5fde44853c35f8160f1f285405e576e65a73d9ba9a42b3e31a11120ee50cfccd83c SHA512 a86a2b73a11b74fa7a9b30095adaacacc7ea3a84136a9d5d63bcd776b98a6f6e005cb815fa34451cee85b55e6d1693a906bb8601a1ded3a5eff0416dd79bbc28
DIST awscli-exe-linux-x86_64-2.9.23.zip 49149732 BLAKE2B 3a2500dc6edd2de1747e49b123de67606fa64c41da9f7e364899ae3d23c81d07105102b0afbc858a68a7db189448b171dfdb1ce6ca9ead8f4d607cc896cfcc68 SHA512 ca379e527e4e82b9970b257367f3a5eaf5c59612a2661a6802a9695b96ca16806369b549bfb3203542ebf2948ba3d59ed816f893db34c8ed950eeb9f52ac386a

@ -0,0 +1,90 @@
# Copyright 2022-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="command line interface for Amazon Web Services"
HOMEPAGE="
https://aws.amazon.com/cli/
https://github.com/aws/aws-cli/
"
SRC_URI="
amd64? ( https://awscli.amazonaws.com/awscli-exe-linux-x86_64-${PV}.zip )
arm64? ( https://awscli.amazonaws.com/awscli-exe-linux-aarch64-${PV}.zip )
"
LICENSE="
Apache-2.0 MIT LGPL-2.1+ BSD GPL-2+-with-Pyinstaller-Bootloader-exception
openssl PSF-2 BSD-2 GPL-3+ public-domain
"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm64"
RDEPEND="!app-admin/awscli
sys-libs/glibc"
BDEPEND="app-arch/unzip"
QA_PREBUILT="*"
RESTRICT="strip"
S="${WORKDIR}"
# This code is based on the install script in the upstream archive.
set_global_vars() {
ROOT_INSTALL_DIR=/opt/aws-cli
BIN_DIR=/usr/bin
EXE_NAME="aws"
COMPLETER_EXE_NAME="aws_completer"
INSTALLER_DIR="aws"
INSTALLER_DIST_DIR="${INSTALLER_DIR}/dist"
INSTALLER_EXE="${INSTALLER_DIST_DIR}/${EXE_NAME}"
AWS_EXE_VERSION=${PV}
INSTALL_DIR="${ROOT_INSTALL_DIR}/v2/${AWS_EXE_VERSION}"
# INSTALL_DIR="${INSTALL_DIR}"
INSTALL_DIST_DIR="${INSTALL_DIR}/dist"
INSTALL_BIN_DIR="${INSTALL_DIR}/bin"
INSTALL_AWS_EXE="${INSTALL_BIN_DIR}/${EXE_NAME}"
INSTALL_AWS_COMPLETER_EXE="${INSTALL_BIN_DIR}/${COMPLETER_EXE_NAME}"
CURRENT_INSTALL_DIR="${ROOT_INSTALL_DIR}/v2/current"
CURRENT_AWS_EXE="${CURRENT_INSTALL_DIR}/bin/${EXE_NAME}"
CURRENT_AWS_COMPLETER_EXE="${CURRENT_INSTALL_DIR}/bin/${COMPLETER_EXE_NAME}"
BIN_AWS_EXE="${BIN_DIR}/${EXE_NAME}"
BIN_AWS_COMPLETER_EXE="${BIN_DIR}/${COMPLETER_EXE_NAME}"
}
create_install_dir() {
dodir "${INSTALL_DIR}"
setup_install_dist
setup_install_bin
create_current_symlink
}
setup_install_dist() {
cp -r "${INSTALLER_DIST_DIR}" "${D}/${INSTALL_DIST_DIR}" || die
}
setup_install_bin() {
dodir "${INSTALL_BIN_DIR}"
dosym "../dist/${EXE_NAME}" "${INSTALL_AWS_EXE}"
dosym "../dist/${COMPLETER_EXE_NAME}" "${INSTALL_AWS_COMPLETER_EXE}"
}
create_current_symlink() {
dosym "${AWS_EXE_VERSION}" "${CURRENT_INSTALL_DIR}"
}
create_bin_symlinks() {
dodir "${BIN_DIR}"
dosym -r "${CURRENT_AWS_EXE}" "${BIN_AWS_EXE}"
dosym -r "${CURRENT_AWS_COMPLETER_EXE}" "${BIN_AWS_COMPLETER_EXE}"
}
src_install() {
set_global_vars
create_install_dir
create_bin_symlinks
}

@ -1,8 +1,4 @@
DIST aws-cli-1.27.54.gh.tar.gz 2349811 BLAKE2B 08cb317ea4621273644c39c1152e1a3f8bd9f52ed8c30d7c37dfea9e986ca1597fda1dfbdea8c4043fa783f061609d6f24895997e9f9a3f27d5677c0f9e6c3de SHA512 af4783eef3c1c666b8b3c6d20f1c0177db6d4ce01645b092770cba535dad95609b4bece366355ce6d6a505ac7ab5a2e390d64fb84d6c00e402f9f8ab88db91d9
DIST aws-cli-1.27.59.gh.tar.gz 2360458 BLAKE2B e60117e41cf95d442db333cf49c146e4ed02247007b8f46228799c5dee8c486aec34b236c9a0a6d152d690ff86c34fd797a6f35227a6e443805cdfe1b1b30f00 SHA512 87b9aebe812415223285c09ab5a36de2b9c0da49775d1162a5b5d7489ad61c16ca5361b721bc9e4ec4ccc09306be24513f42d7263b315d6856be20fdf0779686
DIST aws-cli-1.27.63.gh.tar.gz 2363224 BLAKE2B 4fe7971271d4359f9d29cdf4c028bd8d06a1a8188e6aef108c33d6b137bb2aee84f3655f3666381fdbf8166dd5ea071c564faac32fb0c06a461249385dbc503d SHA512 01c578f13c0f316c41bdf3bbc5e8532f01d0bfa108207899b8c56b990acdbf5b80d0ffbf1be944088f34e623494b1a1f6d52823d654c192b07133291e4bd7deb
DIST aws-cli-1.27.64.gh.tar.gz 2363382 BLAKE2B fd0879e793aa5ee449ee535425976d11edb6f844f0385a630df82b62aa6db593c76ccab2b59b960b951859b88e2fd1d2db98f5f9f423b1de4dfed65c22eb131b SHA512 8966543936133e98a7ed27897b3978dbc71fde0728dff18e778cb17cf18b834c6abdc4cae13375f72280b1c3f4b43b33c3a08d4f3b99a2cefb74f27d1dd480a3
DIST aws-cli-1.27.65.gh.tar.gz 2363808 BLAKE2B ded261ab17b81ff11332df6bf0442c4969848413dcb13c555c806f69c70ce806d62f2be17f445d67b0d6777f12cbf27ef1713478c1dc0ae6038bd368462369c5 SHA512 ff70b0cc0e3c4a4549329eb3e5e87fe9d09e01187ecb717c21a934f7e4a91e76f03334c6035b75e95d6ca4e348525681951b8ceaf3c11a379dfd35699ab2b493
DIST aws-cli-1.27.66.gh.tar.gz 2363942 BLAKE2B c2e05b13f6070db4160eacbd829aedaf4d9bd2f50847fdf6c13c5f79d387dcfb07b1dcdc3034d5a2a999a5b554d7035b4204f3a56da91bad2ce88c84f10194c5 SHA512 f2bdded8e435f4d2b5c1ca08aaeeafba575d39d4de1d6966a3e2fbfd42234be9a1ab031e812b5a1e0c433607c350a90195d5c50a12b25d5ad9f9a7ca9dcd7bc1
DIST aws-cli-1.27.67.gh.tar.gz 2364536 BLAKE2B bbd2a83b11d2762ce6a00530b5e2e1c04a44efbffde30d27b65af8f14c79d14e8e1313c4615a0aab10b46147683c9e836be4ea8b480826483be45b8b96e1ba2e SHA512 cf57ada246af9b0ccd5bb5f8e44e061f2b0e86ea0759dbc919ccce2360ee7e9c3c5adc2d1ea004a29f9d2087b22293570289c951886e42781dfc35359745fc31
DIST aws-cli-1.27.68.gh.tar.gz 2364845 BLAKE2B c4f9ee02879965c88f6875c1cbfd502fbda87189d63cab84577b200f35b69d554619dd01f72292551ea8a20552db163f763c867b15f9986fcc3c86e9ee3f2ad5 SHA512 caf044d576eab3da93db59a8834b024d53c11bfe3fc58056ce44d9bdbdaff4f9b716564bcd35cb027771cce9889b1a6783e13a384f461369c477af283363b489
DIST aws-cli-1.27.69.gh.tar.gz 2366011 BLAKE2B e2ac484bb6ead107d0deca6bad5b9ca4a014f129d1253528869c303d72d58f1e9d5329b6c3180ec53190e43711d999b7026764c0cf65786903dade2a5c135f88 SHA512 85d6d820918ab42ce39e3a90751726a8dbf691083f5d71834b61b8456f6c91e3cac7ead86448187a3853a26f9e75e2e1d7f2acd3a8de59a69ebc028a4692b9ac
DIST aws-cli-1.27.70.gh.tar.gz 2366135 BLAKE2B f8feedc28ff2b94326ea81ef1c38779c709ca88033c6f36a31dd28659f9f7cfe2fe520dcf39c46534e5d91e48877e0901e212fc3316effe3e0dc5b0c4855c47d SHA512 faae6ea80047736d99d16cc652b43c4b34fe70822c3aa5a59c8c505a79bbc8b573c4b875f8551c934f20119f0ac2a4ea86a0d91614d5a3871b32a2ea0cc9139c

@ -1,80 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
# do not rely on bundled deps in botocore (sic!)
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
local EPYTEST_DESELECT=(
# TODO
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
insinto /usr/share/zsh/site-functions
newins bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

@ -22,7 +22,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"

@ -1,80 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
# do not rely on bundled deps in botocore (sic!)
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
local EPYTEST_DESELECT=(
# TODO
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
insinto /usr/share/zsh/site-functions
newins bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

@ -1,80 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
# do not rely on bundled deps in botocore (sic!)
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
local EPYTEST_DESELECT=(
# TODO
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
insinto /usr/share/zsh/site-functions
newins bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

@ -1,80 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit bash-completion-r1 distutils-r1 multiprocessing
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y+2).z
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
# do not rely on bundled deps in botocore (sic!)
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
local EPYTEST_DESELECT=(
# TODO
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
insinto /usr/share/zsh/site-functions
newins bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

@ -20,7 +20,7 @@ KEYWORDS="~amd64 ~x86"
PATCHES=( "${FILESDIR}"/test.patch )
distutils_enable_sphinx docs/src dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs/src dev-python/sphinx-rtd-theme
distutils_enable_tests unittest
python_prepare_all() {

@ -18,7 +18,7 @@ LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~x86"
distutils_enable_sphinx docs/src dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs/src dev-python/sphinx-rtd-theme
distutils_enable_tests unittest
python_prepare_all() {

@ -1,9 +1,9 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
inherit autotools flag-o-matic
MY_P="LogMon-${PV}"
DESCRIPTION="Split-screen terminal/ncurses based log viewer"
@ -38,6 +38,13 @@ src_prepare() {
eautoreconf
}
src_configure() {
# Uses removed 'register' keyword, bug #894206
append-cxxflags -std=c++14
econf
}
src_install() {
dobin logmon

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>pinkbyte@gentoo.org</email>
<name>Sergey Popov</name>
</maintainer>
<!-- maintainer-needed -->
</pkgmetadata>

@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>pinkbyte@gentoo.org</email>
<name>Sergey Popov</name>
</maintainer>
<upstream>
<remote-id type="google-code">logstalgia</remote-id>
<remote-id type="github">acaudwell/Logstalgia</remote-id>
</upstream>
<!-- maintainer-needed -->
<upstream>
<remote-id type="google-code">logstalgia</remote-id>
<remote-id type="github">acaudwell/Logstalgia</remote-id>
</upstream>
</pkgmetadata>

@ -1,4 +1,4 @@
DIST puppet-agent_7.20.0-1focal_amd64.deb 33766302 BLAKE2B 665f4d4d8c3b096ec5f270428d0b865dc10b77c51113f65f9e66ab6bb72c3b21a07acd9433f2cc1e4e05c0fb30a11884f0bfe7a5a8a9a1d882bdd049a5490b84 SHA512 91b7eef80bc5e288f8a59a52d41340d1bc921e0754151952a3921575787e4cec1f101039c75a01ca6e7e4a5512224922be0c5be7a676d92bb19d3de291a7ab8c
DIST puppet-agent_7.20.0-1focal_arm64.deb 33547934 BLAKE2B 323d76ac12af0c97cf38b8a78454be89c900eebcc9b1517c716700badf8845c062d2c4eb2f633ed1b6ffc36cb42e7e16a3e4e815637e92c209bc6f3c40cfd525 SHA512 a04727c71cf241e352d14bcc09eb340199a7e42b18be574d822a793ff9d91ff1e1879d67724dbf2133a6a3842fa86ed45b048845c73a5669fab45dacea3e616a
DIST puppet-agent_7.21.0-1focal_amd64.deb 32897404 BLAKE2B 5075c0c77ae2199a3743edcc7fda94802f7b845b37084a613547705a3dc403259908698036bad95e36d7ba18c8b165971d98b81b64e56e6b40f3360e00c4fc5b SHA512 cad621b9add8c7397c681684696b78d57c149b174a43830c3c45ea1679aba791005b634a64b48b3a9d276fb00d7e1ca8e2a73f6a02756d020914f507a35dc56a
DIST puppet-agent_7.21.0-1focal_arm64.deb 32630670 BLAKE2B 634fed97c79ca3b317ee079366a262c898ef217236014dc683cf1c11e83f2fd74bc21c18ff5242ebd2a4b15b73852ed727976134f684e0d416ac0a3ee54221c3 SHA512 be6a0566db5b1ab72b8f53bdf061c0ad4fb93794d690c6ebe697c9eb5aae45b7838b266619c5c33f3c4499a7264fb083d3f2bbb1fbf70b73458c8aa24470e3c3
DIST puppet-agent_7.23.0-1focal_amd64.deb 32923766 BLAKE2B eac170179de27e3c25af3115e45596e7c5190037926e7d3db163b208f401f2278d0c49d11688d25e04bbf859965be37b60f3e7ed15cfb96a5db0c652c501db2d SHA512 90cd6bde4c25fe72dd906ae515d58f56d3e6a7378fea300247854c2cbfb4f7a51adc78d98a68a7f90f7295eeee6a385bb0a1828cc9b809c5bd9ee7a2231777f8
DIST puppet-agent_7.23.0-1focal_arm64.deb 32668574 BLAKE2B ff01899f7a6b0994eccd330dcc83ea51933e287ea4c1ce3ecdcee91e227c22256f4d4464c7d461d5023a1e6f4aac9868134fccf5dd84de2ba11de16c79be0d9f SHA512 7f3b0940d739410b2f4dd3b3ae852c9677c8db33fccee0db5291613f8b8602f8770c52eff3f577c81382be36044714b6737df8f8468a3481997cae52989fdeb8

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -11,7 +11,7 @@ arm64? ( http://apt.puppetlabs.com/pool/focal/puppet/${PN:0:1}/${PN}/${PN}_${PV}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~arm64"
KEYWORDS="~amd64 ~arm64"
IUSE="puppetdb selinux"
RESTRICT="strip"

@ -1,3 +1,3 @@
DIST puppet-5.5.22.tar.gz 2998132 BLAKE2B 8662c89190d0904fe44ffeca1cf9a9ddca40d57ba6fb2d1e644ca353ceb55b1ca3a91416f1eef2975233c9c4498784e7d7280c111ea0cc070870cadc69341d99 SHA512 5332b084a63bdf244672cc4751022c84a1cc50d3f394a13bdcbccf7fcf4ebea67953e88957f23046608bf25e9182548449be824c18289cb2bf1e3ed29b40dc58
DIST puppet-7.20.0.tar.gz 2817232 BLAKE2B 479c4e162230371bd69509844fcd97d0d3392eb2e66578b38e6dc120dd3dd15804d73f70c1b29f1f3d9e57af539f82e605a86c9afff15e78ff48ddf482432c4d SHA512 6774bf03ad0ee80c0fd2cd8ebad60da56df7ed9818a526084fc2cf1ba2fecc81555fff200f5feef2b5d7a2275d90f44b24160de7221d682de470b511a7051f7f
DIST puppet-7.21.0.tar.gz 2819997 BLAKE2B 96de8ceefeea12c51288e05af5d7b126811d23388492053b0d581856f11976f0492064eb89bc585ff7f455df537d5c04fb318814945a158d531d32efdd54ff02 SHA512 b0fbdf63391054d0496c67be963f98e3d85e3a1536e50d6a3f09d0c49110bb4c92bebdc38a48cd50e824e27268150cda0643c6df0edb01b3587f00a591645ee6
DIST puppet-7.23.0.tar.gz 2820654 BLAKE2B c9e2b544400c7fa9e59dd1d40bf89d1444ee62664b11e7aafa30aecd5fd14aa217dfe0bc24795a951c5e04b04762adb0239f6d7289b431b8f2a040716e95c642 SHA512 a66ef2bdbe38741a176e825cf7cdf117616459548731d4f5482b49263b08dcb3550305e5f0e35d228f873b330b730b682c02d38b4243f5f8bb4a190ed0f60310

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@ -16,7 +16,7 @@ SRC_URI="http://downloads.puppetlabs.com/puppet/${P}.tar.gz"
LICENSE="Apache-2.0 GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv x86"
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
IUSE="augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax"
RESTRICT="test"
@ -74,7 +74,8 @@ all_ruby_prepare() {
each_ruby_install() {
each_fakegem_install
# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}"
# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" \
# "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}"
}
all_ruby_install() {
@ -84,10 +85,10 @@ all_ruby_install() {
systemd_dounit "${WORKDIR}/all/${P}/ext/systemd/puppet.service"
# tmpfiles stuff
newtmpfiles "${FILESDIR}/tmpfiles.d" "puppet.conf"
newtmpfiles "${FILESDIR}/tmpfiles.d-2" "puppet.conf"
# openrc init stuff
newinitd "${FILESDIR}"/puppet.init-4.x puppet
newinitd "${FILESDIR}"/puppet.init puppet
keepdir /etc/puppetlabs/puppet/ssl

@ -1 +1,2 @@
DIST puppetdb-7.11.1.tar.gz 49075994 BLAKE2B deb1a031999f18988c44b1439670ebb370d654a7dd99f20f44cdce027fa48088eadc96adca4fc8efe298c4dcc9b62d0d607262d8a5de4d07de0f2405a0f05a36 SHA512 98238e61ae7798912e345d69ff321bd7236dea6d5230a1f9ae37c533993d29611890522dde085e18e83b87bccb5a53e49e4ad38b930bb09ce7e9f22d45776a60
DIST puppetdb-7.12.1.tar.gz 49891988 BLAKE2B d5201d443d991fc04e1a7c67d3f4df693365435354447cb4c18fd8143aa032be9a1dc6845cb6da07add830e2eee8539eb43fb37c3f1790f4ef02dc882de76ab9 SHA512 a86e293505c25e9f15b9c1a768540683b271002e197860bd1e24fc3d3afc88f104eefe3df3e44e7baab2e8ad4953f729b992de934ade57edef00d95290c5f1d2

@ -0,0 +1,90 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit systemd tmpfiles
DESCRIPTION="PuppetDB collects data generated by Puppet"
HOMEPAGE="http://docs.puppetlabs.com/puppetdb/"
SRC_URI="https://downloads.puppetlabs.com/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
KEYWORDS="~amd64 ~x86"
RDEPEND+=">=virtual/jdk-1.8.0"
DEPEND+="acct-user/puppetdb
acct-group/puppetdb"
src_prepare() {
sed -i 's/sysconfig/conf\.d/g' ext/redhat/puppetdb.service || die
sed -i 's/sysconfig/conf\.d/g' ext/bin/puppetdb || die
sed -i 's/sysconfig/conf\.d/g' install.sh || die
sed -i 's/var\/run/run/g' ext/puppetdb.tmpfiles.conf || die
sed -i 's/var\/run/run/g' install.sh || die
default
}
src_compile() {
einfo "not compiling"
}
src_install() {
dodir /opt/puppetlabs/server/data/puppetdb
insinto /opt/puppetlabs/server/apps/puppetdb
insopts -m0744
doins ext/ezbake-functions.sh
insopts -m0644
doins ext/ezbake.manifest
doins puppetdb.jar
insinto /etc/puppetlabs/puppetdb
doins ext/config/logback.xml
doins ext/config/bootstrap.cfg
doins ext/config/request-logging.xml
insinto /etc/puppetlabs/puppetdb/conf.d
doins ext/config/conf.d/jetty.ini
doins ext/config/conf.d/repl.ini
doins ext/config/conf.d/database.ini
doins ext/config/conf.d/config.ini
doins ext/config/conf.d/auth.conf
insopts -m0755
insinto /opt/puppetlabs/server/apps/puppetdb/scripts
doins install.sh
insinto /opt/puppetlabs/server/apps/puppetdb/cli/apps
doins ext/cli/foreground
doins ext/cli/ssl-setup
doins ext/cli/config-migration
doins ext/cli/foreground
doins ext/cli/anonymize
doins ext/cli/reload
doins ext/cli/start
doins ext/cli/stop
insinto /opt/puppetlabs/server/apps/puppetdb/bin
doins ext/bin/puppetdb
insopts -m0644
dodir /opt/puppetlabs/server/bin
dosym ../apps/puppetdb/bin/puppetdb /opt/puppetlabs/server/bin/puppetdb
dodir /opt/puppetlabs/bin
dosym ../server/apps/puppetdb/bin/puppetdb /opt/puppetlabs/bin/puppetdb
dosym ../../opt/puppetlabs/server/apps/puppetdb/bin/puppetdb /usr/bin/puppetdb
# init type tasks
newconfd ext/default puppetdb
systemd_dounit ext/redhat/puppetdb.service
newtmpfiles ext/puppetdb.tmpfiles.conf puppetdb.conf
newinitd "${FILESDIR}/puppetdb.initd-r2" puppetdb
# misc
insinto /etc/logrotate.d
newins ext/puppetdb.logrotate.conf puppetdb
fowners -R puppetdb:puppetdb /opt/puppetlabs/server/data/puppetdb
fperms -R 770 /opt/puppetlabs/server/data/puppetdb
}
pkg_postinst() {
tmpfiles_process puppetdb.conf
elog "to install please run '/opt/puppetlabs/server/bin/puppetdb ssl-setup'"
elog
elog "to upgrade please run '/opt/puppetlabs/server/bin/puppetdb config-migration'"
}

@ -1,2 +1,2 @@
DIST puppetserver-7.9.2.tar.gz 59729859 BLAKE2B 15f9261ae81f280735080a75e083b4bbc5d4b9404bd52f02180173b6cab2ebfe20e38950dd6c94c5167478293056ac562994ff27a7ad955c69621c13ffa808e1 SHA512 0c047554e10ecf36d000c9f702b759e27b8168f1f2207d9b8e904c9579d8e37d8540327d898b0a9e1812ca3223aa15b7cf4da46d7a4247e5d4b8f1596f9d5f26
DIST puppetserver-7.9.3.tar.gz 59951239 BLAKE2B 818eee0e7bd115e0b335b1e13d7b0016933190e95a3bf71ad2498f87097de4251a1e6e2f9dfb933a1ee49c981ae0adf74f9994ec0e36a4b77aad567ab00e1fdd SHA512 d2ce573bf15c0db7cb7a9fd0a35a8286acc77ca9b2eddfe0f2dd8549034793600c04973d9f8a72ab543282325f18795727e05a723b3a3b67b027b382ded3d3eb
DIST puppetserver-7.9.5.tar.gz 59954391 BLAKE2B dd9c1c4bcac006ed711e9d29f2c1e96fbacbbb9f85a70e34e5b42909b20108b970bad58562acf2c3d60ed17c81144826ad4426357948f014b4ec3039f642a9d1 SHA512 c12df0d2778c3f768bf60ed4d9867eb976dc10671383f92ba63a06ad10c4552ec3109f42a9157816d2cd83481ee5cfad10c662812621b1afedf5eac25fbfe1b9

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -13,7 +13,7 @@ LICENSE="Apache-2.0"
SLOT="0"
IUSE="puppetdb"
# will need the same keywords in puppet-agent (puppet-agent now has arm64)
KEYWORDS="amd64"
KEYWORDS="~amd64"
RDEPEND+="
>=virtual/jdk-1.8.0

@ -1,2 +1,3 @@
DIST Rex-1.13.3.tar.gz 349550 BLAKE2B c2ccc2144e56761d33ed2b5d790febd49863639d2e3bba8028b7937b43eb51e7e59e9e99cb1d67f247b2dff8ef91aa04776afd6277ad8a2370f35d71e0b528dd SHA512 beab22aef8ba620b6e74847698eab99977844d2e9632812a9ae0e1ee303cbe4e5a6489000bd5209d76e42e3bb4bb799a90408ed6fb14e034f68132a4d37766dc
DIST Rex-1.13.4.tar.gz 351011 BLAKE2B ec046b88f4443b03c05efbabb40900085293c61dab0ee9818a8c4d05be3cc0a1c1f53738b72cc245aaa2dfbcb00541f0e1e31b0c20f2464e9fc6586ed10707ef SHA512 27b76f4b527b42ea0b06dc1de05254dbd6e2fa3bc9a8a708af7557789ef22aec374a5d0585bf3ec4ee878a5387d51b881cf95855dbd05149b7b23929de12027d
DIST Rex-1.14.0.tar.gz 353494 BLAKE2B 3943c56df99d3dd98cefbdc68644f1a34109e20e18aa6db61e617d1f5ece8cf9612b7b098dafff7df9435820791bd1476163e5b9e6d35ef20bd47506747ad849 SHA512 fa2ad4b71c9c7b9a352303626e7530fc7fd02b295908c6184680a2646b14553b037a264af932b9a9efd5f1019ded86f3c8857db9651d7a4d7d6cf153924ac3ad

@ -0,0 +1,222 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
if [[ ${PV} == 9999 ]]; then
GITHUB_USER=RexOps
GITHUB_REPO=Rex
EGIT_REPO_URI="https://github.com/${GITHUB_USER}/${GITHUB_REPO}.git"
EGIT_BRANCH="master"
EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-git"
VCS_ECLASS="git-r3"
else
# This is intentional to stop perl-module.eclass doing magic things when it
# shouldn't. Like making ${S} contain "Rex" when the git clone has "rex"
# Also prevents perl-module.eclass provisioning SRC_URI
DIST_AUTHOR=FERKI
DIST_NAME=Rex
KEYWORDS="~amd64 ~x86"
fi
inherit bash-completion-r1 perl-module ${VCS_ECLASS}
DESCRIPTION="(R)?ex, the friendly automation framework"
HOMEPAGE="https://metacpan.org/release/Rex https://www.rexify.org"
SLOT="0"
IUSE="minimal test"
RESTRICT="!test? ( test )"
DZIL_DEPENDS="
dev-perl/Dist-Zilla
dev-perl/Dist-Zilla-Plugin-CheckExtraTests
dev-perl/Dist-Zilla-Plugin-ContributorsFile
dev-perl/Dist-Zilla-Plugin-Git
dev-perl/Dist-Zilla-Plugin-Git-Contributors
dev-perl/Dist-Zilla-Plugin-MakeMaker-Awesome
dev-perl/Dist-Zilla-Plugin-Meta-Contributors
dev-perl/Dist-Zilla-Plugin-MetaProvides-Package
dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic
dev-perl/Dist-Zilla-Plugin-OSPrereqs
dev-perl/Dist-Zilla-Plugin-OurPkgVersion
dev-perl/Dist-Zilla-Plugin-Run
dev-perl/Software-License
"
RDEPEND="
!minimal? (
dev-perl/DBI
dev-perl/Expect
dev-perl/IPC-Shareable
dev-perl/XML-LibXML
)
virtual/perl-Carp
virtual/perl-Data-Dumper
dev-perl/Data-Validate-IP
dev-perl/Devel-Caller
dev-perl/Digest-HMAC
virtual/perl-Digest-MD5
virtual/perl-Exporter
virtual/perl-File-Spec
dev-perl/HTTP-Message
dev-perl/Hash-Merge
virtual/perl-IO
dev-perl/IO-String
dev-perl/IO-Tty
dev-perl/JSON-MaybeXS
virtual/perl-MIME-Base64
dev-perl/Net-OpenSSH
dev-perl/Net-SFTP-Foreign
>=virtual/perl-Scalar-List-Utils-1.450.0
dev-perl/Parallel-ForkManager
dev-perl/Sort-Naturally
dev-perl/String-Escape
virtual/perl-Storable
dev-perl/TermReadKey
virtual/perl-Test-Simple
dev-perl/Text-Glob
virtual/perl-Text-Tabs+Wrap
virtual/perl-Time-HiRes
dev-perl/URI
dev-perl/XML-Simple
dev-perl/libwww-perl
dev-perl/YAML
virtual/perl-version
"
# NB: would add test? !minimal? Test-mysqld, but I can't get that to work
BDEPEND="
${RDEPEND}
>=virtual/perl-CPAN-Meta-Requirements-2.120.620
>=virtual/perl-ExtUtils-MakeMaker-7.110.100
>=dev-perl/File-ShareDir-Install-0.60.0
virtual/perl-Module-Metadata
test? (
!minimal? (
dev-perl/File-LibMagic
)
virtual/perl-File-Temp
dev-perl/Test-Exception
dev-perl/Sub-Override
dev-perl/Test-Deep
dev-perl/Test-Output
dev-perl/Test-UseAllModules
virtual/perl-autodie
)
"
[[ ${PV} == 9999 ]] && BDEPEND+=" ${DZIL_DEPENDS}"
src_unpack() {
if [[ ${PV} == 9999 ]]; then
"${VCS_ECLASS}"_src_unpack
mkdir -p "${S}" || die "Can't make ${S}"
else
default
fi
}
dzil_src_prep() {
einfo "Patching dist.ini"
# This block of sed invocations removes all plugins that aren't
# useful for users to have on Gentoo, because all of them are
# conditional and subjective style checks, which don't indicate
# a real issue for users, and paying the price of their dependencies is undesired.
# The {N;d} trick adds the [n]ext line after the match to the pattern-space
# so that the final [d]elete deletes the next line too. Can be expanded for each
# line, ie: {N;N;N;d} deletes 3 lines after the match as well as the match.
sed -e '/^\[Test::Kwalitee\]/d' \
-e '/^\[PodSyntaxTests\]/d' \
-e '/^Perl::Critic::Freenode =/d' \
-e '/^Perl::Critic::TooMuchCode =/d' \
-e '/^Test::Kwalitee =/d' \
-e '/^Test::PerlTidy =/d' \
-e '/^Test::Pod =/d' \
-e '/^\[Test::CPAN::Changes\]/{N;d}' \
-e '/^\[OptionalFeature/,/^$/d' \
-e '/^\[Test::MinimumVersion\]/{N;d}' \
-i dist.ini || die "Can't patch dist.ini"
# Removals/additions have to be tracked by git or dzil build fails
# Spurious warning during src_prepare
git rm -f xt/author/critic-progressive.t || die "Can't rm author/critic-progressive.t"
# Spurious warning during src_prepare
git rm -f xt/author/perltidy.t || die "Can't rm author/perltidy.t"
}
dzil_env_setup() {
# NextRelease noise :(
mkdir -p ~/.dzil/ || die "mkdir -p ~/.dzil/ failed"
local user="$(whoami)"
local host="$(hostname)"
printf '[%%User]\nname = %s\nemail = %s' "${user}" "${user}@${host}" >> ~/.dzil/config.ini
}
dzil_to_distdir() {
local dzil_root dest has_missing modname dzil_version
dzil_root="$1"
dest="$2"
cd "${dzil_root}" || die "Can't enter git workdir '${dzil_root}'";
S="${dzil_root}" dzil_src_prep
dzil_env_setup
dzil_version="$(dzil version)" || die "Error invoking 'dzil version'"
einfo "Generating CPAN dist with ${dzil_version}"
has_missing=""
einfo "Checking dzil authordeps"
while IFS= read -d $'\n' -r modname; do
if [[ -z "${has_missing}" ]]; then
has_missing=1
eerror "'dzil authordeps' indicates missing build dependencies"
eerror "These will prevent building, please report a bug"
eerror "Missing:"
fi
eerror " ${modname}"
done < <( dzil authordeps --missing --versions )
[[ -z "${has_missing}" ]] || die "Satisfy all missing authordeps first"
einfo "Checking dzil build deps"
while IFS= read -d $'\n' -r modname; do
if [[ -z "${has_missing}" ]]; then
has_missing=1
ewarn "'dzil listdeps' indicates missing build dependencies"
ewarn "These may prevent building, please report a bug if they do"
ewarn "Missing:"
fi
ewarn " ${modname}"
done < <( dzil listdeps --missing --versions --author )
einfo "Generating release"
dzil build --notgz --in "${dest}" || die "Unable to build CPAN dist in '${dest}'"
}
src_prepare() {
if [[ ${PV} == 9999 ]]; then
# Uses git sources in WORKDIR/rex-git
# to generate a CPAN-style tree in ${S}
# before letting perl-module.eclass do the rest
dzil_to_distdir "${EGIT_CHECKOUT_DIR}" "${S}"
fi
cd "${S}" || die "Can't enter build dir"
# If you DIY installed Test::mysqld, but didn't patch
# it to handle the fact on Gentoo, mysql_install_db is NOT in PATH
# tests fail. So this test is patched out if mysql_install_db is not in PATH
if perl_has_module "Test::mysqld" && ! type -P mysql_install_db >/dev/null; then
perl_rm_files "t/db.t"
fi
perl-module_src_prepare
}
src_install() {
newbashcomp "share/${PN}-tab-completion.bash" "${PN}"
insinto /usr/share/zsh/site-functions
newins "share/${PN}-tab-completion.zsh" "_${PN}"
perl-module_src_install
}

@ -1,10 +1,8 @@
DIST rsyslog-8.2102.0.tar.gz 3123684 BLAKE2B f5c4e00d68ec82ed3f7b89dd5e888bebda9c4eb38185dfd8ecd96c1bf77380385aaddac73ab1de8364e1239a3de746f160c18b0f135d006f473f9e40be2c18a1 SHA512 281b0e5d5cb548c39a6e514e5fd5b1bdbe8ca0bdd9234f4fea581ed7679f76d2d75b65d14c3c5e799f86f91600074ff75b467aa1ff27cdbec0f4197261c5aec0
DIST rsyslog-8.2112.0.tar.gz 3230105 BLAKE2B deee27f0b1e2b9783bef4d90e396c92c772465156ae8242172548794d628edb5d1e9a95d9ee2aeb2b301ec4b691572391ea7db7b1e8fdb1d14c65e3857857799 SHA512 32ee475d4ef34a68aa43997a97472d21f45c27052c528c1904786df608977189a53e8bb88f310dc2ebe3bf11857824e4e2188c5b85591a005b6977f90a6b17c3
DIST rsyslog-8.2206.0.tar.gz 3246829 BLAKE2B cfe88f12821146011914610e33cb907bd96f19b6e67c0eb3f9bd88b749eebd3a91ae27e445688842a806719cfe9757778d3f9705cd2d6a497d358015c9ddf36b SHA512 000d2a05ef4823879e615a347f62f76d3af7d43cddb119e7f57a8470aade00139475368579385ba008a1d5979082128ef6148e0fac2478f6e0ccb26e68d317b7
DIST rsyslog-8.2208.0.tar.gz 3262298 BLAKE2B c13920c755a24d8060335f3281a349d2f32c3c99de7351991e09e62302f6d9f61f4390b7945e30816c7d28afe5f757f6a49b2855e40e3f2f518a423662196b1b SHA512 e63f2465011722eb1bc99676ef6afd66e655af4fb9d751b3d8776499d054c422b195c65fef9ea6b9012d9fb334b7ed8a1c918167fecff389cbb79aa6b74acb73
DIST rsyslog-8.2210.0.tar.gz 3266727 BLAKE2B fc94e7d9b7d828c35e6117ff44d40aa421b79ecd9072cc143177cb77ac6e84adaa5e2b9ae9a66e4bb70d8b93411715f63f0e3707e53c965ef892d9146ec43c92 SHA512 c665b7f7a3c5ef31c9b62b50f815cfbb52db0cbe4a06934f4f1c3cd2a56fb49c319d33857ee92ab843aa5894cac16c16b8eccdf83714f31ab57a95049c4af231
DIST rsyslog-8.2212.0.tar.gz 3268012 BLAKE2B 72347c8281ce537cade415b73a5f15b80ad035ccf9091bcbb72952da32790064a8dd88416d3b7682e6fb77f23dbd51cb2b596587498d4cbccedf21c41c2c6305 SHA512 ca8c3d4c035f9dd5fb6b2d27c66f5e3211458cb1afbf2a73d3e268424a40e3e8746499d7db2e313cf2833f2f73640eb79924770198fb3009ef5461479cf80d15
DIST rsyslog-doc-8.2102.0.tar.gz 6419104 BLAKE2B 134c7ccde6f7435b35840fa37f5774223ac1ebd7dc10db961900a7b1600483156518433c7f70d0981e96ea750e1916ab53e346abacf58066bf141e85c719ae00 SHA512 a5dc4fb9bd8892fac693c5692b926c8d7d9fa36667d6b4c6eccba750713af88d4317f6232efc2a16de38c2e58c4a8bc4d04c9ebb2e7ebc3b0878d53eef20dd2e
DIST rsyslog-doc-8.2112.0.tar.gz 6545985 BLAKE2B 4f6cfbbf8062a70faa67dd7168ad35bcbe2c81f80560ddb48229a332ce8ac861efe3bdaa1baeddbdd086c3e9ac8912746ba58bc64ab62f3caba8b8cc1b0014fd SHA512 8588d5fd1a79fce785db85ba162ed2fa9e5375590ee8e6d8569e75334d36683a1b977e930c096a6b3dac15596c066b46fc3105fcc5e8232ab11cf43c6eed3a55
DIST rsyslog-doc-8.2206.0.tar.gz 6553532 BLAKE2B 51288f5e819393ad6b5af1acfa030b262c1a97c9cc791606c16792201eb8f7bbc9750bb004e7592a99fa1261b971911a6c2bbe6c0b82a6c3bb067b077ce22641 SHA512 23d686241bb6422146602420e21a53208ff82f39f76258d7147dc0b5c06863f8229e1e2df06bfcae63408d06e70b68f7a0b0d216671b78302527d436091a698a
DIST rsyslog-doc-8.2208.0.tar.gz 6563848 BLAKE2B ec68684f1d7d895833f656ba6224a8013213a12b1bc7a28a268f2f629c25a3fbac7c379091f17eae24b6d71278c087e4a4cbed1656554de743fe5616a96559bf SHA512 428c2fe9e5025928d4a9d33f05f4eb20ac1bbde052b7fa2a8a0e45bfffe111eecc94eb2b6ec129de1011f0eabb106b4fb41d402b2a270e4148d3b1081e3b1da0

@ -0,0 +1,44 @@
From e3c750b98564bc66b50ae35e91f5222c441f8b75 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Maciej=20Bar=C4=87?= <xgqt@gentoo.org>
Date: Wed, 16 Nov 2022 15:17:31 +0100
Subject: [PATCH] configure.ac: remove bashisms
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
replace [[ ]] with test and == with =
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
---
configure.ac | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index 3a43681d72..6e66ec904b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1138,13 +1138,13 @@ AC_ARG_ENABLE(gnutls-tests,
no) enable_gnutls_tests="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-gnutls-tests) ;;
esac],
- [if [[ "$enable_gnutls" == "yes" ]]; then
+ [if test "x$enable_gnutls" = "xyes"; then
enable_gnutls_tests=yes
else
enable_gnutls_tests=no
fi]
)
-if [[ "$enable_gnutls_tests" == "yes" ]] && [[ "$enable_gnutls" != "yes" ]]; then
+if test "x$enable_gnutls_tests" = "xyes" && test "x$enable_gnutls" != "xyes"; then
AC_MSG_WARN([gnutls-tests can not be enabled without gnutls support. Disabling gnutls tests...])
enable_gnutls_tests="no"
fi
@@ -1852,7 +1852,7 @@ AC_ARG_ENABLE(imfile-tests,
esac],
[enable_imfile_tests=yes]
)
-if [[ "$enable_imfile_tests" == "yes" ]] && [[ "$enable_imfile" != "yes" ]]; then
+if test "x$enable_imfile_tests" = "xyes" && test "x$enable_imfile" != "xyes"; then
AC_MSG_WARN([imfile-tests can not be enabled without imfile support. Disabling imfile tests...])
enable_imfile_tests="no"
fi

@ -1,484 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_9 )
inherit autotools linux-info python-any-r1 systemd
DESCRIPTION="An enhanced multi-threaded syslogd with database support and more"
HOMEPAGE="https://www.rsyslog.com/"
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/rsyslog/${PN}.git"
DOC_REPO_URI="https://github.com/rsyslog/${PN}-doc.git"
inherit git-r3
else
KEYWORDS="amd64 arm arm64 ~hppa x86"
SRC_URI="
https://www.rsyslog.com/files/download/${PN}/${P}.tar.gz
doc? ( https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz )
"
fi
LICENSE="GPL-3 LGPL-3 Apache-2.0"
SLOT="0"
IUSE="clickhouse curl dbi debug doc elasticsearch +gcrypt gnutls imhttp"
IUSE+=" impcap jemalloc kafka kerberos kubernetes mdblookup"
IUSE+=" mongodb mysql normalize omhttp omhttpfs omudpspoof +openssl"
IUSE+=" postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp +ssl"
IUSE+=" systemd test usertools +uuid xxhash zeromq"
RESTRICT="!test? ( test )"
REQUIRED_USE="
kubernetes? ( normalize )
ssl? ( || ( gnutls openssl ) )
"
BDEPEND=">=sys-devel/autoconf-archive-2015.02.24
virtual/pkgconfig
test? (
jemalloc? ( <sys-libs/libfaketime-0.9.7 )
!jemalloc? ( sys-libs/libfaketime )
${PYTHON_DEPS}
)"
RDEPEND="
>=dev-libs/libfastjson-0.99.8:=
>=dev-libs/libestr-0.1.9
>=sys-libs/zlib-1.2.5
curl? ( >=net-misc/curl-7.35.0 )
dbi? ( >=dev-db/libdbi-0.8.3 )
elasticsearch? ( >=net-misc/curl-7.35.0 )
gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= )
imhttp? ( www-servers/civetweb )
impcap? ( net-libs/libpcap )
jemalloc? ( >=dev-libs/jemalloc-3.3.1:= )
kafka? ( >=dev-libs/librdkafka-0.9.0.99:= )
kerberos? ( virtual/krb5 )
kubernetes? ( >=net-misc/curl-7.35.0 )
mdblookup? ( dev-libs/libmaxminddb:= )
mongodb? ( >=dev-libs/mongo-c-driver-1.1.10:= )
mysql? ( dev-db/mysql-connector-c:= )
normalize? (
>=dev-libs/liblognorm-2.0.3:=
)
clickhouse? ( >=net-misc/curl-7.35.0 )
omhttpfs? ( >=net-misc/curl-7.35.0 )
omudpspoof? ( >=net-libs/libnet-1.1.6 )
postgres? ( >=dev-db/postgresql-8.4.20:= )
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
redis? (
>=dev-libs/hiredis-0.11.0:=
dev-libs/libevent[threads]
)
relp? ( >=dev-libs/librelp-1.2.17:= )
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
rfc5424hmac? (
>=dev-libs/openssl-0.9.8y:0=
)
snmp? ( >=net-analyzer/net-snmp-5.7.2 )
ssl? (
gnutls? ( >=net-libs/gnutls-2.12.23:0= )
openssl? (
dev-libs/openssl:0=
)
)
systemd? ( >=sys-apps/systemd-234 )
uuid? ( sys-apps/util-linux:0= )
xxhash? ( dev-libs/xxhash:= )
zeromq? (
>=net-libs/czmq-4:=[drafts]
)"
DEPEND="${RDEPEND}
elibc_musl? ( sys-libs/queue-standalone )
test? (
>=dev-libs/liblogging-1.0.1[stdlog]
)"
if [[ ${PV} == "9999" ]]; then
BDEPEND+=" doc? ( >=dev-python/sphinx-1.1.3-r7 )"
BDEPEND+=" >=sys-devel/flex-2.5.39-r1"
BDEPEND+=" >=sys-devel/bison-2.4.3"
BDEPEND+=" >=dev-python/docutils-0.12"
fi
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
pkg_setup() {
use test && python-any-r1_pkg_setup
}
src_unpack() {
if [[ ${PV} == "9999" ]]; then
git-r3_fetch
git-r3_checkout
else
unpack ${P}.tar.gz
fi
if use doc; then
if [[ ${PV} == "9999" ]]; then
local _EGIT_BRANCH=
if [[ -n "${EGIT_BRANCH}" ]]; then
# Cannot use rsyslog commits/branches for documentation repository
_EGIT_BRANCH=${EGIT_BRANCH}
unset EGIT_BRANCH
fi
git-r3_fetch "${DOC_REPO_URI}"
git-r3_checkout "${DOC_REPO_URI}" "${S}"/docs
if [[ -n "${_EGIT_BRANCH}" ]]; then
# Restore previous EGIT_BRANCH information
EGIT_BRANCH=${_EGIT_BRANCH}
fi
else
cd "${S}" || die "Cannot change dir into '${S}'"
mkdir docs || die "Failed to create docs directory"
cd docs || die "Failed to change dir into '${S}/docs'"
unpack ${PN}-doc-${PV}.tar.gz
fi
fi
}
src_prepare() {
default
# https://github.com/rsyslog/rsyslog/issues/3626
sed -i \
-e '\|^#!/bin/bash$|a exit 77' \
tests/mmkubernetes-cache-expir*.sh \
|| die "Failed to disabled known test failure mmkubernetes-cache-expir*.sh"
eautoreconf
}
src_configure() {
# Maintainer notes:
# * Guardtime support is missing because libgt isn't yet available
# in portage.
# * Hadoop's HDFS file system output module is currently not
# supported in Gentoo because nobody is able to test it
# (JAVA dependency).
# * dev-libs/hiredis doesn't provide pkg-config (see #504614,
# upstream PR 129 and 136) so we need to export HIREDIS_*
# variables because rsyslog's build system depends on pkg-config.
if use redis; then
export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis"
export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include"
fi
local myeconfargs=(
--disable-debug-symbols
--disable-generate-man-pages
--without-valgrind-testbench
--disable-liblogging-stdlog
$(use_enable test testbench)
$(use_enable test libfaketime)
$(use_enable test extended-tests)
# Input Plugins without dependencies
--enable-imbatchreport
--enable-imdiag
--enable-imfile
--enable-improg
--enable-impstats
--enable-imptcp
# Message Modificiation Plugins without dependencies
--enable-mmanon
--enable-mmaudit
--enable-mmcount
--enable-mmfields
--enable-mmjsonparse
--enable-mmpstrucdata
--enable-mmrm1stspace
--enable-mmsequence
--enable-mmtaghostname
--enable-mmutf8fix
# Output Modification Plugins without dependencies
--enable-mail
--enable-omprog
--enable-omruleset
--enable-omstdout
--enable-omuxsock
# Misc
--enable-fmhash
$(use_enable xxhash fmhash-xxhash)
--enable-pmaixforwardedfrom
--enable-pmciscoios
--enable-pmcisconames
--enable-pmdb2diag
--enable-pmlastmsg
$(use_enable normalize pmnormalize)
--enable-pmnull
--enable-pmpanngfw
--enable-pmsnare
# DB
$(use_enable dbi libdbi)
$(use_enable mongodb ommongodb)
$(use_enable mysql)
$(use_enable postgres pgsql)
$(use_enable redis omhiredis)
# Debug
$(use_enable debug)
$(use_enable debug diagtools)
$(use_enable debug valgrind)
# Misc
$(use_enable clickhouse)
$(use_enable curl fmhttp)
$(use_enable elasticsearch)
$(use_enable gcrypt libgcrypt)
$(use_enable imhttp)
$(use_enable impcap)
$(use_enable jemalloc)
$(use_enable kafka imkafka)
$(use_enable kafka omkafka)
$(use_enable kerberos gssapi-krb5)
$(use_enable kubernetes mmkubernetes)
$(use_enable normalize mmnormalize)
$(use_enable mdblookup mmdblookup)
$(use_enable omhttp)
$(use_enable omhttpfs)
$(use_enable omudpspoof)
$(use_enable rabbitmq omrabbitmq)
$(use_enable relp)
$(use_enable rfc3195)
$(use_enable rfc5424hmac mmrfc5424addhmac)
$(use_enable snmp)
$(use_enable snmp mmsnmptrapd)
$(use_enable gnutls)
$(use_enable openssl)
$(use_enable systemd imjournal)
$(use_enable systemd omjournal)
$(use_enable usertools)
$(use_enable uuid)
$(use_enable zeromq imczmq)
$(use_enable zeromq omczmq)
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
)
econf "${myeconfargs[@]}"
}
src_compile() {
default
if use doc && [[ "${PV}" == "9999" ]]; then
einfo "Building documentation ..."
local doc_dir="${S}/docs"
cd "${doc_dir}" || die "Cannot chdir into \"${doc_dir}\"!"
sphinx-build -b html source build || die "Building documentation failed!"
fi
}
src_test() {
local _has_increased_ulimit=
# Sometimes tests aren't executable (i.e. when added via patch)
einfo "Adjusting permissions of test scripts ..."
find "${S}"/tests -type f -name '*.sh' \! -perm -111 -exec chmod a+x '{}' \; || \
die "Failed to adjust test scripts permission"
if ulimit -n 3072; then
_has_increased_ulimit="true"
fi
if ! emake --jobs 1 check; then
eerror "Test suite failed! :("
if [[ -z "${_has_increased_ulimit}" ]]; then
eerror "Probably because open file limit couldn't be set to 3072."
fi
if has userpriv ${FEATURES}; then
eerror "Please try to reproduce the test suite failure with FEATURES=-userpriv " \
"before you submit a bug report."
fi
fi
}
src_install() {
local DOCS=(
AUTHORS
ChangeLog
"${FILESDIR}"/README.gentoo
)
use doc && local HTML_DOCS=( "${S}/docs/build/." )
default
newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
systemd_newunit "${FILESDIR}/${PN}.service" ${PN}.service
keepdir /var/empty/dev
keepdir /var/spool/${PN}
keepdir /etc/ssl/${PN}
keepdir /etc/${PN}.d
insinto /etc
newins "${FILESDIR}/${PN}.conf" ${PN}.conf
insinto /etc/rsyslog.d/
newins "${FILESDIR}/50-default-r1.conf" 50-default.conf
insinto /etc/logrotate.d/
newins "${FILESDIR}/${PN}-r1.logrotate" ${PN}
if use mysql; then
insinto /usr/share/${PN}/scripts/mysql
doins plugins/ommysql/createDB.sql
fi
if use postgres; then
insinto /usr/share/${PN}/scripts/pgsql
doins plugins/ompgsql/createDB.sql
fi
find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
local advertise_readme=0
if [[ -z "${REPLACING_VERSIONS}" ]]; then
# This is a new installation
advertise_readme=1
if use mysql || use postgres; then
echo
elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
elog " /usr/share/doc/${PF}/scripts"
fi
if use ssl; then
echo
elog "To create a default CA and certificates for your server and clients, run:"
elog " emerge --config =${PF}"
elog "on your logging server. You can run it several times,"
elog "once for each logging client. The client certificates will be signed"
elog "using the CA certificate generated during the first run."
fi
fi
if [[ ${advertise_readme} -gt 0 ]]; then
# We need to show the README file location
echo ""
elog "Please read"
elog ""
elog " ${EPREFIX}/usr/share/doc/${PF}/README.gentoo*"
elog ""
elog "for more details."
fi
}
pkg_config() {
if ! use ssl; then
einfo "There is nothing to configure for rsyslog unless you"
einfo "used USE=ssl to build it."
return 0
fi
if ! hash certtool &>/dev/null; then
die "certtool not found! Is net-libs/gnutls[tools] is installed?"
fi
# Make sure the certificates directory exists
local CERTDIR="${EROOT}/etc/ssl/${PN}"
if [[ ! -d "${CERTDIR}" ]]; then
mkdir "${CERTDIR}" || die
fi
einfo "Your certificates will be stored in ${CERTDIR}"
# Create a default CA if needed
if [[ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]]; then
einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
certtool --generate-privkey \
--outfile "${CERTDIR}/${PN}_ca.privkey.pem" || die
chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
cat > "${T}/${PF}.$$" <<- _EOF
cn = Portage automated CA
ca
cert_signing_key
expiration_days = 3650
_EOF
certtool --generate-self-signed \
--load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
--outfile "${CERTDIR}/${PN}_ca.cert.pem" \
--template "${T}/${PF}.$$" || die
chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
# Create the server certificate
echo
einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
read -r CN
einfo "Creating private key and certificate for server ${CN}..."
certtool --generate-privkey \
--outfile "${CERTDIR}/${PN}_${CN}.key.pem" || die
chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
cat > "${T}/${PF}.$$" <<- _EOF
cn = ${CN}
tls_www_server
dns_name = ${CN}
expiration_days = 3650
_EOF
certtool --generate-certificate \
--outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
--load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
--load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
--load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
--template "${T}/${PF}.$$" &>/dev/null
chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
else
einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
fi
# Create a client certificate
echo
einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
read -r CN
einfo "Creating private key and certificate for client ${CN}..."
certtool --generate-privkey \
--outfile "${CERTDIR}/${PN}_${CN}.key.pem" || die
chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
cat > "${T}/${PF}.$$" <<- _EOF
cn = ${CN}
tls_www_client
dns_name = ${CN}
expiration_days = 3650
_EOF
certtool --generate-certificate \
--outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
--load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
--load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
--load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
--template "${T}/${PF}.$$" || die
chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
rm -f "${T}/${PF}.$$"
echo
einfo "Here is the documentation on how to encrypt your log traffic:"
einfo " https://www.rsyslog.com/doc/rsyslog_tls.html"
}

@ -79,7 +79,7 @@ RDEPEND="
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
redis? (
>=dev-libs/hiredis-0.11.0:=
dev-libs/libevent[threads]
dev-libs/libevent[threads(+)]
)
relp? ( >=dev-libs/librelp-1.2.17:= )
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
@ -115,6 +115,8 @@ fi
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
PATCHES=( "${FILESDIR}"/${PN}-8.2112.0-pr5024-configure.patch )
pkg_setup() {
use test && python-any-r1_pkg_setup
}

@ -81,7 +81,7 @@ RDEPEND="
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
redis? (
>=dev-libs/hiredis-0.11.0:=
dev-libs/libevent[threads]
dev-libs/libevent[threads(+)]
)
relp? ( >=dev-libs/librelp-1.2.17:= )
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
@ -117,6 +117,8 @@ fi
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
PATCHES=( "${FILESDIR}"/${PN}-8.2112.0-pr5024-configure.patch )
pkg_setup() {
use test && python-any-r1_pkg_setup
}

@ -81,7 +81,7 @@ RDEPEND="
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
redis? (
>=dev-libs/hiredis-0.11.0:=
dev-libs/libevent[threads]
dev-libs/libevent[threads(+)]
)
relp? ( >=dev-libs/librelp-1.2.17:= )
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
@ -114,11 +114,11 @@ if [[ ${PV} == "9999" ]]; then
BDEPEND+=" >=dev-python/docutils-0.12"
fi
PATCHES=( "${FILESDIR}"/${P}-5004-hostname.patch )
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
PATCHES=( "${FILESDIR}"/${PN}-8.2112.0-pr5024-configure.patch )
pkg_setup() {
use test && python-any-r1_pkg_setup
}

@ -81,7 +81,7 @@ RDEPEND="
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
redis? (
>=dev-libs/hiredis-0.11.0:=
dev-libs/libevent[threads]
dev-libs/libevent[threads(+)]
)
relp? ( >=dev-libs/librelp-1.2.17:= )
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
@ -117,6 +117,11 @@ fi
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
PATCHES=(
"${FILESDIR}"/${PN}-8.2112.0-pr5024-configure.patch
"${FILESDIR}"/${P}-5004-hostname.patch
)
pkg_setup() {
use test && python-any-r1_pkg_setup
}

@ -81,7 +81,7 @@ RDEPEND="
rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
redis? (
>=dev-libs/hiredis-0.11.0:=
dev-libs/libevent[threads]
dev-libs/libevent[threads(+)]
)
relp? ( >=dev-libs/librelp-1.2.17:= )
rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
@ -117,6 +117,8 @@ fi
CONFIG_CHECK="~INOTIFY_USER"
WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
PATCHES=( "${FILESDIR}"/${PN}-8.2112.0-pr5024-configure.patch )
pkg_setup() {
use test && python-any-r1_pkg_setup
}

Binary file not shown.

@ -13,7 +13,7 @@ if [[ ${PV} == *9999* ]] ; then
EGIT_REPO_URI="https://github.com/kspalaiologos/${PN}.git"
else
SRC_URI="https://github.com/kspalaiologos/${PN}/releases/download/${PV}/${P}.tar.xz"
KEYWORDS="~amd64 ~arm64 ~loong ~x86"
KEYWORDS="amd64 arm64 ~loong ~x86"
fi
LICENSE="LGPL-3+"

@ -0,0 +1 @@
DIST dtrx-8.5.0.tar.gz 34061 BLAKE2B d8ecbd9f3594440656e40d811846dd302d271f189711176a406572871db69f98bb4fd81a76ebdce697faf8d56029f4dcf735d18795adf732809e6017a7395cf2 SHA512 0ef0c0c9c22d948f6a8ee801372605dae52f4f571a32bbaa180c2c1daab061d623119c91b745f6a86cd28d7d08cdb47029a4de38354bdb28c62acfab080cc0f1

@ -0,0 +1,57 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit distutils-r1 optfeature
DESCRIPTION="Do The Right eXtraction - extracts archives of different formats"
HOMEPAGE="https://github.com/dtrx-py/dtrx/
https://pypi.org/project/dtrx/"
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/${PN}-py/${PN}.git"
else
SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="GPL-3+"
SLOT="0"
DOCS=( README.md )
src_prepare() {
sed -i '/ *platform==/s|.*||' setup.cfg || die # bug #894148
distutils-r1_src_prepare
}
pkg_postinst() {
local supported_format
local -a supported_formats=(
arj
bzip2
cpio
gzip
lrzip
lzip
p7zip
rpm
unrar
unzip
xz-utils
zip
zstd
)
for supported_format in ${supported_formats[@]}; do
optfeature \
"extraction of supported archives using ${supported_format}" \
app-arch/${supported_format}
done
}

@ -0,0 +1,57 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..11} )
inherit distutils-r1 optfeature
DESCRIPTION="Do The Right eXtraction - extracts archives of different formats"
HOMEPAGE="https://github.com/dtrx-py/dtrx/
https://pypi.org/project/dtrx/"
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/${PN}-py/${PN}.git"
else
SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="GPL-3+"
SLOT="0"
DOCS=( README.md )
src_prepare() {
sed -i '/ *platform==/s|.*||' setup.cfg || die # bug #894148
distutils-r1_src_prepare
}
pkg_postinst() {
local supported_format
local -a supported_formats=(
arj
bzip2
cpio
gzip
lrzip
lzip
p7zip
rpm
unrar
unzip
xz-utils
zip
zstd
)
for supported_format in ${supported_formats[@]}; do
optfeature \
"extraction of supported archives using ${supported_format}" \
app-arch/${supported_format}
done
}

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>xgqt@gentoo.org</email>
<name>Maciej Barć</name>
</maintainer>
<upstream>
<bugs-to>https://github.com/dtrx-py/dtrx/issues/</bugs-to>
<remote-id type="github">dtrx-py/dtrx</remote-id>
<remote-id type="pypi">dtrx</remote-id>
</upstream>
</pkgmetadata>

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Remember: we cannot leverage autotools in this ebuild in order
@ -43,7 +43,7 @@ SLOT="0"
IUSE="+extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
fi
# Tests currently do not account for smaller feature set

@ -50,7 +50,7 @@ SLOT="0"
IUSE="+extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
fi
src_prepare() {

@ -50,7 +50,7 @@ SLOT="0"
IUSE="+extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-lassecollin )"
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
fi
src_prepare() {

@ -14,8 +14,7 @@ S="${WORKDIR}"/${P}/build/meson
LICENSE="|| ( BSD GPL-2 )"
SLOT="0/1"
# TODO: wire up static-libs
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+lzma lz4 static-libs test zlib"
RESTRICT="!test? ( test )"

Binary file not shown.

@ -1 +1,2 @@
DIST backupninja-backupninja_upstream-1.2.1.tar.gz 186791 BLAKE2B 2e761b5538c77f359b2cc8b8c593589303f36b5b4d4d9f65457a1786cc671bdc57ad067c5bc7678fbe1afdd17406c3dedd641f2553213ec28186defd4b9d1fd4 SHA512 974276697f908cbf2203fd0cd3ebfe4f44c350714616d3a74191df4f9e101ce6d5f90cd2887dc06c5ed937ea19f9b72db28f5735255fae9d6db4faeaacee808c
DIST backupninja-backupninja_upstream-1.2.2.tar.gz 187862 BLAKE2B cfc2c31a4e53179f9167874d1d5785a9dfdb4bc0e891ea353b5f5ff44dc5eb4f86358b210a96327de9701f7e6913f7afbf8fe104fea138f8006835e2bf04a7e6 SHA512 a11085998ff7342baa242e31a64ddc1d6e6cabd43572435b444ef0523ef8644ed9d362392bfb5c8ade06fbf046fecccf5c05ba2ae4345c65551dddcaa25a13a6

@ -0,0 +1,21 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DESCRIPTION="lightweight, extensible meta-backup system"
HOMEPAGE="https://0xacab.org/liberate/backupninja"
SRC_URI="https://0xacab.org/liberate/backupninja/-/archive/backupninja_upstream/${PV}/backupninja-backupninja_upstream-${PV}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
RDEPEND="dev-util/dialog"
DEPEND=""
S="${WORKDIR}/${PN}-${PN}_upstream-${PV}"
src_configure() {
econf --localstatedir=/var #578614
}

Binary file not shown.

@ -3,4 +3,5 @@ DIST Geekbench-2.4.3-Linux.tar.gz 3337551 BLAKE2B cb660f3c08cc812cb23374032490a1
DIST Geekbench-3.4.2-Linux.tar.gz 9986039 BLAKE2B 63d7e768d65bc033260a0d99da17df2e518750f19882e63dbc9bbe6ff0b52a8cddb35b9143e85c01838bf5d77a04599578fc0a57a3e6fd89e7aec8c8ffdd4f5b SHA512 a61a5d5481682baefdce64f6054c3373900e8cd585dcbfa2feabbf386032986b40b603619c552102401a83e0b748831d00af5b5b5278e88ef42dee176adf06e9
DIST Geekbench-4.4.1-Linux.tar.gz 71076124 BLAKE2B 14c2b80c971798e7d2bb256e76c7ab9c48e8c1c389e2f7547a436f706ac4f21c1e52e564cd584893071ee2f9f0a4747cd03ea72cc728ff8e4f369d5cc794d77a SHA512 fa687d33a7d7a2d09c544e3d17de93f41cfa77915c708cd1ef0743f84f7f83df9d3f8df2872a8f85ed2c4c872e3cd41932685ffeb19cdb0ea047ab5116713420
DIST Geekbench-5.4.6-Linux.tar.gz 93188716 BLAKE2B 6a38449b8b494fe878d2c583838c2cc95eef736a174231d8ab25b616c39b8deb4edbadd5f9545176a01a9fff55935f20c572fb9cb3902dddc2fad2836cba5166 SHA512 6c1bc9db284ee4dea282f329b08bc75172c92951d1d43131226eaa42e05e1e39e11d34fe0c3d29f45e6b421bea16a102170a631a4b11a7a3d026024171ba5ccb
DIST Geekbench-5.5.0-Linux.tar.gz 93199968 BLAKE2B 45b4b45c7f57beab7d3ebaee8b43ee88b04fcd2325bc28ceaf45603ccdd003be3cc9e2ca4cf52a713eda04cccf01eacaab2b292ac7517a1df28f70ab7cd3066c SHA512 bc1988a81bb8c3c38e471eb9076d2a321e2dbd5e71d08f2a47bcc4a36581bfb26df42dfb490dda0257bee471b7116835ad5929fd776e82fdfd766d4cc77edfdf
DIST Geekbench-5.5.1-Linux.tar.gz 93199992 BLAKE2B e2ff24da19134778dd1b3036ac3fb8b2d99746dbe41b1959cb74522613a7b9a8a0e3796d22351af877a9ea7a734c6b101a0ffadfd3bbc2e29fb9b12e59106848 SHA512 0fd90d55eaaf178e4c981ef6ef54808d1ff86edc92c907a5d8e2a3a379c2289e614d917db330a3d748c818bcedb2dc69cad250b1b98ba80287c6d9a66382bcc4
DIST Geekbench-6.0.0-Linux.tar.gz 258039528 BLAKE2B d77b8920f7b935b1db5023b58624fa7c3f0596c0ac8413725e23765e191e5225cb0862d0bd722b5f40056fe3027f417bfa2e97519930e2ad3ce3cd896e8cdd12 SHA512 e3e724c7dad7879a5be3d885dc1a163b3d84d78bf60b501279c289aad55c610c9634ecfa46352b0ea9ad7946129e1cc97d8ef4f5970888f8ee03fcd7a2bf9475

@ -0,0 +1,45 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PV="k9ea2vqm"
DESCRIPTION="A Cross-Platform Benchmark for Android, iOS, Linux, MacOS and Windows"
HOMEPAGE="https://www.geekbench.com/"
SRC_URI="https://cdn.geekbench.com/${MY_PV}/Geekbench-${PV}-Linux.tar.gz"
S="${WORKDIR}/Geekbench-${PV}-Linux"
KEYWORDS="-* ~amd64"
LICENSE="geekbench"
SLOT="6"
RESTRICT="bindist mirror"
QA_PREBUILT="
opt/geekbench6/geekbench_avx
opt/geekbench6/geekbench6
opt/geekbench6/geekbench_x86_64
"
pkg_nofetch() {
elog "Please download ${A} from ${HOMEPAGE}/download/linux"
elog "and place it in your DISTDIR directory."
}
src_install() {
exeinto /opt/geekbench6
doexe geekbench_avx2 geekbench6 geekbench_x86_64
insinto /opt/geekbench6
doins geekbench.plar geekbench-workload.plar
dodir /opt/bin
dosym ../geekbench6/geekbench6 /opt/bin/geekbench6
}
pkg_postinst() {
elog "If you have purchased a commercial license, you can enter"
elog "your email address and your license key with the following command:"
elog "geekbench6 -r <email address> <license key>"
}

Binary file not shown.

@ -1,21 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EGIT_REPO_URI="https://github.com/spotify/docker-gc.git"
inherit git-r3
DESCRIPTION="Docker garbage collection of containers and images"
HOMEPAGE="https://github.com/spotify/docker-gc/"
LICENSE="Apache-2.0"
SLOT="0"
RDEPEND="app-containers/docker"
src_install() {
dosbin docker-gc
dodoc README.md
}

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
<remote-id type="github">spotify/docker-gc</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -35,5 +35,5 @@ RDEPEND="
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -14,7 +14,7 @@ if [[ ${PV} == 9999* ]]; then
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/certbot/certbot/archive/v${PV}.tar.gz -> certbot-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
S=${WORKDIR}/certbot-${PV}/acme
fi
@ -35,5 +35,5 @@ RDEPEND="
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -35,5 +35,5 @@ RDEPEND="
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -25,5 +25,5 @@ RDEPEND="
>=dev-python/dns-lexicon-3.2.1[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -26,5 +26,5 @@ RDEPEND="
>=dev-python/dns-lexicon-3.2.1[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
distutils_enable_tests pytest

@ -11,7 +11,7 @@ if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
fi
S=${WORKDIR}/${P}/${PN}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl test tofu tools usb user-socket wks-server"
RESTRICT="!test? ( test )"

@ -0,0 +1,38 @@
From e408786075b9540f76783f5c3ce87f6d1ece13cf Mon Sep 17 00:00:00 2001
From: Guillem Jover <guillem@hadrons.org>
Date: Sun, 12 Feb 2023 23:55:09 +0100
Subject: [PATCH] build: Fix version script linker support detection
When the linker uses --no-undefined-version either specified by the user
or as the default behavior (such as with newer clang >= 16 releases), a missing symbol definition will cause a linker error if that symbol is
listed in the version script.
Bug: https://bugs.gentoo.org/894010
Upstream issue: https://gitlab.freedesktop.org/libbsd/libmd/-/issues/1
Upstream commit: https://gitlab.freedesktop.org/libbsd/libmd/-/commit/e408786075b9540f76783f5c3ce87f6d1ece13cf
---
m4/libmd-linker.m4 | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/m4/libmd-linker.m4 b/m4/libmd-linker.m4
index 7d1236a..3d6edcd 100644
--- a/m4/libmd-linker.m4
+++ b/m4/libmd-linker.m4
@@ -8,7 +8,11 @@ AC_DEFUN([LIBMD_LINKER_VERSION_SCRIPT], [
save_LDFLAGS=$LDFLAGS
LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map"
AC_LINK_IFELSE([
- AC_LANG_PROGRAM([], [])
+ AC_LANG_PROGRAM([[
+extern int symbol(void);
+int symbol(void) { return 0; }
+]], [[
+]])
], [
libmd_cv_version_script=yes
], [
--
GitLab

@ -1,9 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit multilib-minimal
inherit autotools multilib-minimal
DESCRIPTION="Message Digest functions from BSD systems"
HOMEPAGE="https://www.hadrons.org/software/libmd/"
@ -13,6 +13,17 @@ LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
PATCHES=(
"${FILESDIR}/${P}-fix-version-script-linker-support-detection.patch"
)
src_prepare() {
default
# Drop on next release, only needed for lld patch
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE="${S}" econf
}

@ -1,27 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools multilib-minimal git-r3
DESCRIPTION="Message Digest functions from BSD systems"
HOMEPAGE="https://www.hadrons.org/software/libmd/"
EGIT_REPO_URI="https://git.hadrons.org/git/libmd.git"
LICENSE="|| ( BSD BSD-2 ISC BEER-WARE public-domain )"
SLOT="0"
src_prepare() {
default
eautoreconf
}
multilib_src_configure() {
ECONF_SOURCE="${S}" econf
}
multilib_src_install() {
default
find "${ED}" -type f -name "*.la" -delete || die
}

@ -0,0 +1,45 @@
https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/commit/447e4747089731f322589299d3ff6fd54e56aefb
From 447e4747089731f322589299d3ff6fd54e56aefb Mon Sep 17 00:00:00 2001
From: Justus Winter <justus@sequoia-pgp.org>
Date: Thu, 9 Feb 2023 10:44:26 +0100
Subject: [PATCH] tests: Normalize underlines.
- GnuPG emits a header with underlines in key listings that changes
with the length of GNUPGHOME. Now, since the state directories
are created within TMPDIR, the length of both GNUPGHOME and the
underline changes. Previously, we normalized GNUPGHOME, but we
failed to normalize the underline.
- Fixes #8.
--- a/tests/gpg.rs
+++ b/tests/gpg.rs
@@ -243,12 +243,24 @@ impl Output {
}
/// Canonicalizes the paths in the output.
+ ///
+ /// This replaces `homedir` with `"/HOMEDIR"` and `experiment`
+ /// with `"/EXPERIMENT"` in stdout and stderr, and normalizes the
+ /// underline decorating `homedir` in key listings in stdout.
fn canonicalize(mut self, homedir: &Path, experiment: &Path) -> Self {
+ const DASHES: &str =
+ "\n------------------------------------------------------------";
+ let d = regex::bytes::Regex::new(
+ &DASHES[..DASHES.len().min(homedir.to_str().unwrap().len() + 1)])
+ .unwrap();
let h = regex::bytes::Regex::new(homedir.to_str().unwrap()).unwrap();
let e = regex::bytes::Regex::new(experiment.to_str().unwrap()).unwrap();
self.stdout =
- e.replace_all(&h.replace_all(&self.stdout, &b"/HOMEDIR"[..]),
- &b"/EXPERIMENT"[..])
+ e.replace_all(
+ &h.replace_all(
+ &d.replace_all(&self.stdout, &b"\n--------"[..]),
+ &b"/HOMEDIR"[..]),
+ &b"/EXPERIMENT"[..])
.into();
self.stderr =
e.replace_all(&h.replace_all(&self.stderr, &b"/HOMEDIR"[..]),
--
GitLab

@ -307,7 +307,10 @@ LICENSE+="
"
SLOT="0"
KEYWORDS="~amd64"
# https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/issues/8
# See e.g. https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/issues/8
# Even though that's fixed as of >0.2.0, tests still completely fail inside
# Portage. Not yet sure why/how. They do better outside, although some fail
# still then.
RESTRICT="test"
DEPEND="
@ -315,14 +318,14 @@ DEPEND="
dev-libs/nettle:=
"
RDEPEND="${DEPEND}"
# Needed for bindgen
BDEPEND="sys-devel/clang"
QA_FLAGS_IGNORED="usr/bin/gpg-sq usr/bin/gpgv-sq"
src_configure() {
export OPENSSL_NO_VENDOR=true
cargo_src_configure
}
PATCHES=(
"${FILESDIR}"/${P}-tests.patch
)
src_test() {
export GNUPGHOME="${T}"/.gnupg

@ -0,0 +1,52 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools flag-o-matic
DESCRIPTION="TrouSerS' support tools for the Trusted Platform Modules"
HOMEPAGE="http://trousers.sourceforge.net"
SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz"
LICENSE="CPL-1.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~s390 ~x86"
IUSE="nls pkcs11 debug"
DEPEND=">=app-crypt/trousers-0.3.15-r1
dev-libs/openssl:0=
pkcs11? ( dev-libs/opencryptoki )"
RDEPEND="${DEPEND}"
BDEPEND="nls? ( sys-devel/gettext )"
src_prepare() {
default
# upstream didn't generate the tarball correctly so we must bootstrap
# ouselves
mkdir -p po || die
mkdir -p m4 || die
cp -R po_/* po/ || die
touch po/Makefile.in.in || die
touch m4/Makefile.am || die
sed -i -r \
-e '/CFLAGS/s/ -m64//' \
configure.ac || die
eautoreconf
}
src_configure() {
append-cppflags $(usex debug -DDEBUG -DNDEBUG)
econf \
$(use_enable nls) \
$(use pkcs11 || echo --disable-pkcs11-support)
}
src_install() {
default
find "${D}" -name '*.la' -delete || die
}

@ -0,0 +1,69 @@
https://bugs.gentoo.org/713444
From 2299eadf77ae7a7ec52148b6a8f4ea37e217eafa Mon Sep 17 00:00:00 2001
From: Stijn Tintel <stijn@linux-ipv6.be>
Date: Thu, 2 Feb 2023 01:06:15 +0200
Subject: [PATCH] tspi: drop the use of getpwent_r
On systems with musl libc, libtspi.so is unusable due to the lack of
getpwent_r. As there are multiple historical functions named getpwent_r
that all behave differently, let's just play it safe and stop using it
altogether.
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
---
src/tspi/ps/tspps.c | 16 ----------------
1 file changed, 16 deletions(-)
diff --git a/src/tspi/ps/tspps.c b/src/tspi/ps/tspps.c
index b5e83d0..ae7b3df 100644
--- a/src/tspi/ps/tspps.c
+++ b/src/tspi/ps/tspps.c
@@ -51,9 +51,7 @@
static int user_ps_fd = -1;
static MUTEX_DECLARE_INIT(user_ps_lock);
-#if (defined (__FreeBSD__) || defined (__OpenBSD__))
static MUTEX_DECLARE_INIT(user_ps_path);
-#endif
static struct flock fl;
@@ -66,9 +64,6 @@ get_user_ps_path(char **file)
TSS_RESULT result;
char *file_name = NULL, *home_dir = NULL;
struct passwd *pwp;
-#if (defined (__linux) || defined (linux) || defined(__GLIBC__))
- struct passwd pw;
-#endif
struct stat stat_buf;
char buf[PASSWD_BUFSIZE];
uid_t euid;
@@ -96,16 +91,6 @@ get_user_ps_path(char **file)
#else
setpwent();
while (1) {
-#if (defined (__linux) || defined (linux) || defined(__GLIBC__))
- rc = getpwent_r(&pw, buf, PASSWD_BUFSIZE, &pwp);
- if (rc) {
- LogDebugFn("USER PS: Error getting path to home directory: getpwent_r: %s",
- strerror(rc));
- endpwent();
- return TSPERR(TSS_E_INTERNAL_ERROR);
- }
-
-#elif (defined (__FreeBSD__) || defined (__OpenBSD__))
if ((pwp = getpwent()) == NULL) {
LogDebugFn("USER PS: Error getting path to home directory: getpwent: %s",
strerror(rc));
@@ -113,7 +98,6 @@ get_user_ps_path(char **file)
MUTEX_UNLOCK(user_ps_path);
return TSPERR(TSS_E_INTERNAL_ERROR);
}
-#endif
if (euid == pwp->pw_uid) {
home_dir = strdup(pwp->pw_dir);
break;
--
2.39.1

@ -0,0 +1,73 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools linux-info readme.gentoo-r1 systemd udev
DESCRIPTION="An open-source TCG Software Stack (TSS) v1.1 implementation"
HOMEPAGE="http://trousers.sf.net"
SRC_URI="mirror://sourceforge/trousers/${PN}/${P}.tar.gz"
LICENSE="CPL-1.0 GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86"
IUSE="doc selinux" # gtk
# gtk support presently does NOT compile.
# gtk? ( >=x11-libs/gtk+-2 )
DEPEND="acct-group/tss
acct-user/tss
>=dev-libs/glib-2
>=dev-libs/openssl-0.9.7:0=
"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-tcsd )"
BDEPEND="virtual/pkgconfig"
PATCHES=(
"${FILESDIR}/${PN}-0.3.13-nouseradd.patch"
"${FILESDIR}/${PN}-0.3.14-Makefile.am-Mark-tddl.a-nodist.patch"
"${FILESDIR}/${P}-tspi-drop-the-use-of-getpwent_r.patch"
)
DOCS="AUTHORS ChangeLog NICETOHAVES README TODO"
DOC_CONTENTS="
If you have problems starting tcsd, please check permissions and
ownership on /dev/tpm* and ~tss/system.data
"
CONFIG_CHECK="~TCG_TPM"
src_prepare() {
default
eautoreconf
}
src_configure() {
# econf --with-gui=$(usex gtk gtk openssl)
econf --with-gui=openssl
}
src_install() {
default
find "${D}" -name '*.la' -delete || die
keepdir /var/lib/tpm
use doc && dodoc doc/*
newinitd "${FILESDIR}"/tcsd.initd tcsd
systemd_dounit "${FILESDIR}"/tcsd.service
udev_dorules "${FILESDIR}"/61-trousers.rules
fowners tss:tss /var/lib/tpm
readme.gentoo_create_doc
}
pkg_postinst() {
udev_reload
}
pkg_postrm() {
udev_reload
}

@ -1,2 +1,2 @@
DIST yubikey-manager-qt-1.2.2.tar.gz 17311287 BLAKE2B 115dbf18ce0bfd48a1b172153d9770a3bde754b1dbef55ee1ec9480128305b9fb0d52af23906a6f6040df71cc4d3d4be216615fc3807395f7e7be1615a5568da SHA512 dbac2d51b198ab15051790e080ad92aaef4b0d44596ad136115469e7bf038d6b56d1bfa78a69d1fda3644543f9762051767b8a1fd46a80f2f62ecf836f7df3d8
DIST yubikey-manager-qt-1.2.4.tar.gz 17362256 BLAKE2B 5fd76f4ede59e8dc4ddec6c232fc35396962eb05937a453e7b7c8a93b88658c493750d31854b550f6ed3c7ab7e47df423f50bdd964b4145cf5178b8c00bbf044 SHA512 6b28aa3099b5158690f8f14271588adbfc4731a910eeece68b1ed6d1ef12dc2fb00debb91503748b87db9e482b8d68dab06c4476911c15880ad25652f47d4570
DIST yubikey-manager-qt-1.2.5.tar.gz 17360184 BLAKE2B 3b9d41e80fe81fe3f394d66ab3c2c8dc986fae0df5f51f184186ce800177aec5f7708e9b03259b5f9f20530cba66e5a73355135dacb51481e1169f7129fd47bd SHA512 e204f393a939bdc8bdec481b1a401c3f99fc364706dc4efc7460286a9bb4e5aa51496a92015a4b328eb948084135e95bb30f3f043ed742293799b6650915d6a7

@ -5,4 +5,7 @@
<email>zerochaos@gentoo.org</email>
<name>Rick Farina</name>
</maintainer>
<upstream>
<remote-id type="github">Yubico/yubikey-manager-qt</remote-id>
</upstream>
</pkgmetadata>

@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{9,10} )
inherit qmake-utils python-single-r1 desktop
DESCRIPTION="Cross-platform application for configuring any YubiKey over all USB transports"
HOMEPAGE="https://developers.yubico.com/yubikey-manager-qt https://github.com/Yubico/yubikey-manager-qt"
HOMEPAGE="https://developers.yubico.com/yubikey-manager-qt/ https://github.com/Yubico/yubikey-manager-qt"
SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
LICENSE="BSD-2"
@ -18,7 +18,7 @@ REQUIRED_USE=${PYTHON_REQUIRED_USE}
DEPEND="${PYTHON_DEPS}
$(python_gen_cond_dep '
>=app-crypt/yubikey-manager-4.0.0[${PYTHON_USEDEP}]
<app-crypt/yubikey-manager-5.0.0[${PYTHON_USEDEP}]
dev-python/cryptography[${PYTHON_USEDEP}]
')
dev-python/pyotherside[${PYTHON_SINGLE_USEDEP}]

@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{9..11} )
inherit qmake-utils python-single-r1 desktop
DESCRIPTION="Cross-platform application for configuring any YubiKey over all USB transports"
HOMEPAGE="https://developers.yubico.com/yubikey-manager-qt https://github.com/Yubico/yubikey-manager-qt"
HOMEPAGE="https://developers.yubico.com/yubikey-manager-qt/ https://github.com/Yubico/yubikey-manager-qt"
SRC_URI="https://developers.yubico.com/${PN}/Releases/${P}.tar.gz"
S="${WORKDIR}/${PN}"
@ -19,7 +19,7 @@ REQUIRED_USE=${PYTHON_REQUIRED_USE}
DEPEND="${PYTHON_DEPS}
$(python_gen_cond_dep '
>=app-crypt/yubikey-manager-4.0.0[${PYTHON_USEDEP}]
>=app-crypt/yubikey-manager-5.0.0[${PYTHON_USEDEP}]
dev-python/cryptography[${PYTHON_USEDEP}]
')
dev-python/pyotherside[${PYTHON_SINGLE_USEDEP}]

Binary file not shown.

@ -20,7 +20,7 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 s
BDEPEND="
$(python_gen_any_dep '
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
')
"

Binary file not shown.

@ -3,8 +3,11 @@ DIST emacs-18.59.tar.gz 2962652 BLAKE2B d617636daff41e672af2dcda26ec24b2495cf0a3
DIST emacs-25.3-patches-4.tar.xz 5164 BLAKE2B 30ef1e7ac6ee9a702678899cb27ea9c321eb0711d55917118ec99ea9e060e79bae179172d0a2dda5821c19902f6e0813e17ac71c198cd814c265838f96883b87 SHA512 ea487de3bb792386510c23c295441438c2fc4eae085fe9d41e5e16181fd4265c1d205b360ce977070a43343feeafac5b9392ea39414f2b170d7051f89ed58502
DIST emacs-25.3.tar.xz 42854740 BLAKE2B 4f4e2572bbef48b75c561497fc22046081e56099b6174725d79b15a5b16d5c886eaf8ff3f75cf561e989ebb092ab9e98ba7503e720a9db7560758b30d5116f23 SHA512 1cce656451b6ca8502ebb229e88bd3ef48b7f9444a10eeac4ea43bd5491b2efacd641dfa35227a33362c3866493d3449cf1df81606563eef44bba0ed668e457f
DIST emacs-26.3-patches-3.tar.xz 4160 BLAKE2B ae6fac12a2d2d35c31c895f1be9104b54c283cf4385d21e0ccd3825a3349d60495e441a5fa9f535d4b3d4c60da530ee036a475643cb11862f2a6e1bb44dc7deb SHA512 1edfdbbe6a97ffcdb17facc90336dd6f8d3d397bc95cf06fa170a4ca68e653226de8a5c2001d8dc3d3a0144d50421f2208c6fa3a816123ef952cb25df4aace49
DIST emacs-26.3-patches-4.tar.xz 4520 BLAKE2B 32992d3e3e122fd91ccdde60bcb2f7483033670e4680c6bccdf1f686c444628a1ef325657eb9b50fb6abfddc24c3f59b88ce5a4c142718f33f0efb6a6eff1234 SHA512 47e604a24b950ac019644cac06c40da09b941dde5e4d42bc72f0a256333e38663c79583bda97706e565eca08ac5802b603f3db13ed7075799e7ef24aba6454a9
DIST emacs-26.3.tar.xz 44415140 BLAKE2B aa8434e6431992ee40402f03a890dd2c49784ee76f437888efe61d66b9aa2bdb816eb0bfe1055e9e154a8bb3ed065fee71623741b474d465a96964618ec775e3 SHA512 4d5a4319253afb081e105a3697eb6eeb8d8a0da18cd41346e376ca5af1e180a26e641f76c64fad1b0253168f14a511f0a4d9d4141524fb1cf4d04f25b05a76e9
DIST emacs-27.2-patches-4.tar.xz 10104 BLAKE2B c4a6651744583ed6d85a8f2f27f86999b6cea76229feb6423679f9b9da88e5ac2606fdb6933b4a5c2ada31ac760f3921721a0fd84912a81b8727c0eef84984ae SHA512 fd16fa75e2453c6d3562ff3e98cebc24960774fdc8f0e72ae838376cec090308934e11be8df98fc7a100e14125cb096f23bcb29955e7c809090105ddc51495d6
DIST emacs-27.2-patches-5.tar.xz 10460 BLAKE2B 045d9b8af154510d5780c0e3623d6839180cf395a88df1e40f9bb168f84df636e36f02681051ecd4e66a5095a7e9004005faf4c7047253fca22b9e3d8cc61570 SHA512 137a6a4f7f2c5511d001edc4386b7a9b00901faa49c9f69978f74ead838b686fe8f076da44780987ffb5e064f8a76f23f6887dfd9b5f1dec3b35b17d594d5c33
DIST emacs-27.2.tar.xz 44624480 BLAKE2B 245ea96004b90f81ac74de74521cbbe086caf1176937e08157eae12cdde5a0f35fc77f7119272ed812974358e5e95abb05e1c2e4f3b501cf5401ea9274f62156 SHA512 0f63a5a8709b113ef790c1a64845dad05ead096f93f62164ff221c517a35b91ea7bced75a992d794981a85382cda03cca7338da2f5ef8f6ef1459b88018a4ce9
DIST emacs-28.2-patches-1.tar.xz 3404 BLAKE2B af0ea87f8406b3fe646bc32fea5866c1c7bdeeb5bb5ef733a361cf31f96b72b0dc6a7afb9a166f6182b7835cadd7b0b25f61a79abed241788f35a74d5937513f SHA512 02f9f574d2d06750ddf5218aaf3c725f954020bde94492264a9ad1d3294b24866f89d296b126ed26390f0597afb55daad944c31dde2bfedc6ea1ab769ea11c7d
DIST emacs-28.2-patches-2.tar.xz 3760 BLAKE2B 73a78b4fa05aec86ed29315acdad8219957f3acae4ebca130ec17a578522443e8fe911a3165c3918eee12d6a0b8173c0d22166888ae392d8a83689494bdfe689 SHA512 841fcde4f8a0428e017b1f6fb70a2e4f9f7c5ee2ead410f48381f66815b9c2c23990b23ec06988a78aef01fbc4e624ceef05bd2eafd071d2174e998ba09a79a6
DIST emacs-28.2.tar.xz 47722600 BLAKE2B a7e4990658b5e7306510f8dded93aaf0b82cdd9306df8b786526d038c3249ef9579287075f2235eb01a71ae1699db555254f137b86ab2d2305b45895053df552 SHA512 a7cec7e3e82367815a1442f69af54102dbfc434069810a9dec5938a6660cb8b076e6f1fb0bfff9695b15603dbbe05eb9c7dfd92e90cf40fc4d1e5746bce83bd8

@ -0,0 +1,376 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"
SRC_URI="mirror://gnu/emacs/${P}.tar.xz
https://dev.gentoo.org/~ulm/emacs/${P}-patches-4.tar.xz"
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
SLOT="26"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm xwidgets zlib"
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
sys-libs/ncurses:0=
acl? ( virtual/acl )
alsa? ( media-libs/alsa-lib )
dbus? ( sys-apps/dbus )
games? ( acct-group/gamestat )
gpm? ( sys-libs/gpm )
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
kerberos? ( virtual/krb5 )
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
gui? ( !aqua? (
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libxcb
x11-misc/xbitmaps
gsettings? ( >=dev-libs/glib-2.28.6 )
gif? ( media-libs/giflib:0= )
jpeg? ( media-libs/libjpeg-turbo:0= )
png? ( >=media-libs/libpng-1.4:0= )
svg? ( >=gnome-base/librsvg-2.0 )
tiff? ( media-libs/tiff:= )
xpm? ( x11-libs/libXpm )
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
xft? (
media-libs/fontconfig
media-libs/freetype
x11-libs/libXft
x11-libs/libXrender
cairo? ( >=x11-libs/cairo-1.12.18[X] )
m17n-lib? (
>=dev-libs/libotf-0.9.4
>=dev-libs/m17n-lib-1.5.1
)
)
gtk? (
x11-libs/gtk+:3
xwidgets? (
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
x11-libs/libXcomposite
)
)
!gtk? (
motif? (
>=x11-libs/motif-2.3:0
x11-libs/libXpm
x11-libs/libXmu
x11-libs/libXt
)
!motif? (
Xaw3d? (
x11-libs/libXaw3d
x11-libs/libXmu
x11-libs/libXt
)
!Xaw3d? ( athena? (
x11-libs/libXaw
x11-libs/libXmu
x11-libs/libXt
) )
)
)
) )"
DEPEND="${RDEPEND}
gui? ( !aqua? ( x11-base/xorg-proto ) )"
BDEPEND="virtual/pkgconfig
gzip-el? ( app-arch/gzip )"
IDEPEND="app-eselect/eselect-emacs"
RDEPEND+=" ${IDEPEND}"
EMACS_SUFFIX="emacs-${SLOT}"
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
# FULL_VERSION keeps the full version number, which is needed in
# order to determine some path information correctly for copy/move
# operations later on
FULL_VERSION="${PV%%_*}"
S="${WORKDIR}/emacs-${FULL_VERSION}"
PATCHES=("${WORKDIR}/patch")
src_prepare() {
default
# Fix filename reference in redirected man page
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
AT_M4DIR=m4 eautoreconf
}
src_configure() {
strip-flags
filter-flags -pie #526948
if use ia64; then
replace-flags "-O[2-9]" -O1 #325373
else
replace-flags "-O[3-9]" -O2
fi
local myconf
if use alsa; then
use sound || ewarn \
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
myconf+=" --with-sound=alsa"
else
myconf+=" --with-sound=$(usex sound oss)"
fi
if ! use gui; then
einfo "Configuring to build without window system support"
myconf+=" --without-x --without-ns"
elif use aqua; then
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
myconf+=" --with-ns --disable-ns-self-contained"
myconf+=" --without-x"
else
myconf+=" --with-x --without-ns"
myconf+=" --without-gconf"
myconf+=" $(use_with gsettings)"
myconf+=" $(use_with toolkit-scroll-bars)"
myconf+=" $(use_with gif)"
myconf+=" $(use_with jpeg)"
myconf+=" $(use_with png)"
myconf+=" $(use_with svg rsvg)"
myconf+=" $(use_with tiff)"
myconf+=" $(use_with xpm)"
myconf+=" $(use_with imagemagick)"
if use xft; then
myconf+=" --with-xft"
myconf+=" $(use_with cairo)"
myconf+=" $(use_with m17n-lib libotf)"
myconf+=" $(use_with m17n-lib m17n-flt)"
else
myconf+=" --without-xft"
myconf+=" --without-cairo"
myconf+=" --without-libotf --without-m17n-flt"
use cairo && ewarn \
"USE flag \"cairo\" has no effect if \"xft\" is not set."
use m17n-lib && ewarn \
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
fi
local f line
if use gtk; then
einfo "Configuring to build with GIMP Toolkit (GTK+)"
while read line; do ewarn "${line}"; done <<-EOF
Your version of GTK+ will have problems with closing open
displays. This is no problem if you just use one display, but
if you use more than one and close one of them Emacs may crash.
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
If you intend to use more than one display, then it is strongly
recommended that you compile Emacs with the Athena/Lucid or the
Motif toolkit instead.
EOF
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
for f in motif Xaw3d athena; do
use ${f} && ewarn \
"USE flag \"${f}\" has no effect if \"gtk\" is set."
done
elif use motif; then
einfo "Configuring to build with Motif toolkit"
myconf+=" --with-x-toolkit=motif"
for f in Xaw3d athena; do
use ${f} && ewarn \
"USE flag \"${f}\" has no effect if \"motif\" is set."
done
elif use athena || use Xaw3d; then
einfo "Configuring to build with Athena/Lucid toolkit"
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
else
einfo "Configuring to build with no toolkit"
myconf+=" --with-x-toolkit=no"
fi
! use gtk && use xwidgets && ewarn \
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
fi
econf \
--program-suffix="-${EMACS_SUFFIX}" \
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
--localstatedir="${EPREFIX}"/var \
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
--without-compress-install \
--without-hesiod \
--without-pop \
--with-file-notification=$(usev inotify || usev gfile || echo no) \
$(use_enable acl) \
$(use_with dbus) \
$(use_with dynamic-loading modules) \
$(use_with games gameuser ":gamestat") \
$(use_with gpm) \
$(use_with kerberos) $(use_with kerberos kerberos5) \
$(use_with lcms lcms2) \
$(use_with libxml2 xml2) \
$(use_with mailutils) \
$(use_with selinux) \
$(use_with ssl gnutls) \
$(use_with systemd libsystemd) \
$(use_with threads) \
$(use_with wide-int) \
$(use_with zlib) \
${myconf}
}
src_compile() {
# Disable sandbox when dumping. For the unbelievers, see bug #131505
emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
# move info dir to avoid collisions with the dir file generated by portage
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
rm -rf "${ED}"/usr/share/{applications,icons} || die
rm -rf "${ED}/usr/$(get_libdir)" || die
rm -rf "${ED}"/var || die
# remove unused <version>/site-lisp dir
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
# remove COPYING file (except for etc/COPYING used by describe-copying)
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
if use systemd; then
insinto /usr/lib/systemd/user
sed -e "/^##/d" \
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
assert
fi
if use gzip-el; then
# compress .el files when a corresponding .elc exists
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
assert "gzip .el failed"
fi
local cdir
if use source; then
cdir="/usr/share/emacs/${FULL_VERSION}/src"
insinto "${cdir}"
# This is not meant to install all the source -- just the
# C source you might find via find-function
doins src/*.{c,h,m}
elif has installsources ${FEATURES}; then
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
fi
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
X
;;; ${EMACS_SUFFIX} site-lisp configuration
X
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
Y (setq find-function-C-source-directory
Y "${EPREFIX}${cdir}")
X (let ((path (getenv "INFOPATH"))
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
X (and path
X ;; move Emacs Info dir before anything else in /usr/share
X (let* ((p (cons nil (split-string path ":" t))) (q p))
X (while (and (cdr q) (not (string-match re (cadr q))))
X (setq q (cdr q)))
X (setcdr q (cons dir (delete dir (cdr q))))
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
EOF
elisp-site-file-install "${T}/${SITEFILE}" || die
dodoc README BUGS CONTRIBUTE
if use gui && use aqua; then
dodir /Applications/Gentoo
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
mv nextstep/Emacs.app \
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
fi
local DOC_CONTENTS="You can set the version to be started by
/usr/bin/emacs through the Emacs eselect module, which also
redirects man and info pages. Therefore, several Emacs versions can
be installed at the same time. \"man emacs.eselect\" for details.
\\n\\nIf you upgrade from a previous major version of Emacs, then
it is strongly recommended that you use app-admin/emacs-updater
to rebuild all byte-compiled elisp files of the installed Emacs
packages."
if use gui; then
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
machine would satisfy basic Emacs requirements under X11.
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
for how to enable anti-aliased fonts."
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
symlink it into /Applications by yourself."
fi
readme.gentoo_create_doc
}
pkg_preinst() {
# move Info dir file to correct name
if [[ -d ${ED}/usr/share/info ]]; then
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
fi
}
pkg_postinst() {
elisp-site-regen
readme.gentoo_print_elog
if use livecd; then
# force an update of the emacs symlink for the livecd/dvd,
# because some microemacs packages set it with USE=livecd
eselect emacs update
else
eselect emacs update ifunset
fi
}
pkg_postrm() {
elisp-site-regen
eselect emacs update ifunset
}

@ -0,0 +1,439 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
if [[ ${PV##*.} = 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
EGIT_BRANCH="emacs-27"
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
S="${EGIT_CHECKOUT_DIR}"
SLOT="${PV%%.*}-vcs"
else
# FULL_VERSION keeps the full version number, which is needed in
# order to determine some path information correctly for copy/move
# operations later on
FULL_VERSION="${PV%%_*}"
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
S="${WORKDIR}/emacs-${FULL_VERSION}"
# PV can be in any of the following formats:
# 27.1 released version (slot 27)
# 27.1_rc1 upstream release candidate (27)
# 27.0.9999 live ebuild (slot 27-vcs)
# 27.0.90 upstream prerelease snapshot (27-vcs)
# 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
if [[ ${PV} == *_pre* ]]; then
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
S="${WORKDIR}/emacs"
elif [[ ${PV//[0-9]} != "." ]]; then
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-5.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
fi
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm xwidgets zlib"
RESTRICT="test"
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
sys-libs/ncurses:0=
acl? ( virtual/acl )
alsa? ( media-libs/alsa-lib )
dbus? ( sys-apps/dbus )
games? ( acct-group/gamestat )
gmp? ( dev-libs/gmp:0= )
gpm? ( sys-libs/gpm )
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
json? ( dev-libs/jansson:= )
kerberos? ( virtual/krb5 )
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
gui? ( !aqua? (
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libxcb
x11-misc/xbitmaps
gsettings? ( >=dev-libs/glib-2.28.6 )
gif? ( media-libs/giflib:0= )
jpeg? ( media-libs/libjpeg-turbo:0= )
png? ( >=media-libs/libpng-1.4:0= )
svg? ( >=gnome-base/librsvg-2.0 )
tiff? ( media-libs/tiff:= )
xpm? ( x11-libs/libXpm )
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
xft? (
media-libs/fontconfig
media-libs/freetype
x11-libs/libXft
x11-libs/libXrender
cairo? ( >=x11-libs/cairo-1.12.18[X] )
harfbuzz? ( media-libs/harfbuzz:0= )
m17n-lib? (
>=dev-libs/libotf-0.9.4
>=dev-libs/m17n-lib-1.5.1
)
)
gtk? (
x11-libs/gtk+:3
xwidgets? (
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
x11-libs/libXcomposite
)
)
!gtk? (
motif? (
>=x11-libs/motif-2.3:0
x11-libs/libXpm
x11-libs/libXmu
x11-libs/libXt
)
!motif? (
Xaw3d? (
x11-libs/libXaw3d
x11-libs/libXmu
x11-libs/libXt
)
!Xaw3d? ( athena? (
x11-libs/libXaw
x11-libs/libXmu
x11-libs/libXt
) )
)
)
) )"
DEPEND="${RDEPEND}
gui? ( !aqua? ( x11-base/xorg-proto ) )"
BDEPEND="sys-apps/texinfo
virtual/pkgconfig
gzip-el? ( app-arch/gzip )"
IDEPEND="app-eselect/eselect-emacs"
RDEPEND+=" ${IDEPEND}"
EMACS_SUFFIX="emacs-${SLOT}"
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
src_prepare() {
if [[ ${PV##*.} = 9999 ]]; then
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
configure.ac)
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
einfo "Emacs branch: ${EGIT_BRANCH}"
einfo "Commit: ${EGIT_VERSION}"
einfo "Emacs version number: ${FULL_VERSION}"
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|| die "Upstream version number changed to ${FULL_VERSION}"
fi
default
# Fix filename reference in redirected man page
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
AT_M4DIR=m4 eautoreconf
}
src_configure() {
local myconf
if use alsa; then
use sound || ewarn \
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
myconf+=" --with-sound=alsa"
else
myconf+=" --with-sound=$(usex sound oss)"
fi
if ! use gui; then
einfo "Configuring to build without window system support"
myconf+=" --without-x --without-ns"
elif use aqua; then
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
myconf+=" --with-ns --disable-ns-self-contained"
myconf+=" --without-x"
else
myconf+=" --with-x --without-ns"
myconf+=" --without-gconf"
myconf+=" $(use_with gsettings)"
myconf+=" $(use_with toolkit-scroll-bars)"
myconf+=" $(use_with gif)"
myconf+=" $(use_with jpeg)"
myconf+=" $(use_with png)"
myconf+=" $(use_with svg rsvg)"
myconf+=" $(use_with tiff)"
myconf+=" $(use_with xpm)"
myconf+=" $(use_with imagemagick)"
if use xft; then
myconf+=" --with-xft"
myconf+=" $(use_with cairo)"
myconf+=" $(use_with harfbuzz)"
myconf+=" $(use_with m17n-lib libotf)"
myconf+=" $(use_with m17n-lib m17n-flt)"
else
myconf+=" --without-xft"
myconf+=" --without-cairo"
myconf+=" --without-libotf --without-m17n-flt"
use cairo && ewarn \
"USE flag \"cairo\" has no effect if \"xft\" is not set."
use m17n-lib && ewarn \
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
fi
local f line
if use gtk; then
einfo "Configuring to build with GIMP Toolkit (GTK+)"
while read line; do ewarn "${line}"; done <<-EOF
Your version of GTK+ will have problems with closing open
displays. This is no problem if you just use one display, but
if you use more than one and close one of them Emacs may crash.
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
If you intend to use more than one display, then it is strongly
recommended that you compile Emacs with the Athena/Lucid or the
Motif toolkit instead.
EOF
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
for f in motif Xaw3d athena; do
use ${f} && ewarn \
"USE flag \"${f}\" has no effect if \"gtk\" is set."
done
elif use motif; then
einfo "Configuring to build with Motif toolkit"
myconf+=" --with-x-toolkit=motif"
for f in Xaw3d athena; do
use ${f} && ewarn \
"USE flag \"${f}\" has no effect if \"motif\" is set."
done
elif use athena || use Xaw3d; then
einfo "Configuring to build with Athena/Lucid toolkit"
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
else
einfo "Configuring to build with no toolkit"
myconf+=" --with-x-toolkit=no"
fi
! use gtk && use xwidgets && ewarn \
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
fi
if tc-is-cross-compiler; then
# Configure a CBUILD directory when cross-compiling to make tools
mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die
ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
popd >/dev/null || die
# Don't try to execute the binary for dumping during the build
myconf+=" --with-dumping=none"
elif use m68k; then
# Workaround for https://debbugs.gnu.org/44531
myconf+=" --with-dumping=unexec"
else
myconf+=" --with-dumping=pdumper"
fi
econf \
--program-suffix="-${EMACS_SUFFIX}" \
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
--localstatedir="${EPREFIX}"/var \
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
--without-compress-install \
--without-hesiod \
--without-pop \
--with-file-notification=$(usev inotify || usev gfile || echo no) \
--with-pdumper \
$(use_enable acl) \
$(use_with dbus) \
$(use_with dynamic-loading modules) \
$(use_with games gameuser ":gamestat") \
$(use_with gmp libgmp) \
$(use_with gpm) \
$(use_with json) \
$(use_with kerberos) $(use_with kerberos kerberos5) \
$(use_with lcms lcms2) \
$(use_with libxml2 xml2) \
$(use_with mailutils) \
$(use_with selinux) \
$(use_with ssl gnutls) \
$(use_with systemd libsystemd) \
$(use_with threads) \
$(use_with wide-int) \
$(use_with zlib) \
${myconf}
}
src_compile() {
if tc-is-cross-compiler; then
# Build native tools for compiling lisp etc.
emake -C "${S}-build" src
emake lib # Cross-compile dependencies first for timestamps
# Save native build tools in the cross-directory
cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
# Specify the native Emacs to compile lisp
emake -C lisp all EMACS="${S}-build/src/emacs"
fi
emake
}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
# move info dir to avoid collisions with the dir file generated by portage
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
rm -rf "${ED}"/usr/share/{applications,icons} || die
rm -rf "${ED}/usr/$(get_libdir)" || die
rm -rf "${ED}"/var || die
# remove unused <version>/site-lisp dir
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
# remove COPYING file (except for etc/COPYING used by describe-copying)
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
if use systemd; then
insinto /usr/lib/systemd/user
sed -e "/^##/d" \
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
assert
fi
if use gzip-el; then
# compress .el files when a corresponding .elc exists
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
assert "gzip .el failed"
fi
local cdir
if use source; then
cdir="/usr/share/emacs/${FULL_VERSION}/src"
insinto "${cdir}"
# This is not meant to install all the source -- just the
# C source you might find via find-function
doins src/*.{c,h,m}
elif has installsources ${FEATURES}; then
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
fi
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
X
;;; ${EMACS_SUFFIX} site-lisp configuration
X
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
Y (setq find-function-C-source-directory
Y "${EPREFIX}${cdir}")
X (let ((path (getenv "INFOPATH"))
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
X (and path
X ;; move Emacs Info dir before anything else in /usr/share
X (let* ((p (cons nil (split-string path ":" t))) (q p))
X (while (and (cdr q) (not (string-match re (cadr q))))
X (setq q (cdr q)))
X (setcdr q (cons dir (delete dir (cdr q))))
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
EOF
elisp-site-file-install "${T}/${SITEFILE}" || die
dodoc README BUGS CONTRIBUTE
if use gui && use aqua; then
dodir /Applications/Gentoo
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
mv nextstep/Emacs.app \
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
fi
local DOC_CONTENTS="You can set the version to be started by
/usr/bin/emacs through the Emacs eselect module, which also
redirects man and info pages. Therefore, several Emacs versions can
be installed at the same time. \"man emacs.eselect\" for details.
\\n\\nIf you upgrade from a previous major version of Emacs, then
it is strongly recommended that you use app-admin/emacs-updater
to rebuild all byte-compiled elisp files of the installed Emacs
packages."
if use gui; then
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
machine would satisfy basic Emacs requirements under X11.
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
for how to enable anti-aliased fonts."
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
symlink it into /Applications by yourself."
fi
tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
a portable dump file due to being cross-compiled.
To create this file at run time, execute the following command:
\\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
\"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
readme.gentoo_create_doc
}
pkg_preinst() {
# move Info dir file to correct name
if [[ -d ${ED}/usr/share/info ]]; then
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
fi
}
pkg_postinst() {
elisp-site-regen
readme.gentoo_print_elog
if use livecd; then
# force an update of the emacs symlink for the livecd/dvd,
# because some microemacs packages set it with USE=livecd
eselect emacs update
else
eselect emacs update ifunset
fi
}
pkg_postrm() {
elisp-site-regen
eselect emacs update ifunset
}

@ -0,0 +1,518 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
if [[ ${PV##*.} = 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
EGIT_BRANCH="emacs-28"
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
S="${EGIT_CHECKOUT_DIR}"
SLOT="${PV%%.*}-vcs"
else
# FULL_VERSION keeps the full version number, which is needed in
# order to determine some path information correctly for copy/move
# operations later on
FULL_VERSION="${PV%%_*}"
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
S="${WORKDIR}/emacs-${FULL_VERSION}"
# PV can be in any of the following formats:
# 27.1 released version (slot 27)
# 27.1_rc1 upstream release candidate (27)
# 27.0.9999 live ebuild (slot 27-vcs)
# 27.0.90 upstream prerelease snapshot (27-vcs)
# 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
if [[ ${PV} == *_pre* ]]; then
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
S="${WORKDIR}/emacs"
elif [[ ${PV//[0-9]} != "." ]]; then
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
fi
# Patchset from proj/emacs-patches.git
SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-2.tar.xz"
PATCHES=("${WORKDIR}/patch")
SLOT="${PV%%.*}"
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
fi
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm xwidgets zlib"
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
sys-libs/ncurses:0=
acl? ( virtual/acl )
alsa? ( media-libs/alsa-lib )
dbus? ( sys-apps/dbus )
games? ( acct-group/gamestat )
gmp? ( dev-libs/gmp:0= )
gpm? ( sys-libs/gpm )
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
jit? (
sys-devel/gcc:=[jit(-)]
sys-libs/zlib
)
json? ( dev-libs/jansson:= )
kerberos? ( virtual/krb5 )
lcms? ( media-libs/lcms:2 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
mailutils? ( net-mail/mailutils[clients] )
!mailutils? ( acct-group/mail net-libs/liblockfile )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
gui? ( !aqua? (
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXinerama
x11-libs/libXrandr
x11-libs/libxcb
x11-misc/xbitmaps
gsettings? ( >=dev-libs/glib-2.28.6 )
gif? ( media-libs/giflib:0= )
jpeg? ( media-libs/libjpeg-turbo:0= )
png? ( >=media-libs/libpng-1.4:0= )
svg? ( >=gnome-base/librsvg-2.0 )
tiff? ( media-libs/tiff:= )
xpm? ( x11-libs/libXpm )
imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
xft? (
media-libs/fontconfig
media-libs/freetype
x11-libs/libXft
x11-libs/libXrender
cairo? ( >=x11-libs/cairo-1.12.18[X] )
harfbuzz? ( media-libs/harfbuzz:0= )
m17n-lib? (
>=dev-libs/libotf-0.9.4
>=dev-libs/m17n-lib-1.5.1
)
)
gtk? (
x11-libs/gtk+:3
xwidgets? (
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
x11-libs/libXcomposite
)
)
!gtk? (
motif? (
>=x11-libs/motif-2.3:0
x11-libs/libXpm
x11-libs/libXmu
x11-libs/libXt
)
!motif? (
Xaw3d? (
x11-libs/libXaw3d
x11-libs/libXmu
x11-libs/libXt
)
!Xaw3d? ( athena? (
x11-libs/libXaw
x11-libs/libXmu
x11-libs/libXt
) )
)
)
) )"
DEPEND="${RDEPEND}
gui? ( !aqua? ( x11-base/xorg-proto ) )"
BDEPEND="sys-apps/texinfo
virtual/pkgconfig
gzip-el? ( app-arch/gzip )"
IDEPEND="app-eselect/eselect-emacs"
RDEPEND+=" ${IDEPEND}"
EMACS_SUFFIX="emacs-${SLOT}"
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
src_prepare() {
if [[ ${PV##*.} = 9999 ]]; then
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \
configure.ac)
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
einfo "Emacs branch: ${EGIT_BRANCH}"
einfo "Commit: ${EGIT_VERSION}"
einfo "Emacs version number: ${FULL_VERSION}"
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|| die "Upstream version number changed to ${FULL_VERSION}"
fi
if use jit; then
export NATIVE_FULL_AOT=1
find lisp -type f -name "*.elc" -delete || die
# These files ignore LDFLAGS. We assign the variable here, because
# for live ebuilds FULL_VERSION doesn't exist in global scope
QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*"
# gccjit doesn't play well with ccache or distcc #801580
# For now, work around the problem with an explicit LIBRARY_PATH
has ccache ${FEATURES} || has distcc ${FEATURES} && tc-is-gcc \
&& export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \
| sed -n '/^libraries:/{s:^[^/]*::;p}')
fi
default
# Fix filename reference in redirected man page
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
AT_M4DIR=m4 eautoreconf
}
src_configure() {
local myconf
# Prevents e.g. tests interfering with running Emacs.
unset EMACS_SOCKET_NAME
if use alsa; then
use sound || ewarn \
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
myconf+=" --with-sound=alsa"
else
myconf+=" --with-sound=$(usex sound oss)"
fi
if use jit; then
use zlib || ewarn \
"USE flag \"jit\" overrides \"-zlib\"; enabling zlib support."
myconf+=" --with-zlib"
else
myconf+=" $(use_with zlib)"
fi
if ! use gui; then
einfo "Configuring to build without window system support"
myconf+=" --without-x --without-ns"
elif use aqua; then
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
myconf+=" --with-ns --disable-ns-self-contained"
myconf+=" --without-x"
else
myconf+=" --with-x --without-ns"
myconf+=" --without-gconf"
myconf+=" $(use_with gsettings)"
myconf+=" $(use_with toolkit-scroll-bars)"
myconf+=" $(use_with gif)"
myconf+=" $(use_with jpeg)"
myconf+=" $(use_with png)"
myconf+=" $(use_with svg rsvg)"
myconf+=" $(use_with tiff)"
myconf+=" $(use_with xpm)"
myconf+=" $(use_with imagemagick)"
if use xft; then
myconf+=" --with-xft"
myconf+=" $(use_with cairo)"
myconf+=" $(use_with harfbuzz)"
myconf+=" $(use_with m17n-lib libotf)"
myconf+=" $(use_with m17n-lib m17n-flt)"
else
myconf+=" --without-xft"
myconf+=" --without-cairo"
myconf+=" --without-libotf --without-m17n-flt"
use cairo && ewarn \
"USE flag \"cairo\" has no effect if \"xft\" is not set."
use m17n-lib && ewarn \
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
fi
local f line
if use gtk; then
einfo "Configuring to build with GIMP Toolkit (GTK+)"
while read line; do ewarn "${line}"; done <<-EOF
Your version of GTK+ will have problems with closing open
displays. This is no problem if you just use one display, but
if you use more than one and close one of them Emacs may crash.
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
If you intend to use more than one display, then it is strongly
recommended that you compile Emacs with the Athena/Lucid or the
Motif toolkit instead.
EOF
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
for f in motif Xaw3d athena; do
use ${f} && ewarn \
"USE flag \"${f}\" has no effect if \"gtk\" is set."
done
elif use motif; then
einfo "Configuring to build with Motif toolkit"
myconf+=" --with-x-toolkit=motif"
for f in Xaw3d athena; do
use ${f} && ewarn \
"USE flag \"${f}\" has no effect if \"motif\" is set."
done
elif use athena || use Xaw3d; then
einfo "Configuring to build with Athena/Lucid toolkit"
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
else
einfo "Configuring to build with no toolkit"
myconf+=" --with-x-toolkit=no"
fi
! use gtk && use xwidgets && ewarn \
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
fi
if tc-is-cross-compiler; then
# Configure a CBUILD directory when cross-compiling to make tools
mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die
ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
popd >/dev/null || die
# Don't try to execute the binary for dumping during the build
myconf+=" --with-dumping=none"
elif use m68k; then
# Workaround for https://debbugs.gnu.org/44531
myconf+=" --with-dumping=unexec"
else
myconf+=" --with-dumping=pdumper"
fi
econf \
--program-suffix="-${EMACS_SUFFIX}" \
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
--localstatedir="${EPREFIX}"/var \
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
--without-compress-install \
--without-hesiod \
--without-pop \
--with-file-notification=$(usev inotify || usev gfile || echo no) \
--with-pdumper \
$(use_enable acl) \
$(use_with dbus) \
$(use_with dynamic-loading modules) \
$(use_with games gameuser ":gamestat") \
$(use_with gmp libgmp) \
$(use_with gpm) \
$(use_with jit native-compilation) \
$(use_with json) \
$(use_with kerberos) $(use_with kerberos kerberos5) \
$(use_with lcms lcms2) \
$(use_with libxml2 xml2) \
$(use_with mailutils) \
$(use_with selinux) \
$(use_with ssl gnutls) \
$(use_with systemd libsystemd) \
$(use_with threads) \
$(use_with wide-int) \
${myconf}
}
src_compile() {
if tc-is-cross-compiler; then
# Build native tools for compiling lisp etc.
emake -C "${S}-build" src
emake lib # Cross-compile dependencies first for timestamps
# Save native build tools in the cross-directory
cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
# Specify the native Emacs to compile lisp
emake -C lisp all EMACS="${S}-build/src/emacs"
fi
emake
}
src_test() {
# List .el test files with a comment above listing the exact
# subtests which caused failure. Elements should begin with a %.
# e.g. %lisp/gnus/mml-sec-tests.el.
local exclude_tests=(
# Reason: not yet known
# mml-secure-en-decrypt-{1,2,3,4}
# mml-secure-find-usable-keys-{1,2}
# mml-secure-key-checks
# mml-secure-select-preferred-keys-4
# mml-secure-sign-verify-1
%lisp/gnus/mml-sec-tests.el
# Reason: race condition
# Looks like it should be fixed in 29.x at least:
# https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55706
# files-tests-file-name-non-special-file-in-directory-p
%lisp/files-tests.el
# Reason: permission denied on /nonexistent
# (vc-*-bzr only fails if breezy is installed, as they
# try to access cache dirs under /nonexistent)
#
# rmail-undigest-test-multipart-mixed-digest
# rmail-undigest-test-rfc1153-less-strict-digest
# rmail-undigest-test-rfc1153-sloppy-digest
# rmail-undigest-test-rfc934-digest
# vc-test-bzr02-state
# vc-test-bzr05-rename-file
# vc-test-bzr06-version-diff
# vc-bzr-test-bug9781
%lisp/mail/undigest-tests.el
%lisp/vc/vc-tests.el
%lisp/vc/vc-bzr-tests.el
# Reason: fails if bubblewrap (bwrap) is installed
# "bwrap: setting up uid map: Permission denied"
#
# bytecomp-tests--dest-mountpoint
%lisp/emacs-lisp/bytecomp-tests.el
)
# See test/README for possible options
emake \
EMACS_TEST_VERBOSE=1 \
EXCLUDE_TESTS="${exclude_tests[*]}" \
TEST_BACKTRACE_LINE_LENGTH=nil \
check
}
src_install() {
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die
# move info dir to avoid collisions with the dir file generated by portage
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
if ! use mailutils; then
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fi
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
rm -rf "${ED}"/usr/share/{applications,icons} || die
rm -rf "${ED}/usr/$(get_libdir)/systemd" || die
rm -rf "${ED}"/var || die
# remove unused <version>/site-lisp dir
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
# remove COPYING file (except for etc/COPYING used by describe-copying)
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
if use systemd; then
insinto /usr/lib/systemd/user
sed -e "/^##/d" \
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
assert
fi
if use gzip-el; then
# compress .el files when a corresponding .elc exists
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
assert "gzip .el failed"
fi
local cdir
if use source; then
cdir="/usr/share/emacs/${FULL_VERSION}/src"
insinto "${cdir}"
# This is not meant to install all the source -- just the
# C source you might find via find-function
doins src/*.{c,h,m}
elif has installsources ${FEATURES}; then
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
fi
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
X
;;; ${EMACS_SUFFIX} site-lisp configuration
X
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
Y (setq find-function-C-source-directory
Y "${EPREFIX}${cdir}")
X (let ((path (getenv "INFOPATH"))
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
X (and path
X ;; move Emacs Info dir before anything else in /usr/share
X (let* ((p (cons nil (split-string path ":" t))) (q p))
X (while (and (cdr q) (not (string-match re (cadr q))))
X (setq q (cdr q)))
X (setcdr q (cons dir (delete dir (cdr q))))
X (setq Info-directory-list (prune-directory-list (cdr p)))))))
EOF
elisp-site-file-install "${T}/${SITEFILE}" || die
dodoc README BUGS CONTRIBUTE
if use gui && use aqua; then
dodir /Applications/Gentoo
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
mv nextstep/Emacs.app \
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
fi
local DOC_CONTENTS="You can set the version to be started by
/usr/bin/emacs through the Emacs eselect module, which also
redirects man and info pages. Therefore, several Emacs versions can
be installed at the same time. \"man emacs.eselect\" for details.
\\n\\nIf you upgrade from a previous major version of Emacs, then
it is strongly recommended that you use app-admin/emacs-updater
to rebuild all byte-compiled elisp files of the installed Emacs
packages."
if use gui; then
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
machine would satisfy basic Emacs requirements under X11.
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
for how to enable anti-aliased fonts."
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
symlink it into /Applications by yourself."
fi
tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
a portable dump file due to being cross-compiled.
To create this file at run time, execute the following command:
\\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
\"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
readme.gentoo_create_doc
}
pkg_preinst() {
# move Info dir file to correct name
if [[ -d ${ED}/usr/share/info ]]; then
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
fi
}
pkg_postinst() {
elisp-site-regen
readme.gentoo_print_elog
if use livecd; then
# force an update of the emacs symlink for the livecd/dvd,
# because some microemacs packages set it with USE=livecd
eselect emacs update
else
eselect emacs update ifunset
fi
}
pkg_postrm() {
elisp-site-regen
eselect emacs update ifunset
}

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -67,7 +67,8 @@ X_DEPEND="x11-libs/libICE
gtk? (
x11-libs/gtk+:3
xwidgets? (
net-libs/webkit-gtk:4=
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
x11-libs/libXcomposite
)
)
@ -137,7 +138,10 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
>=dev-libs/libotf-0.9.4
>=dev-libs/m17n-lib-1.5.1
)
xwidgets? ( net-libs/webkit-gtk:4= )
xwidgets? (
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
)
) )
!gtk? ( ${X_DEPEND} )
X? ( ${X_DEPEND} )

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -67,7 +67,8 @@ X_DEPEND="x11-libs/libICE
gtk? (
x11-libs/gtk+:3
xwidgets? (
net-libs/webkit-gtk:4=
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
x11-libs/libXcomposite
)
)
@ -137,7 +138,10 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
>=dev-libs/libotf-0.9.4
>=dev-libs/m17n-lib-1.5.1
)
xwidgets? ( net-libs/webkit-gtk:4= )
xwidgets? (
|| ( net-libs/webkit-gtk:4.1 net-libs/webkit-gtk:4 )
net-libs/webkit-gtk:=
)
) )
!gtk? ( ${X_DEPEND} )
X? ( ${X_DEPEND} )

@ -27,7 +27,7 @@ fi
S="${WORKDIR}"/vim-${PV}
DESCRIPTION="GUI version of the Vim text editor"
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
LICENSE="vim"
SLOT="0"

@ -27,7 +27,7 @@ fi
S="${WORKDIR}"/vim-${PV}
DESCRIPTION="GUI version of the Vim text editor"
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
LICENSE="vim"
SLOT="0"

@ -27,7 +27,7 @@ fi
S="${WORKDIR}"/vim-${PV}
DESCRIPTION="GUI version of the Vim text editor"
HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
LICENSE="vim"
SLOT="0"

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

Loading…
Cancel
Save