parent
ddabd625d9
commit
c982d48d8c
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 29316 BLAKE2B 2c4a92f93fe21b1118b0f8b5e85b5b9d7c2e419b5e06920d0ecc7806c731864ec124648c20b0f4998d0fcd8ff2085d7d1bcf72cbdb75030d418366b27b36fb78 SHA512 1d52d407123bf1a8335c8a2bb2b71accbb071c6623a0ede0a1c5471f63f78fda74c667449e1d7096bd0bd26a5b67bee266e5a0daca5e0c723b6c06c741c7ca48
|
||||
TIMESTAMP 2023-11-09T12:10:57Z
|
||||
MANIFEST Manifest.files.gz 29299 BLAKE2B fa0e0fa8cca71d7d9e9af658dffc87bc35ac4f9d07b8306f9d2a64addd164fa816bfad5fd714e6dae0dba0c7813e6f2d4fa2f9d13f378717576880ca93cba646 SHA512 4fb5611dc116dd044d316142278278638d4df2bc4928f38b6a7c855367955d3370b4cf320b565b8d0692d1c4500285605223bd7202faee4d78f15758c6dfc3aa
|
||||
TIMESTAMP 2023-11-09T21:40:23Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmVMzFFfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmVNUcdfFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klCoMRAAlCjnfJxTf0npn5gUfNOks9l6cvvf4yJcgXaotyyP4K6MiZAhRFpgbEf5
|
||||
f0vPmsPsZUdJJGAr2dd0OvpK+b71IH1qK1iXTIB+vvv/+MWuEAhQMH8EaQiQwmiA
|
||||
4K9kPdAcbFrrAlgzwGClF5iVyVJ9oGbNUpsvw16196mkmPoslKQ5851brTky/vTz
|
||||
qfJ2o55iq1D90CKUHUCkigqfvPsyVjCVyl53gP4g/jZmXfy67Zy8qIGXBAPzL4dq
|
||||
Pj1M/l7I3LyzQyy2WLbqVEFbLQ0eoeqDWB8DkqvWHM5j4JRdj+8Y+HfzxA/whvR9
|
||||
6x4oMir/SGm8u3bm1DfbJFSj1JgeyIYuW1TQl7ZlPT2LT5/T5vlKzGId2PHJ0Bch
|
||||
X5WOzukJhlMtK79GkbZxy/Q0Otr4MEfEgFzSsa2q67oMfEPaYux5ZXL0nIGhFPeu
|
||||
/NHuyYHPLCcZYoCw871lSLmMrQU2HOa8iLWW4ra7yBZakWl8XYoC3diJsPaAWA9H
|
||||
JT7m39LfV3aBAIx3iF0x4fIri1EfeLTINYjyiVeX4GCfKoS40mFIrGvkIOO5kFv6
|
||||
E6xzwMHV8/uXF8l8dNmipkSYEljGaejsS5CU537RrYa05tolo4Cf9qXqiuFDp2Jt
|
||||
DjEJaNQ3V2Mt7ZK9VsLr/4JT6kvxveUgjgVje++NEyDjEFLMni0=
|
||||
=qfmT
|
||||
klBlqA//RekOla6jAZ6/kvAyowOcTB0+RQE/cL2CAczhM9gjbffhLU7IDRNTO+HN
|
||||
i1thTrqxh+iK9lagUDu/LgaSm5oXFPVLqdiT4YLQb2IRwHDEeIeUi1bDpAkSZuEn
|
||||
BcOIZ/oHVaehvWuYB3HGZlprfVosBicyvvS/BcLrOGyefAcDUv6VL88DOlsCcEGP
|
||||
WwnUT+eYxeC+tCT7CP/PZ3UfJ505Z7d5wyNSYgLb76+TdDrpICj5G66oxnrEtjN3
|
||||
akKnFCUQ5uDunNnW68XP0yklCp4WjmVqFCJiEI4QF9EsgUwvI3p9mJaATyVHzwqP
|
||||
h2mA7YxEwMHdMRfS5AIfRfavqgOGcq6r1IFRzCVD9+OF5EmehYtXPbJGhu+uy0cy
|
||||
zww5Itp3cGaTIZ+PnP5KCMTcqleUDbhHKYNxxuW5H9TDeCZznPo5ua5VvIlF2zGm
|
||||
pUfqNe++7J5I/ImreRNokjlw7ssjoUph+tVJ9bIkjHKjeVr9JVdFFqTzAspiaAJh
|
||||
pHcemTketr4Lly9/olNF8ASHc6B0gZkiiwC/2VQsUnzjNVa1jXXxN/VyhVgBiEwi
|
||||
G2xdn8j82PDOvzj4RjZcJLGxtIlHVIpchAQm/HTOFjhQC6bLL3b+7EY8Ik7Vm8ER
|
||||
LILZ7AOCUGlwDlN4Hs6hzmT2Fkd9wGwfaOZpDOsPGGRNJIjiYAY=
|
||||
=TZ13
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
DIST kontrast-23.04.3.tar.xz 205832 BLAKE2B cd85476a137c19b00fd86686d1adf76ff9942208c5b5f435d352a949f11d1d34c75dbcb7d235869bed5aa2152f19e70e801eb6ab0c8c40350118b2a4ad144407 SHA512 f4c00bcee75999008a227156f169cb642646ff7e4ca2496103502011a6637c35c42d48bdc04aa630f119d03fc4d07cbb3619670fa45e1f03f7bfa9620805c24c
|
||||
DIST kontrast-23.08.2.tar.xz 209748 BLAKE2B 625531f523b3f48ad11dcad87787724e0c2180d43111becbcd2c07bac86b19792c91680f119b66520946f5ee020e1927f74e4aba4eda6f476c90c81600911840 SHA512 8af0c0b35f5e513adf00e06807f226070310234c109a247dc840265a65462675c43f387d5dc9c6e927174f5d41af7451faac57dee91435502f080e1a49d84206
|
||||
DIST kontrast-23.08.3.tar.xz 211828 BLAKE2B 44cc6550c70d1074a45a9c0aea430cd257b69b327311474fa601f1cf79114131bf8960ddcc994c0bad46359066f0e83fd365aa732f256ac1dc308bba4ad99665 SHA512 da6d6573cab87ae46a812ae49416e94a1c07c296890024352c9225aa16858e5a5a6d2ae4b3edca4a657f9422f6c236446cab1b681421e27e6ff6027b9bd43b1d
|
||||
EBUILD kontrast-23.04.3.ebuild 789 BLAKE2B 84fd2e80177f44503c4071ecf3a9558be4f9700db49e022d4e4a00f6e351f78ada5fa01caddec929727df90e5fae2a0ee2e10deac3412fee25b3cc0295abd89f SHA512 c1353fe38f32f3242496fc7ad67a1d74e66e8e68ef0c54cbee0c71eb8c0976d12a18e49360b8ac96efd8a57659f7fba7b110c5468efacbd68dad9629e2828628
|
||||
EBUILD kontrast-23.08.2.ebuild 828 BLAKE2B ee63b27e68a67e7ed5ab7488ed4cb7b4365d7b33675e4159c5f99b1a33fbc59f8c65c76f51bffbc3c95330a1acfe91462ff19c29700812d5438441599317db1c SHA512 f4bfe337bd33e56bbad5ff3cb0c52615c6eef373c3a3c97db8cae42f2eb10fd56ce8580803aa1003c6ac2d007b5eedf0c42b8cbfbe18d3afccedb93c2c9e01cd
|
||||
EBUILD kontrast-23.08.3.ebuild 828 BLAKE2B ee63b27e68a67e7ed5ab7488ed4cb7b4365d7b33675e4159c5f99b1a33fbc59f8c65c76f51bffbc3c95330a1acfe91462ff19c29700812d5438441599317db1c SHA512 f4bfe337bd33e56bbad5ff3cb0c52615c6eef373c3a3c97db8cae42f2eb10fd56ce8580803aa1003c6ac2d007b5eedf0c42b8cbfbe18d3afccedb93c2c9e01cd
|
||||
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
|
||||
|
Binary file not shown.
@ -0,0 +1,235 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python3_10 )
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
inherit systemd distutils-r1
|
||||
|
||||
DESCRIPTION="Salt is a remote execution and configuration manager"
|
||||
HOMEPAGE="https://www.saltstack.com/resources/community/
|
||||
https://github.com/saltstack"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/${PN}stack/${PN}.git"
|
||||
EGIT_BRANCH="develop"
|
||||
else
|
||||
inherit pypi
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="
|
||||
cheetah cherrypy ldap libcloud libvirt genshi gnupg keyring mako
|
||||
mongodb neutron nova openssl portage profile redis selinux test raet
|
||||
+zeromq vim-syntax
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
sys-apps/pciutils
|
||||
>=dev-python/distro-1.5[${PYTHON_USEDEP}]
|
||||
>=dev-python/jinja-3.1.2[${PYTHON_USEDEP}]
|
||||
dev-python/jmespath[${PYTHON_USEDEP}]
|
||||
dev-python/libnacl[${PYTHON_USEDEP}]
|
||||
>=dev-python/msgpack-1.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/psutil-5.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pycryptodome-3.9.8[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/markupsafe-2.1.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/requests-2.31.0[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
dev-python/tomli[${PYTHON_USEDEP}]
|
||||
dev-python/watchdog[${PYTHON_USEDEP}]
|
||||
libcloud? (
|
||||
dev-python/aiohttp[${PYTHON_USEDEP}]
|
||||
dev-python/aiosignal[${PYTHON_USEDEP}]
|
||||
>=dev-python/apache-libcloud-2.5.0[${PYTHON_USEDEP}]
|
||||
dev-python/async-timeout[${PYTHON_USEDEP}]
|
||||
)
|
||||
mako? ( dev-python/mako[${PYTHON_USEDEP}] )
|
||||
ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
|
||||
libvirt? (
|
||||
dev-python/libvirt-python[${PYTHON_USEDEP}]
|
||||
)
|
||||
openssl? (
|
||||
dev-libs/openssl:0=[-bindist(-)]
|
||||
>=dev-python/pyopenssl-23.2.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
raet? (
|
||||
>=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}]
|
||||
>=dev-python/raet-0.6.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
|
||||
cheetah? ( >=dev-python/cheetah3-3.2.2[${PYTHON_USEDEP}] )
|
||||
genshi? ( dev-python/genshi[${PYTHON_USEDEP}] )
|
||||
mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
|
||||
portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
|
||||
keyring? ( dev-python/keyring[${PYTHON_USEDEP}] )
|
||||
redis? ( dev-python/redis[${PYTHON_USEDEP}] )
|
||||
selinux? ( sec-policy/selinux-salt )
|
||||
nova? (
|
||||
>=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
neutron? (
|
||||
>=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}]
|
||||
)
|
||||
gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
|
||||
profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
|
||||
vim-syntax? ( app-vim/salt-vim )
|
||||
zeromq? ( >=dev-python/pyzmq-19.0.0[${PYTHON_USEDEP}] )
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
${RDEPEND}
|
||||
dev-python/apache-libcloud[${PYTHON_USEDEP}]
|
||||
>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/certifi-2023.07.22[${PYTHON_USEDEP}]
|
||||
dev-python/cherrypy[${PYTHON_USEDEP}]
|
||||
>=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
|
||||
dev-python/mako[${PYTHON_USEDEP}]
|
||||
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/moto-2.0.0[${PYTHON_USEDEP}]
|
||||
dev-python/passlib[${PYTHON_USEDEP}]
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyopenssl-23.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-7.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-salt-factories-1.0.0_rc17[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-tempdir[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-subtests[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-shell-utilities[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-skip-markers[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-system-statistics[${PYTHON_USEDEP}]
|
||||
dev-python/flaky[${PYTHON_USEDEP}]
|
||||
net-dns/bind-tools
|
||||
>=dev-python/virtualenv-20.3.0[${PYTHON_USEDEP}]
|
||||
dev-util/yamllint[${PYTHON_USEDEP}]
|
||||
!x86? ( >=dev-python/boto3-1.17.67[${PYTHON_USEDEP}] )
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( README.rst AUTHORS )
|
||||
|
||||
REQUIRED_USE="|| ( raet zeromq )
|
||||
test? ( cheetah genshi )"
|
||||
RESTRICT="!test? ( test ) x86? ( test )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/salt-3003-skip-tests-that-oom-machine.patch"
|
||||
"${FILESDIR}/salt-3003-gentoolkit-revdep.patch"
|
||||
"${FILESDIR}/salt-3002-tests.patch"
|
||||
"${FILESDIR}/salt-3003.1-tests.patch"
|
||||
"${FILESDIR}/salt-3005-tests.patch"
|
||||
"${FILESDIR}/salt-3005.1-no-entry-points.patch"
|
||||
"${FILESDIR}/salt-3005.1-importlib-metadata-5-r1.patch"
|
||||
"${FILESDIR}/salt-3005.1-tests.patch"
|
||||
"${FILESDIR}/salt-3005.1-modules-file-python-3.11-host.patch"
|
||||
"${FILESDIR}/salt-3006.2-tests.patch"
|
||||
)
|
||||
|
||||
python_prepare_all() {
|
||||
# remove tests with external dependencies that may not be available, and
|
||||
# tests that don't work in sandbox
|
||||
rm tests/unit/{test_{zypp_plugins,module_names},utils/test_extend}.py || die
|
||||
rm tests/unit/modules/test_boto_{vpc,secgroup,elb}.py || die
|
||||
rm tests/unit/states/test_boto_vpc.py || die
|
||||
rm tests/support/gitfs.py tests/unit/runners/test_git_pillar.py || die
|
||||
rm tests/pytests/functional/transport/server/test_req_channel.py || die
|
||||
rm tests/pytests/functional/utils/test_async_event_publisher.py || die
|
||||
rm tests/pytests/functional/runners/test_winrepo.py || die
|
||||
|
||||
# tests that require network access
|
||||
rm tests/unit/{states,modules}/test_zcbuildout.py || die
|
||||
rm -r tests/integration/cloud || die
|
||||
rm -r tests/kitchen/tests/wordpress/tests || die
|
||||
rm tests/kitchen/test_kitchen.py || die
|
||||
rm tests/unit/modules/test_network.py || die
|
||||
rm tests/pytests/functional/modules/test_pip.py || die
|
||||
rm tests/pytests/unit/client/ssh/test_ssh.py || die
|
||||
rm -r tests/pytests/{integration,functional}/netapi tests/integration/netapi || die
|
||||
|
||||
# tests require root access
|
||||
rm tests/integration/pillar/test_git_pillar.py || die
|
||||
rm tests/integration/states/test_supervisord.py || die
|
||||
|
||||
# removes contextvars, see bug: https://bugs.gentoo.org/799431
|
||||
sed -i '/^contextvars/d' requirements/base.txt || die
|
||||
|
||||
# make sure pkg_resources doesn't bomb because pycrypto isn't installed
|
||||
find "${S}" -name '*.txt' -print0 | xargs -0 sed -e '/pycrypto>/ d ; /pycryptodomex/ d' -i || die
|
||||
# pycryptodome rather than pycryptodomex
|
||||
find "${S}" -name '*.py' -print0 | xargs -0 -- sed -i -e 's:Cryptodome:Crypto:g' -- || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
local svc
|
||||
USE_SETUPTOOLS=1 distutils-r1_python_install_all
|
||||
|
||||
for svc in minion master syndic api; do
|
||||
newinitd "${FILESDIR}"/${svc}-initd-5 salt-${svc}
|
||||
newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc}
|
||||
systemd_dounit "${FILESDIR}"/salt-${svc}.service
|
||||
done
|
||||
|
||||
insinto /etc/${PN}
|
||||
doins -r conf/*
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local -a EPYTEST_DESELECT=(
|
||||
# doesn't like the distutils warning
|
||||
tests/pytests/integration/cli/test_batch.py::test_batch_retcode
|
||||
tests/pytests/integration/cli/test_batch.py::test_multiple_modules_in_batch
|
||||
# hangs indefinitely
|
||||
tests/pytests/unit/test_minion.py::test_master_type_disable
|
||||
# needs root
|
||||
tests/pytests/unit/modules/test_cmdmod.py::test_runas_env_sudo_group
|
||||
# don't like sandbox
|
||||
tests/unit/cloud/clouds/test_joyent.py::JoyentTestCase::test_query_instance_has_ip
|
||||
tests/unit/cloud/clouds/test_joyent.py::JoyentTestCase::test_query_instance_init
|
||||
tests/unit/cloud/clouds/test_joyent.py::JoyentTestCase::test_query_instance_ready
|
||||
tests/unit/modules/test_win_ip.py::WinShadowTestCase::test_disable
|
||||
tests/unit/modules/test_win_ip.py::WinShadowTestCase::test_enable
|
||||
tests/unit/netapi/rest_tornado/test_saltnado.py::TestDisbatchLocal::test_when_is_finished_is_set_before_events_return_then_no_data_should_be_returned
|
||||
tests/unit/netapi/rest_tornado/test_saltnado.py::TestDisbatchLocal::test_when_is_finished_then_all_collected_data_should_be_returned
|
||||
tests/unit/netapi/rest_tornado/test_saltnado.py::TestDisbatchLocal::test_when_is_timed_out_is_set_before_other_events_are_completed_then_result_should_be_empty_dictionary
|
||||
tests/unit/netapi/rest_tornado/test_saltnado.py::TestDisbatchLocal::test_when_is_timed_out_then_all_collected_data_should_be_returned
|
||||
tests/unit/netapi/rest_tornado/test_saltnado.py::TestDisbatchLocal::test_when_min_wait_time_has_not_passed_then_disbatch_should_not_return_expected_data_until_time_has_passed
|
||||
tests/unit/netapi/rest_tornado/test_saltnado.py::TestDisbatchLocal::test_when_minions_all_return_then_all_collected_data_should_be_returned
|
||||
tests/unit/utils/test_vt.py::VTTestCase::test_split_multibyte_characters_shiftjis
|
||||
tests/unit/utils/test_vt.py::VTTestCase::test_split_multibyte_characters_unicode
|
||||
tests/pytests/unit/utils/test_vt.py::test_log_sanitize
|
||||
tests/pytests/unit/test_master.py::test_fileserver_duration
|
||||
tests/pytests/unit/modules/test_aptpkg.py::test_call_apt_dpkg_lock
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_anyof_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_dict_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_hostname_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_not_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_oneof_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_optional_requirements_config_validation
|
||||
)
|
||||
|
||||
# testsuite likes lots of files
|
||||
ulimit -n 4096 || die
|
||||
|
||||
# ${T} is too long a path for the tests to work
|
||||
local TMPDIR
|
||||
TMPDIR="$(mktemp --directory --tmpdir=/tmp ${PN}-XXXX)" || die
|
||||
(
|
||||
export TMPDIR
|
||||
cleanup() { rm -rf "${TMPDIR}" || die; }
|
||||
|
||||
trap cleanup EXIT
|
||||
|
||||
addwrite "${TMPDIR}"
|
||||
|
||||
USE_SETUPTOOLS=1 NO_INTERNET=1 SHELL="/bin/bash" \
|
||||
epytest
|
||||
)
|
||||
}
|
@ -0,0 +1,235 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python3_10 )
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
inherit systemd distutils-r1
|
||||
|
||||
DESCRIPTION="Salt is a remote execution and configuration manager"
|
||||
HOMEPAGE="https://www.saltstack.com/resources/community/
|
||||
https://github.com/saltstack"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/${PN}stack/${PN}.git"
|
||||
EGIT_BRANCH="develop"
|
||||
else
|
||||
inherit pypi
|
||||
KEYWORDS="~amd64 ~riscv ~x86"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
IUSE="
|
||||
cheetah cherrypy ldap libcloud libvirt genshi gnupg keyring mako
|
||||
mongodb neutron nova openssl portage profile redis selinux test raet
|
||||
+zeromq vim-syntax
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
sys-apps/pciutils
|
||||
>=dev-python/cryptography-41.0.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/distro-1.5[${PYTHON_USEDEP}]
|
||||
>=dev-python/jinja-3.1.2[${PYTHON_USEDEP}]
|
||||
dev-python/jmespath[${PYTHON_USEDEP}]
|
||||
dev-python/libnacl[${PYTHON_USEDEP}]
|
||||
dev-python/looseversion[${PYTHON_USEDEP}]
|
||||
>=dev-python/msgpack-1.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/packaging-21.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/psutil-5.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pycryptodome-3.9.8[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/markupsafe-2.1.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/requests-2.31.0[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
dev-python/tomli[${PYTHON_USEDEP}]
|
||||
dev-python/watchdog[${PYTHON_USEDEP}]
|
||||
libcloud? (
|
||||
dev-python/aiohttp[${PYTHON_USEDEP}]
|
||||
dev-python/aiosignal[${PYTHON_USEDEP}]
|
||||
>=dev-python/apache-libcloud-2.5.0[${PYTHON_USEDEP}]
|
||||
dev-python/async-timeout[${PYTHON_USEDEP}]
|
||||
)
|
||||
mako? ( dev-python/mako[${PYTHON_USEDEP}] )
|
||||
ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
|
||||
libvirt? (
|
||||
dev-python/libvirt-python[${PYTHON_USEDEP}]
|
||||
)
|
||||
openssl? (
|
||||
dev-libs/openssl:0=[-bindist(-)]
|
||||
>=dev-python/pyopenssl-23.2.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
raet? (
|
||||
>=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}]
|
||||
>=dev-python/raet-0.6.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
|
||||
cheetah? ( >=dev-python/cheetah3-3.2.2[${PYTHON_USEDEP}] )
|
||||
genshi? ( dev-python/genshi[${PYTHON_USEDEP}] )
|
||||
mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
|
||||
portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
|
||||
keyring? ( dev-python/keyring[${PYTHON_USEDEP}] )
|
||||
redis? ( dev-python/redis[${PYTHON_USEDEP}] )
|
||||
selinux? ( sec-policy/selinux-salt )
|
||||
nova? (
|
||||
>=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}]
|
||||
)
|
||||
neutron? (
|
||||
>=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}]
|
||||
)
|
||||
gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
|
||||
profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
|
||||
vim-syntax? ( app-vim/salt-vim )
|
||||
zeromq? ( >=dev-python/pyzmq-19.0.0[${PYTHON_USEDEP}] )
|
||||
"
|
||||
BDEPEND="
|
||||
dev-python/build[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
${RDEPEND}
|
||||
dev-python/apache-libcloud[${PYTHON_USEDEP}]
|
||||
>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/certifi-2023.07.22[${PYTHON_USEDEP}]
|
||||
dev-python/cherrypy[${PYTHON_USEDEP}]
|
||||
>=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
|
||||
dev-python/mako[${PYTHON_USEDEP}]
|
||||
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/moto-2.0.0[${PYTHON_USEDEP}]
|
||||
dev-python/passlib[${PYTHON_USEDEP}]
|
||||
dev-python/bcrypt[${PYTHON_USEDEP}]
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyopenssl-23.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-7.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-salt-factories-1.0.0_rc25[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-tempdir[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-subtests[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-shell-utilities[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-skip-markers[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-system-statistics[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-custom-exit-code[${PYTHON_USEDEP}]
|
||||
dev-python/flaky[${PYTHON_USEDEP}]
|
||||
net-dns/bind-tools
|
||||
>=dev-python/virtualenv-20.3.0[${PYTHON_USEDEP}]
|
||||
dev-util/yamllint[${PYTHON_USEDEP}]
|
||||
!x86? ( >=dev-python/boto3-1.21.46[${PYTHON_USEDEP}] )
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( README.rst AUTHORS )
|
||||
|
||||
REQUIRED_USE="|| ( raet zeromq )
|
||||
test? ( cheetah genshi )"
|
||||
RESTRICT="!test? ( test ) x86? ( test )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/salt-3003-gentoolkit-revdep.patch"
|
||||
"${FILESDIR}/salt-3005.1-no-entry-points.patch"
|
||||
"${FILESDIR}/salt-3006-skip-tests-that-oom-machine.patch"
|
||||
)
|
||||
|
||||
python_prepare_all() {
|
||||
# remove tests with external dependencies that may not be available, and
|
||||
# tests that don't work in sandbox
|
||||
rm tests/unit/{test_{zypp_plugins,module_names},utils/test_extend}.py || die
|
||||
rm tests/unit/modules/test_boto_{vpc,secgroup,elb}.py || die
|
||||
rm tests/unit/states/test_boto_vpc.py || die
|
||||
|
||||
#rm tests/support/gitfs.py || die
|
||||
rm tests/pytests/functional/transport/server/test_req_channel.py || die
|
||||
rm tests/pytests/functional/utils/test_async_event_publisher.py || die
|
||||
rm tests/pytests/functional/runners/test_winrepo.py || die
|
||||
rm tests/unit/netapi/rest_tornado/test_saltnado.py || die
|
||||
|
||||
# tests that require network access
|
||||
rm tests/unit/{states,modules}/test_zcbuildout.py || die
|
||||
rm -r tests/integration/cloud || die
|
||||
rm -r tests/kitchen/tests/wordpress/tests || die
|
||||
rm tests/kitchen/test_kitchen.py || die
|
||||
rm tests/unit/modules/test_network.py || die
|
||||
rm tests/pytests/functional/modules/test_pip.py || die
|
||||
rm tests/pytests/unit/client/ssh/test_ssh.py || die
|
||||
rm -r tests/pytests/{integration,functional}/netapi tests/integration/netapi || die
|
||||
|
||||
# tests require root access
|
||||
rm tests/integration/pillar/test_git_pillar.py || die
|
||||
rm tests/integration/states/test_supervisord.py || die
|
||||
|
||||
# removes contextvars, see bug: https://bugs.gentoo.org/799431
|
||||
sed -i '/^contextvars/d' requirements/base.txt || die
|
||||
|
||||
# make sure pkg_resources doesn't bomb because pycrypto isn't installed
|
||||
find "${S}" -name '*.txt' -print0 | xargs -0 sed -e '/pycrypto>/ d ; /pycryptodomex/ d' -i || die
|
||||
# pycryptodome rather than pycryptodomex
|
||||
find "${S}" -name '*.py' -print0 | xargs -0 -- sed -i -e 's:Cryptodome:Crypto:g' -- || die
|
||||
# called_once should be assert_called_once_with
|
||||
find "${S}/tests" -name '*.py' -print0 | xargs -0 -- sed -i -e 's:[.]called_once:.assert_called_once:g' -- || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
local svc
|
||||
USE_SETUPTOOLS=1 distutils-r1_python_install_all
|
||||
|
||||
for svc in minion master syndic api; do
|
||||
newinitd "${FILESDIR}"/${svc}-initd-5 salt-${svc}
|
||||
newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc}
|
||||
systemd_dounit "${FILESDIR}"/salt-${svc}.service
|
||||
done
|
||||
|
||||
insinto /etc/${PN}
|
||||
doins -r conf/*
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local -a EPYTEST_DESELECT=(
|
||||
# doesn't like the distutils warning
|
||||
tests/pytests/integration/cli/test_batch.py::test_batch_retcode
|
||||
tests/pytests/integration/cli/test_batch.py::test_multiple_modules_in_batch
|
||||
# hangs indefinitely
|
||||
tests/pytests/unit/test_minion.py::test_master_type_disable
|
||||
# needs root
|
||||
tests/pytests/unit/modules/test_cmdmod.py::test_runas_env_sudo_group
|
||||
# don't like sandbox
|
||||
tests/pytests/functional/cli/test_salt.py::test_versions_report
|
||||
tests/unit/utils/test_vt.py::test_split_multibyte_characters_unicode
|
||||
tests/unit/utils/test_vt.py::test_split_multibyte_characters_shiftjis
|
||||
tests/pytests/unit/utils/test_vt.py::test_log_sanitize
|
||||
tests/pytests/unit/client/ssh/test_single.py::test_run_with_pre_flight_args
|
||||
tests/pytests/unit/modules/test_aptpkg.py::test_call_apt_dpkg_lock
|
||||
tests/pytests/unit/test_master.py::test_fileserver_duration
|
||||
tests/pytests/unit/test_template.py::test_compile_template_str_mkstemp_cleanup
|
||||
tests/pytests/unit/_logging/handlers/test_deferred_stream_handler.py::test_deferred_write_on_flush
|
||||
tests/pytests/unit/_logging/handlers/test_deferred_stream_handler.py::test_sync_with_handlers
|
||||
tests/pytests/unit/modules/test_portage_config.py::test_enforce_nice_config
|
||||
tests/pytests/unit/modules/test_msteams.py::test_post_card
|
||||
tests/pytests/unit/states/test_file.py::test_file_recurse_directory_test
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_anyof_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_dict_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_hostname_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_not_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_oneof_config_validation
|
||||
tests/unit/utils/test_schema.py::ConfigTestCase::test_optional_requirements_config_validation
|
||||
)
|
||||
|
||||
# testsuite likes lots of files
|
||||
ulimit -n 4096 || die
|
||||
|
||||
# ${T} is too long a path for the tests to work
|
||||
local TMPDIR
|
||||
TMPDIR="$(mktemp --directory --tmpdir=/tmp ${PN}-XXXX)" || die
|
||||
(
|
||||
export TMPDIR
|
||||
cleanup() { rm -rf "${TMPDIR}" || die; }
|
||||
|
||||
trap cleanup EXIT
|
||||
|
||||
addwrite "${TMPDIR}"
|
||||
|
||||
USE_SETUPTOOLS=1 NO_INTERNET=1 SHELL="/bin/bash" \
|
||||
epytest
|
||||
)
|
||||
}
|
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
DIST dolphin-plugins-23.04.3.tar.xz 272912 BLAKE2B f0eb8bbab16d66f1e964131b436af7d3ae8febc26cf4fe394489a978c701ef2f5689bea7daf9eed8d7ef2f1f2bdba000a487cf7f0704ad30bd25e2d403ce5fae SHA512 8f487ba0bcbe561915064247ddb2327c3b7c8fa6ffc5c511d9c9ef37bd4f28a624533ce7a2da2a86b10b65f37915ca10840517872b40c2fd014cead6da5972c8
|
||||
DIST dolphin-plugins-23.08.2.tar.xz 273356 BLAKE2B 29820281a7bb703dcbd11d215e0a6d35aedc964778d443d826dd4636f87acbd4fd884745dd614981eeb9c3dd50ee2705f71883b261d600eb0a843045078d83f4 SHA512 a7f0a2109cd1793157ff5038cbda1ff219adcefa5e652a6ba0b3eeee674a460e918eaa71f4652460803ed18ef5834a1734b23939f155dd6b3e4247396dfe9b30
|
||||
DIST dolphin-plugins-23.08.3.tar.xz 273396 BLAKE2B 3a07eb2daf0a24ff5aabbc268fcf2724b116827ac17b04edb643e78abad89c5a30d1729234b718108bc4c6faa7c44ef36206b19a8573d439a0632c1ef180b666 SHA512 6ff3ddd08782b076927251afaf2e581a730c56db6b80647e6005267fd9f99ffa2bbce4a59dfe422dc6ad21fd1603245cfeb97db2fde582c83df552104f6a536d
|
||||
EBUILD dolphin-plugins-mountiso-23.04.3.ebuild 1447 BLAKE2B c3d0a42d654c29da3c834026dd9786ef3c255a95309cc361fa683ef6c36aaaa1e1a6b341a94b4dde97ff94377e5c869c8d4e755ec241fac88b6f0a3e5f0db914 SHA512 4c33ddda25f6fdcf42463a3207de20c4829f7f03d012960b5e4af8164f4c461002c3b662ddd56b94275600652d50c69cf0e19f5a8c71a238509699089610d1f3
|
||||
EBUILD dolphin-plugins-mountiso-23.08.2.ebuild 1450 BLAKE2B 09b1a64d1c531cc1bb7ac61f35f2b466cac9413f37bd8d7fa8597852de33ac8d01217d26ad40fb50b731c10c974b7f80ab2df8f0521ceefcc132c99f431d89ae SHA512 cc7d1ddeb9ca4a2fc94921cbe6c0a5ebf232cc4df407dcbbb341a895c0e9786dcdc9a56bcce897f1c20d38f8dd4a9d4d92ba6fd7300400785d94f9b1117f6ee6
|
||||
EBUILD dolphin-plugins-mountiso-23.08.3.ebuild 1450 BLAKE2B 09b1a64d1c531cc1bb7ac61f35f2b466cac9413f37bd8d7fa8597852de33ac8d01217d26ad40fb50b731c10c974b7f80ab2df8f0521ceefcc132c99f431d89ae SHA512 cc7d1ddeb9ca4a2fc94921cbe6c0a5ebf232cc4df407dcbbb341a895c0e9786dcdc9a56bcce897f1c20d38f8dd4a9d4d92ba6fd7300400785d94f9b1117f6ee6
|
||||
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
|
||||
|
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
DIST keysmith-23.04.3.tar.xz 161996 BLAKE2B a160501a3fd29f83814611b0d738d6df487af0f98ffb7f9bb2c39b5ae67a3cc7af605f9d6c894d0e8ce351bd4d740b7247e1cf7541f4a1c1079110f384ce2de0 SHA512 a7ad96c91f5b50954aa185bdec81af8feafc1190105d28a3166b84442e5d58bd8a6dddcabd9d1f907b585f4082fe2dd16991b0c922bde087e1edfcc0b28027a1
|
||||
DIST keysmith-23.08.2.tar.xz 163416 BLAKE2B 6f840fae87332d66d40fd295b159edfbe6709289fd3ae04a12ee87ca7881adef0a77888f823bdcb7253d08aee789936d435f9cf3a6917d639af9e5cd96bd43cd SHA512 4f5c4d7bd2a092b14ff69b40583ea8dc70383db8689991d2c5175c20e3a96e29fd4b45b5ebe13e86d7b42991337dbb84b08a82ce26d31f63feca86824314205e
|
||||
DIST keysmith-23.08.3.tar.xz 163456 BLAKE2B cebf12dfe695814355bf154083b2c751864983bf2f8862264f7926eb5d89f408fd9973fcfbc4182bdc1bf56b6ed22e111ae286a53e7f3c36d790c05648276a7e SHA512 321df891912e4b49d4701cf7261e6bd7b936b5bfaaf85935c12a8230d007e749153b91c2161db03bfb86beb52b6ce9c503c5e5d3b208ddf11977db4d31d9e78f
|
||||
EBUILD keysmith-23.04.3.ebuild 789 BLAKE2B 4d063e3f7524905bc2068ec76a5da157f66882f0046f22d908fa0d8a4246cb1f7d284bda3eefe572493a47e5514c2e4a2188b70b1b66ce931a4877c8d440d35c SHA512 2be09eff08335ebc6978339b31a3665ea25864cb2e304b0f00522cfe8c14ee11121502061f2216bfc58be84515392b2615ef073a4dbd84db61d9ea73986c7e6e
|
||||
EBUILD keysmith-23.08.2.ebuild 792 BLAKE2B 667770821d3a9457e030de94c472e0c94aef99dfe381d2a48bc5c0f5bfed93a7b9b0c630443b2511e21d68f341ed9ff021a69f17332ca94c736f80f3795dc142 SHA512 8410b6fcf04eccdae8c609815cc4f40946f3bc853f8f7efda660b258739bb8d26d7f67d00cafb35bbfdb1659190520b41bd5e3eabd8534ed797285fad3146a50
|
||||
EBUILD keysmith-23.08.3.ebuild 792 BLAKE2B 667770821d3a9457e030de94c472e0c94aef99dfe381d2a48bc5c0f5bfed93a7b9b0c630443b2511e21d68f341ed9ff021a69f17332ca94c736f80f3795dc142 SHA512 8410b6fcf04eccdae8c609815cc4f40946f3bc853f8f7efda660b258739bb8d26d7f67d00cafb35bbfdb1659190520b41bd5e3eabd8534ed797285fad3146a50
|
||||
MISC metadata.xml 380 BLAKE2B 110b310586031ac53056b1502648607210ee0256858efee1d54e756e130b4e331202f8571c96f5064ccee7d63bce9c4af2b92c40389d2c7b06a4fad70be8656d SHA512 10365587bc7347003e99f0684c92fa7c7154576643eaee09e79b1bddf5aed12b6062dc426b07343c6cfbcd423ab3e77e245b3659919f75e4a4183fb56fa2fa0e
|
||||
|
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
DIST ghostwriter-23.04.3.tar.xz 3074336 BLAKE2B 89314147c3222d0e83d26cedb81e6bf917e4f4e3d95650ba1d3096f06491343046dd5684d13014002a5249ec26af43cb050457c6f5d7c241b352a605b529b5af SHA512 d14e8c9928ec0638b98ca152d35ae88a7a4a582d4268e8f251252f080e4490b5c9433a814e6306acf7856c6a253f6e7aa9ed326328f90e0da8ef1214ef5a432c
|
||||
DIST ghostwriter-23.08.2.tar.xz 3624320 BLAKE2B cd2a99e08ceedcfeb810d28fe6e60fd3675df4d9667c03e0f83cb84a501a43a053b7284fb8ceca574486be4c3da7c1abdf47c69d45dc4dbf3c34610acd22d7fb SHA512 02eb94d2ca0d7878c6171d8eb80e0cd813baf27fe0e588acda72092c00f31b798a0be3639f4d8986a142eef6f88269041750eac9b7a655389d477ab24d32da4e
|
||||
DIST ghostwriter-23.08.3.tar.xz 3626304 BLAKE2B 558b63152817d90443fcc78c9a5ac609643cd7a5b9c595ddbcccdb05bcb38af4c300974b852a9bf7b002aaf67ee84df0dddc357bc3b4cf558b0dc5a55876ae66 SHA512 b8281bc286132997ae6aeba95a6382546d556d6b5c6385d08c4660b385264cc60040efd3a71865166aee55ab5c979b2b80e72423b523400141dd74c4ba256ae3
|
||||
EBUILD ghostwriter-23.04.3.ebuild 924 BLAKE2B 6c125f0f004c00e4ea2aeb545ceb134ae21eca5f0f8db7ad6d37021b8d32aa17797dd172303a6b1e26c5f0da726535117af0147978a06eac93986479baee01fd SHA512 4ea0c09549325b8f6943f66a58f32729d7f7efff673b9c227bd69854d8943c3073f50b830fdcf6657d67c42922d60dca82348d013e8086e6b0fe8e97e21bdaa1
|
||||
EBUILD ghostwriter-23.08.2.ebuild 926 BLAKE2B fe8058de53663fb04f643d19ba31b661efd66cd922955e7cb7901c98d9bfd1ba9f9389d4dca05a17d87552a4a922b2bb0b94030c933f9d3630fd4d764240ca2e SHA512 13d71f72a20140bf5dbaf3e8368409bd26fbca200f495831f2d671b55eeef8c9d9f8d8c7c54d80b7770f989feb9f5cf69dda736d34a8dbac6bc2915f0779f635
|
||||
EBUILD ghostwriter-23.08.3.ebuild 926 BLAKE2B fe8058de53663fb04f643d19ba31b661efd66cd922955e7cb7901c98d9bfd1ba9f9389d4dca05a17d87552a4a922b2bb0b94030c933f9d3630fd4d764240ca2e SHA512 13d71f72a20140bf5dbaf3e8368409bd26fbca200f495831f2d671b55eeef8c9d9f8d8c7c54d80b7770f989feb9f5cf69dda736d34a8dbac6bc2915f0779f635
|
||||
MISC metadata.xml 637 BLAKE2B 77c8336715f20d50879b7e21ecffaf27e926aea0c564dedaaa1460b09190343a72bbf78c9ce0691ca161cad180be76a27aab235533c6054abf205ad40119e4b9 SHA512 db5a7928a155b77ac41a3fa771fd6512f64320c4d435a6dba1b1ebb3200e172b5fa586f63f052beb79514ed4eb5b80527dde8aef2274fbfccd3b3055b3569581
|
||||
|
@ -0,0 +1,117 @@
|
||||
# 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}"
|
||||
|
||||
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"
|
||||
IUSE="kerberos"
|
||||
RESTRICT="mirror strip bindist"
|
||||
|
||||
RDEPEND="
|
||||
>=app-accessibility/at-spi2-core-2.46.0:2
|
||||
app-crypt/libsecret[crypt]
|
||||
app-misc/ca-certificates
|
||||
dev-libs/expat
|
||||
dev-libs/glib:2
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
media-libs/alsa-lib
|
||||
media-libs/libcanberra[gtk3]
|
||||
media-libs/libglvnd
|
||||
media-libs/mesa
|
||||
net-misc/curl
|
||||
sys-apps/dbus
|
||||
sys-libs/zlib
|
||||
sys-process/lsof
|
||||
x11-libs/cairo
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libdrm
|
||||
x11-libs/libnotify
|
||||
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/libXScrnSaver
|
||||
x11-libs/pango
|
||||
x11-misc/xdg-utils
|
||||
kerberos? ( app-crypt/mit-krb5 )
|
||||
"
|
||||
|
||||
QA_PREBUILT="*"
|
||||
|
||||
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/ThirdPartyNotices.txt || die
|
||||
|
||||
# Disable update server
|
||||
sed -e "/updateUrl/d" -i ./resources/app/product.json || die
|
||||
|
||||
if ! use kerberos; then
|
||||
rm -r ./resources/app/node_modules.asar.unpacked/kerberos || die
|
||||
fi
|
||||
|
||||
# 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"
|
||||
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" "virtual/secret-service"
|
||||
}
|
@ -0,0 +1,114 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit desktop pax-utils xdg optfeature
|
||||
|
||||
# Usage: arch_src_uri <gentoo arch> <upstream arch>
|
||||
arch_src_uri() {
|
||||
echo "${1}? (
|
||||
https://github.com/VSCodium/${PN}/releases/download/${PV}/VSCodium-linux-${2}-${PV}.tar.gz
|
||||
-> ${P}-${1}.tar.gz
|
||||
)"
|
||||
}
|
||||
|
||||
DESCRIPTION="A community-driven, freely-licensed binary distribution of Microsoft's VSCode"
|
||||
HOMEPAGE="https://vscodium.com/"
|
||||
SRC_URI="
|
||||
$(arch_src_uri amd64 x64)
|
||||
$(arch_src_uri arm armhf)
|
||||
$(arch_src_uri arm64 arm64)
|
||||
"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="
|
||||
Apache-2.0
|
||||
BSD
|
||||
BSD-1
|
||||
BSD-2
|
||||
BSD-4
|
||||
CC-BY-4.0
|
||||
ISC
|
||||
LGPL-2.1+
|
||||
MIT
|
||||
MPL-2.0
|
||||
openssl
|
||||
PYTHON
|
||||
TextMate-bundle
|
||||
Unlicense
|
||||
UoI-NCSA
|
||||
W3C
|
||||
"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* amd64 ~arm ~arm64"
|
||||
IUSE="kerberos"
|
||||
RESTRICT="strip bindist"
|
||||
|
||||
RDEPEND="
|
||||
>=app-accessibility/at-spi2-core-2.46.0:2
|
||||
app-crypt/libsecret[crypt]
|
||||
app-misc/ca-certificates
|
||||
dev-libs/expat
|
||||
dev-libs/glib:2
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
media-libs/alsa-lib
|
||||
media-libs/libcanberra[gtk3]
|
||||
media-libs/libglvnd
|
||||
media-libs/mesa
|
||||
net-misc/curl
|
||||
net-print/cups
|
||||
sys-apps/dbus
|
||||
sys-libs/zlib
|
||||
sys-process/lsof
|
||||
x11-libs/cairo
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libdrm
|
||||
x11-libs/libnotify
|
||||
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/libXScrnSaver
|
||||
x11-libs/pango
|
||||
x11-misc/xdg-utils
|
||||
kerberos? ( app-crypt/mit-krb5 )
|
||||
"
|
||||
|
||||
QA_PREBUILT="*"
|
||||
|
||||
src_install() {
|
||||
# Cleanup
|
||||
rm "${S}/resources/app/LICENSE.txt" || die
|
||||
|
||||
if ! use kerberos; then
|
||||
rm -r "${S}/resources/app/node_modules.asar.unpacked/kerberos" || die
|
||||
fi
|
||||
|
||||
# Install
|
||||
pax-mark m codium
|
||||
mkdir -p "${ED}/opt/${PN}" || die
|
||||
cp -r . "${ED}/opt/${PN}" || die
|
||||
fperms 4711 /opt/${PN}/chrome-sandbox
|
||||
|
||||
dosym -r "/opt/${PN}/bin/codium" "usr/bin/vscodium"
|
||||
dosym -r "/opt/${PN}/bin/codium" "usr/bin/codium"
|
||||
domenu "${FILESDIR}/vscodium.desktop"
|
||||
domenu "${FILESDIR}/vscodium-url-handler.desktop"
|
||||
domenu "${FILESDIR}/vscodium-wayland.desktop"
|
||||
domenu "${FILESDIR}/vscodium-url-handler-wayland.desktop"
|
||||
newicon "resources/app/resources/linux/code.png" "vscodium.png"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
elog "When compared to the regular VSCode, VSCodium has a few quirks"
|
||||
elog "More information at: https://github.com/VSCodium/vscodium/blob/master/DOCS.md"
|
||||
optfeature "keyring support inside vscode" "virtual/secret-service"
|
||||
}
|
Binary file not shown.
@ -1,5 +0,0 @@
|
||||
DIST kalendar-23.04.3.tar.xz 824472 BLAKE2B 0b60122066b0b1d63d631a397a6e417592dcce236fcf86dddc0a73b704a79fc4728225fb694559a15e46c0177b92ec5dc925c0564ca48c08652521194fd87cca SHA512 15bf7ce051ed56b4178e72a35d0aace00bd8650fac387bd4b63cc541aa92fd433eee2c5711663af4cd29606ddc69c838dbe58780a0e2e35f1fc4ef8be64dbb75
|
||||
DIST merkuro-23.08.2.tar.xz 977316 BLAKE2B fa406073707aaca8e42c29c898667c5c4ca75aa6d9dcd6a08ab6e5ff86000fbfde70295222c5845876a10ef4a8fdce3853ed600a9a74ae2f042a7f18bff78d56 SHA512 de4b3794b2cad8da92bd009a7661e1007fed2b462fede5bc365bc94652f37ac1efd67efb57ceaea397e9a5e9632098bdf908c34cf053b8ec8d66cde79763844d
|
||||
EBUILD kalendar-23.04.3.ebuild 1768 BLAKE2B 334cf9395b2228f511988f2cdc4178251a28a498a1d6bd15a8e35fb90ab159845b7b61122894e6abd6451bdf1006560391aaf8900c91353271b1af9e3ed74115 SHA512 13d3cbcfb392b1ba10b37cac99312fb5b6820634879459dc657f7f4111bcc0b75ddc2f2b7f6f0cf42550cf425bf85b3a289001b48569fe1a8ed13e17609fa59f
|
||||
EBUILD kalendar-23.08.2.ebuild 1723 BLAKE2B 1d878a3bfa6bbb24b86cbdac174fd615d560302f7d3df605eeca7a4587cddbea42daac05421aacfe6136ca3f4514cb8f9c95f84aee6a1dcd4eff08283c47c9a9 SHA512 0c52b8092f65a0850252a9e7d238cdc82889f4ca943bed554e429264177853dad8ffc99c0e8251fb9bdfadac52c545ff6fc84639c7501e7d6488eb37b3de7734
|
||||
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
|
@ -0,0 +1,5 @@
|
||||
DIST kalendar-23.04.3.tar.xz 824472 BLAKE2B 0b60122066b0b1d63d631a397a6e417592dcce236fcf86dddc0a73b704a79fc4728225fb694559a15e46c0177b92ec5dc925c0564ca48c08652521194fd87cca SHA512 15bf7ce051ed56b4178e72a35d0aace00bd8650fac387bd4b63cc541aa92fd433eee2c5711663af4cd29606ddc69c838dbe58780a0e2e35f1fc4ef8be64dbb75
|
||||
DIST merkuro-23.08.3.tar.xz 979728 BLAKE2B fba3c2ecb8fdd7da86dd08fa550144acc5727f294d6595e1df9d0b7c509ecf51df7aab0f2eceadabc6fcfb6ac91aed1f2b769d04ff026591d849e77f92f537b6 SHA512 6ee5501a6eea8a1121c014e408775f0e4f1bc997259250476547ec8fb75a1a7e369ed76d53d30f5027b48d6f9015283978741fe5b93934326fe0232778be1aaa
|
||||
EBUILD merkuro-23.04.3.ebuild 1792 BLAKE2B 4038a2b99b4c1eaa5a9644ec4d0a8df6a8ad1ef91db984844c8c6d0c169b44a072049683ddcbad9558065cf104947ece245864d8f5e0031293194d679db5a190 SHA512 7abcf12f7bd9a290c9f7eaf96c182841b0a501695e894c00cc9dbdb7f17ac1990ab3aa5fd49793d7d44026c0fd56577f2c68b63cff0a711642c79ded3a7e042e
|
||||
EBUILD merkuro-23.08.3.ebuild 1700 BLAKE2B 06ddef47b4d65bd4a882597f332b62e63a11a1c0e2234f64aac7a466624b7cc03254be8a14fb49176da06cd16cfbfdf1904cba637d7c9c6afe0c270bb667228c SHA512 a48c58111e55d267b04115222de4443218f430e08e2d9aa9dd894d653836535a181d48cd02de9d0edc6a67570e63f3f4dc2e6898a67d2b503cf30a063df0c2de
|
||||
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
|
Binary file not shown.
@ -0,0 +1,451 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
LLVM_MAX_SLOT=15
|
||||
|
||||
inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
SLOT=$(ver_cut 1)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="debug doc icu kerberos ldap llvm nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl uuid xml zlib"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
acct-group/postgres
|
||||
acct-user/postgres
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
icu? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
llvm? (
|
||||
<sys-devel/llvm-16:=
|
||||
<sys-devel/clang-16:=
|
||||
)
|
||||
pam? ( sys-libs/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use llvm && llvm_pkg_setup
|
||||
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-11_beta1-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !alpha spinlocks) \
|
||||
$(use_enable debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY doc/{TODO,bug.template}
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
# Don't delete libpg{port,common}.a (Bug #571046). They're always
|
||||
# needed by extensions utilizing PGXS.
|
||||
use static-libs || \
|
||||
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
|
||||
-delete
|
||||
|
||||
# Make slot specific links to programs
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
|
||||
if [[ -n ${REPLACING_VERSIONS} ]] ; then
|
||||
ewarn "If your system is using 'pg_stat_statements' and you are running a"
|
||||
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
|
||||
ewarn "the following command after upgrading:"
|
||||
ewarn
|
||||
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
|
||||
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] \
|
||||
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
|
||||
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
|
||||
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${UID} -ne 0 ]] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,451 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
LLVM_MAX_SLOT=15
|
||||
|
||||
inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
SLOT=$(ver_cut 1)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="debug doc icu kerberos ldap llvm nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl uuid xml zlib"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
acct-group/postgres
|
||||
acct-user/postgres
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
icu? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
llvm? (
|
||||
<sys-devel/llvm-16:=
|
||||
<sys-devel/clang-16:=
|
||||
)
|
||||
pam? ( sys-libs/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use llvm && llvm_pkg_setup
|
||||
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-12.1-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable !alpha spinlocks) \
|
||||
$(use_enable debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
# Don't delete libpg{port,common}.a (Bug #571046). They're always
|
||||
# needed by extensions utilizing PGXS.
|
||||
use static-libs || \
|
||||
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
|
||||
-delete
|
||||
|
||||
# Make slot specific links to programs
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
|
||||
if [[ -n ${REPLACING_VERSIONS} ]] ; then
|
||||
ewarn "If your system is using 'pg_stat_statements' and you are running a"
|
||||
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
|
||||
ewarn "the following command after upgrading:"
|
||||
ewarn
|
||||
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
|
||||
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] \
|
||||
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
|
||||
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
|
||||
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${UID} -ne 0 ]] ; then
|
||||
emake check
|
||||
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,463 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
LLVM_MAX_SLOT=15
|
||||
|
||||
inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
SLOT=$(ver_cut 1)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="debug doc icu kerberos ldap llvm nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl uuid xml zlib"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
acct-group/postgres
|
||||
acct-user/postgres
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
icu? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
llvm? (
|
||||
<sys-devel/llvm-16:=
|
||||
<sys-devel/clang-16:=
|
||||
)
|
||||
pam? ( sys-libs/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use llvm && llvm_pkg_setup
|
||||
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
eapply "${FILESDIR}"/${PN}-13.3-riscv-spinlocks.patch
|
||||
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-13.8-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
local myconf="\
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_enable nls)"
|
||||
if use alpha; then
|
||||
myconf+=" --disable-spinlocks"
|
||||
else
|
||||
# Should be the default but just in case
|
||||
myconf+=" --enable-spinlocks"
|
||||
fi
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
# Don't delete libpg{port,common}.a (Bug #571046). They're always
|
||||
# needed by extensions utilizing PGXS.
|
||||
use static-libs || \
|
||||
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
|
||||
-delete
|
||||
|
||||
# Make slot specific links to programs
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
|
||||
if [[ -n ${REPLACING_VERSIONS} ]] ; then
|
||||
ewarn "If your system is using 'pg_stat_statements' and you are running a"
|
||||
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
|
||||
ewarn "the following command after upgrading:"
|
||||
ewarn
|
||||
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
|
||||
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] \
|
||||
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
|
||||
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
|
||||
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${UID} -ne 0 ]] ; then
|
||||
# Some ICU tests fail if LC_CTYPE and LC_COLLATE aren't the same. We set
|
||||
# LC_CTYPE to be equal to LC_COLLATE since LC_COLLATE is set by Portage.
|
||||
local old_ctype=${LC_CTYPE}
|
||||
export LC_CTYPE=${LC_COLLATE}
|
||||
emake check
|
||||
export LC_CTYPE=${old_ctype}
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,463 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
LLVM_MAX_SLOT=15
|
||||
|
||||
inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
SLOT=$(ver_cut 1)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="debug doc icu kerberos ldap llvm lz4 nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl uuid xml zlib"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
acct-group/postgres
|
||||
acct-user/postgres
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
icu? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
llvm? (
|
||||
<sys-devel/llvm-16:=
|
||||
<sys-devel/clang-16:=
|
||||
)
|
||||
lz4? ( app-arch/lz4 )
|
||||
pam? ( sys-libs/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use llvm && llvm_pkg_setup
|
||||
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-14.5-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
local myconf="\
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with lz4) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_enable nls)"
|
||||
if use alpha; then
|
||||
myconf+=" --disable-spinlocks"
|
||||
else
|
||||
# Should be the default but just in case
|
||||
myconf+=" --enable-spinlocks"
|
||||
fi
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
# Don't delete libpg{port,common}.a (Bug #571046). They're always
|
||||
# needed by extensions utilizing PGXS.
|
||||
use static-libs || \
|
||||
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
|
||||
-delete
|
||||
|
||||
# Make slot specific links to programs
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
|
||||
if [[ -n ${REPLACING_VERSIONS} ]] ; then
|
||||
ewarn "If your system is using 'pg_stat_statements' and you are running a"
|
||||
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
|
||||
ewarn "the following command after upgrading:"
|
||||
ewarn
|
||||
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
|
||||
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] \
|
||||
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
|
||||
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
|
||||
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${UID} -ne 0 ]] ; then
|
||||
# Some ICU tests fail if LC_CTYPE and LC_COLLATE aren't the same. We set
|
||||
# LC_CTYPE to be equal to LC_COLLATE since LC_COLLATE is set by Portage.
|
||||
local old_ctype=${LC_CTYPE}
|
||||
export LC_CTYPE=${LC_COLLATE}
|
||||
emake check
|
||||
export LC_CTYPE=${old_ctype}
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,465 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
LLVM_MAX_SLOT=15
|
||||
|
||||
inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
SLOT=$(ver_cut 1)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="debug doc icu kerberos ldap llvm lz4 nls pam perl python +readline
|
||||
selinux +server systemd ssl static-libs tcl uuid xml zlib zstd"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
acct-group/postgres
|
||||
acct-user/postgres
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
icu? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
llvm? (
|
||||
<sys-devel/llvm-16:=
|
||||
<sys-devel/clang-16:=
|
||||
)
|
||||
lz4? ( app-arch/lz4 )
|
||||
pam? ( sys-libs/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
zstd? ( app-arch/zstd )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use llvm && llvm_pkg_setup
|
||||
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-15_beta3-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
local myconf="\
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with lz4) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_with zstd) \
|
||||
$(use_enable nls)"
|
||||
if use alpha; then
|
||||
myconf+=" --disable-spinlocks"
|
||||
else
|
||||
# Should be the default but just in case
|
||||
myconf+=" --enable-spinlocks"
|
||||
fi
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
# Don't delete libpg{port,common}.a (Bug #571046). They're always
|
||||
# needed by extensions utilizing PGXS.
|
||||
use static-libs || \
|
||||
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
|
||||
-delete
|
||||
|
||||
# Make slot specific links to programs
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
|
||||
if [[ -n ${REPLACING_VERSIONS} ]] ; then
|
||||
ewarn "If your system is using 'pg_stat_statements' and you are running a"
|
||||
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
|
||||
ewarn "the following command after upgrading:"
|
||||
ewarn
|
||||
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
|
||||
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] \
|
||||
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
|
||||
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
|
||||
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${UID} -ne 0 ]] ; then
|
||||
# Some ICU tests fail if LC_CTYPE and LC_COLLATE aren't the same. We set
|
||||
# LC_CTYPE to be equal to LC_COLLATE since LC_COLLATE is set by Portage.
|
||||
local old_ctype=${LC_CTYPE}
|
||||
export LC_CTYPE=${LC_COLLATE}
|
||||
emake check
|
||||
export LC_CTYPE=${old_ctype}
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
@ -0,0 +1,466 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
LLVM_MAX_SLOT=15
|
||||
|
||||
inherit flag-o-matic linux-info llvm pam python-single-r1 systemd tmpfiles
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
SLOT=$(ver_cut 1)
|
||||
|
||||
MY_PV=${PV/_/}
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
SRC_URI="https://ftp.postgresql.org/pub/source/v${MY_PV}/postgresql-${MY_PV}.tar.bz2"
|
||||
|
||||
LICENSE="POSTGRESQL GPL-2"
|
||||
DESCRIPTION="PostgreSQL RDBMS"
|
||||
HOMEPAGE="https://www.postgresql.org/"
|
||||
|
||||
IUSE="debug doc +icu kerberos ldap llvm lz4 nls pam perl python
|
||||
+readline selinux +server systemd ssl static-libs tcl uuid xml
|
||||
zlib zstd"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
CDEPEND="
|
||||
>=app-eselect/eselect-postgresql-2.0
|
||||
acct-group/postgres
|
||||
acct-user/postgres
|
||||
sys-apps/less
|
||||
virtual/libintl
|
||||
icu? ( dev-libs/icu:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
llvm? (
|
||||
<sys-devel/llvm-16:=
|
||||
<sys-devel/clang-16:=
|
||||
)
|
||||
lz4? ( app-arch/lz4 )
|
||||
pam? ( sys-libs/pam )
|
||||
perl? ( >=dev-lang/perl-5.8:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
readline? ( sys-libs/readline:0= )
|
||||
server? ( systemd? ( sys-apps/systemd ) )
|
||||
ssl? ( >=dev-libs/openssl-0.9.6-r1:0= )
|
||||
tcl? ( >=dev-lang/tcl-8:0= )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
zlib? ( sys-libs/zlib )
|
||||
zstd? ( app-arch/zstd )
|
||||
"
|
||||
|
||||
# uuid flags -- depend on sys-apps/util-linux for Linux libcs, or if no
|
||||
# supported libc in use depend on dev-libs/ossp-uuid. For BSD systems,
|
||||
# the libc includes UUID functions.
|
||||
UTIL_LINUX_LIBC=( elibc_{glibc,musl} )
|
||||
|
||||
nest_usedep() {
|
||||
local front back
|
||||
while [[ ${#} -gt 1 ]]; do
|
||||
front+="${1}? ( "
|
||||
back+=" )"
|
||||
shift
|
||||
done
|
||||
echo "${front}${1}${back}"
|
||||
}
|
||||
|
||||
CDEPEND+="
|
||||
uuid? (
|
||||
${UTIL_LINUX_LIBC[@]/%/? ( sys-apps/util-linux )}
|
||||
$(nest_usedep ${UTIL_LINUX_LIBC[@]/#/!} dev-libs/ossp-uuid)
|
||||
)"
|
||||
|
||||
DEPEND="${CDEPEND}
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
nls? ( sys-devel/gettext )
|
||||
xml? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
RDEPEND="${CDEPEND}
|
||||
selinux? ( sec-policy/selinux-postgresql )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use llvm && llvm_pkg_setup
|
||||
|
||||
use server && CONFIG_CHECK="~SYSVIPC" linux-info_pkg_setup
|
||||
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Set proper run directory
|
||||
sed "s|\(PGSOCKET_DIR\s\+\)\"/tmp\"|\1\"${EPREFIX}/run/postgresql\"|" \
|
||||
-i src/include/pg_config_manual.h || die
|
||||
|
||||
# Rely on $PATH being in the proper order so that the correct
|
||||
# install program is used for modules utilizing PGXS in both
|
||||
# hardened and non-hardened environments. (Bug #528786)
|
||||
sed 's/@install_bin@/install -c/' -i src/Makefile.global.in || die
|
||||
|
||||
use server || eapply "${FILESDIR}/${PN}-15_beta3-no-server.patch"
|
||||
|
||||
if use pam ; then
|
||||
sed "s/\(#define PGSQL_PAM_SERVICE \"postgresql\)/\1-${SLOT}/" \
|
||||
-i src/backend/libpq/auth.c || \
|
||||
die 'PGSQL_PAM_SERVICE rename failed.'
|
||||
fi
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
case ${CHOST} in
|
||||
*-darwin*|*-solaris*)
|
||||
use nls && append-libs intl
|
||||
;;
|
||||
esac
|
||||
|
||||
export LDFLAGS_SL="${LDFLAGS}"
|
||||
export LDFLAGS_EX="${LDFLAGS}"
|
||||
|
||||
local PO="${EPREFIX}"
|
||||
|
||||
local i uuid_config=""
|
||||
if use uuid; then
|
||||
for i in ${UTIL_LINUX_LIBC[@]}; do
|
||||
use ${i} && uuid_config="--with-uuid=e2fs"
|
||||
done
|
||||
[[ -z $uuid_config ]] && uuid_config="--with-uuid=ossp"
|
||||
fi
|
||||
|
||||
local myconf="\
|
||||
--prefix="${PO}/usr/$(get_libdir)/postgresql-${SLOT}" \
|
||||
--datadir="${PO}/usr/share/postgresql-${SLOT}" \
|
||||
--includedir="${PO}/usr/include/postgresql-${SLOT}" \
|
||||
--mandir="${PO}/usr/share/postgresql-${SLOT}/man" \
|
||||
--sysconfdir="${PO}/etc/postgresql-${SLOT}" \
|
||||
--with-system-tzdata="${PO}/usr/share/zoneinfo" \
|
||||
$(use_enable debug) \
|
||||
$(use_with icu) \
|
||||
$(use_with kerberos gssapi) \
|
||||
$(use_with ldap) \
|
||||
$(use_with llvm) \
|
||||
$(use_with lz4) \
|
||||
$(use_with pam) \
|
||||
$(use_with perl) \
|
||||
$(use_with python) \
|
||||
$(use_with readline) \
|
||||
$(use_with ssl openssl) \
|
||||
$(usex server "$(use_with systemd)" '--without-systemd') \
|
||||
$(use_with tcl) \
|
||||
${uuid_config} \
|
||||
$(use_with xml libxml) \
|
||||
$(use_with xml libxslt) \
|
||||
$(use_with zlib) \
|
||||
$(use_with zstd) \
|
||||
$(use_enable nls)"
|
||||
if use alpha; then
|
||||
myconf+=" --disable-spinlocks"
|
||||
else
|
||||
# Should be the default but just in case
|
||||
myconf+=" --enable-spinlocks"
|
||||
fi
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake
|
||||
emake -C contrib
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
emake DESTDIR="${D}" install -C contrib
|
||||
|
||||
dodoc README HISTORY
|
||||
|
||||
# man pages are already built, but if we have the target make them,
|
||||
# they'll be generated from source before being installed so we
|
||||
# manually install man pages.
|
||||
# We use ${SLOT} instead of doman for postgresql.eselect
|
||||
insinto /usr/share/postgresql-${SLOT}/man/
|
||||
doins -r doc/src/sgml/man{1,3,7}
|
||||
if ! use server; then
|
||||
# Remove man pages for non-existent binaries
|
||||
serverman=(
|
||||
initdb
|
||||
pg_{archivecleanup,controldata,ctl,resetwal,rewind,standby}
|
||||
pg_{test_{fsync,timing},upgrade,waldump}
|
||||
post{gres,master}
|
||||
)
|
||||
for m in ${serverman[@]} ; do
|
||||
rm "${ED}/usr/share/postgresql-${SLOT}/man/man1/${m}.1"
|
||||
done
|
||||
fi
|
||||
docompress /usr/share/postgresql-${SLOT}/man/man{1,3,7}
|
||||
|
||||
# Create slot specific man pages
|
||||
local bn f mansec slotted_name
|
||||
for mansec in 1 3 7 ; do
|
||||
local rel_manpath="../../postgresql-${SLOT}/man/man${mansec}"
|
||||
|
||||
mkdir -p "${ED}"/usr/share/man/man${mansec} || die "making man dir"
|
||||
pushd "${ED}"/usr/share/man/man${mansec} > /dev/null || die "pushd failed"
|
||||
|
||||
for f in "${ED}/usr/share/postgresql-${SLOT}/man/man${mansec}"/* ; do
|
||||
bn=$(basename "${f}")
|
||||
slotted_name=${bn%.${mansec}}${SLOT}.${mansec}
|
||||
case ${bn} in
|
||||
TABLE.7|WITH.7)
|
||||
echo ".so ${rel_manpath}/SELECT.7" > ${slotted_name}
|
||||
;;
|
||||
*)
|
||||
echo ".so ${rel_manpath}/${bn}" > ${slotted_name}
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
popd > /dev/null
|
||||
done
|
||||
|
||||
insinto /etc/postgresql-${SLOT}
|
||||
newins src/bin/psql/psqlrc.sample psqlrc
|
||||
|
||||
# Don't delete libpg{port,common}.a (Bug #571046). They're always
|
||||
# needed by extensions utilizing PGXS.
|
||||
use static-libs || \
|
||||
find "${ED}" -name '*.a' ! -name libpgport.a ! -name libpgcommon.a \
|
||||
-delete
|
||||
|
||||
# Make slot specific links to programs
|
||||
local f bn
|
||||
for f in $(find "${ED}/usr/$(get_libdir)/postgresql-${SLOT}/bin" \
|
||||
-mindepth 1 -maxdepth 1)
|
||||
do
|
||||
bn=$(basename "${f}")
|
||||
dosym "../$(get_libdir)/postgresql-${SLOT}/bin/${bn}" \
|
||||
"/usr/bin/${bn}${SLOT/.}"
|
||||
done
|
||||
|
||||
if use doc ; then
|
||||
docinto html
|
||||
dodoc doc/src/sgml/html/*
|
||||
fi
|
||||
|
||||
if use server; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.confd-9.3" | newconfd - ${PN}-${SLOT}
|
||||
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.init-9.3-r1" | newinitd - ${PN}-${SLOT}
|
||||
|
||||
if use systemd; then
|
||||
sed -e "s|@SLOT@|${SLOT}|g" -e "s|@LIBDIR@|$(get_libdir)|g" \
|
||||
"${FILESDIR}/${PN}.service-9.6-r1" | \
|
||||
systemd_newunit - ${PN}-${SLOT}.service
|
||||
newbin "${FILESDIR}"/${PN}-check-db-dir ${PN}-${SLOT}-check-db-dir
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfiles ${PN}-${SLOT}.conf
|
||||
fi
|
||||
|
||||
use pam && pamd_mimic system-auth ${PN}-${SLOT} auth account session
|
||||
|
||||
if use prefix ; then
|
||||
keepdir /run/postgresql
|
||||
fperms 1775 /run/postgresql
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use server && use systemd && tmpfiles_process ${PN}-${SLOT}.conf
|
||||
postgresql-config update
|
||||
|
||||
elog "If you need a global psqlrc-file, you can place it in:"
|
||||
elog " ${EROOT}/etc/postgresql-${SLOT}/"
|
||||
|
||||
if use server ; then
|
||||
elog
|
||||
elog "Gentoo specific documentation:"
|
||||
elog "https://wiki.gentoo.org/wiki/PostgreSQL"
|
||||
elog
|
||||
elog "Official documentation:"
|
||||
elog "https://www.postgresql.org/docs/${SLOT}/static/index.html"
|
||||
elog
|
||||
elog "The default location of the Unix-domain socket is:"
|
||||
elog " ${EROOT}/run/postgresql/"
|
||||
elog
|
||||
elog "Before initializing the database, you may want to edit PG_INITDB_OPTS"
|
||||
elog "so that it contains your preferred locale in:"
|
||||
elog " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
elog
|
||||
elog "Then, execute the following command to setup the initial database"
|
||||
elog "environment:"
|
||||
elog " emerge --config =${CATEGORY}/${PF}"
|
||||
|
||||
if [[ -n ${REPLACING_VERSIONS} ]] ; then
|
||||
ewarn "If your system is using 'pg_stat_statements' and you are running a"
|
||||
ewarn "version of PostgreSQL ${SLOT}, we advise that you execute"
|
||||
ewarn "the following command after upgrading:"
|
||||
ewarn
|
||||
ewarn "ALTER EXTENSION pg_stat_statements UPDATE;"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
if use server && [[ -z ${REPLACED_BY_VERSION} ]] ; then
|
||||
ewarn "Have you dumped and/or migrated the ${SLOT} database cluster?"
|
||||
ewarn "\thttps://wiki.gentoo.org/wiki/PostgreSQL/QuickStart#Migrating_PostgreSQL"
|
||||
|
||||
ebegin "Resuming removal in 10 seconds (Control-C to cancel)"
|
||||
sleep 10
|
||||
eend 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
postgresql-config update
|
||||
}
|
||||
|
||||
pkg_config() {
|
||||
use server || die "USE flag 'server' not enabled. Nothing to configure."
|
||||
|
||||
[[ -f "${EROOT}/etc/conf.d/postgresql-${SLOT}" ]] \
|
||||
&& source "${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
[[ -z "${PGDATA}" ]] && PGDATA="${EROOT}/etc/postgresql-${SLOT}/"
|
||||
[[ -z "${DATA_DIR}" ]] \
|
||||
&& DATA_DIR="${EROOT}/var/lib/postgresql/${SLOT}/data"
|
||||
|
||||
# environment.bz2 may not contain the same locale as the current system
|
||||
# locale. Unset and source from the current system locale.
|
||||
if [ -f "${EROOT}/etc/env.d/02locale" ]; then
|
||||
unset LANG
|
||||
unset LC_CTYPE
|
||||
unset LC_NUMERIC
|
||||
unset LC_TIME
|
||||
unset LC_COLLATE
|
||||
unset LC_MONETARY
|
||||
unset LC_MESSAGES
|
||||
unset LC_ALL
|
||||
source "${EROOT}/etc/env.d/02locale"
|
||||
[ -n "${LANG}" ] && export LANG
|
||||
[ -n "${LC_CTYPE}" ] && export LC_CTYPE
|
||||
[ -n "${LC_NUMERIC}" ] && export LC_NUMERIC
|
||||
[ -n "${LC_TIME}" ] && export LC_TIME
|
||||
[ -n "${LC_COLLATE}" ] && export LC_COLLATE
|
||||
[ -n "${LC_MONETARY}" ] && export LC_MONETARY
|
||||
[ -n "${LC_MESSAGES}" ] && export LC_MESSAGES
|
||||
[ -n "${LC_ALL}" ] && export LC_ALL
|
||||
fi
|
||||
|
||||
einfo "You can modify the paths and options passed to initdb by editing:"
|
||||
einfo " ${EROOT}/etc/conf.d/postgresql-${SLOT}"
|
||||
einfo
|
||||
einfo "Information on options that can be passed to initdb are found at:"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/creating-cluster.html"
|
||||
einfo " https://www.postgresql.org/docs/${SLOT}/static/app-initdb.html"
|
||||
einfo
|
||||
einfo "PG_INITDB_OPTS is currently set to:"
|
||||
if [[ -z "${PG_INITDB_OPTS}" ]] ; then
|
||||
einfo " (none)"
|
||||
else
|
||||
einfo " ${PG_INITDB_OPTS}"
|
||||
fi
|
||||
einfo
|
||||
einfo "Configuration files will be installed to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo
|
||||
einfo "The database cluster will be created in:"
|
||||
einfo " ${DATA_DIR}"
|
||||
einfo
|
||||
|
||||
ebegin "Continuing initialization in 5 seconds (Control-C to cancel)"
|
||||
sleep 5
|
||||
eend 0
|
||||
|
||||
if [ -n "$(ls -A ${DATA_DIR} 2> /dev/null)" ] ; then
|
||||
eerror "The given directory, '${DATA_DIR}', is not empty."
|
||||
eerror "Modify DATA_DIR to point to an empty directory."
|
||||
die "${DATA_DIR} is not empty."
|
||||
fi
|
||||
|
||||
einfo "Creating the data directory ..."
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
mkdir -p "$(dirname ${DATA_DIR%/})" || die "Couldn't parent dirs"
|
||||
mkdir -m 0700 "${DATA_DIR%/}" || die "Couldn't make DATA_DIR"
|
||||
chown -h postgres:postgres "${DATA_DIR%/}" || die "Couldn't chown"
|
||||
fi
|
||||
|
||||
einfo "Initializing the database ..."
|
||||
|
||||
if [[ ${EUID} == 0 ]] ; then
|
||||
su - postgres -c "${EROOT}/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -D \"${DATA_DIR}\" ${PG_INITDB_OPTS}"
|
||||
else
|
||||
"${EROOT}"/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb -U postgres -D "${DATA_DIR}" ${PG_INITDB_OPTS}
|
||||
fi
|
||||
|
||||
if [[ "${DATA_DIR%/}" != "${PGDATA%/}" ]] ; then
|
||||
mv "${DATA_DIR%/}"/{pg_{hba,ident},postgresql}.conf "${PGDATA}"
|
||||
ln -s "${PGDATA%/}"/{pg_{hba,ident},postgresql}.conf "${DATA_DIR%/}"
|
||||
fi
|
||||
|
||||
# unix_socket_directory has no effect in postgresql.conf as it's
|
||||
# overridden in the initscript
|
||||
sed '/^#unix_socket_directories/,+1d' -i "${PGDATA%/}"/postgresql.conf
|
||||
|
||||
cat <<- EOF >> "${PGDATA%/}"/postgresql.conf
|
||||
# This is here because of https://bugs.gentoo.org/show_bug.cgi?id=518522
|
||||
# On the off-chance that you might need to work with UTF-8 encoded
|
||||
# characters in PL/Perl
|
||||
plperl.on_init = 'use utf8; use re; package utf8; require "utf8_heavy.pl";'
|
||||
EOF
|
||||
|
||||
einfo "The autovacuum function, which was in contrib, has been moved to the main"
|
||||
einfo "PostgreSQL functions starting with 8.1, and starting with 8.4 is now enabled"
|
||||
einfo "by default. You can disable it in the cluster's:"
|
||||
einfo " ${PGDATA%/}/postgresql.conf"
|
||||
einfo
|
||||
if ! use systemd; then
|
||||
einfo "The PostgreSQL server, by default, will log events to:"
|
||||
einfo " ${DATA_DIR%/}/postmaster.log"
|
||||
einfo
|
||||
fi
|
||||
if use prefix ; then
|
||||
einfo "The location of the configuration files have moved to:"
|
||||
einfo " ${PGDATA}"
|
||||
einfo "To start the server:"
|
||||
einfo " pg_ctl start -D ${DATA_DIR} -o '-D ${PGDATA} --data-directory=${DATA_DIR}'"
|
||||
einfo "To stop:"
|
||||
einfo " pg_ctl stop -D ${DATA_DIR}"
|
||||
einfo
|
||||
einfo "Or move the configuration files back:"
|
||||
einfo "mv ${PGDATA}*.conf ${DATA_DIR}"
|
||||
elif use systemd; then
|
||||
einfo "You should use the 'postgresql-${SLOT}.service' unit to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
else
|
||||
einfo "You should use the '${EROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL"
|
||||
einfo "instead of 'pg_ctl'."
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
if use server && [[ ${UID} -ne 0 ]] ; then
|
||||
# Some ICU tests fail if LC_CTYPE and LC_COLLATE aren't the same. We set
|
||||
# LC_CTYPE to be equal to LC_COLLATE since LC_COLLATE is set by Portage.
|
||||
local old_ctype=${LC_CTYPE}
|
||||
export LC_CTYPE=${LC_COLLATE}
|
||||
emake check
|
||||
export LC_CTYPE=${old_ctype}
|
||||
einfo "If you think other tests besides the regression tests are necessary, please"
|
||||
einfo "submit a bug including a patch for this ebuild to enable them."
|
||||
else
|
||||
use server || \
|
||||
ewarn 'Tests cannot be run without the "server" use flag enabled.'
|
||||
[[ ${UID} -eq 0 ]] || \
|
||||
ewarn 'Tests cannot be run as root. Enable "userpriv" in FEATURES.'
|
||||
|
||||
ewarn 'Skipping.'
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -1,239 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
inherit bash-completion-r1 desktop python-any-r1 scons-utils toolchain-funcs xdg
|
||||
|
||||
DESCRIPTION="Multi-platform 2D and 3D game engine with a feature-rich editor"
|
||||
HOMEPAGE="https://godotengine.org/"
|
||||
SRC_URI="
|
||||
https://downloads.tuxfamily.org/godotengine/${PV}/${P}-stable.tar.xz
|
||||
https://github.com/godotengine/godot/releases/download/${PV}-stable/${P}-stable.tar.xz
|
||||
"
|
||||
S="${WORKDIR}/${P}-stable"
|
||||
|
||||
LICENSE="
|
||||
MIT
|
||||
Apache-2.0 BSD Boost-1.0 CC0-1.0 Unlicense ZLIB
|
||||
gui? ( CC-BY-4.0 ) tools? ( OFL-1.1 )
|
||||
"
|
||||
SLOT="4"
|
||||
KEYWORDS="~amd64"
|
||||
# Enable roughly same as upstream by default so it works as expected,
|
||||
# except raycast (tools-only heavy dependency), and deprecated.
|
||||
IUSE="
|
||||
alsa +dbus debug deprecated +fontconfig +gui pulseaudio raycast
|
||||
+runner speech test +theora +tools +udev +upnp +vulkan +webp
|
||||
"
|
||||
# TODO: tests still need more figuring out
|
||||
RESTRICT="test"
|
||||
|
||||
# dlopen: libglvnd
|
||||
RDEPEND="
|
||||
app-arch/brotli:=
|
||||
app-arch/zstd:=
|
||||
dev-games/recastnavigation:=
|
||||
dev-libs/icu:=
|
||||
dev-libs/libpcre2:=[pcre32]
|
||||
media-libs/freetype[brotli,harfbuzz]
|
||||
media-libs/harfbuzz:=[icu]
|
||||
media-libs/libogg
|
||||
media-libs/libpng:=
|
||||
media-libs/libvorbis
|
||||
<net-libs/mbedtls-3:=
|
||||
net-libs/wslay
|
||||
sys-libs/zlib:=
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
fontconfig? ( media-libs/fontconfig )
|
||||
gui? (
|
||||
media-libs/libglvnd
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXi
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
x11-libs/libxkbcommon
|
||||
tools? ( raycast? ( media-libs/embree:3 ) )
|
||||
vulkan? ( media-libs/vulkan-loader[X] )
|
||||
)
|
||||
pulseaudio? ( media-libs/libpulse )
|
||||
speech? ( app-accessibility/speech-dispatcher )
|
||||
theora? ( media-libs/libtheora )
|
||||
tools? ( app-misc/ca-certificates )
|
||||
udev? ( virtual/udev )
|
||||
upnp? ( net-libs/miniupnpc:= )
|
||||
webp? ( media-libs/libwebp:= )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
gui? ( x11-base/xorg-proto )
|
||||
tools? ( test? ( dev-cpp/doctest ) )
|
||||
"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-4.0_beta3-headless-header.patch
|
||||
"${FILESDIR}"/${PN}-4.0_rc2-musl.patch
|
||||
"${FILESDIR}"/${PN}-4.0_rc3-scons.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -i "1,5s/ godot/&${SLOT}/i" misc/dist/linux/godot.6 || die
|
||||
sed -i "/id/s/Godot/&${SLOT}/" misc/dist/linux/org.godotengine.Godot.appdata.xml || die
|
||||
sed -e "s/=godot/&${SLOT}/" -e "/^Name=/s/$/ ${SLOT}/" \
|
||||
-i misc/dist/linux/org.godotengine.Godot.desktop || die
|
||||
|
||||
sed -i "s|pkg-config |$(tc-getPKG_CONFIG) |" platform/linuxbsd/detect.py || die
|
||||
|
||||
# use of builtin_ switches can be messy (see below), delete to be sure
|
||||
local unbundle=(
|
||||
brotli doctest embree freetype graphite harfbuzz icu4c libogg
|
||||
libpng libtheora libvorbis libwebp linuxbsd_headers mbedtls
|
||||
miniupnpc pcre2 recastnavigation volk wslay zlib zstd
|
||||
# certs: unused by generated header, but scons panics if not found
|
||||
)
|
||||
rm -r "${unbundle[@]/#/thirdparty/}" || die
|
||||
|
||||
ln -s "${ESYSROOT}"/usr/include/doctest thirdparty/ || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local -x BUILD_NAME=gentoo # replaces "custom_build" in version string
|
||||
|
||||
local esconsargs=(
|
||||
AR="$(tc-getAR)" CC="$(tc-getCC)" CXX="$(tc-getCXX)"
|
||||
|
||||
progress=no
|
||||
verbose=yes
|
||||
|
||||
use_sowrap=no
|
||||
|
||||
alsa=$(usex alsa)
|
||||
dbus=$(usex dbus)
|
||||
deprecated=$(usex deprecated)
|
||||
fontconfig=$(usex fontconfig)
|
||||
opengl3=$(usex gui)
|
||||
pulseaudio=$(usex pulseaudio)
|
||||
speechd=$(usex speech)
|
||||
udev=$(usex udev)
|
||||
use_volk=no # unnecessary when linking directly to libvulkan
|
||||
vulkan=$(usex gui $(usex vulkan))
|
||||
x11=$(usex gui)
|
||||
|
||||
system_certs_path="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
|
||||
|
||||
# platform/*/detect.py uses builtin_* switches to check if need
|
||||
# to link with system libraries, but many ignore whether the dep
|
||||
# is actually used, so "enable" deleted builtins on disabled deps
|
||||
builtin_brotli=no
|
||||
builtin_certs=no
|
||||
builtin_embree=$(usex !gui yes $(usex !tools yes $(usex !raycast)))
|
||||
builtin_enet=yes # bundled copy is patched for IPv6+DTLS support
|
||||
builtin_freetype=no
|
||||
builtin_glslang=yes #879111 (for now, may revisit if more stable)
|
||||
builtin_graphite=no
|
||||
builtin_harfbuzz=no
|
||||
builtin_icu4c=no
|
||||
builtin_libogg=no
|
||||
builtin_libpng=no
|
||||
builtin_libtheora=$(usex !theora)
|
||||
builtin_libvorbis=no
|
||||
builtin_libwebp=$(usex !webp)
|
||||
builtin_mbedtls=no
|
||||
builtin_miniupnpc=$(usex !upnp)
|
||||
builtin_msdfgen=yes # not wired for unbundling nor packaged
|
||||
builtin_openxr=yes # not packaged
|
||||
builtin_pcre2=no
|
||||
builtin_recastnavigation=no
|
||||
builtin_rvo2=yes # bundled copy has godot-specific changes
|
||||
builtin_squish=yes # ^ likewise, may not be safe to unbundle
|
||||
builtin_wslay=no
|
||||
builtin_xatlas=yes # not wired for unbundling nor packaged
|
||||
builtin_zlib=no
|
||||
builtin_zstd=no
|
||||
# (more is bundled in third_party/ but they lack builtin_* switches)
|
||||
|
||||
# modules with optional dependencies, "possible" to disable more but
|
||||
# gets messy and breaks all sorts of features (expected enabled)
|
||||
module_mono_enabled=no # unhandled
|
||||
# note raycast is only enabled on amd64+arm64, see raycast/config.py
|
||||
module_raycast_enabled=$(usex gui $(usex tools $(usex raycast)))
|
||||
module_theora_enabled=$(usex theora)
|
||||
module_upnp_enabled=$(usex upnp)
|
||||
module_webp_enabled=$(usex webp)
|
||||
|
||||
# let *FLAGS handle these, e.g. can pass -flto as-is
|
||||
debug_symbols=no
|
||||
lto=none
|
||||
optimize=custom
|
||||
use_static_cpp=no
|
||||
)
|
||||
|
||||
if use runner && use tools; then
|
||||
# build alternate faster + ~60% smaller binary for running
|
||||
# games or servers without game development debug paths
|
||||
escons extra_suffix=runner target=template_release "${esconsargs[@]}"
|
||||
fi
|
||||
|
||||
esconsargs+=(
|
||||
target=$(usex tools editor template_$(usex debug{,} release))
|
||||
dev_build=$(usex debug)
|
||||
|
||||
# harmless but note this bakes in --test in the final binary
|
||||
tests=$(usex tools $(usex test))
|
||||
)
|
||||
|
||||
escons extra_suffix=main "${esconsargs[@]}"
|
||||
}
|
||||
|
||||
src_test() {
|
||||
xdg_environment_reset
|
||||
bin/godot*.main --headless --test || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local s=godot${SLOT}
|
||||
|
||||
newbin bin/godot*.main ${s}
|
||||
if use runner && use tools; then
|
||||
newbin bin/godot*.runner ${s}-runner
|
||||
else
|
||||
# always available, revdeps shouldn't depend on [runner]
|
||||
dosym ${s} /usr/bin/${s}-runner
|
||||
fi
|
||||
|
||||
newman misc/dist/linux/godot.6 ${s}.6
|
||||
dodoc AUTHORS.md CHANGELOG.md DONORS.md README.md
|
||||
|
||||
if use gui; then
|
||||
newicon icon.svg ${s}.svg
|
||||
newmenu misc/dist/linux/org.godotengine.Godot.desktop \
|
||||
org.godotengine.${s^}.desktop
|
||||
|
||||
insinto /usr/share/metainfo
|
||||
newins misc/dist/linux/org.godotengine.Godot.appdata.xml \
|
||||
org.godotengine.${s^}.appdata.xml
|
||||
|
||||
insinto /usr/share/mime/application
|
||||
newins misc/dist/linux/org.godotengine.Godot.xml \
|
||||
org.godotengine.${s^}.xml
|
||||
fi
|
||||
|
||||
newbashcomp misc/dist/shell/godot.bash-completion ${s}
|
||||
bashcomp_alias ${s}{,-runner}
|
||||
|
||||
insinto /usr/share/fish/vendor_completions.d
|
||||
newins misc/dist/shell/godot.fish ${s}.fish
|
||||
dosym ${s}.fish /usr/share/fish/vendor_completions.d/${s}-runner.fish
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins misc/dist/shell/_godot.zsh-completion _${s}
|
||||
dosym _${s} /usr/share/zsh/site-functions/_${s}-runner
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
AUX kopeninghours-22.04.0-boostpython.patch 3555 BLAKE2B 1d22b48e5574ffada0b89a0828bf5258321b57161061534939e95256ab3501a887a026231568e09b1d20499238284107c34c6835d33853096be62e1345356cde SHA512 562b30fe66a9e8904e79c95496c4b06e50dbbb8d328db93a655ffa7f8829ff70bc8a6b0ee7beb7840e7046b74d4d858265ec67703c6317c3fe4c87b54b40a349
|
||||
DIST kopeninghours-23.04.3.tar.xz 71808 BLAKE2B 734d938145fd386b6314f0e861a1b148e4a5dfac83f8b0263f8840e07f629c528f4945be16e3c6d8240b72b2be442a28071dc86982ee42b6faa60780ae15c0ee SHA512 6faddbf3da09fb4d3616abbc230c269f0ccb827f081ca3b2bf40874d7878efe69ea197ccf54f1b4db0e997eee11cca41891d64196b77062763d62e286ce4aa4c
|
||||
DIST kopeninghours-23.08.2.tar.xz 71928 BLAKE2B 422ecce42a8ab37698af4905caf7aa23a0864e0557e07253ed49cfd698d3273679fe6c0ffea4145fc860f28228623de84273e7ae4dd3eda3ae95f9eead85d27b SHA512 5a4eedb72a60a261616a321fee117e035cce796c76b053b71ab1265ea5cd26754bf577bfc99233a040fe105ea3bad21670d682ec3bbaa45db2a17dc07038b516
|
||||
DIST kopeninghours-23.08.3.tar.xz 71932 BLAKE2B 368f75ef0884a909b916497d9e5578a19288cebb1d12bf073938633a37a53a00c7f34256ee03a8ca2bd73759f72a16aa1b677c8a75305865446c2e5d935026a1 SHA512 e62794d4405321ef7c81b3981e2610e3a5f91a0a65a1899fd1e24681f4bb6296e8ad26532bb039e0fa3f47a0c33269a8c46c87658e407c87b77619ea0a09f155
|
||||
EBUILD kopeninghours-23.04.3.ebuild 1274 BLAKE2B 946d5a0102f8b7f8f93f1e92a10e5e10dd16f24d4f14ca2eccb98bbc636781bd6eac121cc7b27f5a488d31be829e3c34fc8cfb8f6d57aa50de519aff8b2054e6 SHA512 6edc20035b149f9ed309acadb03a3cefc5f0495c775c662fc6d7dbaa8a830fd1df117402e4d99e507102e67462268bb8f705622c9a6fb54dd1faa5c44d29c7ac
|
||||
EBUILD kopeninghours-23.08.2.ebuild 1274 BLAKE2B 946d5a0102f8b7f8f93f1e92a10e5e10dd16f24d4f14ca2eccb98bbc636781bd6eac121cc7b27f5a488d31be829e3c34fc8cfb8f6d57aa50de519aff8b2054e6 SHA512 6edc20035b149f9ed309acadb03a3cefc5f0495c775c662fc6d7dbaa8a830fd1df117402e4d99e507102e67462268bb8f705622c9a6fb54dd1faa5c44d29c7ac
|
||||
EBUILD kopeninghours-23.08.3.ebuild 1274 BLAKE2B 946d5a0102f8b7f8f93f1e92a10e5e10dd16f24d4f14ca2eccb98bbc636781bd6eac121cc7b27f5a488d31be829e3c34fc8cfb8f6d57aa50de519aff8b2054e6 SHA512 6edc20035b149f9ed309acadb03a3cefc5f0495c775c662fc6d7dbaa8a830fd1df117402e4d99e507102e67462268bb8f705622c9a6fb54dd1faa5c44d29c7ac
|
||||
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
|
||||
|
@ -1,7 +1,7 @@
|
||||
AUX kosmindoormap-23.04.3-protobuf-23-1.patch 949 BLAKE2B 0a751a22ab7195dfe4363daa90530fa8acb427251c79261b76f701b543c3bbd2aad20a4ecb5292bc05da5511d375d686e2d7c2e66e1d312cd206af4125b2aa49 SHA512 52425c325db0b2607050314b2a4364a6eeaadf18d27cb94cb2423b9008b1396f65c38c26ab0432f083e48d4f2882eeae3e6169f0efeb10edb1e1b8607d4df81a
|
||||
AUX kosmindoormap-23.04.3-protobuf-23-2.patch 1300 BLAKE2B 47dcb7783f4c91201efd92be6ab12b855b6628f36e8b31e112a38e68702b438c49caaafac2a428a23e0d53a595a8b08d1b6e5a70d7d0a758c23b5e4e7869cacf SHA512 07ee39654ee74e467f81871c1cac501ff1bec5174f8437b7110bb7c788c88789dcd73b2646a56e5ba5155e15af726f097381c93aecd47298c8446469ef2b0e2d
|
||||
DIST kosmindoormap-23.04.3.tar.xz 375680 BLAKE2B 306336b33c7b03e67531f11163c579dab5b68614f4fd582eb14858a7c80e601e848aaf933c846a144d07e59c215b59f3a0021429f675a76750903144e02829d1 SHA512 1ad5acc7143842005cc02c146e90090d57d8fbafbac6a4401ab94ec966c709f66f7f832169982a808ab21911b16e6f837137c2fd9cf284c540ce03e6647c3405
|
||||
DIST kosmindoormap-23.08.2.tar.xz 380052 BLAKE2B 33fa94635a83acf28f519d0c404dc0ab404d71cffef5348f36deafbe5131625807e319677fa2d6b49cb1952abfffb305e2bf69410f91bb1305de9b0036cba52c SHA512 0ba75b3f7ad66849880be0952789e75dab51e9c7378f6716f035352afd8f49c7582a199c814e185b742e465354904f0562d67cb1f0eed4001f8dfb5289e20e2c
|
||||
DIST kosmindoormap-23.08.3.tar.xz 379980 BLAKE2B 5dae843d121543c5bd7fc3021f436b0d5ea4f7554c5f186479036af191946f57c67b95d41fef3b2ea74c71a315be159f49aab1f89afd03cd21bf326d605be1f6 SHA512 5a5d158eb6f231b6975ff24db73eaf4a1969606999fca7b3944a5bbb77393612bc2df3591b320ad8b9c42b0fca751b7f50e990636c22c3748141c20fcfb0c78e
|
||||
EBUILD kosmindoormap-23.04.3.ebuild 1134 BLAKE2B e858475078f7c6a6d818c58f58269c70b747c685557ba6f09711b7a8cf57af54bccbfd7105ab755eebc71a3ceeacd6f2864b57f64708824eaf8ee3f77827d0fe SHA512 22f76f9c8468008793990c3c42c28e678f6d0d90068465de5f74db8fe0c74808f160d4aa2430912f3b238a1b87f6a8ef8c1407924e7a634dc15f61e3d414dfd2
|
||||
EBUILD kosmindoormap-23.08.2.ebuild 1053 BLAKE2B c64e91c277902a3fe8e6fe80636741e561872222b77612bc7d735ec7d920f7fe23cf305fe5e4cbb0e6ed1449e594c6ab5a8eac610705d2937498d1216dc82f8b SHA512 adf24e11048f6fffe005986807cebf8aef87ab1a9b4fd47dd74e95c99362f3504341c04298973f9f3867a66a572231a77da49364389e60bb22461de071e4f01f
|
||||
EBUILD kosmindoormap-23.08.3.ebuild 1053 BLAKE2B c64e91c277902a3fe8e6fe80636741e561872222b77612bc7d735ec7d920f7fe23cf305fe5e4cbb0e6ed1449e594c6ab5a8eac610705d2937498d1216dc82f8b SHA512 adf24e11048f6fffe005986807cebf8aef87ab1a9b4fd47dd74e95c99362f3504341c04298973f9f3867a66a572231a77da49364389e60bb22461de071e4f01f
|
||||
MISC metadata.xml 436 BLAKE2B 7b97cad83675445e816a4f92d2e9c2c4167457df244fd166b6388be7c9336b4852c3873fff4e9d18bf1cccaaeaec849a1b340fa92a15e54180652e53cb023859 SHA512 312c58bb9ef49585287db38ff0f4e6cb6486477f4c84246610c443fb07ced2129017462ef91fab147dde7d69b0923605dc5b68fe71f6cd80f0ed1115b4a9ca6b
|
||||
|
@ -1,5 +1,5 @@
|
||||
DIST kpublictransport-23.04.3.tar.xz 537716 BLAKE2B ee477dba15626a66cab15be59a1438c03d378df1e6686e5345211fa2139f0bec49ce3138f5e6cbdbd7ffb3ff6a58bd8ec1fcaa87c235af7aee7a23e926648953 SHA512 41597bf9e7c3366575a9a6698cace1f127f8c69094de906d0ab662cc563b0a440ae89c074909083d82c8d94e1cd5f2442470f45369663252b5cf6dd8f6ae7e47
|
||||
DIST kpublictransport-23.08.2.tar.xz 569208 BLAKE2B 89b8d2e7e3308a0105db95cc8e74072926b1c2aa295f0f1a7794aca2b3311340ee949c7fe58a0eb0fde971ba0a4ae5d3affec966a232413e13324b178106c368 SHA512 9a94edcaa9983ebba77bb415dcabf4af4f0aa3da92ed6b3197e6d2c44868a8316e5d4d0db60eef866e69561834309f94835aafca45b73b33bb2ccb64c4705f2f
|
||||
DIST kpublictransport-23.08.3.tar.xz 570316 BLAKE2B 9b98fdb1039273468becbe018a2904d12dcb7489e58b7354b25c79e72286917462ebff3807b14d2d5c71ee4ee2d48a223d19988329b66a23c63ef1d970321622 SHA512 278912f30881c46aa516e73f4be27e47a07fc97b6769ce120e9649c69e9cc68087bca58c1565bd66967559303caedd8c3d46b9ec4b26f481ecc12f1db58629a3
|
||||
EBUILD kpublictransport-23.04.3.ebuild 995 BLAKE2B 5d4a4da647522565f2f44de006aef8ac78e442f35d2602b31ca9a09eca2c96fde88d843c0bfade5686007565678669d57bf5a16e222c4882d8593d431b74057c SHA512 44f76486782acdc3b03e1949669da1fce144ba923de7b1dfac07168925c610d7a66a1a31ba983a71656ebc4d5bb8ab734cf59e0e36efbd3b1d87858d82a4642e
|
||||
EBUILD kpublictransport-23.08.2.ebuild 995 BLAKE2B 5d4a4da647522565f2f44de006aef8ac78e442f35d2602b31ca9a09eca2c96fde88d843c0bfade5686007565678669d57bf5a16e222c4882d8593d431b74057c SHA512 44f76486782acdc3b03e1949669da1fce144ba923de7b1dfac07168925c610d7a66a1a31ba983a71656ebc4d5bb8ab734cf59e0e36efbd3b1d87858d82a4642e
|
||||
EBUILD kpublictransport-23.08.3.ebuild 995 BLAKE2B 5d4a4da647522565f2f44de006aef8ac78e442f35d2602b31ca9a09eca2c96fde88d843c0bfade5686007565678669d57bf5a16e222c4882d8593d431b74057c SHA512 44f76486782acdc3b03e1949669da1fce144ba923de7b1dfac07168925c610d7a66a1a31ba983a71656ebc4d5bb8ab734cf59e0e36efbd3b1d87858d82a4642e
|
||||
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
|
||||
|
@ -1,7 +1,5 @@
|
||||
DIST libzia-4.43.tar.gz 642097 BLAKE2B 34ab759fc8d4d83067df80d9d3f763717640df38f604222f3fc6b19876a9f5a5f5b79523857fa96d5badf047046b4786f100657ee0a41d0a7096a21c6006e5a0 SHA512 b6341ea6524b2040d63a7b21b9a4c12d26cb5ae30bc08dc37efd5fd7d71ecf7321511e09cc5745adc6f395f841d5e2bb4df827956204db4147ac11d204eaf8da
|
||||
DIST libzia-4.44.tar.gz 642077 BLAKE2B 0647cbfbbd05a08aafeaf64ee08485c54aa46d9c9ba81448f16cdd8c05a27dceb6646d0eebe4ae60b00b36ea0d8822fd61c157ebec1d788a49a27b9ff4dea44d SHA512 da1b65ff82e62f5b93c4e977ac5528c80e770fa4ed2a0ac4ba92db00f95bccecad2c1c81f9d179d1a4612b1801b6c3e9bab733a0ef6e67137410ac9b62a4972c
|
||||
DIST libzia-4.46.tar.gz 642261 BLAKE2B cf8a4fc32599d77114dbfb6684196f4b0fb4715af1e8bf5f647d8b383130030c0d9c62aa94b8f12f72653dcba019f57ea75adb699646b6f27ed2f6c6f410c2e9 SHA512 11242683133c094c61b55824f35c399daf187b82b33620e938c47ff09f60dc3b4bf644623ce2ad551d60e75694c4afa1747a3168df98ada245dd1e9500e52c16
|
||||
EBUILD libzia-4.43.ebuild 1191 BLAKE2B fdedbbb747f79407c1697e883d89dab444cc8fb60065c5800f6593010444160dc555f9c7fdc99e8d336ef7cd3409ce828e3c9156dc627143139bb987d7a20c2b SHA512 57c194225792866b997c7c1e5ed386f87f0213f8eeb4837c44148d013df10a61c6c71ddb20409088bb2e236eb3da948fc5c08c574ffc5d5bf962ab6ccb04cf8d
|
||||
EBUILD libzia-4.44.ebuild 1191 BLAKE2B fdedbbb747f79407c1697e883d89dab444cc8fb60065c5800f6593010444160dc555f9c7fdc99e8d336ef7cd3409ce828e3c9156dc627143139bb987d7a20c2b SHA512 57c194225792866b997c7c1e5ed386f87f0213f8eeb4837c44148d013df10a61c6c71ddb20409088bb2e236eb3da948fc5c08c574ffc5d5bf962ab6ccb04cf8d
|
||||
DIST libzia-4.49.tar.gz 641558 BLAKE2B 045c6edc95d95cf4180209c20f8fb4de1ee0854f93fcab59ac9e47d1c76b73b5a6be8b453c96114ba53b7ff1f7d0e06228881920096bbd0aaf8029409f155424 SHA512 7dc8e8ea2984a5aca8db01af82adf7e824d264da061616658c184694c3fb1565e90f84008d92ad4ff07dfdd8633b17366e1ca32e71e2671172453c40da87cb9f
|
||||
EBUILD libzia-4.46.ebuild 1191 BLAKE2B fdedbbb747f79407c1697e883d89dab444cc8fb60065c5800f6593010444160dc555f9c7fdc99e8d336ef7cd3409ce828e3c9156dc627143139bb987d7a20c2b SHA512 57c194225792866b997c7c1e5ed386f87f0213f8eeb4837c44148d013df10a61c6c71ddb20409088bb2e236eb3da948fc5c08c574ffc5d5bf962ab6ccb04cf8d
|
||||
EBUILD libzia-4.49.ebuild 1193 BLAKE2B 14f99f1cbc754761e90212206e4d0d01a16071f07aee10c232bbfe66548432a576193bc83847a23bb7bd9d3eaa12e036c2e727e52eb2d5ac33c98b2c2f576856 SHA512 f0a68f7a6e158b889856683f2199c85cfdde1283a7b0d7b075adaa82a0859a9cabad1a731f0a13dddc2954e4084ed0c4d959584ca3c7aeb379befb71a366a2a5
|
||||
MISC metadata.xml 326 BLAKE2B 1b8ed6c9d40252f3371cf9a1ec295f593c8898dd8e45173ca05cededf987c7e44e2fafca613f8ad3022e9fbb6886d6aec2d183fd47c3064f35038784f361ebc4 SHA512 0c8a48b1101aa184dc596581feaf47463688801cb0f342177ecfb6fade1d63520ca1b9dcb278279470c181b560f555de332e4d2583e8856eec9057cde34df48f
|
||||
|
@ -1,54 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools flag-o-matic
|
||||
|
||||
DESCRIPTION="Platform abstraction code for tucnak package"
|
||||
HOMEPAGE="http://tucnak.nagano.cz"
|
||||
SRC_URI="http://tucnak.nagano.cz/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="ftdi"
|
||||
|
||||
RDEPEND="dev-libs/glib:2
|
||||
x11-libs/gtk+:2
|
||||
media-libs/libsdl2
|
||||
media-libs/libpng:0
|
||||
ftdi? ( dev-embedded/libftdi:1 )
|
||||
elibc_musl? ( sys-libs/libunwind )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
MAKEOPTS+=" -j1"
|
||||
|
||||
src_prepare() {
|
||||
eapply_user
|
||||
sed -i -e "s/docsdir/#docsdir/g" \
|
||||
-e "s/docs_/#docs_/g" Makefile.am || die
|
||||
|
||||
# Fix QA-Warning "QA Notice: pkg-config files with wrong LDFLAGS detected"
|
||||
sed -i -e 's/@LDFLAGS@//' libzia.pc.in || die
|
||||
|
||||
# fix build for MUSL (bug #832235)
|
||||
if use elibc_musl ; then
|
||||
sed -i -e "s/ backtrace(/ unw_backtrace(/" src/zbfd.c || die
|
||||
fi
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use elibc_musl && append-libs -lunwind
|
||||
econf \
|
||||
$(use_with ftdi) --with-sdl \
|
||||
--with-png --without-bfd \
|
||||
--disable-static
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
find "${D}" -name '*.la' -type f -delete || die
|
||||
}
|
Binary file not shown.
@ -1,5 +1,3 @@
|
||||
DIST PyQt-builder-1.15.2.tar.gz 3908851 BLAKE2B 8d8f324eb7ac6b00b00ac52a4b746789cf52032d519eca9c88c83dec3fe9c8100619e6b360c3dd6d69270b9feab118376a27c1485b453b35b6e4b8b212b34720 SHA512 3f8472ec51e9b456df80355d0351a66ea42902f81099993d57ae2c7f02c4ab142fa8089a87059f9e800a610d865e3e30bf890674b3a21f48eeb8375ec883f518
|
||||
DIST PyQt-builder-1.15.3.tar.gz 3909851 BLAKE2B 27680dbbee2fb1f549f7d98fa0b422dfe88933aedcb907bfa74dbdbce7324a5f003b62f7fd03ef4ec5c4f8ff5151fb23b73a3111b1e03bf04daba6faa00cf13e SHA512 58bd082d339cedd34c5bd8dc58f690a8a801b04c334e24c9843be0f0c24f2d4548ff69374bc0cf0aa96f8dea526f5a73c688f00cd72d29deb86fedaab5987f49
|
||||
EBUILD PyQt-builder-1.15.2.ebuild 765 BLAKE2B 74915e44fb9488e705fb49056db8e7095e2461c7ee6267b2f9e9ab7745c53c29294386eabd609b436cde0cb8b6302f6e40ad9e70de82b23f40f531cce459f114 SHA512 66db1c66f972bba92cedfed78e1df84e35cf8209b93b67f9c3bbf8804d37bdaea13bfc982eb12209c7699d8aa633adc7fefc19324ac02174c505535ed70a6b93
|
||||
EBUILD PyQt-builder-1.15.3.ebuild 721 BLAKE2B 10b743fac004acb9293df8c241700a836c762be5a8694af4eef2d46dcf8b6dcc4748de99a106bd63a24fb2948502e4490cdb0d251e474f8d29bb1ff382716db0 SHA512 64404ac127b5fa046401a53fe0606062d799cedbda4ed2220d04e4d046fb416f7b93a8f6e11604e03b5781d69488f42754cec7e7ea06329d5de938e1b88087f7
|
||||
MISC metadata.xml 666 BLAKE2B 2602886cadc8244466e26c92178552ac1f618ace1dcd6eca9ced2c3e0f7a7777c435f842f1581d93ea7642dbcc278a4aa59a84305f5a825f39edb736e7d29f69 SHA512 42746ac242170047e0a44389c8d2e8eb5be60fbff1f5f1908802e5c3a04a0c740fe338c9b3049fc03bdb45a4182b388aad9b89a573e87d440a9a833443a1470c
|
||||
|
@ -1,34 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="The PEP 517 compliant PyQt build system"
|
||||
HOMEPAGE="
|
||||
https://www.riverbankcomputing.com/software/pyqt-builder/
|
||||
https://pypi.org/project/PyQt-builder/
|
||||
"
|
||||
|
||||
LICENSE="|| ( GPL-2 GPL-3 SIP )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
>=dev-python/sip-6.7.1[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_sphinx doc --no-autodoc
|
||||
|
||||
python_prepare_all() {
|
||||
distutils-r1_python_prepare_all
|
||||
|
||||
# don't install prebuilt DLLs
|
||||
sed -i "s:'dlls/\*/\*',::" setup.py || die
|
||||
}
|
@ -1,5 +1,3 @@
|
||||
DIST PyQt5_sip-12.12.2.tar.gz 123020 BLAKE2B 73e0209c0e780087443f761c5c8d0b80745f836b1077ca9197ae35313e4b633421c41280320c1862c78229ff4c94100b740200402853ea8ca47b26744709bb5d SHA512 62435e6fa409a817ad7648103ce1574747ed878da3859981517d3c3fb9b918802cbf14989daae4a0d44a3fbccef44cf674f4d108f5d6eade1d1d8a3ec8d82982
|
||||
DIST PyQt5_sip-12.13.0.tar.gz 123225 BLAKE2B e3b7233e5405f7b24de157e1f0ed0f2ff47a9c331a76672892d8a7adc8aba8c7b738354d9f1c2fe9c29501b5bfe8c6302307c6731273b980a04dd327048a3a94 SHA512 ef363b21899f6d089fbc6d5adf700dc6c8838501343070ed1cf0826e05dd860343eba608d5aee5d8bece39b8ddca1f37866bb56aa07db18384ac0a372ca3532f
|
||||
EBUILD PyQt5-sip-12.12.2.ebuild 519 BLAKE2B ab2089f1571cd372ef5f7f2b378557c4473fdaaaaaa6675f71d8dd4f4f4fbe39f72855a5d1be2aee3353a40ceb36a3b55357ff342635588badc5206d1fbd4daf SHA512 ab2da01192a76807d0fa6286ec44adb94c466eb92a1196b90f63ae81563cb69cac65f0d15f4eec6edc337b44927c7c8de7e70537bd842f7278b5260c51a119dc
|
||||
EBUILD PyQt5-sip-12.13.0.ebuild 478 BLAKE2B 3e33d4ac00af1d9dc9ffb52f3bb978ba9f5513b56833c018ddcee4d174bc187f4f4d34087ce323f388b8931caff780511d5a458f07e38acf6f674b52fe771e55 SHA512 842d0c36c2807201c02ce5f9862d106dfb0ac9fec50b534102c46756dcafcfacc939eecff6e3a23c2c14401aeb9ef1d4dcd612845ee28ff96223a4a151a8c86c
|
||||
MISC metadata.xml 649 BLAKE2B 0a6faee65b39f122f65965490284b17856ba6d86537f3f3780f8604366739c346b01e29e933a91c7edb5ff898e5d51a10e4bf288228d1943a1c9e9970eac4c86 SHA512 3af9be87db6da5cb071f4025cd6fc1964a4b0629ebe93239f6c5a3734d4ef8ef06e652abbac5c9bd86f882a6235bf3b1f0fec6f0035c77ea42571e47c6045e29
|
||||
|
@ -1,22 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYPI_PN=${PN/-/_}
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="sip extension module for PyQt5"
|
||||
HOMEPAGE="
|
||||
https://www.riverbankcomputing.com/software/sip/
|
||||
https://pypi.org/project/PyQt5-sip/
|
||||
"
|
||||
|
||||
LICENSE="|| ( GPL-2 GPL-3 SIP )"
|
||||
SLOT="0/$(ver_cut 1)"
|
||||
KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv x86"
|
@ -1,5 +1,3 @@
|
||||
DIST PyQt5-5.15.10.tar.gz 3242654 BLAKE2B 55a4cedf1ac3fd0f2968ca07544d2248d1798f134b7490eb1d07663af9f1606543564a42d5478871f5dbfc0b249b73965fd0505261fd2872c724da6d28e5b61a SHA512 e62debe112210b68993377264448199b66a43fc5db13c583a25e210759f5cd945bd1056c1c19fb86bcf005c6904358dfb89e005d27167a349f1d55987a63013e
|
||||
DIST PyQt5-5.15.9.tar.gz 3241160 BLAKE2B 37d7227e09c48576a51030729217d2c0771b2f833cfac76ff05dd0c9315889548934ceb459e590a5a9bc3a9ea2b26200791e470788f7d5b28a80fbc21539aa2f SHA512 1c07d93aefe1c24e80851eb4631b80a99e7ba06e823181325456edb90285d3d22417a9f7d4c3ff9c6195bd801e7dc2bbabf0587af844a5e4b0a410c4611d119e
|
||||
EBUILD PyQt5-5.15.10-r1.ebuild 4826 BLAKE2B 60c5eecb33564829f89fab2228f94a9511876121dd201b8269f2bf23347b4faf60b15cfb8d0b450210e3be26a4b9390d5e06c59af4aa18ccaabd4571bf5a87a4 SHA512 835ee1c734a999dcb6c441a28af5d7310705360c4b79e62cff5d6858e20643f922e223e973acb88782b66f3f7218be3a9a76aefe75dc3142b8ab9bf844e50789
|
||||
EBUILD PyQt5-5.15.9-r1.ebuild 4904 BLAKE2B 07fd41afef42cb18869e442eddb7544786dd2065799a09b87524261190bd27a64a9dca93f236a795ecc03a746fdc0698c7e63c4b83e6616af3fef951656911de SHA512 867f37fb8f4afa273fca128e5adfd5194728f2a9cc689cfb03a2208943f9619456b335a5a322d219598b03d5a65126fed7aa481b7c05d8592cb7837a1e969e3a
|
||||
MISC metadata.xml 2287 BLAKE2B b4090aa2c55d05554a152bc3adfa76c68dc78175d26bb4ea6d25858ce2db922c168cc4ded6c7fa9114cf651417e0a6e435baebe460c8efbbd94be17adafd6f43 SHA512 12e3559ff04c32ebce2a382bf3b01730b0b69829c77cdf75f0061143cc19000e126daebbf9014beeae8bd1fba2675ef2ecfe7943296a8dc66000439c104c1351
|
||||
|
@ -1,163 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=sip
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 flag-o-matic multiprocessing pypi qmake-utils
|
||||
|
||||
DESCRIPTION="Python bindings for the Qt framework"
|
||||
HOMEPAGE="
|
||||
https://www.riverbankcomputing.com/software/pyqt/
|
||||
https://pypi.org/project/PyQt5/
|
||||
"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv x86"
|
||||
|
||||
# TODO: QtNfc, QtQuick3D, QtRemoteObjects
|
||||
IUSE="
|
||||
bluetooth dbus debug declarative designer examples gles2-only gui help location
|
||||
multimedia network opengl positioning printsupport sensors serialport speech
|
||||
sql +ssl svg testlib webchannel websockets widgets x11extras xmlpatterns
|
||||
"
|
||||
|
||||
# The requirements below were extracted from the qmake_QT declarations
|
||||
# in project.py and from the output of 'grep -r "%Import " ${S}/sip'
|
||||
REQUIRED_USE="
|
||||
bluetooth? ( gui )
|
||||
declarative? ( gui network )
|
||||
designer? ( widgets )
|
||||
help? ( gui widgets )
|
||||
location? ( positioning )
|
||||
multimedia? ( gui network )
|
||||
opengl? ( gui widgets )
|
||||
positioning? ( gui )
|
||||
printsupport? ( gui widgets )
|
||||
sensors? ( gui )
|
||||
serialport? ( gui )
|
||||
sql? ( widgets )
|
||||
svg? ( gui widgets )
|
||||
testlib? ( widgets )
|
||||
webchannel? ( network )
|
||||
websockets? ( network )
|
||||
widgets? ( gui )
|
||||
xmlpatterns? ( network )
|
||||
"
|
||||
|
||||
# Minimal supported version of Qt.
|
||||
QT_PV="5.15:5"
|
||||
|
||||
DEPEND="
|
||||
>=dev-qt/qtcore-${QT_PV}
|
||||
>=dev-qt/qtxml-${QT_PV}
|
||||
bluetooth? ( >=dev-qt/qtbluetooth-${QT_PV} )
|
||||
dbus? (
|
||||
dev-python/dbus-python[${PYTHON_USEDEP}]
|
||||
>=dev-qt/qtdbus-${QT_PV}
|
||||
sys-apps/dbus
|
||||
)
|
||||
declarative? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] )
|
||||
designer? ( >=dev-qt/designer-${QT_PV} )
|
||||
gui? ( >=dev-qt/qtgui-${QT_PV}[gles2-only=] )
|
||||
help? ( >=dev-qt/qthelp-${QT_PV} )
|
||||
location? ( >=dev-qt/qtlocation-${QT_PV} )
|
||||
multimedia? ( >=dev-qt/qtmultimedia-${QT_PV}[widgets?] )
|
||||
network? ( >=dev-qt/qtnetwork-${QT_PV}[ssl=] )
|
||||
opengl? ( >=dev-qt/qtopengl-${QT_PV} )
|
||||
positioning? ( >=dev-qt/qtpositioning-${QT_PV} )
|
||||
printsupport? ( >=dev-qt/qtprintsupport-${QT_PV} )
|
||||
sensors? ( >=dev-qt/qtsensors-${QT_PV} )
|
||||
serialport? ( >=dev-qt/qtserialport-${QT_PV} )
|
||||
speech? ( >=dev-qt/qtspeech-${QT_PV} )
|
||||
sql? ( >=dev-qt/qtsql-${QT_PV} )
|
||||
svg? ( >=dev-qt/qtsvg-${QT_PV} )
|
||||
testlib? ( >=dev-qt/qttest-${QT_PV} )
|
||||
webchannel? ( >=dev-qt/qtwebchannel-${QT_PV} )
|
||||
websockets? ( >=dev-qt/qtwebsockets-${QT_PV} )
|
||||
widgets? ( >=dev-qt/qtwidgets-${QT_PV} )
|
||||
x11extras? ( >=dev-qt/qtx11extras-${QT_PV} )
|
||||
xmlpatterns? ( >=dev-qt/qtxmlpatterns-${QT_PV} )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
>=dev-python/PyQt5-sip-12.11:=[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-python/PyQt-builder-1.14.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/sip-6.6.2[${PYTHON_USEDEP}]
|
||||
>=dev-qt/qtcore-${QT_PV}
|
||||
dbus? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
python_configure_all() {
|
||||
append-cxxflags ${CPPFLAGS} # respect CPPFLAGS notably for DISTUTILS_EXT=1
|
||||
|
||||
pyqt_use_enable() {
|
||||
local state=$(usex ${1} --enable= --disable=)
|
||||
shift
|
||||
echo ${*/#/${state}}
|
||||
}
|
||||
|
||||
DISTUTILS_ARGS=(
|
||||
--jobs="$(makeopts_jobs)"
|
||||
--qmake="$(qt5_get_bindir)"/qmake
|
||||
--qmake-setting="$(qt5_get_qmake_args)"
|
||||
--verbose
|
||||
--confirm-license
|
||||
|
||||
--enable=pylupdate
|
||||
--enable=pyrcc
|
||||
--enable=Qt
|
||||
--enable=QtCore
|
||||
$(pyqt_use_enable bluetooth QtBluetooth)
|
||||
$(pyqt_use_enable dbus QtDBus)
|
||||
$(pyqt_use_enable declarative QtQml QtQuick \
|
||||
$(usev widgets QtQuickWidgets))
|
||||
$(pyqt_use_enable designer QtDesigner)
|
||||
$(pyqt_use_enable gui QtGui \
|
||||
$(use gles2-only && echo _QOpenGLFunctions_ES2 || echo _QOpenGLFunctions_{2_0,2_1,4_1_Core}))
|
||||
$(pyqt_use_enable help QtHelp)
|
||||
$(pyqt_use_enable location QtLocation)
|
||||
$(pyqt_use_enable multimedia QtMultimedia \
|
||||
$(usev widgets QtMultimediaWidgets))
|
||||
$(pyqt_use_enable network QtNetwork)
|
||||
$(pyqt_use_enable opengl QtOpenGL)
|
||||
$(pyqt_use_enable positioning QtPositioning)
|
||||
$(pyqt_use_enable printsupport QtPrintSupport)
|
||||
$(pyqt_use_enable sensors QtSensors)
|
||||
$(pyqt_use_enable serialport QtSerialPort)
|
||||
$(pyqt_use_enable speech QtTextToSpeech)
|
||||
$(pyqt_use_enable sql QtSql)
|
||||
$(pyqt_use_enable svg QtSvg)
|
||||
$(pyqt_use_enable testlib QtTest)
|
||||
$(pyqt_use_enable webchannel QtWebChannel)
|
||||
$(pyqt_use_enable websockets QtWebSockets)
|
||||
$(pyqt_use_enable widgets QtWidgets)
|
||||
$(pyqt_use_enable x11extras QtX11Extras)
|
||||
--enable=QtXml
|
||||
$(pyqt_use_enable xmlpatterns QtXmlPatterns)
|
||||
|
||||
$(usev debug '--debug --qml-debug --tracing')
|
||||
|
||||
$(usev !dbus --no-dbus-python)
|
||||
# note: upstream currently intentionally skips installing these two
|
||||
# plugins when using wheels w/ pep517 so, *if* something does need
|
||||
# them, it will need to be handled manually
|
||||
$(usev !declarative --no-qml-plugin)
|
||||
$(usev !designer --no-designer-plugin)
|
||||
|
||||
$(usev gles2-only --disabled-feature=PyQt_Desktop_OpenGL)
|
||||
$(usev !ssl --disabled-feature=PyQt_SSL)
|
||||
)
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
einstalldocs
|
||||
use examples && dodoc -r examples
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
AUX colour-setup.patch 148 BLAKE2B 41fbf09fa54d8ba88a7b01c240bbb9b26b14f48ecd8d677d5acd16e41d53151f8a443857353be6c593506176e4786caa0001602289add34012e59a463e3c9200 SHA512 2def5f03812b78297fab62f9b7233f32e1923d845f495e1fe3ec18988b30d04b2f6c8908122c87c1738cdec6ac6665c1a41b422fd9a654d08e29ecfa16590eb9
|
||||
DIST colour-0.1.5.tar.gz 24776 BLAKE2B 71e2b44c6379f73fa1a70781ae2559e37122e2db982d1f98ab5c4432b4e95a2c60d6489a88025499c36d288f3e9269e65caf9560d7772e2c1c050266c284816f SHA512 09a5160862bf10cd5f4a94e43c63d6f2a5db43bcaae0e9d8f66900113ec04471e22d0bec7412f0289c6f1e6871c1a544f5be36266aa8d6fd5ec274bd461d9df8
|
||||
EBUILD colour-0.1.5.ebuild 475 BLAKE2B b3f844944e3cb02e62f2bd7dfd18616bf801fbb590702bb387f7da66040d32d338869c2820bbf45f3fb6e348278669fbb797d7ed3e28603cd865c64c84e9d11b SHA512 d7608905f07bec25b98bb6aa825a7378081623bfeb659a002073d8829382e4e2b37fc3de9a175d5509a22d5b03627ee6d0630c486e7e09b2d08a1abaa52f636d
|
||||
EBUILD colour-0.1.5.ebuild 553 BLAKE2B 35fcc11aee538bebbd27ad9c801e5f83f79fd309fc338e83cf77faeef15d6c16f47829d2aa478161a116ac8153e147eb945dc2eff4306fc7cf461e2e3bb4552c SHA512 38ce8ee22d0e2dd239879da394043109ce1d384288121750f91b2f020cbf8f404c0e20330ce8fe8dc850b52976f310630665d7e93d4982b5e5d9141676af78d2
|
||||
MISC metadata.xml 1154 BLAKE2B e070d8ad663acfe733698b9bc4cc807a232e7a320f0a50864c327792fe5faf1e2e45f7a6676ac9f62bfa2fe88816faa9032691ec0a617c10e1ca4e9f21ba40c1 SHA512 881477f5a9e6ef75bb460044baff36e6b586bea8b8d43307f0a7c07738485bf20144db6a7f8196c8c68e45ec80299a9439a4aff53d152b669de4735969eee5b9
|
||||
|
@ -1,3 +1,3 @@
|
||||
DIST doublex-expects-0.7.1.gh.tar.gz 6315 BLAKE2B 4af2832244578237821ba29baec54ffe1f226dfb1c92a5a03122c1a30c0e78d472ab8f75e6412a9014b97265120b5c60a8b5674cb42be58b46397a537bd534bf SHA512 2aaff2e58556ed9eb91ebb418e65058367411e011e843afb5adb08ab69705b6bdfb478d3052aae093ad1c1a1b49ba1e084e4c5510acde4874182a658330e3448
|
||||
EBUILD doublex-expects-0.7.1-r1.ebuild 821 BLAKE2B b19b79d1f51b9d4b0b09b905b721db1fea42570fa5ffa37362a4ee5e7e8221880706e37ab83dd230ef2313784fde1a781a5b19c0143b52ea919155ef53532d12 SHA512 054fcc62017ae3c8803ae3dcefa6b8a340817f9becd681a1253372ac48bcd2d99913f9f9d458278e9fcb4e56e0c86921830f8f19a82724482e12eaed91c20831
|
||||
EBUILD doublex-expects-0.7.1-r1.ebuild 822 BLAKE2B 0a9d0de38a36fce75ecee56ec5843d44bdb2967b0c212658c989f217e7a4fa4cac7b88271736fce491bc9a72343148d70fdb1bcb4c176fed5a274b3ae319bfa0 SHA512 5feda4de87362add9cbecac0ffa05c5d7ce5030a1c59975b0e9a954ed7f03272c70aa074f7a3a02e99df766d086c1995ec8e0250128229fed113e4a495c9de96
|
||||
MISC metadata.xml 317 BLAKE2B 0f09791cd04735d24fff9dac60fa012fb5aa919231dc915f56142c8c2c9464f7eb0fe45c8f1b8392beffaa5cd93e4cad989d53fbc87d408a517b2760c53403a6 SHA512 1755a9a5c9a3734071c20f2e0f7db8d1139f03d1c3f758baa08a3eca99a8c0cd12b66d24b01238715a488a7bb9205dd5374c4195d6c4e5a9e2421772ee7a84bf
|
||||
|
@ -1,3 +1,3 @@
|
||||
DIST expects-0.9.0.tar.gz 27901 BLAKE2B b504f0d7dc91f76a2e036693873efaecdbe1e96a376d930924e00268d6374fad2bdc953e7f684f2ad44bf4d9ca962c377d753ef627304a036c1197b23230a2b0 SHA512 82465cfa48d2c28e6584bc05b9895bf5a0ebb90f43ac828c8e2888a10695c24da7833560880fcd8e7deef9996187ec7be7d993fc9973e2887a66b0b463125fff
|
||||
EBUILD expects-0.9.0-r1.ebuild 629 BLAKE2B ff3975add235b183072ba5cb0d8ac91ecbf9ab379ed43a7c068d3812e29076600cd06b2208bcc1edebdea878fbc4b2a06ead4ef9a168daa0b3bacdfb8fab477e SHA512 e02d9c5522c286bfdffa21b47d59e2801627d5a5f40763f14bf5079550e050ec8df670285c3e5fa2947bf2e6f3dcb7a463db1bb91ded08438a95d0085ab42167
|
||||
EBUILD expects-0.9.0-r1.ebuild 630 BLAKE2B 058b3d7f09c00b35993b4e297c80aee25d32470628226c2f525f5b21d1a36ab762da04f93381f1a46434b770c37ec64a55ac719595d232f6e5d32cc79d04e51c SHA512 641a9e16be6229d889e005a0d254445c5a4c1ed9104edc1367bc7a91704ab6672683065b18531dd91ea78b76e9746c7f74274a2a144d0c5f00ef366dd22ce6c0
|
||||
MISC metadata.xml 301 BLAKE2B ea9e8d62d7ec7b530f2eb77397eaf0d77dc501b043a01c5eb0df6076f0025e7816a55e7b8f8dcf163841690d01b0587324e88a9893a3e417a3c87ba18188d462 SHA512 bc68cee24b7a813199a4fd6c6c9965ef539bed9da7e954a7d9b9acd87d1b2fedc632cbab0ff86e63be2e93d7e74409c042ddcf16bbc722f3413e40bd86c141ea
|
||||
|
@ -1,5 +1,3 @@
|
||||
DIST jsonschema-spec-0.1.6.gh.tar.gz 36043 BLAKE2B e85cad336d6b5ed11d6a51c8fab2c28826f6a9836ad50d2423b23bef047c338307d3e9430f1d151dbaf7a92574c9899dbfd016c570456996250e8d7634373313 SHA512 78ea06a78fd25006d270e2c5033645133ee79b0f45cbfc54e250d4225a36beac59cf9aa92f15fd51bd101fac20fee990d693ab91d8343cd6a298d71735c80884
|
||||
DIST jsonschema-spec-0.2.4.gh.tar.gz 38882 BLAKE2B 0c7d1179003ef5cd8eb0a164e9e13473df233fc72dbe3d8f75e967bb238de7267a0ef154ac3a40d8ef1ee3bd34568bfd16baae33b6ecc88077fabf0bdf22c299 SHA512 87f0a227e5d12badaab30a6b512f735db968ecd25856d9005e7c7f265187a3092e12ee9c900b035c5f927f250cc9743547dab1bba5195dc7534cab256b1800c2
|
||||
EBUILD jsonschema-spec-0.1.6.ebuild 888 BLAKE2B 28fb544946d9c862e171fc4cc7d4ac36f92e4e97f04bf4f5c71c75131587a80fa3771a94adc501d61c5bfea927b12536129d0992484b6e8e5b715346d6f51ef9 SHA512 442404a086a2e0b50e4622cc5e991fdb1a608b6cef0934010e8b746935fe4c4c4219e1539a74fbff3a6fb463137a5285c3f1e4d650f94cabc49dc27fff0bbb6c
|
||||
EBUILD jsonschema-spec-0.2.4.ebuild 985 BLAKE2B 296381afc4cae557a752a59795ecb8a7f79fd5d68f2fb4e18241c507b91a4ec1052b319768c73198efac0b82806cce6371448a5534001a5fc2a4ef7917123286 SHA512 4e5757175887c98cf65c50cb7d44b9de0cd9d212e986b7330da4d393e9c28c501156227b73b36dc5abf0800d942e2d429618caa0ac6632f18d6103473b86a716
|
||||
MISC metadata.xml 404 BLAKE2B 2e76fe1eb441114cff26e2e60d36d2d38da053ca524a29f568d2b4af325021ab560545da43cdd0d5d3404e73ebcdb9b534da0b7de52c2acee5d3f2ed6511ee4e SHA512 58238e60fc20d210167afe2abcfdbbd826a693b5d587953437294c2c0e1ea9161486e2c583d29a7e2a0c8343e70e7688213ed011eacd155c53e232b336986701
|
||||
|
@ -1,38 +0,0 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=poetry
|
||||
PYTHON_COMPAT=( pypy3 python3_{10..11} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="JSONSchema Spec with object-oriented paths"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/jsonschema-spec/
|
||||
https://github.com/p1c2u/jsonschema-spec/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/p1c2u/jsonschema-spec/archive/${PV}.tar.gz
|
||||
-> ${P}.gh.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
|
||||
|
||||
RDEPEND="
|
||||
<dev-python/jsonschema-4.18[${PYTHON_USEDEP}]
|
||||
>=dev-python/jsonschema-4.0.0[${PYTHON_USEDEP}]
|
||||
dev-python/pathable[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
|
||||
dev-python/pathable[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
sed -e '/--cov/d' -i pyproject.toml || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
DIST keep-2.10.1.tar.gz 13044 BLAKE2B 178207ccad7f0feec2d9a57f0e5345e0ef9853bedd3f8efc8afac5f81c35e74ee6d3dab66b75ceeac4a3d76f2297ec645bae61f2f1e78218e910a2537984f4cd SHA512 d4144bd7f6f623b1c9c9468f5596818f47cba8a9bc80e75ebaf75f147823a01da53ef84c76b9f24240a8d0fbdb770c5cdf108c276ecdcd882ac9db0c1608480f
|
||||
EBUILD keep-2.10.1-r2.ebuild 1362 BLAKE2B 15edf2d3d7ffd6a86a8491a2cc06c9879a333556b96b9172c5e1f3db1a10823359822f669c1fda3e42ce7ecce3fbd52a6242967184e0db86ec872bd2ee700827 SHA512 9801ddf41fc02460230b67e46e2c5cc3f6f0ec91036d76e0b33140f0e26fa2de8a158cbe0bf279bfcecd7d7e224a0ba0df12e4f325d50292972c0281697ddf25
|
||||
EBUILD keep-2.10.1-r2.ebuild 1362 BLAKE2B fa99d153d4d84ff20b7ffc60ed43d76817f1ed93c919093866829c17ea426428d2c43b1f17aac73078be7edf4eedecc9623810fd133ac1b5e01ab5eef2a90daf SHA512 6d545b347744b9c663c6217f99c3d5a929bd3a58b0ba4299cb00eda25257fbab1e282ede7395a74642c2322aec8728d4a454ad549f79270e76ff3f5fd7b8beaf
|
||||
MISC metadata.xml 400 BLAKE2B 62327dcf8653077772b2af0a0c3ca33cb4e3ddc06f53803a01a257611ea828ca8536bd2e6b6ed6f0d86010580f590ced0931d09e8cf9aa9a79aff8def238cd43 SHA512 87ed56a0bfb1fc56de91e0b59a1dd0b8ec08b90d5b2746a27195d3a100856bde29dbda8594eb3fb301a64c58f3a9edb0d4a739c96e30e8ac19aebd6b1c8fed2d
|
||||
|
@ -1,3 +1,3 @@
|
||||
DIST locket.py-1.0.0.gh.tar.gz 6541 BLAKE2B 334314c6e9149b7c9d87474c478afe497fe976afdae9e7e885a9f1c5cb7190bbf44be132bb84de2a378bd011844a05b12ee3643aefa70ba04b8d6f645e1882e6 SHA512 7b8da1ba395613fb5913fc90db982a74c1355e5b98910b5fccdaf28a326f2465409751f2e4efaa86749961dc4e95959640067c76485477187a462f52d8497c9f
|
||||
EBUILD locket-1.0.0.ebuild 658 BLAKE2B 25da77e563fcd95c1e183bc26b60e0a6c8d48f75670e1c2ecdbd9c35aaf8fc8be78a7586b761b89c7b91b0dc5536a7f7e403203da2ddd2b2578b15542c6a4127 SHA512 41be0e91d43336ee501354a8ebab3c179b14b3cc601c566285f1a165b318fc453841240eedda99055cde5d1ebb906046f6392611347ce54fe08ad6dd548b3307
|
||||
EBUILD locket-1.0.0.ebuild 659 BLAKE2B 101d73f901bce117a1081eeac852ddc175229f0794f1836b9bad2b823ff6936d30611a810b9473075db5ea3479580cb1574d971f87ffb999df4f8b2da8f386dd SHA512 86e4590b350ee6d378d24af5ba684135b87dcae0c0d8fda1e7916132482036dd2ab21cb5cad01578870a5467fadc9c382cd846f6be2fde0060b5fa72495662f7
|
||||
MISC metadata.xml 408 BLAKE2B 3336a065a48ac13afdd55512bc48a5303e2b5981683e266a7e1bd8225dd55d045b8f42b470344f5f762bcbdbd31f7685c34c9355231ed66f88d1e59101b34d54 SHA512 6fcdaa2acf461d0fa447b911405610b9ab8047996c79d132e445a984da7f462a1f43b81a18b781cf2c3302bea3ef088957a94cdf3459802c9922f9a6a96097e9
|
||||
|
@ -1,3 +1,5 @@
|
||||
DIST mamba-0.11.2.gh.tar.gz 37370 BLAKE2B 90228aa9668c5c79161aee79d92a9409e5df5d9d71b94f2ae8401ec5eea32ed45cf1b1a72eb596b6e24f140bf053bca4cec848830ae83c24b108ddb4a2bcd148 SHA512 8ca6207c9df7b3388db8ecabd13456e54d8811c24f695ccc638c90bb2c975268f9e803533808f9b099651ee4744376fad3b58eaa84a6c97605631368f979915c
|
||||
DIST mamba-0.11.3.gh.tar.gz 37456 BLAKE2B e7e9fc53783cf238745d6d97f335443a569d3a88e4a26fb74c024f305eca707b3d73ea1d23d8a9b2d3463be0c31bfa1f30a6d2ec1ded58c6140909591fe961b8 SHA512 0d4ee434ff2a42dc95a8a5c94980fa224652e38b1ed7e617383882b38a8327861464424f78fb46b2f3e08dabb241bb0e1e9e6734dd68376a43bc3a5b41c01d8c
|
||||
EBUILD mamba-0.11.2-r1.ebuild 968 BLAKE2B 5bc33fcf6ed0a800375b4e247713a1d4f67028264803beef3a9598825c211932e90314669bc056418460b9e6ebaed5cf1f0bcef50649f1128470207cbe09aec8 SHA512 b4b9e13509b709259be6038daf41050d74ee6ba9fe671d68453f180235c0785f7f3bcdb48de6f17f0665b7216ec773b5af692853828401dadb5b8ceed9c62887
|
||||
MISC metadata.xml 300 BLAKE2B 890c49024db1a2ad04de3245e808924edce1e5007108c80523a1518318d92c5043945fb65324016853b583faff3a8cb03ab64a4d1aa421d3034ef54dd4f71a33 SHA512 0e1dc6cfd109165e1061f7156ddb366ec19a75e0bf5859970bb29eb3ed6dca659e9105975f27f086ce644bcf6342d7e53ef704545312c93f5de5af8fc45867e1
|
||||
EBUILD mamba-0.11.3.ebuild 971 BLAKE2B a43086f4585ff47c7a9e74ad351c07d6bbf4aeb69fd90319962cd40ec49cc1be65aa1fb7596119e167a4c51e784057121e1997947862737f2997cf9004f955a5 SHA512 9450a04dacbbe89745cc4dc1b4289ddad01b1c577ed766e81e4fadabe09e062962b0fd5a6774715c90779757bf58f8f0712e4ca84f41615e84f58780c99aa198
|
||||
MISC metadata.xml 392 BLAKE2B fccde2b98ea9643e4cbb2cc8d0ec4ac3510564ef90232449166eac0e45992dda072c627ad118f8807891ea940c0b421e02722797e240b3e1bbe57cad3ccb8c15 SHA512 fbf5842f43118063cafd9e8df2ec34bbf0e62b9c5dc89a5b25ac1c4274f5b4638e4c2000e7c27c37684752e22ef3ec03440b889228b8a1704f996b08a0726e7d
|
||||
|
@ -0,0 +1,44 @@
|
||||
# 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..12} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Python test runner born under the banner of Behavior Driven Development"
|
||||
HOMEPAGE="
|
||||
https://nestorsalceda.com/mamba/
|
||||
https://github.com/nestorsalceda/mamba/
|
||||
https://pypi.org/project/mamba/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/nestorsalceda/mamba/archive/v${PV}.tar.gz
|
||||
-> ${P}.gh.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/clint-0.3.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/coverage-3.7.1[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
${RDEPEND}
|
||||
>=dev-python/doublex-expects-0.7.0_rc1[${PYTHON_USEDEP}]
|
||||
>=dev-python/expects-0.8.0_rc2[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_sphinx docs --no-autodoc
|
||||
|
||||
python_test() {
|
||||
"${EPYTHON}" -m mamba.cli || die "Tests failed under ${EPYTHON}"
|
||||
}
|
@ -1,9 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!--maintainer-needed-->
|
||||
<upstream>
|
||||
<remote-id type="pypi">mamba</remote-id>
|
||||
<remote-id type="github">nestorsalceda/mamba</remote-id>
|
||||
</upstream>
|
||||
<maintainer type="project">
|
||||
<email>python@gentoo.org</email>
|
||||
<name>Python</name>
|
||||
</maintainer>
|
||||
<stabilize-allarches/>
|
||||
<upstream>
|
||||
<remote-id type="github">nestorsalceda/mamba</remote-id>
|
||||
<remote-id type="pypi">mamba</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
|
@ -1,3 +1,3 @@
|
||||
DIST matterhook-0.2.tar.gz 4458 BLAKE2B 83dae9d38eaa9de3abdca4925378475660ab6f9571565f9275425cb9579397c2f3d106735d4268b7045d6af2572bdb8e1f60aa89030b1fa44c4c5c1b19fcd106 SHA512 aa476a00a5b571c5c8bb21eccc5b1c325e0932da7e4f8095e3ad29356afd4716384abfa9e4927a820e6d1fcf8e62a516943f6372d90cd7a9e76d0292c352c483
|
||||
EBUILD matterhook-0.2-r2.ebuild 415 BLAKE2B 4899b68ac9b642d5367fdd864b5dd59f93631f50a7c05a8157af9e1d6e9f0f92bf65752f1cfbe55a2c3cab8dc2092d6a31f0284e6de0fad05cadd652dad52e61 SHA512 1ca44053ceda614edb8c7d043131fed6d4043a85f102e4dcbb79d0343f551327e0f1c3513925b82f917d992c122bae69f9597cd467201b84a185a31c6fb2cd79
|
||||
EBUILD matterhook-0.2-r2.ebuild 416 BLAKE2B 1ff5a4660c67d5fcc54b114ea5a546f768a61f4a9b80edff17e38e785dbc6cdb92d33e98f217182976dadc7fd37f31900133f94d0052f988d9b41725944a457b SHA512 80c0178ef60ca4352ed21d5ffb62a000a7f97125a226bf1ebc1adb974e810d9da9c272d9f49577ed402bec0c44348b9e7daac349f1934b328f5f687aae3d465b
|
||||
MISC metadata.xml 376 BLAKE2B 9daed1ae92c654a29e69a651f3c8db46b1d92176799f2f0f0a04c9984d2326d30b7472bb1ca79be73537a9daa5e033cfd6e6691d9b84d1e8e6454bd7628db1f6 SHA512 3d71ea32de49c887a0229923e832e2e8ee6ac1194391cdf05a8ef21c8e2cad0679852de28d24cf955f087176d7a469cb27da48b02d739b86c768c0ad17a6f6ba
|
||||
|
@ -1,34 +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_{9..11} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
MY_P=python-nbxmpp-${PV}
|
||||
DESCRIPTION="Python library to use Jabber/XMPP networks in a non-blocking way"
|
||||
HOMEPAGE="
|
||||
https://dev.gajim.org/gajim/python-nbxmpp/
|
||||
https://pypi.org/project/nbxmpp/
|
||||
"
|
||||
SRC_URI="
|
||||
https://dev.gajim.org/gajim/python-nbxmpp/-/archive/${PV}/${MY_P}.tar.bz2
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="GPL-3"
|
||||
KEYWORDS="amd64 ~arm64 ~riscv x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/gobject-introspection
|
||||
net-libs/libsoup:2.4[introspection]
|
||||
dev-python/idna[${PYTHON_USEDEP}]
|
||||
dev-python/precis-i18n[${PYTHON_USEDEP}]
|
||||
dev-python/pygobject[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests unittest
|
@ -1,3 +1,5 @@
|
||||
DIST oslo.utils-6.2.1.tar.gz 104079 BLAKE2B de29980ba15488005b20190b842a499ce5964a231c1350d2e6ed43fdb4cb21909f7a31fcd21761bf01c632b82966ffa8c73ffb69e42f278e7a65d2541ae6b08a SHA512 c72be6521fa15784064c114a972943a583033be6b53b81ab955cc0601c72ef0673e1e732c492bbd798270318ec89932d7a90725f477b1cc123b173f4660d4b2a
|
||||
DIST oslo.utils-6.3.0.tar.gz 104397 BLAKE2B 1195363df16e103f49d783c644bb060719fa3b43a549e229bd1c6b8f682e36b6135fb33284f536c08460892ae441c276d9e0445f30c6a5bc6d260b9a0f4bef40 SHA512 d7d1f160865238d4dd49dec891d275455befcee1926920f22409142bbab47fe3e287ad280a72f11baa99c49beaf1d0dc52745307888b8a3edda4cb9052443336
|
||||
EBUILD oslo-utils-6.2.1-r1.ebuild 1499 BLAKE2B 19f6956783be8e54512f2d292c29197bd09ca9a2775d9db4196b4b7754a98d2620bf812c6872a9c2981330fbeb91ed7be3250114b33e6df70383494820800996 SHA512 972d1408d196652bca3d91c3e2bbaaf7c22511201872f26696d4d6e024ac81f402cd7f895cd93ff7c8a2103f7c7cc7982eebc3f7e63c195a62abc4439d331356
|
||||
EBUILD oslo-utils-6.3.0.ebuild 1509 BLAKE2B 64a098a39c605daf1cf8766d49133d3aefce82406a38508e27d2e8bf6cc5f88aa4c7ca5dd011e48bd6b2a31bba2b5fc52d9123077779b3052a4a3ffe923ac1eb SHA512 d4bf0a6d081dc8ca3dea0d76d8e797073bf5cc7a6940715596e491b0730976928131fe5986f9b239a54c75d4d269627261bb953a61cac923003150fa1b50535f
|
||||
MISC metadata.xml 667 BLAKE2B 2d3b1f3c01b74c3db8239b0711f6b10488cc17b214509a64607f3112e7100eb39f2d8774639d47a40cbad6786e7dee1430327a78b357b516325e5d06babcdee5 SHA512 e97a4a1f3718a69d39706d816f17018a7d57fd81702cd88ee01f9b849405f2f08769d381c5e41be84d8ae0c69a2a977b0dcb3ee1a481502ebf49f5ad6a5d6a95
|
||||
|
@ -0,0 +1,57 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYPI_PN=${PN/-/.}
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Oslo Utility library"
|
||||
HOMEPAGE="
|
||||
https://opendev.org/openstack/oslo.utils/
|
||||
https://github.com/openstack/oslo.utils/
|
||||
https://pypi.org/project/oslo.utils/
|
||||
"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
|
||||
>=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
|
||||
>=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyparsing-2.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/packaging-20.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]
|
||||
dev-python/tzdata[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-python/pbr-2.2.0[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
>=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests unittest
|
||||
|
||||
python_compile() {
|
||||
distutils-r1_python_compile
|
||||
find "${BUILD_DIR}"/install -name '*eventletutils*' -delete || die
|
||||
}
|
||||
|
||||
python_test() {
|
||||
cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
|
||||
eunittest
|
||||
}
|
@ -0,0 +1,150 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=maturin
|
||||
PYTHON_COMPAT=( pypy3 python3_{10..12} )
|
||||
|
||||
CRATES="
|
||||
ahash@0.8.6
|
||||
aho-corasick@1.0.2
|
||||
autocfg@1.1.0
|
||||
base64@0.21.5
|
||||
bitflags@1.3.2
|
||||
cc@1.0.79
|
||||
cfg-if@1.0.0
|
||||
enum_dispatch@0.3.12
|
||||
equivalent@1.0.1
|
||||
form_urlencoded@1.2.0
|
||||
getrandom@0.2.10
|
||||
hashbrown@0.14.0
|
||||
heck@0.4.1
|
||||
idna@0.4.0
|
||||
indexmap@2.0.0
|
||||
indoc@2.0.4
|
||||
itoa@1.0.8
|
||||
jiter@0.0.4
|
||||
lexical-core@0.8.5
|
||||
lexical-parse-float@0.8.5
|
||||
lexical-parse-integer@0.8.6
|
||||
lexical-util@0.8.5
|
||||
lexical-write-float@0.8.5
|
||||
lexical-write-integer@0.8.5
|
||||
libc@0.2.147
|
||||
lock_api@0.4.10
|
||||
memchr@2.6.3
|
||||
memoffset@0.9.0
|
||||
num-bigint@0.4.4
|
||||
num-integer@0.1.45
|
||||
num-traits@0.2.16
|
||||
once_cell@1.18.0
|
||||
parking_lot@0.12.1
|
||||
parking_lot_core@0.9.8
|
||||
percent-encoding@2.3.0
|
||||
proc-macro2@1.0.69
|
||||
pyo3-build-config@0.20.0
|
||||
pyo3-ffi@0.20.0
|
||||
pyo3-macros-backend@0.20.0
|
||||
pyo3-macros@0.20.0
|
||||
pyo3@0.20.0
|
||||
python3-dll-a@0.2.9
|
||||
quote@1.0.29
|
||||
redox_syscall@0.3.5
|
||||
regex-automata@0.4.3
|
||||
regex-syntax@0.8.2
|
||||
regex@1.10.2
|
||||
rustversion@1.0.13
|
||||
ryu@1.0.14
|
||||
scopeguard@1.1.0
|
||||
serde@1.0.190
|
||||
serde_derive@1.0.190
|
||||
serde_json@1.0.108
|
||||
smallvec@1.11.1
|
||||
speedate@0.13.0
|
||||
static_assertions@1.1.0
|
||||
strum@0.25.0
|
||||
strum_macros@0.25.3
|
||||
syn@2.0.38
|
||||
target-lexicon@0.12.9
|
||||
tinyvec@1.6.0
|
||||
tinyvec_macros@0.1.1
|
||||
unicode-bidi@0.3.13
|
||||
unicode-ident@1.0.10
|
||||
unicode-normalization@0.1.22
|
||||
unindent@0.2.3
|
||||
url@2.4.1
|
||||
uuid@1.5.0
|
||||
version_check@0.9.4
|
||||
wasi@0.11.0+wasi-snapshot-preview1
|
||||
windows-targets@0.48.1
|
||||
windows_aarch64_gnullvm@0.48.0
|
||||
windows_aarch64_msvc@0.48.0
|
||||
windows_i686_gnu@0.48.0
|
||||
windows_i686_msvc@0.48.0
|
||||
windows_x86_64_gnu@0.48.0
|
||||
windows_x86_64_gnullvm@0.48.0
|
||||
windows_x86_64_msvc@0.48.0
|
||||
zerocopy-derive@0.7.20
|
||||
zerocopy@0.7.20
|
||||
"
|
||||
|
||||
inherit cargo distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Core validation logic for pydantic written in Rust"
|
||||
HOMEPAGE="
|
||||
https://github.com/pydantic/pydantic-core/
|
||||
https://pypi.org/project/pydantic-core/
|
||||
"
|
||||
SRC_URI+="
|
||||
${CARGO_CRATE_URIS}
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
# Dependent crate licenses
|
||||
LICENSE+="
|
||||
Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016
|
||||
|| ( Apache-2.0 Boost-1.0 )
|
||||
"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/typing-extensions-4.7.1[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
>=virtual/rust-1.70.0
|
||||
test? (
|
||||
>=dev-python/dirty-equals-0.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/hypothesis-6.63.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-mock-3.10.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-timeout-2.1.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/pydantic-1.10.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytz-2022.7.1[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/pydantic_core/_pydantic_core.*.so"
|
||||
|
||||
src_prepare() {
|
||||
sed -i -e '/--benchmark/d' pyproject.toml || die
|
||||
sed -i -e '/^strip/d' Cargo.toml || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_IGNORE=(
|
||||
tests/benchmarks
|
||||
)
|
||||
local EPYTEST_DESELECT=(
|
||||
# TODO: recursion till segfault
|
||||
tests/serializers/test_functions.py::test_recursive_call
|
||||
)
|
||||
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
rm -rf pydantic_core || die
|
||||
epytest -p pytest_mock -p timeout
|
||||
}
|
@ -1,5 +1,3 @@
|
||||
DIST pytest-bdd-6.1.1.gh.tar.gz 79549 BLAKE2B 0de77a2a46c852dcd7b344b385deea6473ec32dfec2eec610ae04d9d192d42eaf7aa3b1455549dc602e46c24edf078c558f2564aa9dd7f42a2beea36458438ea SHA512 69cd345d4a819a84a811ca2a5825f87a46fa4d063b9a852308d36e4f15058a27c45b170dadf684e68322d3380654f985b8ef153e34ad42ef33e0b595f8dc9d96
|
||||
DIST pytest-bdd-7.0.0.gh.tar.gz 80196 BLAKE2B cb34f5439959e93ccb68c566e284d1789a183dd85c1c3088d0c929373e88bd994de2ac159ea942119183976e64903cf7ca8f2b2137aad749f8b67728c541ee89 SHA512 0f95334a56ff7ccc774e5b94b91d232b829fb308a21ce975c88720493abbefa9e76fcd35cc2ca9bbbf0fd2e38b6f20f5be6cf59368aab4cf70abdaf24c7fd5ed
|
||||
EBUILD pytest-bdd-6.1.1.ebuild 1107 BLAKE2B 06ecdb413add11a1173c9c83a711d79d1f3b13109f19db30b7eaae42f68613c76147e52afeef300e3762c3e8148ddf195f5cfdedc4da5a00b628429c19a6aeb3 SHA512 00708a10ab77e3db8a05bb2ba569f7fbfc82264856310839c6c66425156e3a52e99004510916184a26151d605888b7adf4f62bf910ece9be08c9a6b3075f90da
|
||||
EBUILD pytest-bdd-7.0.0.ebuild 1112 BLAKE2B 34938712d30914672175472ee0473854eeef5130b18f7b1783da716ec67bc58372bff5845a960b4b0330b9075676321053f6e5b8adc9627e395ce9a4fd2e3bef SHA512 8840a217fd671c215228170007e960c108bf5c1eb798bd4f34f8e3cd4842fa905ed93af989d7e3302e9aa8dbbd4001ec92d4681515c8a5623e98289d72b8f1ab
|
||||
MISC metadata.xml 404 BLAKE2B b5bdea28ab998a54bd0b76e38c37a77af74d4ae149bfc5af47e7466b7c13ae6a5784be0ecc3e6cd8ccbbd5164dea02d704f596b7e00d22b0d640c4ad3dd13b41 SHA512 97800a5877bd8f3aa880a0cdff19cc89de983ec1a0cd9fbe2c74178b6fc214a0ca7fbb013b2ac490e1c4109f03ded7055e1517a3b57f6da0d79c9f5ea5864e77
|
||||
|
@ -1,43 +0,0 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=poetry
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="BDD library for the pytest runner"
|
||||
HOMEPAGE="https://pypi.org/project/pytest-bdd/"
|
||||
SRC_URI="https://github.com/pytest-dev/pytest-bdd/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/mako[${PYTHON_USEDEP}]
|
||||
dev-python/parse[${PYTHON_USEDEP}]
|
||||
dev-python/parse_type[${PYTHON_USEDEP}]
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
dev-python/typing-extensions[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
DOCS=( AUTHORS.rst CHANGES.rst README.rst )
|
||||
|
||||
src_test() {
|
||||
# terminal_reporter test needs exact wrapping
|
||||
local -x COLUMNS=80
|
||||
|
||||
# hooks output parsing may be affected by other pytest-*, e.g. tornasync
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
local -x PYTEST_PLUGINS=pytest_bdd.plugin
|
||||
|
||||
distutils-r1_src_test
|
||||
}
|
@ -1,7 +1,5 @@
|
||||
DIST sip-6.7.11.tar.gz 1165368 BLAKE2B 62ba38ca39544e7ed0935e91729ba6f82a5e613a4b26fbf27c3708a5cb38ba0fa583ceb6a45c0c7485579f4c318fc5ac910eee8477aee6d25d33d4ae07bf527b SHA512 a9247714fd6f6e6dffff2e6b53b35a7831ced55f0706e7c883d6700f22b814dc2cf1e56e681214759c90386ff2c77cb4ace6d07cd0c8b6da0ed65444f9857056
|
||||
DIST sip-6.7.12.tar.gz 1169656 BLAKE2B 07ae682e783da5bc6fc3109c62c7bff245faab795cc28f135758b1211fae1dfae79668e7e7c0de8b3bae5c8b10534d153cdd47969b34149c8f5598867d19f17c SHA512 885c32a051e882b82b59bf1365050933f8fc1c619b19f4bc03235edc5741a5e14aae8edf90479ad0283f74ba5c5233a2589c151ec865b130199a6db9800a2294
|
||||
DIST sip-6.8.0.dev2310230931.tar.gz 1126109 BLAKE2B 53efdb9722888645b9772c6080f34459b89c745a02cfb9842f7924870afa81d4ba06ec6ac730ee1d254f5252c1c495a4b4dfd51157d759d7334d2980145214f8 SHA512 8bac33c9ae87dc11669837e2b07d5016a7e16e743439dbf763c13a118476431058d2a6c4b0c29e4ce7a7f5f86602bb1c9f27ccf0d3f6c1a298b06256f820ceaa
|
||||
EBUILD sip-6.7.11.ebuild 743 BLAKE2B 7346f0b9fe8e9c5263c55bca1e9a0d749a9c0b13ca7d5f9d88bb16e2bb91a2e3e60de2a606ae54b675a7d948fe10290b4ca84ce65899d72b571d2659c6c9f183 SHA512 f5be0d7eb69e68034196c3d71a5d33198929eccd29c66e4f035136df0fde2dade424915a9df9af25db3663b276f28035c9b65655f2424dc64eebcdc94bccb504
|
||||
EBUILD sip-6.7.12.ebuild 708 BLAKE2B f963789cddf6ea326e66d141f357b33d08c257586cd87d6ab4b778b5fbf3d5bee37dedc1c3d83faf7b5e79587a58302af255284e76af990bc801f0b621f93b3f SHA512 ceb1061feed26598e2bef6bf35b1e3cf7f55b435c9ccc5375a36ccc14d3c76dc8420f5d6268f284fb2daa0e970bc463e45fd0f3e32e22e8020877cac1f69f747
|
||||
EBUILD sip-6.8.0_pre2310230931.ebuild 955 BLAKE2B c982e93d3e553242eb5e7c2dcbfba182ab60c3d25fe17079ce66e813370562e3527021b5bd793968208febab2778dd758d6756c6b6d788043c862dd30fdc4fce SHA512 c0e497875410478f6a82edd800ed66da4a21bc3955f6ebbcbccc75b78e5b5732fba0492a0a4ce6833b1d0fad3b4a0b647905a67258810d28f054606e1926c16f
|
||||
MISC metadata.xml 772 BLAKE2B 50e2f336bc0fbf4bef20665900d77ce10930ff51b2581f093e8687fba13abb504e068dedd3591d40102ff8ed71c733f01cea080ec56fe6dac77a372562d038f2 SHA512 d6fafc7dcae6416ca1e4b6f66c019606ff1adcf5b1aec241401f774a82697a5a44746f20f5b2c225c40805636d917b9021fdd75f0a9ffe5349e445855660742d
|
||||
|
@ -1,31 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Python bindings generator for C/C++ libraries"
|
||||
HOMEPAGE="
|
||||
https://www.riverbankcomputing.com/software/sip/
|
||||
https://pypi.org/project/sip/
|
||||
"
|
||||
|
||||
LICENSE="|| ( GPL-2 GPL-3 SIP )"
|
||||
SLOT="5"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~sparc x86"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/ply[${PYTHON_USEDEP}]
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/tomli[${PYTHON_USEDEP}]
|
||||
' 3.10)
|
||||
"
|
||||
|
||||
distutils_enable_sphinx doc --no-autodoc
|
@ -1,3 +1,3 @@
|
||||
DIST sphinx-bootstrap-theme-0.8.1.gh.tar.gz 1228936 BLAKE2B 1f7d83052cd8f7b5cc8ec89279e591eab46ea3db11562dac8d92f9050b47fe5ab28939a17e4e48178096cd161275af7fb3047c91a4a5c405b9a8f848625893dc SHA512 de56b56bbb729c9d4f98697a1d312555ddb22c05588fb00e0417075f8b500a6cb09c8918276f4a59900ceec1374f1355cd4919b012505a37481de970f0172399
|
||||
EBUILD sphinx-bootstrap-theme-0.8.1.ebuild 582 BLAKE2B 0c84bea101771286fa60ba69138e6885c82388b4b4d80cabf2a14ddff32fc77c14993bb60de73bb1b8b528fd198ef50cf8644d1394d25adbe35e78a8736b585b SHA512 79ed3863256afe8559e15a6adf82b138aa60fa843c30fa147342d407b9107a82080ddd39695da42b4761ce889f93b6ff2b771bf8f01e8c10915464c68cbfaa18
|
||||
EBUILD sphinx-bootstrap-theme-0.8.1.ebuild 841 BLAKE2B 28c3b4f6a3de8a8768307fd482f978cc4c66805c1970d7a5aaf70d84b5d0b7ff1f6f530dd6b04e33afdfb031156222ccbd663de74aac5e7bb802e1b463c05d6f SHA512 024a14472d1b96fed7044d9ec479e580a5320cf15d184ba2e0c1cc9d4bf426f62ff3ac83862b7ff498d46b714d1e58e8dd9de53c7b11b5a7d49a7def8dd004b4
|
||||
MISC metadata.xml 521 BLAKE2B 2748af332700ea3f04ea592b42e5b6e2b099efdac4385ad10672e3e0633b8625ced940d7f94e5c64d4798e29acff17c6e23a71c3d638d3be054fe872aa5409c8 SHA512 6e85d7ca107611051edff6f6f6187656de9d2d6d0faf90df838766a0068d0fa756f8afab992bd7c8de77f44b5f83a6c7b4cd03cbb7a434aabaf1bb8295019e6f
|
||||
|
@ -0,0 +1,36 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 pypi optfeature
|
||||
|
||||
DESCRIPTION="An easily customizable SQL parser and transpiler"
|
||||
HOMEPAGE="
|
||||
https://sqlglot.com/
|
||||
https://github.com/tobymao/sqlglot/
|
||||
https://pypi.org/project/sqlglot/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
|
||||
EPYTEST_IGNORE=(
|
||||
# Tests require pyspark or duckdb which aren't in the tree.
|
||||
# Pandas would be a requirement normally, but it gets ignored by proxy.
|
||||
"tests/dataframe/integration/test_dataframe.py"
|
||||
"tests/dataframe/integration/test_grouped_data.py"
|
||||
"tests/dataframe/integration/test_session.py"
|
||||
"tests/test_executor.py"
|
||||
"tests/test_optimizer.py"
|
||||
)
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "simplifying timedelta expressions" dev-python/python-dateutil
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
DIST trove-classifiers-2023.10.18.tar.gz 15862 BLAKE2B 9d634e0b9674c1b9e249999c1722217fae5ca9d8aec348706859a73f599b62a003d5ff3344e361930b9182bcf4153bd5fb40ee93a53e50b1df0430b1fec4bb7c SHA512 6f8449411b8fc82ed798901701a72f3051bb46c189ee95276dcb77a2ee9b26a61c4304b03be20f7e2bc6dc5f8db1021bf02575cadd021fe43f96fd73540bae99
|
||||
DIST trove-classifiers-2023.11.7.tar.gz 15869 BLAKE2B 5c1229b7684699d560a12030cbd6be2de699d2c91902bde2f2144bd3a7718fd610596ea473a8a5a2be0f31296bb5b410a778455e3feccc5b11ac87b98f79ef38 SHA512 445a1e3482ff970a219b6323de8ab8547cb78adf5bc17db3c8cc242e5a12dc9ea93fa241da161139724f751b49f7ff80f579612d7b61a5868422e80db6c87d17
|
||||
DIST trove-classifiers-2023.11.9.tar.gz 15893 BLAKE2B 10bdefc15abdb14e9dbfb2b8181b1f5478d1498c5168266cbaa0f4b6c7d9a7c42cf31f2c8cddfd3f9c63047f6c64b1429bc62c710b522acb05485f9ec8d8fcf7 SHA512 c7d3f7ebe06a1f8b0d7d7d7abe5d00f29fdab35e4577c726f2a3e279e0863c43cc0ceaa29b46bf2856becbead5a2468fc80f0200f199f9821e3336356425e693
|
||||
EBUILD trove-classifiers-2023.10.18.ebuild 739 BLAKE2B 039b3026a8708593f349982cfe404c7be4d1d928a480e0bb82c9642fe3f029f515d551b1ae315a7ffa8185b28b88df758247807186ebc542cb2e68989ad28b9e SHA512 567ecb2558264c4cf61f21d4219f997410b45dc5b02e07d31198a5d3be1990d40eff5b900b32db5c1a6fb31a26e716d86b5afb4c10ea0209f0f911c3c6ad5866
|
||||
EBUILD trove-classifiers-2023.11.7.ebuild 747 BLAKE2B 08ff0f0c07bd25c54e464fc51f0a227d0b0890051858dccb257a96b863178e07816d8ccdeb1fadfb9467381cceecb9d8940cbdcf9de9854a0ffccad259fedc59 SHA512 08e3220c6390f23ba9d0920abfc64285c5550ae214c4971fdfb5b1caf804d6f265fd07f6259ea01d43dfb81e0de94ffac7806f09c8dd6e41bad0259a51e13ed8
|
||||
EBUILD trove-classifiers-2023.11.9.ebuild 747 BLAKE2B 08ff0f0c07bd25c54e464fc51f0a227d0b0890051858dccb257a96b863178e07816d8ccdeb1fadfb9467381cceecb9d8940cbdcf9de9854a0ffccad259fedc59 SHA512 08e3220c6390f23ba9d0920abfc64285c5550ae214c4971fdfb5b1caf804d6f265fd07f6259ea01d43dfb81e0de94ffac7806f09c8dd6e41bad0259a51e13ed8
|
||||
MISC metadata.xml 385 BLAKE2B 0d679ace6575dab100af9918e8b6dbde2f70cbf556c23ee667d68f69c6dd07887e43a513a73e60849a7a4b88cb26d4cd85b4cb905b926ee3832161c663adc9c0 SHA512 977bc86d4fb2dfcc887fd8d4038b8ac76cb0f4783424d3ab0857256afaf5dacf4e45c0d2a9166daa854be1dc8faba4a10c4718c557b983a1c7bb0a33fcd61f41
|
||||
|
@ -0,0 +1,31 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYTHON_COMPAT=( pypy3 python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Canonical source for classifiers on PyPI (pypi.org)"
|
||||
HOMEPAGE="
|
||||
https://github.com/pypa/trove-classifiers/
|
||||
https://pypi.org/project/trove-classifiers/
|
||||
"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="
|
||||
dev-python/calver[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_test() {
|
||||
epytest
|
||||
"${EPYTHON}" -m tests.lib || die
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
DIST wrapt-1.15.0.gh.tar.gz 137402 BLAKE2B 8c4764251a89f7795fef71dd71d9c36611d896d2e2791a5e7ce4f665f7b477e683f21aa05251a6ceb96644221a7ff9b01dfe98a7f4d278987dedc17ead39b343 SHA512 6be3fc6380e6bb11a26e35fb093ca54d2e851ab384682f6b1201599980c0429c1e2f23089540b66dd80985baaaf3fb93ce29034758e062e2cfb2f52e3b362779
|
||||
DIST wrapt-1.16.0.gh.tar.gz 138520 BLAKE2B 6317f2fa58aaa017b510f60fb20e8b3bc4721977806f4b8e7a3f316bfa4da2a8d24156f8ab670d96f5bab6fcc29437d5d18c28ce91618f5a7093cc85d6c5b578 SHA512 65bdda3b6580748ceb720e8fc1a6b05832a355d541aa650bc87052f3aa8793d03d29a080b79eceb16392e297aed8f11a283e36f5f40a0db614b409b1dc2b6c9c
|
||||
DIST wrapt-1.16.0rc2.gh.tar.gz 138531 BLAKE2B fc6c573a80ab5a5f82b3e0dc60ecce34642361982b00d4066d84eb186cc2dc2542769205674f74370aff98b252acb65e7013f181c75da3e7389d3bdfe1ff6971 SHA512 f6b6a2a34c6f5c285e08411b2fca2464e21028776595e821e09cfc45da9519b88911fa74d47952de365a7625322672d025fd66be1393238ff776dd6b84cd8aa2
|
||||
EBUILD wrapt-1.15.0.ebuild 1149 BLAKE2B 5c97192a67030beed9bb7e542ce02828e4e992136aead43430df8409f692322ab21e51f509719e2b807621bb7b1d194aa848ac29f17e64616c1811ed8efddc7d SHA512 acb22a0c6e0791dab7e6292bbb0872acad9db04bbde76ff6195a7c23c9f0e6b2f2ffc97285d5afc600c8cd62b2f6c5302186424bd80d809fe2f92b74ab295445
|
||||
EBUILD wrapt-1.16.0.ebuild 985 BLAKE2B daae4e2a2b7dff8efccd212a08f16c6da8e0cddc117d43b4886d5d2db6c98338eb4ddd2d9b31044b9dee5d0958b56f33d94f20bb93bfe8096307bf835fc9c426 SHA512 5ac7ffcb2beb4f01edc3e476376fe033f35d9a93d8fcad993ff970c433ce0e48ffd075cae3761d3197128c68c44910b678ae43e4aa2ed1e36272833531536d83
|
||||
EBUILD wrapt-1.16.0_rc2.ebuild 985 BLAKE2B daae4e2a2b7dff8efccd212a08f16c6da8e0cddc117d43b4886d5d2db6c98338eb4ddd2d9b31044b9dee5d0958b56f33d94f20bb93bfe8096307bf835fc9c426 SHA512 5ac7ffcb2beb4f01edc3e476376fe033f35d9a93d8fcad993ff970c433ce0e48ffd075cae3761d3197128c68c44910b678ae43e4aa2ed1e36272833531536d83
|
||||
MISC metadata.xml 515 BLAKE2B 9a7eb633f7a52c3bb378854a89d8b529adfb09f4db96502875da844c4d256aa1ca2346831be3f7949894045d9185df284a7b50c142a22b1340676d079913abf6 SHA512 f260a2482e32147b1a052b949f1b438efcb406b52caad79951b60cd79c330dacc5c612269b80c730c489a9b2896c4d91572796409bbceabc36a83c056522cac2
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue