parent
948d4f06c5
commit
ca2ded2c52
@ -1,23 +1,23 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA512
|
||||
|
||||
MANIFEST Manifest.files.gz 29783 BLAKE2B 1a9182ba8fcbcc840567c7b7bb4144fdc1f1f2178b01d716d4752edf17353d0f88cdafd6d1a7108287cef5ad8168a9c34aa436e3436ab0ed17ff61ed2bcc3ee8 SHA512 6441ec3793b58616efe5b7f9c24c1eee795d12cbc1aa77512abcde1b9ef7b307d49e095c3b0c6faa98888960c11e5714e78e23466955c407710cb3a5f446a3ec
|
||||
TIMESTAMP 2024-04-25T07:40:07Z
|
||||
MANIFEST Manifest.files.gz 29737 BLAKE2B d0085a1192bc43ff8d37f5d05d28d02896e9456084736c3cb6445c8b2df8226cfdff03384b6fe686e96c69e8d31e5c3e08363acf8267638da9396b781f9d8b38 SHA512 f273ec513a0c6d10d87fd65a4410e6cd2cdd8df742c5d4931f5420940c75669dea9ef627ff81405a2c437afb1c56a34637883ac64983f52a8aba8351a3b63adf
|
||||
TIMESTAMP 2024-04-28T11:00:56Z
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmYqCNdfFIAAAAAALgAo
|
||||
iQKTBAEBCgB9FiEE4dartjv8+0ugL98c7FkO6skYklAFAmYuLGhfFIAAAAAALgAo
|
||||
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEUx
|
||||
RDZBQkI2M0JGQ0ZCNEJBMDJGREYxQ0VDNTkwRUVBQzkxODkyNTAACgkQ7FkO6skY
|
||||
klC7dRAApBlnR0huZe9qjjGGANU8vwI2kwck9AF1F8P/xOsH6mpzfkSWWbFFax9s
|
||||
nwHdwDwA9tv3RYIizaI2Z5BmkG61Ty74Zsf5jga3k8zKQmTRRgChnKeGP/4LjsF+
|
||||
6zxfto98O87u37+OYt83CKopV1Cuz4C8lGQ7LuJuGRjlgFUroe1pzqbiyNQ/2gRA
|
||||
G5KmbeT2Rj0YEqD9GIBXJdLSzlw7XmB/t5sLds5twljAsiDLUygZJDAe3vanUaFO
|
||||
KoB54+200LhGucW73+CBzb3xzrvru6pFrPgf+QjB2O1SgFFs7jf8RjH9BOUP5ahe
|
||||
UqUy8GIA9Tz9fFjN9DfHL2K0C+3yZNjAxhkSjO4+OtF4Spbpv0SoCpUrlreul/Sf
|
||||
m8tgh7bNZ/c/nplG3mmb0xi58Blwof2k2z7GEXXV69iqf7cMrNNPPnf+LXJc4pIy
|
||||
d8Y3iuQkKqsrBXKP41GTgQVhatjsXUraNgXa8hc0yldEtsP5WoB41fWmjkm5ioaY
|
||||
cw5jIYiKJXOCxUHqgKjba2+PZMopEMil0WPnX6JFibxX/3eJj2+sid8r3of2egwm
|
||||
9/ULeZ6UKWEaulahCiBl37ycZy3Gn+Mx0rIStcSurg1+DOiY1sjnZ2LAoG+4XRBg
|
||||
EloOBFyEXZZ8spSw9O+quALQh7z4aDvLGRaP9qVnZyMPMxDZynM=
|
||||
=CgRI
|
||||
klD+jw/+I9suid1nDU482ApjO4eOCqDvicVsmY7yo4vZoj7eH4YpUw4hJagXdqAv
|
||||
Xn1rFwW9FF1GcneGYALQ9FS5Z7is5Ri3bios5ugc/2Sj/w4eQPmRDs9ypW+SoHfc
|
||||
jOy8g6zOwf30RPNJuyBdXW0r6VRK4++iqsMSrrLRjxcQNYcshZO7z42zRm6fIhOf
|
||||
YuAOdBf7REoUXdvDWdQq8epMeoGAkK+03MMHKgngxP/EvFmCneIx3JOnmjno7eo7
|
||||
XAlFMYTe/Iy9jUgWSz9v2z3idKswumMUZqtOUqI2XzoH2FULBKnyp/8Xk6qlnOUp
|
||||
Y3utjpSvTIBHcp0H/2t8tHDAXGyvxVHFAPdxkioJFUiVgr+00/48vfPsAwf4XSzH
|
||||
sB3QGwpFc9gIZzz8pWhvD0fYLiktX1Jg1zAuPYRRIvGiHu4fVr5ee8xtPgo/gN8Z
|
||||
RZwZ3ZE2PTb8/7L/laRwH/D3j9poWYP9bmOdgYKO8qlpZyn9j3rcSU6m5TuNGbHg
|
||||
ctVkCllFi26meXafgLTbHr1JbZrP5EA/2FrcGsCRK5HO8mgSABey8saIY+EtwK7F
|
||||
wmmNZhYf1BA1t3tDZLUblmaxXHjTgY2NvOexDkGbjWqcjp+G6dROU2bdFX2fF00I
|
||||
l57lmcSkaJk/Kj/IqpqWT6VB7d7kluL6uxqULIeKGP5wrIb4s2I=
|
||||
=lH+8
|
||||
-----END PGP SIGNATURE-----
|
||||
|
Binary file not shown.
Binary file not shown.
@ -0,0 +1,2 @@
|
||||
EBUILD microsoft-identity-broker-0.ebuild 210 BLAKE2B 881bc9e909a1928c6c0f50c41733d8e04fdaa32b652aef266fa19e20d867d2588913f307263109d03cdc497edb20cb9daacb1f8fa12bde6fb3da9fe7dd811842 SHA512 bee92ee69fcfb2c10f4c5cbab3cbd4e34f71fed9b952dffb8990ef74c44e6e9f8fbd9f6513c93e824017aaeff41d97f5c6e829cc6d441d5b6fdf865d202f51f8
|
||||
MISC metadata.xml 248 BLAKE2B 97ed0d2320e1aa2d1cca6b63b0cf9cb07669ea73ac0dad7a8f7db4f510d3b2dc28cbf5a7c019f15ac87c25c5e51e619386694b49d21fc19f4092047c8e382287 SHA512 23bb29604f7cc644073025158d751004189a85fe6be88a7817afebad685c3b73f21cdb3e5d05f16699baa5d6b52f1e3a1f365b1ad7ea09bfcd204182e646f203
|
@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<upstream>
|
||||
<remote-id type="github">m-ou-se/tek</remote-id>
|
||||
</upstream>
|
||||
<maintainer type="person">
|
||||
<email>chewi@gentoo.org</email>
|
||||
<name>James Le Cuirot</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,9 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit acct-group
|
||||
|
||||
DESCRIPTION="Group for sys-auth/microsoft-identity-broker"
|
||||
ACCT_GROUP_ID=539
|
Binary file not shown.
@ -0,0 +1,2 @@
|
||||
EBUILD microsoft-identity-broker-0.ebuild 274 BLAKE2B c0727f7221e459b1a69d602b702a388763320620638c6c2ff44daf7dd1450a68dae2dcb97de5a056faa4ba669791fa32b6152f69c8354b7685dcc3cceb231241 SHA512 13d772145bee017d83c53d4445ba3cf363672319e87377fcabf9fb230b2e6729586e07154648bb3d437a4aeeabf34fd7c4abb0637826989d7369574f3de65210
|
||||
MISC metadata.xml 248 BLAKE2B 97ed0d2320e1aa2d1cca6b63b0cf9cb07669ea73ac0dad7a8f7db4f510d3b2dc28cbf5a7c019f15ac87c25c5e51e619386694b49d21fc19f4092047c8e382287 SHA512 23bb29604f7cc644073025158d751004189a85fe6be88a7817afebad685c3b73f21cdb3e5d05f16699baa5d6b52f1e3a1f365b1ad7ea09bfcd204182e646f203
|
@ -1,8 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<upstream>
|
||||
<remote-id type="sourceforge">blinkserv</remote-id>
|
||||
</upstream>
|
||||
<maintainer type="person">
|
||||
<email>chewi@gentoo.org</email>
|
||||
<name>James Le Cuirot</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
@ -0,0 +1,12 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit acct-user
|
||||
|
||||
DESCRIPTION="User for sys-auth/microsoft-identity-broker"
|
||||
ACCT_USER_ID=539
|
||||
ACCT_USER_GROUPS=( microsoft-identity-broker )
|
||||
|
||||
acct-user_add_deps
|
Binary file not shown.
@ -1,13 +1,7 @@
|
||||
DIST aws-cli-1.32.79.gh.tar.gz 2685785 BLAKE2B 3bbfad927d9d882e6b502f47919ce963df498c614a92730c5d6b1fb4efd7a8bd805a5c8cc82c705b97d8ee0ddbee4d6ddfa9cb46661fe7e9337add53bda3d9a1 SHA512 e0e369b6a5fca4d72365e54ef99c862e2d6f68caed61ac431516777e82ec8b292cf50516f379d8e94787b2a0ee58ad6e68d0951624f1ed742079295c4d2987ce
|
||||
DIST aws-cli-1.32.84.gh.tar.gz 2691519 BLAKE2B 4cb78f14975d74013803af0f6397d959294cca6046ee19c1a907ca3e60fd224539d39535416ddcc2713b1de653b78ba03965dc78415dd915e80d11fcd6fbe02f SHA512 19d2030201806b336ede2c5e09f761e39959a156057d68316180145232e54013f2e5fa57023146488d407aa7e655fdb2245058e45eb5c4d6778eecd867f6eac1
|
||||
DIST aws-cli-1.32.88.gh.tar.gz 2693435 BLAKE2B 043f4eb08711760b7f8e15a5eba879524788cb65823215ed9d1c8ee5337a085ab6975dfc1c90aea29b7137f050a6d4f201eba57e8c8c83c09625401d8075eb6c SHA512 cb0ed179b9549d988e19963607fe28ca6fb02c92280c451c8651a8149d60a929158f9ae04a1c764540648b8b42417e908cb956fe71ce787c4b788f83cc2ef488
|
||||
DIST aws-cli-1.32.89.gh.tar.gz 2693748 BLAKE2B 006de47c4328c191120c09d5b738283ae1beeaa205ed65c80ff5cfab2a4ed91c2b560c65e78e11d099d0fdf9e1ceadfd58831ad0759a7aa10197e88a64b21e20 SHA512 f9ec547a969c9b0a81207ac9ab95235323d44422e2fbab81f76cd604e3c211e9bea494658d7105ea9019341df4dd335eca9987ce2788af3225f271e22aac4c0e
|
||||
DIST aws-cli-1.32.90.gh.tar.gz 2694763 BLAKE2B ebe21c4589b1a386fc067740703e42f08153dc1ecd960115ea7f8e57444ded9e14c340c4fb5c3fc2ec021eb9d9e26cb5cf5cf70cc77a60a4dc991304b7949ee0 SHA512 96060564f3371ddacede05e6bb1917f263d785413f2d6e00e5f6f4eed14dff8cfa20c3136c387b53571d46557ba87fecc175c4f9f84044d598c2aace865cc9e6
|
||||
DIST aws-cli-1.32.91.gh.tar.gz 2694732 BLAKE2B 418d8fa3525842a9abacb75b05bc5e9499398b9cd1c0e89c5db9e11b63daecd6c2496170fbca328b92a4711214cc19e3e6af937a818d92cd0dc3770f54f3eb18 SHA512 332c91f04dd639a273100bfbb49be71aa0b575c28930dd8943373f4aac28f09fe49f06421858503b2c34222ebd609f80e68d04a480331c267dd338b43f896d3b
|
||||
EBUILD awscli-1.32.79.ebuild 3022 BLAKE2B eca1e9b920babafc0c226e1d3c0b23baa63965cffceacc71118d2e4a1302945d10294223300a94f9dec4b39e52c7bd8f44e35cbf7cf30c117f9d86fe93450326 SHA512 11de7ee4880fe2bd192c6c15081b598d4c9d2f18b28064908a855cb01283408542c8981841c531d546b6de9e2b932d2a23e2fe1a9e90030566af6b966c30fd97
|
||||
EBUILD awscli-1.32.84.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
DIST aws-cli-1.32.93.gh.tar.gz 2695489 BLAKE2B d2f81786d4db158a13ec50ed833668db26bde00cc1e4f5254aa127aba82113074abafa996f525b5f7cd215fd51639481a01a49c425bb4c01e990261529f06082 SHA512 e03892ef522fa43442d1b053d0bf8dbd6c892d94398934c4af58e81153c2759f7e55a289457bb3e5b46f2f01697642498fdd6d51cdc18ad8b6c0f6a31d7c606a
|
||||
EBUILD awscli-1.32.84.ebuild 3022 BLAKE2B eca1e9b920babafc0c226e1d3c0b23baa63965cffceacc71118d2e4a1302945d10294223300a94f9dec4b39e52c7bd8f44e35cbf7cf30c117f9d86fe93450326 SHA512 11de7ee4880fe2bd192c6c15081b598d4c9d2f18b28064908a855cb01283408542c8981841c531d546b6de9e2b932d2a23e2fe1a9e90030566af6b966c30fd97
|
||||
EBUILD awscli-1.32.88.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.89.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.90.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.91.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
EBUILD awscli-1.32.93.ebuild 3029 BLAKE2B 580c774489759d94cbe5c77316c3afbb84d597198c391cd0ed89722c239fb23a87fc34378bd669e9104fbfaaa75a924c3d73e8df2c52693ba6fc135da827643d SHA512 4a31562305f7156e91d78023ed1f56e74de8fb1555323a5cd63611254daeb7491b8e323d00e38351d9bbc2a751f257290a6bb4bd91638e28f9c45acb8742c809
|
||||
MISC metadata.xml 385 BLAKE2B 5accfb180a91179cc6df539d42d1de06be3ebfec73f3edb719f5d59576103b9a8cb0c7c524c1042630e0cf99f068939a19f04c7b1b4a2acf9e072369df80d913 SHA512 ccb3d516326c5dbdf53068372ce25baecc137d21a04516374362212b969cc928dacbf743b4953da33f28482905798f069d09d19c88d9913f2b32648db25115ab
|
||||
|
@ -1,90 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1
|
||||
|
||||
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.10.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
EPYTEST_XDIST=1
|
||||
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 serial_tests=(
|
||||
tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success
|
||||
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success}
|
||||
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking
|
||||
tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success
|
||||
tests/unit/customizations/test_sessionmanager.py
|
||||
tests/unit/test_compat.py::TestIgnoreUserSignals
|
||||
tests/unit/test_help.py
|
||||
tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored
|
||||
)
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
EPYTEST_XDIST= epytest "${serial_tests[@]}"
|
||||
|
||||
local EPYTEST_DESELECT=( "${serial_tests[@]}" )
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit}
|
||||
}
|
||||
|
||||
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,90 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1
|
||||
|
||||
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.10.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
EPYTEST_XDIST=1
|
||||
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 serial_tests=(
|
||||
tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success
|
||||
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success}
|
||||
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking
|
||||
tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success
|
||||
tests/unit/customizations/test_sessionmanager.py
|
||||
tests/unit/test_compat.py::TestIgnoreUserSignals
|
||||
tests/unit/test_help.py
|
||||
tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored
|
||||
)
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
EPYTEST_XDIST= epytest "${serial_tests[@]}"
|
||||
|
||||
local EPYTEST_DESELECT=( "${serial_tests[@]}" )
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit}
|
||||
}
|
||||
|
||||
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,90 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
|
||||
inherit bash-completion-r1 distutils-r1
|
||||
|
||||
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.10.0[${PYTHON_USEDEP}]
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
!app-admin/awscli-bin
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/packaging[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-forked[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
EPYTEST_XDIST=1
|
||||
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 serial_tests=(
|
||||
tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success
|
||||
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success}
|
||||
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows
|
||||
tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking
|
||||
tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success
|
||||
tests/unit/customizations/test_sessionmanager.py
|
||||
tests/unit/test_compat.py::TestIgnoreUserSignals
|
||||
tests/unit/test_help.py
|
||||
tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored
|
||||
)
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
EPYTEST_XDIST= epytest "${serial_tests[@]}"
|
||||
|
||||
local EPYTEST_DESELECT=( "${serial_tests[@]}" )
|
||||
# integration tests require AWS credentials and Internet access
|
||||
epytest tests/{functional,unit}
|
||||
}
|
||||
|
||||
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,37 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
|
||||
MY_PN=${PN}.sh
|
||||
DESCRIPTION="Tool to check properties of executables (e.g. ASLR/PIE, RELRO, PaX, Canaries)"
|
||||
HOMEPAGE="https://github.com/slimm609/checksec.sh"
|
||||
SRC_URI="https://github.com/slimm609/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
IUSE=""
|
||||
|
||||
S="${WORKDIR}"/${MY_PN}-${PV}
|
||||
|
||||
RDEPEND="!<dev-util/pwntools-4.10.0_beta0-r2"
|
||||
|
||||
DOCS=( ChangeLog README.md )
|
||||
|
||||
src_prepare() {
|
||||
sed 's,^pkg_release=false,pkg_release=true,' -i ${PN} || die
|
||||
rm Makefile || die
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
doman extras/man/*
|
||||
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins extras/zsh/_${PN}
|
||||
|
||||
dobin ${PN}
|
||||
}
|
@ -1,5 +1,7 @@
|
||||
DIST conky-1.19.6.tar.gz 1727487 BLAKE2B 2ef2b0acd354559679b9d7d442de7a709e932418e27459b02bdf2f8b6dbdcf7911964932ab9851bab213e7f68d9a82034acab96892752544ab1a26d68c174c09 SHA512 9f1900f495125c668835334239b69fc098c30fe450a384786d873eb3d3e955ff0f06ca70c3a94f47a4b38a42d4510be77efd13873411f11ff84d8bfdc2869fde
|
||||
DIST conky-1.19.8.tar.gz 1711683 BLAKE2B f1c1057f07570e63026e51a03fc4d7a51cc1dcaefb963b5f9ce9fba4e71342770bc1a59aa9a834fe8f9d6d552e7775ab0e2d5a487d9b6ec2d215768349c4994c SHA512 bdc5b29bea3a3050f4fe4ce76fc642134d93a91362e491203dc10cdde1d9c1bde8a106cd8388aab1893e4b1def058abf1f35c1fd022c26ac773071ddd44abbc4
|
||||
DIST conky-1.20.2.tar.gz 1837320 BLAKE2B 41aaa384366ee9229ec4e7df97f37a8c62fff4dd864b3f8f8d3d40c57e87646ee8309c3d1fb68c7d7f8ed802c7ce49a57bbe0c01d32eaacfe84fddbd65b81007 SHA512 b516db38af5c20b101520356cd4f50d147869e7ed2bc84287e8a464e32bb306655edbac074da278d4732ee87f02c52d99cb4c117556e0d08f5be911a2a789618
|
||||
EBUILD conky-1.19.6-r2.ebuild 5501 BLAKE2B f92d9694fead5893020f484ec5ab97143f40c6180b507c6e2f66f285c760eb1c3a7e389904295de550b358432e16f3081ab69a685d2f5bb55ee7ea689a220f2f SHA512 e755ab7203672d750d769be702c0cd19c23323783130f0f55e1ec6be44d534d17015889302634858c6f533bc2ba210aca255d7ce6b7b523d990f32b25f78df7a
|
||||
EBUILD conky-1.19.8.ebuild 5805 BLAKE2B c56ad10b94d3fee046a955a7a25d7d1ed71d089c2a935af6260d3c64e3181a8db74b5fbb0a27983a542896816a1150a33bb74797c3a87842efc829b26603ff1f SHA512 8f8cafd306f8ac7deb5d63c924f7eddcb2a76582ece7a7d83355422ecbaf09e57cc214241445fe79d84b4da96f04d9344f05cce192f451a9bb732e64c5575efa
|
||||
EBUILD conky-1.20.2.ebuild 5809 BLAKE2B 616f9cf91272e3a704f3ee9474cb148a2b3b1226ae1e837d16071112b199afe4fe3746c01310b18472be861c2e0c24f4db23d5de2d0b9c7d70fd46ac4bda9674 SHA512 a1b6b42f304a7787d0ae5c11134a792f3a7deb62efa222ba5c020d1e36172cc25b84579e19e4bc462d7c4ab13344f164b5c9bfe67036968329d699dfac7959ca
|
||||
MISC metadata.xml 2406 BLAKE2B d535320fc855c3ee9e321a7181153f0928b43820fdb72a4e3c4e68239070e4ec8a1a5ced292e559d5f19337622a369647f4bf21a2fc3c0c3c573cb24110cb36e SHA512 36e5a0fc2c570577b64e1ccdd7378d9f0ffac100ce6d322d4d9f09b0e1e287dd97347ef82db8507c5b8e8c615b02917fe45113a7091ef1a2faec2456304a9326
|
||||
|
@ -0,0 +1,240 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LUA_COMPAT=( lua5-4 )
|
||||
PYTHON_COMPAT=( python3_{10,11,12} )
|
||||
|
||||
inherit cmake linux-info lua-single python-any-r1 readme.gentoo-r1 xdg
|
||||
|
||||
DESCRIPTION="An advanced, highly configurable system monitor for X"
|
||||
HOMEPAGE="https://github.com/brndnmtthws/conky"
|
||||
SRC_URI="https://github.com/brndnmtthws/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3 BSD LGPL-2.1 MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
IUSE="apcupsd bundled-toluapp cmus curl doc extras hddtemp ical iconv imlib
|
||||
intel-backlight iostats irc lua-cairo lua-imlib lua-rsvg math moc mpd
|
||||
mysql ncurses nvidia +portmon pulseaudio rss systemd test thinkpad
|
||||
truetype wayland webserver wifi X xinerama xmms2"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Note: toluapp is bundled in conky since 1.11.2
|
||||
# Note: maintainer mode "-DMAINTAINER_MODE=yes" sets CMAKE_BUILD_TYPE Debug
|
||||
# which creates debug symbols and enables "-DBUILD_TESTS" which also
|
||||
# results in conky_core debug library getting installed
|
||||
|
||||
COMMON_DEPEND="
|
||||
curl? ( net-misc/curl )
|
||||
ical? ( dev-libs/libical:= )
|
||||
iconv? ( virtual/libiconv )
|
||||
imlib? ( >=media-libs/imlib2-1.11.0[X] )
|
||||
irc? ( net-libs/libircclient )
|
||||
lua-cairo? ( x11-libs/cairo[X] )
|
||||
lua-imlib? ( >=media-libs/imlib2-1.11.0[X] )
|
||||
lua-rsvg? ( gnome-base/librsvg )
|
||||
mysql? ( dev-db/mysql-connector-c )
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
nvidia? ( x11-drivers/nvidia-drivers[tools,static-libs] )
|
||||
pulseaudio? ( media-libs/libpulse )
|
||||
rss? (
|
||||
dev-libs/libxml2
|
||||
net-misc/curl
|
||||
dev-libs/glib:2
|
||||
)
|
||||
systemd? ( sys-apps/systemd )
|
||||
truetype? (
|
||||
x11-libs/libXft
|
||||
>=media-libs/freetype-2
|
||||
)
|
||||
wayland? (
|
||||
dev-libs/wayland
|
||||
x11-libs/pango
|
||||
)
|
||||
wifi? ( net-wireless/wireless-tools )
|
||||
webserver? ( net-libs/libmicrohttpd:= )
|
||||
X? (
|
||||
x11-libs/libX11
|
||||
x11-libs/libXdamage
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXext
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama )
|
||||
xmms2? ( media-sound/xmms2 )
|
||||
${LUA_DEPS}
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON_DEPEND}
|
||||
apcupsd? ( sys-power/apcupsd )
|
||||
cmus? ( media-sound/cmus )
|
||||
hddtemp? ( app-admin/hddtemp )
|
||||
moc? ( media-sound/moc )
|
||||
"
|
||||
DEPEND="
|
||||
${COMMON_DEPEND}
|
||||
test? (
|
||||
dev-cpp/catch
|
||||
)
|
||||
wayland? (
|
||||
dev-libs/wayland-protocols
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
doc? (
|
||||
virtual/pandoc
|
||||
$(python_gen_any_dep '
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
')
|
||||
)
|
||||
extras? (
|
||||
$(python_gen_any_dep '
|
||||
dev-python/pyyaml[${PYTHON_USEDEP}]
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
')
|
||||
)
|
||||
wayland? ( dev-util/wayland-scanner )
|
||||
"
|
||||
|
||||
python_check_deps() {
|
||||
use doc || use extras || return 0
|
||||
python_has_version -b "dev-python/pyyaml[${PYTHON_USEDEP}]" &&
|
||||
python_has_version -b "dev-python/jinja[${PYTHON_USEDEP}]"
|
||||
}
|
||||
|
||||
REQUIRED_USE="
|
||||
${LUA_REQUIRED_USE}
|
||||
imlib? ( X )
|
||||
lua-cairo? ( X bundled-toluapp )
|
||||
lua-imlib? ( X bundled-toluapp )
|
||||
lua-rsvg? ( X bundled-toluapp )
|
||||
nvidia? ( X )
|
||||
truetype? ( X )
|
||||
xinerama? ( X )
|
||||
"
|
||||
|
||||
CONFIG_CHECK="~IPV6"
|
||||
|
||||
DOCS=( README.md AUTHORS )
|
||||
|
||||
DISABLE_AUTOFORMATTING="yes"
|
||||
DOC_CONTENTS="You can find sample configurations at /usr/share/doc/${PF}.
|
||||
To customize, copy to \${XDG_CONFIG_HOME}/conky/conky.conf and edit it to your liking.
|
||||
|
||||
There are pretty html docs available at https://conky.cc/.
|
||||
|
||||
Also see https://github.com/brndnmtthws/conky/wiki or https://wiki.gentoo.org/wiki/Conky"
|
||||
|
||||
pkg_setup() {
|
||||
linux-info_pkg_setup
|
||||
lua-single_pkg_setup
|
||||
if use doc || use extras; then
|
||||
python-any-r1_pkg_setup
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# pin lua 5.4
|
||||
sed -i -e 's|Lua "5.3" REQUIRED|Lua "5.4" EXACT|g' \
|
||||
cmake/ConkyPlatformChecks.cmake || die "ConkyPlatformChecks.cmake"
|
||||
|
||||
cmake_src_prepare
|
||||
xdg_environment_reset
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=()
|
||||
|
||||
if use X; then
|
||||
mycmakeargs+=(
|
||||
-DBUILD_ARGB=yes
|
||||
-DBUILD_X11=yes
|
||||
-DBUILD_XDAMAGE=yes
|
||||
-DBUILD_XDBE=yes
|
||||
-DBUILD_XFIXES=yes
|
||||
-DBUILD_XSHAPE=yes
|
||||
-DBUILD_XINPUT=yes
|
||||
-DBUILD_MOUSE_EVENTS=yes
|
||||
-DOWN_WINDOW=yes
|
||||
)
|
||||
else
|
||||
mycmakeargs+=(
|
||||
-DBUILD_X11=no
|
||||
)
|
||||
fi
|
||||
|
||||
mycmakeargs+=(
|
||||
-DBUILD_APCUPSD=$(usex apcupsd)
|
||||
-DBUILD_AUDACIOUS=no
|
||||
-DBUILD_BUILTIN_CONFIG=yes
|
||||
-DBUILD_CMUS=$(usex cmus)
|
||||
-DBUILD_CURL=$(usex curl)
|
||||
-DBUILD_DOCS=$(usex doc)
|
||||
-DBUILD_EXTRAS=$(usex extras)
|
||||
-DBUILD_HDDTEMP=$(usex hddtemp)
|
||||
-DBUILD_HTTP=$(usex webserver)
|
||||
-DBUILD_I18N=yes
|
||||
-DBUILD_IBM=$(usex thinkpad)
|
||||
-DBUILD_ICAL=$(usex ical)
|
||||
-DBUILD_ICONV=$(usex iconv)
|
||||
-DBUILD_IMLIB2=$(usex imlib)
|
||||
-DBUILD_INTEL_BACKLIGHT=$(usex intel-backlight)
|
||||
-DBUILD_IOSTATS=$(usex iostats)
|
||||
-DBUILD_IPV6=yes
|
||||
-DBUILD_IRC=$(usex irc)
|
||||
-DBUILD_JOURNAL=$(usex systemd)
|
||||
-DBUILD_LUA_CAIRO=$(usex lua-cairo)
|
||||
-DBUILD_LUA_IMLIB2=$(usex lua-imlib)
|
||||
-DBUILD_LUA_RSVG=$(usex lua-rsvg)
|
||||
-DBUILD_MATH=$(usex math)
|
||||
-DBUILD_MOC=$(usex moc)
|
||||
-DBUILD_MPD=$(usex mpd)
|
||||
-DBUILD_MYSQL=$(usex mysql)
|
||||
-DBUILD_NCURSES=$(usex ncurses)
|
||||
-DBUILD_NVIDIA=$(usex nvidia)
|
||||
-DBUILD_OLD_CONFIG=yes
|
||||
-DBUILD_PORT_MONITORS=$(usex portmon)
|
||||
-DBUILD_PULSEAUDIO=$(usex pulseaudio)
|
||||
-DBUILD_RSS=$(usex rss)
|
||||
-DBUILD_TESTS=$(usex test)
|
||||
-DBUILD_WAYLAND=$(usex wayland)
|
||||
-DBUILD_WLAN=$(usex wifi)
|
||||
-DBUILD_XFT=$(usex truetype)
|
||||
-DBUILD_XINERAMA=$(usex xinerama)
|
||||
-DBUILD_XMMS2=$(usex xmms2)
|
||||
-DDOC_PATH=/usr/share/doc/${PF}
|
||||
-DMAINTAINER_MODE=no
|
||||
-DRELEASE=yes
|
||||
)
|
||||
|
||||
if use doc || use extras; then
|
||||
mycmakeargs+=( -DPython3_EXECUTABLE="${PYTHON}" )
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
if use extras; then
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
doins "${S}"/extras/vim/ftdetect/conkyrc.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins "${BUILD_DIR}"/extras/vim/syntax/conkyrc.vim
|
||||
|
||||
insinto /usr/share/nano/
|
||||
doins "${BUILD_DIR}"/extras/nano/conky.nanorc
|
||||
fi
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
|
||||
xdg_pkg_postinst
|
||||
}
|
Binary file not shown.
@ -0,0 +1,176 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
inherit libtool multilib-minimal toolchain-funcs verify-sig
|
||||
|
||||
DESCRIPTION="Multi-format archive and compression library"
|
||||
HOMEPAGE="
|
||||
https://www.libarchive.org/
|
||||
https://github.com/libarchive/libarchive/
|
||||
"
|
||||
SRC_URI="
|
||||
https://www.libarchive.de/downloads/${P}.tar.xz
|
||||
verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
|
||||
"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 public-domain"
|
||||
SLOT="0/13"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="
|
||||
acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
|
||||
static-libs test xattr +zstd
|
||||
"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/zlib[${MULTILIB_USEDEP}]
|
||||
acl? ( virtual/acl[${MULTILIB_USEDEP}] )
|
||||
blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
|
||||
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
|
||||
expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
|
||||
!expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
|
||||
iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
|
||||
kernel_linux? (
|
||||
xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
dev-libs/openssl:0=[${MULTILIB_USEDEP}]
|
||||
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
|
||||
lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] )
|
||||
lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
|
||||
nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
|
||||
zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
kernel_linux? (
|
||||
virtual/os-headers
|
||||
e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
test? (
|
||||
app-arch/lrzip
|
||||
app-arch/lz4
|
||||
app-arch/lzip
|
||||
app-arch/lzop
|
||||
app-arch/xz-utils
|
||||
app-arch/zstd
|
||||
lzma? ( app-arch/xz-utils[extra-filters(+)] )
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
|
||||
elibc_musl? ( sys-libs/queue-standalone )
|
||||
"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
|
||||
|
||||
# false positives (checks for libc-defined hash functions)
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
SHA256_Init SHA256_Update SHA256_Final
|
||||
SHA384_Init SHA384_Update SHA384_Final
|
||||
SHA512_Init SHA512_Update SHA512_Final
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/libarchive/libarchive/issues/2069
|
||||
# (we can simply update the command since we don't support old lrzip)
|
||||
"${FILESDIR}/${PN}-3.7.2-lrzip.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Needed for flags to be respected w/ LTO
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
|
||||
|
||||
local myconf=(
|
||||
$(use_enable acl)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable xattr)
|
||||
$(use_with blake2 libb2)
|
||||
$(use_with bzip2 bz2lib)
|
||||
$(use_with expat)
|
||||
$(use_with !expat xml2)
|
||||
$(use_with iconv)
|
||||
$(use_with lz4)
|
||||
$(use_with lzma)
|
||||
$(use_with lzo lzo2)
|
||||
$(use_with nettle)
|
||||
--with-zlib
|
||||
$(use_with zstd)
|
||||
|
||||
# Windows-specific
|
||||
--without-cng
|
||||
)
|
||||
if multilib_is_native_abi ; then
|
||||
myconf+=(
|
||||
--enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
|
||||
--enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
|
||||
--enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
|
||||
--enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--disable-bsdcat
|
||||
--disable-bsdcpio
|
||||
--disable-bsdtar
|
||||
--disable-bsdunzip
|
||||
)
|
||||
fi
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
if multilib_is_native_abi ; then
|
||||
emake
|
||||
else
|
||||
emake libarchive.la
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
mkdir -p "${T}"/bin || die
|
||||
# tests fail when lbzip2[symlink] is used in place of ref bunzip2
|
||||
ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
|
||||
# workaround lrzip broken on 32-bit arches with >= 10 threads
|
||||
# https://bugs.gentoo.org/927766
|
||||
cat > "${T}"/bin/lrzip <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "$(type -P lrzip)" -p1 "\${@}"
|
||||
EOF
|
||||
chmod +x "${T}/bin/lrzip" || die
|
||||
local -x PATH=${T}/bin:${PATH}
|
||||
multilib-minimal_src_test
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# sandbox is breaking long symlink behavior
|
||||
local -x SANDBOX_ON=0
|
||||
local -x LD_PRELOAD=
|
||||
# some locales trigger different output that breaks tests
|
||||
local -x LC_ALL=C.UTF-8
|
||||
emake check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
if multilib_is_native_abi ; then
|
||||
emake DESTDIR="${D}" install
|
||||
else
|
||||
local install_targets=(
|
||||
install-includeHEADERS
|
||||
install-libLTLIBRARIES
|
||||
install-pkgconfigDATA
|
||||
)
|
||||
emake DESTDIR="${D}" "${install_targets[@]}"
|
||||
fi
|
||||
|
||||
# Libs.private: should be used from libarchive.pc instead
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
# https://github.com/libarchive/libarchive/issues/1766
|
||||
sed -e '/Requires\.private/s:iconv::' \
|
||||
-i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
|
||||
}
|
Binary file not shown.
@ -1,5 +1,3 @@
|
||||
DIST dar-2.7.13.tar.gz 2425559 BLAKE2B 321a43b04553505279de6f6b27e332883f4209bbe81e24c418188f028b7ba7a794d4e0f510f2c6a22a57fbdbc0501d4fcf7201aadb8cca3e65c6649bff7cfedf SHA512 e7a4bd89ccefaca1d9251d05c39e80f9861b8154f414cd578ba98c3cf3a9f945738c6225fd007b5e73c2d7c2e4abe547e9a2e2deec2cb7e0ec5860603add64fb
|
||||
DIST dar-2.7.14.tar.gz 2443548 BLAKE2B a68ad06a2bf53b25a0b393f3e85eef5676382d63bfd86ba77696667786a688e326c118d937cd5dae6b1e78410e40295c67d8ba4677c37f7139bbdd2794c4efeb SHA512 0436c67e0dbd8f5e96e01a0db48a469d80fb81a7c7f37aed98308bd55d60d699b21c755d95fa83891690231fd2510eaa6c6652fb99a1bad9c8210084031391d4
|
||||
EBUILD dar-2.7.13.ebuild 2313 BLAKE2B a47409dba06c3aba5bb2ec573556877b66db953301ea98aa46cf95944e05e6ff875cbf3c23510de8ec72b5a765532e5b7e0d182ffc7763c2bf8c5a4754622356 SHA512 1be7fcb795263e00291e372193a55a7bb167644e3ef8f1ff098773bbf8255b0cd26a7969df467deffd51d335b6309c21db1e475451355f1d93b7e84f6ee5372e
|
||||
EBUILD dar-2.7.14.ebuild 2313 BLAKE2B a47409dba06c3aba5bb2ec573556877b66db953301ea98aa46cf95944e05e6ff875cbf3c23510de8ec72b5a765532e5b7e0d182ffc7763c2bf8c5a4754622356 SHA512 1be7fcb795263e00291e372193a55a7bb167644e3ef8f1ff098773bbf8255b0cd26a7969df467deffd51d335b6309c21db1e475451355f1d93b7e84f6ee5372e
|
||||
MISC metadata.xml 1180 BLAKE2B d978c1b969e7aeb013862c6b76ceb7b466af7b0a16d334bfbaafcdb49e13b4f07727073ff8a24da0f0422161f48805310b8ed7c0cc97b07190b241ad77cec254 SHA512 f8107b5f81d0d00a1873089b084250c98094625274b9c01f8ca11f6dcfa890278ec89d039849c203ccccc8115d54ee3f9365d9f6afc38cb3411f6292c62c11c0
|
||||
|
@ -1,97 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic
|
||||
|
||||
DESCRIPTION="A full featured backup tool, aimed for disks"
|
||||
HOMEPAGE="http://dar.linux.free.fr/"
|
||||
SRC_URI="https://downloads.sourceforge.net/project/dar/dar/${PV}/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ppc sparc x86 ~amd64-linux"
|
||||
IUSE="argon2 curl dar32 dar64 doc gcrypt gpg lz4 lzo nls rsync xattr"
|
||||
|
||||
REQUIRED_USE="
|
||||
?? ( dar32 dar64 )
|
||||
gpg? ( gcrypt )
|
||||
"
|
||||
|
||||
RESTRICT="test" # need to be run as root
|
||||
|
||||
RDEPEND="
|
||||
app-arch/bzip2:=
|
||||
app-arch/xz-utils
|
||||
app-arch/zstd:=
|
||||
dev-libs/libthreadar
|
||||
sys-libs/libcap
|
||||
>=sys-libs/zlib-1.2.3:=
|
||||
argon2? ( app-crypt/argon2:= )
|
||||
curl? ( net-misc/curl )
|
||||
gcrypt? (
|
||||
dev-libs/libgcrypt:0=
|
||||
dev-libs/libgpg-error
|
||||
)
|
||||
gpg? (
|
||||
app-crypt/gpgme:=
|
||||
dev-libs/libassuan
|
||||
)
|
||||
lz4? ( app-arch/lz4:= )
|
||||
lzo? ( dev-libs/lzo:2 )
|
||||
nls? ( virtual/libintl )
|
||||
rsync? ( net-libs/librsync:= )
|
||||
xattr? ( sys-apps/attr )
|
||||
"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
BDEPEND="
|
||||
doc? ( app-text/doxygen )
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
QA_PKGCONFIG_VERSION="" #862025 - upstream has a different numbering scheme for libdar
|
||||
|
||||
src_configure() {
|
||||
# configure.ac is totally funked up regarding the AC_ARG_ENABLE
|
||||
# logic.
|
||||
# For example "--enable-dar-static" causes configure to DISABLE
|
||||
# static builds of dar.
|
||||
# Do _not_ use $(use_enable) until you have verified that the
|
||||
# logic has been fixed by upstream.
|
||||
local myconf=(
|
||||
--disable-dar-static
|
||||
--disable-python-binding
|
||||
--disable-upx
|
||||
$(usev !argon2 --disable-libargon2-linking)
|
||||
$(usev !curl --disable-libcurl-linking)
|
||||
$(usev dar32 --enable-mode=32)
|
||||
$(usev dar64 --enable-mode=64)
|
||||
$(usev !doc --disable-build-html)
|
||||
$(usev !gcrypt --disable-libgcrypt-linking)
|
||||
$(usev !gpg --disable-gpgme-linking)
|
||||
$(usev !lz4 --disable-liblz4-linking)
|
||||
$(usev !lzo --disable-liblzo2-linking)
|
||||
$(usev !nls --disable-nls)
|
||||
$(usev !rsync --disable-librsync-linking)
|
||||
$(usev !xattr --disable-ea-support)
|
||||
)
|
||||
|
||||
# Bug 103741
|
||||
filter-flags -fomit-frame-pointer
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" pkgdatadir="${EPREFIX}"/usr/share/doc/${PF}/html install
|
||||
|
||||
einstalldocs
|
||||
|
||||
find "${ED}" -name "*.la" -delete || die
|
||||
|
||||
# Bug 729150
|
||||
rm "${ED}/usr/share/doc/${PF}/html/samples/MyBackup.sh.tar.gz" || die
|
||||
}
|
@ -1,7 +1,10 @@
|
||||
AUX cron-confd.patch 916 BLAKE2B 52672e59ebbfde9dd120516d9c0fb80443b8bfe38d08ec943956005a3d07aa1ed3e9273c572730722a02d3b841859dbc8d3fa81e89e87d6958251abec016716c SHA512 7f0872b14f1fa6b3c7990a9b219a0b2c0b941b1376fb89eda6e4fdf4b3b37818d0114febdb21d2432f5b1c08f1ba4354936d556c1c26953a0fe0f3196d699aa7
|
||||
AUX snapper-0.10.1-testsuite.patch 2525 BLAKE2B 0ece146356113d456ef0a56e46e76eae1f9509e3b454459499fa457119c75a9e5fecb85d5530caaab340cea7f4deba0f155ac9e31706ab3899372c45e381cf77 SHA512 e0e1a4ed7c9ef069bc0bc5449f784c2deda1ce6851e98ca6d04c03988361f00e06b6a4f347671ee905f496dba19f8dffa64e5bdcba89f547292fc9c8d276ecd7
|
||||
AUX snapper-0.11.0-cron-confd.patch 424 BLAKE2B beb358e0405a680963fc5776dc2bdd6de36958c53579d4097dd43655a4e4abd1dba0eaeff789da435b7f6fd13993e2dca29f07dd0b29e9bfcb29fa31c3623848 SHA512 1ac7ed0de6be97219282bcff82ebb0c62a9ae1a8869fd8e1246dc06b20aac81e3f95d306198d29d69223226b4efd5b1f4555b3280935f09c1c374803236c1bee
|
||||
DIST snapper-0.10.6.tar.gz 423867 BLAKE2B a7d0f8c62c60c0d03bf108a8c0692dd209f170cf8227512cbc3b80eb9f58ecca845aa585859032bc6582d67e4c6ff15b75443a9ee9291d1b970efec15513571f SHA512 6eedfb9408260331f042f0a429a1104136cb88dac450f320641b0941cd06faf52f67cad2397cf4122f919876bb994455da0cfd3bb099f82217050e07b4c77d2e
|
||||
DIST snapper-0.10.7.tar.gz 428482 BLAKE2B 43c48d978296901f6584cef258ec3723de97b1d6b4b4a5b6bc39649f28b3300919616c65b8fcdb97b3ebcab08d04e4583713eef146721367de24513e80113b45 SHA512 bf098c941735b60554ff0711fa43b30ef3634e01178f5ee8ad44c65b757c3366bd5bf568cef3a787b2ddcc2fc63090056109250480e6bd360ebf27a8343373b8
|
||||
DIST snapper-0.11.0.tar.gz 445685 BLAKE2B 301e6d745d8d6d7acc6ca0c9fc431a0e46700aabd9882785bb2be38152693f9dbe897f85f6ad724c9529a0754b6146b53dda0a24141b386e59e7737855bc5da2 SHA512 fe86be4ceb1439b5be3fa61f5bc037bc51a5fe47451d0698851f83e2783d6c245ef8d40a33f79b03e8d1d8b63433743c35938ad7dca0747e0e1f650a5a766c40
|
||||
EBUILD snapper-0.10.6.ebuild 2047 BLAKE2B 2edd21d85fbc8d3a750ae08a9961dcb8b6470d46095208dfd0b1c1b024b05db281118fd60697305b3f449ad4967e199acb8862faa8f84eb649cd196fd569c971 SHA512 c71f9432028a102fbfc5d0dc47194f3714e5834514bf3a7c0a2e2a9452824c5ae751de5b777bf6c6840edf73b63331f1f850b67f84283cf5241cef9abf16b45b
|
||||
EBUILD snapper-0.10.7.ebuild 2049 BLAKE2B 795e6947da7d2d2c68d24e612ce442fdec03c22584c1d4b85a8d36413b2e555ca4719c6223591cf92e441c15b6069cd29bd869519c99b2f23d54fd0fbb4225e0 SHA512 101ad55fd0be1fa87923bb57114280e626cf84ac22c0a7056f002276b71061e2ad0b3573e9d56dd500bff4b419a180a6c9c70b6be7d44340953f863249dfe93b
|
||||
EBUILD snapper-0.11.0.ebuild 2054 BLAKE2B c58e9c9ae9dc006221778c50c6d0727b384d32d4390e280e474e1496fb8155a3cd4448ed725b2dbd679ee7dd90d6bf42b4baa321a74f99290be036374b4d5eec SHA512 ce00a62a1848d756c5174ce4ac3b29ff042494ff5644f4618d2777dde9708b1a89018bbd4a78d4a6c203801e2775a7e4fdb98ec5a30ce6dc8bb375650827b500
|
||||
MISC metadata.xml 1331 BLAKE2B 891a27fbae2ed364a26952def66b3e9e62be7025580d7b89f559f284888efed53476f4a8f5bcd7209c3c4de8494913a05354059004ef6c3aa6c1829a3e093efb SHA512 add8dffdf453f079d09f06608cae732ce61e04a5fac1988afb0733c8d60a943efe054a4973e54ca1cf304ad3d3778fd8aa6b01fc16815a1f42f83048d58adb63
|
||||
|
@ -0,0 +1,18 @@
|
||||
diff --git a/scripts/snapper-hourly b/scripts/snapper-hourly
|
||||
index 36a41f5..f36d8ec 100755
|
||||
--- a/scripts/snapper-hourly
|
||||
+++ b/scripts/snapper-hourly
|
||||
@@ -9,10 +9,10 @@ export PATH
|
||||
|
||||
|
||||
#
|
||||
-# get information from /etc/sysconfig/snapper
|
||||
+# get information from /etc/conf.d/snapper
|
||||
#
|
||||
-if [ -f /etc/sysconfig/snapper ] ; then
|
||||
- . /etc/sysconfig/snapper
|
||||
+if [ -f /etc/conf.d/snapper ] ; then
|
||||
+ . /etc/conf.d/snapper
|
||||
fi
|
||||
|
||||
|
@ -0,0 +1,90 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools systemd
|
||||
|
||||
DESCRIPTION="Command-line program for btrfs and lvm snapshot management"
|
||||
HOMEPAGE="http://snapper.io/"
|
||||
SRC_URI="https://github.com/openSUSE/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
|
||||
IUSE="lvm pam test systemd xattr"
|
||||
RESTRICT="test"
|
||||
|
||||
BDEPEND="app-text/docbook-xsl-stylesheets
|
||||
dev-libs/libxslt
|
||||
sys-devel/gettext
|
||||
virtual/pkgconfig"
|
||||
|
||||
RDEPEND="dev-libs/boost:=
|
||||
dev-libs/json-c:=
|
||||
dev-libs/libxml2
|
||||
dev-libs/icu:=
|
||||
sys-apps/acl
|
||||
sys-apps/dbus
|
||||
sys-apps/util-linux
|
||||
>=sys-fs/btrfs-progs-3.17.1
|
||||
sys-libs/zlib
|
||||
virtual/libintl
|
||||
lvm? ( sys-fs/lvm2 )
|
||||
pam? ( sys-libs/pam )
|
||||
xattr? ( sys-apps/attr )"
|
||||
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-cron-confd.patch
|
||||
"${FILESDIR}"/${PN}-0.10.1-testsuite.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
sed -e "s,/usr/lib/systemd/system,$(systemd_get_systemunitdir),g" \
|
||||
-i data/Makefile.* \
|
||||
|| die "Failed to fix systemd services and timers installation path"
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# ext4 code does not work anymore
|
||||
# snapper does not build without btrfs
|
||||
local myeconfargs=(
|
||||
--disable-silent-rules
|
||||
--with-conf="/etc/conf.d"
|
||||
--enable-zypp
|
||||
--enable-rollback
|
||||
--enable-btrfs-quota
|
||||
--disable-ext4
|
||||
--enable-btrfs
|
||||
--enable-doc
|
||||
$(use_enable lvm)
|
||||
$(use_enable pam)
|
||||
$(use_enable test tests)
|
||||
$(use_enable systemd)
|
||||
$(use_enable xattr xattrs)
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
# Existing configuration file required to function
|
||||
keepdir /etc/snapper/configs
|
||||
newconfd data/sysconfig.snapper snapper
|
||||
find "${D}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "In order to use Snapper, you need to set up"
|
||||
elog "at least one config first. To do this, run:"
|
||||
elog "snapper create-config <subvolume>"
|
||||
elog "For more information, see man (8) snapper or"
|
||||
elog "http://snapper.io/documentation.html and"
|
||||
elog "https://wiki.gentoo.org/wiki/Snapper"
|
||||
}
|
@ -0,0 +1,252 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit readme.gentoo-r1 rpm systemd pax-utils
|
||||
|
||||
DESCRIPTION="IBM Spectrum Protect (former Tivoli Storage Manager) Backup/Archive Client, API"
|
||||
HOMEPAGE="https://www.ibm.com/docs/en/spectrum-protect"
|
||||
|
||||
MY_PV_MAJOR=$(ver_cut 1)
|
||||
MY_PV_MINOR=$(ver_cut 2)
|
||||
MY_PV_TINY=$(ver_cut 3)
|
||||
MY_PV_PATCH=$(ver_cut 4)
|
||||
|
||||
MY_PV_NODOTS="${MY_PV_MAJOR}${MY_PV_MINOR}${MY_PV_TINY}"
|
||||
MY_PVR_ALLDOTS=${PV}
|
||||
|
||||
if [[ ${MY_PV_PATCH} == 0 ]]; then
|
||||
MY_RELEASE_PATH=maintenance
|
||||
else
|
||||
MY_RELEASE_PATH=patches
|
||||
fi
|
||||
BASE_URI="https://public.dhe.ibm.com/storage/tivoli-storage-management/"
|
||||
BASE_URI+="${MY_RELEASE_PATH}/client/v${MY_PV_MAJOR}r${MY_PV_MINOR}/"
|
||||
BASE_URI+="Linux/LinuxX86/BA/v${MY_PV_NODOTS}/"
|
||||
SRC_TAR="${MY_PVR_ALLDOTS}-TIV-TSMBAC-LinuxX86.tar"
|
||||
SRC_URI="${BASE_URI}${SRC_TAR}"
|
||||
|
||||
RESTRICT="strip" # Breaks libPiIMG.so and libPiSNAP.so
|
||||
LICENSE="Apache-1.1 Apache-2.0 JDOM BSD-2 CC-PD Boost-1.0 MIT CPL-1.0 HPND Exolab
|
||||
dom4j EPL-1.0 FTL icu unicode IBM Info-ZIP LGPL-2 LGPL-2.1 openafs-krb5-a
|
||||
ZLIB MPL-1.0 MPL-1.1 NPL-1.1 openssl OPENLDAP RSA public-domain W3C
|
||||
|| ( BSD GPL-2+ ) gSOAP libpng tsm"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64"
|
||||
IUSE="acl java vmware +tsm-cit +tsm-hw"
|
||||
QA_PREBUILT="*"
|
||||
|
||||
# not available (yet?)
|
||||
#MY_LANGS="cs:CS_CZ de:DE_DE es:ES_ES fr:FR_FR hu:HU_HU it:IT_IT ja:JA_JP
|
||||
# ko:KO_KR pl:PL_PL pt-BR:PT_BR ru:RU_RU zh-CN:ZH_CN zh-TW:ZH_TW"
|
||||
MY_LANG_PV="${MY_PVR_ALLDOTS}-"
|
||||
for lang in ${MY_LANGS}; do
|
||||
IUSE="${IUSE} l10n_${lang%:*}"
|
||||
SRC_URI="${SRC_URI} l10n_${lang%:*}? ( \
|
||||
${BASE_URI}TIVsm-msg.${lang#*:}.x86_64.rpm -> \
|
||||
${MY_LANG_PV}TIVsm-msg.${lang#*:}.x86_64.rpm )"
|
||||
done
|
||||
unset lang
|
||||
|
||||
BDEPEND="
|
||||
app-arch/xz-utils[extra-filters]
|
||||
"
|
||||
DEPEND="
|
||||
acct-group/tsm
|
||||
"
|
||||
RDEPEND="
|
||||
acct-group/tsm
|
||||
dev-libs/expat
|
||||
dev-libs/libxml2
|
||||
sys-fs/fuse:0
|
||||
acl? ( sys-apps/acl )
|
||||
java? ( virtual/jre:1.8 )
|
||||
vmware? ( x11-libs/libXft media-libs/alsa-lib )
|
||||
|| (
|
||||
sys-libs/libxcrypt[compat]
|
||||
sys-libs/glibc[crypt(-)]
|
||||
)
|
||||
"
|
||||
|
||||
S="${WORKDIR}/bacli"
|
||||
|
||||
pkg_setup() {
|
||||
DOC_CONTENTS="
|
||||
Note that you have to be root to be able to use the Tivoli Storage Manager
|
||||
client. The dsmtca trusted agent binary does not exist anymore.
|
||||
|
||||
For information on how to give other users access, please see the following
|
||||
URLs:
|
||||
https://www.ibm.com/support/knowledgecenter/SSGSG7_7.1.8/client/c_cfg_nonadmin.html#c_macuninst_nonadmin
|
||||
https://www.ibm.com/support/knowledgecenter/SSGSG7_7.1.8/client/c_secure_pwd.html#c_secure_pwd__sec_no_tca
|
||||
"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local rpm rpms lang
|
||||
mkdir bacli || die
|
||||
cd bacli || die
|
||||
unpack ${SRC_TAR}
|
||||
|
||||
cd "${S}"
|
||||
for rpm in *.rpm; do
|
||||
case ${rpm} in
|
||||
TIVsm-APIcit.*|TIVsm-BAcit.*)
|
||||
use tsm-cit && rpms="${rpms} ./${rpm}"
|
||||
;;
|
||||
TIVsm-BAhdw.*)
|
||||
use tsm-hw && rpms="${rpms} ./${rpm}"
|
||||
;;
|
||||
TIVsm-JBB.*|*-filepath-*)
|
||||
# "journal based backup" for all filesystems
|
||||
# requires a kernel module.
|
||||
# "Linux Filepath source code" available
|
||||
# by request from vendor
|
||||
;;
|
||||
*)
|
||||
rpms="${rpms} ./${rpm}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
for rpm in ${A}; do
|
||||
case ${rpm} in
|
||||
*.rpm)
|
||||
rpms="${rpms} ${rpm}"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
rpm_unpack ${rpms}
|
||||
|
||||
# Avoid strange error messages caused by read-only files
|
||||
chmod -R u+w "${S}" || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if ! use vmware; then
|
||||
rm -rf opt/tivoli/tsm/tdpvmware
|
||||
fi
|
||||
cp -a opt "${D}"/ || die
|
||||
cp -a usr "${D}"/ || die
|
||||
|
||||
# The RPM files contain postinstall scripts which can be extracted
|
||||
# e.g. using https://bugs.gentoo.org/attachment.cgi?id=234663 .
|
||||
# Below we try to mimic the behaviour of these scripts.
|
||||
# We don't deal with SELinux compliance (yet), though.
|
||||
local RPM_INSTALL_PREFIX CLIENTDIR i
|
||||
RPM_INSTALL_PREFIX=/opt
|
||||
CLIENTDIR=${RPM_INSTALL_PREFIX}/tivoli/tsm/client
|
||||
|
||||
# Create links for messages; this is spread over several postin scripts.
|
||||
#for i in $(cd "${D}"/${CLIENTDIR}/lang; ls -1d ??_??); do
|
||||
# dosym ../../lang/${i} $CLIENTDIR/ba/bin/${i}
|
||||
# dosym ../../lang/${i} $CLIENTDIR/api/bin64/${i}
|
||||
#done
|
||||
|
||||
# Mimic TIVsm-API64 postinstall script
|
||||
for i in libgpfs.so libdmapi.so; do
|
||||
dosym ../..${CLIENTDIR}/api/bin64/${i} /usr/lib64/${i}
|
||||
done
|
||||
|
||||
# The TIVsm-BA postinstall script only does messages and ancient upgrades
|
||||
|
||||
# The gscrypt64 postinstall script only deals with s390[x] SELinux
|
||||
# and the symlink for the iccs library which we handle in the loop below.
|
||||
|
||||
# Move stuff from /usr/local to /opt, #452332
|
||||
mv "${D}"/usr/local/ibm "${D}"/opt/ || die
|
||||
rmdir "${D}"/usr/local || die
|
||||
|
||||
# Mimic gskssl64 postinstall script
|
||||
for i in sys p11 km ssl drld kicc ldap cms acmeidup valn dbfl iccs; do
|
||||
dosym ../../opt/ibm/gsk8_64/lib64/libgsk8${i}_64.so \
|
||||
/usr/lib64/libgsk8${i}_64.so
|
||||
done
|
||||
for i in capicmd ver; do
|
||||
dosym ../../opt/ibm/gsk8_64/bin/gsk8${i}_64 /usr/bin/gsk${i}_64
|
||||
done
|
||||
|
||||
# Done with the postinstall scripts as the RPMs contain them.
|
||||
# Now on to some more Gentoo-specific installation.
|
||||
|
||||
rm -rf "${D}/usr/lib/.build-id" &> /dev/null
|
||||
[[ -d "${D}/usr/lib" ]] && rmdir "${D}/usr/lib" || die "Using 32bit lib dir in 64bit only system"
|
||||
|
||||
# Avoid "QA Notice: Found an absolute symlink in a library directory"
|
||||
local target
|
||||
find "${D}"/usr/lib* -lname '/*' | while read i; do
|
||||
target=$(readlink "${i}")
|
||||
rm -v "${i}" || die
|
||||
dosym "../..${target}" "${i#${D}/}"
|
||||
done
|
||||
|
||||
keepdir /var/log/tsm
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}/tsm.logrotate" tsm
|
||||
|
||||
keepdir /etc/tivoli
|
||||
|
||||
cp -a "${S}/opt/tivoli/tsm/client/ba/bin/dsm.sys.smp" "${D}/etc/tivoli/dsm.sys" || die
|
||||
echo ' PasswordDir "/etc/tivoli/"' >> "${D}"/etc/tivoli/dsm.sys
|
||||
echo ' PasswordAccess generate' >> "${D}"/etc/tivoli/dsm.sys
|
||||
|
||||
# Added the hostname to be more friendly, the admin will need to edit this file anyway
|
||||
echo ' NodeName' `hostname` >> "${D}"/etc/tivoli/dsm.sys
|
||||
echo ' ErrorLogName "/var/log/tsm/dsmerror.log"' >> "${D}"/etc/tivoli/dsm.sys
|
||||
echo ' SchedLogName "/var/log/tsm/dsmsched.log"' >> "${D}"/etc/tivoli/dsm.sys
|
||||
dosym ../../../../../../etc/tivoli/dsm.sys /opt/tivoli/tsm/client/ba/bin/dsm.sys
|
||||
|
||||
cp -a "${S}/opt/tivoli/tsm/client/ba/bin/dsm.opt.smp" "${D}/etc/tivoli/dsm.opt"
|
||||
dosym ../../../../../../etc/tivoli/dsm.opt /opt/tivoli/tsm/client/ba/bin/dsm.opt
|
||||
|
||||
# Setup the env
|
||||
dodir /etc/env.d
|
||||
ENV_FILE="${D}/etc/env.d/80tivoli"
|
||||
echo 'DSM_CONFIG="/etc/tivoli/dsm.opt"' >> ${ENV_FILE}
|
||||
echo 'DSM_DIR="/opt/tivoli/tsm/client/ba/bin"' >> ${ENV_FILE}
|
||||
echo 'DSM_LOG="/var/log/tsm"' >> ${ENV_FILE}
|
||||
# echo 'ROOTPATH="/opt/tivoli/tsm/client/ba/bin"' >> ${ENV_FILE}
|
||||
|
||||
echo 'SEARCH_DIRS_MASK="/opt/tivoli/tsm/client/ba/bin"' > "${T}/80${PN}" || die
|
||||
insinto "/etc/revdep-rebuild"
|
||||
doins "${T}/80${PN}"
|
||||
|
||||
newconfd "${FILESDIR}/dsmc.conf.d" dsmc
|
||||
newinitd "${FILESDIR}/dsmc.init.d" dsmc
|
||||
newinitd "${FILESDIR}/dsmcad.init.d-r1" dsmcad
|
||||
|
||||
# Need this for hardened, otherwise a cryptic "connection to server lost" message appears
|
||||
pax-mark -m "${D}/opt/tivoli/tsm/client/ba/bin/dsmc"
|
||||
|
||||
systemd_dounit "${FILESDIR}/dsmc.service"
|
||||
systemd_dounit "${FILESDIR}/dsmcad.service"
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local i dirs
|
||||
for i in /var/log/tsm/dsm{error,sched,j,webcl}.log; do
|
||||
if [[ ! -e ${i} ]]; then
|
||||
touch ${i} || die
|
||||
chown :tsm ${i} || die
|
||||
chmod 0660 ${i} || die
|
||||
fi
|
||||
done
|
||||
|
||||
# Bug #375041: the log directory itself should not be world writable.
|
||||
# Have to do this in postinst due to bug #141619
|
||||
chown root:tsm /var/log/tsm || die
|
||||
chmod 0750 /var/log/tsm || die
|
||||
|
||||
# Bug 508052: directories used to be too restrictive, have to widen perms.
|
||||
dirs=( /opt/tivoli $(find /opt/tivoli/tsm -type d) )
|
||||
chown root:root "${dirs[@]}" || die
|
||||
chmod 0755 "${dirs[@]}" || die
|
||||
|
||||
FORCE_PRINT_ELOG=1
|
||||
DISABLE_AUTOFORMATTING=1
|
||||
readme.gentoo_print_elog
|
||||
}
|
Binary file not shown.
@ -0,0 +1,86 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
inherit go-module systemd
|
||||
GIT_REVISION=926c9586fe4a6236699318391cd44976a98e31f1
|
||||
|
||||
DESCRIPTION="A daemon to control runC"
|
||||
HOMEPAGE="https://containerd.io/"
|
||||
SRC_URI="https://github.com/containerd/containerd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
|
||||
IUSE="apparmor btrfs device-mapper +cri hardened +seccomp selinux test"
|
||||
|
||||
DEPEND="
|
||||
btrfs? ( sys-fs/btrfs-progs )
|
||||
seccomp? ( sys-libs/libseccomp )
|
||||
"
|
||||
|
||||
# recommended version of runc is found in script/setup/runc-version
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
~app-containers/runc-1.1.12[apparmor?,seccomp?]
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
dev-go/go-md2man
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
# tests require root or docker
|
||||
RESTRICT+="test"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i \
|
||||
-e "s/-s -w//" \
|
||||
-e "s/-mod=readonly//" \
|
||||
Makefile || die
|
||||
sed -i \
|
||||
-e "s:/usr/local:/usr:" \
|
||||
containerd.service || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local options=(
|
||||
$(usev apparmor)
|
||||
$(usex btrfs "" "no_btrfs")
|
||||
$(usex cri "" "no_cri")
|
||||
$(usex device-mapper "" "no_devmapper")
|
||||
$(usev seccomp)
|
||||
$(usev selinux)
|
||||
)
|
||||
|
||||
myemakeargs=(
|
||||
BUILDTAGS="${options[*]}"
|
||||
LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')"
|
||||
REVISION="${GIT_REVISION}"
|
||||
VERSION=v${PV}
|
||||
)
|
||||
|
||||
# race condition in man target https://bugs.gentoo.org/765100
|
||||
# we need to explicitly specify GOFLAGS for "go run" to use vendor source
|
||||
emake "${myemakeargs[@]}" man -j1 #nowarn
|
||||
emake "${myemakeargs[@]}" all
|
||||
|
||||
}
|
||||
|
||||
src_install() {
|
||||
rm "${D}"/bin/gen-manpages
|
||||
dobin bin/*
|
||||
doman man/*
|
||||
newconfd "${FILESDIR}"/${PN}.confd "${PN}"
|
||||
newinitd "${FILESDIR}"/${PN}.initd "${PN}"
|
||||
systemd_dounit containerd.service
|
||||
keepdir /var/lib/containerd
|
||||
|
||||
# we already installed manpages, remove markdown source
|
||||
# before installing docs directory
|
||||
rm -r docs/man || die
|
||||
|
||||
local DOCS=( ADOPTERS.md README.md RELEASES.md ROADMAP.md SCOPE.md docs/. )
|
||||
einstalldocs
|
||||
}
|
@ -0,0 +1,72 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
GIT_COMMIT=9714adc6c797755f63053726c56bc1c17c0c9204
|
||||
|
||||
EGO_PN="github.com/docker/cli"
|
||||
MY_PV=${PV/_/-}
|
||||
inherit bash-completion-r1 golang-vcs-snapshot
|
||||
|
||||
DESCRIPTION="the command line binary for docker"
|
||||
HOMEPAGE="https://www.docker.com/"
|
||||
SRC_URI="https://github.com/docker/cli/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
|
||||
SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-man.tar.xz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
|
||||
IUSE="hardened selinux"
|
||||
|
||||
RDEPEND="!<app-containers/docker-20.10.1
|
||||
selinux? ( sec-policy/selinux-docker )"
|
||||
BDEPEND="
|
||||
>=dev-lang/go-1.16.6"
|
||||
|
||||
RESTRICT="installsources strip test"
|
||||
|
||||
S="${WORKDIR}/${P}/src/${EGO_PN}"
|
||||
|
||||
src_unpack() {
|
||||
golang-vcs-snapshot_src_unpack
|
||||
set -- ${A}
|
||||
unpack ${2}
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i 's@dockerd\?\.exe@@g' contrib/completion/bash/docker || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export DISABLE_WARN_OUTSIDE_CONTAINER=1
|
||||
export GOPATH="${WORKDIR}/${P}"
|
||||
# setup CFLAGS and LDFLAGS for separate build target
|
||||
# see https://github.com/tianon/docker-overlay/pull/10
|
||||
export CGO_CFLAGS="-I${ESYSROOT}/usr/include"
|
||||
export CGO_LDFLAGS="-L${ESYSROOT}/usr/$(get_libdir)"
|
||||
emake \
|
||||
LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \
|
||||
VERSION="${PV}" \
|
||||
GITCOMMIT="${GIT_COMMIT}" \
|
||||
dynbinary
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin build/docker
|
||||
doman "${WORKDIR}"/man/man?/*
|
||||
dobashcomp contrib/completion/bash/*
|
||||
bashcomp_alias docker dockerd
|
||||
insinto /usr/share/fish/vendor_completions.d/
|
||||
doins contrib/completion/fish/docker.fish
|
||||
insinto /usr/share/zsh/site-functions
|
||||
doins contrib/completion/zsh/_*
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
has_version "app-containers/docker-buildx" && return
|
||||
ewarn "the 'docker build' command is deprecated and will be removed in a"
|
||||
ewarn "future release. If you need this functionality, install"
|
||||
ewarn "app-containers/docker-buildx."
|
||||
}
|
@ -1,12 +1,16 @@
|
||||
AUX 0001-Openrc-Depend-on-containerd-init-script.patch 774 BLAKE2B a7ac6f6a1e9ee88751e8e0471cd33429b8141cbea07a3a56c61eccd63c796c9135edafaf5977571a4413e5d71931aac44b5313110af94c3206e286b15394f637 SHA512 bc709b6f0dd8685fbf2404be589743f32a5f4deb24dec8ed6aeec18f0fcd1db4c5d59587209c28f62d964d78ec9ab3a3fdbb795dc4b7e3fabd00a06a002af34e
|
||||
AUX docker-24.0.5-automagic-systemd.patch 408 BLAKE2B 30219bec84f4508dbfdeb58971cc94aa3a93d3d086c23a51fd1dda68b6409b9c2e44f262711ee353347b18877606fceb12bab306496e4ec6c9b4e6b9123ca381 SHA512 490d96d43f2d18a7fe295331bfd8c31d6812f6e6e37d33b39f20671461757d12ec3366fa31212c0123413458c388d1c67361c634224ca15bf40acb7aab10477f
|
||||
AUX docker-26.1.0-automagic-systemd.patch 355 BLAKE2B 95d2367d5450a15214939c0a080b81a07d3ea3fdaaee921b2fc221949f3737652182366e54af499da5a1597fb1353a29d8935ed0a5e60a805920d3375aa594a1 SHA512 ba694ac1ca135fadc39d1afe0b8fdfaef8d6b9c75cbe4177a51422f972022f3502625c5e5467cd54fe33b2e83acdfe2c524da2a4d37f74376f365d7baaa12bec
|
||||
DIST docker-24.0.5.tar.gz 14456089 BLAKE2B be13a4256787152cb35ddb96d80e97a5e5b587094f1c61d18158737a037c4e81b88c186098ba7416eb7778022ece07bc31ee55af13d3e3da8e0bbd5452ad027f SHA512 cde2e47e7658b153399ee29154ec21eebf54b292185e07d43b968895dcfdfead95e4507fefb713859a4540f21d8007116d3ebeaa1fb7ba305fb2a0449ba1bee6
|
||||
DIST docker-24.0.6.tar.gz 14462378 BLAKE2B bced8e687abac59254a9969df46f323a835627a724889e5966bea08df8766b4291914442001d1b573280c45ac4d357a673e98e8fba2b8d116a1dbd65424ccf78 SHA512 d9bf0ba756b1ebe69a44819d7c6aa5d66dad8db5bcc41233e2bfce8131334a2fe1af3972de7f602b7911231288d29aaea797b7a05b335c2d7214a613b27c4b63
|
||||
DIST docker-24.0.7.tar.gz 14658649 BLAKE2B 73bad494640ef8cad2b9b991f94414d8bec4dd88b120b0f8238f74d01269c445270f45410ac2c78af074356c3ba60a7c550ab28f5da5924bdc6d8b99e85a1360 SHA512 08f22fcbce163c3ba8eb21302fd38ff04fd3f27067f5715a3c527ba2efe67f694fac80bfe6d6b5e22d06d98917e1685a9d3d9b58991f221354f637f4a8bdc526
|
||||
DIST docker-25.0.1.tar.gz 15936052 BLAKE2B 32b24893c9b098b218b16548be074588ad98ed31c8b87ab3fa467f79e33e96ce94f694b86f2920b1166e64c153b1c2482cb602117f673d23f0fc5ccc9b28ae92 SHA512 816c888925cf609e7caa6e491b45614f69fdd7df5ed4f783d8a77cf86d9f46f4f457a95a943aa75ecddf99d080daf78bc0dba55e9648960dc539b1ae62052361
|
||||
DIST docker-25.0.4.tar.gz 15953567 BLAKE2B 85398de80b14f21d611822a1714ac987d919cf6a2a8059d8a6d41c9b63fd63a04013e47e01021eccdbd107f1a3f8ee55dc1ecbc4b6c9cc20ff2854434e3b6af7 SHA512 07e724de305def32a1e32a724a8041be193745c4f0d549708723cf5d14b840f74648e83e790fd526e00a6c6fdb7e487ee4e5ed0752fbe172d673ab86fe8819d2
|
||||
EBUILD docker-24.0.5.ebuild 7678 BLAKE2B 6a810a6e620d5d767196f407168935ae86a6c386666170728bcc740d2219b63fb7341c553e3df8c0600c5399043954fd5ef93708851b7d2f1475cc3a880f90b8 SHA512 d3ef18e6c19e08eda50da385f914db0b906c17e018809f28043d251d29af754a276dcc52e7c493b41ccf242c2f18eccf842bdd502061d744a5daf0f9b4a30c15
|
||||
DIST docker-26.1.0.tar.gz 16390376 BLAKE2B 6703e9b153c430bc28aed2e7de7bada0203353d61f0a2ce3d49ddbd017eab196a685dd1ab1e719a6b287813eb5fa4f2c612e2cf1ab95789d6e79ebe5dac7ace3 SHA512 47b6b9af9947016884614b6bc25977e1db281da95c9b8b34c753c21c664a737a893f9fa65d92cbb897735aae3893567e106e6bababb5507e069b1e0981e48d50
|
||||
EBUILD docker-24.0.5-r1.ebuild 7807 BLAKE2B eadcaee6822674bcefcf097ae5f6a431348e93ec1cc676baa8e6f850500edbe92721e0519b3b4dd713c7bcc8297ca85171d7e2f9dfd0fe4d14f57a1c6302b059 SHA512 7a5caa58731a199ae1f51c5c9cba122b11e8b008dd1386bfc3722b6afef1ebeea59466f9f496a9adcbea327f4d970020bbe15286e43c1c72e864efb0506a4d67
|
||||
EBUILD docker-24.0.6.ebuild 7730 BLAKE2B b0b794e5b2286db6f0e150d9fb9dda78affc11e56c10b338f82518505bf62079b3df4dfcbb265ee2a49169c94b63015540bf6134d5c003cd14b697f656fea122 SHA512 d1ffd748c8d99cc85e3328f9c0937d1dfe08e1cd3b2332a34d54e255e3321a2376dc83898cd8120f7c06b6dd72dd4b2935da88496548cb6c81c37098e7ac4bd8
|
||||
EBUILD docker-24.0.7.ebuild 7730 BLAKE2B 96e28fb42703b73dccf3e4c3d650f865c85e3efdde01ed45637d9a01d684ff24472cba3c66774d738e04387d7f151e0664ae06b0fa16b704c0bba4ed683c4d65 SHA512 b5d9d0f2462b3bc978297708587ea0744e6de7ce5574f7f7e3afaac61a5f425cdb23c8d8be36d32dc62901b0d618603bf1f87154e6b47bf67c28686e5dc26f61
|
||||
EBUILD docker-24.0.7-r1.ebuild 7859 BLAKE2B 051f48853e4e55c7c998280c550522598ddab232acb3896faacdf1d7bdec0a7d7e3dd2761c23bbcec9aeba49b260c5940bc40f17b3f067ea4a16b2ddcecce246 SHA512 406070d547ed53e59ca3bd6143ed0a579e3bc6c7b6b5484b286f754c26de9b542f5f4ecb12086e9d4a10c4e6d5078f398f2eb688af8614b6e64966cdce0503da
|
||||
EBUILD docker-25.0.1.ebuild 7400 BLAKE2B 27cc2cbcba89474dae5d73bb7085d75820bffd7d0bbab25906517b75a6150c4b33a1b411178a13c11b2bb7acbb0896be8e6b7d7e08b5a22be5fd4c3d89a4fcef SHA512 a4e1e3cde6170cced1f73e47a0f54497818fcd46aebace94732e84a4b09b7717490e5fe465b0a9e72e341b58f661070e45acf7901f5e1836044e26cbcb0143ed
|
||||
EBUILD docker-25.0.4.ebuild 7402 BLAKE2B 2fad943f26d8e74d7dbb2eb6417b0ccae49f0ca07ffcc5d3b0c3146e1344cfc4307a6881786ff28bcea31c5217fe058598163ab56b0b4e3c363475fa06663bcb SHA512 f494f5f0fa47b29c488154e52373fcffedb2e450df0c72bc51ad513ef53dff2bb9ffd0021d76e2cd440fb43f1008561ab91c3e3ecdb67b151923684a8f2ef885
|
||||
EBUILD docker-26.1.0-r1.ebuild 7535 BLAKE2B 634f539707209593c0c611b3b8e012beb5ddcd731edf8cba23dc9b811dccf9c33e0e992127718518f5357b543cb7b6f02b20fd812e84070b101d743592823ae8 SHA512 43440d69faba36e5a506721f28a3fb81d6d92eec96e670935d632653e3814cbb7aeab6846e88147bf9cd856f86559fe7d66b9b4aab873607f7b94deb5a15043c
|
||||
MISC metadata.xml 1238 BLAKE2B 66ba70d18bda5204db7a3a11ce1b258d5f3c3679ee5e9271033b04eeb9a23891632c5fb55a1bbd4d549b865261c9f05e9515879e989001b8b8e84e082dca8fb9 SHA512 ed304e622873eb5cb5e5f6e79955b19c4d660d8d3348ebc632b7c2ec996680ce43a53ee920c0f124525911836aa08e6cdaf942c9a856f68d31632a955930b271
|
||||
|
@ -0,0 +1,322 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EGO_PN=github.com/docker/docker
|
||||
MY_PV=${PV/_/-}
|
||||
inherit golang-vcs-snapshot linux-info systemd udev
|
||||
GIT_COMMIT=061aa95809be396a6b5542618d8a34b02a21ff77
|
||||
|
||||
DESCRIPTION="The core functions you need to create Docker images and run Docker containers"
|
||||
HOMEPAGE="https://www.docker.com/"
|
||||
SRC_URI="https://github.com/moby/moby/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
|
||||
IUSE="apparmor btrfs +container-init overlay seccomp selinux systemd"
|
||||
|
||||
DEPEND="
|
||||
acct-group/docker
|
||||
>=dev-db/sqlite-3.7.9:3
|
||||
apparmor? ( sys-libs/libapparmor )
|
||||
btrfs? ( >=sys-fs/btrfs-progs-3.16.1 )
|
||||
seccomp? ( >=sys-libs/libseccomp-2.2.1 )
|
||||
systemd? ( sys-apps/systemd )
|
||||
"
|
||||
|
||||
# https://github.com/moby/moby/blob/master/project/PACKAGERS.md#runtime-dependencies
|
||||
# https://github.com/moby/moby/blob/master/project/PACKAGERS.md#optional-dependencies
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
>=net-firewall/iptables-1.4
|
||||
sys-process/procps
|
||||
>=dev-vcs/git-1.7
|
||||
>=app-arch/xz-utils-4.9
|
||||
>=app-containers/containerd-1.7.15[apparmor?,btrfs?,seccomp?]
|
||||
>=app-containers/runc-1.1.12[apparmor?,seccomp?]
|
||||
!app-containers/docker-proxy
|
||||
container-init? ( >=sys-process/tini-0.19.0[static] )
|
||||
selinux? ( sec-policy/selinux-docker )
|
||||
"
|
||||
|
||||
# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies
|
||||
BDEPEND="
|
||||
>=dev-lang/go-1.16.12
|
||||
dev-go/go-md2man
|
||||
virtual/pkgconfig
|
||||
"
|
||||
# tests require running dockerd as root and downloading containers
|
||||
RESTRICT="installsources strip test"
|
||||
|
||||
S="${WORKDIR}/${P}/src/${EGO_PN}"
|
||||
|
||||
# https://bugs.gentoo.org/748984 https://github.com/etcd-io/etcd/pull/12552
|
||||
PATCHES=(
|
||||
"${FILESDIR}/0001-Openrc-Depend-on-containerd-init-script.patch"
|
||||
"${FILESDIR}/docker-26.1.0-automagic-systemd.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# this is based on "contrib/check-config.sh" from upstream's sources
|
||||
# required features.
|
||||
CONFIG_CHECK="
|
||||
~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS
|
||||
~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG
|
||||
~KEYS
|
||||
~VETH ~BRIDGE ~BRIDGE_NETFILTER
|
||||
~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE
|
||||
~NETFILTER_XT_MATCH_ADDRTYPE
|
||||
~NETFILTER_XT_MATCH_CONNTRACK
|
||||
~NETFILTER_XT_MATCH_IPVS
|
||||
~NETFILTER_XT_MARK
|
||||
~IP_NF_NAT ~NF_NAT
|
||||
~POSIX_MQUEUE
|
||||
"
|
||||
WARNING_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: is required for bind-mounting /dev/mqueue into containers"
|
||||
|
||||
if kernel_is lt 4 8; then
|
||||
CONFIG_CHECK+="
|
||||
~DEVPTS_MULTIPLE_INSTANCES
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is le 5 1; then
|
||||
CONFIG_CHECK+="
|
||||
~NF_NAT_IPV4
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is le 5 2; then
|
||||
CONFIG_CHECK+="
|
||||
~NF_NAT_NEEDED
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is ge 4 15; then
|
||||
CONFIG_CHECK+="
|
||||
~CGROUP_BPF
|
||||
"
|
||||
fi
|
||||
|
||||
# optional features
|
||||
CONFIG_CHECK+="
|
||||
~USER_NS
|
||||
"
|
||||
|
||||
if use seccomp; then
|
||||
CONFIG_CHECK+="
|
||||
~SECCOMP ~SECCOMP_FILTER
|
||||
"
|
||||
fi
|
||||
|
||||
CONFIG_CHECK+="
|
||||
~CGROUP_PIDS
|
||||
"
|
||||
|
||||
if kernel_is lt 6 1; then
|
||||
CONFIG_CHECK+="
|
||||
~MEMCG_SWAP
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is le 5 8; then
|
||||
CONFIG_CHECK+="
|
||||
~MEMCG_SWAP_ENABLED
|
||||
"
|
||||
fi
|
||||
|
||||
CONFIG_CHECK+="
|
||||
~!LEGACY_VSYSCALL_NATIVE
|
||||
"
|
||||
if kernel_is lt 5 19; then
|
||||
CONFIG_CHECK+="
|
||||
~LEGACY_VSYSCALL_EMULATE
|
||||
"
|
||||
fi
|
||||
CONFIG_CHECK+="
|
||||
~!LEGACY_VSYSCALL_NONE
|
||||
"
|
||||
WARNING_LEGACY_VSYSCALL_NONE="CONFIG_LEGACY_VSYSCALL_NONE enabled: \
|
||||
Containers with <=glibc-2.13 will not work"
|
||||
|
||||
if kernel_is le 4 5; then
|
||||
CONFIG_CHECK+="
|
||||
~MEMCG_KMEM
|
||||
"
|
||||
fi
|
||||
|
||||
if kernel_is lt 5; then
|
||||
CONFIG_CHECK+="
|
||||
~IOSCHED_CFQ ~CFQ_GROUP_IOSCHED
|
||||
"
|
||||
fi
|
||||
|
||||
CONFIG_CHECK+="
|
||||
~BLK_CGROUP ~BLK_DEV_THROTTLING
|
||||
~CGROUP_PERF
|
||||
~CGROUP_HUGETLB
|
||||
~NET_CLS_CGROUP ~CGROUP_NET_PRIO
|
||||
~CFS_BANDWIDTH ~FAIR_GROUP_SCHED
|
||||
~IP_NF_TARGET_REDIRECT
|
||||
~IP_VS
|
||||
~IP_VS_NFCT
|
||||
~IP_VS_PROTO_TCP
|
||||
~IP_VS_PROTO_UDP
|
||||
~IP_VS_RR
|
||||
"
|
||||
|
||||
if use selinux; then
|
||||
CONFIG_CHECK+="
|
||||
~SECURITY_SELINUX
|
||||
"
|
||||
fi
|
||||
|
||||
if use apparmor; then
|
||||
CONFIG_CHECK+="
|
||||
~SECURITY_APPARMOR
|
||||
"
|
||||
fi
|
||||
|
||||
# if ! is_set EXT4_USE_FOR_EXT2; then
|
||||
# check_flags EXT3_FS EXT3_FS_XATTR EXT3_FS_POSIX_ACL EXT3_FS_SECURITY
|
||||
# if ! is_set EXT3_FS || ! is_set EXT3_FS_XATTR || ! is_set EXT3_FS_POSIX_ACL || ! is_set EXT3_FS_SECURITY; then
|
||||
# echo " $(wrap_color '(enable these ext3 configs if you are using ext3 as backing filesystem)' bold black)"
|
||||
# fi
|
||||
# fi
|
||||
|
||||
CONFIG_CHECK+="
|
||||
~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
|
||||
"
|
||||
|
||||
# if ! is_set EXT4_FS || ! is_set EXT4_FS_POSIX_ACL || ! is_set EXT4_FS_SECURITY; then
|
||||
# if is_set EXT4_USE_FOR_EXT2; then
|
||||
# echo " $(wrap_color 'enable these ext4 configs if you are using ext3 or ext4 as backing filesystem' bold black)"
|
||||
# else
|
||||
# echo " $(wrap_color 'enable these ext4 configs if you are using ext4 as backing filesystem' bold black)"
|
||||
# fi
|
||||
# fi
|
||||
|
||||
# network drivers
|
||||
CONFIG_CHECK+="
|
||||
~VXLAN ~BRIDGE_VLAN_FILTERING
|
||||
~CRYPTO ~CRYPTO_AEAD ~CRYPTO_GCM ~CRYPTO_SEQIV ~CRYPTO_GHASH
|
||||
~XFRM ~XFRM_USER ~XFRM_ALGO ~INET_ESP
|
||||
"
|
||||
if kernel_is le 5 3; then
|
||||
CONFIG_CHECK+="
|
||||
~INET_XFRM_MODE_TRANSPORT
|
||||
"
|
||||
fi
|
||||
|
||||
CONFIG_CHECK+="
|
||||
~IPVLAN
|
||||
"
|
||||
CONFIG_CHECK+="
|
||||
~MACVLAN ~DUMMY
|
||||
"
|
||||
CONFIG_CHECK+="
|
||||
~NF_NAT_FTP ~NF_CONNTRACK_FTP ~NF_NAT_TFTP ~NF_CONNTRACK_TFTP
|
||||
"
|
||||
|
||||
# storage drivers
|
||||
if use btrfs; then
|
||||
CONFIG_CHECK+="
|
||||
~BTRFS_FS
|
||||
~BTRFS_FS_POSIX_ACL
|
||||
"
|
||||
fi
|
||||
|
||||
CONFIG_CHECK+="
|
||||
~OVERLAY_FS
|
||||
"
|
||||
|
||||
linux-info_pkg_setup
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export DOCKER_GITCOMMIT="${GIT_COMMIT}"
|
||||
export GOPATH="${WORKDIR}/${P}"
|
||||
export VERSION=${PV}
|
||||
tc-export PKG_CONFIG
|
||||
|
||||
# setup CFLAGS and LDFLAGS for separate build target
|
||||
# see https://github.com/tianon/docker-overlay/pull/10
|
||||
export CGO_CFLAGS="-I${ESYSROOT}/usr/include"
|
||||
export CGO_LDFLAGS="-L${ESYSROOT}/usr/$(get_libdir)"
|
||||
|
||||
# let's set up some optional features :)
|
||||
export DOCKER_BUILDTAGS=''
|
||||
for gd in btrfs overlay; do
|
||||
if ! use $gd; then
|
||||
DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}"
|
||||
fi
|
||||
done
|
||||
|
||||
for tag in apparmor seccomp; do
|
||||
if use $tag; then
|
||||
DOCKER_BUILDTAGS+=" $tag"
|
||||
fi
|
||||
done
|
||||
|
||||
export SYSTEMD=$(usex systemd 1 0)
|
||||
|
||||
# build binaries
|
||||
./hack/make.sh dynbinary || die 'dynbinary failed'
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dosym containerd /usr/bin/docker-containerd
|
||||
dosym containerd-shim /usr/bin/docker-containerd-shim
|
||||
dosym runc /usr/bin/docker-runc
|
||||
use container-init && dosym tini /usr/bin/docker-init
|
||||
dobin bundles/dynbinary-daemon/dockerd
|
||||
dobin bundles/dynbinary-daemon/docker-proxy
|
||||
|
||||
newinitd contrib/init/openrc/docker.initd docker
|
||||
newconfd contrib/init/openrc/docker.confd docker
|
||||
|
||||
systemd_dounit contrib/init/systemd/docker.{service,socket}
|
||||
|
||||
udev_dorules contrib/udev/*.rules
|
||||
|
||||
dodoc AUTHORS CONTRIBUTING.md NOTICE README.md
|
||||
dodoc -r docs/*
|
||||
|
||||
# note: intentionally not using "doins" so that we preserve +x bits
|
||||
dodir /usr/share/${PN}/contrib
|
||||
cp -R contrib/* "${ED}/usr/share/${PN}/contrib"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
udev_reload
|
||||
|
||||
elog
|
||||
elog "To use Docker, the Docker daemon must be running as root. To automatically"
|
||||
elog "start the Docker daemon at boot:"
|
||||
if systemd_is_booted || has_version sys-apps/systemd; then
|
||||
elog " systemctl enable docker.service"
|
||||
else
|
||||
elog " rc-update add docker default"
|
||||
fi
|
||||
elog
|
||||
elog "To use Docker as a non-root user, add yourself to the 'docker' group:"
|
||||
elog ' usermod -aG docker <youruser>'
|
||||
elog
|
||||
|
||||
if use overlay; then
|
||||
elog " Overlay storage driver/USEflag has been deprecated"
|
||||
elog " in favor of overlay2 (enabled unconditionally)"
|
||||
elog
|
||||
fi
|
||||
|
||||
if has_version sys-fs/zfs; then
|
||||
elog " ZFS storage driver is available"
|
||||
elog " Check https://docs.docker.com/storage/storagedriver/zfs-driver for more info"
|
||||
elog
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
udev_reload
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
https://bugs.gentoo.org/914076
|
||||
https://github.com/moby/moby/issues/47770
|
||||
--- a/hack/make.sh
|
||||
+++ b/hack/make.sh
|
||||
@@ -90,7 +90,7 @@ add_buildtag() {
|
||||
[[ " $DOCKER_BUILDTAGS" == *" $1_"* ]] || DOCKER_BUILDTAGS+=" $1_$2"
|
||||
}
|
||||
|
||||
-if ${PKG_CONFIG} 'libsystemd' 2> /dev/null; then
|
||||
+if [[ -n "$SYSTEMD" ]] && [[ "$SYSTEMD" == 1 ]] && ${PKG_CONFIG} 'libsystemd' 2> /dev/null; then
|
||||
DOCKER_BUILDTAGS+=" journald"
|
||||
fi
|
||||
|
@ -0,0 +1,13 @@
|
||||
https://bugs.gentoo.org/914076
|
||||
https://github.com/moby/moby/issues/47770
|
||||
--- a/hack/make.sh
|
||||
+++ b/hack/make.sh
|
||||
@@ -83,7 +83,7 @@ if [ ! "$GOPATH" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-if ${PKG_CONFIG} 'libsystemd' 2> /dev/null; then
|
||||
+if [[ -n "$SYSTEMD" ]] && [[ "$SYSTEMD" == 1 ]] && ${PKG_CONFIG} 'libsystemd' 2> /dev/null; then
|
||||
DOCKER_BUILDTAGS+=" journald"
|
||||
fi
|
||||
|
@ -1,16 +1,13 @@
|
||||
DIST earthly-0.8.4-deps.tar.xz 158470344 BLAKE2B c3ec6369f8b397abd9b76dc77461c628e14ecc5866c8b66d094c3fe3194b18330be78454b57f211a717785210da40dc3c83e7d9769c62d621ca42a9d70f7be7f SHA512 d9b0960e02cf288b933a8da954e597957b2e8dc0920e2dca208a17d41c84bc1bcff789ee1c02fa930d5d0a816cb03437b091375168e0f46f3d3cf330a643b308
|
||||
DIST earthly-0.8.4.tar.gz 8041021 BLAKE2B 66057e29d4b287a220d8799efb4a1c5c43ea7641029e3af59bf8556125df28f9eafddc20d515fd20fab8c09bbb6278af4ea525f4bbe38d0e24ee031fc65c7336 SHA512 b663a10feb255329dfca30d5d70cb5c36ad5f96ed2b0cd30c46dd1b4ad087ab15b941fe6d3be3e32b1eee8199b5ee8ae50d61739c290b8967b6fcfd4126327db
|
||||
DIST earthly-0.8.5-deps.tar.xz 157843872 BLAKE2B aade314abdcd8aaf18737908df1a90d71c907f286df463c9f8ce9654d5e212387b7107070225bf85f54d6e4688a741b7838b5c70d9f1a09ac15e904b83d4d2b8 SHA512 557b3477c1773c27934429677a53efbdc104230fcbd536cb73e8cd631ccf2af488731acc5555484298fc579e08b8e52031191b49ef0610595b2b67cc987232e3
|
||||
DIST earthly-0.8.5.tar.gz 8051712 BLAKE2B b9310a28d79bec7a59525a541cdd51960762b0695ccf15fd33be8a9917a7e52b2251a4ebf202c4f02036b3c178b8d26fc9bc4802b9d6a73a5bfc39623c5075d7 SHA512 206dc95c2ef4b89ea7dd65b2b04f4ac7606d63891cea708f7d7dcdff8f3e9ed113b090b65c0285175412cd76fca18852bf77eeddc2e0f2782f390e5bce1f8b86
|
||||
DIST earthly-0.8.6-deps.tar.xz 157843872 BLAKE2B aade314abdcd8aaf18737908df1a90d71c907f286df463c9f8ce9654d5e212387b7107070225bf85f54d6e4688a741b7838b5c70d9f1a09ac15e904b83d4d2b8 SHA512 557b3477c1773c27934429677a53efbdc104230fcbd536cb73e8cd631ccf2af488731acc5555484298fc579e08b8e52031191b49ef0610595b2b67cc987232e3
|
||||
DIST earthly-0.8.6.tar.gz 8052646 BLAKE2B 43cb74b7ad198d6418a60dd8b3bac61c1bf67f460b73ca3627647ce71778178e69075bc5122a24cfe33c075c40e962db60845ae6d0933782432eb56087ed83f2 SHA512 4c5ae65452ff940bbeeff7ec489882c5db82597977d18ac3f187ae6a444f6b78222f16f3e0ff10250100195227b925d1a73e24c2ffce618b8675fd826302a47a
|
||||
DIST earthly-0.8.7-deps.tar.zst 180209748 BLAKE2B e4c5f4b856d0ed3a0c757128c144f6267fd763118de12a51877781e82ea15722420c871f5d66a4dd797cc67b85b7c7cd26a1d2e8f417bd5517f1109e376bbefc SHA512 b8dc56b302aca63837a87cfcced4d0387adaea5433b72eb7c7056dab8a486208d06fff39b4ecd753a30f27878b1497eb1892456876e7632ee2c44926747a12d6
|
||||
DIST earthly-0.8.7.tar.gz 8062437 BLAKE2B 82796711c13cb7fd2bf957148ddd7ff31d14b9888b30a910682b956ecb8cd9c66539a71b558f92f972b54c566411257c769dadfe2e1d720d9a4e496292185d48 SHA512 c8bddfc2c4e5702abb5c119a022ab5cc875b460535fb5af4364ee7bd89e950768f71fe1ccf1860d0826d8934b283745ca22abae147852a7b779081373b40be4f
|
||||
DIST earthly-0.8.8-deps.tar.zst 180214607 BLAKE2B f407dcc4cb8daee7ac53433af830b6c872b0c9e1e05004b2bc4c8706eb98b65e457f7bea2b221e6c4cf4dfe8bb218a5ca60e85beb1f7839cb0ffaadaf8110ad3 SHA512 6a9d0eb7a69b36cca2f79d3f92e21f9f97d858451308f7151e4810c479105b7dad3fe2ad1b8a90a6ca9f0c7d3d06a8f89cd3eab4fde54e10fae2e3ea98fbb7bb
|
||||
DIST earthly-0.8.8.tar.gz 8069650 BLAKE2B 05dca12e206a22c522d36711cb960525bb20c51439dd73c8ec4a96151c306022483ade55ebe80f30d85acba3c1531b0c9b97115702c6bfc96daa615d9b798d31 SHA512 9a19ddfcaa40720b1cbab166e40a6300a79d38245074bd111082eaa04206ae8020c7596ad5801f3048e3a411cbcd88b161d8c01375e4b00192b8cf2b23e62e77
|
||||
EBUILD earthly-0.8.4.ebuild 1781 BLAKE2B 536d58e1bc3b2e18fde2ff6ee85296a2e666bd67af47ec3ccacf8dc5b8a127b639a12b7a09d4d7a89af9fe0068513b825239e2d0b2b9ca70a94eefd01641f102 SHA512 8d3504d6e1bbd517d660392fd2f734c2061a48e19aa397bad7284c0823587b77b0090cdf1697b93451362fd110d22aa15115c6bf4bd930c468fbeccc105b9453
|
||||
EBUILD earthly-0.8.5.ebuild 1781 BLAKE2B afc6d0b17b07b47828256815031d62038dad6a180e7263d429d73bc9958a6ed1f2672af0a8a33186fbf74e8a6aac6d48700362a0ae040bea5f5f72a632cafb68 SHA512 6c8fd6bf5f1ed1a02050d481fc4a5b8a03c6e94f2406962a5693e75d09e0308f9c3bcf3c7c30cd786973bc5740033773e70c72be3d52d47da5f101f40bea2c26
|
||||
DIST earthly-0.8.9-deps.tar.zst 180210180 BLAKE2B 8d48677c9dac4571efadb41c882520ba6f92bfc4a6f36ae55f6ce54c258f16dbd693412d1a25b4467d078c2b9b039b96d934236c3a071f1f64040b2da5a3d848 SHA512 f504567855830d8027d830372f8e365b8f9893d3625b94b2e91294985f65be3d276cdceba9913ef37a6e1a45debcd8fb393e6ea0d16615c06a188862b33d8a1d
|
||||
DIST earthly-0.8.9.tar.gz 8070633 BLAKE2B 3ed83bf57654f89d0b579ec9df64a9025d9fae1da755018c83cfd6ac03e70da176de564185a2ad1f68383ff0c6a2e26132568cb451bc1b474b87c4852dc2266b SHA512 e1fccfafa845b1964f824850c05fa39904e2804f8145f24342ee86e6c9f1a8ffbb30b1a822744343f59ba9dc4b1e4788020d0cc6b954d9f62eeeb43a594bd326
|
||||
EBUILD earthly-0.8.6.ebuild 1781 BLAKE2B edc5d5cde586cd3badee3b8b9c9b005e44e8e630a0b6b9bed13fb3109447b5b3ced6eb1c4fe98ca683e2ce9ede8d0aa2451ed84a80747824b74eae4212758a17 SHA512 abbb30e209f0f7464b1d41b682dbdaa124398eb597108d862e1cc6b786ccaf1932cbf9e3c5a6d10aeb5826c41f619eb154b153d4092e8257c1b18859dbcc6ccb
|
||||
EBUILD earthly-0.8.7.ebuild 1863 BLAKE2B 1d7bc52f1fdf575a3a6d49fdc360aa077fd0688c5c27c445d7441cbf769e602cf0de77627d1045adc5fbc20ea2712fc9dd23149c335f933edfe21c0086db62f4 SHA512 fe84123b4423936a3ad3b06b8baf5c70c129e8fbd4d4216074a9e67579d38b52cef2db04debccd3e357d17d697e071bee57538510aec39422621b95c33300149
|
||||
EBUILD earthly-0.8.8.ebuild 1863 BLAKE2B 7a28cfa40b085b46d570fc6e7d30888fe476f68510acfae7e9ad9608fc39a94da74f9e3fbed2e50a41b93246251841004ff70b39e2eb81bb364b58a7570db1d5 SHA512 0015769ef0a2ecefd3ea57ecfad548bf58f545991f0b8b3e019c04f184bf34493076bc8aff9792c89a2cb5bc93a0c1cee1d1c7c2f5566592c0f408f84f64cd4d
|
||||
EBUILD earthly-0.8.9.ebuild 1872 BLAKE2B 2432114af50064558dbdcfdcf27311cc0b6739eb9483ba02773241d5e0f1e6cf497dd580caf234782f2fa6ff654c8a7973608bfc2efd448dcf7ce0f8f52ae299 SHA512 def299bc3e4cc199d521b87fecb727222f14ab9a8c14c30c6fcba1a3fe7ab04f1c0b6b2d74e89c8729007cde740a3d31c9577bcef123b1e1c0947e2aa1c0709a
|
||||
MISC metadata.xml 927 BLAKE2B b7d5184df16f39603bf6df8b503e701d737fec188d1d97673e4ca59babd990c1b872784c91db04c74d9a08dbffa76f4e7530d8b021cbbe9ae51fd9966f709522 SHA512 f7f49eb583b2b5a9939c26e9eaff3917392525c3a94e5f8274c89b69e172547ad02fa4ed1b078e7d778f765659e1b9a7cf99d88042034cfbfbef54e685c8b6dd
|
||||
|
@ -1,71 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Git commit SHA is needed at runtime by earthly to pull and bootstrap images.
|
||||
if [[ "${PV}" == 0.8.5 ]] ; then
|
||||
COMMIT_SHA=a6b5b8dca64fdae64f089ac48cefa60ab39974c4
|
||||
else
|
||||
die 'Could not detect "COMMIT_SHA", please update the ebuild.'
|
||||
fi
|
||||
|
||||
inherit go-module
|
||||
|
||||
DESCRIPTION="Build automation tool that executes in containers"
|
||||
HOMEPAGE="https://earthly.dev/
|
||||
https://github.com/earthly/earthly/"
|
||||
SRC_URI="
|
||||
https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz
|
||||
https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.xz
|
||||
"
|
||||
|
||||
LICENSE="MPL-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~x86"
|
||||
|
||||
RDEPEND="
|
||||
|| (
|
||||
app-containers/docker
|
||||
app-containers/podman
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
|
||||
|
||||
src_compile() {
|
||||
local go_tags="dfrunmount,dfrunsecurity,dfsecrets,dfssh,dfrunnetwork,dfheredoc,forceposix"
|
||||
local go_ldflags="
|
||||
-X main.DefaultBuildkitdImage=docker.io/earthly/buildkitd:v${PV}
|
||||
-X main.GitSha=${COMMIT_SHA}
|
||||
-X main.Version=v${PV}
|
||||
"
|
||||
local -a go_buildargs=(
|
||||
-tags "${go_tags}"
|
||||
-ldflags "${go_ldflags}"
|
||||
-o ./bin/
|
||||
)
|
||||
ego build "${go_buildargs[@]}" ./cmd/...
|
||||
}
|
||||
|
||||
src_install() {
|
||||
exeinto /usr/bin
|
||||
doexe bin/earthly
|
||||
newexe bin/debugger earthly-debugger
|
||||
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if has_version "app-containers/podman" ; then
|
||||
ewarn "Podman is supported but not recommended."
|
||||
ewarn "If issues arise, then please try running earthly with docker."
|
||||
fi
|
||||
|
||||
if has_version "app-containers/podman[rootless]" ; then
|
||||
ewarn "Running podman in rootless mode is not supported because"
|
||||
ewarn "earthly/dind and earthly/buildkit require privileged access."
|
||||
ewarn "For more info see: https://docs.earthly.dev/docs/guides/podman/"
|
||||
fi
|
||||
}
|
Binary file not shown.
@ -0,0 +1,3 @@
|
||||
DIST badkeys-0.0.8.tar.gz 372562 BLAKE2B ed09e24361730a4233bfe31482c7fcd860c4047c5043f046c9b99988dd0974d1ea603be498c1841bc52ea22887332cdac7d1e04a56edb662534f3638288a421a SHA512 5f225ca3966876993b1462257ff0823b463df3f0ffbc57f7dc4693479c53b11f28dd3526f0f565cb6be01f6b610315dad1ebbcbb7c5f64e82f18fe89077b7681
|
||||
EBUILD badkeys-0.0.8.ebuild 632 BLAKE2B c6b39cd2a20a374d337c624090793725efb6f46d291108a6139fe0bb675a21978d831fd82318c9ee1861dc4dd054e5594110601f047ce8d3c5cb5fb22209b305 SHA512 1033487ee8d17816a5c0224e1990e62ca56f0c043d6de535b33441a9f0a7cdc062442eb6c8d4dba0061c51e496b89a13165f507a36a6b5fc8d59959a9eab8baa
|
||||
MISC metadata.xml 424 BLAKE2B 4fd57619269dc1a624903c8b396c9244b6ad054a26b2eafecb5ce002c2797855cd2af1be01f52f70c959a6be8d2b02209d198ae1dfa3d0b97d1c354181c2968f SHA512 e90c9d78ac445ab45d8f4c78001d15faa51073a723a9fef4d7d74bb30e550a7d885ddb37cc25e3dbdbfc3842501d952ac00b0abc3fda3d8f53c6a7ff0e8b98f9
|
@ -0,0 +1,25 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
PYTHON_COMPAT=( python3_{9..12} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
inherit distutils-r1 pypi
|
||||
|
||||
DESCRIPTION="Check cryptographic keys for known weaknesses"
|
||||
HOMEPAGE="https://badkeys.info/"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="ssh"
|
||||
|
||||
DEPEND="dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/gmpy[${PYTHON_USEDEP}]"
|
||||
RDEPEND="${DEPEND}
|
||||
ssh? ( dev-python/paramiko[${PYTHON_USEDEP}] )"
|
||||
# TODO: add optional binary-file-search dependency once
|
||||
# it is packaged.
|
||||
DOCS=( README.md )
|
||||
|
||||
distutils_enable_tests unittest
|
@ -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>hanno@gentoo.org</email></maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github">badkeys/badkeys</remote-id>
|
||||
<remote-id type="pypi">badkeys</remote-id>
|
||||
</upstream>
|
||||
<use>
|
||||
<flag name="ssh">Enable ssh scan mode via <pkg>dev-python/paramiko</pkg>.</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
@ -0,0 +1,181 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Maintainers should:
|
||||
# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/
|
||||
# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159
|
||||
# (find the one for the current release then subscribe to it +
|
||||
# any subsequent ones linked within so you're covered for a while.)
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc
|
||||
# in-source builds are not supported: https://dev.gnupg.org/T6313#166339
|
||||
inherit flag-o-matic out-of-source multiprocessing systemd toolchain-funcs verify-sig
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
|
||||
DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation"
|
||||
HOMEPAGE="https://gnupg.org/"
|
||||
SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
|
||||
SRC_URI+=" verify-sig? ( mirror://gnupg/gnupg/${P}.tar.bz2.sig )"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl test tofu tools usb user-socket wks-server"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Existence of executables is checked during configuration.
|
||||
# Note: On each bump, update dep bounds on each version from configure.ac!
|
||||
DEPEND="
|
||||
>=dev-libs/libassuan-2.5.0
|
||||
>=dev-libs/libgcrypt-1.8.0:=
|
||||
>=dev-libs/libgpg-error-1.38
|
||||
>=dev-libs/libksba-1.4.0
|
||||
>=dev-libs/npth-1.2
|
||||
>=net-misc/curl-7.10
|
||||
sys-libs/zlib
|
||||
bzip2? ( app-arch/bzip2 )
|
||||
ldap? ( net-nds/openldap:= )
|
||||
readline? ( sys-libs/readline:= )
|
||||
smartcard? ( usb? ( virtual/libusb:1 ) )
|
||||
ssl? ( >=net-libs/gnutls-3.0:= )
|
||||
tofu? ( >=dev-db/sqlite-3.7 )
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
nls? ( virtual/libintl )
|
||||
selinux? ( sec-policy/selinux-gpg )
|
||||
wks-server? ( virtual/mta )
|
||||
"
|
||||
PDEPEND="
|
||||
app-crypt/pinentry
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
doc? ( sys-apps/texinfo )
|
||||
nls? ( sys-devel/gettext )
|
||||
verify-sig? ( sec-keys/openpgp-keys-gnupg )
|
||||
"
|
||||
|
||||
DOCS=(
|
||||
ChangeLog NEWS README THANKS TODO VERSION
|
||||
doc/FAQ doc/DETAILS doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Inject SSH_AUTH_SOCK into user's sessions after enabling gpg-agent-ssh.socket in systemctl --user mode,
|
||||
# idea borrowed from libdbus, see
|
||||
# https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/bus/systemd-user/dbus.socket.in#L6
|
||||
#
|
||||
# This cannot be upstreamed, as it requires determining the exact prefix of 'systemctl',
|
||||
# which in turn requires discovery in Autoconf, something that upstream deeply resents.
|
||||
sed -e "/DirectoryMode=/a ExecStartPost=-${EPREFIX}/bin/systemctl --user set-environment SSH_AUTH_SOCK=%t/gnupg/S.gpg-agent.ssh" \
|
||||
-i doc/examples/systemd-user/gpg-agent-ssh.socket || die
|
||||
}
|
||||
|
||||
my_src_configure() {
|
||||
# Upstream don't support LTO, bug #854222.
|
||||
filter-lto
|
||||
|
||||
local myconf=(
|
||||
$(use_enable bzip2)
|
||||
$(use_enable nls)
|
||||
$(use_enable smartcard scdaemon)
|
||||
$(use_enable ssl gnutls)
|
||||
$(use_enable test all-tests)
|
||||
$(use_enable test tests)
|
||||
$(use_enable tofu)
|
||||
$(use smartcard && use_enable usb ccid-driver || echo '--disable-ccid-driver')
|
||||
$(use_enable wks-server wks-tools)
|
||||
$(use_with ldap)
|
||||
$(use_with readline)
|
||||
|
||||
# Hardcode mailprog to /usr/libexec/sendmail even if it does not exist.
|
||||
# As of GnuPG 2.3, the mailprog substitution is used for the binary called
|
||||
# by wks-client & wks-server; and if it's autodetected but not not exist at
|
||||
# build time, then then 'gpg-wks-client --send' functionality will not
|
||||
# work. This has an unwanted side-effect in stage3 builds: there was a
|
||||
# [R]DEPEND on virtual/mta, which also brought in virtual/logger, bloating
|
||||
# the build where the install guide previously make the user chose the
|
||||
# logger & mta early in the install.
|
||||
--with-mailprog=/usr/libexec/sendmail
|
||||
|
||||
--disable-ntbtls
|
||||
--enable-gpg
|
||||
--enable-gpgsm
|
||||
--enable-large-secmem
|
||||
|
||||
CC_FOR_BUILD="$(tc-getBUILD_CC)"
|
||||
GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config"
|
||||
KSBA_CONFIG="${ESYSROOT}/usr/bin/ksba-config"
|
||||
LIBASSUAN_CONFIG="${ESYSROOT}/usr/bin/libassuan-config"
|
||||
LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config"
|
||||
NPTH_CONFIG="${ESYSROOT}/usr/bin/npth-config"
|
||||
|
||||
$("${S}/configure" --help | grep -o -- '--without-.*-prefix')
|
||||
)
|
||||
|
||||
if use prefix && use usb; then
|
||||
# bug #649598
|
||||
append-cppflags -I"${ESYSROOT}/usr/include/libusb-1.0"
|
||||
fi
|
||||
|
||||
# bug #663142
|
||||
if use user-socket; then
|
||||
myconf+=( --enable-run-gnupg-user-socket )
|
||||
fi
|
||||
|
||||
# glib fails and picks up clang's internal stdint.h causing weird errors
|
||||
tc-is-clang && export gl_cv_absolute_stdint_h="${ESYSROOT}"/usr/include/stdint.h
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
my_src_compile() {
|
||||
default
|
||||
|
||||
use doc && emake -C doc html
|
||||
}
|
||||
|
||||
my_src_test() {
|
||||
export TESTFLAGS="--parallel=$(makeopts_jobs)"
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
my_src_install() {
|
||||
emake DESTDIR="${D}" install
|
||||
|
||||
use tools && dobin \
|
||||
tools/{gpg-zip,gpgconf,gpgsplit,gpg-check-pattern} \
|
||||
tools/make-dns-cert
|
||||
|
||||
dosym gpg /usr/bin/gpg2
|
||||
dosym gpgv /usr/bin/gpgv2
|
||||
echo ".so man1/gpg.1" > "${ED}"/usr/share/man/man1/gpg2.1 || die
|
||||
echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die
|
||||
|
||||
dodir /etc/env.d
|
||||
echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg || die
|
||||
|
||||
use doc && dodoc doc/gnupg.html/*
|
||||
}
|
||||
|
||||
my_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
use tools && dobin tools/{convert-from-106,mail-signed-keys,lspgpot}
|
||||
|
||||
use doc && dodoc doc/*.png
|
||||
|
||||
systemd_douserunit doc/examples/systemd-user/*.{service,socket}
|
||||
}
|
@ -1,8 +1,8 @@
|
||||
AUX swtpm-0.5.0-build-sys-Remove-WError.patch 431 BLAKE2B 8b0d63dcab783a322c72aab6b8f7cd3de53509716d48fd2f30d136279bb2a52a6a942f43a2c87e6f66db9f3470f0486255db8056da8c49b2b788048af62aa3ba SHA512 981a1fe5bf25c7a820dc5913b0384bc48b0bc50cd84e04921f0f64a4be6dd6b2a815d4cba39370b2e62c4473f2edbdc6bba7b09ce74b9e441f1b8df3166eb959
|
||||
AUX swtpm-0.6.0-fix-localca-path.patch 1321 BLAKE2B 06d9e7409dda7554bd819a822e2ec4e3e1b8b0a9a41bcb4c45705e082b887d4739d7bd23481dd0c528f957b78e1c84d0e33a0e8b211ee2266018c79014b83afa SHA512 c90c438ad805db4310b2fd2b8c985f86c30e4010f08be9cae2de65d8ba4c4c65df8f80eb62636b30b2cc1d5df3ebc4a225bc32f77434d603aa71ee917560d5c8
|
||||
AUX swtpm-0.7.2-Conditionalize-test-dependencies.patch 1065 BLAKE2B 359cf6e692691317255d8c456abee7fe59a5370bf94f0bdd37ee6bb16ceb80340939f3f0a348398c6c93177690f4e2dc141d2b6c9f12319586c5a850dec2cd5c SHA512 8a2731b9d9c49fa2a8ea2732b20dbbd7264b1c93b00848e67f83e5d54f8ed150e97ff940422ccf46de21ae8d81fbf951314b3908ef0377d8548adebc4872474f
|
||||
DIST swtpm-0.8.0.tar.gz 363951 BLAKE2B 8ec91961c5ac145dc5d1c3c4a609d18bc425caef0efb4d2b18c08c76acacefa619617b6e7b6e8e4e707117a29e3ff3c0198b63d81d24fc747435c6e06e48e8e9 SHA512 7f70c19f732404061be6168c96c0dd3ec91ed8b50dddcafcb50d810062ce0e83ad85360191f97db5db9dc034e01d91cebe3912449d896d2cde68fe060a0adb09
|
||||
DIST swtpm-0.8.1.tar.gz 364169 BLAKE2B 4b364ed581ea97d78c5c6248870503b1612d7d164b05b76c1f02644aade6fd09f204396f0a2d0db4e0ecec2792dc512f7c4393c44bf7ce447a3a7fbb8754594f SHA512 07276519b0e20c9c4167ce78e789d2072eb90172ed9bcba2a11eef46ee03a77860f7a2218f4dc013a2ddb8471079e3cbe43f8ab02174bd704a78aea8eee3d2fc
|
||||
EBUILD swtpm-0.8.0-r2.ebuild 1602 BLAKE2B b51ae100307f16be7042c8215121b12a2724c0d370b4261ca9cb2fa3ee1533901b40f7839916fca557f91c0c048154184b9012bd59b2d3997d1c288ce5b0986c SHA512 6c1ee351c2d46a7dcfc368efead75ead25471aa1fdd214827df0fa156259d1b12b348846aee6e87ec1f0c8015eb279967760eedb10f27b7ad1cf43c341043d64
|
||||
DIST swtpm-0.8.2.tar.gz 364432 BLAKE2B 1ffa6feed88a67a2eeea1fca1c034f6513347173d59ae0c0654696faa1e791529e7fa044c478e5fb7e016117ce5f3151b875014d85eac528e4b6d92d5cf9017b SHA512 3b63116b1ed56087e05b0b697462720a10fe384ea2b8ec7115b549df8f557f6a9cf4de8e7d65b8061a1c85e54e015e0249bfbb613d35c1b64453a98d23ce334f
|
||||
EBUILD swtpm-0.8.1-r2.ebuild 1602 BLAKE2B b51ae100307f16be7042c8215121b12a2724c0d370b4261ca9cb2fa3ee1533901b40f7839916fca557f91c0c048154184b9012bd59b2d3997d1c288ce5b0986c SHA512 6c1ee351c2d46a7dcfc368efead75ead25471aa1fdd214827df0fa156259d1b12b348846aee6e87ec1f0c8015eb279967760eedb10f27b7ad1cf43c341043d64
|
||||
EBUILD swtpm-0.8.2.ebuild 1547 BLAKE2B 45695cccbfcab90022daf121e44f63d367ab186b98e3f6ff17cfc1e273ab0f8ffbf17675382af11d5e356419f0c26c3690d53a6e61d500349f72a61e413780f2 SHA512 61ba903fcf40395644f888a1d9a9fcede271f3fb7fa4df2358c40b73f6c84e705c045c81a7b0da3690496b2b067caa1191b4a09b0be5e3e8d3d636d375487f1a
|
||||
MISC metadata.xml 717 BLAKE2B 70de08f9ed69084e7ed07c72ae96ab76cdb8bf489c3d3664edab24d2a904f44a6483bb9685f0e97f4520420dab1b6796e58cff00ba82190459af12398aa4b6d1 SHA512 a4f2977c84e03e215f6455def44ead6f767d6a4803061942b799b38bedaada373b51bbd47bd87c4339df32138a339b5f595a5ea19c5706b5e424329cc8aec0a5
|
||||
|
Binary file not shown.
@ -1,3 +1,5 @@
|
||||
DIST migemo-dict-200812.tar.bz2 1467494 BLAKE2B 25f4da49e0e1970df9f43a26f72f1ae85c89ee0d3b708e7f7ea46a2b3b133c59a3990a44e6e578335d3c836027543fc695334573613674ad4e100c06da3eac0b SHA512 cc42d62247c5ff0c3a4ff30a7c135173f94c4f49685df997b305486502b86144428dc104a77361d5ceff91683b0b663d0c68174300d628f70f6999cf7667f3c0
|
||||
EBUILD migemo-dict-200812.ebuild 629 BLAKE2B 0772c87c1bede900a193bd2f5977f79a5f7c301f4c5b7cd3417b45324e8699d274381b5d7e696f11914396f4cf2d5b801b5a83010788d80a0eb405950e28061d SHA512 a3f2e0ce1ca1005a0e8f865e9eaef49c7cc12c95daa40f76b4292c53d9dc5f1421546cfeaf5930000b670686f823cf975040cd5a3988721fee4196bddc79fa88
|
||||
DIST migemo-dict-202402.tar.xz 1202732 BLAKE2B aea31efc4b4967ba52fbfe85a691b1deb7eef70f2c9d5a1dcb6942d10507ef140045af9232055ab9ae6bbd2936bc5f077ef1564237316e3f0a98b2e0e3100aef SHA512 622b237eb1bdb3abcc18cc104cba3bed56eefbd2a92f47ed316757ce3d9016a435c9b3181030b392a42ff4ef59582cbee3879570ad6312907699e50f297ff5dc
|
||||
EBUILD migemo-dict-200812.ebuild 602 BLAKE2B 0baa12f9b62b7ca419481a5392f08733e21f7e9d5b67c1d35a265d4ea2a0a9aa03afccd58b4bdf5c2c1bb0a27365aca7ee2bc39e05718006ca314dcf8e3e467d SHA512 a2c4f5a845df6e20da28d287062360bf4f3e89aeaa3cc032f43fb686c41a105daddbc0f6438417349837afc23ca5a92375d90f1ad3c4682bd6f304a9cd1a0525
|
||||
EBUILD migemo-dict-202402.ebuild 660 BLAKE2B f8f31b978e903f3a4642a61489b9c318591229d0357d79e0d98dba668fefaa53bac31cd9af8c9e9681b47471014bfd7b18412df4324166ea8db15aecff098dd1 SHA512 7afe3cb2b80cdd37f1188e7576d1f81cf6da02ee086960f09197c32325e951bee70c386170cce2f130e9528b077cfe0a3ceb86ebac5666ed899645c2eef78454
|
||||
MISC metadata.xml 235 BLAKE2B a3e5a3109b59e3f97ef14f8d55ba13b16dc5371a1b7d6f238230aa4494db32dd4a42e3ee012ec8b18fae394feb2b1b56882bc70504aa7c6b969c1b20140f0ece SHA512 7c4e5f5dea465e45c662f5f53513626088aff514e1326593426af227d77e63d8a00d8af05aa208881a399f83dd41e73cd2ef81c8b7f275a2fa891f295231d67c
|
||||
|
@ -1,26 +1,26 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
EAPI="8"
|
||||
|
||||
DESCRIPTION="Dictionary files for the Migemo and C/Migemo"
|
||||
HOMEPAGE="http://openlab.ring.gr.jp/skk/dic.html"
|
||||
HOMEPAGE="https://skk-dev.github.io/dict/"
|
||||
SRC_URI="mirror://gentoo/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="unicode"
|
||||
|
||||
src_configure() {
|
||||
if use unicode; then
|
||||
iconv -f euc-jp -t utf-8 migemo-dict > "${T}"/migemo-dict || die
|
||||
iconv -f euc-jp -t utf-8 ${PN} >"${T}"/${PN} || die
|
||||
else
|
||||
cp migemo-dict "${T}"/ || die
|
||||
cp ${PN} "${T}"/ || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/migemo
|
||||
doins "${T}"/migemo-dict
|
||||
insinto /usr/share/${PN%-*}
|
||||
doins "${T}"/${PN}
|
||||
}
|
||||
|
@ -0,0 +1,27 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
|
||||
DESCRIPTION="Dictionary files for the Migemo and C/Migemo"
|
||||
HOMEPAGE="https://skk-dev.github.io/dict/"
|
||||
SRC_URI="mirror://gentoo/${P}.tar.xz
|
||||
https://dev.gentoo.org/~hattya/distfiles/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="unicode"
|
||||
|
||||
src_configure() {
|
||||
if use unicode; then
|
||||
iconv -f euc-jp -t utf-8 ${PN} >"${T}"/${PN} || die
|
||||
else
|
||||
cp ${PN} "${T}"/ || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/${PN%-*}
|
||||
doins "${T}"/${PN}
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,379 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
SRC_URI="mirror://gnu/emacs/${P}.tar.xz
|
||||
https://dev.gentoo.org/~ulm/emacs/${P}-patches-7.tar.xz"
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
SLOT="26"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib"
|
||||
|
||||
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
|
||||
sys-libs/ncurses:0=
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
games? ( acct-group/gamestat )
|
||||
gpm? ( sys-libs/gpm )
|
||||
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||
kerberos? ( virtual/krb5 )
|
||||
lcms? ( media-libs/lcms:2 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
mailutils? ( net-mail/mailutils[clients] )
|
||||
!mailutils? ( acct-group/mail net-libs/liblockfile )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? ( net-libs/gnutls:0= )
|
||||
systemd? ( sys-apps/systemd )
|
||||
valgrind? ( dev-debug/valgrind )
|
||||
zlib? ( sys-libs/zlib )
|
||||
gui? ( !aqua? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-misc/xbitmaps
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib:0= )
|
||||
jpeg? ( media-libs/libjpeg-turbo:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:= )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXft
|
||||
x11-libs/libXrender
|
||||
cairo? ( >=x11-libs/cairo-1.12.18[X] )
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
xwidgets? (
|
||||
net-libs/webkit-gtk:4.1=
|
||||
x11-libs/libXcomposite
|
||||
)
|
||||
)
|
||||
!gtk? (
|
||||
motif? (
|
||||
>=x11-libs/motif-2.3:0
|
||||
x11-libs/libXpm
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!motif? (
|
||||
Xaw3d? (
|
||||
x11-libs/libXaw3d
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!Xaw3d? ( athena? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
) )
|
||||
)
|
||||
)
|
||||
) )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
gui? ( !aqua? ( x11-base/xorg-proto ) )"
|
||||
|
||||
BDEPEND="virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )"
|
||||
|
||||
IDEPEND="app-eselect/eselect-emacs"
|
||||
|
||||
RDEPEND+=" ${IDEPEND}"
|
||||
|
||||
EMACS_SUFFIX="emacs-${SLOT}"
|
||||
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
|
||||
PATCHES=("${WORKDIR}/patch")
|
||||
|
||||
# Suppress false positive QA warnings #898304
|
||||
QA_CONFIG_IMPL_DECL_SKIP=( malloc_{set,get}_state MIN )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
strip-flags
|
||||
filter-flags -pie #526948
|
||||
|
||||
if use ia64; then
|
||||
replace-flags "-O[2-9]" -O1 #325373
|
||||
else
|
||||
replace-flags "-O[3-9]" -O2
|
||||
fi
|
||||
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if ! use gui; then
|
||||
einfo "Configuring to build without window system support"
|
||||
myconf+=" --without-x --without-ns"
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" --without-gconf"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with cairo)"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-cairo"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use cairo && ewarn \
|
||||
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f line
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
while read line; do ewarn "${line}"; done <<-EOF
|
||||
Your version of GTK+ will have problems with closing open
|
||||
displays. This is no problem if you just use one display, but
|
||||
if you use more than one and close one of them Emacs may crash.
|
||||
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
|
||||
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
|
||||
If you intend to use more than one display, then it is strongly
|
||||
recommended that you compile Emacs with the Athena/Lucid or the
|
||||
Motif toolkit instead.
|
||||
EOF
|
||||
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
! use gtk && use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--without-compress-install \
|
||||
--without-hesiod \
|
||||
--without-pop \
|
||||
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with dynamic-loading modules) \
|
||||
$(use_with games gameuser ":gamestat") \
|
||||
$(use_with gpm) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with lcms lcms2) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with mailutils) \
|
||||
$(use_with selinux) \
|
||||
$(use_with ssl gnutls) \
|
||||
$(use_with systemd libsystemd) \
|
||||
$(use_with threads) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
|
||||
|
||||
# Disable sandbox when dumping. For the unbelievers, see bug #131505
|
||||
emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
|
||||
|
||||
# dissuade Portage from removing our dir file #257260
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
|
||||
|
||||
# movemail must be setgid mail
|
||||
if ! use mailutils; then
|
||||
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||
fi
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
|
||||
rm -rf "${ED}"/usr/share/{applications,icons} || die
|
||||
rm -rf "${ED}/usr/$(get_libdir)" || die
|
||||
rm -rf "${ED}"/var || die
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
|
||||
|
||||
if use systemd; then
|
||||
insinto /usr/lib/systemd/user
|
||||
sed -e "/^##/d" \
|
||||
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
|
||||
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
|
||||
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
|
||||
assert
|
||||
fi
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||
X
|
||||
;;; ${EMACS_SUFFIX} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":"))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS CONTRIBUTE
|
||||
|
||||
if use gui && use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||
fi
|
||||
|
||||
local DOC_CONTENTS="You can set the version to be started by
|
||||
/usr/bin/emacs through the Emacs eselect module, which also
|
||||
redirects man and info pages. Therefore, several Emacs versions can
|
||||
be installed at the same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||
it is strongly recommended that you use app-admin/emacs-updater
|
||||
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||
packages."
|
||||
if use gui; then
|
||||
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
|
||||
symlink it into /Applications by yourself."
|
||||
fi
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# verify that the PM hasn't removed our Info directory index #257260
|
||||
local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
|
||||
[[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,445 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||
EGIT_BRANCH="emacs-27"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
SLOT="${PV%%.*}-vcs"
|
||||
else
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
# PV can be in any of the following formats:
|
||||
# 27.1 released version (slot 27)
|
||||
# 27.1_rc1 upstream release candidate (27)
|
||||
# 27.0.9999 live ebuild (slot 27-vcs)
|
||||
# 27.0.90 upstream prerelease snapshot (27-vcs)
|
||||
# 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
|
||||
if [[ ${PV} == *_pre* ]]; then
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
|
||||
S="${WORKDIR}/emacs"
|
||||
elif [[ ${PV//[0-9]} != "." ]]; then
|
||||
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
|
||||
fi
|
||||
# Patchset from proj/emacs-patches.git
|
||||
SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-8.tar.xz"
|
||||
PATCHES=("${WORKDIR}/patch")
|
||||
SLOT="${PV%%.*}"
|
||||
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
|
||||
sys-libs/ncurses:0=
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
games? ( acct-group/gamestat )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
gpm? ( sys-libs/gpm )
|
||||
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||
json? ( dev-libs/jansson:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
lcms? ( media-libs/lcms:2 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
mailutils? ( net-mail/mailutils[clients] )
|
||||
!mailutils? ( acct-group/mail net-libs/liblockfile )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? ( net-libs/gnutls:0= )
|
||||
systemd? ( sys-apps/systemd )
|
||||
valgrind? ( dev-debug/valgrind )
|
||||
zlib? ( sys-libs/zlib )
|
||||
gui? ( !aqua? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-misc/xbitmaps
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib:0= )
|
||||
jpeg? ( media-libs/libjpeg-turbo:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:= )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXrender
|
||||
cairo? ( >=x11-libs/cairo-1.12.18[X] )
|
||||
!cairo? ( x11-libs/libXft )
|
||||
harfbuzz? ( media-libs/harfbuzz:0= )
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
xwidgets? (
|
||||
net-libs/webkit-gtk:4.1=
|
||||
x11-libs/libXcomposite
|
||||
)
|
||||
)
|
||||
!gtk? (
|
||||
motif? (
|
||||
>=x11-libs/motif-2.3:0
|
||||
x11-libs/libXpm
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!motif? (
|
||||
Xaw3d? (
|
||||
x11-libs/libXaw3d
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!Xaw3d? ( athena? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
) )
|
||||
)
|
||||
)
|
||||
) )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
gui? ( !aqua? ( x11-base/xorg-proto ) )"
|
||||
|
||||
BDEPEND="sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )"
|
||||
|
||||
IDEPEND="app-eselect/eselect-emacs"
|
||||
|
||||
RDEPEND+=" ${IDEPEND}"
|
||||
|
||||
EMACS_SUFFIX="emacs-${SLOT}"
|
||||
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
|
||||
|
||||
# Suppress false positive QA warnings #898304 #925449
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
malloc_set_state malloc_get_state MIN
|
||||
statvfs64 re_set_syntax re_compile_pattern re_search re_match
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if ! use gui; then
|
||||
einfo "Configuring to build without window system support"
|
||||
myconf+=" --without-x --without-ns"
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" --without-gconf"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with cairo)"
|
||||
myconf+=" $(use_with harfbuzz)"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-cairo"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use cairo && ewarn \
|
||||
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f line
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
while read line; do ewarn "${line}"; done <<-EOF
|
||||
Your version of GTK+ will have problems with closing open
|
||||
displays. This is no problem if you just use one display, but
|
||||
if you use more than one and close one of them Emacs may crash.
|
||||
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
|
||||
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
|
||||
If you intend to use more than one display, then it is strongly
|
||||
recommended that you compile Emacs with the Athena/Lucid or the
|
||||
Motif toolkit instead.
|
||||
EOF
|
||||
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
! use gtk && use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||
fi
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
# Configure a CBUILD directory when cross-compiling to make tools
|
||||
mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die
|
||||
ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
|
||||
popd >/dev/null || die
|
||||
# Don't try to execute the binary for dumping during the build
|
||||
myconf+=" --with-dumping=none"
|
||||
elif use m68k; then
|
||||
# Workaround for https://debbugs.gnu.org/44531
|
||||
myconf+=" --with-dumping=unexec"
|
||||
else
|
||||
myconf+=" --with-dumping=pdumper"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--without-compress-install \
|
||||
--without-hesiod \
|
||||
--without-pop \
|
||||
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||
--with-pdumper \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with dynamic-loading modules) \
|
||||
$(use_with games gameuser ":gamestat") \
|
||||
$(use_with gmp libgmp) \
|
||||
$(use_with gpm) \
|
||||
$(use_with json) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with lcms lcms2) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with mailutils) \
|
||||
$(use_with selinux) \
|
||||
$(use_with ssl gnutls) \
|
||||
$(use_with systemd libsystemd) \
|
||||
$(use_with threads) \
|
||||
$(use_with wide-int) \
|
||||
$(use_with zlib) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
# Build native tools for compiling lisp etc.
|
||||
emake -C "${S}-build" src
|
||||
emake lib # Cross-compile dependencies first for timestamps
|
||||
# Save native build tools in the cross-directory
|
||||
cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
|
||||
# Specify the native Emacs to compile lisp
|
||||
emake -C lisp all EMACS="${S}-build/src/emacs"
|
||||
fi
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
|
||||
|
||||
# dissuade Portage from removing our dir file #257260
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
|
||||
|
||||
# movemail must be setgid mail
|
||||
if ! use mailutils; then
|
||||
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||
fi
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
|
||||
rm -rf "${ED}"/usr/share/{applications,icons} || die
|
||||
rm -rf "${ED}/usr/$(get_libdir)" || die
|
||||
rm -rf "${ED}"/var || die
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
|
||||
|
||||
if use systemd; then
|
||||
insinto /usr/lib/systemd/user
|
||||
sed -e "/^##/d" \
|
||||
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
|
||||
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
|
||||
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
|
||||
assert
|
||||
fi
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||
X
|
||||
;;; ${EMACS_SUFFIX} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":"))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS CONTRIBUTE
|
||||
|
||||
if use gui && use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||
fi
|
||||
|
||||
local DOC_CONTENTS="You can set the version to be started by
|
||||
/usr/bin/emacs through the Emacs eselect module, which also
|
||||
redirects man and info pages. Therefore, several Emacs versions can
|
||||
be installed at the same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||
it is strongly recommended that you use app-admin/emacs-updater
|
||||
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||
packages."
|
||||
if use gui; then
|
||||
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
|
||||
symlink it into /Applications by yourself."
|
||||
fi
|
||||
tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
|
||||
a portable dump file due to being cross-compiled.
|
||||
To create this file at run time, execute the following command:
|
||||
\\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
|
||||
\"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# verify that the PM hasn't removed our Info directory index #257260
|
||||
local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
|
||||
[[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,540 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
|
||||
EGIT_BRANCH="emacs-28"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
|
||||
S="${EGIT_CHECKOUT_DIR}"
|
||||
SLOT="${PV%%.*}-vcs"
|
||||
else
|
||||
# FULL_VERSION keeps the full version number, which is needed in
|
||||
# order to determine some path information correctly for copy/move
|
||||
# operations later on
|
||||
FULL_VERSION="${PV%%_*}"
|
||||
SRC_URI="mirror://gnu/emacs/${P}.tar.xz"
|
||||
S="${WORKDIR}/emacs-${FULL_VERSION}"
|
||||
# PV can be in any of the following formats:
|
||||
# 27.1 released version (slot 27)
|
||||
# 27.1_rc1 upstream release candidate (27)
|
||||
# 27.0.9999 live ebuild (slot 27-vcs)
|
||||
# 27.0.90 upstream prerelease snapshot (27-vcs)
|
||||
# 27.0.50_pre20191223 snapshot by Gentoo developer (27-vcs)
|
||||
if [[ ${PV} == *_pre* ]]; then
|
||||
SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.tar.xz"
|
||||
S="${WORKDIR}/emacs"
|
||||
elif [[ ${PV//[0-9]} != "." ]]; then
|
||||
SRC_URI="https://alpha.gnu.org/gnu/emacs/pretest/${PN}-${PV/_/-}.tar.xz"
|
||||
fi
|
||||
# Patchset from proj/emacs-patches.git
|
||||
SRC_URI+=" https://dev.gentoo.org/~ulm/emacs/${P}-patches-6.tar.xz"
|
||||
PATCHES=("${WORKDIR}/patch")
|
||||
SLOT="${PV%%.*}"
|
||||
[[ ${PV} == *.*.* ]] && SLOT+="-vcs"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
|
||||
fi
|
||||
|
||||
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
|
||||
HOMEPAGE="https://www.gnu.org/software/emacs/"
|
||||
|
||||
LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
|
||||
IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif +gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets zlib"
|
||||
|
||||
RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
|
||||
sys-libs/ncurses:0=
|
||||
acl? ( virtual/acl )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
dbus? ( sys-apps/dbus )
|
||||
games? ( acct-group/gamestat )
|
||||
gmp? ( dev-libs/gmp:0= )
|
||||
gpm? ( sys-libs/gpm )
|
||||
!inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
|
||||
jit? (
|
||||
sys-devel/gcc:=[jit(-)]
|
||||
sys-libs/zlib
|
||||
)
|
||||
json? ( dev-libs/jansson:= )
|
||||
kerberos? ( virtual/krb5 )
|
||||
lcms? ( media-libs/lcms:2 )
|
||||
libxml2? ( >=dev-libs/libxml2-2.2.0 )
|
||||
mailutils? ( net-mail/mailutils[clients] )
|
||||
!mailutils? ( acct-group/mail net-libs/liblockfile )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
ssl? ( net-libs/gnutls:0= )
|
||||
systemd? ( sys-apps/systemd )
|
||||
valgrind? ( dev-debug/valgrind )
|
||||
zlib? ( sys-libs/zlib )
|
||||
gui? ( !aqua? (
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libxcb
|
||||
x11-misc/xbitmaps
|
||||
gsettings? ( >=dev-libs/glib-2.28.6 )
|
||||
gif? ( media-libs/giflib:0= )
|
||||
jpeg? ( media-libs/libjpeg-turbo:0= )
|
||||
png? ( >=media-libs/libpng-1.4:0= )
|
||||
svg? ( >=gnome-base/librsvg-2.0 )
|
||||
tiff? ( media-libs/tiff:= )
|
||||
xpm? ( x11-libs/libXpm )
|
||||
imagemagick? ( media-gfx/imagemagick:0=[jpeg?,png?,svg?,tiff?] )
|
||||
xft? (
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
x11-libs/libXrender
|
||||
cairo? ( >=x11-libs/cairo-1.12.18[X] )
|
||||
!cairo? ( x11-libs/libXft )
|
||||
harfbuzz? ( media-libs/harfbuzz:0= )
|
||||
m17n-lib? (
|
||||
>=dev-libs/libotf-0.9.4
|
||||
>=dev-libs/m17n-lib-1.5.1
|
||||
)
|
||||
)
|
||||
gtk? (
|
||||
x11-libs/gtk+:3
|
||||
xwidgets? (
|
||||
net-libs/webkit-gtk:4.1=
|
||||
x11-libs/libXcomposite
|
||||
)
|
||||
)
|
||||
!gtk? (
|
||||
motif? (
|
||||
>=x11-libs/motif-2.3:0
|
||||
x11-libs/libXpm
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!motif? (
|
||||
Xaw3d? (
|
||||
x11-libs/libXaw3d
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
)
|
||||
!Xaw3d? ( athena? (
|
||||
x11-libs/libXaw
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
) )
|
||||
)
|
||||
)
|
||||
) )"
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
gui? ( !aqua? ( x11-base/xorg-proto ) )"
|
||||
|
||||
BDEPEND="sys-apps/texinfo
|
||||
virtual/pkgconfig
|
||||
gzip-el? ( app-arch/gzip )"
|
||||
|
||||
IDEPEND="app-eselect/eselect-emacs"
|
||||
|
||||
RDEPEND+=" ${IDEPEND}"
|
||||
|
||||
EMACS_SUFFIX="emacs-${SLOT}"
|
||||
SITEFILE="20${EMACS_SUFFIX}-gentoo.el"
|
||||
|
||||
# Suppress false positive QA warnings #898304 #925449
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
malloc_set_state malloc_get_state MIN
|
||||
statvfs64 re_set_syntax re_compile_pattern re_search re_match
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV##*.} = 9999 ]]; then
|
||||
FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[^0-9.]*\([0-9.]*\).*/\1/p' \
|
||||
configure.ac)
|
||||
[[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
|
||||
einfo "Emacs branch: ${EGIT_BRANCH}"
|
||||
einfo "Commit: ${EGIT_VERSION}"
|
||||
einfo "Emacs version number: ${FULL_VERSION}"
|
||||
[[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
|
||||
|| die "Upstream version number changed to ${FULL_VERSION}"
|
||||
fi
|
||||
|
||||
if use jit; then
|
||||
export NATIVE_FULL_AOT=1
|
||||
find lisp -type f -name "*.elc" -delete || die
|
||||
|
||||
# These files ignore LDFLAGS. We assign the variable here, because
|
||||
# for live ebuilds FULL_VERSION doesn't exist in global scope
|
||||
QA_FLAGS_IGNORED="usr/$(get_libdir)/emacs/${FULL_VERSION}/native-lisp/.*"
|
||||
|
||||
# gccjit doesn't play well with ccache or distcc #801580
|
||||
# For now, work around the problem with an explicit LIBRARY_PATH
|
||||
has ccache ${FEATURES} || has distcc ${FEATURES} && tc-is-gcc \
|
||||
&& export LIBRARY_PATH=$("$(tc-getCC)" -print-search-dirs \
|
||||
| sed -n '/^libraries:/{s:^[^/]*::;p}')
|
||||
fi
|
||||
|
||||
default
|
||||
|
||||
# Fix filename reference in redirected man page
|
||||
sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
|
||||
|
||||
# Tests that use bubblewrap don't work in the sandbox:
|
||||
# "bwrap: setting up uid map: Permission denied"
|
||||
# So, disrupt the search for the bwrap executable.
|
||||
sed -i -e 's/(executable-find "bwrap")/nil/' test/src/emacs-tests.el \
|
||||
test/lisp/emacs-lisp/bytecomp-tests.el || die
|
||||
|
||||
AT_M4DIR=m4 eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
# Prevents e.g. tests interfering with running Emacs.
|
||||
unset EMACS_SOCKET_NAME
|
||||
|
||||
if use alsa; then
|
||||
use sound || ewarn \
|
||||
"USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
|
||||
myconf+=" --with-sound=alsa"
|
||||
else
|
||||
myconf+=" --with-sound=$(usex sound oss)"
|
||||
fi
|
||||
|
||||
if use jit; then
|
||||
use zlib || ewarn \
|
||||
"USE flag \"jit\" overrides \"-zlib\"; enabling zlib support."
|
||||
myconf+=" --with-zlib"
|
||||
else
|
||||
myconf+=" $(use_with zlib)"
|
||||
fi
|
||||
|
||||
if ! use gui; then
|
||||
einfo "Configuring to build without window system support"
|
||||
myconf+=" --without-x --without-ns"
|
||||
elif use aqua; then
|
||||
einfo "Configuring to build with Nextstep (Macintosh Cocoa) support"
|
||||
myconf+=" --with-ns --disable-ns-self-contained"
|
||||
myconf+=" --without-x"
|
||||
else
|
||||
myconf+=" --with-x --without-ns"
|
||||
myconf+=" --without-gconf"
|
||||
myconf+=" $(use_with gsettings)"
|
||||
myconf+=" $(use_with toolkit-scroll-bars)"
|
||||
myconf+=" $(use_with gif)"
|
||||
myconf+=" $(use_with jpeg)"
|
||||
myconf+=" $(use_with png)"
|
||||
myconf+=" $(use_with svg rsvg)"
|
||||
myconf+=" $(use_with tiff)"
|
||||
myconf+=" $(use_with xpm)"
|
||||
myconf+=" $(use_with imagemagick)"
|
||||
|
||||
if use xft; then
|
||||
myconf+=" --with-xft"
|
||||
myconf+=" $(use_with cairo)"
|
||||
myconf+=" $(use_with harfbuzz)"
|
||||
myconf+=" $(use_with m17n-lib libotf)"
|
||||
myconf+=" $(use_with m17n-lib m17n-flt)"
|
||||
else
|
||||
myconf+=" --without-xft"
|
||||
myconf+=" --without-cairo"
|
||||
myconf+=" --without-libotf --without-m17n-flt"
|
||||
use cairo && ewarn \
|
||||
"USE flag \"cairo\" has no effect if \"xft\" is not set."
|
||||
use m17n-lib && ewarn \
|
||||
"USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
|
||||
fi
|
||||
|
||||
local f line
|
||||
if use gtk; then
|
||||
einfo "Configuring to build with GIMP Toolkit (GTK+)"
|
||||
while read line; do ewarn "${line}"; done <<-EOF
|
||||
Your version of GTK+ will have problems with closing open
|
||||
displays. This is no problem if you just use one display, but
|
||||
if you use more than one and close one of them Emacs may crash.
|
||||
See <https://gitlab.gnome.org/GNOME/gtk/-/issues/221> and
|
||||
<https://gitlab.gnome.org/GNOME/gtk/-/issues/2315>.
|
||||
If you intend to use more than one display, then it is strongly
|
||||
recommended that you compile Emacs with the Athena/Lucid or the
|
||||
Motif toolkit instead.
|
||||
EOF
|
||||
myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
|
||||
for f in motif Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"gtk\" is set."
|
||||
done
|
||||
elif use motif; then
|
||||
einfo "Configuring to build with Motif toolkit"
|
||||
myconf+=" --with-x-toolkit=motif"
|
||||
for f in Xaw3d athena; do
|
||||
use ${f} && ewarn \
|
||||
"USE flag \"${f}\" has no effect if \"motif\" is set."
|
||||
done
|
||||
elif use athena || use Xaw3d; then
|
||||
einfo "Configuring to build with Athena/Lucid toolkit"
|
||||
myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
|
||||
else
|
||||
einfo "Configuring to build with no toolkit"
|
||||
myconf+=" --with-x-toolkit=no"
|
||||
fi
|
||||
! use gtk && use xwidgets && ewarn \
|
||||
"USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
|
||||
fi
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
# Configure a CBUILD directory when cross-compiling to make tools
|
||||
mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die
|
||||
ECONF_SOURCE="${S}" econf_build --without-all --without-x-toolkit
|
||||
popd >/dev/null || die
|
||||
# Don't try to execute the binary for dumping during the build
|
||||
myconf+=" --with-dumping=none"
|
||||
elif use m68k; then
|
||||
# Workaround for https://debbugs.gnu.org/44531
|
||||
myconf+=" --with-dumping=unexec"
|
||||
else
|
||||
myconf+=" --with-dumping=pdumper"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--program-suffix="-${EMACS_SUFFIX}" \
|
||||
--includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
|
||||
--infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
|
||||
--localstatedir="${EPREFIX}"/var \
|
||||
--enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
|
||||
--without-compress-install \
|
||||
--without-hesiod \
|
||||
--without-pop \
|
||||
--with-file-notification=$(usev inotify || usev gfile || echo no) \
|
||||
--with-pdumper \
|
||||
$(use_enable acl) \
|
||||
$(use_with dbus) \
|
||||
$(use_with dynamic-loading modules) \
|
||||
$(use_with games gameuser ":gamestat") \
|
||||
$(use_with gmp libgmp) \
|
||||
$(use_with gpm) \
|
||||
$(use_with jit native-compilation) \
|
||||
$(use_with json) \
|
||||
$(use_with kerberos) $(use_with kerberos kerberos5) \
|
||||
$(use_with lcms lcms2) \
|
||||
$(use_with libxml2 xml2) \
|
||||
$(use_with mailutils) \
|
||||
$(use_with selinux) \
|
||||
$(use_with ssl gnutls) \
|
||||
$(use_with systemd libsystemd) \
|
||||
$(use_with threads) \
|
||||
$(use_with wide-int) \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
|
||||
append-cppflags -DUSE_VALGRIND=$(usex valgrind)
|
||||
|
||||
if tc-is-cross-compiler; then
|
||||
# Build native tools for compiling lisp etc.
|
||||
emake -C "${S}-build" src
|
||||
emake lib # Cross-compile dependencies first for timestamps
|
||||
# Save native build tools in the cross-directory
|
||||
cp "${S}-build"/lib-src/make-{docfile,fingerprint} lib-src || die
|
||||
# Specify the native Emacs to compile lisp
|
||||
emake -C lisp all EMACS="${S}-build/src/emacs"
|
||||
fi
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# List .el test files with a comment above listing the exact
|
||||
# subtests which caused failure. Elements should begin with a %.
|
||||
# e.g. %lisp/gnus/mml-sec-tests.el.
|
||||
local exclude_tests=(
|
||||
# Reason: not yet known
|
||||
# mml-secure-en-decrypt-{1,2,3,4}
|
||||
# mml-secure-find-usable-keys-{1,2}
|
||||
# mml-secure-key-checks
|
||||
# mml-secure-select-preferred-keys-4
|
||||
# mml-secure-sign-verify-1
|
||||
%lisp/gnus/mml-sec-tests.el
|
||||
|
||||
# Reason: race condition
|
||||
# Looks like it should be fixed in 29.x at least:
|
||||
# https://debbugs.gnu.org/cgi/bugreport.cgi?bug=55706
|
||||
# files-tests-file-name-non-special-file-in-directory-p
|
||||
%lisp/files-tests.el
|
||||
|
||||
# Reason: permission denied on /nonexistent
|
||||
# (vc-*-bzr only fails if breezy is installed, as they
|
||||
# try to access cache dirs under /nonexistent)
|
||||
#
|
||||
# rmail-undigest-test-multipart-mixed-digest
|
||||
# rmail-undigest-test-rfc1153-less-strict-digest
|
||||
# rmail-undigest-test-rfc1153-sloppy-digest
|
||||
# rmail-undigest-test-rfc934-digest
|
||||
# vc-test-bzr02-state
|
||||
# vc-test-bzr05-rename-file
|
||||
# vc-test-bzr06-version-diff
|
||||
# vc-bzr-test-bug9781
|
||||
%lisp/mail/undigest-tests.el
|
||||
%lisp/vc/vc-tests.el
|
||||
%lisp/vc/vc-bzr-tests.el
|
||||
|
||||
# Reason: some copyright years differ
|
||||
%lisp/emacs-lisp/copyright-tests.el
|
||||
|
||||
# Reason: quoting issues (fixed in Emacs 29)
|
||||
%lib-src/emacsclient-tests.el
|
||||
|
||||
# Reason: tries to access network
|
||||
# internet-is-working
|
||||
%src/process-tests.el
|
||||
)
|
||||
use threads || exclude_tests+=(
|
||||
%src/emacs-module-tests.el
|
||||
%src/keyboard-tests.el
|
||||
%src/thread-tests.el
|
||||
)
|
||||
|
||||
# See test/README for possible options
|
||||
emake \
|
||||
EMACS_TEST_VERBOSE=1 \
|
||||
EXCLUDE_TESTS="${exclude_tests[*]}" \
|
||||
TEST_BACKTRACE_LINE_LENGTH=nil \
|
||||
check
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" NO_BIN_LINK=t BLESSMAIL_TARGET= install
|
||||
|
||||
mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
|
||||
mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
|
||||
mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.metainfo.xml || die
|
||||
|
||||
# dissuade Portage from removing our dir file #257260
|
||||
touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
|
||||
docompress -x /usr/share/info/${EMACS_SUFFIX}/dir
|
||||
|
||||
# movemail must be setgid mail
|
||||
if ! use mailutils; then
|
||||
fowners root:mail /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||
fperms 2751 /usr/libexec/emacs/${FULL_VERSION}/${CHOST}/movemail
|
||||
fi
|
||||
|
||||
# avoid collision between slots, see bug #169033 e.g.
|
||||
rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el || die
|
||||
rm -rf "${ED}"/usr/share/{applications,icons} || die
|
||||
rm -rf "${ED}/usr/$(get_libdir)/systemd" || die
|
||||
rm -rf "${ED}"/var || die
|
||||
|
||||
# remove unused <version>/site-lisp dir
|
||||
rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp || die
|
||||
|
||||
# remove COPYING file (except for etc/COPYING used by describe-copying)
|
||||
rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING || die
|
||||
|
||||
if use systemd; then
|
||||
insinto /usr/lib/systemd/user
|
||||
sed -e "/^##/d" \
|
||||
-e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
|
||||
-e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
|
||||
etc/emacs.service | newins - ${EMACS_SUFFIX}.service
|
||||
assert
|
||||
fi
|
||||
|
||||
if use gzip-el; then
|
||||
# compress .el files when a corresponding .elc exists
|
||||
find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
|
||||
-name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
|
||||
assert "gzip .el failed"
|
||||
fi
|
||||
|
||||
local cdir
|
||||
if use source; then
|
||||
cdir="/usr/share/emacs/${FULL_VERSION}/src"
|
||||
insinto "${cdir}"
|
||||
# This is not meant to install all the source -- just the
|
||||
# C source you might find via find-function
|
||||
doins src/*.{c,h,m}
|
||||
elif has installsources ${FEATURES}; then
|
||||
cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
|
||||
fi
|
||||
|
||||
sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
|
||||
X
|
||||
;;; ${EMACS_SUFFIX} site-lisp configuration
|
||||
X
|
||||
(when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
|
||||
Y (setq find-function-C-source-directory
|
||||
Y "${EPREFIX}${cdir}")
|
||||
X (let ((path (getenv "INFOPATH"))
|
||||
X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
|
||||
X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
|
||||
X (and path
|
||||
X ;; move Emacs Info dir before anything else in /usr/share
|
||||
X (let* ((p (cons nil (split-string path ":" t))) (q p))
|
||||
X (while (and (cdr q) (not (string-match re (cadr q))))
|
||||
X (setq q (cdr q)))
|
||||
X (setcdr q (cons dir (delete dir (cdr q))))
|
||||
X (setenv "INFOPATH" (mapconcat 'identity (cdr p) ":"))))))
|
||||
EOF
|
||||
elisp-site-file-install "${T}/${SITEFILE}" || die
|
||||
|
||||
dodoc README BUGS CONTRIBUTE
|
||||
|
||||
if use gui && use aqua; then
|
||||
dodir /Applications/Gentoo
|
||||
rm -rf "${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||
mv nextstep/Emacs.app \
|
||||
"${ED}"/Applications/Gentoo/${EMACS_SUFFIX^}.app || die
|
||||
fi
|
||||
|
||||
local DOC_CONTENTS="You can set the version to be started by
|
||||
/usr/bin/emacs through the Emacs eselect module, which also
|
||||
redirects man and info pages. Therefore, several Emacs versions can
|
||||
be installed at the same time. \"man emacs.eselect\" for details.
|
||||
\\n\\nIf you upgrade from a previous major version of Emacs, then
|
||||
it is strongly recommended that you use app-admin/emacs-updater
|
||||
to rebuild all byte-compiled elisp files of the installed Emacs
|
||||
packages."
|
||||
if use gui; then
|
||||
DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
|
||||
Installing media-fonts/font-adobe-{75,100}dpi on the X server's
|
||||
machine would satisfy basic Emacs requirements under X11.
|
||||
See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
|
||||
for how to enable anti-aliased fonts."
|
||||
use aqua && DOC_CONTENTS+="\\n\\n${EMACS_SUFFIX^}.app is in
|
||||
\"${EPREFIX}/Applications/Gentoo\". You may want to copy or
|
||||
symlink it into /Applications by yourself."
|
||||
fi
|
||||
tc-is-cross-compiler && DOC_CONTENTS+="\\n\\nEmacs did not write
|
||||
a portable dump file due to being cross-compiled.
|
||||
To create this file at run time, execute the following command:
|
||||
\\n${EMACS_SUFFIX} --batch -Q --eval='(dump-emacs-portable
|
||||
\"/usr/libexec/emacs/${FULL_VERSION}/${CHOST}/emacs.pdmp\")'"
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# verify that the PM hasn't removed our Info directory index #257260
|
||||
local infodir="${ED}/usr/share/info/${EMACS_SUFFIX}"
|
||||
[[ -f ${infodir}/dir || ! -d ${infodir} ]] || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elisp-site-regen
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if use livecd; then
|
||||
# force an update of the emacs symlink for the livecd/dvd,
|
||||
# because some microemacs packages set it with USE=livecd
|
||||
eselect emacs update
|
||||
else
|
||||
eselect emacs update ifunset
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
elisp-site-regen
|
||||
eselect emacs update ifunset
|
||||
}
|
@ -1,5 +1,3 @@
|
||||
DIST ghostwriter-23.08.5.tar.xz 3626836 BLAKE2B 19977d1c8341812d4bff70fa246b1f0300ff871880b9959ac39dd702e33661c6e8ec79d5353f29a10da00f03cc95457e5182e2b46ed7d01964b924606f885ca0 SHA512 b548710cd5066b8ff29410577b2e5c11178ea2661793bfedec1b2379046735f4320ba47ee3d560d8041171f1244d541213ecd5f2a8e0ae69ae0f0718094d5d20
|
||||
DIST ghostwriter-24.02.2.tar.xz 3629096 BLAKE2B f167301849348ee59d45fea07286d3e0c1cacd4eeb84769d4bb6182fc508aaa0f8b749f2553054a6054ffc48706ec53f05ec164b1a913b0f926395134e72ac7a SHA512 ebe605f82710ced4fecf4effd5c257e5d6bc274bbbc6cb36138423ef05b14504dd5d39d698eb23640838df53bc55f9ba3523280731482b1eb1b1ad6d46178381
|
||||
EBUILD ghostwriter-23.08.5.ebuild 917 BLAKE2B 28c13419175e5b2ff6bf8b2da5c8d8dfb04cc79b90c6740b47872ed91646b81de8705b0bdba0494cc31cc820282c4781f9e25606afef0cdaee89acb73f8954da SHA512 5c01a720fd85ed26e86f4a4f1113ce374a180c0cb2bda70aae079985b77351cfd9e6c734af8bbda4db309c8eafb16171c1734e96e50eeba2b995ec461c123e8b
|
||||
EBUILD ghostwriter-24.02.2.ebuild 918 BLAKE2B d4ab59bb3cee9f10d35a06270352bb9784a587ab2611f817800eb9e2bb2c804a37be328ab89a12df42670b06ac56a54c1a1f92b9e71a4eab0d808f9dfa8b7526 SHA512 69dbc038aa2a29608f8098f68947c9144c70d386e1c0d4865d83e8e7186149e2b4dd063d5f02a9f3da8bb1326b72b65e0741677121f035bb8162695499c44ec3
|
||||
MISC metadata.xml 380 BLAKE2B 8c20dfd3208e20d12c1c1fc2f6b75ac80c88175865f269859f5fd903dacec1371af3b6e77ebb905271ad58dc4a266dd7679ded9117c02767676bb7644e3ce060 SHA512 4af810107c31548de0663061ef865b124a7a0828e7955ee31bbb71c1e0cabf0420d494dca2e7c7ee2dd4adbb87c203a62b57e843757a3534ac6f97fb2a4b3d65
|
||||
|
@ -1,41 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
KDE_ORG_CATEGORY="office"
|
||||
ECM_HANDBOOK="optional"
|
||||
KFMIN=5.106.0
|
||||
QTMIN=5.15.9
|
||||
inherit ecm gear.kde.org
|
||||
|
||||
DESCRIPTION="Cross-platform, aesthetic, distraction-free markdown editor"
|
||||
HOMEPAGE="https://ghostwriter.kde.org/"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
app-text/hunspell:=
|
||||
>=dev-qt/qtgui-${QTMIN}:5
|
||||
>=dev-qt/qtsvg-${QTMIN}:5
|
||||
>=dev-qt/qtwebchannel-${QTMIN}:5
|
||||
>=dev-qt/qtwebengine-${QTMIN}:5[widgets]
|
||||
>=dev-qt/qtwidgets-${QTMIN}:5
|
||||
>=kde-frameworks/kcoreaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
|
||||
>=kde-frameworks/kxmlgui-${KFMIN}:5
|
||||
>=kde-frameworks/sonnet-${KFMIN}:5
|
||||
virtual/opengl
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-qt/qtconcurrent-${QTMIN}:5
|
||||
"
|
||||
BDEPEND="
|
||||
>=dev-qt/linguist-tools-${QTMIN}:5
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
DOCS=( CHANGELOG.md README.md )
|
@ -0,0 +1,365 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Please bump with app-editors/vim-core and app-editors/vim
|
||||
|
||||
VIM_VERSION="9.1"
|
||||
VIM_PATCHES_VERSION="9.0.2092"
|
||||
|
||||
LUA_COMPAT=( lua5-{1..4} luajit )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby31 ruby32"
|
||||
|
||||
inherit bash-completion-r1 flag-o-matic lua-single prefix python-single-r1 ruby-single toolchain-funcs vim-doc xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
|
||||
https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
fi
|
||||
S="${WORKDIR}"/vim-${PV}
|
||||
|
||||
DESCRIPTION="GUI version of the Vim text editor"
|
||||
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
|
||||
|
||||
LICENSE="vim"
|
||||
SLOT="0"
|
||||
IUSE="acl aqua crypt cscope debug lua minimal motif netbeans nls perl python racket ruby selinux session sound tcl"
|
||||
REQUIRED_USE="
|
||||
lua? ( ${LUA_REQUIRED_USE} )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
aqua? ( !motif )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
~app-editors/vim-core-${PV}
|
||||
>=app-eselect/eselect-vi-1.1
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
x11-libs/libICE
|
||||
x11-libs/libSM
|
||||
x11-libs/libXext
|
||||
x11-libs/libXt
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
!aqua? (
|
||||
motif? ( >=x11-libs/motif-2.3:0 )
|
||||
!motif? (
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libXft
|
||||
)
|
||||
)
|
||||
crypt? ( dev-libs/libsodium:= )
|
||||
cscope? ( dev-util/cscope )
|
||||
lua? (
|
||||
${LUA_DEPS}
|
||||
$(lua_gen_impl_dep 'deprecated' lua5-1)
|
||||
)
|
||||
nls? ( virtual/libintl )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
session? ( x11-libs/libSM )
|
||||
sound? ( media-libs/libcanberra )
|
||||
tcl? ( dev-lang/tcl:0= )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
x11-base/xorg-proto"
|
||||
# configure runs the Lua interpreter
|
||||
BDEPEND="
|
||||
dev-build/autoconf
|
||||
virtual/pkgconfig
|
||||
lua? ( ${LUA_DEPS} )
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
|
||||
|
||||
if [[ ${PV} != 9999* ]]; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
PATCHES=(
|
||||
"${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches"
|
||||
)
|
||||
fi
|
||||
|
||||
# various failures (bugs #630042 and #682320)
|
||||
RESTRICT="test"
|
||||
|
||||
# platform-specific checks (bug #898450):
|
||||
# - acl() -- Solaris
|
||||
# - statacl() -- AIX
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
'acl'
|
||||
'statacl'
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug 82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
use lua && lua-single_pkg_setup
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i -e \
|
||||
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug 29398 (27 Sep 2003 agriffis)
|
||||
sed -i -e \
|
||||
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i -e \
|
||||
's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
rm -v src/auto/configure || die "rm failed"
|
||||
|
||||
# --with-features=huge forces on cscope even if we --disable it. We need
|
||||
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
|
||||
if ! use cscope; then
|
||||
sed -i -e \
|
||||
'/# define FEAT_CSCOPE/d' src/feature.h || die "couldn't disable cscope"
|
||||
fi
|
||||
|
||||
# bug 908961
|
||||
if use elibc_musl ; then
|
||||
sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
|
||||
# Fix bug 37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
local file
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e ${file} ]]; then
|
||||
addwrite $file
|
||||
fi
|
||||
done
|
||||
|
||||
use debug && append-flags "-DDEBUG"
|
||||
|
||||
local myconf=(
|
||||
--with-features=huge
|
||||
--disable-gpm
|
||||
--with-gnome=no
|
||||
$(use_enable sound canberra)
|
||||
$(use_enable acl)
|
||||
$(use_enable crypt libsodium)
|
||||
$(use_enable cscope)
|
||||
$(use_enable netbeans)
|
||||
$(use_enable nls)
|
||||
$(use_enable perl perlinterp)
|
||||
$(use_enable python python3interp)
|
||||
$(use_with python python3-command "${PYTHON}")
|
||||
$(use_enable racket mzschemeinterp)
|
||||
$(use_enable ruby rubyinterp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable session xsmp)
|
||||
$(use_enable tcl tclinterp)
|
||||
)
|
||||
|
||||
if use lua; then
|
||||
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
|
||||
# deprecated (in 5.1) luaL_openlib API (#874690)
|
||||
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
|
||||
|
||||
myconf+=(
|
||||
--enable-luainterp
|
||||
$(use_with lua_single_target_luajit luajit)
|
||||
--with-lua-prefix="${EPREFIX}/usr"
|
||||
)
|
||||
fi
|
||||
|
||||
# Default is gtk unless aqua or motif are enabled
|
||||
echo ; echo
|
||||
if use aqua; then
|
||||
einfo "Building gvim with the Carbon GUI"
|
||||
myconf+=(
|
||||
--enable-darwin
|
||||
--enable-gui=carbon
|
||||
)
|
||||
elif use motif; then
|
||||
einfo "Building gvim with the MOTIF GUI"
|
||||
myconf+=( --enable-gui=motif )
|
||||
else
|
||||
myconf+=( --enable-gtk3-check )
|
||||
einfo "Building gvim with the gtk+-3 GUI"
|
||||
myconf+=( --enable-gui=gtk3 )
|
||||
fi
|
||||
echo ; echo
|
||||
|
||||
# let package manager strip binaries
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# keep prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
export vim_cv_getcwd_broken=no \
|
||||
vim_cv_memmove_handles_overlap=yes \
|
||||
vim_cv_stat_ignores_slash=yes \
|
||||
vim_cv_terminfo=yes \
|
||||
vim_cv_toupper_broken=no
|
||||
fi
|
||||
|
||||
econf \
|
||||
--with-modified-by="Gentoo-${PVR} (RIP Bram)" \
|
||||
--with-vim-name=gvim \
|
||||
--with-x \
|
||||
"${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The following allows emake to be used
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo
|
||||
einfo "Starting vim tests. Several error messages will be shown"
|
||||
einfo "while the tests run. This is normal behaviour and does not"
|
||||
einfo "indicate a fault."
|
||||
einfo
|
||||
ewarn "If the tests fail, your terminal may be left in a strange"
|
||||
ewarn "state. Usually, running 'reset' will fix this."
|
||||
einfo
|
||||
|
||||
# Don't let vim talk to X
|
||||
unset DISPLAY
|
||||
|
||||
# Make gvim not try to connect to X. See :help gui-x11-start in vim for how
|
||||
# this evil trickery works.
|
||||
ln -s "${S}"/src/gvim "${S}"/src/testvim || die
|
||||
|
||||
# Make sure our VIMPROG is used.
|
||||
sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die
|
||||
|
||||
# Don't do additional GUI tests.
|
||||
emake -j1 VIMPROG=../testvim -C src/testdir nongui
|
||||
}
|
||||
|
||||
# Call eselect vi update with --if-unset
|
||||
# to respect user's choice (bug 187449)
|
||||
eselect_vi_update() {
|
||||
ebegin "Calling eselect vi update"
|
||||
eselect vi update --if-unset
|
||||
eend $?
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
dobin src/gvim
|
||||
dosym gvim /usr/bin/gvimdiff
|
||||
dosym gvim /usr/bin/evim
|
||||
dosym gvim /usr/bin/eview
|
||||
dosym gvim /usr/bin/gview
|
||||
dosym gvim /usr/bin/rgvim
|
||||
dosym gvim /usr/bin/rgview
|
||||
|
||||
emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons
|
||||
|
||||
dodir /usr/share/man/man1
|
||||
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed"
|
||||
echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed"
|
||||
echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \
|
||||
die "echo failed"
|
||||
|
||||
insinto /etc/vim
|
||||
newins "${FILESDIR}"/gvimrc-r1 gvimrc
|
||||
eprefixify "${ED}"/etc/vim/gvimrc
|
||||
|
||||
# bash completion script, bug #79018.
|
||||
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
|
||||
|
||||
# don't install vim desktop file
|
||||
rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update fdo mime stuff, bug #78394
|
||||
xdg_desktop_database_update
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
|
||||
# call eselect vi update
|
||||
eselect_vi_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update fdo mime stuff, bug #78394
|
||||
xdg_desktop_database_update
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
|
||||
# call eselect vi update
|
||||
eselect_vi_update
|
||||
}
|
@ -1,69 +0,0 @@
|
||||
# Copyright 2021-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
inherit desktop gnome2-utils python-single-r1 readme.gentoo-r1
|
||||
|
||||
DESCRIPTION="Fully featured markdown editor, supports github markdown dialect"
|
||||
HOMEPAGE="https://remarkableapp.github.io/ https://github.com/jamiemcg/remarkable"
|
||||
GIT_COMMIT="7b0b3dacef270a00c28e8852a88d74f72a3544d7"
|
||||
SRC_URI="https://github.com/jamiemcg/remarkable/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/Remarkable-${GIT_COMMIT}"
|
||||
|
||||
LICENSE="BSD-2 GPL-2+ LGPL-2.1+ MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~x86"
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
DEPEND="
|
||||
${PYTHON_DEPS}
|
||||
net-libs/webkit-gtk:4.1[introspection]
|
||||
x11-libs/gtk+:3[introspection]
|
||||
x11-libs/gtksourceview:3.0[introspection]
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
|
||||
dev-python/pycairo[${PYTHON_USEDEP}]
|
||||
dev-python/pygobject[${PYTHON_USEDEP}]
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
')"
|
||||
RDEPEND="${DEPEND}"
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-disable-spellcheck.patch
|
||||
"${FILESDIR}"/webkit-version.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s|import styles|from remarkable import styles|" \
|
||||
-e "s|from findBar|from remarkable.findBar|" \
|
||||
remarkable/RemarkableWindow.py || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
python_domodule markdown pdfkit remarkable remarkable_lib
|
||||
python_doscript bin/remarkable
|
||||
doicon data/ui/remarkable.png
|
||||
domenu ${PN}.desktop
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r data/ui
|
||||
doins -r data/media
|
||||
|
||||
insinto /usr/share/glib-2.0/schemas
|
||||
doins data/glib-2.0/schemas/*
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_schemas_update
|
||||
readme.gentoo_print_elog
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
gnome2_schemas_update
|
||||
}
|
@ -0,0 +1,69 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
DISTUTILS_USE_PEP517="setuptools"
|
||||
DISTUTILS_SINGLE_IMPL=1
|
||||
PYPI_NO_NORMALIZE=1
|
||||
PYPI_PN="ReText"
|
||||
|
||||
inherit desktop distutils-r1 optfeature virtualx xdg
|
||||
|
||||
DESCRIPTION="Simple editor for Markdown and reStructuredText"
|
||||
HOMEPAGE="https://github.com/retext-project/retext https://github.com/retext-project/retext/wiki"
|
||||
|
||||
if [[ ${PV} == *9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/retext-project/retext.git"
|
||||
else
|
||||
inherit pypi
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2+"
|
||||
SLOT="0"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/docutils[${PYTHON_USEDEP}]
|
||||
dev-python/markdown[${PYTHON_USEDEP}]
|
||||
>=dev-python/markups-3.1.1[${PYTHON_USEDEP}]
|
||||
dev-python/pygments[${PYTHON_USEDEP}]
|
||||
dev-python/PyQt6[dbus,gui,printsupport,widgets,${PYTHON_USEDEP}]
|
||||
')
|
||||
"
|
||||
# qmake6 from qtbase is used to find lrelease
|
||||
BDEPEND="
|
||||
dev-qt/qtbase:6
|
||||
dev-qt/qttools:6[linguist]
|
||||
test? (
|
||||
${RDEPEND}
|
||||
$(python_gen_cond_dep '
|
||||
dev-python/PyQt6[testlib,${PYTHON_USEDEP}]
|
||||
')
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests unittest
|
||||
|
||||
src_test() {
|
||||
QT_QPA_PLATFORM=minimal virtx distutils-r1_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
distutils-r1_src_install
|
||||
|
||||
domenu data/me.mitya57.ReText.desktop
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
optfeature "a local copy of the MathJax JavaScript library" dev-libs/mathjax
|
||||
optfeature "encoding detection" dev-python/chardet
|
||||
optfeature "dictionary support" dev-python/pyenchant
|
||||
optfeature "JavaScript support in preview" dev-python/PyQt6-WebEngine
|
||||
}
|
@ -0,0 +1,236 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Please bump with app-editors/vim and app-editors/gvim
|
||||
|
||||
VIM_VERSION="9.1"
|
||||
VIM_PATCHES_VERSION="9.0.2092"
|
||||
inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz
|
||||
https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
S="${WORKDIR}/vim-${PV}"
|
||||
|
||||
DESCRIPTION="vim and gvim shared files"
|
||||
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
|
||||
|
||||
LICENSE="vim"
|
||||
SLOT="0"
|
||||
IUSE="nls acl minimal"
|
||||
|
||||
# ncurses is only needed by ./configure, so no subslot operator required
|
||||
DEPEND=">=sys-libs/ncurses-5.2-r2:0"
|
||||
BDEPEND="dev-build/autoconf"
|
||||
|
||||
if [[ ${PV} != 9999* ]]; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
PATCHES=(
|
||||
"${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches"
|
||||
)
|
||||
fi
|
||||
|
||||
# platform-specific checks (bug #898406):
|
||||
# - acl() -- Solaris
|
||||
# - statacl() -- AIX
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
'acl'
|
||||
'statacl'
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug #82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i \
|
||||
-e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "sed failed"
|
||||
|
||||
# See bug #77841. We remove this file after the tarball extraction.
|
||||
rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug #29398 (27 Sep 2003 agriffis)
|
||||
sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die "sed failed"
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
# Fix bug #18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
|
||||
# Remove src/auto/configure file.
|
||||
rm -v src/auto/configure || die "rm configure failed"
|
||||
|
||||
# bug 908961
|
||||
if use elibc_musl ; then
|
||||
sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Fix bug #37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug 57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug 24447). The hvc
|
||||
# things are for ppc64, see bug 86433.
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e "${file}" ]]; then
|
||||
addwrite ${file}
|
||||
fi
|
||||
done
|
||||
|
||||
# Let Portage do the stripping. Some people like that.
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
local myconf=(
|
||||
--with-modified-by="Gentoo-${PVR} (RIP Bram)"
|
||||
--enable-gui=no
|
||||
--without-x
|
||||
--disable-darwin
|
||||
--disable-perlinterp
|
||||
--disable-pythoninterp
|
||||
--disable-rubyinterp
|
||||
--disable-gpm
|
||||
--disable-selinux
|
||||
$(use_enable nls)
|
||||
$(use_enable acl)
|
||||
)
|
||||
|
||||
# Keep Gentoo Prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
export vim_cv_getcwd_broken=no \
|
||||
vim_cv_memmove_handles_overlap=yes \
|
||||
vim_cv_stat_ignores_slash=yes \
|
||||
vim_cv_terminfo=yes \
|
||||
vim_cv_toupper_broken=no
|
||||
fi
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
emake tools
|
||||
}
|
||||
|
||||
src_test() { :; }
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
dodir /usr/{bin,share/{man/man1,vim}}
|
||||
emake -C src \
|
||||
installruntime \
|
||||
installmanlinks \
|
||||
installmacros \
|
||||
installtutor \
|
||||
installtutorbin \
|
||||
installtools \
|
||||
install-languages \
|
||||
DESTDIR="${D}" \
|
||||
BINDIR="${EPREFIX}"/usr/bin \
|
||||
MANDIR="${EPREFIX}"/usr/share/man \
|
||||
DATADIR="${EPREFIX}"/usr/share
|
||||
|
||||
keepdir ${vimfiles}/keymap
|
||||
|
||||
# default vimrc is installed by vim-core since it applies to
|
||||
# both vim and gvim
|
||||
insinto /etc/vim/
|
||||
newins "${FILESDIR}"/vimrc-r6 vimrc
|
||||
eprefixify "${ED}"/etc/vim/vimrc
|
||||
|
||||
if use minimal; then
|
||||
# To save space, install only a subset of the files.
|
||||
# Helps minimalize the livecd, bug 65144.
|
||||
rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die
|
||||
rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die
|
||||
rm -v "${ED}"/usr/bin/vimtutor || die
|
||||
|
||||
for f in "${ED}${vimfiles}"/colors/*.vim; do
|
||||
if [[ ${f} != */@(default).vim ]] ; then
|
||||
printf '%s\0' "${f}"
|
||||
fi
|
||||
done | xargs -0 rm -f || die
|
||||
|
||||
for f in "${ED}${vimfiles}"/syntax/*.vim; do
|
||||
if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then
|
||||
printf '%s\0' "${f}"
|
||||
fi
|
||||
done | xargs -0 rm -f || die
|
||||
fi
|
||||
|
||||
newbashcomp "${FILESDIR}"/xxd-completion xxd
|
||||
|
||||
# install gvim icon since both vim/gvim desktop files reference it
|
||||
doicon -s scalable "${FILESDIR}"/gvim.svg
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# update icon cache
|
||||
xdg_icon_cache_update
|
||||
}
|
@ -0,0 +1,377 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Please bump with app-editors/vim-core and app-editors/gvim
|
||||
|
||||
VIM_VERSION="9.1"
|
||||
VIM_PATCHES_VERSION="9.0.2092"
|
||||
|
||||
LUA_COMPAT=( lua5-{1..4} luajit )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
USE_RUBY="ruby31 ruby32"
|
||||
|
||||
inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils
|
||||
|
||||
if [[ ${PV} == 9999* ]] ; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/vim/vim.git"
|
||||
else
|
||||
SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
|
||||
https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Vim, an improved vi-style text editor"
|
||||
HOMEPAGE="https://www.vim.org https://github.com/vim/vim"
|
||||
|
||||
LICENSE="vim"
|
||||
SLOT="0"
|
||||
IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager"
|
||||
REQUIRED_USE="
|
||||
lua? ( ${LUA_REQUIRED_USE} )
|
||||
python? ( ${PYTHON_REQUIRED_USE} )
|
||||
vim-pager? ( !minimal )
|
||||
"
|
||||
|
||||
RDEPEND="
|
||||
>=app-eselect/eselect-vi-1.1
|
||||
>=sys-libs/ncurses-5.2-r2:0=
|
||||
nls? ( virtual/libintl )
|
||||
acl? ( kernel_linux? ( sys-apps/acl ) )
|
||||
crypt? ( dev-libs/libsodium:= )
|
||||
cscope? ( dev-util/cscope )
|
||||
gpm? ( >=sys-libs/gpm-1.19.3 )
|
||||
lua? ( ${LUA_DEPS}
|
||||
$(lua_gen_impl_dep 'deprecated' lua5-1)
|
||||
)
|
||||
~app-editors/vim-core-${PV}
|
||||
vim-pager? ( app-editors/vim-core[-minimal] )
|
||||
perl? ( dev-lang/perl:= )
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
racket? ( dev-scheme/racket )
|
||||
ruby? ( ${RUBY_DEPS} )
|
||||
selinux? ( sys-libs/libselinux )
|
||||
sound? ( media-libs/libcanberra )
|
||||
tcl? ( dev-lang/tcl:0= )
|
||||
X? ( x11-libs/libXt )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
X? ( x11-base/xorg-proto )
|
||||
"
|
||||
# configure runs the Lua interpreter
|
||||
BDEPEND="
|
||||
dev-build/autoconf
|
||||
lua? ( ${LUA_DEPS} )
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
PDEPEND="!minimal? ( app-vim/gentoo-syntax )"
|
||||
|
||||
if [[ ${PV} != 9999* ]]; then
|
||||
# Gentoo patches to fix runtime issues, cross-compile errors, etc
|
||||
PATCHES=(
|
||||
"${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches"
|
||||
)
|
||||
fi
|
||||
|
||||
# platform-specific checks (bug #898452):
|
||||
# - acl() -- Solaris
|
||||
# - statacl() -- AIX
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
'acl'
|
||||
'statacl'
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# people with broken alphabets run into trouble. bug #82186.
|
||||
unset LANG LC_ALL
|
||||
export LC_COLLATE="C"
|
||||
|
||||
use lua && lua-single_pkg_setup
|
||||
use python && python-single-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Fixup a script to use awk instead of nawk
|
||||
sed -i -e \
|
||||
'1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
|
||||
"${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
|
||||
|
||||
# Read vimrc and gvimrc from /etc/vim
|
||||
echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
|
||||
>> "${S}"/src/feature.h || die "echo failed"
|
||||
|
||||
# Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
|
||||
# Hopefully this pattern won't break for a while at least.
|
||||
# This fixes bug #29398 (27 Sep 2003 agriffis)
|
||||
sed -i -e \
|
||||
's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
|
||||
"${S}"/runtime/doc/syntax.txt \
|
||||
"${S}"/runtime/doc/tagsrch.txt \
|
||||
"${S}"/runtime/doc/usr_29.txt \
|
||||
"${S}"/runtime/menu.vim \
|
||||
"${S}"/src/configure.ac || die 'sed failed'
|
||||
|
||||
# gcc on sparc32 has this, uhm, interesting problem with detecting EOF
|
||||
# correctly. To avoid some really entertaining error messages about stuff
|
||||
# which isn't even in the source file being invalid, we'll do some trickery
|
||||
# to make the error never occur. bug 66162 (02 October 2004 ciaranm)
|
||||
find "${S}" -name '*.c' | while read c; do
|
||||
echo >> "$c" || die "echo failed"
|
||||
done
|
||||
|
||||
# conditionally make the manpager.sh script
|
||||
if use vim-pager; then
|
||||
cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
|
||||
#!/bin/sh
|
||||
sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
|
||||
vim \\
|
||||
-c 'let no_plugin_maps = 1' \\
|
||||
-c 'set nolist nomod ft=man ts=8' \\
|
||||
-c 'let g:showmarks_enable=0' \\
|
||||
-c 'runtime! macros/less.vim' -
|
||||
_EOF_
|
||||
fi
|
||||
|
||||
# Try to avoid sandbox problems. Bug #114475.
|
||||
if [[ -d "${S}"/src/po ]]; then
|
||||
sed -i -e \
|
||||
'/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
|
||||
"${S}"/src/po/Makefile || die "sed failed"
|
||||
fi
|
||||
|
||||
cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
|
||||
|
||||
# Fix bug 18245: Prevent "make" from the following chain:
|
||||
# (1) Notice configure.ac is newer than auto/configure
|
||||
# (2) Rebuild auto/configure
|
||||
# (3) Notice auto/configure is newer than auto/config.mk
|
||||
# (4) Run ./configure (with wrong args) to remake auto/config.mk
|
||||
sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
|
||||
rm src/auto/configure || die "rm failed"
|
||||
|
||||
# bug 908961
|
||||
if use elibc_musl ; then
|
||||
sed -i -e '/ja.sjis/d' src/po/Make_all.mak || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
|
||||
# Fix bug #37354: Disallow -funroll-all-loops on amd64
|
||||
# Bug #57859 suggests that we want to do this for all archs
|
||||
filter-flags -funroll-all-loops
|
||||
|
||||
# Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
|
||||
# everyone since previous flag filtering bugs have turned out to affect
|
||||
# multiple archs...
|
||||
replace-flags -O3 -O2
|
||||
|
||||
emake -j1 -C src autoconf
|
||||
|
||||
# This should fix a sandbox violation (see bug #24447). The hvc
|
||||
# things are for ppc64, see bug #86433.
|
||||
for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
|
||||
if [[ -e "${file}" ]]; then
|
||||
addwrite ${file}
|
||||
fi
|
||||
done
|
||||
|
||||
local myconf=()
|
||||
if use minimal; then
|
||||
myconf=(
|
||||
--with-features=tiny
|
||||
--disable-nls
|
||||
--disable-canberra
|
||||
--disable-acl
|
||||
--enable-gui=no
|
||||
--without-x
|
||||
--disable-darwin
|
||||
--disable-luainterp
|
||||
--disable-perlinterp
|
||||
--disable-pythoninterp
|
||||
--disable-mzschemeinterp
|
||||
--disable-rubyinterp
|
||||
--disable-selinux
|
||||
--disable-tclinterp
|
||||
--disable-gpm
|
||||
)
|
||||
else
|
||||
use debug && append-flags "-DDEBUG"
|
||||
|
||||
myconf=(
|
||||
--with-features=huge
|
||||
$(use_enable sound canberra)
|
||||
$(use_enable acl)
|
||||
$(use_enable crypt libsodium)
|
||||
$(use_enable cscope)
|
||||
$(use_enable gpm)
|
||||
$(use_enable nls)
|
||||
$(use_enable perl perlinterp)
|
||||
$(use_enable python python3interp)
|
||||
$(use_with python python3-command "${PYTHON}")
|
||||
$(use_enable racket mzschemeinterp)
|
||||
$(use_enable ruby rubyinterp)
|
||||
$(use_enable selinux)
|
||||
$(use_enable tcl tclinterp)
|
||||
$(use_enable terminal)
|
||||
)
|
||||
|
||||
# --with-features=huge forces on cscope even if we --disable it. We need
|
||||
# to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
|
||||
if ! use cscope; then
|
||||
sed -i -e \
|
||||
'/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
|
||||
fi
|
||||
|
||||
if use lua; then
|
||||
# -DLUA_COMPAT_OPENLIB=1 is required to enable the
|
||||
# deprecated (in 5.1) luaL_openlib API (#874690)
|
||||
use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1
|
||||
|
||||
myconf+=(
|
||||
--enable-luainterp
|
||||
$(use_with lua_single_target_luajit luajit)
|
||||
--with-lua-prefix="${EPREFIX}/usr"
|
||||
)
|
||||
fi
|
||||
|
||||
# don't test USE=X here ... see bug #19115
|
||||
# but need to provide a way to link against X ... see bug #20093
|
||||
myconf+=(
|
||||
--enable-gui=no
|
||||
--disable-darwin
|
||||
$(use_with X x)
|
||||
)
|
||||
fi
|
||||
|
||||
# let package manager strip binaries
|
||||
export ac_cv_prog_STRIP="$(type -P true ) faking strip"
|
||||
|
||||
# keep prefix env contained within the EPREFIX
|
||||
use prefix && myconf+=( --without-local-dir )
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
export vim_cv_getcwd_broken=no \
|
||||
vim_cv_memmove_handles_overlap=yes \
|
||||
vim_cv_stat_ignores_slash=yes \
|
||||
vim_cv_terminfo=yes \
|
||||
vim_cv_toupper_broken=no
|
||||
fi
|
||||
|
||||
econf \
|
||||
--with-modified-by="Gentoo-${PVR} (RIP Bram)" \
|
||||
"${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# The following allows emake to be used
|
||||
emake -j1 -C src auto/osdef.h objects
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_test() {
|
||||
einfo
|
||||
einfo "Starting vim tests. Several error messages will be shown"
|
||||
einfo "while the tests run. This is normal behaviour and does not"
|
||||
einfo "indicate a fault."
|
||||
einfo
|
||||
ewarn "If the tests fail, your terminal may be left in a strange"
|
||||
ewarn "state. Usually, running 'reset' will fix this."
|
||||
einfo
|
||||
|
||||
# Don't let vim talk to X
|
||||
unset DISPLAY
|
||||
|
||||
# Arch and opensuse seem to do this and at this point, I'm willing
|
||||
# to try anything to avoid random test hangs!
|
||||
export TERM=xterm
|
||||
|
||||
# See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5
|
||||
# for more information on test variables we can use.
|
||||
# Note that certain variables need vim-compatible regex (not PCRE), see e.g.
|
||||
# http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml.
|
||||
#
|
||||
# Skipped tests:
|
||||
# - Test_expand_star_star
|
||||
# Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680)
|
||||
# - Test_exrc
|
||||
# Looks in wrong location? (bug #742710)
|
||||
# - Test_job_tty_in_out
|
||||
# Fragile and depends on TERM(?)
|
||||
# - Test_spelldump_bang
|
||||
# Hangs.
|
||||
# - Test_fuzzy_completion_env
|
||||
# Too sensitive to leaked environment variables.
|
||||
# - Test_term_mouse_multiple_clicks_to_select_mode
|
||||
# Hangs.
|
||||
# - Test_spelldump
|
||||
# Hangs.
|
||||
export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)'
|
||||
|
||||
emake -j1 -C src/testdir nongui
|
||||
}
|
||||
|
||||
# Call eselect vi update with --if-unset
|
||||
# to respect user's choice (bug #187449)
|
||||
eselect_vi_update() {
|
||||
ebegin "Calling eselect vi update"
|
||||
eselect vi update --if-unset
|
||||
eend $?
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
|
||||
|
||||
# Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
|
||||
# managed by eselect-vi
|
||||
dobin src/vim
|
||||
if ! use minimal ; then
|
||||
dosym vim /usr/bin/vimdiff
|
||||
fi
|
||||
dosym vim /usr/bin/rvim
|
||||
dosym vim /usr/bin/rview
|
||||
if use vim-pager ; then
|
||||
dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
|
||||
dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
|
||||
insinto ${vimfiles}/macros
|
||||
doins runtime/macros/manpager.sh
|
||||
fperms a+x ${vimfiles}/macros/manpager.sh
|
||||
fi
|
||||
|
||||
domenu runtime/vim.desktop
|
||||
|
||||
newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
|
||||
|
||||
# keep in sync with 'complete ... -F' list
|
||||
bashcomp_alias vim ex vi view rvim rview vimdiff
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
|
||||
# update desktop file mime cache
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
# Update documentation tags (from vim-doc.eclass)
|
||||
update_vim_helptags
|
||||
|
||||
# Call eselect vi update
|
||||
eselect_vi_update
|
||||
|
||||
# update desktop file mime cache
|
||||
xdg_desktop_database_update
|
||||
}
|
Binary file not shown.
@ -1,4 +1,6 @@
|
||||
AUX 50fennel-mode-gentoo.el 178 BLAKE2B 3e7b9b5b96afa1636fbb20edb8090cea9d74acf173a38be96bf95838343cc92623ab2a0794551b3f528b8e26f8d55412ed5886201d8c5ed67b0a0af6e906af8e SHA512 b3a0512f56278d9e5dd0409d43e5fa361c01803b3cd079cc36763800565dde4d7edd1b11b5a2eea86455d5e2890ea1b4c94cc703d107a4b0207c14544702a6c0
|
||||
DIST fennel-mode-0.5.0.tar.gz 13995 BLAKE2B 6ccf73a172f28a06221be356c2c0a5ec25342c05b95b3d4cbaf65bb11a8d6a1ad3018e708c59de8aac1069b974a99c3bda57fd42765eebc015360706d53d6e72 SHA512 89dfbf2d70c36a3f1de69af9f2dad5ee93e1ec995470205962b6fd015e779ac8c81159a2d9fb532d14f5afe8485d8e18a82783388565eb1ff4646a714f5113e3
|
||||
DIST fennel-mode-0.9.1.tar.gz 13995 BLAKE2B 6ccf73a172f28a06221be356c2c0a5ec25342c05b95b3d4cbaf65bb11a8d6a1ad3018e708c59de8aac1069b974a99c3bda57fd42765eebc015360706d53d6e72 SHA512 89dfbf2d70c36a3f1de69af9f2dad5ee93e1ec995470205962b6fd015e779ac8c81159a2d9fb532d14f5afe8485d8e18a82783388565eb1ff4646a714f5113e3
|
||||
EBUILD fennel-mode-0.5.0.ebuild 624 BLAKE2B a9c288a8ba74fd5360036684b3f87c2c3ff162b6de9e03ecbd4fc38ced8ed93d553aa2bd2f842ea5e8253b6a0b19208f24bf3c95e41907e4d8c2c27993f2e5d0 SHA512 48e8df5f7a340bc740a0b76a4bab8bf48e44079be93e94cdbe7c708f6b5a8223eb13fdef0ebb0b088be6f6f9bb2502d2038fc0248ecd010ab9b9244fb8b01d88
|
||||
EBUILD fennel-mode-0.9.1.ebuild 624 BLAKE2B 4e587764188422e56ee7586dd6fd0c6b7bc40e5fd287400756db897198b9134cf5910dd61dc3379b6675336fb01dcf8444ea0c568942f6d55d4dcb913704a513 SHA512 a386d86966dc223782aaff18734e1aa6a4691f58c966e4250f9b1860300c7ac131908ecb7f2938f94b50916a111a0d204bf0978bf5bf38aaaa831d61f104bd94
|
||||
MISC metadata.xml 613 BLAKE2B 8ef6025dc10cd87c52b8c7c01abb4e8abf340e05ca520ffe4b6ba41d2b3b2f6eca3f6de26194376072dc379a99da79d6e1b5084ca6f628cc4da5fcd7ca5ff2f3 SHA512 23bf783bbf8200421d805b0cd776a8fe5240a2362221e53a96028331c730d1d495aa1d46c1576712c0d0ebf973413c7c8e07d9a9bc8fc598da9581eecef68531
|
||||
|
@ -0,0 +1,29 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
COMMIT=b3c52964eda7c0267f6e3f0ad6c690c3a1e89da1
|
||||
NEED_EMACS=26.1
|
||||
|
||||
inherit elisp
|
||||
|
||||
DESCRIPTION="Emacs support for the Fennel programming language"
|
||||
HOMEPAGE="https://git.sr.ht/~technomancy/fennel-mode/"
|
||||
SRC_URI="https://git.sr.ht/~technomancy/${PN}/archive/${COMMIT}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/${PN}-${COMMIT}
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
DOCS=( Readme.md changelog.md )
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
src_install() {
|
||||
elisp_src_install
|
||||
|
||||
insinto "${SITEETC}"
|
||||
doins syntax.fnl
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue