Sync with portage [Sun May 7 00:16:02 MSK 2023].

master
root 12 months ago
parent aedd29fce1
commit 3c15228736

Binary file not shown.

Binary file not shown.

@ -12,7 +12,7 @@ LICENSE="LGPL-2.1+"
SLOT="2"
IUSE="X gtk-doc +introspection"
REQUIRED_USE="gtk-doc? ( X )"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
RDEPEND="
>=sys-apps/dbus-1.5[${MULTILIB_USEDEP}]

@ -15,7 +15,7 @@ LICENSE="LGPL-2.1"
SLOT="0"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc x86"
COMMON_DEPEND="
${PYTHON_DEPS}

@ -11,7 +11,7 @@ HOMEPAGE="https://wiki.gnome.org/Projects/Orca"
LICENSE="LGPL-2.1+ CC-BY-SA-3.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
IUSE="+braille"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

@ -13,8 +13,7 @@
<name>Gentoo Sound project</name>
</maintainer>
<use>
<flag name="espeak">Adds support for espeak speech engine</flag>
<flag name="espeak-ng">Adds support for espeak-ng speech engine</flag>
<flag name="espeak">Adds support for espeak-ng speech engine</flag>
<flag name="flite">Adds support for flite speech engine</flag>
</use>
<upstream>

@ -14,7 +14,7 @@ SRC_URI="https://github.com/brailcom/speechd/releases/download/${PV}/${P}.tar.gz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
IUSE="alsa ao espeak +espeak-ng flite nas pulseaudio python"
IUSE="alsa ao +espeak flite nas pulseaudio python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
@ -24,8 +24,7 @@ DEPEND="python? ( ${PYTHON_DEPS} )
>=media-libs/libsndfile-1.0.2
alsa? ( media-libs/alsa-lib )
ao? ( media-libs/libao )
espeak? ( app-accessibility/espeak )
espeak-ng? ( app-accessibility/espeak-ng )
espeak? ( app-accessibility/espeak-ng )
flite? ( app-accessibility/flite )
nas? ( media-libs/nas )
pulseaudio? ( media-sound/pulseaudio )"
@ -59,10 +58,10 @@ src_configure() {
--with-kali=no
--with-pico=no
--with-voxin=no
--with-espeak=no
$(use_with alsa)
$(use_with ao libao)
$(use_with espeak)
$(use_with espeak-ng)
$(use_with espeak espeak-ng)
$(use_with flite)
$(use_with nas)
$(use_with pulseaudio pulse)
@ -109,7 +108,7 @@ src_install() {
pkg_postinst() {
local editconfig="n"
if ! use espeak-ng; then
if ! use espeak; then
ewarn "You have disabled espeak-ng, which is speech-dispatcher's"
ewarn "default speech synthesizer."
ewarn

Binary file not shown.

@ -1,8 +1,10 @@
DIST awscli-exe-linux-aarch64-2.11.17.zip 56500418 BLAKE2B ced68deac081666c71d73bea7d48f19aa27c8a78835ad13acaa06dac65db8569e9cf446900c0a8ede169bf177168e47ad3bebd06ad295a5626d926d59e4ed57b SHA512 6424cfcd079007cf1519f0018555c589a154639c1f28596d51d227c9078abbcd16660488d9c7984468bd223a7e4a89296c42c8fbdb8b6d085e32163e71d1f641
DIST awscli-exe-linux-aarch64-2.11.5.zip 56858691 BLAKE2B 8a798c59568d64e2c8104d780458567bc2ad3061de81a7f4de90c8658087e560cb108945fbc71aa23808efe211ac63063f246d903e515f1cad06b91049eb64c0 SHA512 195516fe488266b8131fc9959ff81fc88a9902adabb033ab7d76b44996e1af08e8d0244f806193d91604cdb22a6266b686b9d6411ca9caa5b3188562b7b1eec1
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.11.17.zip 57614965 BLAKE2B 0a711bc968b53dd08810ef857c9d51d332b016fd969491850f9dd8fc84e912f815e2b0a6e38223fe29c321ee784ad2ee41644b7027af3439742d3c2141f10098 SHA512 c05ada15a4e896850adbe04cc159141d84fabc955f3baf6d053200c6595cc77c8a75886ce5f1bd18370fe34a2c1c3d294312aa471a028104266fa45fa5aa4334
DIST awscli-exe-linux-x86_64-2.11.5.zip 57429612 BLAKE2B 8d98afc07dc38600600b04e490018b0df46b7bd6ac23a782a6554642cd3d6302ea42baea4cee6631f5aee6a935d677c8a315e881e1d98267fb2cdcebaa67431b SHA512 89733d2c55de6eec06638032fb84be5c59b5d9d6589ae5437dee49466ba019c921ffc5e9eaabb1cae03afcae1e3322938cf525336ee4f89eb8a601ba9e2ccc13
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

@ -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,9 +1,4 @@
DIST aws-cli-1.27.114.gh.tar.gz 2406530 BLAKE2B a566214d83d0238c74e306d82829bc9a512aa03def8a4f3ccffc819ded588427051c524fbd91c32f1dd6f6eafd54e6fe40a1e701c9985a1ec587f362fe1c2920 SHA512 60df892a996b5b5c36478e86f321ae9abe3c2d3faafc3187d0b9442d060633ddeddbeeab7ee42a0eca7cb45b07f8c86bbf9d626362a26c503f10b1c693dd1f2a
DIST aws-cli-1.27.118.gh.tar.gz 2410453 BLAKE2B 75bf42c439c9fc0e16c1a3e919d4c6b8c9246c754eb0ba485c4ec193e6b4e0e3de60eff7c433937b31997ba7d26eef622a382b41d107139de36f5475ae083a6f SHA512 036262c1c3731a5f8b6704ad278ea53f3ae5810b18fd8d4b93ba26c1c17eba79180f8310a40427332e24a4f42ac47e2707ccd4e5d28b29ab4f4593d6820cc4d9
DIST aws-cli-1.27.119.gh.tar.gz 2411159 BLAKE2B 7730da312c27cb99bf8a9b135164fe89083e65d522e98e1b9ebd6730174dc82c113d8fe39ee27d01d8e1abcdb878fd5b3b9bf91160b20a02d4724a1673b9c4e8 SHA512 884907dc6dbe324fa68fb1bb6de2a033522adf21e36bae999aa1206492c5df25e569a4d35304b08013b425c059eb1b235d8c30329da951953d2e562d495618af
DIST aws-cli-1.27.120.gh.tar.gz 2412302 BLAKE2B d5af6c029452246abc8296fcf7da7edbc5b68852c4f1a162dcce91ea1fd42ee036f49ad9c7cf692e860e8c29eb3107d3befdbf23833ef47604fb43d836dd86ec SHA512 07a10480fd41cb81867a6a93d3fdfb6f3687e82790711c2e30a72155ca6083e9d6c584c6afcfb57b47aff2300ba42557471ffcc4c1b6e8d50ea21f5fd096c042
DIST aws-cli-1.27.121.gh.tar.gz 2412265 BLAKE2B c622b4af462578c928b0b261ebdc300b841440875b8208240be6bf56b7a7f28d58434dc9c5cd41581befebc20fc0e224db52474af23e94e6a7e92e113e93bf99 SHA512 d39e2b4b0cedf1d622877584decfa5a38624cd238007343737087d2781d1505e2858337c508a4578cfc8d568412e3f92f38f80ae09f3a39a8cbb34034d474763
DIST aws-cli-1.27.122.gh.tar.gz 2413914 BLAKE2B e8b1122119549cb7e5700b6d0617169885a6565cac6a6b8d14a1fde1ff6da6b32c1fa4cb183959ea57700e9ca014872c6e50b8ba76cde2628d5f6c2cbe270717 SHA512 59686acaa568a38deab45399506c767e3dae02193f79a2ee2cbd129bd37826fa24d4ad5652ae2e9a52d7969cefd3e847b9fcfa2304da19d6fb976fd8f79e68e4
DIST aws-cli-1.27.123.gh.tar.gz 2414392 BLAKE2B 4df3e98062e61931efc59168eb6dbe6b50f2bd50ef6d5d810bf2d98f08058f69c8965726662f90e8289e94408e916e700acc2d62512d3b3033210eb615bbb8c4 SHA512 bfe6fe1a2fd9209090957faef600b40acd7c4bbf9304089a2844ac736d782a0c53687dd1073faf9e05c8e23c6dd1b6d7930e009dc0ea7765000489130d2a5410
DIST aws-cli-1.27.124.gh.tar.gz 2414941 BLAKE2B eeb64192b9f42f718b7b60be50560685545ed3c4e6749f4543f31b8ee11d0559f2824b52458ac4535df5c459d4fab874f7c773b9b5d567f815654280366123ce SHA512 27d19ed27fb555fd2afcac2991875292cde0015c05c43be09991b463ab51adf95455c37d21fd301fb6545ec93e243549900ad3047355d0cdc6c1eb78385c8ab8
DIST aws-cli-1.27.125.gh.tar.gz 2415453 BLAKE2B b3120fc715f72b7d579041a40c50b9a4b6b41ec61075a20c5219423b9a5722d78ce6f4d886190bb023b306630333c3856afcfcab810a627c237b0d85ca96d680 SHA512 5be6f0e5a586edbb4b6c3abef364e24b50c321c65237b51d35bc7b259ce7fe0b32991f42dfec2f715c59535e28704f04b900445750f6ec58647af86bf8a40e87
DIST aws-cli-1.27.126.gh.tar.gz 2415804 BLAKE2B f6c9c76320ce2bd7c03009d01e569a4552c329148323d4d7d302b3f4c9dce7f8e6743f427f9308c155917abcf228c5b35eeb15fd06b6602ca26f5f7c34e0cbd6 SHA512 6dd52530d9f35bfcbcc3b4a20b9a45881eea79a274b6fd9a3b2b2a5d6d337dbd3bf9efbe931417f43a7705b0f6359783a0fcf16dc025006cb853fe4fbc297630
DIST aws-cli-1.27.127.gh.tar.gz 2416842 BLAKE2B 6d1917695f9404a0edf1e9d1720606478e904615e46c775a5b65bab207a1b0ebfd1741daa2202e4567c0d4aa0d0eb6bfaf89210a6ccce542c7ee2c556c21c3b3 SHA512 32ac6f8e00434047acf46cd0dad80618e7c1926fa02cdc365005eccb3744f8ea2d67e11c7155a0ce88e6388668ec3aa0cd0bad33df8a7540bfd0cc1c9dcd52af
DIST aws-cli-1.27.129.gh.tar.gz 2417079 BLAKE2B d1de37906ba0e541ef968aac5d7a7718167b6b8683d655f9b7ec91ab1e5ed289bff46dbb56c1a6a5c4e0ce56eb4fd9ebeac386d0ec38e855bfbd3076bcac2aa9 SHA512 cd3f57c1734d73964d712a7a5d03c83d3168f2197011b014a04088fb05090948463d95c7d9321e1ae1e21992e18013fdd260b640f342681bca70f2e33e423f88

@ -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
}

@ -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 +1 @@
DIST exo-1.67.0.gh.tar.gz 5547755 BLAKE2B 34d72dda795ee79513bbeb84ec26ae23805e108256eec39ff78e0b92dee67902762ae112229b307d3ce1f61e978977505ae7a96c87a71bbd4c0b154be4b7612c SHA512 2fcc2248b9ffdfead1eb5ed84560bd9f28bf5a16d5b00b7106a16b91571176689e3de37c8d89580ac73e12191843eba01a22d93c752070a7912acd37412c437f
DIST exo-1.68.0.gh.tar.gz 5673687 BLAKE2B 7e1b8a03d902e21052dbbdc0e1fb7bc0316061d021fb0dae901fcefcd3cf5560113c3ac068353de9039c8b672fb75e483a3be886702920431cf1cb040c4ad38e SHA512 01663f651348cbb43d5c382b57904792bfa1b954dbe7c8661084c95133828372c643c52db8b66f36a8b791330c80f922a324b359b6b920fcccec41e85e1b1e1b

@ -1,3 +1,4 @@
DIST github-backup-utils-3.0.0.tar.gz 104088 BLAKE2B f01229e6b152231eb832dec8bef41bb158cc200bbdd3c59c1abab299c572902efe6d27d093491bd8b0bf8f3e834d2938eb0127d5f28700ba75dcbdbcc8a21bb8 SHA512 e86420ef9d86d44560e27e00361ff1bb8ba7c15fb116ad9981e3196bc4c7c25bcff9a9f7dc8dae9bbbb9b2f3380b434199dbbe1ef7db5b1ba04ec1233aec320d
DIST github-backup-utils-3.3.2.tar.gz 109517 BLAKE2B b9c48de60f10d1d20eda96d0fa69c7d1835c0cdca7dbb3a3659e2a527706d6d793c426d5032e2bd1ead58255cdca6cdf424da0cb6a06484c4a5b5a9b0d4bcbba SHA512 c8013d5775a0ad8193266c36b0afa91bd452dfd70499c74239c6e62a0c9d88ecd92e16495ad4bd64319e42ad7b781125c136b1a9945146d09add5a2165d31b16
DIST github-backup-utils-3.5.0.tar.gz 113871 BLAKE2B e6835c3efe04332df792827e2fdc54449e73a1fec055e7677174a1eaf2b4c9d43a2bc4c82741b056265fbf4eeea75ad62819d9d357d800ff3d4befcf5fcd4e39 SHA512 d77e30fe426b231c8d8aa1ca7867861a3427a5829d46184283a1beaea22b697dd6cf7343d1e65f40c9f6f9bcd05fea0c45892080292707b6b897599d4cbb566b
DIST github-backup-utils-3.8.0.tar.gz 116694 BLAKE2B 481f0c4345d1de791d023c906d58424d96bf9e96fd3e5d50f081f6cbdd29b4e068f4414db6e808511adb8110e609416490ba36140b5dfabcf2e738b7b91e6121 SHA512 327d777f0134838ab6d1b3e3dc702b35e81f8a682339638b248dfdd9580fdea5435cad5a4a539c65d91832a8b02f86e3bdd546c312fcfe9c1ef13d858bbadb9f

@ -0,0 +1,59 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..11} )
inherit python-any-r1
DESCRIPTION="Backup and recovery utilities for GitHub Enterprise"
HOMEPAGE="https://github.com/github/backup-utils"
SRC_URI="https://github.com/github/backup-utils/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S=${WORKDIR}/${PN/#github-/}-${PV}
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="test"
RESTRICT="!test? ( test )"
# moreutils parallel is now used for speedups in main code:
# https://github.com/github/backup-utils/pull/635
RDEPEND="app-misc/jq
app-arch/pigz
net-misc/rsync
sys-apps/moreutils"
# tests invoke parallel & rsync
DEPEND="test? (
${RDEPEND}
dev-util/checkbashisms
${PYTHON_DEPS}
)"
pkg_setup() {
use test && python-any-r1_pkg_setup
}
src_compile() {
:;
}
src_install() {
dobin bin/*
insinto usr/share/${PN}
doins share/${PN}/version
exeinto usr/share/${PN}
doexe share/${PN}/bm.sh
doexe share/${PN}/ghe-*
insinto etc/${PN}
newins backup.config-example backup.config
dodoc -r docs/*
}
src_test() {
emake test
}

@ -13,7 +13,7 @@ SRC_URI="https://github.com/balabit/syslog-ng/releases/download/${P}/${P}.tar.gz
LICENSE="GPL-2+ LGPL-2.1+"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="amqp caps dbi geoip2 http ipv6 json kafka mongodb pacct python redis smtp snmp test spoof-source systemd tcpd"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
test? ( python )"

Binary file not shown.

@ -3,6 +3,7 @@
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_OPTIONAL="1"
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..11} pypy3 )

@ -3,6 +3,7 @@
EAPI=8
DISTUTILS_EXT=1
DISTUTILS_OPTIONAL="1"
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..11} pypy3 )

@ -1,2 +1,3 @@
DIST cpio-2.13-CVE-2021-38185.patch.xz 7844 BLAKE2B e338950e03c3eed3b4288435c9c75af8f0c3497b43680be4ee347e628db7cfac616b437a848094bf82cfc2c7f29d59b388bf0f6368b3b99770022e3f9533be11 SHA512 4d2cafefcd1ae9d86cb5171de2896799713490dfd9ed27d3dce0886fa4588c8df2b16ad8508a5dbb9155c9de6e40b6d1083bdb4774d967193a270a1dcbe37a33
DIST cpio-2.13.tar.bz2 1354559 BLAKE2B 45d77723acb55f15c8574ab5a2fdff6fb1767629d177dd3416b0268e9f82ee6bdd11b4fa591ef020efccbdc3f4918cf77263169da1a0f6422dfe1a9712295778 SHA512 459398e69f7f48201c04d1080218c50f75edcf114ffcbb236644ff6fcade5fcc566929bdab2ebe9be5314828d6902e43b348a8adf28351df978c8989590e93a3
DIST cpio-2.14.tar.bz2 1521004 BLAKE2B f2fa9f5bc39cd91f4755fdf27f43cff4d1c1f098639502689a01314762ad686bf357a1eda7f92e4c802e6e8335548ca31fc789cea056ef685c558892ddcbebd1 SHA512 2dc93a81e31b6fb7ff9976243d22ca7a84bb396c7ad09e0abfb5d5efae1164ebb319fb89be45045797f8c604b3e3d2ea0746e3cfe559aa86282ea4ec9a17da28

@ -0,0 +1,50 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="A file archival tool which can also read and write tar files"
HOMEPAGE="https://www.gnu.org/software/cpio/cpio.html"
SRC_URI="mirror://gnu/cpio/${P}.tar.bz2"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~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="nls"
PDEPEND="
app-alternatives/cpio
"
PATCHES=(
"${FILESDIR}"/${PN}-2.12-non-gnu-compilers.patch #275295
"${FILESDIR}"/${PN}-2.14-sysmacros-glibc-2.26.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
local myeconfargs=(
$(use_enable nls)
--bindir="${EPREFIX}"/bin
--with-rmt="${EPREFIX}"/usr/sbin/rmt
# install as gcpio for better compatibility with non-GNU userland
--program-prefix=g
)
econf "${myeconfargs[@]}"
}
pkg_postinst() {
# ensure to preserve the symlink before app-alternatives/cpio
# is installed
if [[ ! -h ${EROOT}/bin/cpio ]]; then
ln -s gcpio "${EROOT}/bin/cpio" || die
fi
}

@ -0,0 +1,42 @@
--- a/am/ax_compile_check_rettype.m4
+++ b/am/ax_compile_check_rettype.m4
@@ -70,6 +70,9 @@ AC_CACHE_VAL(AC_CV_NAME,
[for ac_type in char short int long "long long" $4
do
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#ifdef HAVE_SYS_SYSMACROS_H
+#include <sys/sysmacros.h>
+#endif
#include <sys/types.h>
$3
]], [[switch (0) case 0: case (sizeof ($1($2)) == sizeof ($ac_type)):;]])], [AC_CV_NAME=$ac_type])
--- a/configure.ac
+++ b/configure.ac
@@ -37,14 +37,11 @@ gl_EARLY
AC_C_PROTOTYPES
AC_SYS_LARGEFILE
-AC_HEADER_MAJOR
AC_C_CONST
AC_TYPE_UID_T
AC_CHECK_TYPE(gid_t, int)
AC_HEADER_DIRENT
-AX_COMPILE_CHECK_RETTYPE([major], [0])
-AX_COMPILE_CHECK_RETTYPE([minor], [0])
AC_CHECK_FUNCS([fchmod fchown])
# This is needed for mingw build
@@ -65,7 +62,11 @@ AC_ARG_ENABLE(mt,
AM_CONDITIONAL([CPIO_MT_COND], [test "$enable_mt" = yes])
-AC_CHECK_HEADERS([unistd.h stdlib.h string.h fcntl.h pwd.h grp.h sys/io/trioctl.h utmp.h getopt.h locale.h libintl.h sys/wait.h utime.h locale.h process.h sys/ioctl.h])
+AC_CHECK_HEADERS([unistd.h stdlib.h string.h fcntl.h pwd.h grp.h sys/io/trioctl.h utmp.h getopt.h locale.h libintl.h sys/wait.h utime.h locale.h process.h sys/ioctl.h sys/sysmacros.h])
+
+AC_HEADER_MAJOR
+AC_COMPILE_CHECK_RETTYPE([major], [0])
+AC_COMPILE_CHECK_RETTYPE([minor], [0])
AC_CHECK_DECLS([errno, getpwnam, getgrnam, getgrgid, strdup, strerror, getenv, atoi, exit], , , [
#include <stdio.h>

@ -15,7 +15,7 @@ IUSE="gtk gtk-doc +introspection test vala"
REQUIRED_USE="vala? ( introspection ) gtk-doc? ( gtk )"
RESTRICT="!test? ( test )"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
RDEPEND="
>=app-arch/libarchive-3.4.0:=

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..10} )
PYTHON_COMPAT=( python3_{9..11} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1

@ -1 +1,2 @@
DIST xarchiver-0.5.4.20.tar.gz 1120317 BLAKE2B dbeb21492a4045d504aac92c28847a91c23e0feedeb82074fe89736f64b2b7d09b41bbefe321441c51736a8273267ac13dd616d4f61ba1b9e72cc805e749aa79 SHA512 c05be6f69a576988ca1a67c1664e4e4e3c53588ef4c85ce943e204ae72b08e705eb20be1018274c5420e30c5ed71d773bdacccc538ab458d658fba494c097777
DIST xarchiver-0.5.4.21.tar.gz 1132417 BLAKE2B 38a426d4a7ac53a471aba7dec8d1da64e6bb4bab3d7efb5e8e1326dcbdfd1e98e66dab43d50cc847fb37ee754d8996233c23503f2a57776ed8e4b96da425462e SHA512 7befe5427636aaa27b669c503832927731cc9da27c698f3e2ea06d8b4579d95096613a41b54919eb3f9314791d32e73b6aecdb5e6af7b10dd154861377f2f5c4

@ -0,0 +1,61 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit xdg-utils
DESCRIPTION="A GTK+ archive manager that can be used with Thunar"
HOMEPAGE="https://github.com/ib/xarchiver/"
SRC_URI="
https://github.com/ib/xarchiver/archive/${PV}.tar.gz -> ${P}.tar.gz
"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="doc"
DEPEND="
>=dev-libs/glib-2:=
x11-libs/gtk+:3=
"
RDEPEND="
${DEPEND}
"
BDEPEND="
dev-util/intltool
sys-devel/gettext
virtual/pkgconfig
doc? (
app-text/docbook-xml-dtd
app-text/docbook-xsl-stylesheets
dev-libs/libxml2
dev-libs/libxslt
)
"
src_configure() {
local myconf=(
$(use_enable doc)
)
econf "${myconf[@]}"
}
pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
elog "You need external programs for some formats, including:"
elog "7zip - app-arch/p7zip"
elog "arj - app-arch/arj"
elog "lha - app-arch/lha"
elog "lzop - app-arch/lzop"
elog "rar - app-arch/unrar app-arch/rar"
elog "zip - app-arch/unzip app-arch/zip"
}
pkg_postrm() {
xdg_desktop_database_update
xdg_icon_cache_update
}

@ -1,8 +1,8 @@
DIST xz-5.2.10.tar.gz 2123206 BLAKE2B fdd9e77e21ee65482401e0e43e0b291093a227d452991a9182562989b7a4388ceed30d5d54cd7f86320dcc073eb792032a49741880338a29043a8380507c4215 SHA512 c3814680fcad421efa71cf977217a62c34e3223900302a6fd7d505f310a7b338815feee2c8225b1232bd22b9e29c7dda3664e54dae2d80f816daec6adf560ca1
DIST xz-5.2.10.tar.gz.sig 566 BLAKE2B ce72730816d03084dc0d1559d6f2890b3ebe25a5e6b0720d4775ba2364762b5d1934a3a53f2255f6e68a1cdf42778d85d8b02ab30396b2addab619e95855f733 SHA512 48a0864abee6639116678afab6e8319eb2de903b381362c611fb77f9b6fc21df5f7d9783a250810f7ecc08380fb371a3a791ab55f5a343b68b9d4f9e414da403
DIST xz-5.2.11.tar.gz 2130684 BLAKE2B e513f99b2e28fa79f32747e21138cc13ab9340e95a302ac742bc6bda088465488173ea212704c4612f4059bbbc6c6a5b041332d84b999dc7df5b3fab1b1ac4e9 SHA512 8f75450380563229465420f4518fa7a60bbe6f0c9a3b580c2a9a7bf9bf380ad69209f792764115c346d89c49711478e8db42325ef9a46ccd3a6ec72292890ac8
DIST xz-5.2.11.tar.gz.sig 566 BLAKE2B 34186ea22960f508dd796736107b99e1e3884ffae683f26671f455e46e4debf87400f2d7bb64b446fb142370a8bcebc6c05dce34dcc2678a761b9401b1e23860 SHA512 036ed0f663e179057a805a41052d3e437fbfb9dbbe173c5180fbb255f5a01ac4fa2561424228f4e568e63b22802b3a4ffd88dec2ba7c41a454998ebea30bea7c
DIST xz-5.4.1.tar.gz 2528617 BLAKE2B f4dc8698fb97002aa0548107b448ab0dd8659cce506a83775930f95fd775601f7de1df44866310ac617853410a1915cd4e90ad4088b2fd56418e67b6f0fc4e98 SHA512 5cff8383a68fb88ecbb3770ec48af0ad5582e08de9dccd339e0b685aaa53447e59d6425caa3f63b54a674e5d78c20520876db547d156e6658ad4841660cba85b
DIST xz-5.4.1.tar.gz.sig 566 BLAKE2B f384bcf7ea6bd7d3af65b6b17b379b48826257f403bca0bed1b42697f88edbc38f38eaac03c5564fc466df670f40e2e7ee49974232da4eb849718e89234c224b SHA512 2e6c3bf04ceb29c1bac8fdde7aa09c4d0f96442515d797e06ea860f365fd94777630b0034b98006cf844083efea8642a0bf87b1ff56de6a58446a644b1fd3c1c
DIST xz-5.2.12.tar.gz 2190541 BLAKE2B 9ca5ecf753ae264f542ec53b4c9a1c85466bc2a932651aafb0ae2a3ebb7d3979a9384e9a81f16173c2d6d14ca8b86e4a820191817675a5e9fd214a64cf364c98 SHA512 1a67112eb1cfd70352c41a1cbb5e34eacd6da2ae816f5020385772a7698b835d059843c2c30461beb15b7514e95906b2033dac6abf09248b5837270420dfe732
DIST xz-5.2.12.tar.gz.sig 566 BLAKE2B 93d0fb89186ccf018d17278823c2c6cc724798acfe425fd01ecf54338e53451d94b1ad951f2f1ec58171a3eb827fcd6b5d9dcb97da72c5d8545d57d9fba0597b SHA512 0734e1838dd9ab7ba06675af0f4ff5866c0e5c268f0c3e2ca6f12fa8f27b41830d11063244b0039f8d8ba184efc1c1b7b9a7311c378a02abc1290d7727357cb6
DIST xz-5.4.2.tar.gz 2799022 BLAKE2B 3c622b0823f0cbb5fbc5eaa0372fc2f0fefe0950d131417f831bce47b6d9747d145429f0649de106819331f9ae6a289c497182c7b6d1e211513308dd083a9b72 SHA512 149f980338bea3d66de1ff5994b2b236ae1773135eda68b62b009df0c9dcdf5467f8cb2c06da95a71b6556d60bd3d21f475feced34d5dfdb80ee95416a2f9737
DIST xz-5.4.2.tar.gz.sig 566 BLAKE2B 95c9c70fdd25b92095dd9691e4d9d4306a3f982becfe7bd42ca6132a76f29be2c2bc66f4fc2bda547058c18e227292f4185799eb905084fc3ab415ae867b4b1b SHA512 30e965c228ed3a8ecb804db8eb11703a765b7ee934030ea69bb3940b630811eb71bf74fd20371ef7759761904ece4f0144a0b00be4d843cf98299fd016f161aa
DIST xz-5.4.3.tar.gz 2869347 BLAKE2B c4192a59ca751567ebab17e08e72aa1bf0f5ca14af0b59fded1c4dff02c1b76ab30119a4138932f78f69bd4b7827071c81d6ca1c56be65491466ea061786ed78 SHA512 aff0fe166af6df4491a6f5df2372cab100b081452461a0e8c6fd65b72af3f250f16c64d9fb8fd309141e9b9ae4e41649f48687cc29e63dd82f27f2eab19b4023
DIST xz-5.4.3.tar.gz.sig 566 BLAKE2B 1e3f86a2de532e77cae4c31928d57edeac81ca207e03c71523210605dc6bab76a50793697a242b232f74911c6e1872a0339ed977e2dd0d201504bd859fd3b4f4 SHA512 b7c7eedf4d9604ee50ec97275e5ab57e22a567402815281440ca765210c75707bd2de20e7ebfb0842725690ae19557916fc41a9fbdace5fec8190632b038292e

@ -4,7 +4,7 @@
# Remember: we cannot leverage autotools in this ebuild in order
# to avoid circular deps with autotools
EAPI=7
EAPI=8
inherit libtool multilib multilib-minimal preserve-libs usr-ldscript
@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]] ; then
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/jiatan.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
@ -28,7 +28,7 @@ else
"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~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 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
@ -43,7 +43,7 @@ SLOT="0"
IUSE="+extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-jiatan )"
fi
# Tests currently do not account for smaller feature set

@ -20,7 +20,7 @@ if [[ ${PV} == 9999 ]] ; then
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/jiatan.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
@ -35,7 +35,7 @@ else
"
if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~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 ~x64-cygwin ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
S="${WORKDIR}/${MY_P}"
@ -47,10 +47,10 @@ HOMEPAGE="https://tukaani.org/xz/"
# See top-level COPYING file as it outlines the various pieces and their licenses.
LICENSE="public-domain LGPL-2.1+ GPL-2+"
SLOT="0"
IUSE="+extra-filters nls static-libs"
IUSE="doc +extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-jiatan )"
fi
src_prepare() {
@ -68,6 +68,7 @@ src_prepare() {
multilib_src_configure() {
local myconf=(
--enable-threads
$(multilib_native_use_enable doc)
$(use_enable nls)
$(use_enable static-libs static)
)
@ -110,7 +111,10 @@ multilib_src_install() {
multilib_src_install_all() {
find "${ED}" -type f -name '*.la' -delete || die
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
if use doc ; then
rm "${ED}"/usr/share/doc/${PF}/COPYING* || die
fi
}
pkg_preinst() {

@ -20,7 +20,7 @@ if [[ ${PV} == 9999 ]] ; then
# bug #272880 and bug #286068
BDEPEND="sys-devel/gettext >=sys-devel/libtool-2"
else
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/lassecollin.asc
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/jiatan.asc
inherit verify-sig
MY_P="${PN/-utils}-${PV/_}"
@ -50,7 +50,7 @@ SLOT="0"
IUSE="doc +extra-filters nls static-libs"
if [[ ${PV} != 9999 ]] ; then
BDEPEND+=" verify-sig? ( >=sec-keys/openpgp-keys-lassecollin-20230213 )"
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-jiatan )"
fi
src_prepare() {

Binary file not shown.

@ -14,7 +14,7 @@ if [[ ${PV} == 9999 ]] ; then
inherit git-r3
else
SRC_URI="https://github.com/bit-team/${PN}/releases/download/v${PV}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
fi
LICENSE="GPL-2"

@ -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
@ -17,7 +17,6 @@ RESTRICT="!test? ( test )"
BDEPEND="
$(vala_depend)
dev-util/intltool
dev-util/itstool
sys-devel/gettext
virtual/pkgconfig

@ -26,5 +26,6 @@
</longdescription>
<upstream>
<bugs-to>https://gitlab.gnome.org/World/deja-dup/issues</bugs-to>
<remote-id type="gnome-gitlab">World/deja-dup</remote-id>
</upstream>
</pkgmetadata>

@ -1 +1,2 @@
DIST tarsnap-autoconf-1.0.39.tgz 641089 BLAKE2B 4da7fa75c2a6df3186fac4f39a511532ae866c287a2bdc8dcc22049b53fcc903305f84fae9258793bc0c7a47b208d0bf2995143ee7b4296a35b4ca41d65d9a09 SHA512 dec8a72144a3a7fd42b006933c904b812894ca9fe2c57ecc4fbba817b9b49c8f15517530a00b0c3a9897e3182b4d9aee525334537806a9c4f7308086678fa2b4
DIST tarsnap-autoconf-1.0.40.tgz 723380 BLAKE2B a794bb9bae3637c36841ad4bb0fa1c0e1c39a78ac2dc92f18cbe7dfe1036aa861f5421751dd8a85948dcb101ecb81f2177e844609b289238abd9a8448ba1655a SHA512 a4910c5cbea4a71218638703ba3140e5536a2c9bb7f35007115a7ae4a87fcd07b1be91d88e49240ee8db39be326bac049c0893c1406f215123d55a13b7b57941

@ -0,0 +1,158 @@
https://github.com/Tarsnap/tarsnap/commit/ca40c06f290fb8298dc2e583303d45b58878f37b
https://github.com/Tarsnap/tarsnap/commit/4af6d8350ab53d0f1f3104ce3d9072c2d5f9ef7a
From 4af6d8350ab53d0f1f3104ce3d9072c2d5f9ef7a Mon Sep 17 00:00:00 2001
From: Graham Percival <gperciva@tarsnap.com>
Date: Fri, 1 Apr 2022 16:58:43 -0700
Subject: [PATCH] scrypt: Fix strict aliasing
The original scrypt code treated its data as blobs of bytes, accessing
them in whatever manner was convenient from time to time:
* as 32-bit words or vectors thereof for the purpose of the Salsa20/8 core
* in machine-word-sized chunks (aka. size_t) for block copy and xor operations
* as 32-bit words for the Integerify function.
This worked fine at the time, but newer compilers apply strict aliasing rules
which allow them to assume that e.g. data accessed as a uint32_t is not the
same as data accessed as a size_t, resulting in miscompilation.
Note that in recent versions of scrypt (after 2015-07-18; versions 1.2.0 and
later) such miscompilation should be detected by the built-in runtime testing.
To avoid aliasing problems, the generic scrypt code now operates on uint32_t
throughout while the SSE2-enabled scrypt code operates on __m128i throughout.
Experimentally, we found that memcpy() speeds up blkcpy() in the plain C
case, but slowed it down in the _sse2.c case (probably because memcpy
can make use of vector instructions internally, but cannot assume that
it will always have a multiple of 16 bytes, as we do).
--- a/lib/crypto/crypto_scrypt_smix.c
+++ b/lib/crypto/crypto_scrypt_smix.c
@@ -27,39 +27,32 @@
* online backup system.
*/
#include <stdint.h>
+#include <string.h>
#include "sysendian.h"
#include "crypto_scrypt_smix.h"
-static void blkcpy(void *, const void *, size_t);
-static void blkxor(void *, const void *, size_t);
+static void blkcpy(uint32_t *, const uint32_t *, size_t);
+static void blkxor(uint32_t *, const uint32_t *, size_t);
static void salsa20_8(uint32_t[16]);
static void blockmix_salsa8(const uint32_t *, uint32_t *, uint32_t *, size_t);
-static uint64_t integerify(const void *, size_t);
+static uint64_t integerify(const uint32_t *, size_t);
static void
-blkcpy(void * dest, const void * src, size_t len)
+blkcpy(uint32_t * dest, const uint32_t * src, size_t len)
{
- size_t * D = dest;
- const size_t * S = src;
- size_t L = len / sizeof(size_t);
- size_t i;
- for (i = 0; i < L; i++)
- D[i] = S[i];
+ memcpy(dest, src, len);
}
static void
-blkxor(void * dest, const void * src, size_t len)
+blkxor(uint32_t * dest, const uint32_t * src, size_t len)
{
- size_t * D = dest;
- const size_t * S = src;
- size_t L = len / sizeof(size_t);
size_t i;
- for (i = 0; i < L; i++)
- D[i] ^= S[i];
+ for (i = 0; i < len / 4; i++)
+ dest[i] ^= src[i];
}
/**
@@ -145,9 +138,9 @@ blockmix_salsa8(const uint32_t * Bin, uint32_t * Bout, uint32_t * X, size_t r)
* Return the result of parsing B_{2r-1} as a little-endian integer.
*/
static uint64_t
-integerify(const void * B, size_t r)
+integerify(const uint32_t * B, size_t r)
{
- const uint32_t * X = (const void *)((uintptr_t)(B) + (2 * r - 1) * 64);
+ const uint32_t * X = B + (2 * r - 1) * 16;
return (((uint64_t)(X[1]) << 32) + X[0]);
}
--- a/lib/crypto/crypto_scrypt_smix_sse2.c
+++ b/lib/crypto/crypto_scrypt_smix_sse2.c
@@ -36,34 +36,30 @@
#include "crypto_scrypt_smix_sse2.h"
-static void blkcpy(void *, const void *, size_t);
-static void blkxor(void *, const void *, size_t);
+static void blkcpy(__m128i *, const __m128i *, size_t);
+static void blkxor(__m128i *, const __m128i *, size_t);
static void salsa20_8(__m128i[4]);
static void blockmix_salsa8(const __m128i *, __m128i *, __m128i *, size_t);
-static uint64_t integerify(const void *, size_t);
+static uint64_t integerify(const __m128i *, size_t);
static void
-blkcpy(void * dest, const void * src, size_t len)
+blkcpy(__m128i * dest, const __m128i * src, size_t len)
{
- __m128i * D = dest;
- const __m128i * S = src;
size_t L = len / 16;
size_t i;
for (i = 0; i < L; i++)
- D[i] = S[i];
+ dest[i] = src[i];
}
static void
-blkxor(void * dest, const void * src, size_t len)
+blkxor(__m128i * dest, const __m128i * src, size_t len)
{
- __m128i * D = dest;
- const __m128i * S = src;
size_t L = len / 16;
size_t i;
for (i = 0; i < L; i++)
- D[i] = _mm_xor_si128(D[i], S[i]);
+ dest[i] = _mm_xor_si128(dest[i], src[i]);
}
/**
@@ -168,11 +164,18 @@ blockmix_salsa8(const __m128i * Bin, __m128i * Bout, __m128i * X, size_t r)
* Note that B's layout is permuted compared to the generic implementation.
*/
static uint64_t
-integerify(const void * B, size_t r)
+integerify(const __m128i * B, size_t r)
{
- const uint32_t * X = (const void *)((uintptr_t)(B) + (2 * r - 1) * 64);
+ const __m128i * X = B + (2*r - 1) * 4;
+ uint32_t X0, X13;
- return (((uint64_t)(X[13]) << 32) + X[0]);
+ /* Get the first 32-bit element in X[0]. */
+ X0 = (uint32_t)_mm_cvtsi128_si32(X[0]);
+
+ /* Get the second 32-bit element in X[3]. */
+ X13 = (uint32_t)_mm_cvtsi128_si32(_mm_srli_si128(X[3], 4));
+
+ return (((uint64_t)(X13) << 32) + X0);
}
/**

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

@ -0,0 +1,59 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 toolchain-funcs
DESCRIPTION="Online backups for the truly paranoid"
HOMEPAGE="https://www.tarsnap.com/"
SRC_URI="https://www.tarsnap.com/download/${PN}-autoconf-${PV}.tgz"
S="${WORKDIR}"/${PN}-autoconf-${PV}
LICENSE="tarsnap"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="acl bzip2 lzma xattr"
RDEPEND="
app-arch/bzip2
dev-libs/openssl:=
sys-fs/e2fsprogs
sys-libs/zlib
acl? ( sys-apps/acl )
lzma? ( app-arch/xz-utils )
xattr? ( sys-apps/attr )
"
# Required for "magic.h"
DEPEND="
${RDEPEND}
virtual/os-headers
"
PATCHES=(
"${FILESDIR}"/${PN}-1.0.39-respect-AR.patch
"${FILESDIR}"/${P}-strict-aliasing-fix.patch
)
src_configure() {
local myeconfargs=(
$(use_enable xattr)
$(use_enable acl)
# The bundled libarchive (ancient copy) always builds
# the bzip2 bits.
--with-bz2lib
--without-lzmadec
$(use_with lzma)
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake AR="$(tc-getAR)"
}
src_install() {
default
dobashcomp misc/bash_completion.d/*
}

@ -0,0 +1,56 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit bash-completion-r1 toolchain-funcs
DESCRIPTION="Online backups for the truly paranoid"
HOMEPAGE="https://www.tarsnap.com/"
SRC_URI="https://www.tarsnap.com/download/${PN}-autoconf-${PV}.tgz"
S="${WORKDIR}"/${PN}-autoconf-${PV}
LICENSE="tarsnap"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="acl bzip2 lzma xattr"
RDEPEND="
dev-libs/openssl:=
sys-fs/e2fsprogs
sys-libs/zlib
acl? ( sys-apps/acl )
bzip2? ( app-arch/bzip2 )
lzma? ( app-arch/xz-utils )
xattr? ( sys-apps/attr )
"
# Required for "magic.h"
DEPEND="
${RDEPEND}
virtual/os-headers
"
PATCHES=(
"${FILESDIR}"/${PN}-1.0.39-respect-AR.patch
)
src_configure() {
local myeconfargs=(
$(use_enable xattr)
$(use_enable acl)
$(use_with bzip2 bz2lib)
--without-lzmadec
$(use_with lzma)
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake AR="$(tc-getAR)"
}
src_install() {
default
dobashcomp misc/bash_completion.d/*
}

Binary file not shown.

@ -3,7 +3,7 @@
EAPI=8
PYTHON_COMPAT=( python3_{9..10} pypy3 )
PYTHON_COMPAT=( python3_{9..11} pypy3 )
inherit linux-info python-single-r1 systemd toolchain-funcs

Binary file not shown.

@ -1,2 +1,2 @@
DIST isoimagewriter-0.9.1.tar.xz 460048 BLAKE2B 0fa8b1251524dc023f370b540873ea68312025487a4ed09fe4d214bab2cd8f7b16a1c5b2a5eb8603a7019797b66538c902edd9c1fb2be5d8131229bbaa84f180 SHA512 f989c4bd164e2a34d5b2305eac67f34e2a47056993e30c9d9041679b49eb004b40cdae956d49a0b11a12feff280915f5bcd45e12c8a1f8975d95eb99f36c4b2d
DIST isoimagewriter-0.9.tar.xz 446764 BLAKE2B db3628c702b845591c5895662aad17a4c691352b97ad29f0569db6472cd39c6446ff220c932e970aaf8e56be30c8549358fb6d2e318f01c12830e55fbeadd499 SHA512 94a05da44b22ae932a79f6bb91c6806047f94e9b0fb4fe5530eb6094664877c47a0581f0858ff4458daca8924a7803a979e74d6538ec8da642403c4ede58688d
DIST isoimagewriter-1.0.0.tar.xz 451924 BLAKE2B cec34345811faa2d43f376ada085867856f7ab2473c070ed35db713fb627241a1c30c3b842c9b9329592f9f1f061e2f01db0dc63a381ad50c6b95b2b0c1b2733 SHA512 d50e8146cfde12d940ccfc1ed8ad71a69d203054e470d52e274589aa38d6fbdb018a79db4b63725c7b37acfedfa36b211cc79437e3f12668b8499d9ece3ee562

@ -11,7 +11,7 @@ DESCRIPTION="Write hybrid ISO files onto a USB disk"
HOMEPAGE="https://community.kde.org/ISOImageWriter"
if [[ ${KDE_BUILD_TYPE} == release ]]; then
SRC_URI="mirror://kde/unstable/${PN}/${PV}/${P}.tar.xz"
SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
KEYWORDS="~amd64"
fi
@ -24,6 +24,7 @@ DEPEND="
>=dev-qt/qtdbus-${QTMIN}:5
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtnetwork-${QTMIN}:5
>=dev-qt/qttest-${QTMIN}:5
>=dev-qt/qtwidgets-${QTMIN}:5
>=kde-frameworks/karchive-${KFMIN}:5
>=kde-frameworks/kcrash-${KFMIN}:5

Binary file not shown.

@ -2,3 +2,4 @@ DIST conmon-2.0.30.tar.gz 161285 BLAKE2B c4e01759d819d3dff94b9ae09caa72b6f664e49
DIST conmon-2.0.31.tar.gz 158184 BLAKE2B b14bae77a18cc352bc9583604544b4e7ffe4bd8a77e5c3185c897c11819bba227edcbd84b559d998a2b5648ca371f0e98e4d9cd15951a953cbe05a9c9ae9d434 SHA512 ff879fcd5a3b7de8ee6ff9de2a13d0afc36fdb392390278b26ee179be26ff375ddce4f5ae24e3e88b737f63202af64b49e82b2ffbfc0de8bfd14690dac523747
DIST conmon-2.1.0.tar.gz 159045 BLAKE2B a39b7620091ca17f4d91a26e040f886293688562cba1827cc09c1da1c1401ad78cbb16420c9df8a055ab5ca3eb2933aec6ac1b9fbb1eea10f33b1b0d76c5dd54 SHA512 0f27a1b048c2dcafb40cd67f80c2a5d7e92f5beb849174233dc10e2db42b4ea8b89f27c901d3f38cf1d412ed875c5521e07140038e859fb54bcc554cb9197e74
DIST conmon-2.1.6.tar.gz 157838 BLAKE2B 319a170ab048c14f3be998391da403799171c5d0e342ac4214a6456398ab872cb6a77cb4d67dbb97a0bc47008c6fa657ba2a166eea4c56ee65db545b08e032bd SHA512 0b5d7f33745766f4f1646e79554e16e1d6c977fd08c5a86c72068aec9f28110b5981c38972134741281c8470c295b6195843f3dbb78e1e9da34b8d577ea41d65
DIST conmon-2.1.7.tar.gz 158201 BLAKE2B 2f159177cfa78ecafef0217d21c9c56942c5498022d3777368d8caf81c2503aafabf002c0f9ec0537936eca34c156ed9bdd037b5543eca1edd5489d9bc1ac215 SHA512 95d394b399a19a62b894cdd03937ab79b81051eea1db461b1bf957ddd7626d6ca4aa108b8319ed8c08adbdf99fd960c5ba29146e8b0673b5c920708912a72973

@ -11,15 +11,15 @@ SRC_URI="https://github.com/containers/conmon/archive/v${PV}.tar.gz -> ${P}.tar.
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
KEYWORDS="amd64 arm64 ~ppc64 ~riscv"
IUSE="systemd"
RESTRICT="test"
RDEPEND="dev-libs/glib:=
sys-libs/libseccomp
systemd? ( sys-apps/systemd:= )"
DEPEND="${RDEPEND}
dev-go/go-md2man"
DEPEND="${RDEPEND}"
BDEPEND="dev-go/go-md2man"
src_prepare() {
default

@ -0,0 +1,49 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit toolchain-funcs
DESCRIPTION="An OCI container runtime monitor"
HOMEPAGE="https://github.com/containers/conmon"
SRC_URI="https://github.com/containers/conmon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
IUSE="systemd"
RESTRICT="test"
RDEPEND="dev-libs/glib:=
sys-libs/libseccomp
systemd? ( sys-apps/systemd:= )"
DEPEND="${RDEPEND}"
BDEPEND="dev-go/go-md2man"
src_prepare() {
default
if ! use systemd; then
sed -e 's| $(PKG_CONFIG) --exists libsystemd-journal | false |' \
-e 's| $(PKG_CONFIG) --exists libsystemd | false |' \
-i Makefile || die
fi
sed -e 's|make -C tools|$(MAKE) -C tools|' -i Makefile || die
sed -e 's|^GOMD2MAN = .*|GOMD2MAN = go-md2man|' -i docs/Makefile || die
}
src_compile() {
tc-export CC
emake GIT_COMMIT="v${PV}" \
all
}
src_install() {
emake DESTDIR="${D}" \
PREFIX="${EPREFIX}/usr" \
install
dodir /usr/libexec/podman
ln "${ED}/usr/"{bin,libexec/podman}/conmon || die
dodoc README.md
}

@ -11,7 +11,7 @@ SRC_URI="https://github.com/kubernetes-sigs/cri-tools/archive/v${PV}.tar.gz -> $
LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
KEYWORDS="amd64 ~arm64"
DEPEND="dev-lang/go"

@ -2,3 +2,5 @@ DIST nerdctl-0.22.2-vendor.tar.gz 8374960 BLAKE2B 84b8cb1bef03d05f9277c6931f1f45
DIST nerdctl-0.23.0-vendor.tar.gz 8420534 BLAKE2B 824ea8761a81ed063b853f5a78bd7506f7eecfe6f7b6e3e7d9fbb7113477c32236b59e669821851117b07eb7b5be82cab6b8750ddef59a053535dfa48a65dc77 SHA512 e8431d292a0e8f6db828b3475bb2e918612961b46212e6dcad6b1edadf6fca828c7ff0aeeadbc6e847b8a2d2b0c362f789b6a19ebb6c20922e0f77e46d3df84a
DIST nerdctl-1.0.0-vendor.tar.gz 8189234 BLAKE2B 610cf1cc3b68f110023e4d2c7aea99b33c702e4f11afa39db92e1c1ae3873500a12bb71cbbf547d03eaaa9a2b1c277addebef48759abdcafa85500d0cd382cc6 SHA512 9367dd9339b62c3ef0bea7f9f85040dacd9cffc527f22175ed4337c76a16f8dad554fed4086eeee0c58286a751c061fddd21f119504dbd26ccc46ad3b44d0799
DIST nerdctl-1.1.0-vendor.tar.gz 8022993 BLAKE2B 7fe1f1337255aaac39137a7081141ace4fa762e1dda683370843320dfc6549129aaf998737684c60067f7d0765bcd143b6598c7e43b247aeb9da5bf4ba027fd9 SHA512 382382abae0cd07afcf525bce3d424461dcd3c19086bf8f2847ca43ca17db218bc99afdbe36953fd9eb63689f68484c82973dffe087dc8bf9f963d6a6122bfff
DIST nerdctl-1.3.1-go-mod-vendor.tar.gz 6756835 BLAKE2B 55ba1d184bd57cadc30e1f539687461065efff9402f063ff2660e03f61b771ee110d79eeceb451fc4e5eb5e1ac0e8fc4281e17ee43663996a9de0175d20a80c2 SHA512 5d15fa5e723a14d992c1834d4c3327c4d137a240d9edfffa3ca51e8ba502006de1d75ea4c5252a78622eccae333b039193546d5f037ba7d95cfc9ef9bea2268f
DIST nerdctl-1.3.1.tar.gz 509270 BLAKE2B bd51203db7fc45098328ba3c6dc6864be48e3f6fcb21bea4b79ac14979e79a1e16f3f556c6fc00c26b46b9ddeb200f3d1e7f8f9c8c4d2eee4067b300ea3ddbf1 SHA512 478a9ae8162233a12c569ca9a2216dda652d450944a9fa70ba7b4b41405b5f569b870a8a9d6fcaa14afc2991ea9e97a20ebfa9b1b5154e052c65fd78d6f32e3c

@ -0,0 +1,35 @@
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit go-module
EGIT_COMMIT="b224b280ff3086516763c7335fc0e0997aca617a"
DESCRIPTION="Docker-compatible CLI for containerd, with support for Compose"
HOMEPAGE="https://github.com/containerd/nerdctl"
SRC_URI="
https://github.com/containerd/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
https://github.com/containerd/${PN}/releases/download/v${PV}/${P}-go-mod-vendor.tar.gz
"
LICENSE="Apache-2.0 BSD BSD-2 ISC MIT"
SLOT="0"
KEYWORDS="~amd64"
src_unpack() {
unpack "${P}.tar.gz"
cd "${S}"
unpack "${P}-go-mod-vendor.tar.gz"
}
src_compile() {
emake VERSION=v${PV} REVISION="${EGIT_COMMIT}"
}
src_install() {
emake DESTDIR="${D}" VERSION=v${PV} REVISION="${EGIT_COMMIT}" BINDIR="/usr/bin" install
DOCS=( README.md docs/* examples )
einstalldocs
}

Binary file not shown.

@ -22,7 +22,7 @@ else
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${PARENT_P}.gh.tar.gz
"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86"
fi
DESCRIPTION="An implementation of the ACME protocol"

@ -23,7 +23,7 @@ else
-> ${PARENT_P}.gh.tar.gz
"
# Only for amd64, arm64 and x86 because of dev-python/python-augeas
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 ~arm64 x86"
fi
DESCRIPTION="Apache plugin for Certbot (Lets Encrypt client)"

@ -22,7 +22,7 @@ else
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${PARENT_P}.gh.tar.gz
"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
fi
DESCRIPTION="Nginx plugin for Certbot (Lets Encrypt client)"

@ -19,7 +19,7 @@ else
https://github.com/certbot/certbot/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86"
fi
DESCRIPTION="Lets Encrypt client to automate deployment of X.509 certificates"

@ -9,6 +9,7 @@ EAPI=8
# (find the one for the current release then subscribe to it +
# any subsequent ones linked within so you're covered for a while.)
DISTUTILS_EXT=1
DISTUTILS_OPTIONAL=1
PYTHON_COMPAT=( python3_{9..11} )
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gnupg.asc

@ -14,7 +14,7 @@ HOMEPAGE="https://apps.kde.org/keysmith/"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
IUSE=""
RDEPEND="

@ -3,6 +3,7 @@
EAPI=8
# TODO: port to meson on next release
inherit autotools multilib-minimal
DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"

@ -18,7 +18,7 @@ RESTRICT="!test? ( test )"
RDEPEND="
>=dev-qt/qtcore-5.14:5
botan? ( dev-libs/botan:2= )
botan? ( dev-libs/botan:3= )
gcrypt? ( dev-libs/libgcrypt:= )
gpg? ( app-crypt/gnupg )
nss? ( dev-libs/nss )

@ -6,6 +6,6 @@
<email>flow@gentoo.org</email>
</maintainer>
<upstream>
<remote-id type="gitlab">sequoia-pgp/sequoia</remote-id>
<remote-id type="gitlab">sequoia-pgp/sequoia-sqv</remote-id>
</upstream>
</pkgmetadata>

Binary file not shown.

@ -25,4 +25,4 @@ SRC_URI="https://extensions.libreoffice.org/assets/downloads/521/1679688917/dict
LICENSE="GPL-3 LGPL-2.1 MPL-1.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"

Binary file not shown.

@ -1 +1,2 @@
DIST gimp-help-2.10.0.tar.bz2 187092180 BLAKE2B 29a7fbe3fcb6f3210aeda4bc514d7e0eeca05f9fabd3b9022c7ed1e5a9432876cc3bf530632648e2eb50509add4e387106d9705a1c17469e33496daec737d21b SHA512 2f6d5e7cf0c3b4960c92074ef02d51a1d089c148f6453a66e453a3084cdede280f72c6b77d35f66777adbda8aa273ec2a472fb538142e51bb263c3077eec473a
DIST gimp-help-2.10.34.tar.bz2 165540436 BLAKE2B eff5afe87bbddf9166647424ef63399a4ebc4215980dddf42f949e18245c60d1095269592f5a314683f7e1d7b27e2b9130215bda5987e7c8dfcafb5cebb6abbc SHA512 316d558f66c96a0d2d0f17baf700020b76aa221f9e220ddfc3e85b10c82b20b9c1cf36893776a342e90af5170e0102eb743b79663451581444d4f881256cf377

@ -0,0 +1,65 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit python-any-r1
DESCRIPTION="GNU Image Manipulation Program help files"
HOMEPAGE="https://docs.gimp.org/"
SRC_URI="mirror://gimp/help/${P}.tar.bz2"
LICENSE="FDL-1.2"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
IUSE=""
BDEPEND="
${PYTHON_DEPS}
$(python_gen_any_dep 'dev-libs/libxml2[python,${PYTHON_USEDEP}]')
app-text/docbook-xml-dtd
dev-lang/perl
dev-libs/libxslt
gnome-base/librsvg
sys-devel/gettext
"
DOCS=( AUTHORS COPYING NEWS README )
python_check_deps() {
python_has_version "dev-libs/libxml2[python,${PYTHON_USEDEP}]"
}
pkg_setup() {
# See bug: 891709
if [[ -z "${LINGUAS}" ]] ; then
export LINGUAS="en"
ewarn "The 'LINGUAS' environment variable isn't setup in '/etc/portage/make.conf',"
ewarn "therefore only the generic ('en') documentation will be built."
ewarn "To build ${PN} for other languages please setup 'LINGUAS' variable"
ewarn "or assign it to 'L10N' variable if available, i.e. LINGUAS=\"\${L10N}\""
ewarn "The following languages are supported for ${PN}:"
ewarn "'ca cs da de el en en_GB es fa fi fr hr hu it ja ko lt nl nn pt pt_BR ro ru sl sv uk zh_CN'"
ewarn "For more details please read:"
ewarn "https://wiki.gentoo.org/wiki/Localization/Guide#LINGUAS"
fi
}
src_configure() {
econf --without-gimp
}
src_compile() {
# See bug: 833566
python_export_utf8_locale
# Affected with bugs: 677198, 876205. Set "emake -j1"
emake -j1
}
src_install() {
# See bug: 905693
emake -j1 DESTDIR="${D}" install
einstalldocs
}

@ -14,7 +14,7 @@ SRC_URI="https://github.com/Gnucash/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2 FDL-1.1"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv x86"
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 ~riscv x86"
LOCALES=( de it ja pt )
IUSE="${LOCALES[*]/#/l10n_}"

@ -1,9 +1,9 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
PYTHON_COMPAT=( python3_{9..10} pypy3 )
PYTHON_COMPAT=( python3_{10..11} pypy3 )
inherit python-any-r1 vcs-clean
COMMIT="9d711f40638202b02f2154d7f05ea35088ff9388"
@ -24,13 +24,17 @@ BDEPEND="
')
"
DOCS=(
README.md
)
python_check_deps() {
python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
}
DOCS=( README.md )
src_prepare() {
default
egit_clean
sed -e 's/add_stylesheet/add_css_file/' -i conf.py || die
}
src_compile() {

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
<stabilize-allarches/>
</pkgmetadata>

@ -10,7 +10,7 @@ S="${WORKDIR}/python-${PV}-docs-html"
LICENSE="PSF-2"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
src_install() {
rm -r _sources || die

@ -1,4 +1,4 @@
# Copyright 1999-2021 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7

@ -10,7 +10,7 @@ S="${WORKDIR}/python-${PV}-docs-html"
LICENSE="PSF-2"
SLOT="$(ver_cut 1-2)"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86"
src_install() {
rm -r _sources || die

Binary file not shown.

@ -1,15 +1,11 @@
DIST emacs-18.59-patches-15.tar.xz 34104 BLAKE2B 9d14004d5188ec0ffe11099ae1beb431adfe159d220fc1b6f1d0be67da19b88911b66a206386beee9498bdcaa48e40a185755734cad2d60927c79bc8ddf0fa7d SHA512 c82cd8e81acf63addd137716a60191b916ee9ac9f8176661be1e8dd0f347f63f8ca8bf9d4d225141499dcbf4c20444eb6526cc3a3912a2d4136fb2bd295e2c26
DIST emacs-18.59.tar.gz 2962652 BLAKE2B d617636daff41e672af2dcda26ec24b2495cf0a3e6373561ee26a2a922b7252c074dd6b79289d771853a4720c60f084f5726b904bf65989718173232ac874b0b SHA512 03ce565e346e89b7aacb1852f4783e8907f394de7da0c543b475cb038eb89b87f980d0f7ca1841b1d2108b20f211e95113c7214e4a33e5767a1827ff43173f33
DIST emacs-25.3-patches-4.tar.xz 5164 BLAKE2B 30ef1e7ac6ee9a702678899cb27ea9c321eb0711d55917118ec99ea9e060e79bae179172d0a2dda5821c19902f6e0813e17ac71c198cd814c265838f96883b87 SHA512 ea487de3bb792386510c23c295441438c2fc4eae085fe9d41e5e16181fd4265c1d205b360ce977070a43343feeafac5b9392ea39414f2b170d7051f89ed58502
DIST emacs-25.3-patches-5.tar.xz 6120 BLAKE2B dc56e5f9bc5368062260bb82123f2874c15daa2b90514db5c1e8b59ac44bfc7cdb590259905b2ffb1e38af00dcf195067d116a1cb5fa1a8eb102904f27b6e949 SHA512 21f2045d1c64151923d62c180f39b3c9eba9e65881096613219df1705f525b8eafa91e0a0dd3688b92b0acc7f41035ee319b09c191131a9e05693d1f25a71750
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-5.tar.xz 5484 BLAKE2B dc2011b35d948d6106cfa4fd7f2ca5d4591b91e93e2417cee09a5ec5e3ac74e5284c170305e606ee45c9d31b1833ccb10c1ac224f19433a341465298c36165f0 SHA512 f0a6094d72c8879707e914e3cc3526d814216e84e9358e211a4f32e5d4c5958664ce3e3cca217629e2a3324bcb7ac2500d333b1c395f156757210f602d7818d5
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-6.tar.xz 11600 BLAKE2B ed8bfb8b2c086423e7bf9f8de5ffb929aa63d8b2781361a8a9d274124a9df52ececdb38c3d4d7d0f0d0fa3a8eaea337c0078929967b073a70209ecdb2bb4cb58 SHA512 11f8af976148c957aebaa5fd2edd46b12ffe24036c09c20a61c47e65d8a2febe6480636be2a7f8f3f7c70a8da7091c2a7c254fd853bde56ec45d7db6a9ca94f5
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-patches-3.tar.xz 5416 BLAKE2B c361fdebf375427cf25c4ac206161b5b55d8d6de88752de35491c778ba90eedf277159a8c317ccda7aaf5e000035d6e33d8e70282436d6e03fa311c4576abe03 SHA512 acae15b577af831bc94e102323836f3fa5b0d51ec1096b84063c81c58f1087b67487507c05d93ba5ddacfce0fea4f3e755906a9ec582b061b65095ee7d693eac
DIST emacs-28.2.tar.xz 47722600 BLAKE2B a7e4990658b5e7306510f8dded93aaf0b82cdd9306df8b786526d038c3249ef9579287075f2235eb01a71ae1699db555254f137b86ab2d2305b45895053df552 SHA512 a7cec7e3e82367815a1442f69af54102dbfc434069810a9dec5938a6660cb8b076e6f1fb0bfff9695b15603dbbe05eb9c7dfd92e90cf40fc4d1e5746bce83bd8

@ -1,355 +0,0 @@
# Copyright 1999-2022 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="25"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 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 libxml2 livecd m17n-lib motif png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm zlib"
RDEPEND="acct-group/mail
app-emacs/emacs-common[games?,gui(-)?]
net-libs/liblockfile
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 )
libxml2? ( >=dev-libs/libxml2-2.2.0 )
selinux? ( sys-libs/libselinux )
ssl? ( net-libs/gnutls:0= )
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 )
!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 "unable to sed ctags.1"
AT_M4DIR=m4 eautoreconf
touch src/stamp-h.in || die
}
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
# Don't trigger a floating point exception for NaNs on alpha
use alpha && append-flags -mieee
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"
myconf+=" --without-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
fi
econf \
--program-suffix="-${EMACS_SUFFIX}" \
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
--localstatedir="${EPREFIX}"/var \
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
--with-gameuser=":gamestat" \
--without-compress-install \
--without-hesiod \
--with-file-notification=$(usev inotify || usev gfile || echo no) \
$(use_enable acl) \
$(use_with dbus) \
$(use_with dynamic-loading modules) \
$(use_with gpm) \
$(use_with kerberos) $(use_with kerberos kerberos5) \
$(use_with libxml2 xml2) \
$(use_with selinux) \
$(use_with ssl gnutls) \
$(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 "moving emacs executable failed"
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 \
|| die "moving emacs man page failed"
# move info dir to avoid collisions with the dir file generated by portage
mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} \
|| die "moving info dir failed"
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
# movemail must be setgid mail
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
# avoid collision between slots, see bug #169033 e.g.
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
rm -rf "${ED}"/usr/share/{appdata,applications,icons} || 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 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
}

@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/emacs/${P}.tar.xz
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
SLOT="25"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 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 libxml2 livecd m17n-lib motif png selinux sound source ssl svg tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm zlib"
RDEPEND="acct-group/mail

@ -1,375 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit 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-3.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=
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
}

@ -12,7 +12,7 @@ SRC_URI="mirror://gnu/emacs/${P}.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"
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(-)?]

@ -36,7 +36,7 @@ else
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"
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"

@ -1,438 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit elisp-common readme.gentoo-r1 toolchain-funcs #autotools
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-4.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=
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
}

@ -1,517 +0,0 @@
# Copyright 1999-2022 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-1.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=
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
}

@ -36,7 +36,7 @@ else
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"
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"

@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/ghex.git"
SRC_URI=""
else
KEYWORDS="amd64 ~arm ~ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
KEYWORDS="amd64 ~arm ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
fi
LICENSE="GPL-2+ FDL-1.1+"

@ -1,3 +1,6 @@
DIST vscode-1.77.3-amd64.tar.gz 124980454 BLAKE2B b8f92010c575edec2daf39af5bb2eb8ff43c9538a8ac6cd8ce2c6a66f461c5d0a3284b6dd0e540e7b8ef195652e7c5c2439a8c4ef8286a63d3fa24fa6c663c20 SHA512 9772ec50e6e8fb099f746e89b5b6fb3948699e92d1bb865f2de95317baa2dbad7ce30d61132585859dcd11699b52f91229cc2622b01492d1c63254964015727c
DIST vscode-1.77.3-arm.tar.gz 112112804 BLAKE2B 53be5e0f8ec3d859b36626f98799f3cbc7270aef5f8770a69924a5a6121d28609592cd1c77e663715015128c9c4180f6555ab35ff896e76f9e913b2c308770ae SHA512 9160e0cdafa3f562a504e24f94c8b70100d79a776dd711b2ddcd700ded4428d7523a1f396d9377bf8ed7a4977a448a2ee98d77111afb13f69ae91f870cfd8ba6
DIST vscode-1.77.3-arm64.tar.gz 121682734 BLAKE2B f9428cd9ebf921bee3797e4b3a816935e00a37f1cbe0ea128769b52f28e3b3fce4f758caefc6667eb0e2dd2702a6047ad337db91b82e16167860a265310ad5bc SHA512 b16f4d3a1d6c1c612520128fd422f339f0c2acd049fe82e3bebb903641ad17dfcbfffcba32b15bd9595d7ed622b69af343efb5e616ed94f991247ae17fcb38bc
DIST vscode-1.78.0-amd64.tar.gz 134687218 BLAKE2B f29366cd55661fbdcdeeb5344ff55fa8924fcdd8bb9df77a83caded61dc51999b69effbfc758bde98a04e48c926a6671969d978fd98d5a5c706f54cafc8dbd6e SHA512 214b198f21b663b001667280627a99deca07409220565355eaf21d74ddf0524aec5ceff3cf7f97bf60e12657bd88a394ffcc5b9decb379b8e2323ff37b243b6e
DIST vscode-1.78.0-arm.tar.gz 119254165 BLAKE2B 5ddf5372f1ef21e99463d742cb73f2d889f03f5feba6753ea11f5eb48f19772bcdb951a3f291cb6820bfb9892b4ea5c01a73854c202903685f28b28d088b752b SHA512 f1d03a494442e49d591c11f618abaa976e63c2ecb8927d8a45bcde37ee9e9380b2fa621754b4ece0efdf524aabaeedfa6442f476a06edce30a13aeba98d6901c
DIST vscode-1.78.0-arm64.tar.gz 130765917 BLAKE2B 8ed333530481ed1067163a8e27bf619e47504429051408d581cdaec8095ba8648c0045f59d8907f5cfec1ac2cc51acdc6022cf97e57a98c68483e8f725f9c89d SHA512 dffe7761eb961e9d2584fb5ca42e56fdcff1dfed858a5a098309c7f9311d79949c9bbc00be94258d052e541b27be2e45b935f2b7a1afc498898e1bfde084e304

@ -0,0 +1,122 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop pax-utils xdg optfeature
DESCRIPTION="Multiplatform Visual Studio Code from Microsoft"
HOMEPAGE="https://code.visualstudio.com"
SRC_URI="
amd64? ( https://update.code.visualstudio.com/${PV}/linux-x64/stable -> ${P}-amd64.tar.gz )
arm? ( https://update.code.visualstudio.com/${PV}/linux-armhf/stable -> ${P}-arm.tar.gz )
arm64? ( https://update.code.visualstudio.com/${PV}/linux-arm64/stable -> ${P}-arm64.tar.gz )
"
S="${WORKDIR}"
RESTRICT="mirror strip bindist"
LICENSE="
Apache-2.0
BSD
BSD-1
BSD-2
BSD-4
CC-BY-4.0
ISC
LGPL-2.1+
Microsoft-vscode
MIT
MPL-2.0
openssl
PYTHON
TextMate-bundle
Unlicense
UoI-NCSA
W3C
"
SLOT="0"
KEYWORDS="-* ~amd64 ~arm ~arm64"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
app-crypt/libsecret[crypt]
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
media-libs/alsa-lib
media-libs/mesa
net-print/cups
sys-apps/util-linux
sys-apps/dbus
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libdrm
x11-libs/libX11
x11-libs/libxcb
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libxkbcommon
x11-libs/libxkbfile
x11-libs/libXrandr
x11-libs/libxshmfence
x11-libs/pango
"
QA_PREBUILT="
/opt/vscode/bin/code-tunnel
/opt/vscode/chrome_crashpad_handler
/opt/vscode/chrome-sandbox
/opt/vscode/code
/opt/vscode/libEGL.so
/opt/vscode/libffmpeg.so
/opt/vscode/libGLESv2.so
/opt/vscode/libvk_swiftshader.so
/opt/vscode/libvulkan.so*
/opt/vscode/resources/app/extensions/*
/opt/vscode/resources/app/node_modules.asar.unpacked/*
/opt/vscode/swiftshader/libEGL.so
/opt/vscode/swiftshader/libGLESv2.so
"
src_install() {
if use amd64; then
cd "${WORKDIR}/VSCode-linux-x64" || die
elif use arm; then
cd "${WORKDIR}/VSCode-linux-armhf" || die
elif use arm64; then
cd "${WORKDIR}/VSCode-linux-arm64" || die
else
die "Visual Studio Code only supports amd64, arm and arm64"
fi
# Cleanup
rm -r ./resources/app/LICENSES.chromium.html ./resources/app/LICENSE.rtf ./resources/app/licenses || die
# Disable update server
sed -e "/updateUrl/d" -i ./resources/app/product.json || die
# Install
pax-mark m code
mkdir -p "${ED}/opt/${PN}" || die
cp -r . "${ED}/opt/${PN}" || die
fperms 4711 /opt/${PN}/chrome-sandbox
dosym -r "/opt/${PN}/bin/code" "usr/bin/vscode"
dosym -r "/opt/${PN}/bin/code" "usr/bin/code"
dosym -r "/opt/${PN}/bin/code-tunnel" "usr/bin/code-tunnel"
domenu "${FILESDIR}/vscode.desktop"
domenu "${FILESDIR}/vscode-url-handler.desktop"
domenu "${FILESDIR}/vscode-wayland.desktop"
domenu "${FILESDIR}/vscode-url-handler-wayland.desktop"
newicon "resources/app/resources/linux/code.png" "vscode.png"
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "keyring support inside vscode" "gnome-base/gnome-keyring"
}

Binary file not shown.

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

Loading…
Cancel
Save