parent
b22aca3d74
commit
f6cdc5b171
Binary file not shown.
Binary file not shown.
@ -1,5 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<maintainer type="person">
|
||||
<email>sam@gentoo.org</email>
|
||||
<name>Sam James</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
|
Binary file not shown.
@ -1,5 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<maintainer type="person">
|
||||
<email>sam@gentoo.org</email>
|
||||
<name>Sam James</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
|
Binary file not shown.
@ -1,2 +1,2 @@
|
||||
DIST kontrast-22.08.3.tar.xz 128100 BLAKE2B c30380c716ace5f9d1987a9244350fb58592babc963d3b0bf312ca75e966fd9abe254898bd80b4f7bfdeb1d7bccc7424781ccdb0cd1b28784add6bf4edafe764 SHA512 18a1df4c888457f42c9a7273d6462479b8c44d87529b54868ea80c8fd8d9a8a20a96c25b9508a8cb4e93e94d6dd23d7251af1ca908d81a588002d1a29410d843
|
||||
DIST kontrast-22.12.1.tar.xz 201280 BLAKE2B c90b05b2b39b4b9964d631a93fce2d8b2d1827a55d21c7edfa0a9494d607ae19f397a1362c6565a88422634eb5db9c478180f7f40962df0ad13731094e1c666f SHA512 87fb736adb8056d04162fba8ac1640897d1e51814b770df7da635cda39f957a6a59ceadebb04f671adf4efc8bf5054d421a234015c3db6ddc3df787194249c42
|
||||
DIST kontrast-22.12.2.tar.xz 201536 BLAKE2B c7440ac19c8218fe2733952404525c1c2f644d7f07aa6a2940a6560423e01b92c9c2aba9d40e462b00cef0fa56ede5761e667d76de9e1d285cbd68ac7fde7927 SHA512 e0d2bef06bfeb254137d34e76764396406d78f6b2b7298c05931407e0c6076cb39e0ad1b904f81a75131c742d42a1193e1d5503e45ef1f2b7687e255e825e2f9
|
||||
|
Binary file not shown.
@ -1,4 +1,3 @@
|
||||
DIST ansible-lint-6.11.0.tar.gz 427423 BLAKE2B 7b32afdfe25965b2fcb24af1587ab3d5a0c29a2ddad64180638a779050525c1a1f8406d97199e6118d83c2e51d3c0a8e81eda85381cf34292d3bfc93b79c1d34 SHA512 96221a7b409b2e68570d8731a721aea0eab0612b8a95fbb25701142ee65e4939c1c6dd59869c5d4ee07474d2a9ec84c2a7c913954740b9cbf89243bf3d35be9a
|
||||
DIST ansible-lint-6.12.0.tar.gz 466270 BLAKE2B 917a4266048799da15b0be4da3074b7e8987551eddfbaef9998d75346b41d5326b5003eae50e74a7303b9db923c49fe9dfc07bd19ac9a1bf168573673c401734 SHA512 cfea6bca35e835400eaec9bc1a00b4e0d7af9bd3505e924b1e9a9fe5a451103d02cfa6b5bb3dda7a154b52f1f2849a90ed5dff7f3873b93d1b16ca2333abc975
|
||||
DIST ansible-lint-6.8.2.gh.tar.gz 288616 BLAKE2B 4ae9c344d834a3d69a05689df296c7915e6eb7cb2a85b773f3adcc4efd898c3e1c9f32d8b1efda31afb7a5466d1966aa754cd5529c7dcfd6c1f45517d39e1750 SHA512 101be050772f6df827a697faa5ff9650c98959d9bd6e7a025a19c0ac94faa6b06e114b9122ae8f09f650be565b226189f4706ef8dd0f27548774664adccf3d18
|
||||
DIST ansible-lint-6.8.6.gh.tar.gz 293630 BLAKE2B aa43acb9cca21d3cdafebddb18d82781ab708d5696edc51567a8c56cc3eacb3bd96d08f97436eab54e69866f55fa6fc6537eb62e44e4d26eb3ee46ee13e7322d SHA512 0beb16ecff432444a25d3efa70f67eb55437faed593dfbb4bcaf080b06558403e711218f5a021268a2450ceeab1127d8dc8de027d1e4889350f20ca3d9ed9dca
|
||||
DIST ansible-lint-6.9.1.gh.tar.gz 388343 BLAKE2B 73035bdbd6c1bdee5566d5dee5a8461953d99bbaf896d7a9764c32419e74c3d23883ac1a7548de3e21372195f99c325c371cead7397bf64d6d033d9a2f81ed01 SHA512 eaf255c53fb8355b06e7013f6676a09e2d7e67aa332306448f530c345925c80ff5ea54c580f7f6720a25ebed9e8deb4c0a8e4e22af4183e8a8ef7b6999be6099
|
||||
|
@ -1,79 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Checks ansible playbooks for practices and behaviour that can be improved"
|
||||
HOMEPAGE="https://github.com/ansible/ansible-lint"
|
||||
SRC_URI="https://github.com/ansible/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~riscv"
|
||||
|
||||
RDEPEND="
|
||||
>=app-admin/ansible-core-2.12.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/ansible-compat-2.2.4[${PYTHON_USEDEP}]
|
||||
>=dev-python/black-22.1.0[${PYTHON_USEDEP}]
|
||||
dev-python/filelock[${PYTHON_USEDEP}]
|
||||
>=dev-python/jsonschema-4.9.0[${PYTHON_USEDEP}]
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
>=dev-python/rich-9.5.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/ruamel-yaml-0.15.37[${PYTHON_USEDEP}]
|
||||
>=dev-python/wcmatch-7.0[${PYTHON_USEDEP}]
|
||||
>=dev-util/yamllint-1.25.0[${PYTHON_USEDEP}]"
|
||||
BDEPEND="
|
||||
>=dev-python/setuptools_scm-3.5.0[${PYTHON_USEDEP}]
|
||||
>=dev-python/setuptools_scm_git_archive-1.0[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
>=dev-python/flaky-3.7.0[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-plus-0.2[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-xdist-2.5.0[${PYTHON_USEDEP}]
|
||||
)"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-6.8.6_test-module-check.patch
|
||||
)
|
||||
|
||||
# Skip problematic tests:
|
||||
# - test_rules_id_format has been giving an internal error since 6.5.4 or so (TODO: follow this up with upstream)
|
||||
# - similar problem with test_example_custom_module and 6.8.6
|
||||
# - test_call_from_outside_venv doesn't play nicely with the sandbox
|
||||
# - all the others require Internet access, mostly in order to access Ansible Galaxy
|
||||
EPYTEST_DESELECT=(
|
||||
test/test_ansiblesyntax.py::test_null_tasks
|
||||
test/test_cli_role_paths.py::test_run_playbook_github
|
||||
test/test_eco.py
|
||||
test/test_examples.py::test_example_custom_module
|
||||
test/test_examples.py::test_custom_kinds
|
||||
test/test_import_playbook.py::test_task_hook_import_playbook
|
||||
test/test_list_rules.py::test_list_rules_includes_opt_in_rules
|
||||
test/test_list_rules.py::test_list_rules_with_format_option
|
||||
test/test_list_rules.py::test_list_tags_includes_opt_in_rules
|
||||
test/test_main.py::test_call_from_outside_venv
|
||||
test/test_prerun.py::test_install_collection
|
||||
test/test_prerun.py::test_prerun_reqs_v1
|
||||
test/test_prerun.py::test_prerun_reqs_v2
|
||||
test/test_prerun.py::test_require_collection_wrong_version
|
||||
test/test_profiles.py::test_profile_listing
|
||||
test/test_rules_collection.py::test_rich_rule_listing
|
||||
test/test_rules_collection.py::test_rules_id_format
|
||||
test/test_skip_inside_yaml.py::test_role_meta
|
||||
test/test_utils.py::test_cli_auto_detect
|
||||
test/test_utils.py::test_template_lookup
|
||||
test/test_verbosity.py::test_default_verbosity
|
||||
)
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
# Test suite fails to start without this. Bug in the eclass, maybe?
|
||||
python_test() {
|
||||
epytest test
|
||||
}
|
@ -1,7 +1,3 @@
|
||||
DIST aws-cli-1.27.50.gh.tar.gz 2347235 BLAKE2B cacfe2c8d4fce7de6452a02fa8bcbcde58dbf010328a161e5eecc7305b225264ae68d3e20c6107cfa3b817e2030ffb20dc09a938f8bff59036fab5969e3e6da0 SHA512 af95ad60f2537c12c1353ab0cee045b55834b92b51d0b2fb1bf48991d34f4aa3b61ab20ca438ecba5d8019009065f7993bab64b7e7e0edf89765351c3f4fa168
|
||||
DIST aws-cli-1.27.54.gh.tar.gz 2349811 BLAKE2B 08cb317ea4621273644c39c1152e1a3f8bd9f52ed8c30d7c37dfea9e986ca1597fda1dfbdea8c4043fa783f061609d6f24895997e9f9a3f27d5677c0f9e6c3de SHA512 af4783eef3c1c666b8b3c6d20f1c0177db6d4ce01645b092770cba535dad95609b4bece366355ce6d6a505ac7ab5a2e390d64fb84d6c00e402f9f8ab88db91d9
|
||||
DIST aws-cli-1.27.57.gh.tar.gz 2359650 BLAKE2B 637674f1726828b43a8135b9f7ff9d1f4a05716680aa909829148e4acf7104290c49f90b453294e16cc74d0d200bdfa4049b470a5194df5e3098308d0c088d3b SHA512 be1ac08e57012751f59e63996395b39bf5a9f42381e9a08baffacc2ac9d104c3560c250b2b210608bf6b460fdc31cc1f794a90949a52ebdbb3c22f03e5fb00c2
|
||||
DIST aws-cli-1.27.58.gh.tar.gz 2359921 BLAKE2B da3ead9140407faff60384fa7aafbc27a8a86d088e4516599e573b9e968f00d3e292a8ea6a0eb0a80449f1fef3bb62204dad2a788f10ba87a959218d909da77b SHA512 2bc4dfe5058c847510f4f43006191153b23e5efecc51bb010f9b06ba127504ee40c953bcb6e47d921760f1bc6eb87747971a9a3514f781dd4bd76f30ecd7de81
|
||||
DIST aws-cli-1.27.59.gh.tar.gz 2360458 BLAKE2B e60117e41cf95d442db333cf49c146e4ed02247007b8f46228799c5dee8c486aec34b236c9a0a6d152d690ff86c34fd797a6f35227a6e443805cdfe1b1b30f00 SHA512 87b9aebe812415223285c09ab5a36de2b9c0da49775d1162a5b5d7489ad61c16ca5361b721bc9e4ec4ccc09306be24513f42d7263b315d6856be20fdf0779686
|
||||
DIST aws-cli-1.27.60.gh.tar.gz 2361068 BLAKE2B ee5b5b1129bcdfe261d0b7ddbfa905b4c97a799ba7c494cad74bcb3c74dcff39131b908d602a60c023c26cf4c733a52b385c4ad8266c53e5d60d8036c5abd2e6 SHA512 aa14729040d4dcfdbb75936eb29d651c03ea28a3c18f5ad4b9e685899e07f03703f2058d508a16c753df1b1e66af3ff84ec9e31476fc2f969786235ce15ae425
|
||||
DIST aws-cli-1.27.61.gh.tar.gz 2362178 BLAKE2B 512fd70f5688289b79807e679aded5085af89a14e5724dc70a771fed846060a4ef1265b3ef9d598c24d228649412204cf48d02a2ff840575a8e9a3fc3a2fe12a SHA512 c8b0640fd2aba05617e3ed60d5cfc6749102e16477eaae2e94d5be7750d5bfea14c8020a4dc7bac5c2b2bae2f46f302930b03b6d47a1cf778ae08be761f7274f
|
||||
DIST aws-cli-1.27.63.gh.tar.gz 2363224 BLAKE2B 4fe7971271d4359f9d29cdf4c028bd8d06a1a8188e6aef108c33d6b137bb2aee84f3655f3666381fdbf8166dd5ea071c564faac32fb0c06a461249385dbc503d SHA512 01c578f13c0f316c41bdf3bbc5e8532f01d0bfa108207899b8c56b990acdbf5b80d0ffbf1be944088f34e623494b1a1f6d52823d654c192b07133291e4bd7deb
|
||||
|
@ -1,80 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
||||
|
||||
MY_P=aws-cli-${PV}
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="
|
||||
https://github.com/aws/aws-cli/
|
||||
https://pypi.org/project/awscli/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86"
|
||||
|
||||
# botocore is x.(y+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
# strip overzealous upper bounds on requirements
|
||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_DESELECT=(
|
||||
# TODO
|
||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
||||
)
|
||||
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
||||
|
||||
MY_P=aws-cli-${PV}
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="
|
||||
https://github.com/aws/aws-cli/
|
||||
https://pypi.org/project/awscli/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
|
||||
# botocore is x.(y+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
# strip overzealous upper bounds on requirements
|
||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_DESELECT=(
|
||||
# TODO
|
||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
||||
)
|
||||
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
||||
|
||||
MY_P=aws-cli-${PV}
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="
|
||||
https://github.com/aws/aws-cli/
|
||||
https://pypi.org/project/awscli/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
|
||||
# botocore is x.(y+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
# strip overzealous upper bounds on requirements
|
||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_DESELECT=(
|
||||
# TODO
|
||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
||||
)
|
||||
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1 multiprocessing
|
||||
|
||||
MY_P=aws-cli-${PV}
|
||||
DESCRIPTION="Universal Command Line Environment for AWS"
|
||||
HOMEPAGE="
|
||||
https://github.com/aws/aws-cli/
|
||||
https://pypi.org/project/awscli/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
|
||||
-> ${MY_P}.gh.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
|
||||
# botocore is x.(y+2).z
|
||||
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 2)).$(ver_cut 3-)"
|
||||
RDEPEND="
|
||||
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
|
||||
dev-python/colorama[${PYTHON_USEDEP}]
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/rsa[${PYTHON_USEDEP}]
|
||||
>=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
# do not rely on bundled deps in botocore (sic!)
|
||||
find -name '*.py' -exec sed -i \
|
||||
-e 's:from botocore[.]vendored import:import:' \
|
||||
-e 's:from botocore[.]vendored[.]:from :' \
|
||||
{} + || die
|
||||
# strip overzealous upper bounds on requirements
|
||||
sed -i -e 's:,<[0-9.]*::' -e 's:==:>=:' setup.py || die
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_DESELECT=(
|
||||
# TODO
|
||||
tests/functional/eks/test_kubeconfig.py::TestKubeconfigLoader::test_load_simple
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_env_only
|
||||
tests/unit/customizations/eks/test_update_kubeconfig.py::TestKubeconfigSelector::test_choose_existing
|
||||
tests/unit/customizations/eks/test_kubeconfig.py::TestKubeconfigValidator::test_valid
|
||||
)
|
||||
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit} -n "$(makeopts_jobs)" --forked
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newbashcomp bin/aws_bash_completer aws
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
newins bin/aws_zsh_completer.sh _aws
|
||||
|
||||
distutils-r1_python_install_all
|
||||
|
||||
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
|
||||
}
|
@ -0,0 +1,540 @@
|
||||
From 7df25a85ccbd28e22dee437272202fe966f861d1 Mon Sep 17 00:00:00 2001
|
||||
From: A Schenck <galiven@users.sourceforge.net>
|
||||
Date: Fri, 27 Jan 2023 15:09:58 -0800
|
||||
Subject: [PATCH] Declare arguments on function pointers
|
||||
|
||||
Solves the errors with -Werror=implicit-function-declaration -Werror=implicit-int -Werror=incompatible-function-pointer-types -Werror=deprecated-non-prototype
|
||||
--- a/server/mail.c
|
||||
+++ b/server/mail.c
|
||||
@@ -42,12 +42,13 @@
|
||||
#define MBOX_MH_DIR 2
|
||||
|
||||
|
||||
-typedef struct
|
||||
+typedef struct Mailbox Mailbox;
|
||||
+struct Mailbox
|
||||
{
|
||||
gchar *path;
|
||||
gchar *homedir_path;
|
||||
gint mboxtype;
|
||||
- gboolean (*check_func)();
|
||||
+ gboolean (*check_func)(Mailbox *mbox);
|
||||
gint mail_count;
|
||||
gint new_mail_count;
|
||||
gint old_mail_count;
|
||||
@@ -57,8 +58,7 @@ typedef struct
|
||||
off_t last_size;
|
||||
gboolean is_internal; /* Internal mail message (ie: localmachine) */
|
||||
gboolean changed;
|
||||
- }
|
||||
- Mailbox;
|
||||
+ };
|
||||
|
||||
static GList *mailbox_list;
|
||||
|
||||
--- a/src/alerts.c
|
||||
+++ b/src/alerts.c
|
||||
@@ -765,7 +765,7 @@ gkrellm_alert_plugin_add(GkrellmMonitor *mon, gchar *name)
|
||||
void
|
||||
gkrellm_alert_plugin_alert_connect(GkrellmAlertPlugin *gap,
|
||||
void (*alarm_func)(), void (*warn_func)(),
|
||||
- void (*update_func)(), void (*check_func)(),
|
||||
+ void (*update_func)(), void (*check_func)(GkrellmAlert* alert, gpointer data, gfloat value),
|
||||
void (*destroy_func)())
|
||||
{
|
||||
gap->alarm_func = alarm_func;
|
||||
--- a/src/chart.c
|
||||
+++ b/src/chart.c
|
||||
@@ -2107,7 +2107,7 @@ gkrellm_get_chartconfig_grid_resolution(GkrellmChartconfig *cf)
|
||||
|
||||
void
|
||||
gkrellm_chartconfig_grid_resolution_connect(GkrellmChartconfig *cf,
|
||||
- void (*func)(gpointer), gpointer data)
|
||||
+ void (*func)(GkrellmChartconfig *, gpointer), gpointer data)
|
||||
{
|
||||
if (!cf)
|
||||
return;
|
||||
@@ -2206,7 +2206,7 @@ gkrellm_get_chartconfig_fixed_grids(GkrellmChartconfig *cf)
|
||||
|
||||
void
|
||||
gkrellm_chartconfig_fixed_grids_connect(GkrellmChartconfig *cf,
|
||||
- void (*func)(gpointer), gpointer data)
|
||||
+ void (*func)(GkrellmChartconfig*, gpointer), gpointer data)
|
||||
{
|
||||
if (!cf)
|
||||
return;
|
||||
@@ -2224,7 +2224,7 @@ gkrellm_get_chartconfig_height(GkrellmChartconfig *cf)
|
||||
|
||||
void
|
||||
gkrellm_chartconfig_height_connect(GkrellmChartconfig *cf,
|
||||
- void (*func)(gpointer), gpointer data)
|
||||
+ void (*func)(GkrellmChartconfig*, gpointer), gpointer data)
|
||||
{
|
||||
if (!cf)
|
||||
return;
|
||||
--- a/src/cpu.c
|
||||
+++ b/src/cpu.c
|
||||
@@ -50,7 +50,8 @@ static void cb_alert_config_create(GkrellmAlert *ap, GtkWidget *vbox,
|
||||
#endif
|
||||
|
||||
|
||||
-typedef struct
|
||||
+typedef struct CpuMon CpuMon;
|
||||
+struct CpuMon
|
||||
{
|
||||
gchar *name;
|
||||
gchar *panel_label;
|
||||
@@ -87,8 +88,7 @@ typedef struct
|
||||
nice,
|
||||
sys,
|
||||
idle;
|
||||
- }
|
||||
- CpuMon;
|
||||
+ };
|
||||
|
||||
|
||||
static GkrellmMonitor
|
||||
@@ -575,7 +575,7 @@ cb_cpu_extra(GtkWidget *widget, GdkEventButton *ev)
|
||||
}
|
||||
|
||||
static void
|
||||
-setup_cpu_scaling(GkrellmChartconfig *cf)
|
||||
+setup_cpu_scaling(GkrellmChartconfig *cf, gpointer data)
|
||||
{
|
||||
gint grids;
|
||||
|
||||
@@ -741,7 +741,7 @@ static gchar *nice_color_string,
|
||||
*nice_grid_color_string;
|
||||
|
||||
static void
|
||||
-cb_height(GkrellmChartconfig *cf, CpuMon *cpu)
|
||||
+cb_height(GkrellmChartconfig *cf, gpointer data)
|
||||
{
|
||||
GList *list;
|
||||
GkrellmChart *cp;
|
||||
@@ -879,7 +879,7 @@ create_cpu(GtkWidget *vbox, gint first_create)
|
||||
gkrellm_chartconfig_fixed_grids_connect(cp->config,
|
||||
setup_cpu_scaling, NULL);
|
||||
gkrellm_chartconfig_height_connect(cp->config, cb_height, cpu);
|
||||
- setup_cpu_scaling(cp->config);
|
||||
+ setup_cpu_scaling(cp->config, NULL);
|
||||
|
||||
cpu->sensor_decal = cpu->fan_decal = NULL;
|
||||
if (show_panel_labels)
|
||||
--- a/src/disk.c
|
||||
+++ b/src/disk.c
|
||||
@@ -104,8 +104,8 @@ static gboolean sys_handles_composite_reset;
|
||||
static gboolean units_are_blocks;
|
||||
|
||||
static void (*read_disk_data)();
|
||||
-static gchar *(*name_from_device)();
|
||||
-static gint (*order_from_name)();
|
||||
+static gchar *(*name_from_device)(gint device_number, gint uint_number, gint *order);
|
||||
+static gint (*order_from_name)(const gchar *name);
|
||||
|
||||
|
||||
|
||||
@@ -703,9 +703,10 @@ cb_disk_extra(GtkWidget *widget, GdkEventButton *ev)
|
||||
}
|
||||
|
||||
static void
|
||||
-setup_disk_scaling(GkrellmChartconfig *cf, GkrellmChart *cp)
|
||||
+setup_disk_scaling(GkrellmChartconfig *cf, gpointer data)
|
||||
{
|
||||
gint grids, res;
|
||||
+ GkrellmChart *cp = (GkrellmChart*)data;
|
||||
|
||||
grids = gkrellm_get_chartconfig_fixed_grids(cf);
|
||||
if (!grids)
|
||||
--- a/src/fs.c
|
||||
+++ b/src/fs.c
|
||||
@@ -115,7 +115,7 @@ static GList *fstab_list;
|
||||
static gint uid;
|
||||
|
||||
void (*get_mounts_list)(),
|
||||
- (*get_fsusage)(),
|
||||
+ (*get_fsusage)(gpointer mon, gchar *dir),
|
||||
(*get_fstab_list)();
|
||||
gboolean (*get_fstab_modified)();
|
||||
|
||||
@@ -123,8 +123,8 @@ gboolean (*get_fstab_modified)();
|
||||
/* If ejecting is available via an ioctl() or if there is an eject command,
|
||||
| set these up in gkrellm_sys_fs_init() by calling gkrellm_fs_setup_eject().
|
||||
*/
|
||||
-void (*eject_cdrom_func)(),
|
||||
- (*close_cdrom_func)();
|
||||
+void (*eject_cdrom_func)(gchar *dev),
|
||||
+ (*close_cdrom_func)(gchar *dev);
|
||||
static gchar *eject_cdrom_command,
|
||||
*close_cdrom_command;
|
||||
static gboolean cdrom_thread_busy; /* for the cdrom_funcs */
|
||||
@@ -1536,7 +1536,7 @@ static GtkWidget *alert_button;
|
||||
|
||||
static GtkWidget *data_format_combo_box;
|
||||
|
||||
-static gboolean (*original_row_drop_possible)();
|
||||
+static gboolean (*original_row_drop_possible)(GtkTreeDragDest *dest, GtkTreePath *path, GtkSelectionData *selection_data);
|
||||
|
||||
|
||||
static void
|
||||
--- a/src/gkrellm-public-proto.h
|
||||
+++ b/src/gkrellm-public-proto.h
|
||||
@@ -116,8 +116,8 @@ void gkrellm_chartconfig_grid_resolution_adjustment(
|
||||
void gkrellm_set_chartconfig_grid_resolution(GkrellmChartconfig *,
|
||||
gint);
|
||||
gint gkrellm_get_chartconfig_grid_resolution(GkrellmChartconfig *);
|
||||
-void gkrellm_chartconfig_grid_resolution_connect(
|
||||
- GkrellmChartconfig *, void (*fn)(), gpointer);
|
||||
+void gkrellm_chartconfig_grid_resolution_connect(GkrellmChartconfig* cf,
|
||||
+ void (*fn)(GkrellmChartconfig*, gpointer), gpointer);
|
||||
void gkrellm_set_chartconfig_flags(GkrellmChartconfig *, gint);
|
||||
|
||||
void gkrellm_chartconfig_grid_resolution_label(
|
||||
@@ -131,10 +131,10 @@ void gkrellm_set_chartconfig_sequence_125(GkrellmChartconfig *,
|
||||
void gkrellm_set_chartconfig_fixed_grids(GkrellmChartconfig *, gint);
|
||||
gint gkrellm_get_chartconfig_fixed_grids(GkrellmChartconfig *);
|
||||
void gkrellm_chartconfig_fixed_grids_connect(GkrellmChartconfig *,
|
||||
- void (*fn)(), gpointer);
|
||||
+ void (*fn)(GkrellmChartconfig*, gpointer), gpointer);
|
||||
gint gkrellm_get_chartconfig_height(GkrellmChartconfig *);
|
||||
-void gkrellm_chartconfig_height_connect(GkrellmChartconfig *,
|
||||
- void (*fn)(), gpointer);
|
||||
+void gkrellm_chartconfig_height_connect(GkrellmChartconfig* cf,
|
||||
+ void (*fn)(GkrellmChartconfig*, gpointer), gpointer);
|
||||
void gkrellm_chartconfig_callback_block(GkrellmChartconfig *, gboolean);
|
||||
void gkrellm_save_chartconfig(FILE *, GkrellmChartconfig *,
|
||||
gchar *, gchar *);
|
||||
@@ -274,7 +274,7 @@ GkrellmDecalbutton *gkrellm_make_scaled_button(GkrellmPanel *p,
|
||||
GkrellmDecalbutton *gkrellm_decal_is_button(GkrellmDecal *);
|
||||
void gkrellm_set_in_button_callback(GkrellmDecalbutton *,
|
||||
gint (*func)(), gpointer data);
|
||||
-gboolean gkrellm_in_button(GkrellmDecalbutton *button, GdkEventButton *);
|
||||
+gboolean gkrellm_in_button(GkrellmDecalbutton *button, GdkEventButton *, gpointer data);
|
||||
gboolean gkrellm_in_decal(GkrellmDecal *, GdkEventButton *);
|
||||
void gkrellm_decal_button_connect(GkrellmDecalbutton *, void (*func)(),
|
||||
void *);
|
||||
@@ -415,7 +415,7 @@ GkrellmAlertPlugin *gkrellm_alert_plugin_add(GkrellmMonitor *mon,
|
||||
gchar *name);
|
||||
void gkrellm_alert_plugin_alert_connect(GkrellmAlertPlugin *gap,
|
||||
void (*alarm_func)(), void (*warn_func)(),
|
||||
- void (*update_func)(), void (*check_func)(),
|
||||
+ void (*update_func)(), void (*check_func)(GkrellmAlert* alert, gpointer data, gfloat value),
|
||||
void (*destroy_func)());
|
||||
void gkrellm_alert_plugin_config_connect(GkrellmAlertPlugin *gap,
|
||||
gchar *tab_name,
|
||||
--- a/src/gkrellm.h
|
||||
+++ b/src/gkrellm.h
|
||||
@@ -546,14 +546,15 @@ typedef struct
|
||||
#define NO_CONFIG_AUTO_GRID_RESOLUTION 1
|
||||
#define NO_CONFIG_FIXED_GRIDS 2
|
||||
|
||||
-typedef struct
|
||||
+typedef struct GkrellmChartconfig GkrellmChartconfig;
|
||||
+struct GkrellmChartconfig
|
||||
{
|
||||
gint flags;
|
||||
gboolean config_loaded;
|
||||
gboolean log;
|
||||
|
||||
gint h;
|
||||
- void (*cb_height)();
|
||||
+ void (*cb_height)(GkrellmChartconfig *config, gpointer data);
|
||||
gpointer cb_height_data;
|
||||
GtkWidget *height_spin_button;
|
||||
|
||||
@@ -566,7 +567,7 @@ typedef struct
|
||||
gboolean auto_grid_resolution;
|
||||
gboolean auto_resolution_stick;
|
||||
gboolean sequence_125;
|
||||
- void (*cb_grid_resolution)();
|
||||
+ void (*cb_grid_resolution)(GkrellmChartconfig *config, gpointer data);
|
||||
gpointer cb_grid_resolution_data;
|
||||
GtkWidget *grid_resolution_spin_button;
|
||||
GtkWidget *auto_resolution_control_menubar;
|
||||
@@ -583,7 +584,7 @@ typedef struct
|
||||
width;
|
||||
|
||||
gboolean fixed_grids;
|
||||
- void (*cb_fixed_grids)();
|
||||
+ void (*cb_fixed_grids)(GkrellmChartconfig *config, gpointer data);
|
||||
gpointer cb_fixed_grids_data;
|
||||
GtkWidget *fixed_grids_spin_button;
|
||||
|
||||
@@ -591,8 +592,7 @@ typedef struct
|
||||
GList **chart_cd_list;
|
||||
|
||||
gboolean cb_block;
|
||||
- }
|
||||
- GkrellmChartconfig;
|
||||
+ };
|
||||
|
||||
/* GkrellmCharts are drawn in layers and each data value drawn has its own
|
||||
| layer (the GkrellmChartdata struct -> image/color of the drawn data and
|
||||
@@ -750,13 +750,14 @@ typedef struct
|
||||
GkrellmChartdata;
|
||||
|
||||
|
||||
-typedef struct
|
||||
+typedef struct GkrellmDecalbutton GkrellmDecalbutton;
|
||||
+struct GkrellmDecalbutton
|
||||
{
|
||||
GkrellmPanel *panel;
|
||||
GkrellmDecal *decal;
|
||||
- void (*cb_button_click)();
|
||||
+ void (*cb_button_click)(GkrellmDecalbutton *b, gpointer data);
|
||||
gpointer data;
|
||||
- gint (*cb_in_button)();
|
||||
+ gint (*cb_in_button)(GkrellmDecalbutton *b, GdkEventButton *ev, gpointer data);
|
||||
gpointer in_button_data;
|
||||
gpointer privat;
|
||||
gint cur_index;
|
||||
@@ -764,10 +765,9 @@ typedef struct
|
||||
gint saved_index;
|
||||
gint sensitive;
|
||||
gint type;
|
||||
- void (*cb_button_right_click)();
|
||||
+ void (*cb_button_right_click)(GkrellmDecalbutton *b, gpointer data);
|
||||
gpointer right_data;
|
||||
- }
|
||||
- GkrellmDecalbutton;
|
||||
+ };
|
||||
|
||||
|
||||
|
||||
@@ -791,20 +791,21 @@ typedef struct
|
||||
/* ------- Alerts ------- */
|
||||
#define GKRELLM_ALERTCONFIG_KEYWORD "alert_config"
|
||||
|
||||
+typedef struct GkrellmAlert GkrellmAlert;
|
||||
typedef struct
|
||||
{
|
||||
struct _GkrellmMonitor *mon;
|
||||
gchar *name,
|
||||
*tab_name;
|
||||
- void (*warn_func)(),
|
||||
- (*alarm_func)(),
|
||||
- (*update_func)(),
|
||||
- (*check_func)(),
|
||||
- (*destroy_func)();
|
||||
- void (*config_create_func)(),
|
||||
- (*config_apply_func)(),
|
||||
- (*config_save_func)(),
|
||||
- (*config_load_func)();
|
||||
+ void (*warn_func)(GkrellmAlert *alert, gpointer data, gboolean state),
|
||||
+ (*alarm_func)(GkrellmAlert *alert, gpointer data, gboolean state),
|
||||
+ (*update_func)(GkrellmAlert *alert, gpointer data),
|
||||
+ (*check_func)(GkrellmAlert *alert, gpointer data, gfloat value),
|
||||
+ (*destroy_func)(GkrellmAlert *alert, gpointer data);
|
||||
+ void (*config_create_func)(GtkWidget *vbox, GkrellmAlert *alert, gpointer data),
|
||||
+ (*config_apply_func)(GkrellmAlert *alert, gpointer data, gboolean closing),
|
||||
+ (*config_save_func)(GkrellmAlert *alert, gpointer data, FILE *f, gchar *p, gchar *id),
|
||||
+ (*config_load_func)(GkrellmAlert *alert, gchar *config_id, gchar *alert_id);
|
||||
}
|
||||
GkrellmAlertPlugin;
|
||||
|
||||
@@ -847,7 +848,7 @@ typedef struct
|
||||
}
|
||||
GkrellmAlertkrell;
|
||||
|
||||
-typedef struct
|
||||
+struct GkrellmAlert
|
||||
{
|
||||
GkrellmPanel *panel;
|
||||
gchar *name,
|
||||
@@ -870,15 +871,15 @@ typedef struct
|
||||
alarm_repeat;
|
||||
gint delay;
|
||||
|
||||
- void (*cb_trigger)();
|
||||
+ void (*cb_trigger)(GkrellmAlert *alert, gpointer data);
|
||||
gpointer cb_trigger_data;
|
||||
void (*cb_stop)();
|
||||
gpointer cb_stop_data;
|
||||
- void (*cb_config)();
|
||||
+ void (*cb_config)(GkrellmAlert *alert, gpointer data);
|
||||
gpointer cb_config_data;
|
||||
- void (*cb_config_create)();
|
||||
+ void (*cb_config_create)(GkrellmAlert *alert, GtkWidget *vbox1, gpointer data);
|
||||
gpointer cb_config_create_data;
|
||||
- void (*cb_command_process)();
|
||||
+ void (*cb_command_process)(GkrellmAlert *alert, gchar *src, gchar *buf, gint size, void* target);
|
||||
gpointer cb_command_process_data;
|
||||
|
||||
GtkWidget *config_window,
|
||||
@@ -910,8 +911,7 @@ typedef struct
|
||||
|
||||
gchar *id_string; /* For unique alert names for alert plugins */
|
||||
GList *plugin_list;
|
||||
- }
|
||||
- GkrellmAlert;
|
||||
+ };
|
||||
|
||||
/* ------------------------ */
|
||||
|
||||
--- a/src/inet.c
|
||||
+++ b/src/inet.c
|
||||
@@ -36,7 +36,8 @@
|
||||
#include "gkrellm-sysdeps.h"
|
||||
#include "inet.h"
|
||||
|
||||
-typedef struct
|
||||
+typedef struct InetMon InetMon;
|
||||
+struct InetMon
|
||||
{
|
||||
GtkWidget *vbox;
|
||||
gchar *name;
|
||||
@@ -87,8 +88,7 @@ typedef struct
|
||||
port1_1;
|
||||
|
||||
gulong krell_hits;
|
||||
- }
|
||||
- InetMon;
|
||||
+ };
|
||||
|
||||
static GkrellmMonitor *mon_inet;
|
||||
|
||||
@@ -824,9 +824,10 @@ cb_panel_press(GtkWidget *widget, GdkEventButton *ev)
|
||||
/* Lock the hour and minute heights together.
|
||||
*/
|
||||
static void
|
||||
-cb_inet_height(GkrellmChartconfig *cf, InetMon *in)
|
||||
+cb_inet_height(GkrellmChartconfig *cf, gpointer data)
|
||||
{
|
||||
gint h;
|
||||
+ InetMon *in = (InetMon*) data;
|
||||
|
||||
h = gkrellm_get_chartconfig_height(cf);
|
||||
if (in->chart_minute->h != h)
|
||||
--- a/src/krell.c
|
||||
+++ b/src/krell.c
|
||||
@@ -1483,7 +1483,7 @@ gkrellm_show_button(GkrellmDecalbutton *b)
|
||||
}
|
||||
|
||||
gboolean
|
||||
-gkrellm_in_button(GkrellmDecalbutton *b, GdkEventButton *ev)
|
||||
+gkrellm_in_button(GkrellmDecalbutton *b, GdkEventButton *ev, gpointer data)
|
||||
{
|
||||
return gkrellm_in_decal(b->decal, ev);
|
||||
}
|
||||
--- a/src/mail.c
|
||||
+++ b/src/mail.c
|
||||
@@ -255,12 +255,13 @@ typedef struct
|
||||
}
|
||||
MailAccount;
|
||||
|
||||
-typedef struct
|
||||
+typedef struct Mailbox Mailbox;
|
||||
+struct Mailbox
|
||||
{
|
||||
MailAccount *account;
|
||||
gboolean busy;
|
||||
GString *tcp_in;
|
||||
- gboolean (*check_func)();
|
||||
+ gboolean (*check_func)(Mailbox *mbox);
|
||||
gpointer data; /* For external mailboxes (in plugins) */
|
||||
GThread* thread;
|
||||
gint mail_count;
|
||||
@@ -277,8 +278,7 @@ typedef struct
|
||||
gchar *uidl;
|
||||
gboolean warned;
|
||||
void *private;
|
||||
- }
|
||||
- Mailbox;
|
||||
+ };
|
||||
|
||||
static GList *mailbox_list;
|
||||
|
||||
@@ -2309,9 +2309,8 @@ reset_mail_fetch(void)
|
||||
}
|
||||
|
||||
static gboolean
|
||||
-run_fetch_program(void)
|
||||
+run_fetch_program(Mailbox *mbox)
|
||||
{
|
||||
- Mailbox *mbox;
|
||||
Mailproc *mp = (Mailproc *) mail_fetch->private;
|
||||
GList *list;
|
||||
|
||||
--- a/src/mem.c
|
||||
+++ b/src/mem.c
|
||||
@@ -662,8 +662,9 @@ cb_panel_motion(GtkWidget *widget, GdkEventButton *ev)
|
||||
}
|
||||
|
||||
static void
|
||||
-setup_scaling(GkrellmChartconfig *cf, MeminfoChart *mc)
|
||||
+setup_scaling(GkrellmChartconfig *cf, gpointer data)
|
||||
{
|
||||
+ MeminfoChart* mc = (MeminfoChart*)data;
|
||||
GkrellmChart *cp = mc->chart;
|
||||
gint res = DEFAULT_GRID_RES,
|
||||
grids = FULL_SCALE_GRIDS;
|
||||
--- a/src/net.c
|
||||
+++ b/src/net.c
|
||||
@@ -1165,8 +1165,9 @@ grid_resolution_default(NetMon *net)
|
||||
}
|
||||
|
||||
static void
|
||||
-setup_net_scaling(GkrellmChartconfig *cf, NetMon *net)
|
||||
+setup_net_scaling(GkrellmChartconfig *cf, gpointer data)
|
||||
{
|
||||
+ NetMon *net = (NetMon*)data;
|
||||
GkrellmChart *cp = net->chart;
|
||||
gint grids, res;
|
||||
|
||||
--- a/src/proc.c
|
||||
+++ b/src/proc.c
|
||||
@@ -333,7 +333,7 @@ cb_proc_extra(GtkWidget *widget, GdkEventButton *ev)
|
||||
}
|
||||
|
||||
static void
|
||||
-setup_proc_scaling(void)
|
||||
+setup_proc_scaling(GkrellmChartconfig *config, gpointer data)
|
||||
{
|
||||
GkrellmChart *cp = proc.chart;
|
||||
gint grids, res, new_fork_scaling;
|
||||
@@ -567,7 +567,7 @@ create_proc_monitor(GtkWidget *vbox, gint first_create)
|
||||
_("Average process load per minute"));
|
||||
|
||||
gkrellm_alloc_chartdata(cp);
|
||||
- setup_proc_scaling();
|
||||
+ setup_proc_scaling(NULL, NULL);
|
||||
|
||||
/* I put motherboard temp on Proc panel (if temperature sensors found)
|
||||
*/
|
||||
--- a/src/sensors.c
|
||||
+++ b/src/sensors.c
|
||||
@@ -1985,7 +1985,7 @@ static Sensor *dragged_sensor;
|
||||
|
||||
static gint sensor_last_group;
|
||||
|
||||
-static gboolean (*original_row_drop_possible)();
|
||||
+static gboolean (*original_row_drop_possible)(GtkTreeDragDest *drag_dest, GtkTreePath *path, GtkSelectionData *selection_data);
|
||||
|
||||
|
||||
|
||||
--- a/src/sysdeps-unix.c
|
||||
+++ b/src/sysdeps-unix.c
|
||||
@@ -89,7 +89,7 @@
|
||||
#endif
|
||||
|
||||
#if !defined(SENSORS_COMMON) && !defined(WIN32)
|
||||
-static gboolean (*mbmon_check_func)();
|
||||
+static gboolean (*mbmon_check_func)(gboolean);
|
||||
#endif
|
||||
|
||||
gchar *
|
||||
--- a/src/sysdeps/sensors-common.c
|
||||
+++ b/src/sysdeps/sensors-common.c
|
||||
@@ -54,7 +54,7 @@ static gchar gkrellm_decimal_point,
|
||||
mbmon_decimal_point;
|
||||
static gboolean mbmon_need_decimal_point_fix;
|
||||
|
||||
-static gboolean (*mbmon_check_func)();
|
||||
+static gboolean (*mbmon_check_func)(gboolean);
|
||||
|
||||
static gboolean
|
||||
mbmon_decimal_point_fix(gchar *buf)
|
||||
--
|
||||
2.39.1
|
||||
|
||||
|
@ -0,0 +1,151 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PLOCALES="bg cs da de es fr it ja nl pl po pt pt_BR ru sl sv uk"
|
||||
PLOCALE_BACKUP="en"
|
||||
inherit desktop plocale systemd toolchain-funcs
|
||||
|
||||
DESCRIPTION="Single process stack of various system monitors"
|
||||
HOMEPAGE="http://gkrellm.srcbox.net/"
|
||||
if [[ "${PV}" == 9999 ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.srcbox.net/gkrellm/gkrellm.git"
|
||||
else
|
||||
SRC_URI="http://gkrellm.srcbox.net/releases/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="2"
|
||||
IUSE="gnutls hddtemp lm-sensors nls ntlm ssl X"
|
||||
|
||||
RDEPEND="
|
||||
acct-group/gkrellmd
|
||||
acct-user/gkrellmd
|
||||
dev-libs/glib:2
|
||||
hddtemp? ( app-admin/hddtemp )
|
||||
ssl? (
|
||||
gnutls? ( net-libs/gnutls )
|
||||
!gnutls? (
|
||||
dev-libs/openssl:0=
|
||||
)
|
||||
)
|
||||
lm-sensors? ( sys-apps/lm-sensors:= )
|
||||
nls? ( virtual/libintl )
|
||||
ntlm? ( net-libs/libntlm )
|
||||
X? (
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/pango
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
x11-base/xorg-proto
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-2.3.5-config.patch"
|
||||
"${FILESDIR}/${PN}-2.3.5-width.patch"
|
||||
"${FILESDIR}/${PN}-2.3.5-sansfont.patch"
|
||||
"${FILESDIR}/${PN}-2.3.11-clang16.patch"
|
||||
)
|
||||
|
||||
DOCS=( Changelog CREDITS README )
|
||||
|
||||
pkg_pretend() {
|
||||
if use gnutls && ! use ssl ; then
|
||||
ewarn "You have enabled the \"gnutls\" USE flag but not the \"ssl\" USE flag."
|
||||
ewarn "No ssl backend will be built!"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
sed -e 's:-O2 ::' \
|
||||
-e 's:override CC:CFLAGS:' \
|
||||
-e 's:-L/usr/X11R6/lib::' \
|
||||
-i */Makefile || die "sed Makefile(s) failed"
|
||||
|
||||
sed -e "s:/usr/lib:${EPREFIX}/usr/$(get_libdir):" \
|
||||
-e "s:/usr/local/lib:${EPREFIX}/usr/local/$(get_libdir):" \
|
||||
-i src/${PN}.h || die "sed ${PN}.h failed"
|
||||
|
||||
delete_locale() {
|
||||
local locale=${1}
|
||||
rm -f po/${locale}{.po,.mo} || die
|
||||
}
|
||||
|
||||
plocale_for_each_disabled_locale delete_locale
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
TARGET=
|
||||
|
||||
if use X ; then
|
||||
emake \
|
||||
${TARGET} \
|
||||
CC="$(tc-getCC)" \
|
||||
STRIP="" \
|
||||
INSTALLROOT="${EPREFIX}/usr" \
|
||||
INCLUDEDIR="${EPREFIX}/usr/include/gkrellm2" \
|
||||
LOCALEDIR="${EPREFIX}/usr/share/locale" \
|
||||
$(usex nls "" "enable_nls=0") \
|
||||
$(usex lm-sensors "" "without-libsensors=yes") \
|
||||
$(usex ntlm "" "without-ntlm=yes") \
|
||||
$(usex ssl $(usex gnutls 'without-ssl=yes' 'without-gnutls=yes') 'without-ssl=yes without-gnutls=yes')
|
||||
else
|
||||
cd server || die
|
||||
emake \
|
||||
${TARGET} \
|
||||
CC="$(tc-getCC)" \
|
||||
LINK_FLAGS="$LDFLAGS -Wl,-E" \
|
||||
STRIP="" \
|
||||
$(usex nls "" "enable_nls=0") \
|
||||
$(usex lm-sensors "" "without-libsensors=yes")
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use X ; then
|
||||
emake \
|
||||
install${TARGET:+_}${TARGET} \
|
||||
$(usex nls "" "enable_nls=0") \
|
||||
STRIP="" \
|
||||
INSTALLDIR="${ED}/usr/bin" \
|
||||
INCLUDEDIR="${ED}/usr/include" \
|
||||
LOCALEDIR="${ED}/usr/share/locale" \
|
||||
PKGCONFIGDIR="${ED}/usr/$(get_libdir)/pkgconfig" \
|
||||
MANDIR="${ED}/usr/share/man/man1"
|
||||
|
||||
docinto html
|
||||
dodoc *.html
|
||||
|
||||
newicon src/icon.xpm ${PN}.xpm
|
||||
make_desktop_entry ${PN} GKrellM ${PN}
|
||||
else
|
||||
dobin server/gkrellmd
|
||||
|
||||
insinto /usr/include/gkrellm2
|
||||
doins server/gkrellmd.h
|
||||
doins shared/log.h
|
||||
fi
|
||||
|
||||
newinitd "${FILESDIR}"/gkrellmd.initd gkrellmd
|
||||
newconfd "${FILESDIR}"/gkrellmd.conf gkrellmd
|
||||
|
||||
systemd_dounit "${FILESDIR}"/gkrellmd.service
|
||||
|
||||
insinto /etc
|
||||
doins server/gkrellmd.conf
|
||||
|
||||
einstalldocs
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST sysstat-12.6.2.tar.gz 1455025 BLAKE2B aba2d8fd5fae8d6df740173d7ccd60beb0628c4c2205342f72ec03d6c48995d397de0d6f2cace24accf1a9274da37cf3bba86888717bc8d62d262ffd1c6f995e SHA512 376047de55598c6f671b999203809219a40206a9c58499399681af9ebe6048dd4da96c8ef5827d75cc369a7b69c3f1aadef1a5e8deec318a12b230d61f09fc08
|
||||
DIST sysstat-12.7.1.tar.gz 1464847 BLAKE2B dd4cb510d45879665945d7c3efcb9e1011f6b77d152c7f989ef6a3e8f203c05c1ca708959030cb864c31810ec27a5e880a9cfcd805f26c4f3537d55bdd9fd763 SHA512 5c1da0f5a1bf26091f029c5ea138f836616becb1e531843aa2c150a66ddc1f07b43cffeac98445855bf70319942fe22838a682c2f7685893bead7d8de7e9e2a8
|
||||
|
@ -0,0 +1,84 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit systemd toolchain-funcs
|
||||
|
||||
DESCRIPTION="System performance tools for Linux"
|
||||
HOMEPAGE="http://sebastien.godard.pagesperso-orange.fr/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="dcron debug nls lm-sensors lto selinux systemd"
|
||||
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
COMMON_DEPEND="
|
||||
nls? ( virtual/libintl )
|
||||
lm-sensors? ( sys-apps/lm-sensors:= )
|
||||
"
|
||||
|
||||
DEPEND="${COMMON_DEPEND}"
|
||||
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
!dcron? ( !sys-process/dcron )
|
||||
selinux? ( sec-policy/selinux-sysstat )
|
||||
"
|
||||
|
||||
REQUIRED_USE="dcron? ( !systemd )"
|
||||
|
||||
src_prepare() {
|
||||
if use dcron; then
|
||||
sed -i 's/@CRON_OWNER@ //g' cron/sysstat.crond.in || die
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-export AR
|
||||
|
||||
sa_lib_dir=/usr/lib/sa \
|
||||
conf_dir=/etc \
|
||||
econf \
|
||||
$(use_enable !systemd use-crond) \
|
||||
$(use_enable lm-sensors sensors) \
|
||||
$(use_enable lto) \
|
||||
$(use_enable nls) \
|
||||
$(usex debug --enable-debuginfo '') \
|
||||
--disable-compress-manpg \
|
||||
--disable-stripping \
|
||||
--disable-pcp \
|
||||
--enable-copy-only \
|
||||
--enable-documentation \
|
||||
--enable-install-cron \
|
||||
--with-systemdsystemunitdir=$(systemd_get_systemunitdir)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
LFLAGS="${LDFLAGS}" default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
keepdir /var/log/sa
|
||||
|
||||
emake \
|
||||
CHOWN=true \
|
||||
DESTDIR="${D}" \
|
||||
DOC_DIR=/usr/share/doc/${PF} \
|
||||
MANGRPARG='' \
|
||||
install
|
||||
|
||||
dodoc -r contrib/
|
||||
|
||||
newinitd "${FILESDIR}"/${PN}.init.d ${PN}
|
||||
systemd_dounit ${PN}.service
|
||||
|
||||
rm "${D}"/usr/share/doc/${PF}/COPYING || die
|
||||
}
|
Binary file not shown.
@ -1,3 +1,4 @@
|
||||
DIST unrar-6.1.7.tar.gz 236798 BLAKE2B e33a7500b4a03a54f84b018ab90934366f52ef54c83257ed7fe4419ba993d2a8c21de26f445ae18d870aa5232cfbf1f5d8fbc0b3965803aeec6cac5e5a38e949 SHA512 b1a95358ff66b0e049597bbc4e1786d0bc909a8aff4aca94ee793d0d5a3c8b052eb347d88f44b6bc2e6231e777f1b711c198711118ae9ffbe8db2f72e7fbe846
|
||||
DIST unrar-6.2.1.tar.gz 242918 BLAKE2B 55cd5d11caae2e6cef2a36f5656b76d96946d6d7df3f34d7c65cc31b43b820d955da4751666797f8147c6a7b20c3429527b2b1629842334d3bec6de49e1d6a72 SHA512 920819b4b3e76004492813b4c22309443976fe5e7c873032bc084603b902c6873775cb90cb173d78de3624a3161a2238c9ece1e817f6b7d915937e2e18d8def9
|
||||
DIST unrar-6.2.3.tar.gz 245210 BLAKE2B 85dc22e52404a57286a19c901543aaeffd4526a2f7653f35b4d60c8c7c0965401f9b9658f79b1a06fc56365268a7c4895a560f04cff5d926fbc20ffa4f3d8f10 SHA512 070d027134210db930500f612bae41390af53d810160f8e5368640b6afee1a26650fc3473f8b563248b47ecc082dfd30b6fca318de6539c7795ac93af39f3357
|
||||
DIST unrar-6.2.5.tar.gz 245711 BLAKE2B 6cdb899ecb996184769eda11b113e8cdb39f89d6be9c3109fbb6b72a8778109db02c9a7b8451190c3eb994dbd3c628d7c8bdc6a9316aff0596d1a10d903d39f1 SHA512 0b85f085e3419d4d044c70a20abdd28f4528ffcf719703a30656ea906610cd5aa5826f57ef63e2db4e541a2f01c6c5504c19bc67319bf48c377784a30fb4b20e
|
||||
|
@ -0,0 +1,65 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit multilib toolchain-funcs
|
||||
|
||||
MY_PN="${PN}src"
|
||||
|
||||
DESCRIPTION="Uncompress rar files"
|
||||
HOMEPAGE="https://www.rarlab.com/rar_add.htm"
|
||||
SRC_URI="https://www.rarlab.com/rar/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/unrar"
|
||||
|
||||
LICENSE="unRAR"
|
||||
SLOT="0/6" # subslot = soname version
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x86-solaris"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-5.9.3-build.patch
|
||||
"${FILESDIR}"/${PN}-5.5.5-honor-flags.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local sed_args=( -e "/libunrar/s:.so:$(get_libname ${PV%.*.*}):" )
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
sed_args+=( -e "s:-shared:-dynamiclib -install_name ${EPREFIX}/usr/$(get_libdir)/libunrar$(get_libname ${PV%.*.*}):" )
|
||||
else
|
||||
sed_args+=( -e "s:-shared:& -Wl,-soname -Wl,libunrar$(get_libname ${PV%.*.*}):" )
|
||||
fi
|
||||
sed -i "${sed_args[@]}" makefile || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
mkdir -p build-{lib,bin} || die
|
||||
printf 'VPATH = ..\ninclude ../makefile' > build-lib/Makefile || die
|
||||
cp build-{lib,bin}/Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
unrar_make() {
|
||||
emake AR="$(tc-getAR)" CXX="$(tc-getCXX)" CXXFLAGS="${CXXFLAGS}" STRIP=true "$@"
|
||||
}
|
||||
|
||||
unrar_make CXXFLAGS+=" -fPIC" -C build-lib lib
|
||||
ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname) || die
|
||||
ln -s libunrar$(get_libname ${PV%.*.*}) build-lib/libunrar$(get_libname ${PV}) || die
|
||||
|
||||
unrar_make -C build-bin
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin build-bin/unrar
|
||||
dodoc readme.txt
|
||||
|
||||
dolib.so build-lib/libunrar*
|
||||
|
||||
insinto /usr/include/libunrar${PV%.*.*}
|
||||
doins *.hpp
|
||||
dosym libunrar${PV%.*.*} /usr/include/libunrar
|
||||
|
||||
find "${ED}" -type f -name "*.a" -delete || die
|
||||
}
|
Binary file not shown.
@ -1,2 +1,2 @@
|
||||
DIST dolphin-plugins-22.08.3.tar.xz 260088 BLAKE2B 2927d42a603776cc3b600606ff2f27a77c8bbbe6b089d3e691571c7594d0e4d53023064afbf07e02f546073823a873fd45f200ea13b9e2765b61046602d8239b SHA512 2201858d9d349c28cced78dcfd9a31c3fde05b3ab107a28615af4cc5c32d4315074881f78dfb255638a13269de16ab68b7c53b68d013cf46ded091f8b059173e
|
||||
DIST dolphin-plugins-22.12.1.tar.xz 268820 BLAKE2B e2468bb550d779d89808a59839f191fc5dd75a0146dfd3a2ba6dac823df8ea62b6425d5ca074b189f5d06e5f461b2edeb49423718e4da767e11edac3e6c35154 SHA512 7f3a3795050371b38e77b726eb74b2c0b0bc777056402a36c3f85e3e58103f2a56d73fa599a45572516aaa2e173f0fc3adf4ced6a5d8aabd4d07939c05deb62c
|
||||
DIST dolphin-plugins-22.12.2.tar.xz 271696 BLAKE2B b2a8fecc15ad80f4bdc8ca21517f39354576dac6e81e93a276266d6e2b4d4d09142794972c5b4d09b71019a11aad3f80dd9a07064759c05c0a13ee572980e7d6 SHA512 bc54ceaa845ec5e5493f687cd0c7b3f6a0bab264de5c03f65e219ccd9bbc4c3f348bd48cbb885bea41ed68fd8d0bfc30420f9959bde2bb04b5a37b33210b6667
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,43 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
NEED_EMACS=24.4
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="Compatibility libraries for Emacs"
|
||||
HOMEPAGE="https://github.com/emacs-compat/compat/
|
||||
https://git.sr.ht/~pkal/compat/"
|
||||
SRC_URI="https://github.com/emacs-compat/${PN}/archive/${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
|
||||
|
||||
BDEPEND="sys-apps/texinfo"
|
||||
|
||||
ELISP_TEXINFO="${PN}.texi"
|
||||
|
||||
src_compile() {
|
||||
emake compile ${PN}.info
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local has_json="$("${EMACS}" ${EMACSFLAGS} --eval "(princ (fboundp 'json-parse-string))")"
|
||||
if [[ "${has_json}" != t ]] ; then
|
||||
local line
|
||||
while read line ; do
|
||||
ewarn "${line}"
|
||||
done <<-EOF
|
||||
Your current Emacs version does not support native JSON parsing,
|
||||
which is required for running tests of ${CATEGORY}/${PN}.
|
||||
Emerge >=app-editors/emacs-27 with USE="json" and use "eselect emacs"
|
||||
to select that version.
|
||||
EOF
|
||||
else
|
||||
emake test
|
||||
fi
|
||||
}
|
@ -1 +1 @@
|
||||
DIST mu-cite-201808232348.tar.gz 20443 BLAKE2B 814ebbd3ab45af4af65fee54884a1960a0cecccd07e1e0e084e860fcab4884ca0d97f4042f14f530b8ead4ee4347d13dbde9ecc96f5e82121bad44e0b93855ac SHA512 5a30124041ea5a807f5d8ea8a1ef18afcc7020d3f2d2bee4dd163fa1098d37d27b43db81c1b538bf1d1b06720840fb5c3f95d999fddd624437dd251fa061f699
|
||||
DIST mu-cite-202011031127.tar.gz 21170 BLAKE2B 222aa03b42161d435d2aa09059d5b923fc4e336fce7a61e0a98535decdedb7c1a7c75129f3485118392acb569713b5ad8e0fd3b9be088a67ab15312ad4e94ba8 SHA512 d9fc6f7ad449506b6cd0f72f2e67e9f3c726b90fba39a3ff267aad25cc12a2b34a19c39371e7e58cb66bc9f9ed1b215e6b92f74e20aada4292441b6733ec73eb
|
||||
|
@ -0,0 +1 @@
|
||||
DIST rg-2.2.1.tar.gz 202686 BLAKE2B 43abfdc5d631d5551272788dc31f8767f2b638604f180dfd0cb96df8d142f97ec644482da660c279f1877ab77477e5f25810de3850439d0210be1e4040c77a98 SHA512 eac9c21db6a13299e24f3e6166ff45f378f44454bc02ad8c04b42580d03c67eb28fbaee17feaa53096b7dced2e4e7dbf64a50608c61fe9188530fa0102a0f240
|
@ -0,0 +1,2 @@
|
||||
(add-to-list 'load-path "@SITELISP@")
|
||||
(load "rg-autoloads" nil t)
|
@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>gnu-emacs@gentoo.org</email>
|
||||
<name>Gentoo GNU Emacs project</name>
|
||||
</maintainer>
|
||||
<longdescription>
|
||||
A search package based on the ripgrep command line tool. It allows you to
|
||||
interactively create searches, doing automatic searches based on the
|
||||
editing context, refining and modifying search results and much more. It is
|
||||
also highly configurable to be able to fit different users' needs. If you
|
||||
are used to built-in Emacs rgrep command, transitioning to rg should be
|
||||
simple. rg provides a lot of extra features but the basics are similar. The
|
||||
big benefit of using ripgrep instead of grep as a backend is speed.
|
||||
Especially when searching large source code repositories where ripgrep
|
||||
really shines.
|
||||
</longdescription>
|
||||
<upstream>
|
||||
<bugs-to>https://github.com/dajva/rg.el/issues/</bugs-to>
|
||||
<remote-id type="github">dajva/rg.el</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,56 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
NEED_EMACS=25.1
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="GNU Emacs search tool based on ripgrep"
|
||||
HOMEPAGE="https://rgel.readthedocs.io/
|
||||
https://github.com/dajva/rg.el/"
|
||||
SRC_URI="https://github.com/dajva/rg.el/archive/${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/rg.el-${PV}
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
COMMON_DEPEND="
|
||||
app-emacs/transient
|
||||
app-emacs/wgrep
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
sys-apps/ripgrep
|
||||
"
|
||||
BDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
test? (
|
||||
app-emacs/ert-runner
|
||||
app-emacs/s
|
||||
app-emacs/undercover
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( README.md )
|
||||
ELISP_REMOVE="test/rg.el-test.el test/rg-isearch.el-test.el"
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
src_compile() {
|
||||
elisp_src_compile
|
||||
elisp-make-autoload-file
|
||||
}
|
||||
|
||||
src_test() {
|
||||
ert-runner -L . -L test --reporter ert+duration --script test || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
elisp_src_install
|
||||
doinfo rgel.info
|
||||
}
|
Binary file not shown.
@ -1,63 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} pypy3 )
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit distutils-r1 xdg-utils
|
||||
|
||||
DESCRIPTION="app-emulation/winetricks wrapper for Proton (Steam Play) games"
|
||||
HOMEPAGE="https://github.com/Matoking/protontricks"
|
||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64"
|
||||
IUSE="+gui"
|
||||
|
||||
RDEPEND="app-emulation/winetricks
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
||||
dev-python/vdf[${PYTHON_USEDEP}]
|
||||
')
|
||||
gui? ( gnome-extra/zenity
|
||||
|| (
|
||||
app-emulation/winetricks[gtk]
|
||||
app-emulation/winetricks[kde]
|
||||
)
|
||||
)"
|
||||
BDEPEND="$(python_gen_cond_dep '
|
||||
dev-python/setuptools_scm[${PYTHON_USEDEP}]
|
||||
')"
|
||||
|
||||
DOCS=( CHANGELOG.md README.md )
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_prepare_all() {
|
||||
distutils-r1_python_prepare_all
|
||||
echo "version = '${PV}'" > "${S}"/src/${PN}/_version.py || die "Failed to generate the version file"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
|
||||
elog
|
||||
|
||||
if ! use gui; then
|
||||
ewarn "Please note that disabling USE=gui does *not* presently remove the --gui command-line option,"
|
||||
ewarn "it just means using this option will fail unless gnome-extra/zenity happens to be installed."
|
||||
ewarn
|
||||
fi
|
||||
|
||||
elog "Protontricks can only find games for which a Proton prefix already exists."
|
||||
elog "Make sure to run a Proton game at least once before trying to use protontricks on it."
|
||||
elog
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_desktop_database_update
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
DIST uxn-0_p20220921.tar.gz 286803 BLAKE2B 98230eec1f5071451a25dbe0136f3fd2d7e9ad08287df40bef611ae3012e3775d787a653a43fb4f1cb6c8f213cb8d39684e48c4f6c225bc19e86f1e4b94d73ba SHA512 8568114ddd98672aab4ca59ab279d39ff7a30c04d0b2a53da85b342a17a80d82b5b0ab90f04f63aa0491f8feaa91655f8fa725ec0d76a559b6201407b47bf1f5
|
||||
DIST uxn-0_p20221022.tar.gz 287106 BLAKE2B 3ca3f1363a71c2c974e95c75cba09d13ff81f320e1ec5ecf3b9a93de6d834447105fd49aa04c0c94a53f01a79bfda68f24662c7eac3993937d9870e5fd7dd4f6 SHA512 77fa297cdd02856cc1a6ddd4515f459d77e216434319a3e7901598d1c28dc34fe49429ae6875745f412bbc977c44041c2c65dc5d0dc4fdb25708e8e666995d81
|
||||
DIST uxn-0_p20221211.tar.gz 284943 BLAKE2B de116e87120bc71975271c9ad0c1b01cba6e13a78cba0faaf811a2cace72204f15fca620bb4c87518542208e1c2af49e6db98b1b3b442ec3a855fb8b592acb2d SHA512 d59504f994b487aff151fefdb2f0f87a707fe998c1ea08539dc8d67aed28a4c93c9ff4bde036a9eb44401e8e6a12b7a15c17e434d5cab7b44a17e2e18e50e978
|
||||
DIST uxn-0_p20230201.tar.gz 285942 BLAKE2B 2ace9aba9e7c5c7cd60c8db2208e16b4af4830dee5bb10eaa228028ada8701154069423a6b920a09821f63e52dd8955c48e2f13b58061aa08256045e20aaf020 SHA512 e33ff693124d14ee94c8192adb47d940f08d37c22067264afdcae7f4f9ac713915c4daa3bbee3e38385cb71b988a30991ca8ea123dd542438367eaf3a4c88f84
|
||||
|
@ -1,24 +1,23 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
H=cbc61578b77881232fda4cc42aa914a0806b786f
|
||||
[[ ${PV} == *_p20230201 ]] && COMMIT=0dcc3b4c2e12bf2a61e682e9168e8bdb469caae0
|
||||
|
||||
inherit toolchain-funcs
|
||||
|
||||
DESCRIPTION="An assembler and emulator for the Uxn stack-machine, written in ANSI C"
|
||||
HOMEPAGE="
|
||||
https://wiki.xxiivv.com/site/uxn.html
|
||||
https://git.sr.ht/~rabbits/uxn/
|
||||
"
|
||||
HOMEPAGE="https://wiki.xxiivv.com/site/uxn.html
|
||||
https://git.sr.ht/~rabbits/uxn/"
|
||||
|
||||
if [[ ${PV} == *9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.sr.ht/~rabbits/uxn.git"
|
||||
else
|
||||
SRC_URI="https://git.sr.ht/~rabbits/uxn/archive/${H}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/${PN}-${H}
|
||||
SRC_URI="https://git.sr.ht/~rabbits/uxn/archive/${COMMIT}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/${PN}-${COMMIT}
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
fi
|
||||
|
@ -1,2 +1,3 @@
|
||||
DIST virtio-win-0.1.221.iso 531486720 BLAKE2B aa4914cf3a8298c7949b365a1f3e224c28eecc1a73897aec9c2a54d79976e6bcac5827b2c258e82f1faa86b2787e042e575003f6975ec11d875cf8ee2a4e184f SHA512 ee2608a4bb873911541cf884d1840845173e64b309fad23d744aaaa058d7c3ef8bf89fadf316d8d93363585402690923ffd6252660b4f609a439c561decfece0
|
||||
DIST virtio-win-0.1.225.iso 532060160 BLAKE2B ed0fbf486f0c576bed25f02ea09cfd957a00a42d85063feb1dd2977e2cd816601fe2b013e00abbccf07eb765da3b64b88b5675c95175fdc971a20d784c28d503 SHA512 c0a940ca747983d88876f805f7266a8aae61b83857983738d06e9d555569d2b42a9cddb77d535b4f9dbc4b1099583f8b6844f13e4bd98ea1f0f6aec22c6c9be7
|
||||
DIST virtio-win-0.1.229.iso 534818816 BLAKE2B 29442b70e5809fc935940497b4bc021f6fe890beba97605b048e0c5236764d08bc164974be25bf8331136ebbdf664ea440efe1f219129a30a171134bfe369942 SHA512 e9ccb513b07cb28ab490f5d4e299d0d52ade956f82e1a708e91c1ee3af9b142fa144af0fe5287d3bbb369f586857791952de45d1241058073f5a59c1f2f913ca
|
||||
|
@ -0,0 +1,15 @@
|
||||
VirtIO drivers have been installed as a CD-ROM image to
|
||||
|
||||
/usr/share/drivers/windows/virtio-win.iso
|
||||
|
||||
To install the drivers on a Windows guest machine, either during or after the
|
||||
installation of Windows, pass the iso file to the guest machine and mount it as
|
||||
a CD-ROM image. Then, in the Windows guest, open the Device Manager and start
|
||||
the driver update wizard. Locate the appropriate device and click to update its
|
||||
driver. In the pop-up window, click to browse in the guest machine to locate
|
||||
the iso image, and select the driver(s) from it to install.
|
||||
|
||||
For an example, see: https://wiki.gentoo.org/wiki/QEMU/Windows_guest
|
||||
|
||||
For information on using the Device Manager, refer to the Windows
|
||||
documentation.
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit readme.gentoo-r1
|
||||
|
||||
MY_PV=$(ver_cut 1-3)
|
||||
MY_DW=$(ver_rs 3 -)
|
||||
|
||||
DESCRIPTION="VirtIO drivers for Windows virtual machines running on KVM"
|
||||
HOMEPAGE="https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html"
|
||||
SRC_URI="https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/${PN}-${MY_DW}/${PN}-${MY_PV}.iso"
|
||||
|
||||
LICENSE="BSD Apache-2.0 GPL-2 GPL-2+ GPL-3+ LGPL-2+ Ms-RL"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
S="${WORKDIR}"
|
||||
INSTALL_PATH=/usr/share/drivers/windows
|
||||
|
||||
src_install() {
|
||||
insinto "${INSTALL_PATH}"
|
||||
doins "${DISTDIR}/${PN}-${MY_PV}.iso"
|
||||
dosym "${PN}-${MY_PV}.iso" "${INSTALL_PATH}/${PN}.iso"
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
Add a few missing includes.
|
||||
|
||||
Bug: https://bugs.gentoo.org/892852
|
||||
|
||||
--- a/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||
+++ b/src/libs/dxvk-native-1.9.2a/src/util/util_matrix.cpp
|
||||
@@ -1,3 +1,4 @@
|
||||
+#include <cstdint>
|
||||
#include "util_matrix.h"
|
||||
|
||||
namespace dxvk {
|
||||
@@ -229,4 +230,4 @@
|
||||
return os;
|
||||
}
|
||||
|
||||
-}
|
||||
\ No newline at end of file
|
||||
+}
|
||||
--- a/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||
+++ b/src/libs/dxvk-native-1.9.2a/src/util/util_vector.h
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <iostream>
|
||||
+#include <cstdint>
|
||||
|
||||
#include "util_bit.h"
|
||||
#include "util_math.h"
|
@ -0,0 +1,729 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# To add a new Python here:
|
||||
# 1. Patch src/libs/xpcom18a4/python/Makefile.kmk (copy the previous impl's logic)
|
||||
# Do NOT skip this part. It'll end up silently not-building the Python extension
|
||||
# or otherwise misbehaving if you do.
|
||||
#
|
||||
# 2. Then update PYTHON_COMPAT & set PYTHON_SINGLE_TARGET for testing w/ USE=python.
|
||||
#
|
||||
# May need to look at other distros (e.g. Arch Linux) to find patches for newer
|
||||
# Python versions as upstream tends to lag. Upstream may have patches on their
|
||||
# trunk branch but not release branch.
|
||||
#
|
||||
# See bug #785835, bug #856121.
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
|
||||
inherit desktop edo flag-o-matic java-pkg-opt-2 linux-info multilib optfeature pax-utils \
|
||||
python-single-r1 tmpfiles toolchain-funcs udev xdg
|
||||
|
||||
MY_PN="VirtualBox"
|
||||
MY_P=${MY_PN}-${PV}
|
||||
|
||||
DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="
|
||||
https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2
|
||||
https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-6.1.36.tar.bz2
|
||||
gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${PV}.tar.xz ) )
|
||||
"
|
||||
S="${WORKDIR}/${MY_PN}-${PV}"
|
||||
|
||||
LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )"
|
||||
SLOT="0/$(ver_cut 1-2)"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde vnc"
|
||||
|
||||
unset WATCOM #856769
|
||||
|
||||
COMMON_DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
acct-group/vboxusers
|
||||
~app-emulation/virtualbox-modules-${PV}
|
||||
dev-libs/libtpms
|
||||
dev-libs/libxml2
|
||||
dev-libs/openssl:0=
|
||||
media-libs/libpng:0=
|
||||
media-libs/libvpx:0=
|
||||
net-misc/curl
|
||||
sys-libs/zlib
|
||||
dbus? ( sys-apps/dbus )
|
||||
gui? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdbus:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qthelp:5
|
||||
dev-qt/qtprintsupport:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
dev-qt/qtxml:5
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
opengl? ( dev-qt/qtopengl:5 )
|
||||
)
|
||||
lvm? ( sys-fs/lvm2 )
|
||||
opengl? (
|
||||
media-libs/libglvnd[X]
|
||||
media-libs/vulkan-loader
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
)
|
||||
pam? ( sys-libs/pam )
|
||||
sdl? (
|
||||
media-libs/libsdl:0[X,video]
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXt
|
||||
)
|
||||
vboxwebsrv? ( net-libs/gsoap[-gnutls(-),debug?] )
|
||||
vde? ( net-misc/vde )
|
||||
vnc? ( >=net-libs/libvncserver-0.9.9 )
|
||||
"
|
||||
# We're stuck on JDK (and JRE, I guess?) 1.8 because of need for wsimport
|
||||
# with USE="vboxwebsrv java". Note that we have to put things in DEPEND,
|
||||
# not (only, anyway) BDEPEND, as the eclass magic to set the environment variables
|
||||
# based on *DEPEND doesn't work for BDEPEND at least right now.
|
||||
#
|
||||
# There's a comment in Config.kmk about it
|
||||
# ("With Java 11 wsimport was removed, usually part of a separate install now.")
|
||||
# but it needs more investigation.
|
||||
#
|
||||
# See bug #878299 to track this issue.
|
||||
DEPEND="
|
||||
${COMMON_DEPEND}
|
||||
>=dev-libs/libxslt-1.1.19
|
||||
virtual/libcrypt:=
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
gui? (
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libxcb:=
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXrandr
|
||||
)
|
||||
java? ( virtual/jdk:1.8 )
|
||||
opengl? (
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXrandr
|
||||
virtual/glu
|
||||
)
|
||||
sdl? ( x11-libs/libXinerama )
|
||||
pulseaudio? ( media-sound/pulseaudio )
|
||||
udev? ( >=virtual/udev-171 )
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
gui? ( x11-libs/libxcb:= )
|
||||
java? ( virtual/jre:1.8 )
|
||||
"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
app-arch/tar
|
||||
>=dev-lang/yasm-0.6.2
|
||||
dev-libs/libIDL
|
||||
dev-util/glslang
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
sys-apps/which
|
||||
sys-devel/bin86
|
||||
sys-libs/libcap
|
||||
sys-power/iasl
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
app-text/docbook-sgml-dtd:4.4
|
||||
app-text/docbook-xsl-ns-stylesheets
|
||||
dev-texlive/texlive-basic
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexrecommended
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-fontsrecommended
|
||||
dev-texlive/texlive-fontsextra
|
||||
dev-qt/qthelp:5
|
||||
)
|
||||
gui? ( dev-qt/linguist-tools:5 )
|
||||
nls? ( dev-qt/linguist-tools:5 )
|
||||
java? ( virtual/jdk:1.8 )
|
||||
"
|
||||
|
||||
QA_FLAGS_IGNORED="
|
||||
usr/lib64/virtualbox/VBoxDDR0.r0
|
||||
usr/lib64/virtualbox/VMMR0.r0
|
||||
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
|
||||
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug
|
||||
"
|
||||
|
||||
QA_TEXTRELS="
|
||||
usr/lib64/virtualbox/VMMR0.r0
|
||||
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
|
||||
"
|
||||
|
||||
QA_EXECSTACK="
|
||||
usr/lib64/virtualbox/iPxeBaseBin
|
||||
usr/lib64/virtualbox/VMMR0.r0
|
||||
usr/lib64/virtualbox/VBoxDDR0.r0
|
||||
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
|
||||
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug
|
||||
"
|
||||
|
||||
QA_WX_LOAD="
|
||||
usr/lib64/virtualbox/iPxeBaseBin
|
||||
"
|
||||
|
||||
QA_PRESTRIPPED="
|
||||
usr/lib64/virtualbox/VMMR0.r0
|
||||
usr/lib64/virtualbox/VBoxDDR0.r0
|
||||
usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0
|
||||
"
|
||||
|
||||
REQUIRED_USE="
|
||||
java? ( sdk )
|
||||
python? ( sdk )
|
||||
vboxwebsrv? ( java )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-6.1.26-configure-include-qt5-path.patch # bug #805365
|
||||
|
||||
# This patch is needed to avoid automagic detection based on a hardcoded
|
||||
# list of Pythons in configure. It's necessary but not sufficient
|
||||
# (see the rest of the ebuild's logic for the remainder) to handle
|
||||
# proper Python selection.
|
||||
"${FILESDIR}"/${PN}-6.1.34-r3-python.patch
|
||||
|
||||
# 865361
|
||||
"${FILESDIR}"/${PN}-6.1.36-fcf-protection.patch
|
||||
|
||||
"${FILESDIR}"/${PN}-7.0.4-fix-compilation.patch
|
||||
"${FILESDIR}"/${PN}-7.0.0-fix-compilation-clang.patch
|
||||
"${FILESDIR}"/${PN}-7.0.0-python3_11.patch
|
||||
"${FILESDIR}"/${PN}-7.0.6-gcc-13.patch
|
||||
|
||||
# Downloaded patchset
|
||||
"${WORKDIR}"/virtualbox-patches-6.1.36/patches
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if ! use gui; then
|
||||
einfo "No USE=\"gui\" selected, this build will not include any Qt frontend."
|
||||
fi
|
||||
|
||||
if ! use opengl; then
|
||||
einfo "No USE=\"opengl\" selected, this build will lack"
|
||||
einfo "the OpenGL feature."
|
||||
fi
|
||||
if ! use python; then
|
||||
einfo "You have disabled the \"python\" USE flag. This will only"
|
||||
einfo "disable the python bindings being installed."
|
||||
fi
|
||||
if ! use nls && use gui; then
|
||||
einfo "USE=\"gui\" also selects USE=\"nls\". This build"
|
||||
einfo "will have NLS support."
|
||||
fi
|
||||
|
||||
# 749273
|
||||
local d=${ROOT}
|
||||
for i in usr "$(get_libdir)"; do
|
||||
d="${d}/$i"
|
||||
if [[ "$(stat -L -c "%g %u" "${d}")" != "0 0" ]]; then
|
||||
die "${d} should be owned by root, VirtualBox will not start otherwise"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Only add nopie patch when we're on hardened
|
||||
if gcc-specs-pie; then
|
||||
eapply "${FILESDIR}"/050_virtualbox-5.2.8-nopie.patch
|
||||
fi
|
||||
|
||||
# Remove shipped binaries (kBuild, yasm) and tools, see bug #232775
|
||||
rm -r kBuild/bin || die
|
||||
# Remove everything in tools except kBuildUnits
|
||||
find tools -mindepth 1 -maxdepth 1 -name kBuildUnits -prune -o -exec rm -r {} \+ || die
|
||||
|
||||
# Disable things unused or split into separate ebuilds
|
||||
sed -e "s@MY_LIBDIR@$(get_libdir)@" \
|
||||
"${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
|
||||
|
||||
if ! use pch; then
|
||||
# bug #753323
|
||||
printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \
|
||||
>> LocalConfig.kmk || die
|
||||
fi
|
||||
|
||||
# Respect LDFLAGS
|
||||
sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
|
||||
-i Config.kmk src/libs/xpcom18a4/Config.kmk || die
|
||||
|
||||
# Do not use hard-coded ld (related to bug #488176)
|
||||
sed -e '/QUIET)ld /s@ld @$(LD) @' \
|
||||
-i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
|
||||
|
||||
# Use PAM only when pam USE flag is enbaled (bug #376531)
|
||||
if ! use pam; then
|
||||
einfo "Disabling PAM removes the possibility to use the VRDP features."
|
||||
sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
|
||||
sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
|
||||
src/VBox/HostServices/Makefile.kmk || die
|
||||
fi
|
||||
|
||||
# add correct java path
|
||||
if use java; then
|
||||
sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
|
||||
-i "${S}"/Config.kmk || die
|
||||
java-pkg-opt-2_src_prepare
|
||||
fi
|
||||
|
||||
#856811 #864274
|
||||
# cannot filter out only one flag, some combinations of these flags produce buggy executables
|
||||
for i in abm avx avx2 bmi bmi2 fma fma4 popcnt; do
|
||||
append-cflags $(test-flags-CC -mno-$i)
|
||||
append-cxxflags $(test-flags-CXX -mno-$i)
|
||||
done
|
||||
|
||||
# bug #843437
|
||||
cat >> LocalConfig.kmk <<-EOF || die
|
||||
CXXFLAGS=${CXXFLAGS}
|
||||
CFLAGS=${CFLAGS}
|
||||
EOF
|
||||
|
||||
if use sdl; then
|
||||
echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die
|
||||
fi
|
||||
|
||||
#443830
|
||||
echo -e "\nVBOX_WITH_VBOX_IMG=1" >> LocalConfig.kmk || die
|
||||
|
||||
# clang assembler chokes on comments starting with /
|
||||
if tc-is-clang; then
|
||||
sed -i -e '/^\//d' src/libs/xpcom18a4/nsprpub/pr/src/md/unix/os_Linux_x86_64.s || die
|
||||
fi
|
||||
|
||||
# fix doc generation
|
||||
echo -e "\nVBOX_PATH_DOCBOOK=/usr/share/sgml/docbook/xsl-ns-stylesheets" >> LocalConfig.kmk || die
|
||||
# replace xhtml names with numeric equivalents
|
||||
find doc/manual -name \*.xml -exec sed -i \
|
||||
-e 's/ /\ /g' \
|
||||
-e 's/–/\–/g' \
|
||||
-e 's/←/\←/g' \
|
||||
-e 's/→/\→/g' \
|
||||
-e 's/↔/\↔/g' {} \+ || die
|
||||
|
||||
# fix help path #891879
|
||||
echo -e "\nVBOX_PATH_PACKAGE_DOCS=/usr/share/doc/${PF}" >> LocalConfig.kmk || die
|
||||
|
||||
# 489208
|
||||
# Cannot patch the whole text, many translations. Use sed instead to replace the command
|
||||
find src/VBox/Frontends/VirtualBox/nls -name \*.ts -exec sed -i \
|
||||
's/'[^&]*\(vboxdrv setup\|vboxconfig\)'/\'emerge -1 virtualbox-modules\'/' {} \+ || die
|
||||
sed -i "s:'/sbin/vboxconfig':'emerge -1 virtualbox-modules':" \
|
||||
src/VBox/Frontends/VirtualBox/src/main.cpp \
|
||||
src/VBox/VMM/VMMR3/VM.cpp || die
|
||||
|
||||
# 890561
|
||||
echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die
|
||||
|
||||
if ! use nls && ! use gui; then
|
||||
cat >> LocalConfig.kmk <<-EOF || die
|
||||
VBOX_WITH_NLS :=
|
||||
VBOX_WITH_MAIN_NLS :=
|
||||
VBOX_WITH_PUEL_NLS :=
|
||||
VBOX_WITH_VBOXMANAGE_NLS :=
|
||||
EOF
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
tc-ld-disable-gold # bug #488176
|
||||
|
||||
tc-export AR CC CXX LD RANLIB
|
||||
export HOST_CC="$(tc-getBUILD_CC)"
|
||||
|
||||
local myconf=(
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--with-g++="$(tc-getCXX)"
|
||||
|
||||
--disable-kmods
|
||||
|
||||
$(usev !alsa --disable-alsa)
|
||||
$(usev !dbus --disable-dbus)
|
||||
$(usev debug --build-debug)
|
||||
$(usev !doc --disable-docs)
|
||||
$(usev !java --disable-java)
|
||||
$(usev !lvm --disable-devmapper)
|
||||
$(usev !pulseaudio --disable-pulse)
|
||||
$(usev !python --disable-python)
|
||||
$(usev vboxwebsrv --enable-webservice)
|
||||
$(usev vde --enable-vde)
|
||||
$(usev vnc --enable-vnc)
|
||||
)
|
||||
|
||||
if use gui || use sdl || use opengl; then
|
||||
myconf+=(
|
||||
$(usev !opengl --disable-opengl)
|
||||
$(usev !gui --disable-qt)
|
||||
$(usev !sdl --disable-sdl)
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--build-headless
|
||||
)
|
||||
fi
|
||||
|
||||
if use amd64 && ! has_multilib_profile; then
|
||||
myconf+=( --disable-vmmraw )
|
||||
fi
|
||||
|
||||
# not an autoconf script
|
||||
edo ./configure "${myconf[@]}"
|
||||
|
||||
# Force usage of chosen Python implementation
|
||||
# bug #856121, bug #785835
|
||||
sed -i \
|
||||
-e '/VBOX_WITH_PYTHON.*=/d' \
|
||||
-e '/VBOX_PATH_PYTHON_INC.*=/d' \
|
||||
-e '/VBOX_LIB_PYTHON.*=/d' \
|
||||
AutoConfig.kmk || die
|
||||
|
||||
cat >> AutoConfig.kmk <<-EOF || die
|
||||
VBOX_WITH_PYTHON=$(usev python 1)
|
||||
VBOX_PATH_PYTHON_INC=$(python_get_includedir)
|
||||
VBOX_LIB_PYTHON=$(python_get_library_path)
|
||||
EOF
|
||||
|
||||
if use python; then
|
||||
local mangled_python="${EPYTHON#python}"
|
||||
mangled_python="${mangled_python/.}"
|
||||
|
||||
# Stub out the script which defines what the Makefile ends up
|
||||
# building for. gen_python_deps.py gets called by the Makefile
|
||||
# with some args and it spits out a bunch of paths for a hardcoded
|
||||
# list of Pythons. We just override it with what we're actually using.
|
||||
# This minimises the amount of patching we have to do for new Pythons.
|
||||
cat > src/libs/xpcom18a4/python/gen_python_deps.py <<-EOF || die
|
||||
print("VBOX_PYTHON${mangled_python}_INC=$(python_get_includedir)")
|
||||
print("VBOX_PYTHON${mangled_python}_LIB=$(python_get_library_path)")
|
||||
print("VBOX_PYTHONDEF_INC=$(python_get_includedir)")
|
||||
print("VBOX_PYTHONDEF_LIB=$(python_get_library_path)")
|
||||
EOF
|
||||
|
||||
chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
source ./env.sh || die
|
||||
|
||||
# Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
|
||||
MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
|
||||
MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS})
|
||||
MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
|
||||
|
||||
local myemakeargs=(
|
||||
VBOX_BUILD_PUBLISHER=_Gentoo
|
||||
VBOX_WITH_VBOXIMGMOUNT=1
|
||||
|
||||
KBUILD_VERBOSE=2
|
||||
|
||||
AS="$(tc-getCC)"
|
||||
CC="$(tc-getCC)"
|
||||
CXX="$(tc-getCXX)"
|
||||
|
||||
TOOL_GCC3_CC="$(tc-getCC)"
|
||||
TOOL_GCC3_LD="$(tc-getCC)"
|
||||
TOOL_GCC3_AS="$(tc-getCC)"
|
||||
TOOL_GCC3_AR="$(tc-getAR)"
|
||||
TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)"
|
||||
|
||||
TOOL_GXX3_CC="$(tc-getCC)"
|
||||
TOOL_GXX3_CXX="$(tc-getCXX)"
|
||||
TOOL_GXX3_LD="$(tc-getCXX)"
|
||||
TOOL_GXX3_AS="$(tc-getCXX)"
|
||||
TOOL_GXX3_AR="$(tc-getAR)"
|
||||
TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)"
|
||||
|
||||
TOOL_GCC3_CFLAGS="${CFLAGS}"
|
||||
TOOL_GCC3_CXXFLAGS="${CXXFLAGS}"
|
||||
VBOX_GCC_OPT="${CXXFLAGS}"
|
||||
VBOX_NM="$(tc-getNM)"
|
||||
|
||||
TOOL_YASM_AS=yasm
|
||||
)
|
||||
|
||||
if use amd64 && has_multilib_profile; then
|
||||
myemakeargs+=(
|
||||
CC32="$(tc-getCC) -m32"
|
||||
CXX32="$(tc-getCXX) -m32"
|
||||
|
||||
TOOL_GCC32_CC="$(tc-getCC) -m32"
|
||||
TOOL_GCC32_CXX="$(tc-getCXX) -m32"
|
||||
TOOL_GCC32_LD="$(tc-getCC) -m32"
|
||||
TOOL_GCC32_AS="$(tc-getCC) -m32"
|
||||
TOOL_GCC32_AR="$(tc-getAR)"
|
||||
TOOL_GCC32_OBJCOPY="$(tc-getOBJCOPY)"
|
||||
|
||||
TOOL_GXX32_CC="$(tc-getCC) -m32"
|
||||
TOOL_GXX32_CXX="$(tc-getCXX) -m32"
|
||||
TOOL_GXX32_LD="$(tc-getCXX) -m32"
|
||||
TOOL_GXX32_AS="$(tc-getCXX) -m32"
|
||||
TOOL_GXX32_AR="$(tc-getAR)"
|
||||
TOOL_GXX32_OBJCOPY="$(tc-getOBJCOPY)"
|
||||
)
|
||||
fi
|
||||
|
||||
MAKE="kmk" emake "${myemakeargs[@]}" all
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
|
||||
|
||||
local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
|
||||
|
||||
vbox_inst() {
|
||||
local binary="${1}"
|
||||
local perms="${2:-0750}"
|
||||
local path="${3:-${vbox_inst_path}}"
|
||||
|
||||
[[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
|
||||
[[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
|
||||
|
||||
insinto ${path}
|
||||
doins ${binary}
|
||||
fowners root:vboxusers ${path}/${binary}
|
||||
fperms ${perms} ${path}/${binary}
|
||||
}
|
||||
|
||||
# Create configuration files
|
||||
insinto /etc/vbox
|
||||
newins "${FILESDIR}/${PN}-4-config" vbox.cfg
|
||||
|
||||
# Set the correct libdir
|
||||
sed \
|
||||
-e "s@MY_LIBDIR@$(get_libdir)@" \
|
||||
-i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
|
||||
|
||||
# Install the wrapper script
|
||||
exeinto ${vbox_inst_path}
|
||||
newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
|
||||
fowners root:vboxusers ${vbox_inst_path}/VBox
|
||||
fperms 0750 ${vbox_inst_path}/VBox
|
||||
|
||||
# Install binaries and libraries
|
||||
insinto ${vbox_inst_path}
|
||||
doins -r components
|
||||
|
||||
for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload,XPCOMIPCD} \
|
||||
vboximg-mount vbox-img *so *r0; do
|
||||
vbox_inst ${each}
|
||||
done
|
||||
|
||||
# These binaries need to be suid root.
|
||||
for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
|
||||
vbox_inst ${each} 4750
|
||||
done
|
||||
|
||||
# Install EFI Firmware files (bug #320757)
|
||||
for each in VBoxEFI{32,64}.fd ; do
|
||||
vbox_inst ${each} 0644
|
||||
done
|
||||
|
||||
# VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
|
||||
# VBoxXPCOMIPCD (bug #524202)
|
||||
for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/${each}
|
||||
done
|
||||
|
||||
# Symlink binaries to the shipped wrapper
|
||||
for each in vbox{autostart,balloonctrl,bugreport,headless,manage} \
|
||||
VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
|
||||
dosym ${vbox_inst_path}/vbox-img /usr/bin/vbox-img
|
||||
|
||||
if use pam; then
|
||||
# VRDPAuth only works with this (bug #351949)
|
||||
dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
|
||||
fi
|
||||
|
||||
# set an env-variable for 3rd party tools
|
||||
echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
|
||||
doenvd "${T}/90virtualbox"
|
||||
|
||||
if use sdl; then
|
||||
vbox_inst VBoxSDL 4750
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
|
||||
|
||||
for each in vboxsdl VBoxSDL ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
fi
|
||||
|
||||
if use gui; then
|
||||
vbox_inst VirtualBox
|
||||
vbox_inst VirtualBoxVM 4750
|
||||
for each in VirtualBox{,VM} ; do
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/${each}
|
||||
done
|
||||
|
||||
if use opengl; then
|
||||
vbox_inst VBoxTestOGL
|
||||
pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
|
||||
fi
|
||||
|
||||
for each in virtualbox{,vm} VirtualBox{,VM} ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r nls
|
||||
doins -r UnattendedTemplates
|
||||
|
||||
domenu ${PN}.desktop
|
||||
|
||||
pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
|
||||
for size in 16 32 48 64 128 ; do
|
||||
newicon -s ${size} ${PN}-${size}px.png ${PN}.png
|
||||
done
|
||||
newicon ${PN}-48px.png ${PN}.png
|
||||
doicon -s scalable ${PN}.svg
|
||||
popd &>/dev/null || die
|
||||
pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
|
||||
for size in 16 24 32 48 64 72 96 128 256 512 ; do
|
||||
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
|
||||
icofile="${PN}-${ico}-${size}px.png"
|
||||
if [[ -f "${icofile}" ]]; then
|
||||
newicon -s ${size} ${icofile} ${PN}-${ico}.png
|
||||
fi
|
||||
done
|
||||
done
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
if use lvm; then
|
||||
vbox_inst VBoxVolInfo 4750
|
||||
dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
|
||||
fi
|
||||
|
||||
if use sdk; then
|
||||
insinto ${vbox_inst_path}
|
||||
doins -r sdk
|
||||
|
||||
if use java; then
|
||||
java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
|
||||
java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
|
||||
fi
|
||||
fi
|
||||
|
||||
if use udev; then
|
||||
local udevdir="$(get_udevdir)"
|
||||
local udev_file="VBoxCreateUSBNode.sh"
|
||||
local rules_file="10-virtualbox.rules"
|
||||
|
||||
insinto ${udevdir}
|
||||
doins ${udev_file}
|
||||
fowners root:vboxusers ${udevdir}/${udev_file}
|
||||
fperms 0750 ${udevdir}/${udev_file}
|
||||
|
||||
insinto ${udevdir}/rules.d
|
||||
sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/${rules_file} \
|
||||
> "${T}"/${rules_file} || die
|
||||
doins "${T}"/${rules_file}
|
||||
fi
|
||||
|
||||
if use vboxwebsrv; then
|
||||
vbox_inst vboxwebsrv
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
|
||||
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
|
||||
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
|
||||
fi
|
||||
|
||||
# Remove dead symlinks (bug #715338)
|
||||
find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
|
||||
|
||||
# Fix version string in extensions or else they don't get accepted
|
||||
# by the virtualbox host process (see bug #438930)
|
||||
find ExtensionPacks -type f -name "ExtPack.xml" -exec sed -i '/Version/s@_Gentoo@@' {} \+ || die
|
||||
|
||||
local extensions_dir="${vbox_inst_path}/ExtensionPacks"
|
||||
|
||||
if use vnc; then
|
||||
insinto ${extensions_dir}
|
||||
doins -r ExtensionPacks/VNC
|
||||
fi
|
||||
|
||||
if use dtrace; then
|
||||
insinto ${extensions_dir}
|
||||
doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
|
||||
fi
|
||||
|
||||
if use doc; then
|
||||
dodoc UserManual.pdf UserManual.q{ch,hc}
|
||||
docompress -x /usr/share/doc/${PF}
|
||||
elif use gui; then
|
||||
dodoc "${WORKDIR}"/${PN}-help-${PV}/UserManual.q{ch,hc}
|
||||
docompress -x /usr/share/doc/${PF}
|
||||
fi
|
||||
|
||||
if use python; then
|
||||
local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython3.so"
|
||||
if [[ ! -x "${python_path_ext}" ]]; then
|
||||
eerror "Couldn't find ${python_path_ext}! Bindings were requested with USE=python"
|
||||
eerror "but none were installed. This may happen if support for a Python target"
|
||||
eerror "(listed in PYTHON_COMPAT in the ebuild) is incomplete within the Makefiles."
|
||||
die "Incomplete installation of Python bindings! File a bug with Gentoo!"
|
||||
fi
|
||||
fi
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if use udev; then
|
||||
udev_reload
|
||||
udevadm trigger --subsystem-match=usb
|
||||
fi
|
||||
|
||||
tmpfiles_process virtualbox-vboxusb.conf
|
||||
|
||||
if use gui; then
|
||||
elog "To launch VirtualBox just type: \"virtualbox\"."
|
||||
fi
|
||||
|
||||
elog "You must be in the vboxusers group to use VirtualBox."
|
||||
elog ""
|
||||
elog "The latest user manual is available for download at:"
|
||||
elog "https://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf"
|
||||
elog ""
|
||||
|
||||
optfeature "Advanced networking setups" net-misc/bridge-utils sys-apps/usermode-utilities
|
||||
optfeature "USB2, USB3, PXE boot, and VRDP support" app-emulation/virtualbox-extpack-oracle
|
||||
optfeature "Guest additions ISO" app-emulation/virtualbox-additions
|
||||
|
||||
if ! use udev; then
|
||||
ewarn "Without USE=udev, USB devices will likely not work in ${PN}."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
|
||||
use udev && udev_reload
|
||||
}
|
@ -0,0 +1,325 @@
|
||||
# Copyright 2022-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
MULTILIB_COMPAT=( abi_x86_{32,64} )
|
||||
inherit autotools flag-o-matic multilib multilib-build toolchain-funcs wrapper
|
||||
|
||||
WINE_GECKO=2.47.3
|
||||
WINE_MONO=7.4.0
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://gitlab.winehq.org/wine/wine.git"
|
||||
else
|
||||
(( $(ver_cut 2) )) && WINE_SDIR=$(ver_cut 1).x || WINE_SDIR=$(ver_cut 1).0
|
||||
SRC_URI="https://dl.winehq.org/wine/source/${WINE_SDIR}/wine-${PV}.tar.xz"
|
||||
S="${WORKDIR}/wine-${PV}"
|
||||
KEYWORDS="-* ~amd64 ~x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
|
||||
HOMEPAGE="
|
||||
https://www.winehq.org/
|
||||
https://gitlab.winehq.org/wine/wine/"
|
||||
|
||||
LICENSE="LGPL-2.1+ BSD-2 IJG MIT OPENLDAP ZLIB gsm libpng2 libtiff"
|
||||
SLOT="${PV}"
|
||||
IUSE="
|
||||
+X +abi_x86_32 +abi_x86_64 +alsa capi crossdev-mingw cups dos
|
||||
llvm-libunwind debug custom-cflags +fontconfig +gecko gphoto2
|
||||
+gstreamer kerberos +mingw +mono netapi nls odbc opencl +opengl
|
||||
osmesa pcap perl pulseaudio samba scanner +sdl selinux +ssl
|
||||
+truetype udev udisks +unwind usb v4l +vulkan +xcomposite xinerama"
|
||||
REQUIRED_USE="
|
||||
X? ( truetype )
|
||||
crossdev-mingw? ( mingw )" # bug #551124 for truetype
|
||||
|
||||
# tests are non-trivial to run, can hang easily, don't play well with
|
||||
# sandbox, and several need real opengl/vulkan or network access
|
||||
RESTRICT="test"
|
||||
|
||||
# `grep WINE_CHECK_SONAME configure.ac` + if not directly linked
|
||||
WINE_DLOPEN_DEPEND="
|
||||
X? (
|
||||
x11-libs/libXcursor[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXfixes[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXi[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrandr[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXrender[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
|
||||
opengl? (
|
||||
media-libs/libglvnd[X,${MULTILIB_USEDEP}]
|
||||
osmesa? ( media-libs/mesa[osmesa,${MULTILIB_USEDEP}] )
|
||||
)
|
||||
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
|
||||
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
cups? ( net-print/cups[${MULTILIB_USEDEP}] )
|
||||
fontconfig? ( media-libs/fontconfig[${MULTILIB_USEDEP}] )
|
||||
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
|
||||
netapi? ( net-fs/samba[${MULTILIB_USEDEP}] )
|
||||
odbc? ( dev-db/unixODBC[${MULTILIB_USEDEP}] )
|
||||
sdl? ( media-libs/libsdl2[haptic,joystick,${MULTILIB_USEDEP}] )
|
||||
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
|
||||
truetype? ( media-libs/freetype[${MULTILIB_USEDEP}] )
|
||||
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
|
||||
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
|
||||
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )"
|
||||
WINE_COMMON_DEPEND="
|
||||
${WINE_DLOPEN_DEPEND}
|
||||
X? (
|
||||
x11-libs/libX11[${MULTILIB_USEDEP}]
|
||||
x11-libs/libXext[${MULTILIB_USEDEP}]
|
||||
)
|
||||
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
|
||||
capi? ( net-libs/libcapi:=[${MULTILIB_USEDEP}] )
|
||||
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
|
||||
gstreamer? (
|
||||
dev-libs/glib:2[${MULTILIB_USEDEP}]
|
||||
media-libs/gst-plugins-base:1.0[${MULTILIB_USEDEP}]
|
||||
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
|
||||
)
|
||||
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
|
||||
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
|
||||
pulseaudio? ( media-libs/libpulse[${MULTILIB_USEDEP}] )
|
||||
scanner? ( media-gfx/sane-backends[${MULTILIB_USEDEP}] )
|
||||
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
|
||||
unwind? (
|
||||
llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] )
|
||||
!llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
usb? ( dev-libs/libusb:1[${MULTILIB_USEDEP}] )"
|
||||
RDEPEND="
|
||||
${WINE_COMMON_DEPEND}
|
||||
app-emulation/wine-desktop-common
|
||||
dos? ( games-emulation/dosbox )
|
||||
gecko? ( app-emulation/wine-gecko:${WINE_GECKO}[${MULTILIB_USEDEP}] )
|
||||
gstreamer? ( media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}] )
|
||||
mono? ( app-emulation/wine-mono:${WINE_MONO} )
|
||||
perl? (
|
||||
dev-lang/perl
|
||||
dev-perl/XML-LibXML
|
||||
)
|
||||
samba? ( net-fs/samba[winbind] )
|
||||
selinux? ( sec-policy/selinux-wine )
|
||||
udisks? ( sys-fs/udisks:2 )"
|
||||
DEPEND="
|
||||
${WINE_COMMON_DEPEND}
|
||||
sys-kernel/linux-headers
|
||||
X? ( x11-base/xorg-proto )"
|
||||
BDEPEND="
|
||||
dev-lang/perl
|
||||
sys-devel/binutils
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
virtual/pkgconfig
|
||||
mingw? ( !crossdev-mingw? (
|
||||
>=dev-util/mingw64-toolchain-10.0.0_p1-r2[${MULTILIB_USEDEP}]
|
||||
) )
|
||||
nls? ( sys-devel/gettext )"
|
||||
IDEPEND=">=app-eselect/eselect-wine-2"
|
||||
|
||||
QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-7.0-noexecstack.patch
|
||||
"${FILESDIR}"/${PN}-7.20-unwind.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
[[ ${MERGE_TYPE} == binary ]] && return
|
||||
|
||||
if use crossdev-mingw && [[ ! -v MINGW_BYPASS ]]; then
|
||||
local mingw=-w64-mingw32
|
||||
for mingw in $(usev abi_x86_64 x86_64${mingw}) $(usev abi_x86_32 i686${mingw}); do
|
||||
if ! type -P ${mingw}-gcc >/dev/null; then
|
||||
eerror "With USE=crossdev-mingw, you must prepare the MinGW toolchain"
|
||||
eerror "yourself by installing sys-devel/crossdev then running:"
|
||||
eerror
|
||||
eerror " crossdev --target ${mingw}"
|
||||
eerror
|
||||
eerror "For more information, please see: https://wiki.gentoo.org/wiki/Mingw"
|
||||
die "USE=crossdev-mingw is enabled, but ${mingw}-gcc was not found"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# sanity check, bumping these has a history of oversights
|
||||
local geckomono=$(sed -En '/^#define (GECKO|MONO)_VER/{s/[^0-9.]//gp}' \
|
||||
dlls/appwiz.cpl/addons.c || die)
|
||||
if [[ ${WINE_GECKO}$'\n'${WINE_MONO} != "${geckomono}" ]]; then
|
||||
local gmfatal=
|
||||
[[ ${PV} == *9999 ]] && gmfatal=nonfatal
|
||||
${gmfatal} die -n "gecko/mono mismatch in ebuild, has: " ${geckomono} " (please file a bug)"
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
# ensure .desktop calls this variant + slot
|
||||
sed -i "/^Exec=/s/wine /${P} /" loader/wine.desktop || die
|
||||
|
||||
# always update for patches (including user's wrt #432348)
|
||||
eautoreconf
|
||||
tools/make_requests || die # perl
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
WINE_PREFIX=/usr/lib/${P}
|
||||
WINE_DATADIR=/usr/share/${P}
|
||||
|
||||
local conf=(
|
||||
--prefix="${EPREFIX}"${WINE_PREFIX}
|
||||
--datadir="${EPREFIX}"${WINE_DATADIR}
|
||||
--includedir="${EPREFIX}"/usr/include/${P}
|
||||
--libdir="${EPREFIX}"${WINE_PREFIX}
|
||||
--mandir="${EPREFIX}"${WINE_DATADIR}/man
|
||||
$(use_enable gecko mshtml)
|
||||
$(use_enable mono mscoree)
|
||||
--disable-tests
|
||||
$(use_with X x)
|
||||
$(use_with alsa)
|
||||
$(use_with capi)
|
||||
$(use_with cups)
|
||||
$(use_with fontconfig)
|
||||
$(use_with gphoto2 gphoto)
|
||||
$(use_with gstreamer)
|
||||
$(use_with kerberos gssapi)
|
||||
$(use_with kerberos krb5)
|
||||
$(use_with mingw)
|
||||
$(use_with netapi)
|
||||
$(use_with nls gettext)
|
||||
$(use_with opencl)
|
||||
$(use_with opengl)
|
||||
$(use_with osmesa)
|
||||
--without-oss # media-sound/oss is not packaged (OSSv4)
|
||||
$(use_with pcap)
|
||||
$(use_with pulseaudio pulse)
|
||||
$(use_with scanner sane)
|
||||
$(use_with sdl)
|
||||
$(use_with ssl gnutls)
|
||||
$(use_with truetype freetype)
|
||||
$(use_with udev)
|
||||
$(use_with udisks dbus) # dbus is only used for udisks
|
||||
$(use_with unwind)
|
||||
$(use_with usb)
|
||||
$(use_with v4l v4l2)
|
||||
$(use_with vulkan)
|
||||
$(use_with xcomposite)
|
||||
$(use_with xinerama)
|
||||
$(usev !odbc ac_cv_lib_soname_odbc=)
|
||||
)
|
||||
|
||||
tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097)
|
||||
filter-lto # build failure
|
||||
use mingw || filter-flags -fno-plt # build failure
|
||||
use custom-cflags || strip-flags # can break in obscure ways at runtime
|
||||
use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
|
||||
|
||||
# temporary workaround for tc-ld-force-bfd not yet enforcing with mold
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
[[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] &&
|
||||
append-ldflags -fuse-ld=bfd
|
||||
|
||||
# build using upstream's way (--with-wine64)
|
||||
# order matters: configure+compile 64->32, install 32->64
|
||||
local -i bits
|
||||
for bits in $(usev abi_x86_64 64) $(usev abi_x86_32 32); do
|
||||
(
|
||||
einfo "Configuring ${PN} for ${bits}bits in ${WORKDIR}/build${bits} ..."
|
||||
|
||||
mkdir ../build${bits} || die
|
||||
cd ../build${bits} || die
|
||||
|
||||
pe_arch=i386
|
||||
if (( bits == 64 )); then
|
||||
pe_arch=x86_64
|
||||
: "${CROSSCC:=${CROSSCC_amd64:-x86_64-w64-mingw32-gcc}}"
|
||||
conf+=( --enable-win64 )
|
||||
elif use amd64; then
|
||||
conf+=(
|
||||
$(usev abi_x86_64 --with-wine64=../build64)
|
||||
TARGETFLAGS=-m32 # for widl
|
||||
)
|
||||
# _setup is optional, but use over Wine's auto-detect (+#472038)
|
||||
multilib_toolchain_setup x86
|
||||
fi
|
||||
: "${CROSSCC:=${CROSSCC_x86:-i686-w64-mingw32-gcc}}"
|
||||
|
||||
if use mingw; then
|
||||
# CROSSCC is no longer recognized by Wine, but still use for now
|
||||
# (future handling for CROSS* variables is subject to changes)
|
||||
conf+=( ac_cv_prog_${pe_arch}_CC="${CROSSCC}" )
|
||||
|
||||
# use *FLAGS for mingw, but strip unsupported
|
||||
: "${CROSSCFLAGS:=$(
|
||||
# >=wine-7.21 configure.ac no longer adds -fno-strict by mistake
|
||||
append-cflags '-fno-strict-aliasing'
|
||||
filter-flags '-fstack-clash-protection' #758914
|
||||
filter-flags '-fstack-protector*' #870136
|
||||
filter-flags '-mfunction-return=thunk*' #878849
|
||||
CC=${CROSSCC} test-flags-CC ${CFLAGS:--O2})}"
|
||||
: "${CROSSLDFLAGS:=$(
|
||||
filter-flags '-fuse-ld=*'
|
||||
CC=${CROSSCC} test-flags-CCLD ${LDFLAGS})}"
|
||||
export CROSS{C,LD}FLAGS
|
||||
fi
|
||||
|
||||
ECONF_SOURCE=${S} econf "${conf[@]}"
|
||||
)
|
||||
done
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
use abi_x86_64 && emake -C ../build64 # do first
|
||||
use abi_x86_32 && emake -C ../build32
|
||||
}
|
||||
|
||||
src_install() {
|
||||
use abi_x86_32 && emake DESTDIR="${D}" -C ../build32 install
|
||||
use abi_x86_64 && emake DESTDIR="${D}" -C ../build64 install # do last
|
||||
|
||||
# symlink for plain 'wine' and install its man pages if 64bit-only #404331
|
||||
if use abi_x86_64 && use !abi_x86_32; then
|
||||
dosym wine64 ${WINE_PREFIX}/bin/wine
|
||||
dosym wine64-preloader ${WINE_PREFIX}/bin/wine-preloader
|
||||
local man
|
||||
for man in ../build64/loader/wine.*man; do
|
||||
: "${man##*/wine}"
|
||||
: "${_%.*}"
|
||||
insinto ${WINE_DATADIR}/man/${_:+${_#.}/}man1
|
||||
newins ${man} wine.1
|
||||
done
|
||||
fi
|
||||
|
||||
use perl || rm "${ED}"${WINE_DATADIR}/man/man1/wine{dump,maker}.1 \
|
||||
"${ED}"${WINE_PREFIX}/bin/{function_grep.pl,wine{dump,maker}} || die
|
||||
|
||||
# create variant wrappers for eselect-wine
|
||||
local bin
|
||||
for bin in "${ED}"${WINE_PREFIX}/bin/*; do
|
||||
make_wrapper "${bin##*/}-${P#wine-}" "${bin#"${ED}"}"
|
||||
done
|
||||
|
||||
# don't let portage try to strip PE files with the wrong
|
||||
# strip executable and instead handle it here (saves ~120MB)
|
||||
if use mingw; then
|
||||
dostrip -x ${WINE_PREFIX}/wine/{i386,x86_64}-windows
|
||||
use debug ||
|
||||
find "${ED}"${WINE_PREFIX}/wine/*-windows -regex '.*\.\(a\|dll\|exe\)' \
|
||||
-exec $(usex abi_x86_64 x86_64 i686)-w64-mingw32-strip --strip-unneeded {} + || die
|
||||
fi
|
||||
|
||||
dodoc ANNOUNCE AUTHORS README* documentation/README*
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
eselect wine update --if-unset || die
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
eselect wine update --if-unset || die
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1 @@
|
||||
DIST check-jsonschema-0.21.0.gh.tar.gz 214872 BLAKE2B 0ee013e379523e5a957e745d550c2014872eab9fc3281aad575f92abfada30b7e0853177bd06147b69a81100bf6b987b485342a087830845c32648efc1c7a9a0 SHA512 dd839a9bb104e1fc68e4a7507077dc991dfc9e840f785c4b7024f2838488eb8b8c6a8f7718f0f821981f5b6b23b1d67745948f48db55a0c589395cf43bfdd2a7
|
@ -0,0 +1,51 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} pypy3 )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="A CLI and set of pre-commit hooks for jsonschema validation"
|
||||
HOMEPAGE="
|
||||
https://pypi.org/project/check-jsonschema/
|
||||
https://github.com/python-jsonschema/check-jsonschema
|
||||
"
|
||||
SRC_URI="https://github.com/python-jsonschema/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/ruamel-yaml[${PYTHON_USEDEP}]
|
||||
dev-python/jsonschema[${PYTHON_USEDEP}]
|
||||
dev-python/requests[${PYTHON_USEDEP}]
|
||||
dev-python/click[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
${RDEPEND}
|
||||
dev-python/responses[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=(
|
||||
README.md
|
||||
CONTRIBUTING.md
|
||||
CHANGELOG.rst
|
||||
)
|
||||
|
||||
distutils_enable_tests pytest
|
||||
distutils_enable_sphinx docs \
|
||||
dev-python/sphinx-issues \
|
||||
dev-python/furo
|
||||
|
||||
python_prepare_all() {
|
||||
# relax deps in setup.cfg
|
||||
sed -r -e 's:([a-zA-Z.-]+)([<>]|==|[<>]=)+.+:\1: ; /importlib-resources/ d' -i setup.cfg || die
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>chutzpah@gentoo.org</email>
|
||||
<name>Patrick McLean</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">python-jsonschema/check-jsonschema</remote-id>
|
||||
<remote-id type="pypi">check-jsonschema</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -1 +1,4 @@
|
||||
DIST OpenRGBEffectsPlugin-a7222bdbcd3c52e13d96993a33c5648f1306aeba.tar.bz2 255129 BLAKE2B 8fc7ee994d80bd9fe8d8a76e26710ed0fec429aa8df835f6a46a64d4034a4fc2352d722c9aed26032bff33781b1f024a893d685f6883e1816872d91cd937c1d0 SHA512 386879a7a1f05cfcbcca792add1b18f2680b4fa7b139f8532e6f32d09a5194c381357d3cbb3883352c2a03280c9b0b0f1e9faef7e140c7535144c0d645832d3e
|
||||
DIST OpenRGBEffectsPlugin-release_0.8.tar.bz2 232858 BLAKE2B 71851eaa40719d8b04a91577756e76b248d261c344e461a00f2c60d26fe37b2a1a2d563a67f620a4c6887d21d4505cb715850f6f0eb4f133894833a72f22e8e4 SHA512 c1ad3f460a9cb4788e9eae3f6df1f0b60a838205a0655c1a639f1bcd04c00f99d55d9a51161267e543bbd961883d4ae0751babe7c98d9be395f104ac9d40e8e3
|
||||
DIST QCodeEditor-2021-08-17.tar.gz 95099 BLAKE2B d9eab343c956288b098c9fad4b523615beb7c1a860a00b8c84a2a71f40398fd2e82c335c5d82bb5bc2d15d35bad698a780ff4d1d3202f7555a93120e8a2d906a SHA512 4f8af3a45d3b16d06bc6e4b795f005cf917a80add8f738454751a47d40747df1215ba9b4e05a0f654251bc006521151f8a256c2e41be05c72abae4e55f383b54
|
||||
DIST SimplexNoise-2019-12-03.tar.gz 781353 BLAKE2B ce05f78b58439d57e369b8b3944b8d392bec80d579767cb1683befe5c56b90dcf40d405ff75d4541e6c17659f6e1abc83f5d3444fbe641724d21ed509e439854 SHA512 b1e27d6630a902006636ec31c3b1cead1857b255edc8ae8db74cdfee25300337200be48264c6adc0e2c0e39a3693e361d448e61ae62d2f0b700374b264d5e5cd
|
||||
|
@ -0,0 +1,15 @@
|
||||
Fix dependency on app-misc/openrgb
|
||||
|
||||
--- a/OpenRGBEffectsPlugin.pro
|
||||
+++ b/OpenRGBEffectsPlugin.pro
|
||||
@@ -60,10 +60,6 @@ HEADERS +=
|
||||
OpenRGB/qt/hsv.h \
|
||||
|
||||
|
||||
-SOURCES += \
|
||||
- OpenRGB/RGBController/RGBController.cpp \
|
||||
- OpenRGB/dependencies/ColorWheel/ColorWheel.cpp \
|
||||
- OpenRGB/qt/hsv.cpp \
|
||||
|
||||
|
||||
#-----------------------------------------------------------------------------------------------#
|
@ -0,0 +1,11 @@
|
||||
Because of -Wl,--export-dynamic in app-misc/openrgb, this resources.qrc
|
||||
conflicts with the openrgb's one. So rename it.
|
||||
|
||||
--- a/OpenRGBEffectsPlugin.pro
|
||||
+++ b/OpenRGBEffectsPlugin.pro
|
||||
@@ -472,4 +472,4 @@ macx: {
|
||||
}
|
||||
|
||||
RESOURCES += \
|
||||
- resources.qrc
|
||||
+ resources_effects_plugin.qrc
|
@ -0,0 +1,66 @@
|
||||
# Copyright 2020-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit qmake-utils
|
||||
|
||||
DESCRIPTION="Plugin for OpenRGB with various Effects that can be synced across devices"
|
||||
HOMEPAGE="https://gitlab.com/OpenRGBDevelopers/OpenRGBEffectsPlugin"
|
||||
|
||||
MY_NOISE_COMMIT="97e62c5b5e26c8edabdc29a6b0a277192be3746c"
|
||||
MY_QCODEEDITOR_COMMIT="a9aab24c7970a38d14bc79939306d9d3ba78cf61"
|
||||
SRC_URI="
|
||||
https://gitlab.com/OpenRGBDevelopers/OpenRGBEffectsPlugin/-/archive/release_${PV}/OpenRGBEffectsPlugin-release_${PV}.tar.bz2
|
||||
https://github.com/SRombauts/SimplexNoise/archive/${MY_NOISE_COMMIT}.tar.gz -> SimplexNoise-2019-12-03.tar.gz
|
||||
https://github.com/justxi/QCodeEditor/archive/${MY_QCODEEDITOR_COMMIT}.tar.gz -> QCodeEditor-2021-08-17.tar.gz
|
||||
"
|
||||
S="${WORKDIR}/OpenRGBEffectsPlugin-release_${PV}"
|
||||
|
||||
LICENSE="GPL-2 MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
|
||||
RDEPEND="
|
||||
>=app-misc/openrgb-0.7:=
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5[-gles2-only]
|
||||
dev-qt/qtwidgets:5[-gles2-only]
|
||||
media-libs/openal
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
dev-cpp/nlohmann_json
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/openrgb-plugin-effects-0.8-dep.patch"
|
||||
"${FILESDIR}/openrgb-plugin-effects-0.8-qrc.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
rm -r OpenRGB || die
|
||||
ln -s "${ESYSROOT}/usr/include/OpenRGB" . || die
|
||||
sed -e '/^GIT_/d' -i *.pro || die
|
||||
|
||||
rmdir Dependencies/SimplexNoise || die
|
||||
ln -s "${WORKDIR}/SimplexNoise-${MY_NOISE_COMMIT}" Dependencies/SimplexNoise || die
|
||||
|
||||
rmdir Dependencies/QCodeEditor || die
|
||||
ln -s "${WORKDIR}/QCodeEditor-${MY_QCODEEDITOR_COMMIT}" Dependencies/QCodeEditor || die
|
||||
|
||||
# Because of -Wl,--export-dynamic in app-misc/openrgb, this resources.qrc
|
||||
# conflicts with the openrgb's one. So rename it.
|
||||
mv --no-clobber resources.qrc resources_effects_plugin.qrc || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
eqmake5 \
|
||||
INCLUDEPATH+="${ESYSROOT}/usr/include/nlohmann"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
exeinto /usr/$(get_libdir)/OpenRGB/plugins
|
||||
doexe libOpenRGBEffectsPlugin.so.1.0
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST timew-1.4.2.tar.gz 1316841 BLAKE2B c451f37aeb32e999fe2cdca2eb5f234c7424b76f489324d5723a3649da37f53f5094989bdf8d5c2d27f5daa0d75c72ec4a01e3c19b8b064f28e4db82587498b9 SHA512 fe4c3def6b2cd78793dd97a38a61497b3910cd87a3315f826c64893b96a998bf30363f0df1892b74b718d03a279d51c1a636739225e101c5c126794e434076f0
|
||||
DIST timew-1.4.3.tar.gz 3188726 BLAKE2B ded92b2ba801023e7f6bc59c0fc17ce069c8279ee92f39280c50dabec0a2425b8612f73edf7842abdbb0b21772244eda325512070c091f32d17ff69cfcd844fa SHA512 89c98ad19d3a5ab5d4e02819d79e553cca4e93da99ec02bbf845b96b421cd084f6786de160e90c97854b50da49448472e9a4c7d23e75c8a93ecd67dda768b24a
|
||||
|
@ -1,36 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="Tracks your time from the command line, and generates reports"
|
||||
HOMEPAGE="https://timewarrior.net"
|
||||
SRC_URI="https://github.com/GothenburgBitFactory/timewarrior/releases/download/v${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DTIMEW_DOCDIR=share/doc/${PF}
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
dodoc -r ext
|
||||
docompress -x /usr/share/doc/${PF}/ext/{on-modify.timewarrior,README}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "To integrate timewarrior with taskwarrior, issue the following commands:"
|
||||
elog "cp /usr/share/doc/${PF}/ext/on-modify.timewarrior ~/.task/hooks/"
|
||||
elog "chmod +x ~/.task/hooks/on-modify.timewarrior"
|
||||
elog "see https://timewarrior.net/docs/taskwarrior.html"
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
DIST tmuxp-1.15.0.tar.gz 842727 BLAKE2B 7e0e68ae848fdefab46a936511f57a9927b28a220e1dadb8b2531cd26a2cb6cbb7f1fd3a3a279f624a3ac8cebfeb434582cf48803d3c8bbf14b1c6960b5f2ef7 SHA512 4c9c72ddeea283ee4d0595d099dfdc178b3fdd96691ae1b02e9867096f770b4339e1f60abea985a05b974d3d620addd8b571c05db7d2914e8736322e5cf19fb6
|
||||
DIST tmuxp-1.24.1.tar.gz 856989 BLAKE2B c809ecc13f29384a43097e10fe7cad15381f50e8962050e7cd8af46e69f422ecb0d4e714555779a85cb72a4be879ef21fdecc207f6321286664a1f81024a1574 SHA512 153505b2e4c2a357c8d73ef6dbd592225a77e32d42165ff1ff80a74b9f52b77cf2d3abe59e9065c3414ce40a32a8a22b63395c9ae958ed14e73a3c03ce1382fb
|
||||
DIST tmuxp-1.25.0.tar.gz 857012 BLAKE2B d472e0bc34b12f6aac87a0f608ec1e78f52bb54c9e068c5fec53fb8a9a0f70041831dc62a070b4d0f81788f8bd4a0d1f1cb3e45a2d744aa010bf3ecd988e2f6c SHA512 a18dfe4a1df22fc76fb70c7ff06bda6d55a3ffafb21eb26a5ff6fb131452d5a4e2677ca1c3f58c9c6b237b6a9791a3c904f6535a2fcd7dbc1dde28da8959a3fa
|
||||
DIST tmuxp-1.26.0.tar.gz 861185 BLAKE2B 348cb2f8dfa53f8e541df0fdd2f4cd51b7230485185000a3df5d66fba26adecb159421cd1b3553e433020334c8162b7325bd2ebe499dc8788cbdc5e21a468ee7 SHA512 68459379df6918651100ba5a6c183c46b2f354bed0c484415edf0137f118f74c4104677bbcf8ba1c2fdbae8ca4259ddf756282583ef8d1408e456a016ea9c174
|
||||
DIST tmuxp-1.27.0.tar.gz 862056 BLAKE2B baad339bc59498d26911507f29de38d55991515e03123edc8dca10159fed1492c1ffe37cf45d6d04ffc73134e0ee312c0ace2ffc53ba9cae258239746169e416 SHA512 a9c450c40a40c284c609011d5e47b12ed1a9b1d5c4036b887df7fd75a3bb6263847c459a7e61fc9dcdb463a3ac20de6ac9038b1559369a5f36641ab0baee755d
|
||||
|
Binary file not shown.
@ -1,2 +1,2 @@
|
||||
DIST kalendar-22.08.3.tar.xz 469052 BLAKE2B 95cd2084226b9c000f293fe1cd567a2da5405ae5af88718a43ad74bbaef789c4cc4d102866ad3077faca51e139f5aef519942a5c4872603912a5d47f62ffbe3f SHA512 021ea8928773af8c6eceb1522931fe620fb5ff72ca9b9a502911d7dfda9e1f65aa385c94c2e1d2dd40ef422cd299289d909d6f9424b1f2a9b26d86fdeb7b0a2b
|
||||
DIST kalendar-22.12.1.tar.xz 800704 BLAKE2B 23f13fdff55c0eb63ad9bd6e6846b29e85a56430a569970906af7190d01f92282b068e6a693053223316b62e6806a7325d77c0dccaecfe082e6aff50d892e93c SHA512 98b8fc22a881a58de44d3d7858990dc7be50c830005007915878f8a4736a66c1723935d72a49645bacd0ab10036a5590aca5f1d9dd0f5ef364d8d952dffe81bf
|
||||
DIST kalendar-22.12.2.tar.xz 802132 BLAKE2B 8bd9ff09408378029257ea4f84c2443da975147d672d57dcce873eb82b58ce668a01b203730a06cf556c8d0e35a8fe600131fe1ed52d2ad5381bb42072a604e0 SHA512 28d0eecf912ce3c0a292e45168f770b941bb9e06e343071e8b07700961b45b1870e6621cb3970605e77ecc8e89919aabfa8d1c119daccba8a6c5b9a54ab6f871
|
||||
|
@ -0,0 +1,91 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit rpm
|
||||
|
||||
BASE_PV=$(ver_cut 1-3)
|
||||
MY_PV="${PV/_alpha/.alpha}"
|
||||
MY_PV="${MY_PV/_beta/.beta}"
|
||||
[[ ${PV} == *alpha* || ${PV} == *beta* ]] && PN_DEV="Dev"
|
||||
|
||||
DESCRIPTION="Translations for the Libreoffice suite"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
BASE_SRC_URI_TESTING="https://download.documentfoundation.org/${PN/-l10n/}/testing/${BASE_PV}/rpm"
|
||||
BASE_SRC_URI_STABLE="https://download.documentfoundation.org/${PN/-l10n/}/stable/${BASE_PV}/rpm"
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~x86 ~amd64-linux"
|
||||
IUSE="offlinehelp"
|
||||
|
||||
#
|
||||
# when changing the language lists, please be careful to preserve the spaces (bug 491728)
|
||||
#
|
||||
# "en:en-US" for mapping from Gentoo "en" to upstream "en-US" etc.
|
||||
LANGUAGES_HELP=" am ar ast bg bn-IN bn bo bs ca-valencia ca cs da de dz el en-GB en:en-US en-ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko lo lt lv mk nb ne nl nn om pl pt-BR pt ro ru si sid sk sl sq sv ta tg tr ug uk vi zh-CN zh-TW "
|
||||
LANGUAGES="${LANGUAGES_HELP}af as be br brx ckb cy dgo dsb fa fur fy ga gd gug hsb kab kk kmr-Latn kn kok ks lb mai ml mn mni mr my nr nso oc or pa:pa-IN rw sa:sa-IN sat sd sr-Latn sr ss st sw-TZ szl te th tn ts tt uz ve vec xh zu "
|
||||
|
||||
for lang in ${LANGUAGES_HELP}; do
|
||||
helppack="offlinehelp? ( ${BASE_SRC_URI_STABLE}/x86_64/LibreOffice${PN_DEV}_${BASE_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz ${BASE_SRC_URI_TESTING}/x86_64/LibreOffice${PN_DEV}_${MY_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz )"
|
||||
SRC_URI+=" l10n_${lang%:*}? ( ${helppack} )"
|
||||
done
|
||||
for lang in ${LANGUAGES}; do
|
||||
if [[ ${lang%:*} != en ]]; then
|
||||
langpack="${BASE_SRC_URI_STABLE}/x86_64/LibreOffice${PN_DEV}_${BASE_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz ${BASE_SRC_URI_TESTING}/x86_64/LibreOffice${PN_DEV}_${MY_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz -> LibreOffice_${MY_PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz"
|
||||
SRC_URI+=" l10n_${lang%:*}? ( ${langpack} )"
|
||||
fi
|
||||
IUSE+=" l10n_${lang%:*}"
|
||||
done
|
||||
unset lang helppack langpack
|
||||
|
||||
RDEPEND+="app-text/hunspell"
|
||||
|
||||
RESTRICT="strip"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
local lang dir rpmdir
|
||||
|
||||
# First remove dictionaries, we want to use system ones.
|
||||
find "${S}" -name *dict*.rpm -delete || die "Failed to remove dictionaries"
|
||||
|
||||
for lang in ${LANGUAGES}; do
|
||||
# break away if not enabled
|
||||
use l10n_${lang%:*} || continue
|
||||
|
||||
dir=${lang#*:}
|
||||
|
||||
# for english we provide just helppack, as translation is always there
|
||||
if [[ ${lang%:*} != en ]]; then
|
||||
rpmdir="LibreOffice_${MY_PV}_Linux_x86-64_rpm_langpack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
|
||||
rpm_unpack ./${rpmdir}/*.rpm
|
||||
fi
|
||||
if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
|
||||
rpmdir="LibreOffice_${MY_PV}_Linux_x86-64_rpm_helppack_${dir}/RPMS/"
|
||||
[[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
|
||||
rpm_unpack ./${rpmdir}/*.rpm
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
src_compile() { :; }
|
||||
|
||||
src_install() {
|
||||
local dir="${S}"/opt/${PN/-l10n/}$(ver_cut 1-2)/
|
||||
# Condition required for people who do not install anything e.g. no l10n
|
||||
# or just english with no offlinehelp.
|
||||
if [[ -d "${dir}" ]] ; then
|
||||
insinto /usr/$(get_libdir)/${PN/-l10n/}/
|
||||
doins -r "${dir}"/*
|
||||
fi
|
||||
# remove extensions that are in l10n for some weird reason
|
||||
rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/ || \
|
||||
die "Failed to remove extensions"
|
||||
}
|
@ -0,0 +1,107 @@
|
||||
From 30ca48f4dc0e65a3798e6b21574bc80f6d4953fa Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?L=C3=A1szl=C3=B3=20N=C3=A9meth?= <nemeth@numbertext.org>
|
||||
Date: Wed, 25 Jan 2023 12:08:14 +0100
|
||||
Subject: tdf#152493 ucb WebDAV: fix upload using HTTP 1.0 fallback
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Fix broken libcurl upload to Vibe 4.0.6 WebDAV server
|
||||
using HTTP 1.0 fallback.
|
||||
|
||||
Regression from commit 023ebf17898db4bca63129f079fd90b5cf76c1a9
|
||||
"ucb: remove --with-webdav=neon" (Neon had no such upload
|
||||
problem).
|
||||
|
||||
HTTP 1.0 fallback found by Pál Zoltán Kochis.
|
||||
Fallback for CURLE_UNSUPPORTED_PROTOCOL
|
||||
suggested by Michael Stahl. Thanks for their and
|
||||
Attila Bakos' help.
|
||||
|
||||
Michael Stahl's comment: "'HTTP/0.9' in the [curl] error
|
||||
message is very misleading: it simply means that a header
|
||||
was expected but there was no header, so what is received
|
||||
is interpreted as body.
|
||||
|
||||
Note: the HTTP/1.0 works because it does not use the
|
||||
'Expect: 100-continue' so there should be no intermediate
|
||||
100 Continue response from the server at all - instead
|
||||
libcurl directly sends the XML document for the PROPFIND
|
||||
and the server sends the response, and the problem does
|
||||
not occur."
|
||||
|
||||
Co-authored-by: Michael Stahl <michael.stahl@allotropia.de>
|
||||
|
||||
Change-Id: I8bd79154de14b6425e0324f4d8f6e64512c08264
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146067
|
||||
Tested-by: László Németh <nemeth@numbertext.org>
|
||||
Reviewed-by: László Németh <nemeth@numbertext.org>
|
||||
---
|
||||
ucb/source/ucp/webdav-curl/CurlSession.cxx | 24 ++++++++++++++++++++++++
|
||||
ucb/source/ucp/webdav-curl/DAVException.hxx | 1 +
|
||||
2 files changed, 25 insertions(+)
|
||||
|
||||
diff --git a/ucb/source/ucp/webdav-curl/CurlSession.cxx b/ucb/source/ucp/webdav-curl/CurlSession.cxx
|
||||
index 0f06363ce68f..bb1d4689a53c 100644
|
||||
--- a/ucb/source/ucp/webdav-curl/CurlSession.cxx
|
||||
+++ b/ucb/source/ucp/webdav-curl/CurlSession.cxx
|
||||
@@ -964,6 +964,8 @@ auto CurlProcessor::ProcessRequestImpl(
|
||||
"curl_easy_perform failed: " << GetErrorString(rc, rSession.m_ErrorBuffer));
|
||||
switch (rc)
|
||||
{
|
||||
+ case CURLE_UNSUPPORTED_PROTOCOL:
|
||||
+ throw DAVException(DAVException::DAV_UNSUPPORTED);
|
||||
case CURLE_COULDNT_RESOLVE_PROXY:
|
||||
throw DAVException(
|
||||
DAVException::DAV_HTTP_LOOKUP,
|
||||
@@ -1250,6 +1252,7 @@ auto CurlProcessor::ProcessRequest(
|
||||
}
|
||||
}
|
||||
bool isRetry(false);
|
||||
+ bool isFallbackHTTP10(false);
|
||||
int nAuthRequests(0);
|
||||
int nAuthRequestsProxy(0);
|
||||
|
||||
@@ -1473,6 +1476,27 @@ auto CurlProcessor::ProcessRequest(
|
||||
}
|
||||
}
|
||||
}
|
||||
+ else if (rException.getError() == DAVException::DAV_UNSUPPORTED)
|
||||
+ {
|
||||
+ // tdf#152493 libcurl can't handle "Transfer-Encoding: chunked"
|
||||
+ // in HTTP/1.1 100 Continue response.
|
||||
+ // workaround: if HTTP/1.1 didn't work, try HTTP/1.0
|
||||
+ // (but fallback only once - to prevent infinite loop)
|
||||
+ if (isFallbackHTTP10)
|
||||
+ {
|
||||
+ throw DAVException(DAVException::DAV_HTTP_ERROR);
|
||||
+ }
|
||||
+ isFallbackHTTP10 = true;
|
||||
+ // note: this is not reset - future requests to this URI use it!
|
||||
+ auto rc = curl_easy_setopt(rSession.m_pCurl.get(), CURLOPT_HTTP_VERSION,
|
||||
+ CURL_HTTP_VERSION_1_0);
|
||||
+ if (rc != CURLE_OK)
|
||||
+ {
|
||||
+ throw DAVException(DAVException::DAV_HTTP_ERROR);
|
||||
+ }
|
||||
+ SAL_INFO("ucb.ucp.webdav.curl", "attempting fallback to HTTP/1.0");
|
||||
+ isRetry = true;
|
||||
+ }
|
||||
if (!isRetry)
|
||||
{
|
||||
throw; // everything else: re-throw
|
||||
diff --git a/ucb/source/ucp/webdav-curl/DAVException.hxx b/ucb/source/ucp/webdav-curl/DAVException.hxx
|
||||
index 84dba895485c..759e43f25f8e 100644
|
||||
--- a/ucb/source/ucp/webdav-curl/DAVException.hxx
|
||||
+++ b/ucb/source/ucp/webdav-curl/DAVException.hxx
|
||||
@@ -130,6 +130,7 @@ class DAVException : public std::exception
|
||||
DAV_SESSION_CREATE, // session creation error,
|
||||
// mData = server[:port]
|
||||
DAV_INVALID_ARG, // invalid argument
|
||||
+ DAV_UNSUPPORTED, // internal to CurlSession
|
||||
|
||||
DAV_LOCK_EXPIRED, // DAV lock expired
|
||||
|
||||
--
|
||||
cgit v1.2.1
|
||||
|
@ -0,0 +1,663 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
PYTHON_REQ_USE="threads(+),xml(+)"
|
||||
|
||||
MY_PV="${PV/_alpha/.alpha}"
|
||||
MY_PV="${MY_PV/_beta/.beta}"
|
||||
# experimental ; release ; old
|
||||
# Usually the tarballs are moved a lot so this should make everyone happy.
|
||||
DEV_URI="
|
||||
https://dev-builds.libreoffice.org/pre-releases/src
|
||||
https://download.documentfoundation.org/libreoffice/src/${MY_PV:0:5}/
|
||||
https://downloadarchive.documentfoundation.org/libreoffice/old/${MY_PV}/src
|
||||
"
|
||||
ADDONS_URI="https://dev-www.libreoffice.org/src/"
|
||||
|
||||
BRANDING="${PN}-branding-gentoo-0.8.tar.xz"
|
||||
# PATCHSET="${P}-patchset-01.tar.xz"
|
||||
|
||||
[[ ${MY_PV} == *9999* ]] && inherit git-r3
|
||||
inherit autotools bash-completion-r1 check-reqs flag-o-matic java-pkg-opt-2 multiprocessing python-single-r1 qmake-utils toolchain-funcs xdg-utils
|
||||
|
||||
DESCRIPTION="A full office productivity suite"
|
||||
HOMEPAGE="https://www.libreoffice.org"
|
||||
SRC_URI="branding? ( https://dev.gentoo.org/~dilfridge/distfiles/${BRANDING} )"
|
||||
[[ -n ${PATCHSET} ]] && SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${PATCHSET}"
|
||||
|
||||
# Split modules following git/tarballs; Core MUST be first!
|
||||
# Help is used for the image generator
|
||||
# Only release has the tarballs
|
||||
if [[ ${MY_PV} != *9999* ]]; then
|
||||
for i in ${DEV_URI}; do
|
||||
SRC_URI+=" ${i}/${PN}-${MY_PV}.tar.xz"
|
||||
SRC_URI+=" ${i}/${PN}-help-${MY_PV}.tar.xz"
|
||||
done
|
||||
unset i
|
||||
fi
|
||||
unset DEV_URI
|
||||
|
||||
# Really required addons
|
||||
# These are bundles that can't be removed for now due to huge patchsets.
|
||||
# If you want them gone, patches are welcome.
|
||||
ADDONS_SRC=(
|
||||
# not packaged in Gentoo
|
||||
"${ADDONS_URI}/dragonbox-1.1.3.tar.gz"
|
||||
# not packaged in Gentoo, https://www.netlib.org/fp/dtoa.c
|
||||
"${ADDONS_URI}/dtoa-20180411.tgz"
|
||||
# not packaged in Gentoo, https://skia.org/
|
||||
"${ADDONS_URI}/skia-m103-b301ff025004c9cd82816c86c547588e6c24b466.tar.xz"
|
||||
"base? (
|
||||
${ADDONS_URI}/commons-logging-1.2-src.tar.gz
|
||||
${ADDONS_URI}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip
|
||||
${ADDONS_URI}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip
|
||||
${ADDONS_URI}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip
|
||||
${ADDONS_URI}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip
|
||||
${ADDONS_URI}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip
|
||||
${ADDONS_URI}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip
|
||||
${ADDONS_URI}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip
|
||||
${ADDONS_URI}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip
|
||||
${ADDONS_URI}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip
|
||||
${ADDONS_URI}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip
|
||||
${ADDONS_URI}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip
|
||||
)"
|
||||
"java? ( ${ADDONS_URI}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip )"
|
||||
# no release for 8 years, should we package it?
|
||||
"libreoffice_extensions_wiki-publisher? ( ${ADDONS_URI}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip )"
|
||||
# Does not build with 1.6 rhino at all
|
||||
"libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip )"
|
||||
# requirement of rhino
|
||||
"libreoffice_extensions_scripting-javascript? ( ${ADDONS_URI}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip )"
|
||||
# not packageable
|
||||
"odk? ( http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll )"
|
||||
)
|
||||
SRC_URI+=" ${ADDONS_SRC[*]}"
|
||||
|
||||
unset ADDONS_URI
|
||||
unset ADDONS_SRC
|
||||
|
||||
LICENSE="|| ( LGPL-3 MPL-1.1 )"
|
||||
SLOT="0"
|
||||
|
||||
[[ ${MY_PV} == *9999* ]] || \
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux"
|
||||
|
||||
# Extensions that need extra work:
|
||||
LO_EXTS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
|
||||
|
||||
IUSE="accessibility base bluetooth +branding clang coinmp +cups custom-cflags +dbus debug eds firebird
|
||||
googledrive gstreamer +gtk kde ldap +mariadb odk pdfimport postgres test vulkan
|
||||
$(printf 'libreoffice_extensions_%s ' ${LO_EXTS})"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}
|
||||
base? ( firebird java )
|
||||
bluetooth? ( dbus )
|
||||
gtk? ( dbus )
|
||||
libreoffice_extensions_nlpsolver? ( java )
|
||||
libreoffice_extensions_scripting-beanshell? ( java )
|
||||
libreoffice_extensions_scripting-javascript? ( java )
|
||||
libreoffice_extensions_wiki-publisher? ( java )
|
||||
"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
COMMON_DEPEND="${PYTHON_DEPS}
|
||||
app-arch/unzip
|
||||
app-arch/zip
|
||||
app-crypt/gpgme:=[cxx]
|
||||
app-text/hunspell:=
|
||||
>=app-text/libabw-0.1.0
|
||||
>=app-text/libebook-0.1
|
||||
app-text/libepubgen
|
||||
>=app-text/libetonyek-0.1
|
||||
app-text/libexttextcat
|
||||
app-text/liblangtag
|
||||
>=app-text/libmspub-0.1.0
|
||||
>=app-text/libmwaw-0.3.21
|
||||
>=app-text/libnumbertext-1.0.6
|
||||
>=app-text/libodfgen-0.1.0
|
||||
app-text/libqxp
|
||||
app-text/libstaroffice
|
||||
app-text/libwpd:0.10[tools]
|
||||
app-text/libwpg:0.3
|
||||
>=app-text/libwps-0.4
|
||||
app-text/mythes
|
||||
dev-cpp/abseil-cpp:=
|
||||
>=dev-cpp/clucene-2.3.3.4-r2
|
||||
>=dev-cpp/libcmis-0.5.2-r2
|
||||
dev-db/unixODBC
|
||||
dev-lang/perl
|
||||
dev-libs/boost:=[nls]
|
||||
dev-libs/expat
|
||||
dev-libs/hyphen
|
||||
dev-libs/icu:=
|
||||
dev-libs/libassuan
|
||||
dev-libs/libgpg-error
|
||||
>=dev-libs/liborcus-0.17.2:0/0.17
|
||||
dev-libs/librevenge
|
||||
dev-libs/libxml2
|
||||
dev-libs/libxslt
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
>=dev-libs/redland-1.0.16
|
||||
>=dev-libs/xmlsec-1.2.28[nss]
|
||||
>=games-engines/box2d-2.4.1:0
|
||||
media-gfx/fontforge
|
||||
media-gfx/graphite2
|
||||
media-libs/fontconfig
|
||||
>=media-libs/freetype-2.11.0-r1:2
|
||||
>=media-libs/harfbuzz-0.9.42:=[graphite,icu]
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libcdr-0.1.0
|
||||
>=media-libs/libepoxy-1.3.1[X]
|
||||
>=media-libs/libfreehand-0.1.0
|
||||
media-libs/libjpeg-turbo:=
|
||||
media-libs/libpagemaker
|
||||
>=media-libs/libpng-1.4:0=
|
||||
>=media-libs/libvisio-0.1.0
|
||||
media-libs/libwebp:=
|
||||
media-libs/libzmf
|
||||
media-libs/openjpeg:=
|
||||
media-libs/tiff:=
|
||||
media-libs/zxing-cpp:=
|
||||
>=net-libs/neon-0.31.1:=
|
||||
net-misc/curl
|
||||
sci-mathematics/lpsolve
|
||||
sys-libs/zlib
|
||||
virtual/opengl
|
||||
x11-libs/cairo[X]
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
accessibility? (
|
||||
$(python_gen_cond_dep 'dev-python/lxml[${PYTHON_USEDEP}]')
|
||||
)
|
||||
bluetooth? (
|
||||
dev-libs/glib:2
|
||||
net-wireless/bluez
|
||||
)
|
||||
coinmp? ( sci-libs/coinor-mp )
|
||||
cups? ( net-print/cups )
|
||||
dbus? ( sys-apps/dbus[X] )
|
||||
eds? (
|
||||
dev-libs/glib:2
|
||||
gnome-base/dconf
|
||||
gnome-extra/evolution-data-server
|
||||
)
|
||||
firebird? ( >=dev-db/firebird-3.0.2.32703.0-r1[server] )
|
||||
gstreamer? (
|
||||
media-libs/gstreamer:1.0
|
||||
media-libs/gst-plugins-base:1.0
|
||||
)
|
||||
gtk? (
|
||||
app-accessibility/at-spi2-core:2
|
||||
dev-libs/glib:2
|
||||
dev-libs/gobject-introspection
|
||||
gnome-base/dconf
|
||||
media-libs/mesa[egl(+)]
|
||||
x11-libs/gtk+:3[X]
|
||||
x11-libs/pango
|
||||
)
|
||||
kde? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
kde-frameworks/kconfig:5
|
||||
kde-frameworks/kcoreaddons:5
|
||||
kde-frameworks/ki18n:5
|
||||
kde-frameworks/kio:5
|
||||
kde-frameworks/kwindowsystem:5
|
||||
)
|
||||
ldap? ( net-nds/openldap:= )
|
||||
libreoffice_extensions_scripting-beanshell? ( dev-java/bsh )
|
||||
libreoffice_extensions_scripting-javascript? ( >=dev-java/rhino-1.7.14:1.6 )
|
||||
mariadb? ( dev-db/mariadb-connector-c:= )
|
||||
!mariadb? ( dev-db/mysql-connector-c:= )
|
||||
pdfimport? ( >=app-text/poppler-22.06:=[cxx] )
|
||||
postgres? ( >=dev-db/postgresql-9.0:*[kerberos] )
|
||||
"
|
||||
# FIXME: cppunit should be moved to test conditional
|
||||
# after everything upstream is under gbuild
|
||||
# as dmake execute tests right away
|
||||
# tests apparently also need google-carlito-fonts (not packaged)
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
>=dev-libs/libatomic_ops-7.2d
|
||||
dev-perl/Archive-Zip
|
||||
>=dev-util/cppunit-1.14.0
|
||||
>=dev-util/gperf-3.1
|
||||
dev-util/mdds:1/2.0
|
||||
media-libs/glm
|
||||
sys-devel/ucpp
|
||||
x11-base/xorg-proto
|
||||
x11-libs/libXt
|
||||
x11-libs/libXtst
|
||||
java? (
|
||||
dev-java/ant-core
|
||||
>=virtual/jdk-11
|
||||
)
|
||||
test? (
|
||||
app-crypt/gnupg
|
||||
dev-util/cppunit
|
||||
media-fonts/dejavu
|
||||
media-fonts/liberation-fonts
|
||||
)
|
||||
"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
acct-group/libreoffice
|
||||
acct-user/libreoffice
|
||||
!app-office/libreoffice-bin
|
||||
!app-office/libreoffice-bin-debug
|
||||
media-fonts/liberation-fonts
|
||||
|| ( x11-misc/xdg-utils kde-plasma/kde-cli-tools )
|
||||
java? ( >=virtual/jre-11 )
|
||||
kde? ( kde-frameworks/breeze-icons:* )
|
||||
"
|
||||
BDEPEND="
|
||||
dev-util/intltool
|
||||
sys-apps/which
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
sys-devel/gettext
|
||||
virtual/pkgconfig
|
||||
clang? (
|
||||
|| (
|
||||
( sys-devel/clang:15
|
||||
sys-devel/llvm:15
|
||||
=sys-devel/lld-15* )
|
||||
( sys-devel/clang:14
|
||||
sys-devel/llvm:14
|
||||
=sys-devel/lld-14* )
|
||||
( sys-devel/clang:13
|
||||
sys-devel/llvm:13
|
||||
=sys-devel/lld-13* )
|
||||
)
|
||||
)
|
||||
odk? ( >=app-doc/doxygen-1.8.4 )
|
||||
"
|
||||
if [[ ${MY_PV} != *9999* ]] && [[ ${PV} != *_* ]]; then
|
||||
PDEPEND="=app-office/libreoffice-l10n-$(ver_cut 1-2)*"
|
||||
else
|
||||
# Translations are not reliable on live ebuilds
|
||||
# rather force people to use english only.
|
||||
RDEPEND+=" !app-office/libreoffice-l10n"
|
||||
fi
|
||||
|
||||
PATCHES=(
|
||||
# "${WORKDIR}"/${PATCHSET/.tar.xz/}
|
||||
|
||||
# not upstreamable stuff
|
||||
"${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch"
|
||||
"${FILESDIR}/${PN}-6.1-nomancompress.patch"
|
||||
"${FILESDIR}/${PN}-7.2.0.4-qt5detect.patch"
|
||||
|
||||
# 7.5 branch
|
||||
"${FILESDIR}/${PN}-7.3.7.2-boost-1.81-locale.patch"
|
||||
|
||||
# master branch
|
||||
"${FILESDIR}/${PN}-7.3.7.2-zxing-cpp-1.4.0.patch"
|
||||
"${FILESDIR}/${PN}-7.4.4.2-zxing-cpp-1.4.0-c++17.patch"
|
||||
"${FILESDIR}/${PN}-7.4.5.1-fix-webdav-upload.patch"
|
||||
)
|
||||
|
||||
S="${WORKDIR}/${PN}-${MY_PV}"
|
||||
|
||||
_check_reqs() {
|
||||
CHECKREQS_MEMORY="512M"
|
||||
if is-flagq "-g*" && ! is-flagq "-g*0" ; then
|
||||
CHECKREQS_DISK_BUILD="22G"
|
||||
else
|
||||
CHECKREQS_DISK_BUILD="6G"
|
||||
fi
|
||||
check-reqs_$1
|
||||
}
|
||||
|
||||
pkg_pretend() {
|
||||
use base ||
|
||||
ewarn "If you plan to use Base application you must enable USE base."
|
||||
use java ||
|
||||
ewarn "Without USE java, several wizards are not going to be available."
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_pretend
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
xdg_environment_reset
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && _check_reqs pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
|
||||
if [[ ${MY_PV} = *9999* ]]; then
|
||||
local base_uri branch mypv
|
||||
base_uri="https://anongit.freedesktop.org/git"
|
||||
branch="master"
|
||||
mypv=${MY_PV/.9999}
|
||||
[[ ${mypv} != ${MY_PV} ]] && branch="${PN}-${mypv/./-}"
|
||||
git-r3_fetch "${base_uri}/${PN}/core" "refs/heads/${branch}"
|
||||
git-r3_checkout "${base_uri}/${PN}/core"
|
||||
LOCOREGIT_VERSION=${EGIT_VERSION}
|
||||
|
||||
git-r3_fetch "${base_uri}/${PN}/help" "refs/heads/master"
|
||||
git-r3_checkout "${base_uri}/${PN}/help" "helpcontent2" # doesn't match on help
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# sandbox violations on many systems, we don't need it. Bug #646406
|
||||
sed -i \
|
||||
-e "/KF5_CONFIG/s/kf5-config/no/" \
|
||||
configure.ac || die "Failed to disable kf5-config"
|
||||
|
||||
AT_M4DIR="m4" eautoreconf
|
||||
# hack in the autogen.sh
|
||||
touch autogen.lastrun
|
||||
|
||||
# sed in the tests
|
||||
sed -i \
|
||||
-e "s#all : build unitcheck#all : build#g" \
|
||||
solenv/gbuild/Module.mk || die
|
||||
sed -i \
|
||||
-e "s#check: dev-install subsequentcheck#check: unitcheck slowcheck dev-install subsequentcheck#g" \
|
||||
-e "s#Makefile.gbuild all slowcheck#Makefile.gbuild all#g" \
|
||||
Makefile.in || die
|
||||
|
||||
sed -i \
|
||||
-e "s,/usr/share/bash-completion/completions,$(get_bashcompdir)," \
|
||||
-e "s,\$INSTALLDIRNAME.sh,${PN}," \
|
||||
bin/distro-install-desktop-integration || die
|
||||
|
||||
if use branding; then
|
||||
# hack...
|
||||
mv -v "${WORKDIR}/branding-intro.png" "icon-themes/colibre/brand/intro.png" || die
|
||||
fi
|
||||
|
||||
# Don't list pdfimport support in desktop when built with none, bug # 605464
|
||||
if ! use pdfimport; then
|
||||
sed -i \
|
||||
-e ":MimeType: s:application/pdf;::" \
|
||||
-e ":Keywords: s:pdf;::" \
|
||||
sysui/desktop/menus/draw.desktop || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Set up Google API keys, see https://www.chromium.org/developers/how-tos/api-keys
|
||||
# Note: these are for Gentoo use ONLY. For your own distribution, please get
|
||||
# your own set of keys. Feel free to contact chromium@gentoo.org for more info.
|
||||
local google_default_client_id="329227923882.apps.googleusercontent.com"
|
||||
local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
|
||||
|
||||
# Show flags set at the beginning
|
||||
einfo "Preset CFLAGS: ${CFLAGS}"
|
||||
einfo "Preset LDFLAGS: ${LDFLAGS}"
|
||||
|
||||
if use clang ; then
|
||||
# Force clang
|
||||
einfo "Enforcing the use of clang due to USE=clang ..."
|
||||
AR=llvm-ar
|
||||
CC=${CHOST}-clang
|
||||
CXX=${CHOST}-clang++
|
||||
NM=llvm-nm
|
||||
RANLIB=llvm-ranlib
|
||||
LDFLAGS+=" -fuse-ld=lld"
|
||||
else
|
||||
# Force gcc
|
||||
einfo "Enforcing the use of gcc due to USE=-clang ..."
|
||||
AR=gcc-ar
|
||||
CC=${CHOST}-gcc
|
||||
CXX=${CHOST}-g++
|
||||
NM=gcc-nm
|
||||
RANLIB=gcc-ranlib
|
||||
|
||||
# Apparently the Clang flags get used even for GCC builds sometimes.
|
||||
# bug #838115
|
||||
sed -i -e "s/-flto=thin/-flto/" solenv/gbuild/platform/com_GCC_defs.mk || die
|
||||
fi
|
||||
|
||||
if use custom-cflags ; then
|
||||
elog "USE=custom-cflags has been selected. You are on your own to make sure that"
|
||||
elog "the build succeeds. Good luck!"
|
||||
else
|
||||
strip-flags
|
||||
fi
|
||||
|
||||
export LO_CLANG_CC=${CC}
|
||||
export LO_CLANG_CXX=${CXX}
|
||||
|
||||
# Show flags set at the end
|
||||
einfo " Used CFLAGS: ${CFLAGS}"
|
||||
einfo " Used LDFLAGS: ${LDFLAGS}"
|
||||
|
||||
# Ensure we use correct toolchain
|
||||
tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
|
||||
|
||||
if use vulkan && ! use clang ; then
|
||||
ewarn "Building skia with gcc may lead to performance issues. Disable vulkan or enable clang."
|
||||
fi
|
||||
|
||||
# optimization flags
|
||||
export GMAKE_OPTIONS="${MAKEOPTS}"
|
||||
# System python enablement:
|
||||
export PYTHON_CFLAGS=$(python_get_CFLAGS)
|
||||
export PYTHON_LIBS=$(python_get_LIBS)
|
||||
|
||||
use kde && export QT5DIR="$(qt5_get_bindir)/.."
|
||||
|
||||
local gentoo_buildid="Gentoo official package"
|
||||
if [[ -n ${LOCOREGIT_VERSION} ]]; then
|
||||
gentoo_buildid+=" (from git: ${LOCOREGIT_VERSION})"
|
||||
fi
|
||||
|
||||
# system headers/libs/...: enforce using system packages
|
||||
# --disable-breakpad: requires not-yet-in-tree dev-utils/breakpad
|
||||
# --enable-cairo: ensure that cairo is always required
|
||||
# --enable-*-link: link to the library rather than just dlopen on runtime
|
||||
# --enable-release-build: build the libreoffice as release
|
||||
# --disable-fetch-external: prevent dowloading during compile phase
|
||||
# --enable-extension-integration: enable any extension integration support
|
||||
# --without-{fonts,myspell-dicts,ppsd}: prevent install of sys pkgs
|
||||
# --disable-report-builder: too much java packages pulled in without pkgs
|
||||
# --without-system-sane: just sane.h header that is used for scan in writer,
|
||||
# not linked or anything else, worthless to depend on
|
||||
# --disable-pdfium: not yet packaged
|
||||
local myeconfargs=(
|
||||
--with-system-dicts
|
||||
--with-system-epoxy
|
||||
--with-system-headers
|
||||
--with-system-jars
|
||||
--with-system-libs
|
||||
--enable-build-opensymbol
|
||||
--enable-cairo-canvas
|
||||
--enable-largefile
|
||||
--enable-mergelibs
|
||||
--enable-python=system
|
||||
--enable-randr
|
||||
--enable-release-build
|
||||
--disable-breakpad
|
||||
--disable-bundle-mariadb
|
||||
--disable-ccache
|
||||
--disable-epm
|
||||
--disable-fetch-external
|
||||
--disable-gtk3-kde5
|
||||
--disable-online-update
|
||||
--disable-openssl
|
||||
--disable-pdfium
|
||||
--disable-qt6
|
||||
--with-extra-buildid="${gentoo_buildid}"
|
||||
--enable-extension-integration
|
||||
--with-external-dict-dir="${EPREFIX}/usr/share/myspell"
|
||||
--with-external-hyph-dir="${EPREFIX}/usr/share/myspell"
|
||||
--with-external-thes-dir="${EPREFIX}/usr/share/myspell"
|
||||
--with-external-tar="${DISTDIR}"
|
||||
--with-lang=""
|
||||
--with-parallelism=$(makeopts_jobs)
|
||||
--with-system-abseil
|
||||
--with-system-openjpeg
|
||||
--with-system-ucpp
|
||||
--with-tls=nss
|
||||
--with-vendor="Gentoo Foundation"
|
||||
--with-webdav="neon"
|
||||
--with-x
|
||||
--without-fonts
|
||||
--without-myspell-dicts
|
||||
--with-help="html"
|
||||
--without-helppack-integration
|
||||
--with-system-gpgmepp
|
||||
--without-system-dragonbox
|
||||
--without-system-jfreereport
|
||||
--without-system-libfixmath
|
||||
--without-system-sane
|
||||
$(use_enable base report-builder)
|
||||
$(use_enable bluetooth sdremote-bluetooth)
|
||||
$(use_enable coinmp)
|
||||
$(use_enable cups)
|
||||
$(use_enable dbus)
|
||||
$(use_enable debug)
|
||||
$(use_enable eds evolution2)
|
||||
$(use_enable firebird firebird-sdbc)
|
||||
$(use_enable gstreamer gstreamer-1-0)
|
||||
$(use_enable gtk gtk3)
|
||||
$(use_enable kde kf5)
|
||||
$(use_enable kde qt5)
|
||||
$(use_enable ldap)
|
||||
$(use_enable odk)
|
||||
$(use_enable pdfimport)
|
||||
$(use_enable postgres postgresql-sdbc)
|
||||
$(use_enable vulkan skia)
|
||||
$(use_with accessibility lxml)
|
||||
$(use_with coinmp system-coinmp)
|
||||
$(use_with googledrive gdrive-client-id ${google_default_client_id})
|
||||
$(use_with googledrive gdrive-client-secret ${google_default_client_secret})
|
||||
$(use_with java)
|
||||
$(use_with odk doxygen)
|
||||
)
|
||||
|
||||
if use eds || use gtk; then
|
||||
myeconfargs+=( --enable-dconf --enable-gio )
|
||||
else
|
||||
myeconfargs+=( --disable-dconf --disable-gio )
|
||||
fi
|
||||
|
||||
# libreoffice extensions handling
|
||||
for lo_xt in ${LO_EXTS}; do
|
||||
if [[ "${lo_xt}" == "scripting-beanshell" || "${lo_xt}" == "scripting-javascript" ]]; then
|
||||
myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ${lo_xt}) )
|
||||
else
|
||||
myeconfargs+=( $(use_enable libreoffice_extensions_${lo_xt} ext-${lo_xt}) )
|
||||
fi
|
||||
done
|
||||
|
||||
if use java; then
|
||||
# hsqldb: system one is too new
|
||||
myeconfargs+=(
|
||||
--without-junit
|
||||
--without-system-hsqldb
|
||||
--with-ant-home="${ANT_HOME}"
|
||||
--with-jdk-home="${JAVA_HOME}"
|
||||
)
|
||||
|
||||
use libreoffice_extensions_scripting-beanshell && \
|
||||
myeconfargs+=( --with-beanshell-jar=$(java-pkg_getjar bsh bsh.jar) )
|
||||
|
||||
use libreoffice_extensions_scripting-javascript && \
|
||||
myeconfargs+=( --with-rhino-jar=$(java-pkg_getjar rhino-1.6 rhino.jar) )
|
||||
fi
|
||||
|
||||
is-flagq "-flto*" && myeconfargs+=( --enable-lto )
|
||||
|
||||
MARIADBCONFIG="$(type -p $(usex mariadb mariadb mysql)_config)" \
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# more and more LO stuff tries to use OpenGL, including tests during build
|
||||
# bug 501508, bug 540624, bug 545974 and probably more
|
||||
addpredict /dev/dri
|
||||
addpredict /dev/ati
|
||||
addpredict /dev/nvidiactl
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake unitcheck
|
||||
emake slowcheck
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" distro-pack-install -o build -o check
|
||||
|
||||
# bug 593514
|
||||
if use gtk; then
|
||||
dosym libreoffice/program/liblibreofficekitgtk.so \
|
||||
/usr/$(get_libdir)/liblibreofficekitgtk.so
|
||||
fi
|
||||
|
||||
# bash completion aliases
|
||||
bashcomp_alias \
|
||||
libreoffice \
|
||||
unopkg loimpress lobase localc lodraw lomath lowriter lofromtemplate loweb loffice
|
||||
|
||||
if use branding; then
|
||||
insinto /usr/$(get_libdir)/${PN}/program
|
||||
newins "${WORKDIR}/branding-sofficerc" sofficerc
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/$(get_libdir)/${PN}/program/sofficerc" > "${ED}"/etc/env.d/99${PN} || die
|
||||
fi
|
||||
|
||||
# bug 703474
|
||||
insinto /usr/include
|
||||
doins -r include/LibreOfficeKit
|
||||
|
||||
local lodir=/usr/$(get_libdir)/libreoffice
|
||||
# patching this would break tests
|
||||
cat <<-EOF > "${T}"/uno.py
|
||||
import sys, os
|
||||
sys.path.append('${EPREFIX}${lodir}/program')
|
||||
os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc')
|
||||
EOF
|
||||
sed -e "/^import sys/d" -e "/^import os/d" \
|
||||
-i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed"
|
||||
cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die
|
||||
cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die
|
||||
|
||||
# more system pyuno mess
|
||||
sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \
|
||||
-i "${D}"${lodir}/program/officehelper.py || die
|
||||
|
||||
python_optimize "${D}"${lodir}/program
|
||||
# link python bridge in site-packages, bug 667802
|
||||
local py pyc loprogdir=/usr/$(get_libdir)/libreoffice/program
|
||||
for py in uno.py unohelper.py officehelper.py; do
|
||||
dosym -r ${loprogdir}/${py} $(python_get_sitedir)/${py}
|
||||
while IFS="" read -d $'\0' -r pyc; do
|
||||
pyc=${pyc//*\/}
|
||||
dosym -r ${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc}
|
||||
done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0)
|
||||
done
|
||||
|
||||
newinitd "${FILESDIR}/libreoffice.initd" libreoffice
|
||||
newconfd "${FILESDIR}/libreoffice.confd" libreoffice
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
Binary file not shown.
@ -1 +1,3 @@
|
||||
DIST gpyutils-0.8.2.gh.tar.gz 20247 BLAKE2B acbde89975e233ebd7d7dcaba629d35c09a9064be48ae1d529e9f5f814b9486e9a208506ff194894dcf827069cf24faa81efa14258866fb32cf5946dafadaf6f SHA512 932500c730635ed1f8f529012f7c65c48385d92db4a673abc0145fdbb14edf8c8b5a5ed4a4c7f892e7df310b92cd8fa0532af95340096f2bd4ef7047d6b6163b
|
||||
DIST gpyutils-0.8.3.gh.tar.gz 20277 BLAKE2B b91f51ec4315238fdc7e69d3c7f551ecde72f57b960578846d50721d345487650e4e08c7faed54eb22e9423909ac541b092a23b6ac82e9f71a2aaa79a4eb2639 SHA512 0b3f9ef166f9d7e55b8335381bfa04dcccc37d5966f381f57ff555f2a2f5accda46a7fc2a713289d5ba94c0fa107436d593af9eb1d2d3a6f3957b94a1589cfe9
|
||||
DIST gpyutils-0.8.4.gh.tar.gz 20477 BLAKE2B 661ec8c9ae595daa112de2171331a5791fa4a10b50f9ebf76589c4c6ff4d6b8e618657dd9f3dd6cf573871ab6e0a9d017d87e03066fa60ba8b9d4e4617f68306 SHA512 f87a087464ca8e1118232227d2e6ad66aa021caabf0307c153b442fc4467bd124eb918c16104bdd1b42866acde16fdde4b99312a8c047ecf379ed10a74d27541
|
||||
|
@ -0,0 +1,31 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=flit
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="Utitilies for maintaining Python packages"
|
||||
HOMEPAGE="
|
||||
https://github.com/projg2/gpyutils/
|
||||
https://pypi.org/project/gpyutils/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/projg2/gpyutils/archive/v${PV}.tar.gz
|
||||
-> ${P}.gh.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
>=app-portage/gentoopm-0.3.2[${PYTHON_USEDEP}]
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue