Compare commits
27 Commits
12d30bd7db
...
main
Author | SHA1 | Date | |
---|---|---|---|
|
c8dcc7b6e6 | ||
|
ac5879327f | ||
|
1bac18eddb | ||
|
6aee7a4667 | ||
|
eec67dfcda | ||
|
dc25944184 | ||
|
357cb8e7b1 | ||
|
1ccae18b1a | ||
|
d9125ff2c1 | ||
|
b78060fc62 | ||
|
8b3ab64845 | ||
|
204451a781 | ||
|
2b88f82646 | ||
|
7e1b235ef5 | ||
|
d458eb8387 | ||
|
14fc85dca4 | ||
|
6344f39c31 | ||
|
1d1211cc0a | ||
|
462b0441ad | ||
|
53f7f3177b | ||
|
1cf2ecb547 | ||
|
194a3ceae6 | ||
|
539966f8b8 | ||
|
da8a02df56 | ||
|
9c8fdb6291 | ||
|
d24b002577 | ||
|
0574df7934 |
@@ -1,13 +0,0 @@
|
|||||||
AUX 23.12.1/ninja-rules-for-cargo.patch 1498 BLAKE2B 6a889be0ee0b7a04dfde9f02a58cbe1f76d7c6db8ce1155787e69af9e8d144d4c15019ebb7930595ad5f4ece68156810f0e40edccc4ebb107ace38f387fdf434 SHA512 8a5753daf0585134f3fe650e1e35d22126289b526ac7764cd56a13f684f301e06c3db400a8a058dfc3d98a634127f4c19ea87013f0a373aaea0ec29377e1836e
|
|
||||||
AUX 24.04.1/remove-mypy-protobuf.patch 1089 BLAKE2B 665fa1661619a959b7e52ba513d11a3b029355a15a3fdac14ce81b2c4ba10426f56337305fdf87439db054fb5c42bd2b15e889d0c879eccf0f0d746aa63e7e85 SHA512 29538828c2e10bad9f265ecdf3a103d6ce119527826afc5c6bcd6c455a0d3506c207c110babb0efded77ef033966c515492c2b0afd5150d8030a739c55b66645
|
|
||||||
AUX 24.04.1/revert-cert-store-hack.patch 754 BLAKE2B 4679bf3538d6e8d17a6a8b80564c1e04f6516b24b30f968685185408af0eb1167d51a849c640b86a8b78e28c98067c963f37aa8a575639887db4b11d23d32e73 SHA512 f9e6629cbe7af9d45db6ca9107ed2191c6b9c4bcc4dd3be8c93ab7ba22d61790fc6e36d19a95c590ce5bca092e440ebb2c6da80c1015c70bb090b86a00fcdf98
|
|
||||||
AUX 24.06.3/remove-yarn.patch 1803 BLAKE2B 8cbca735a5a11ba6ceb00d00c2041304a2b29fe653d62c4ee505d4d0eeeb92db6acedd1f3fd7a19a33a38e0003078f467d7e9e444467ccad2191dc4d8573f1b5 SHA512 638438a855be839e1ca7ae9dcf12547facbea3c02e5a1be53a48172fa344f8a20bac538fcdda2c0f09ae59801dae5868e81584656d899d17713e54898836ad92
|
|
||||||
DIST anki-25.02.4-node_modules.tar.xz 304237316 BLAKE2B 270db46a9d7d64f87a57052f82071108e78371805e68c7d426dad268edd4f548b2ace4e7f2712597f4894e7c4d20fa7a9e72e3cd2278f023317f40361bcf3a37 SHA512 820495a61a3bf5bdaeaf40c4ae6d1b1cf3a9b2924494c40c66065b4b4214e52cfaf6477af2b7e801500e180f8c6956881c5206b049996ab0ae58f45966a368f4
|
|
||||||
DIST anki-25.02.5-crates.tar.xz 57606472 BLAKE2B 40f976c4e20c6ecd0877db05a733bd66b608e1e054177479ec3068a5d9d8b8dcd32495a4c81caee4e37e12090bb8b000f41f7c3162e3d7b80dbe522bca797f47 SHA512 f382f304ead6edee5c64472945ac56fb418adf046129c45771862ff5732a1a944f84e6d80ef590f11bde2ca2058c989ed70847ebb791f101af9a3ad34285d396
|
|
||||||
DIST anki-25.02.7.gh.tar.gz 2433971 BLAKE2B 88517d5670f658f10fe87bb2fefba8eea6e0561b69b30f4d518ac1e2a9a5b43b2eb3ec739b7b7b840c8bf127c752e85d78fa147089bb610d191375c817a2f1e1 SHA512 3d2464d3be920df8c8f35b86d1a0b1d26bf3a88a9d416195c7ab0aba748b91dcc02d357d7d1eaf1bb8f52b2a044083176c8db36608fd34de821a33ce86994d58
|
|
||||||
DIST anki-core-i18n-0fe0162f4a18e8ef2fbac1d9a33af8e38cf7260e.gh.tar.gz 1521578 BLAKE2B 101505d871df70316222db08f2bc85fdd00be81320600c64c76bb51565a88c13fa6fdd9e059ed404931f2dc97611cf2a954650d10d6556cd181427dbffc4f1a6 SHA512 c72eaea9e0f350d092a44f7623a7cfdcb74ff99a97ca4b53c51b1b26af387c9c6cd64bfca3dc4577c14c3ee4040b8ce1a7a50f2e209b0fa47c5297f97c92a910
|
|
||||||
DIST anki-desktop-ftl-17216b03db7249600542e388bd4ea124478400e5.gh.tar.gz 235720 BLAKE2B 0e1a454dbfa5f0f8750000c86b1468c7cfde99e53e6e7683820f5523963c4187e76ef40c4be4c2ef7037cc269f258fe3270ba99006912fb2844ba6cc18dc91d3 SHA512 6d91607c6b0805e6dfce8a93dbf46ac945e9b1631aa054cb98e513d7a6da64d905035b8da8ea5d10c0d700a0aa96b056748d956342fe4ddf7232f7f7540ee88a
|
|
||||||
DIST linkcheck-184b2ca50ed39ca43da13f0b830a463861adb9ca.gh.tar.gz 19408 BLAKE2B c5e4f155f2d79d6d4340eaf3caaab8cbc0a558bc351d06b6c77ac4b61afa4172f5e3497106d5535b79911c7697a74ef8765f3fdcb7b602edb7524d6b5169a6fc SHA512 2cff7ad872c9ce3b29a8c74f9ce1ca365f6c381e1d9bc5da46bb34d0687708164ad86fb78baecdb596de37f79f891d1326b994348e51f4e74ec2731da23034d4
|
|
||||||
DIST rust-url-bb930b8d089f4d30d7d19c12e54e66191de47b88.gh.tar.gz 394844 BLAKE2B e3c0cabca18a77cc71bb9982bbd7d49c540f5a597c993f66fb9cf52b0a4ecce2ef909cfe9b466767c0021c3adf8a0b9733d40e90d341bd2a97b5e9cbcc8e8037 SHA512 bad4ba7801168bed869ef3b9510566ed625fe345b3209f08d781ad07a03df61c28b52d1cb3992d614ffdf5af198c33bb725f612f5010b6965d8bbb519d818e2e
|
|
||||||
EBUILD anki-25.02.7.ebuild 9071 BLAKE2B 79771f06a96d3c5c612b7f56e50c0c23a6cfe04f85b80f4a4813004d92c2eb8f750be77ab315b6055681a4ac2001a8514b5080639e694eec22ad005fbce8cee5 SHA512 729b2816c947edb2e25f1fdafde6403964b081f3d4873d0ae88f050ec369654f9ff3d2c38d2fb52c68c4d3e409c99a441c2c2f053c9198ade71895fd58ad95fc
|
|
||||||
MISC metadata.xml 1057 BLAKE2B 578d8af6329481d995020ad891d553e79c484654f989ed0771e444ca46ee86eee1d592a61b094d9ec05e6cdd2904b6b4688967f2dc6d872b0c30263d80643cf7 SHA512 6a76ef84655dd5f713d86e9cc8a1f1fd8a24213c79ae2c4050fb51f9739656f8272d50dfe0945d4d01861734f8a9b96060ab7fec97171ade2edc2851c2b77fac
|
|
@@ -1,320 +0,0 @@
|
|||||||
# Copyright 2022-2025 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
DISTUTILS_EXT=1
|
|
||||||
DISTUTILS_OPTIONAL=1
|
|
||||||
DISTUTILS_SINGLE_IMPL=1
|
|
||||||
DISTUTILS_USE_PEP517=no
|
|
||||||
PYTHON_COMPAT=( python3_{11..13} )
|
|
||||||
|
|
||||||
declare -A GIT_CRATES=(
|
|
||||||
[linkcheck]='https://github.com/ankitects/linkcheck;184b2ca50ed39ca43da13f0b830a463861adb9ca;linkcheck-%commit%'
|
|
||||||
[percent-encoding-iri]='https://github.com/ankitects/rust-url;bb930b8d089f4d30d7d19c12e54e66191de47b88;rust-url-%commit%/percent_encoding'
|
|
||||||
)
|
|
||||||
RUST_MIN_VER="1.82.0"
|
|
||||||
|
|
||||||
inherit cargo desktop distutils-r1 greadme multiprocessing ninja-utils \
|
|
||||||
optfeature toolchain-funcs xdg
|
|
||||||
|
|
||||||
DESCRIPTION="A spaced-repetition memory training program (flash cards)"
|
|
||||||
HOMEPAGE="https://apps.ankiweb.net/"
|
|
||||||
|
|
||||||
declare -A COMMITS=(
|
|
||||||
[anki]="6381f1845ff2e79f4a424e6978c2a3e9bbb91735"
|
|
||||||
[ftl-core]="0fe0162f4a18e8ef2fbac1d9a33af8e38cf7260e"
|
|
||||||
[ftl-desktop]="17216b03db7249600542e388bd4ea124478400e5"
|
|
||||||
)
|
|
||||||
SRC_URI="${CARGO_CRATE_URIS}
|
|
||||||
https://github.com/ankitects/anki/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz
|
|
||||||
https://github.com/ankitects/anki-core-i18n/archive/${COMMITS[ftl-core]}.tar.gz
|
|
||||||
-> anki-core-i18n-${COMMITS[ftl-core]}.gh.tar.gz
|
|
||||||
https://github.com/ankitects/anki-desktop-ftl/archive/${COMMITS[ftl-desktop]}.tar.gz
|
|
||||||
-> anki-desktop-ftl-${COMMITS[ftl-desktop]}.gh.tar.gz
|
|
||||||
https://github.com/gentoo-crate-dist/anki/releases/download/25.02.5/anki-25.02.5-crates.tar.xz
|
|
||||||
gui? (
|
|
||||||
https://home.cit.tum.de/~salu/distfiles/anki-25.02.4-node_modules.tar.xz
|
|
||||||
)
|
|
||||||
"
|
|
||||||
# How to get an up-to-date summary of runtime JS libs' licenses:
|
|
||||||
# ./node_modules/.bin/license-checker-rseidelsohn --production --excludePackages anki --summary
|
|
||||||
LICENSE="AGPL-3+ BSD public-domain gui? ( 0BSD CC-BY-4.0 GPL-3+ )"
|
|
||||||
# Dependent crate licenses
|
|
||||||
LICENSE+="
|
|
||||||
Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 CC0-1.0 ISC MIT
|
|
||||||
MPL-2.0 Unicode-3.0 Unicode-DFS-2016 Unlicense ZLIB
|
|
||||||
"
|
|
||||||
# Manually added crate licenses
|
|
||||||
LICENSE+=" openssl"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~x86"
|
|
||||||
|
|
||||||
IUSE="+gui"
|
|
||||||
REQUIRED_USE="gui? ( ${PYTHON_REQUIRED_USE} )"
|
|
||||||
RESTRICT="!gui? ( test ) !test? ( test )"
|
|
||||||
|
|
||||||
# Dependencies:
|
|
||||||
# Python: python/requirements.{anki,aqt}.in
|
|
||||||
# If ENABLE_QT5_COMPAT is set at runtime
|
|
||||||
# additionally depend on PyQt6[dbus,printsupport].
|
|
||||||
# Qt: qt/{aqt/{sound.py,qt/*.py},tools/build_ui.py}
|
|
||||||
# app-misc/certificates: The rust backend library is built against
|
|
||||||
# rustls-native-certs to use the native certificate store.
|
|
||||||
# No ${PYTHON_DEPS} in DEPEND despite external module because it doesn't link
|
|
||||||
# against libpython
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
>=app-arch/zstd-1.5.5:=
|
|
||||||
dev-db/sqlite:3
|
|
||||||
"
|
|
||||||
GUI_RDEPEND="
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
dev-qt/qtsvg:6
|
|
||||||
$(python_gen_cond_dep '
|
|
||||||
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
|
|
||||||
dev-python/distro[${PYTHON_USEDEP}]
|
|
||||||
dev-python/decorator[${PYTHON_USEDEP}]
|
|
||||||
dev-python/flask[${PYTHON_USEDEP}]
|
|
||||||
dev-python/flask-cors[${PYTHON_USEDEP}]
|
|
||||||
dev-python/jsonschema[${PYTHON_USEDEP}]
|
|
||||||
dev-python/markdown[${PYTHON_USEDEP}]
|
|
||||||
dev-python/protobuf[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pyqt6-6.6.1[gui,network,opengl,quick,webchannel,widgets,${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pyqt6-sip-13.6.0[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pyqt6-webengine-6.6.0[widgets,${PYTHON_USEDEP}]
|
|
||||||
dev-python/requests[${PYTHON_USEDEP}]
|
|
||||||
dev-python/send2trash[${PYTHON_USEDEP}]
|
|
||||||
dev-python/waitress[${PYTHON_USEDEP}]
|
|
||||||
')
|
|
||||||
"
|
|
||||||
RDEPEND="
|
|
||||||
${DEPEND}
|
|
||||||
app-misc/ca-certificates
|
|
||||||
gui? ( ${GUI_RDEPEND} )
|
|
||||||
"
|
|
||||||
|
|
||||||
BDEPEND="
|
|
||||||
>=app-arch/zstd-1.5.5:=
|
|
||||||
dev-libs/protobuf[protoc(+)]
|
|
||||||
virtual/pkgconfig
|
|
||||||
gui? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
app-alternatives/ninja
|
|
||||||
>=net-libs/nodejs-20.12.1
|
|
||||||
sys-apps/yarn
|
|
||||||
$(python_gen_cond_dep '
|
|
||||||
dev-python/pyqt6[${PYTHON_USEDEP}]
|
|
||||||
dev-python/wheel[${PYTHON_USEDEP}]
|
|
||||||
')
|
|
||||||
)
|
|
||||||
test? (
|
|
||||||
${RDEPEND}
|
|
||||||
app-text/dvipng
|
|
||||||
app-text/texlive
|
|
||||||
dev-libs/openssl
|
|
||||||
dev-util/cargo-nextest
|
|
||||||
$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]')
|
|
||||||
)
|
|
||||||
"
|
|
||||||
|
|
||||||
distutils_enable_sphinx python/sphinx \
|
|
||||||
dev-python/sphinx-autoapi \
|
|
||||||
dev-python/sphinx-rtd-theme
|
|
||||||
|
|
||||||
distutils_enable_tests pytest
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
"${FILESDIR}"/24.06.3/remove-yarn.patch
|
|
||||||
"${FILESDIR}"/24.04.1/remove-mypy-protobuf.patch
|
|
||||||
"${FILESDIR}"/24.04.1/revert-cert-store-hack.patch
|
|
||||||
"${FILESDIR}"/23.12.1/ninja-rules-for-cargo.patch
|
|
||||||
)
|
|
||||||
|
|
||||||
QA_FLAGS_IGNORED="usr/bin/anki-sync-server
|
|
||||||
usr/lib/python.*/site-packages/anki/_rsbridge.so"
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
export PROTOC_BINARY="${BROOT}"/usr/bin/protoc
|
|
||||||
export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
|
|
||||||
export ZSTD_SYS_USE_PKG_CONFIG=1
|
|
||||||
rust_pkg_setup
|
|
||||||
use gui && python-single-r1_pkg_setup
|
|
||||||
}
|
|
||||||
|
|
||||||
python_prepare_all() {
|
|
||||||
mv "${WORKDIR}"/node_modules out || die
|
|
||||||
|
|
||||||
# Expected files and directories
|
|
||||||
mkdir .git out/env || die
|
|
||||||
mkdir -p out/pyenv/bin || die
|
|
||||||
ln -s "${PYTHON}" out/pyenv/bin/python || die
|
|
||||||
|
|
||||||
if use doc; then
|
|
||||||
sed "/^REPO_ROOT/s|=.*|= \"${S}\"|" -i python/sphinx/conf.py || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Unpin Yarn
|
|
||||||
sed -e '/"type": "module"/s/,//' \
|
|
||||||
-e '/packageManager/d' -i package.json || die
|
|
||||||
|
|
||||||
# Not running the black formatter on generated files saves a dependency
|
|
||||||
sed '/subprocess/d' -i pylib/tools/hookslib.py || die
|
|
||||||
|
|
||||||
# Fix hardcoded runner location
|
|
||||||
export CARGO_TARGET_DIR="${S}"/out/rust
|
|
||||||
cbuild_dir="$(CHOST=${CBUILD:-${CHOST}} cargo_target_dir)"
|
|
||||||
sed "s,rust/release,${cbuild_dir##*out/}," \
|
|
||||||
-i build/ninja_gen/src/render.rs || die
|
|
||||||
# Separate src_configure from runner build
|
|
||||||
sed '/ConfigureBuild/d' -i build/ninja_gen/src/build.rs || die
|
|
||||||
distutils-r1_python_prepare_all
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
rm -r ftl/{core,qt}-repo || die
|
|
||||||
ln -s "${WORKDIR}"/anki-core-i18n-${COMMITS[ftl-core]} ftl/core-repo || die
|
|
||||||
ln -s "${WORKDIR}"/anki-desktop-ftl-${COMMITS[ftl-desktop]} ftl/qt-repo || die
|
|
||||||
|
|
||||||
mkdir out || die
|
|
||||||
echo -e "${COMMITS[anki]:0:8}" > out/buildhash || die
|
|
||||||
|
|
||||||
# None of our ninja implementations are n2
|
|
||||||
sed 's/which::which("n2").*/false,/' -i build/ninja_gen/src/build.rs || die
|
|
||||||
|
|
||||||
use gui && distutils-r1_src_prepare
|
|
||||||
}
|
|
||||||
|
|
||||||
_cbuild_cargo_build() {
|
|
||||||
CHOST=${CBUILD:-${CHOST}} cargo_src_compile "${@}"
|
|
||||||
}
|
|
||||||
|
|
||||||
python_configure_all() {
|
|
||||||
tc-env_build _cbuild_cargo_build -p configure
|
|
||||||
|
|
||||||
local -x NODE_BINARY="${BROOT}"/usr/bin/node \
|
|
||||||
YARN_BINARY="${BROOT}"/usr/bin/yarn \
|
|
||||||
OFFLINE_BUILD=1
|
|
||||||
if ! use debug; then
|
|
||||||
if tc-is-lto; then
|
|
||||||
local -x RELEASE=2
|
|
||||||
else
|
|
||||||
local -x RELEASE=1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
cargo_env "${cbuild_dir}"/configure || die
|
|
||||||
unset cbuild_dir
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
cargo_gen_config
|
|
||||||
cargo_src_configure
|
|
||||||
use gui && distutils-r1_src_configure
|
|
||||||
}
|
|
||||||
|
|
||||||
python_compile() {
|
|
||||||
tc-env_build _cbuild_cargo_build -p runner
|
|
||||||
cargo_env eninja -f out/build.ninja wheels
|
|
||||||
local w
|
|
||||||
for w in out/wheels/*.whl; do
|
|
||||||
distutils_wheel_install "${BUILD_DIR}"/install ${w}
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
if use gui; then
|
|
||||||
distutils-r1_src_compile
|
|
||||||
else
|
|
||||||
cargo_src_compile -p anki-sync-server
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test() {
|
|
||||||
epytest qt
|
|
||||||
epytest pylib
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test_all() {
|
|
||||||
local nextest_opts=(
|
|
||||||
cargo-verbose
|
|
||||||
failure-output=immediate
|
|
||||||
status-level=all
|
|
||||||
test-threads=$(get_makeopts_jobs)
|
|
||||||
)
|
|
||||||
if [[ ! ${CARGO_TERM_COLOR} ]]; then
|
|
||||||
[[ "${NOCOLOR}" = true || "${NOCOLOR}" = yes ]] && nextest_opts+=( color=never )
|
|
||||||
fi
|
|
||||||
nextest_opts=( ${nextest_opts[@]/#/--} )
|
|
||||||
cargo_env cargo nextest run ${nextest_opts[@]} || die
|
|
||||||
|
|
||||||
eninja -f out/build.ninja check_vitest
|
|
||||||
}
|
|
||||||
|
|
||||||
src_test() {
|
|
||||||
local -x ANKI_TEST_MODE=1
|
|
||||||
distutils-r1_src_test
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
pushd qt/bundle/lin > /dev/null || die
|
|
||||||
doman anki.1
|
|
||||||
doicon anki.{png,xpm}
|
|
||||||
domenu anki.desktop
|
|
||||||
insinto /usr/share/mime/packages
|
|
||||||
doins anki.xml
|
|
||||||
popd || die
|
|
||||||
python_newscript - anki <<-EOF
|
|
||||||
#!${EPREFIX}/usr/bin/python
|
|
||||||
import sys
|
|
||||||
from aqt import run
|
|
||||||
sys.exit(run())
|
|
||||||
EOF
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
greadme_stdin <<- EOF
|
|
||||||
Anki's user manual is located online at https://docs.ankiweb.net/
|
|
||||||
Anki's add-on developer manual is located online at https://addon-docs.ankiweb.net/
|
|
||||||
EOF
|
|
||||||
|
|
||||||
if use gui; then
|
|
||||||
greadme_stdin --append <<-EOF
|
|
||||||
Users with add-ons that still rely on Anki's Qt5 GUI
|
|
||||||
can temporarily set the environment variable ENABLE_QT5_COMPAT to 1 to have
|
|
||||||
Anki install the previous compatibility code. This option has additional
|
|
||||||
runtime dependencies. Please take a look at this package's optional runtime
|
|
||||||
features for a complete listing.
|
|
||||||
|
|
||||||
ENABLE_QT5_COMPAT may be removed in the future, so this is not a
|
|
||||||
long-term solution.
|
|
||||||
EOF
|
|
||||||
|
|
||||||
distutils-r1_src_install
|
|
||||||
else
|
|
||||||
cargo_src_install --path rslib/sync
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
greadme_pkg_preinst
|
|
||||||
use gui && xdg_pkg_preinst
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
greadme_pkg_postinst
|
|
||||||
if use gui; then
|
|
||||||
xdg_pkg_postinst
|
|
||||||
optfeature "LaTeX in cards" "app-text/texlive[extra] app-text/dvipng"
|
|
||||||
optfeature "sound support" media-video/mpv media-video/mplayer
|
|
||||||
optfeature "recording support" "media-sound/lame[frontend] dev-python/pyqt6[multimedia]"
|
|
||||||
optfeature "faster database operations" dev-python/orjson
|
|
||||||
optfeature "compatibility with Qt5-dependent add-ons" dev-python/pyqt6[dbus,printsupport]
|
|
||||||
optfeature "Vulkan driver" "media-libs/vulkan-loader dev-qt/qtbase:6[vulkan]
|
|
||||||
dev-qt/qtdeclarative:6[vulkan] dev-qt/qtwebengine:6[vulkan]"
|
|
||||||
|
|
||||||
einfo "You can customize the LaTeX header for your cards to fit your needs:"
|
|
||||||
einfo "Notes > Manage Note Types > [select a note type] > Options"
|
|
||||||
fi
|
|
||||||
}
|
|
@@ -1,40 +0,0 @@
|
|||||||
Fix the output path for Rust binaries in the Ninja file to match
|
|
||||||
Cargo's target directory when CARGO_BUILD_TARGET is set. This prevents
|
|
||||||
file-not-found errors for some build steps.
|
|
||||||
|
|
||||||
Provide the cargo-nextest binary ourselves to prevent network access.
|
|
||||||
Set test runner options in the ebuild.
|
|
||||||
|
|
||||||
From: Lucio Sauer <watermanpaint@posteo.net>
|
|
||||||
--- a/build/ninja_gen/src/cargo.rs
|
|
||||||
+++ b/build/ninja_gen/src/cargo.rs
|
|
||||||
@@ -61,6 +61,9 @@ impl RustOutput<'_> {
|
|
||||||
let mut path: Utf8PathBuf = rust_base.into();
|
|
||||||
if let Some(target) = target {
|
|
||||||
path = path.join(target);
|
|
||||||
+ } else {
|
|
||||||
+ let triple = std::env::var("CARGO_BUILD_TARGET").unwrap_or_default();
|
|
||||||
+ path = path.join(triple);
|
|
||||||
}
|
|
||||||
path = path.join(profile_output_dir(build_profile)).join(filename);
|
|
||||||
path.to_string()
|
|
||||||
@@ -152,19 +155,11 @@ impl BuildAction for CargoTest {
|
|
||||||
|
|
||||||
fn files(&mut self, build: &mut impl FilesHandle) {
|
|
||||||
build.add_inputs("", &self.inputs);
|
|
||||||
- build.add_inputs("", inputs![":cargo-nextest"]);
|
|
||||||
build.add_env_var("ANKI_TEST_MODE", "1");
|
|
||||||
build.add_output_stamp("tests/cargo_test");
|
|
||||||
}
|
|
||||||
|
|
||||||
fn on_first_instance(&self, build: &mut Build) -> Result<()> {
|
|
||||||
- build.add_action(
|
|
||||||
- "cargo-nextest",
|
|
||||||
- CargoInstall {
|
|
||||||
- binary_name: "cargo-nextest",
|
|
||||||
- args: "cargo-nextest --version 0.9.57 --locked",
|
|
||||||
- },
|
|
||||||
- )?;
|
|
||||||
setup_flags(build)
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,28 +0,0 @@
|
|||||||
https://github.com/nipunn1313/mypy-protobuf has not yet been packaged.
|
|
||||||
It adds typing information to Anki and is only needed for development.
|
|
||||||
|
|
||||||
I have packaged some of its test-dependencies on ::guru. Unfortunately,
|
|
||||||
I'm not too happy yet with the quality of the transitive test-dep
|
|
||||||
dev-python/pytest-mypy-plugins. Any help is welcome!
|
|
||||||
|
|
||||||
From: Lucio Sauer <watermanpaint@posteo.net>
|
|
||||||
--- a/build/configure/src/python.rs
|
|
||||||
+++ b/build/configure/src/python.rs
|
|
||||||
@@ -90,9 +90,7 @@ pub struct GenPythonProto {
|
|
||||||
impl BuildAction for GenPythonProto {
|
|
||||||
fn command(&self) -> &str {
|
|
||||||
"$protoc $
|
|
||||||
- --plugin=protoc-gen-mypy=$protoc-gen-mypy $
|
|
||||||
--python_out=$builddir/pylib $
|
|
||||||
- --mypy_out=$builddir/pylib $
|
|
||||||
-Iproto $in"
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -110,7 +108,6 @@ impl BuildAction for GenPythonProto {
|
|
||||||
.collect();
|
|
||||||
build.add_inputs("in", &self.proto_files);
|
|
||||||
build.add_inputs("protoc", inputs![":protoc_binary"]);
|
|
||||||
- build.add_inputs("protoc-gen-mypy", inputs![":pyenv:protoc-gen-mypy"]);
|
|
||||||
build.add_outputs("", python_outputs);
|
|
||||||
}
|
|
||||||
|
|
@@ -1,21 +0,0 @@
|
|||||||
pip_system_certs is a hack to force certifi to use the system
|
|
||||||
certificate store. Let's use dev-python/certifi, which is a hack of
|
|
||||||
its own, instead of introducing an automagical dependency.
|
|
||||||
|
|
||||||
From: Lucio Sauer <watermanpaint@posteo.net>
|
|
||||||
--- a/qt/aqt/__init__.py
|
|
||||||
+++ b/qt/aqt/__init__.py
|
|
||||||
@@ -6,13 +6,6 @@ from __future__ import annotations
|
|
||||||
import logging
|
|
||||||
import sys
|
|
||||||
|
|
||||||
-try:
|
|
||||||
- import pip_system_certs.wrapt_requests
|
|
||||||
-except ModuleNotFoundError:
|
|
||||||
- print(
|
|
||||||
- "Python module pip_system_certs is not installed. System certificate store and custom SSL certificates may not work. See: https://github.com/ankitects/anki/issues/3016"
|
|
||||||
- )
|
|
||||||
-
|
|
||||||
if sys.version_info[0] < 3 or sys.version_info[1] < 9:
|
|
||||||
raise Exception("Anki requires Python 3.9+")
|
|
||||||
|
|
@@ -1,58 +0,0 @@
|
|||||||
Pre-built node_modules allows us to run JS tests but we lose the ability to
|
|
||||||
hack node packages' source files in YARN_CACHE_FOLDER.
|
|
||||||
|
|
||||||
From: Lucio Sauer <watermanpaint@posteo.net>
|
|
||||||
--- a/build/ninja_gen/src/node.rs
|
|
||||||
+++ b/build/ninja_gen/src/node.rs
|
|
||||||
@@ -76,12 +76,11 @@ pub struct YarnInstall<'a> {
|
|
||||||
|
|
||||||
impl BuildAction for YarnInstall<'_> {
|
|
||||||
fn command(&self) -> &str {
|
|
||||||
- "$runner yarn $yarn $out"
|
|
||||||
+ "$runner yarn $out"
|
|
||||||
}
|
|
||||||
|
|
||||||
fn files(&mut self, build: &mut impl build::FilesHandle) {
|
|
||||||
build.add_inputs("", &self.package_json_and_lock);
|
|
||||||
- build.add_inputs("yarn", inputs![":yarn:bin"]);
|
|
||||||
build.add_outputs("out", vec!["node_modules/.marker"]);
|
|
||||||
for (key, value) in &self.exports {
|
|
||||||
let outputs: Vec<_> = value.iter().map(|o| format!("node_modules/{o}")).collect();
|
|
||||||
--- a/build/runner/src/yarn.rs
|
|
||||||
+++ b/build/runner/src/yarn.rs
|
|
||||||
@@ -1,36 +1,18 @@
|
|
||||||
// Copyright: Ankitects Pty Ltd and contributors
|
|
||||||
// License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
|
||||||
|
|
||||||
-use std::env;
|
|
||||||
use std::path::Path;
|
|
||||||
-use std::process::Command;
|
|
||||||
|
|
||||||
use clap::Args;
|
|
||||||
|
|
||||||
-use crate::run::run_command;
|
|
||||||
-
|
|
||||||
#[derive(Args)]
|
|
||||||
pub struct YarnArgs {
|
|
||||||
- yarn_bin: String,
|
|
||||||
stamp: String,
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn setup_yarn(args: YarnArgs) {
|
|
||||||
link_node_modules();
|
|
||||||
|
|
||||||
- if env::var("OFFLINE_BUILD").is_ok() {
|
|
||||||
- println!("OFFLINE_BUILD is set");
|
|
||||||
- println!("Running yarn with '--offline' and '--ignore-scripts'.");
|
|
||||||
- run_command(
|
|
||||||
- Command::new(&args.yarn_bin)
|
|
||||||
- .arg("install")
|
|
||||||
- .arg("--offline")
|
|
||||||
- .arg("--ignore-scripts"),
|
|
||||||
- );
|
|
||||||
- } else {
|
|
||||||
- run_command(Command::new(&args.yarn_bin).arg("install"));
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
std::fs::write(args.stamp, b"").unwrap();
|
|
||||||
}
|
|
@@ -1,31 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="person" proxied="yes">
|
|
||||||
<email>watermanpaint@posteo.net</email>
|
|
||||||
<name>Lucio Sauer</name>
|
|
||||||
</maintainer>
|
|
||||||
<maintainer type="project" proxied="proxy">
|
|
||||||
<email>proxy-maint@gentoo.org</email>
|
|
||||||
<name>Proxy Maintainers</name>
|
|
||||||
</maintainer>
|
|
||||||
<longdescription lang="en">
|
|
||||||
Anki is a program designed to help you remember facts
|
|
||||||
(such as words and phrases in a foreign language) as
|
|
||||||
quickly, easily and efficiently as possible.
|
|
||||||
</longdescription>
|
|
||||||
<upstream>
|
|
||||||
<bugs-to>https://forums.ankiweb.net/c/anki/21</bugs-to>
|
|
||||||
<changelog>https://github.com/ankitects/anki/releases</changelog>
|
|
||||||
<doc>https://docs.ankiweb.net/</doc>
|
|
||||||
<maintainer status="active">
|
|
||||||
<name>Damien Elmes</name>
|
|
||||||
</maintainer>
|
|
||||||
<remote-id type="github">ankitects/anki</remote-id>
|
|
||||||
</upstream>
|
|
||||||
<use>
|
|
||||||
<flag name="gui">
|
|
||||||
Enable support for a graphical user interface. Disable for standalone sync server.
|
|
||||||
</flag>
|
|
||||||
</use>
|
|
||||||
</pkgmetadata>
|
|
@@ -1,3 +1,5 @@
|
|||||||
DIST saundersp-toolbox-20250330.tar.gz 8926 BLAKE2B 57c18a88cc151fb34c71d8ef9d16d5ef54291e09133982b67f2d875c422f9dfa98be64c2e5dfb0efeb8c3b18bbfa96c9f1822010e819d168b7a64e3b6f1f6b44 SHA512 6ab187db0b1a0d3bdebde16fdb4421611cf4adfcee0f732a140d209237c2669e0e12a7746a08f4acdf8bdb814aed6b7215d1fd3b488b3a42e0fa345dff797d98
|
DIST saundersp-toolbox-20250330.tar.gz 8926 BLAKE2B 57c18a88cc151fb34c71d8ef9d16d5ef54291e09133982b67f2d875c422f9dfa98be64c2e5dfb0efeb8c3b18bbfa96c9f1822010e819d168b7a64e3b6f1f6b44 SHA512 6ab187db0b1a0d3bdebde16fdb4421611cf4adfcee0f732a140d209237c2669e0e12a7746a08f4acdf8bdb814aed6b7215d1fd3b488b3a42e0fa345dff797d98
|
||||||
|
DIST saundersp-toolbox-20250730.tar.gz 8919 BLAKE2B d7715cf9abfa5a3281a9509d5b9fc617eea86a40aa4e2562525b8949fd7702c66218df6ccae978d40dab2fd12c4fcc787e1559fdc954d11338774c96237857af SHA512 4a91dd32a00651240d8dff384cbe1750b0547ea6c1e0d772c235c09cfb580d09dba7e8212855f308614537a6c117a133da06898a8dee560bdc4193b44d8baa57
|
||||||
EBUILD saundersp-toolbox-20250330.ebuild 1088 BLAKE2B 1e00a40248bcbf54c06beaa8ee50c58a38ddb2d0ef64a1cefb53391860eb95702bd67d8fda3230669959cac5a6775ba1faf7e203e1b6bebd4622ba0a6f1ca65a SHA512 21aab9adbbdb94a720be11d1d583e4b447eadb3f7501ca4feed6dfa52cbc9d21be8f0d9da345483749731a89250cd9d3d7eb154dccfdfc3f55fa3b7490d126d7
|
EBUILD saundersp-toolbox-20250330.ebuild 1088 BLAKE2B 1e00a40248bcbf54c06beaa8ee50c58a38ddb2d0ef64a1cefb53391860eb95702bd67d8fda3230669959cac5a6775ba1faf7e203e1b6bebd4622ba0a6f1ca65a SHA512 21aab9adbbdb94a720be11d1d583e4b447eadb3f7501ca4feed6dfa52cbc9d21be8f0d9da345483749731a89250cd9d3d7eb154dccfdfc3f55fa3b7490d126d7
|
||||||
|
EBUILD saundersp-toolbox-20250730.ebuild 1088 BLAKE2B 8246a4bc9dee423e96ed71f2b412e64f66b21d906337928f2864cb48b9d177c753c38f88e6690ebd1f0a09876e829a6f1ca398569a76760de37514c1b4d2e3d1 SHA512 8ed7eff7923b239914ce508262350e3b9193f1961052105b2e37185cacd2d98b0fbe0d29834b53c130a8c2c5942bd88f380f34558f392f4c2d2d574d121b2161
|
||||||
MISC metadata.xml 794 BLAKE2B 33977ea7abee51b1cedfb57c09158b1e55165d8282d622df75701f15c14b58f36253c6791de139c05b4b763b41801c072beb56226aa89278e85783fdd3a55b8d SHA512 10531279813cbe72294fcdd1430549ce485b9221640db6ae8de860ca747b1fd9134bdcb9a8b1536ca196298e83b7b3abae1d1c92f953bae2c0ad81abec9078dd
|
MISC metadata.xml 794 BLAKE2B 33977ea7abee51b1cedfb57c09158b1e55165d8282d622df75701f15c14b58f36253c6791de139c05b4b763b41801c072beb56226aa89278e85783fdd3a55b8d SHA512 10531279813cbe72294fcdd1430549ce485b9221640db6ae8de860ca747b1fd9134bdcb9a8b1536ca196298e83b7b3abae1d1c92f953bae2c0ad81abec9078dd
|
||||||
|
32
app-misc/saundersp-toolbox/saundersp-toolbox-20250730.ebuild
Normal file
32
app-misc/saundersp-toolbox/saundersp-toolbox-20250730.ebuild
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# Copyright 2025 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
DESCRIPTION='Compilation of useful scripts and small programs'
|
||||||
|
HOMEPAGE='https://git.saundersp.com/saundersp/toolbox'
|
||||||
|
GIT_COMMIT='939b373b226df742b53fd38bf043531d2fd691bf'
|
||||||
|
SRC_URI="https://git.saundersp.com/saundersp/toolbox/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz"
|
||||||
|
S="${WORKDIR}/toolbox"
|
||||||
|
|
||||||
|
LICENSE='MIT'
|
||||||
|
SLOT='0'
|
||||||
|
KEYWORDS='~amd64 ~arm ~arm64 ~x86'
|
||||||
|
IUSE="+format-time +format-time-ns +format-bytes +gcd +compress +convertUTF8 +extract"
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
use format-bytes && emake format_bytes/bin/format_bytes
|
||||||
|
use format-time && emake format_time/bin/format_time
|
||||||
|
use format-time-ns && emake format_time/bin/format_time_ns
|
||||||
|
use gcd && emake gcd/bin/gcd
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
use format-bytes && dobin format_bytes/bin/format_bytes
|
||||||
|
use format-time && dobin format_time/bin/format_time
|
||||||
|
use format-time-ns && dobin format_time/bin/format_time_ns
|
||||||
|
use gcd && dobin gcd/bin/gcd
|
||||||
|
use compress && dobin compress
|
||||||
|
use convertUTF8 && dobin convertUTF8
|
||||||
|
use extract && dobin extract
|
||||||
|
}
|
@@ -1,7 +0,0 @@
|
|||||||
AUX calibre-7.0.0-jxr-test.patch 935 BLAKE2B bc38ea2f2d10ec4859ee03ab5d18048df4cf0af5ce4076efc013013bc975966390d618c43ce621675e3b8ee8f929bfaebaa72cf6bb7d8dea544bca77d9772b60 SHA512 db8da42fdcf5b5d5dfad35c128e394cf8f51e57dda6cd1a482803429738515fc1a8b338c711679a11acb93678f35f10883e1bf282e1443ccaafe2eb470fbbfee
|
|
||||||
AUX calibre-server-3.conf 541 BLAKE2B 06593633721e6adf2cf2077dffa83953eea46ccdcdc857ad468a9b74788326e9424f6ab9058be344dbbac8e49d343f5a1e53ddb486f2018b77319a7f8f713cf4 SHA512 12ef793a5b6ffd4413f780a13cad63927a95f15d17d85d4229eb5005ead68e51779abb822f9898ab5ae8c2094affeec1f9e85c34f109499739e6726b7641542a
|
|
||||||
AUX calibre-server-3.init 1796 BLAKE2B f87d785d6f6fc10fa648d40944ec8538027854bb872d9a3be6b5b35b0abf3cda1e4e93874a9422914da5eb4287f193459733956e3f1e25e61bec0c214c552c99 SHA512 88110ded1b9c6cf8d3bfc3d5889654f77578f9d299e88daea9023767b930082e00fbddbb92a6e43c46d900248f3684232d93396ec1d0e784c7ec14b44783f98a
|
|
||||||
DIST calibre-8.5.0.tar.xz 44973964 BLAKE2B 204142e6e5acfc9866dfee312058271eca236445e54386ed4c87e62be4e48719d41db3e84759a43bcf3b4560aa6dbf97fcf9c47490828703d45f9646da92e643 SHA512 20bbfa4bcdcb712f1c234c7328969ba2c02c2f27d9fa757d65b492bbc70a96ae8e7628dae0a6e224d324886d568d8c8c237d438249745feb17da1969e9e15a5c
|
|
||||||
DIST calibre-8.5.0.tar.xz.sig 566 BLAKE2B 5fc5c47e7d19a4fd8b0c6999242d4f5c842e8d8b8a076197d1f514b4a1bb90829083991e1628327ec7a6d71ee3e9f4936a7150e7723581a8e0bbd2aa99459279 SHA512 79666a9996048d889eaf5c192717224ac85d70c2a721a3e36b570b6e06fe2716ec749977918ff9fdda71e5d64cc21b1cca2718f549bfbc2b04e2cf9ef2b66c92
|
|
||||||
EBUILD calibre-8.5.0.ebuild 8340 BLAKE2B fda5f93301c705f8b04deb1f6597902ffafed32f19e9237f50026d58a59931c1a8a755ffa03aa65d7d35f0dd427c39b8fb901ffab02a989bd1fe3544ac03b641 SHA512 d7fe8fcbe231721b73f3559dc8ddf6b01145c2ea94d40b886b87c6c9e7ae44b4b36f43bf33c619169296cd1dde1ae649bf66db97aba160f4db0bcd04a0e3926d
|
|
||||||
MISC metadata.xml 642 BLAKE2B 9d32b118040e9907bc689fc9575e5fdc76624809d9ae4e16feb860f5779846d5cd51ff0605ed19116ef564c62c7a7a75dc3532765bef5c7b42447d47dc4df152 SHA512 9050d849ad74a20e801f3d762aff8ec16c7f7c20efa5bdc46e9a2f0b3e505a511116d55ce65f270ad1d53b6fcaadc61d7039aa0b0a83f4bb3af0cec065adf41c
|
|
@@ -1,254 +0,0 @@
|
|||||||
# Copyright 1999-2025 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{10..13} )
|
|
||||||
PYTHON_REQ_USE='sqlite,ssl'
|
|
||||||
|
|
||||||
inherit edo toolchain-funcs python-single-r1 qmake-utils verify-sig xdg
|
|
||||||
|
|
||||||
DESCRIPTION='Ebook management application'
|
|
||||||
HOMEPAGE='https://calibre-ebook.com/'
|
|
||||||
SRC_URI="
|
|
||||||
https://download.calibre-ebook.com/${PV}/${P}.tar.xz
|
|
||||||
verify-sig? ( https://calibre-ebook.com/signatures/${P}.tar.xz.sig )
|
|
||||||
"
|
|
||||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/kovidgoyal.gpg
|
|
||||||
|
|
||||||
LICENSE='
|
|
||||||
GPL-3+
|
|
||||||
GPL-3
|
|
||||||
GPL-2+
|
|
||||||
GPL-2
|
|
||||||
GPL-1+
|
|
||||||
LGPL-3+
|
|
||||||
LGPL-2.1+
|
|
||||||
LGPL-2.1
|
|
||||||
BSD
|
|
||||||
MIT
|
|
||||||
Old-MIT
|
|
||||||
Apache-2.0
|
|
||||||
public-domain
|
|
||||||
|| ( Artistic GPL-1+ )
|
|
||||||
CC-BY-3.0
|
|
||||||
OFL-1.1
|
|
||||||
PSF-2
|
|
||||||
'
|
|
||||||
SLOT='0'
|
|
||||||
KEYWORDS='~amd64 ~arm64'
|
|
||||||
IUSE='+font-subsetting ios speech +system-mathjax test +udisks unrar'
|
|
||||||
|
|
||||||
RESTRICT='!test? ( test )'
|
|
||||||
|
|
||||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
|
||||||
|
|
||||||
# Qt slotted dependencies are used because the libheadless.so plugin links to
|
|
||||||
# QT_*_PRIVATE_ABI. It only uses core/gui/dbus.
|
|
||||||
COMMON_DEPEND="${PYTHON_DEPS}
|
|
||||||
app-i18n/uchardet
|
|
||||||
>=app-text/hunspell-1.7:=
|
|
||||||
>=app-text/podofo-0.10.0:=
|
|
||||||
app-text/poppler[utils]
|
|
||||||
dev-libs/hyphen:=
|
|
||||||
>=dev-libs/icu-57.1:=
|
|
||||||
dev-libs/openssl:=
|
|
||||||
dev-libs/snowball-stemmer:=
|
|
||||||
$(python_gen_cond_dep '
|
|
||||||
>=dev-python/apsw-3.25.2_p1[${PYTHON_USEDEP}]
|
|
||||||
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/css-parser-1.0.4[${PYTHON_USEDEP}]
|
|
||||||
dev-python/dnspython[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/feedparser-5.2.1[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/html2text-2019.8.11[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/html5-parser-0.4.9[${PYTHON_USEDEP}]
|
|
||||||
dev-python/jeepney[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/lxml-3.8.0[${PYTHON_USEDEP}]
|
|
||||||
dev-python/lxml-html-clean[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/mechanize-0.3.5[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/msgpack-0.6.2[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/netifaces-0.10.5[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pillow-3.2.0[jpeg,truetype,webp,zlib,${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/psutil-4.3.0[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pychm-0.8.6[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pykakasi[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/pygments-2.3.1[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/python-dateutil-2.5.3[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pyqt6[gui,network,opengl,printsupport,quick,svg,widgets,${PYTHON_USEDEP}]
|
|
||||||
dev-python/pyqt6-webengine[widgets,${PYTHON_USEDEP}]
|
|
||||||
dev-python/regex[${PYTHON_USEDEP}]
|
|
||||||
dev-python/xxhash[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/zeroconf-0.75.0[${PYTHON_USEDEP}]
|
|
||||||
')
|
|
||||||
dev-qt/qtbase:6=[gui,widgets]
|
|
||||||
dev-qt/qtimageformats:6
|
|
||||||
dev-util/desktop-file-utils
|
|
||||||
dev-util/gtk-update-icon-cache
|
|
||||||
media-fonts/liberation-fonts
|
|
||||||
media-libs/fontconfig:=
|
|
||||||
>=media-libs/freetype-2:=
|
|
||||||
>=media-libs/libmtp-1.1.11:=
|
|
||||||
>=media-gfx/optipng-0.7.6
|
|
||||||
>=media-video/ffmpeg-6:=
|
|
||||||
virtual/libusb:1=
|
|
||||||
x11-misc/shared-mime-info
|
|
||||||
>=x11-misc/xdg-utils-1.0.2-r2
|
|
||||||
font-subsetting? ( $(python_gen_cond_dep 'dev-python/fonttools[${PYTHON_USEDEP}]') )
|
|
||||||
ios? (
|
|
||||||
>=app-pda/usbmuxd-1.0.8
|
|
||||||
>=app-pda/libimobiledevice-1.2.0
|
|
||||||
)
|
|
||||||
speech? (
|
|
||||||
$(python_gen_cond_dep 'app-accessibility/speech-dispatcher[python,${PYTHON_USEDEP}]')
|
|
||||||
dev-python/pyqt6[multimedia,speech]
|
|
||||||
)
|
|
||||||
system-mathjax? ( >=dev-libs/mathjax-3:= )
|
|
||||||
udisks? ( virtual/libudev )
|
|
||||||
unrar? ( dev-python/unrardll )
|
|
||||||
"
|
|
||||||
RDEPEND="${COMMON_DEPEND}
|
|
||||||
udisks? ( sys-fs/udisks:2 )"
|
|
||||||
DEPEND="${COMMON_DEPEND}
|
|
||||||
test? ( $(python_gen_cond_dep '>=dev-python/chardet-3.0.3[${PYTHON_USEDEP}]') )
|
|
||||||
"
|
|
||||||
BDEPEND="$(python_gen_cond_dep '
|
|
||||||
>=dev-python/pyqt-builder-1.10.3[${PYTHON_USEDEP}]
|
|
||||||
>=dev-python/sip-5[${PYTHON_USEDEP}]
|
|
||||||
')
|
|
||||||
virtual/pkgconfig
|
|
||||||
system-mathjax? ( dev-lang/rapydscript-ng )
|
|
||||||
verify-sig? ( sec-keys/openpgp-keys-kovidgoyal )
|
|
||||||
"
|
|
||||||
|
|
||||||
PATCHES=(
|
|
||||||
# Skip calling a binary (JxrDecApp) from libjxr which is used for tests
|
|
||||||
# We don't (yet?) package libjxr and it seems to be dead upstream
|
|
||||||
# (last commit in 2017)
|
|
||||||
"${FILESDIR}/${PN}-7.0.0-jxr-test.patch"
|
|
||||||
)
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
default
|
|
||||||
|
|
||||||
# Warning:
|
|
||||||
#
|
|
||||||
# While it might be rather tempting to add yet another sed here,
|
|
||||||
# please don't. There have been several bugs in Gentoo's packaging
|
|
||||||
# of calibre from seds-which-become-stale. Please consider
|
|
||||||
# creating a patch instead, but in any case, run the test suite
|
|
||||||
# and ensure it passes.
|
|
||||||
#
|
|
||||||
# If in doubt about a problem, checking Fedora's packaging is recommended.
|
|
||||||
|
|
||||||
# Disable unnecessary privilege dropping for bug #287067.
|
|
||||||
sed -e 's:if os.geteuid() == 0:if False and os.geteuid() == 0:' \
|
|
||||||
-i setup/install.py || die 'sed failed to patch install.py'
|
|
||||||
|
|
||||||
# This is only ever used at build time. It contains a small embedded copy
|
|
||||||
# of the rapydscript-ng compiler usable inside of qtwebengine, if you don't
|
|
||||||
# have rapydscript-ng (a nodejs package) itself installed. Its only purpose
|
|
||||||
# is to build some resources that come bundled in dist tarballs already...
|
|
||||||
# and which we may also need to regenerate e.g. to use system-mathjax.
|
|
||||||
#
|
|
||||||
# However, running qtwebengine violates the portage sandbox (among other
|
|
||||||
# things, it tries to create directories in /usr! amazing) so this is a
|
|
||||||
# wash anyway. The only real solution here is to package rapydscript-ng.
|
|
||||||
#
|
|
||||||
# We do not need it at build time, and *no one* needs it at install time.
|
|
||||||
# Delete the cruft.
|
|
||||||
rm -r resources/rapydscript/ || die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
# TODO: get qmake called by setup.py to respect CC and CXX too
|
|
||||||
tc-export CC CXX
|
|
||||||
|
|
||||||
# bug 821871
|
|
||||||
local MY_LIBDIR="${ESYSROOT}/usr/$(get_libdir)"
|
|
||||||
export FT_LIB_DIR="${MY_LIBDIR}" HUNSPELL_LIB_DIR="${MY_LIBDIR}" PODOFO_LIB_DIR="${MY_LIBDIR}"
|
|
||||||
export QMAKE="$(qt6_get_bindir)/qmake"
|
|
||||||
|
|
||||||
edo ${EPYTHON} setup.py build
|
|
||||||
edo ${EPYTHON} setup.py gui
|
|
||||||
|
|
||||||
# A few different resources are bundled in the distfile by default, because
|
|
||||||
# not all systems necessarily have them. We un-vendor them, using the
|
|
||||||
# upstream integrated approach if possible. See setup/revendor.py and
|
|
||||||
# consider migrating other resources to this if they do not use it, in
|
|
||||||
# *preference* over manual rm'ing.
|
|
||||||
edo ${EPYTHON} setup.py liberation_fonts \
|
|
||||||
--path-to-liberation_fonts "${EPREFIX}"/usr/share/fonts/liberation-fonts \
|
|
||||||
--system-liberation_fonts
|
|
||||||
if use system-mathjax; then
|
|
||||||
edo ${EPYTHON} setup.py mathjax --path-to-mathjax "${EPREFIX}"/usr/share/mathjax --system-mathjax
|
|
||||||
edo ${EPYTHON} setup.py rapydscript
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
src_test() {
|
|
||||||
# Skipped tests:
|
|
||||||
local _test_excludes=(
|
|
||||||
# unpackaged Python dependency: py7zr
|
|
||||||
7z
|
|
||||||
# unpackaged Python dependency: pyzstd
|
|
||||||
test_zstd
|
|
||||||
# unpackaged TTS backend (optional at runtime): https://github.com/rhasspy/piper
|
|
||||||
piper
|
|
||||||
# tests if a completely unused module is bundled
|
|
||||||
pycryptodome
|
|
||||||
|
|
||||||
$(usev !speech speech_dispatcher)
|
|
||||||
$(usev !unrar test_unrar)
|
|
||||||
|
|
||||||
# undocumented reasons
|
|
||||||
test_mem_leaks
|
|
||||||
test_searching
|
|
||||||
)
|
|
||||||
|
|
||||||
# Some of these tests weren't practical to split out into distinct tests, so
|
|
||||||
# have a different control mechanism
|
|
||||||
use speech || export SKIP_SPEECH_TESTS=1
|
|
||||||
|
|
||||||
edo ${PYTHON} setup.py test "${_test_excludes[@]/#/--exclude-test-name=}"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
# Bug #352625 - Some LANGUAGE values can trigger the following ValueError:
|
|
||||||
# File '/usr/lib/python2.6/locale.py', line 486, in getdefaultlocale
|
|
||||||
# return _parse_localename(localename)
|
|
||||||
# File '/usr/lib/python2.6/locale.py', line 418, in _parse_localename
|
|
||||||
# raise ValueError, 'unknown locale: %s' % localename
|
|
||||||
#ValueError: unknown locale: 46
|
|
||||||
export -n LANG LANGUAGE ${!LC_*}
|
|
||||||
export LC_ALL=C.utf8 # bug #709682
|
|
||||||
|
|
||||||
# Bug #295672 - Avoid sandbox violation in ~/.config by forcing
|
|
||||||
# variables to point to our fake temporary $HOME.
|
|
||||||
export HOME="${T}/fake_homedir"
|
|
||||||
export CALIBRE_CONFIG_DIRECTORY="${HOME}/.config/calibre"
|
|
||||||
mkdir -p "${CALIBRE_CONFIG_DIRECTORY}" || die
|
|
||||||
|
|
||||||
addpredict /dev/dri #665310
|
|
||||||
|
|
||||||
# If this directory doesn't exist, zsh completion won't install
|
|
||||||
dodir /usr/share/zsh/site-functions
|
|
||||||
|
|
||||||
edo "${PYTHON}" setup.py install \
|
|
||||||
--staging-root="${ED}/usr" \
|
|
||||||
--prefix="${EPREFIX}/usr" \
|
|
||||||
--libdir="${EPREFIX}/usr/$(get_libdir)" \
|
|
||||||
--staging-libdir="${ED}/usr/$(get_libdir)" \
|
|
||||||
--system-plugins-location="${EPREFIX}/usr/share/calibre/system-plugins"
|
|
||||||
|
|
||||||
cp -r man-pages/ "${ED}"/usr/share/man || die
|
|
||||||
|
|
||||||
find "${ED}"/usr/share -type d -empty -delete || die
|
|
||||||
|
|
||||||
python_fix_shebang "${ED}/usr/bin"
|
|
||||||
|
|
||||||
python_optimize "${ED}"/usr/"$(get_libdir)"/calibre "${D}/$(python_get_sitedir)"
|
|
||||||
|
|
||||||
newinitd "${FILESDIR}"/calibre-server-3.init calibre-server
|
|
||||||
newconfd "${FILESDIR}"/calibre-server-3.conf calibre-server
|
|
||||||
}
|
|
@@ -1,27 +0,0 @@
|
|||||||
diff --git a/src/calibre/utils/img.py b/src/calibre/utils/img.py
|
|
||||||
index b61627b63e..ff51c76e75 100644
|
|
||||||
--- a/src/calibre/utils/img.py
|
|
||||||
+++ b/src/calibre/utils/img.py
|
|
||||||
@@ -129,8 +129,6 @@ def image_from_data(data):
|
|
||||||
i = QImage()
|
|
||||||
if not i.loadFromData(data):
|
|
||||||
q = what(None, data)
|
|
||||||
- if q == 'jxr':
|
|
||||||
- return load_jxr_data(data)
|
|
||||||
raise NotImage(f'Not a valid image (detected type: {q})')
|
|
||||||
return i
|
|
||||||
|
|
||||||
@@ -693,13 +691,6 @@ def test(): # {{{
|
|
||||||
despeckle_image(img)
|
|
||||||
remove_borders_from_image(img)
|
|
||||||
image_to_data(img, fmt='GIF')
|
|
||||||
- p = subprocess.Popen([get_exe_path('JxrDecApp'), '-h'],
|
|
||||||
- creationflags=subprocess.DETACHED_PROCESS if iswindows else 0,
|
|
||||||
- stdout=subprocess.PIPE)
|
|
||||||
- raw, _ = p.communicate()
|
|
||||||
- p.wait()
|
|
||||||
- if b'JPEG XR Decoder Utility' not in raw:
|
|
||||||
- raise SystemExit('Failed to run JxrDecApp')
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
|
|
@@ -1,13 +0,0 @@
|
|||||||
# /etc/conf.d/calibre-server
|
|
||||||
# Change this to the user you want to run calibre-server as.
|
|
||||||
# You may specify a group too, after a colon
|
|
||||||
# NOTE: This must be set and not to root!
|
|
||||||
CALIBRE_USER=
|
|
||||||
|
|
||||||
# Set the path of the library to serve.
|
|
||||||
# Defaults to the default location for CALIBRE_USER.
|
|
||||||
#CALIBRE_LIBRARY='<user home directory>/Calibre Library'
|
|
||||||
|
|
||||||
# Extra options to pass to calibre-server.
|
|
||||||
# See the calibre-server man page for more options.
|
|
||||||
#CALIBRE_SERVER_OPTS="--userdb /srv/calibre/users.sqlite --enable-auth --worker-count 10 --port 8080"
|
|
@@ -1,58 +0,0 @@
|
|||||||
#!/sbin/openrc-run
|
|
||||||
# Copyright 1999-2012 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License, v2 or later
|
|
||||||
|
|
||||||
depend() {
|
|
||||||
need net
|
|
||||||
need localmount
|
|
||||||
after bootmisc
|
|
||||||
}
|
|
||||||
|
|
||||||
checkconfig() {
|
|
||||||
if [ "${CALIBRE_USER}" = "" -o "${CALIBRE_USER}" = "root" ] ; then
|
|
||||||
eerror "Please edit /etc/conf.d/calibre-server"
|
|
||||||
eerror "You have to specify a user to run calibre-server as, as we will not run it as root!"
|
|
||||||
eerror "Modify CALIBRE_USER to your needs (you can also add a group, after a colon)"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
if ! getent passwd "${CALIBRE_USER%:*}" >/dev/null ; then
|
|
||||||
eerror "Please edit /etc/conf.d/calibre-server"
|
|
||||||
eerror "Your user has to exist!"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
if [ "${CALIBRE_USER%:*}" != "${CALIBRE_USER}" ] ; then
|
|
||||||
if ! getent group "${CALIBRE_USER#*:}" >/dev/null ; then
|
|
||||||
eerror "Please edit /etc/conf.d/calibre-server"
|
|
||||||
eerror "Your group has to exist too!"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if [ "${CALIBRE_LIBRARY}" = "" ] ; then
|
|
||||||
CALIBRE_USER_HOME=$(getent passwd "${CALIBRE_USER%:*}" | cut -d ':' -f 6)
|
|
||||||
CALIBRE_LIBRARY="${CALIBRE_USER_HOME}/Calibre Library"
|
|
||||||
fi
|
|
||||||
if [ ! -d "${CALIBRE_LIBRARY}" ] ; then
|
|
||||||
eerror "Please edit /etc/conf.d/calibre-server"
|
|
||||||
eerror "The Calibre library, '${CALIBRE_LIBRARY},' does not exist."
|
|
||||||
eerror "Please modify CALIBRE_LIBRARY to point to a valid library."
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
start() {
|
|
||||||
checkconfig || return $?
|
|
||||||
local pidfile=/var/run/calibre-server.pid
|
|
||||||
ebegin "Starting calibre-server"
|
|
||||||
start-stop-daemon --user "${CALIBRE_USER}" \
|
|
||||||
--pidfile "${pidfile}" --make-pidfile --background --exec /usr/bin/calibre-server \
|
|
||||||
-- ${CALIBRE_OPTS} "${CALIBRE_LIBRARY}"
|
|
||||||
eend $?
|
|
||||||
}
|
|
||||||
|
|
||||||
stop() {
|
|
||||||
ebegin "Stopping calibre-server"
|
|
||||||
start-stop-daemon --stop --user "${CALIBRE_USER}" \
|
|
||||||
--pidfile /var/run/calibre-server.pid
|
|
||||||
eend $?
|
|
||||||
}
|
|
@@ -1,17 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="person">
|
|
||||||
<email>eschwartz@gentoo.org</email>
|
|
||||||
<name>Eli Schwartz</name>
|
|
||||||
</maintainer>
|
|
||||||
<upstream>
|
|
||||||
<remote-id type="github">kovidgoyal/calibre</remote-id>
|
|
||||||
<changelog>https://calibre-ebook.com/whats-new</changelog>
|
|
||||||
</upstream>
|
|
||||||
<use>
|
|
||||||
<flag name="font-subsetting">Enable font subsetting support</flag>
|
|
||||||
<flag name="system-mathjax">Use a system copy of mathjax</flag>
|
|
||||||
<flag name="unrar">Enable support for comic books compressed with the non-free Rar format</flag>
|
|
||||||
</use>
|
|
||||||
</pkgmetadata>
|
|
6
app-text/ltex-ls/Manifest
Normal file
6
app-text/ltex-ls/Manifest
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
AUX languagetool.desktop 191 BLAKE2B 726e670645f78c3ea11c788a6440116753d66cf9886155ffa0f9cfad7deab000891276526aea17bae4977472c5d154837fb779de6abdb9cbe47148ce6ff96fe7 SHA512 d54542d4e742e83a7514857a11756f66966a9714f0f7b781aabd635b14cfa4f4d2b0fc1f98b2148af92e469fe877ffb61995c2abe5f59678174eae1d9c3dcbfe
|
||||||
|
AUX languagetool.initd 473 BLAKE2B 74f55cfaf5b6c2e2fa166533c031408dc7e2e2b1882e6e09227af38e500f12481a551e8cec166620c73e671f00063cb63cc9dda500355110ff048d806dfa2d77 SHA512 fb9ab4fa28df1f43791995557fc4568ee79f7af7991481d295c28739c975c6648999676ea078ee852dc3dc9f49fbb9945c9dc571c385dd4db3d69ca5bf501623
|
||||||
|
AUX logo.svg 2824 BLAKE2B 7653478b44ebd3dc80691849751745aba14a652d1ffaf52ef27910a52fae15b39c9ef0224795f698b1ac6f95a3e677ee46603b29261dff0d50d9eedba5e09de5 SHA512 501e3dee99f762556774f42829a9e450fc412271a7ade87f17ffb211929d24564ea3385b2bfc1c261e46d4b0b3562be62903b111ecd1c7dacb97c3c8ffb0d6d5
|
||||||
|
DIST ltex-ls-16.0.0.tar.gz 243227042 BLAKE2B 94b3705e03a5fb6bdf127738d7f539bd28c21e225fb8ddf428a97dd12cbbaa5e7abb440341f3456495a631a32f8d5df070e98159450d53aecef82e3ecb6e22d4 SHA512 660a9763706ef9402c34b05cc7d1f977a848d9b1fb6f268ad5d4f1fca995df7e1cf82724b616a2efe016ca9880c6d7d07cb21132515c04343ab24642d0f73e0d
|
||||||
|
EBUILD ltex-ls-16.0.0.ebuild 2677 BLAKE2B 8bfeaa417d2f3a1bdfeade147f42a615451cfbe6ef86092a4e4af3e908876fe1f9683e023acb646dd35befba8758e905a8650b488da4db703ae567771949bde1 SHA512 249f01de15e2ddfe15cb35935e46fc508a01a9243c9c70c487c9e9364f8bfa2f386b4747a415f201e853bf040e906fe5eba7a37446bc50c45e1a402ee322fdb9
|
||||||
|
MISC metadata.xml 341 BLAKE2B 079fcdfbb5074cf8f1eb5ae2ebc4c20e4047b8b4f5303e6c30756b87988584c93943d5064d1902deddae2729ea5bb06a4814075b46b05c9f717a49c004052f57 SHA512 f7143d9495597a9a51043c9bc6bdb66e6644982621c1e1802d2ad297a2398d2084c7147eb107f2b67c6ab5c68d53a8f0188bf10c8efc70ef0af102f483afd658
|
10
app-text/ltex-ls/files/languagetool.desktop
Normal file
10
app-text/ltex-ls/files/languagetool.desktop
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=LanguageTool
|
||||||
|
Exec=languagetool-gui
|
||||||
|
Type=Application
|
||||||
|
Terminal=false
|
||||||
|
GenericName=LanguageTool
|
||||||
|
Comment=LanguageTool
|
||||||
|
StartupNotify=false
|
||||||
|
Icon=languagetool
|
||||||
|
Categories=Office;
|
19
app-text/ltex-ls/files/languagetool.initd
Normal file
19
app-text/ltex-ls/files/languagetool.initd
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/sbin/openrc-run
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
after modules
|
||||||
|
}
|
||||||
|
|
||||||
|
start() {
|
||||||
|
ebegin "Starting languagetool [server]"
|
||||||
|
start-stop-daemon --start --background --exec /bin/bash /usr/bin/languagetool-server \
|
||||||
|
--config "/etc/languagetool.cfg" --allow-origin "*" --port 8081
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
|
|
||||||
|
stop() {
|
||||||
|
ebegin "Stopping languagetool [server]"
|
||||||
|
start-stop-daemon --stop --exec /bin/bash /usr/bin/languagetool-server
|
||||||
|
eend $?
|
||||||
|
}
|
14
app-text/ltex-ls/files/logo.svg
Normal file
14
app-text/ltex-ls/files/logo.svg
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="45" height="45" viewBox="0 0 45 45">
|
||||||
|
<g fill="none" fill-rule="evenodd">
|
||||||
|
<circle cx="22.5" cy="22.5" r="22.5" fill="#FFF"/>
|
||||||
|
<g fill="#005BEA" fill-rule="nonzero">
|
||||||
|
<path d="M10.32 33.613c.545-.363 1.088-1.105 1.79-1.616.467-.339 1.107-.56 1.488-.56.39 0 .657.07.906.211.226.128.415.286.88.723.672.635 1.02.924 1.583 1.242.794.45 1.677.683 2.695.683 1.017 0 1.9-.234 2.694-.683.564-.318.91-.607 1.584-1.242.464-.437.653-.595.88-.723.248-.14.515-.21.905-.21s.657.07.906.21c.226.128.415.286.88.723.672.635 1.02.924 1.583 1.242.793.45 1.677.683 2.694.683 1.018 0 1.901-.234 2.695-.683a7.666 7.666 0 0 0 1.68-1.242c.05-.048 2.025-2.47 2.053-2.496l-3.004-1.55c.113-.115-.054.05-.107.1-.384.508-1.43 1.706-1.978 1.972a2.45 2.45 0 0 1-1.053.223 3.14 3.14 0 0 1-.919-.178 3.19 3.19 0 0 1-1.152-.722c-.673-.635-1.02-.924-1.583-1.243-.794-.449-1.677-.682-2.695-.682-1.018 0-1.9.233-2.695.682-.563.32-.91.608-1.583 1.243-.464.437-.654.595-.88.722-.248.141-.516.212-.905.212-.39 0-.658-.07-.906-.212-.226-.127-.416-.285-.88-.722-.673-.635-1.02-.924-1.583-1.243-.794-.449-1.677-.682-2.695-.682-1.755 0-3.506.445-6.283 4.202l3.006 1.616z"/>
|
||||||
|
<path d="M15.383 32.371c.673.635 1.02.924 1.584 1.242.794.45 1.677.683 2.695.683 1.017 0 1.9-.234 2.694-.683.564-.318.91-.607 1.584-1.242.464-.437.653-.595.88-.723.248-.14.515-.21.905-.21s.657.07.906.21c.226.128.415.286.88.723.672.635 1.02.924 1.583 1.242.793.45 1.677.683 2.694.683 1.018 0 1.946-.235 2.737-.683 1.834-.922 3.658-3.712 3.685-3.738-1.543 1.411-2.975 2.12-4.295 2.125-1.958.008-3.448-1.843-3.912-2.28-.673-.635-1.02-.924-1.583-1.243-.794-.449-1.677-.682-2.695-.682-1.018 0-1.9.233-2.695.682-.563.32-.91.608-1.583 1.243-.464.437-.654.595-.88.722-.248.141-.516.212-.905.212-.39 0-.658-.07-.906-.212-.226-.127-.416-.285-.88-.722-.673-.635-1.02-.924-1.583-1.243-.794-.449-1.677-.682-2.695-.682-.74 0-3.317-.087-6.284 4.205 1.584-1.35 3.03-1.95 4.339-1.797 1.961.228 3.515 1.965 3.73 2.168z"/>
|
||||||
|
</g>
|
||||||
|
<g fill="#252525">
|
||||||
|
<path fill-rule="nonzero" d="M31.104 13.922v1.43h3.145v-1.666c0-1.037-1.075-2.004-3.225-2.9l.08 3.136zM23.066 13.922l-.24-3.136c-1.936.675-2.905 1.56-2.905 2.656v1.91h3.145v-1.43z"/>
|
||||||
|
<path fill-rule="nonzero" d="M28.744 13.922v11.102h-3.136V13.922h-2.55c-.953 0-1.648.12-2.083.36-.435.241-.789.598-1.062 1.07v-1.91c0-1.644 1.49-2.656 2.906-2.656h8.224c2.036 0 3.225 1.344 3.225 2.9 0 .37-.004.926-.012 1.667-.327-.473-.695-.83-1.104-1.07-.409-.241-1.085-.361-2.029-.361h-2.38z"/>
|
||||||
|
<path d="M13.612 22.316v-.003-8.48h-2.028v-3.145h1.792c2.941 0 3.372 2.203 3.372 2.985v8.224l-.001.004h5.863v3.145h-6.3a.15.15 0 0 1-.038-.005c-1.77-.064-2.656-.97-2.66-2.717a87.655 87.655 0 0 1-.006-.007l.006-.001z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 2.8 KiB |
94
app-text/ltex-ls/ltex-ls-16.0.0.ebuild
Normal file
94
app-text/ltex-ls/ltex-ls-16.0.0.ebuild
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
inherit java-pkg-2
|
||||||
|
|
||||||
|
DESCRIPTION="LSP language server for LanguageTool supporting LaTeX, Markdown, and others"
|
||||||
|
HOMEPAGE="https://valentjn.github.io/ltex/"
|
||||||
|
SRC_URI="https://github.com/valentjn/ltex-ls/releases/download/${PV}/${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="MPL-2.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
|
||||||
|
CP_DEPEND="
|
||||||
|
dev-java/slf4j-api:0
|
||||||
|
dev-java/slf4j-nop:0
|
||||||
|
dev-java/guava:0
|
||||||
|
dev-java/icu4j:0
|
||||||
|
dev-java/jansi:2
|
||||||
|
dev-java/commons-lang:3.6
|
||||||
|
dev-java/commons-logging:0
|
||||||
|
dev-java/commons-text:0
|
||||||
|
dev-java/jackson-core:0
|
||||||
|
dev-java/jackson-annotations:2
|
||||||
|
dev-java/jackson-databind:0
|
||||||
|
dev-java/jaxb-api:2
|
||||||
|
dev-java/jaxb-runtime:4
|
||||||
|
dev-java/picocli:0
|
||||||
|
dev-java/protobuf-java:0
|
||||||
|
dev-java/stax2-api:0
|
||||||
|
dev-java/woodstox-core:0
|
||||||
|
dev-java/json:0
|
||||||
|
dev-java/j2objc-annotations:0
|
||||||
|
dev-java/istack-commons-runtime:0
|
||||||
|
dev-java/hamcrest-core:1.3
|
||||||
|
dev-java/failureaccess:0
|
||||||
|
dev-java/error-prone-annotations:0
|
||||||
|
dev-java/checker-framework-qual:0
|
||||||
|
dev-java/animal-sniffer-annotations:0
|
||||||
|
dev-java/fastinfoset:0
|
||||||
|
"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
>=virtual/jre-1.8
|
||||||
|
${CP_DEPEND}
|
||||||
|
"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
rm lib/{slf4j,guava,icu4j,junit,hamcrest-core,FastInfoset,animal-sniffer-annotations}*.jar || die
|
||||||
|
# rm lib/jansi*.jar || die # somewhy removing it causes ltex-ls to stop produce colors/boldness ascii-sequences
|
||||||
|
rm lib/checker-qual-*.jar || die # may cuse breakages. Needs testing.
|
||||||
|
rm lib/{commons-{lang3,text,logging},error_prone_annotations,failureaccess,istack-commons-runtime}*.jar || die
|
||||||
|
rm lib/{j2objc-annotations,jackson,jaxb-api,json,picocli,protobuf-java,stax2-api,woodstox-core}*.jar || die
|
||||||
|
|
||||||
|
mv lib/"${P/x-l/xl}".jar lib/"${PN}".jar || die
|
||||||
|
|
||||||
|
java-pkg-2_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() { :; }
|
||||||
|
|
||||||
|
_gen-cp() {
|
||||||
|
debug-print-function ${FUNCNAME} "${@}"
|
||||||
|
|
||||||
|
local atom
|
||||||
|
local pat="/(([[:alnum:]+_-]+)-[0-9]+(\.[0-9]+)*[a-z]?(_[[:alnum:]]+)*(-r[0-9]*)?|[[:alnum:]+_-]+):([[:alnum:]+_.-]+)"
|
||||||
|
for atom in ${CP_DEPEND}; do
|
||||||
|
if [[ ${atom} =~ ${pat} ]]; then
|
||||||
|
atom=${BASH_REMATCH[2]:-${BASH_REMATCH[1]}}
|
||||||
|
[[ ${BASH_REMATCH[6]} != 0 ]] && atom+=-${BASH_REMATCH[6]}
|
||||||
|
local regex="(^|\s|,)${atom}($|\s|,)"
|
||||||
|
[[ ${!1} =~ ${regex} ]] || declare -g ${1}+=${!1:+,}${atom}
|
||||||
|
else
|
||||||
|
die "Invalid CP_DEPEND atom ${atom}, ensure a SLOT is included"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
java-pkg_dojar lib/*.jar
|
||||||
|
|
||||||
|
java-pkg_dolauncher ${PN} --main org.bsplines.ltexls.LtexLanguageServerLauncher
|
||||||
|
# java-pkg_dolauncher ${PN}-cli --main org.bsplines.lspcli.LspCliLauncher
|
||||||
|
# TODO: integrate with json from bin/
|
||||||
|
|
||||||
|
dodoc ACKNOWLEDGMENTS.md README.md
|
||||||
|
|
||||||
|
unset MY_DEPEND
|
||||||
|
_gen-cp MY_DEPEND
|
||||||
|
java-pkg_register-dependency "${MY_DEPEND}"
|
||||||
|
}
|
11
app-text/ltex-ls/metadata.xml
Normal file
11
app-text/ltex-ls/metadata.xml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="project">
|
||||||
|
<email>vim@gentoo.org</email>
|
||||||
|
<name>Gentoo Vim Project</name>
|
||||||
|
</maintainer>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="github">valentjn/ltex-ls</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
3
dev-java/commons-text/Manifest
Normal file
3
dev-java/commons-text/Manifest
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
DIST commons-text-1.14.0-src.tar.gz 365401 BLAKE2B bde7f76383f967c5d1cfc9dba383d93ec0f9ba37573d9ff7b030c52cd3b88405f73d56576cb151a5625be8922315438141a921ebbc5c5f4376a60a93e7475dfb SHA512 db9369ca5249e447f871b03f826782ff34d55f7f375c6fe9a6e6ffb740124ad38ced4487ea0bd9fafe1603b5dade9ce6fdd7d595af63b6d3a66560de936aa46a
|
||||||
|
EBUILD commons-text-1.14.0.ebuild 1952 BLAKE2B bd6651a291c7a667aabc6d795b0dc086cb08b1541354c1134db68545882844f70871e845249a9a19e935787cb070e7282224b258f79ac7fba14dd97bb956a567 SHA512 436742971cd821425f39f069b089a5b960e2b277901fb04dd52f0202f8bed0dca7246860b3e2379f7b6872ed065193e4f0dce63088a91d1c36ce9252fa94b54b
|
||||||
|
MISC metadata.xml 237 BLAKE2B 7c3263833976c18611a5cba44845af4d80f2f86c48cf587a657292ed0074022088cef88756e3209b292252dce5c0eea307c4f2f45f28b8517609124708f7d09a SHA512 e8227b536eb45569cbf744907106e101d1aa6bf9ba8337783786d719ab107d8bda0fde5dd7067d168181d694b4161b12d1ef3cb5a83b14971b21aa4479670559
|
61
dev-java/commons-text/commons-text-1.14.0.ebuild
Normal file
61
dev-java/commons-text/commons-text-1.14.0.ebuild
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
# Skeleton command:
|
||||||
|
# java-ebuilder --generate-ebuild --workdir . --pom pom.xml
|
||||||
|
# --download-uri mirror://apache//commons/text/source/commons-text-1.10.0-src.tar.gz
|
||||||
|
# --slot 0 --keywords "~amd64 ~ppc64 ~x86" --ebuild commons-text-1.10.0.ebuild
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
JAVA_PKG_IUSE="doc source"
|
||||||
|
MAVEN_ID="org.apache.commons:commons-text:${PVR}"
|
||||||
|
|
||||||
|
inherit java-pkg-2 java-pkg-simple
|
||||||
|
|
||||||
|
DESCRIPTION="Apache Commons Text is a library focused on algorithms working on strings"
|
||||||
|
HOMEPAGE="https://commons.apache.org/proper/commons-text/"
|
||||||
|
SRC_URI="https://archive.apache.org/dist/commons/text/source/${P}-src.tar.gz"
|
||||||
|
|
||||||
|
S="${WORKDIR}/${P}-src"
|
||||||
|
|
||||||
|
LICENSE="Apache-2.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~ppc64 ~x86"
|
||||||
|
|
||||||
|
# Common dependencies
|
||||||
|
# POM: pom.xml
|
||||||
|
# org.apache.commons:commons-lang3:3.12.0 -> >=dev-java/commons-lang-3.12.0:3.6
|
||||||
|
|
||||||
|
CDEPEND="
|
||||||
|
dev-java/commons-lang:3.6
|
||||||
|
"
|
||||||
|
|
||||||
|
# Compile dependencies
|
||||||
|
# POM: pom.xml
|
||||||
|
# test? commons-io:commons-io:2.11.0 -> >=dev-java/commons-io-2.11.0:1
|
||||||
|
# test? org.apache.commons:commons-rng-simple:1.4 -> !!!artifactId-not-found!!!
|
||||||
|
# test? org.assertj:assertj-core:3.23.1 -> !!!suitable-mavenVersion-not-found!!!
|
||||||
|
# test? org.graalvm.js:js:22.0.0.2 -> !!!groupId-not-found!!!
|
||||||
|
# test? org.graalvm.js:js-scriptengine:22.0.0.2 -> !!!groupId-not-found!!!
|
||||||
|
# test? org.junit.jupiter:junit-jupiter:5.9.1 -> !!!groupId-not-found!!!
|
||||||
|
# test? org.mockito:mockito-inline:4.8.0 -> !!!artifactId-not-found!!!
|
||||||
|
# test? org.openjdk.jmh:jmh-core:1.35 -> >=dev-java/jmh-core-1.35:0
|
||||||
|
# test? org.openjdk.jmh:jmh-generator-annprocess:1.35 -> !!!artifactId-not-found!!!
|
||||||
|
|
||||||
|
DEPEND="
|
||||||
|
>=virtual/jdk-1.8:*
|
||||||
|
${CDEPEND}
|
||||||
|
"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
>=virtual/jre-1.8:*
|
||||||
|
${CDEPEND}"
|
||||||
|
|
||||||
|
DOCS=( CONTRIBUTING.md NOTICE.txt README.md RELEASE-NOTES.txt )
|
||||||
|
|
||||||
|
JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.text"
|
||||||
|
JAVA_ENCODING="ISO-8859-1"
|
||||||
|
|
||||||
|
JAVA_GENTOO_CLASSPATH="commons-lang-3.6"
|
||||||
|
JAVA_SRC_DIR="src/main/java"
|
8
dev-java/commons-text/metadata.xml
Normal file
8
dev-java/commons-text/metadata.xml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="project">
|
||||||
|
<email>java@gentoo.org</email>
|
||||||
|
<name>Java</name>
|
||||||
|
</maintainer>
|
||||||
|
</pkgmetadata>
|
3
dev-java/failureaccess/Manifest
Normal file
3
dev-java/failureaccess/Manifest
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
DIST guava-33.4.8.tar.gz 5876137 BLAKE2B 67c14f95ac894bd821126519034ef45cffc016d7e29652b5020bc01a4ea7cecf779359f21261e1011842ff694299f62be3577a34ea0234c61d21fde7ccfa129d SHA512 e0ce963356e9404bd80a1caa76108ece9bb82c1a46a10ff262b8ba515af17fc33c520bf7dae35168ea9d92250b40e46ef062e5ccf5fec6ebad1a791b137c0f60
|
||||||
|
EBUILD failureaccess-33.4.8.ebuild 686 BLAKE2B 53f7faa98253b10ebdb42cd4f4702a59b925aac0b33f6dac4078fd8ecc2416fc1faed890dbd3961d8f775b7884df419b88db3ce5b80e717c40dc2eb03e9881ee SHA512 33e3780906a022bdd17366155677a6b5227e8ed1a931aa26a05bfdd36a275d3f1c9d868b2006f6d21959b30b1cf07983955c188d6c39687e375aac3b3174550d
|
||||||
|
MISC metadata.xml 777 BLAKE2B 0e44350994369e126a7b4fa9b3264c96ab8e4ffa922f2f7ff09a11f68ef489b420873456691f325efba1106ea5d4d839f488a2b39c8aa2a1e7697212b830295f SHA512 5807719572aaacc5269053a97d1ec13fe51cebe35a7c0cc97c1ceb3abef4022e03db0163e8bdbe825efdcc86694466bbf20aac9bb1319419b1caa62886822390
|
25
dev-java/failureaccess/failureaccess-33.4.8.ebuild
Normal file
25
dev-java/failureaccess/failureaccess-33.4.8.ebuild
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# Copyright 1999-2024 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
MY_P=guava-${PV}
|
||||||
|
|
||||||
|
JAVA_PKG_IUSE="doc source"
|
||||||
|
MAVEN_ID="com.google.guava:failureaccess:1.0.1"
|
||||||
|
|
||||||
|
inherit java-pkg-2 java-pkg-simple
|
||||||
|
|
||||||
|
DESCRIPTION="Guava's InternalFutureFailureAccess and InternalFutures classes."
|
||||||
|
HOMEPAGE="https://github.com/google/guava/"
|
||||||
|
SRC_URI="https://github.com/google/guava/archive/v${PV}.tar.gz -> guava-${PV}.tar.gz"
|
||||||
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
|
LICENSE="Apache-2.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
|
||||||
|
|
||||||
|
DEPEND=">=virtual/jdk-1.8:*"
|
||||||
|
RDEPEND=">=virtual/jre-1.8:*"
|
||||||
|
|
||||||
|
JAVA_SRC_DIR="futures/${PN}/src/com/google/common/util/concurrent/internal/"
|
18
dev-java/failureaccess/metadata.xml
Normal file
18
dev-java/failureaccess/metadata.xml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<email>pierre.saundersgb@gmail.com</email>
|
||||||
|
<name>Pierre Saunders</name>
|
||||||
|
</maintainer>
|
||||||
|
<longdescription lang="en">
|
||||||
|
Contains com.google.common.util.concurrent.internal.InternalFutureFailureAccess
|
||||||
|
and InternalFutures. Most users will never need to use this artifact. Its
|
||||||
|
classes are conceptually a part of Guava, but they're in this separate artifact
|
||||||
|
so that Android libraries can use them without pulling in all of Guava (just as
|
||||||
|
they can use ListenableFuture by depending on the listenablefuture artifact).
|
||||||
|
</longdescription>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="github">google/guava</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
@@ -1,3 +1,3 @@
|
|||||||
DIST cudnn-linux-x86_64-9.10.2.21_cuda12-archive.tar.xz 1003149584 BLAKE2B 17d56a2e459df88a7ae6c27c1edc093c3b58e6732e49d001d277e159ff90face0b722db9edd089bf36383dd4f48e225582583e2fbf52fae134787349bfda19c6 SHA512 3bb42370ea5be3eade3a3203de3d925ed67169e7c019aee9e5c3e9d77422fd2c3e6682ecb7398e4be20d106b9f29ae8ff3adcdba891e129fbb04a441f165713f
|
DIST cudnn-linux-x86_64-9.11.0.98_cuda12-archive.tar.xz 845552612 BLAKE2B 3c0c9ac68fe9436b5ebbb3483e848d7d33fb2c6d8bfc426b32ddad3c9efab5129d6f1aabc78c31c73c01f3408970e864a12d4c9fa6cca562759f580d80c5571e SHA512 1a45c46409b3ca8c06dda29af8449cd2464acfe5215d860dcdc86abdba346758ef4eaa2a487908a845d95ada1c4f899fe98fdaface3d03c0ff8fdac3221beb32
|
||||||
EBUILD cudnn-9.10.2.21.ebuild 744 BLAKE2B 85b70faa66ca63122260f47e27b1a0c2ee16e3ab3d6809ede6ada5e9c1b53cc3458dc56d05270443e0a84d33ae8bddd767f77ed54e80f0498d4190aa35faa727 SHA512 acc2caae1c2a15558bfc1b0c2f7556f23af55891a8a8ac2c1340e57340a1124ef49a8046ec308f694e87af72f2c823785f0f476ec469f21a0155ae0e3a7018fc
|
EBUILD cudnn-9.11.0.98.ebuild 744 BLAKE2B 85b70faa66ca63122260f47e27b1a0c2ee16e3ab3d6809ede6ada5e9c1b53cc3458dc56d05270443e0a84d33ae8bddd767f77ed54e80f0498d4190aa35faa727 SHA512 acc2caae1c2a15558bfc1b0c2f7556f23af55891a8a8ac2c1340e57340a1124ef49a8046ec308f694e87af72f2c823785f0f476ec469f21a0155ae0e3a7018fc
|
||||||
MISC metadata.xml 254 BLAKE2B b855316ec6a32691e84730979c9a077765d46802f09c19f3a06f2cddf677674c9a2ea24c9b57a0fc6344d7f70276ca507a68f5fa690555360665ac494fca54c2 SHA512 5f6faacd216c7ece09e847c09115add5261e7a899e0b0c9304f2ee72e2d0ad208338939e4e37946008bdc81fbbacf415fb220c5c1f9832b17f18c6778d0c0368
|
MISC metadata.xml 254 BLAKE2B b855316ec6a32691e84730979c9a077765d46802f09c19f3a06f2cddf677674c9a2ea24c9b57a0fc6344d7f70276ca507a68f5fa690555360665ac494fca54c2 SHA512 5f6faacd216c7ece09e847c09115add5261e7a899e0b0c9304f2ee72e2d0ad208338939e4e37946008bdc81fbbacf415fb220c5c1f9832b17f18c6778d0c0368
|
||||||
|
@@ -1,7 +0,0 @@
|
|||||||
AUX cuda-config.in 407 BLAKE2B 5f7a0d50d774db58c180b767f00bead7c7dbf5f6b3b4a2f960dfc3b8450f7abf5c2b67c6620c5318f1331646dd2003d61c70a4c31359efd16ff418ecc9d0b446 SHA512 363903b999c43a47a48c52e8898c6044fadcc66d259338ee22863e859c2bc9873a2f1392aa83c9182486d3aa4eaeb5f164cf8ccf29cc74fd8ad56245f76a039a
|
|
||||||
AUX nvidia-cuda-toolkit-glibc-2.41-r1.patch 4855 BLAKE2B e06dc68c473fb427c8347343652dbd93f209fb0b19ade54aba7bb2a6ab5344b896d1f2dc86ed4e0ec1a4de739716fe30ff1ff3629d73eb6a4c081c25a7454fae SHA512 037c906903cf7058543c6636263d93ce5b80bedcc601417c7e23758966c428434593d61ee7e32d51e07c5f16ee595510f1ce7db9f000f906fe96928a3b4ed5fb
|
|
||||||
AUX parse_manifest.py 8488 BLAKE2B 8ac93a39276eaf89b41a5b0baa168b5974423077b0fd4b22841451514513c914fb4188863d73591f89975cc833dcb88bde289b0676f218715d8735a2d5c0f159 SHA512 4b2d9de215858d25319254666a22a184e26510a3488fc97a939704fab1e81a9baa363fc1168129618ce076de84d7acbeb71d98b8be272017f47b54c237d9b9a4
|
|
||||||
DIST cuda_12.9.1_575.57.08_linux.run 5860276058 BLAKE2B 482aee91731ca490956f3cf375e973b15ddcf69b295693d34488958e2592e5c55dabed589aa4f5f4ad59a50ae00b4523e5ebf760a613b634ca00164d363fb567 SHA512 fc29c5fc1121fb6634f1fe396abe7f34d351686454516269e9143e678ea178f906a35b916b8bb2d96ecfcfc705dda7d0f4547f7e7f00d36e392d981a766b6a56
|
|
||||||
DIST cuda_12.9.1_575.57.08_linux_sbsa.run 5074335372 BLAKE2B 71782c3e7e39503aa914c8e02b7e5e44c856bd98bb9d1d46b90dfb7db4a2becb03ed1467fbca34c2ea1147202deb379198495007d69c7987320e138a63f2164e SHA512 91e3b457b6c36c8c3f07ae6fbd24f3f90b9ea22397059f91655ad68c32b96547e2c732af987a0c5ea63c37c43d48f199d97b9e84068c145633ebf67c34465ac6
|
|
||||||
EBUILD nvidia-cuda-toolkit-12.9.1.ebuild 10590 BLAKE2B bd84a00b2c334de9625a6d00250372b3a227746d22efec9f24f6679523a45cbd39825bc28fb002abced5fa447769d416c0706362cf3d549074a2d42e46520c44 SHA512 4cafc7bdbc64d039cd922286ddb990dc8544a23427191c639bc36bbd93117521d7e49efb363a2a448158f9b392f2357cf41c82785dff5475ec07985b78ebd6fd
|
|
||||||
MISC metadata.xml 843 BLAKE2B 5ed06252572415290175ff90b66c1e13b67d282085295586e046019cc7d28b6e11728fba310bcf4101caaf09f4d1383f8df3f1c97325fa9e979dfa06e4704571 SHA512 208c83e0d968796d526b7223c5221f0805401b31420807a21f078797cba8e3f141c654017331a89649af2aa29a40cc1ff28f9cfa3ba2e6bee85fa76957c01837
|
|
@@ -1,28 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
SUPPORT_GCC_VERSIONS_BY_CUDA="CUDA_SUPPORTED_GCC"
|
|
||||||
|
|
||||||
_print_help() {
|
|
||||||
cat <<- EOF
|
|
||||||
Usage:
|
|
||||||
$(basename $0) [options]
|
|
||||||
|
|
||||||
-s | --supported Returns by current CUDA supported gcc versions
|
|
||||||
-h | --help Shows this help
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
case ${1} in
|
|
||||||
-s|--supported)
|
|
||||||
echo "${SUPPORT_GCC_VERSIONS_BY_CUDA}"
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-h|--help)
|
|
||||||
_print_help
|
|
||||||
exit 255
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
_print_help
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
@@ -1,119 +0,0 @@
|
|||||||
From cae8ab12c9f981f110bb2e1318d9c5306e3a2d81 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Paul Zander <negril.nx@gmail.com>
|
|
||||||
Date: Sat, 8 Feb 2025 16:34:42 +0100
|
|
||||||
Subject: [PATCH] Updates headers for glibc-2.41
|
|
||||||
|
|
||||||
Match the extern definitions in cuda-crt headers with the changes in glibc-2.41.
|
|
||||||
|
|
||||||
/usr/include/bits/mathcalls.h(79): error: exception specification is
|
|
||||||
incompatible with that of previous function "cospi" (declared at line 2601
|
|
||||||
of
|
|
||||||
/opt/cuda-12.8.0/bin/../targets/x86_64-linux/include/crt/math_functions.h)
|
|
||||||
|
|
||||||
extern double cospi (double __x) noexcept (true); extern double __cospi (double __x) noexcept (true);
|
|
||||||
|
|
||||||
/opt/cuda-12.8.1/bin/../targets/x86_64-linux/include/crt/math_functions.hpp:2982:17: error: 'sinpi' is missing exception specification 'throw()'
|
|
||||||
2982 | __func__(double sinpi(double a))
|
|
||||||
| ^
|
|
||||||
| throw()
|
|
||||||
/opt/cuda-12.8.1/bin/../targets/x86_64-linux/include/crt/func_macro.h:37:16: note: expanded from macro '__func__'
|
|
||||||
37 | inline decl
|
|
||||||
| ^
|
|
||||||
/opt/cuda-12.8.1/bin/../targets/x86_64-linux/include/crt/math_functions.h:6006:17: note: previous declaration is here
|
|
||||||
6006 | __func__(double sinpi(double a));
|
|
||||||
|
|
||||||
See-Also: https://sourceware.org/git/?p=glibc.git;a=commit;h=0ae0af68d8fa3bf6cbe1e4f1de5929ff71de67b3
|
|
||||||
Signed-off-by: Paul Zander <negril.nx@gmail.com>
|
|
||||||
|
|
||||||
diff --git a/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.h b/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.h
|
|
||||||
index d8201f9..a9b19d4 100644
|
|
||||||
--- a/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.h
|
|
||||||
+++ b/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.h
|
|
||||||
@@ -2553,7 +2553,11 @@ extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float rcbrt
|
|
||||||
*
|
|
||||||
* \note_accuracy_double
|
|
||||||
*/
|
|
||||||
+#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 41
|
|
||||||
+extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double sinpi(double x) noexcept (true);
|
|
||||||
+#else
|
|
||||||
extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double sinpi(double x);
|
|
||||||
+#endif
|
|
||||||
/**
|
|
||||||
* \ingroup CUDA_MATH_SINGLE
|
|
||||||
* \brief Calculate the sine of the input argument
|
|
||||||
@@ -2576,7 +2580,11 @@ extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double sinpi
|
|
||||||
*
|
|
||||||
* \note_accuracy_single
|
|
||||||
*/
|
|
||||||
+#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 41
|
|
||||||
+extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sinpif(float x) noexcept (true);
|
|
||||||
+#else
|
|
||||||
extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sinpif(float x);
|
|
||||||
+#endif
|
|
||||||
/**
|
|
||||||
* \ingroup CUDA_MATH_DOUBLE
|
|
||||||
* \brief Calculate the cosine of the input argument
|
|
||||||
@@ -2598,7 +2606,11 @@ extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float sinpi
|
|
||||||
*
|
|
||||||
* \note_accuracy_double
|
|
||||||
*/
|
|
||||||
+#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 41
|
|
||||||
+extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double cospi(double x) noexcept (true);
|
|
||||||
+#else
|
|
||||||
extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double cospi(double x);
|
|
||||||
+#endif
|
|
||||||
/**
|
|
||||||
* \ingroup CUDA_MATH_SINGLE
|
|
||||||
* \brief Calculate the cosine of the input argument
|
|
||||||
@@ -2620,7 +2632,11 @@ extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ double cospi
|
|
||||||
*
|
|
||||||
* \note_accuracy_single
|
|
||||||
*/
|
|
||||||
+#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 41
|
|
||||||
+extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float cospif(float x) noexcept (true);
|
|
||||||
+#else
|
|
||||||
extern __DEVICE_FUNCTIONS_DECL__ __device_builtin__ float cospif(float x);
|
|
||||||
+#endif
|
|
||||||
/**
|
|
||||||
* \ingroup CUDA_MATH_DOUBLE
|
|
||||||
* \brief Calculate the sine and cosine of the first input argument
|
|
||||||
diff --git a/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.hpp b/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.hpp
|
|
||||||
index cc09b91..11eec71 100644
|
|
||||||
--- a/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.hpp
|
|
||||||
+++ b/builds/cuda_nvcc/targets/x86_64-linux/include/crt/math_functions.hpp
|
|
||||||
@@ -2979,7 +2979,7 @@ __func__(double rcbrt(const double a))
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
|
|
||||||
-__func__(double sinpi(double a))
|
|
||||||
+__func__(double sinpi(double a)) throw()
|
|
||||||
{
|
|
||||||
int n;
|
|
||||||
|
|
||||||
@@ -3009,7 +3009,7 @@ __func__(double sinpi(double a))
|
|
||||||
return a;
|
|
||||||
}
|
|
||||||
|
|
||||||
-__func__(double cospi(double a))
|
|
||||||
+__func__(double cospi(double a)) throw()
|
|
||||||
{
|
|
||||||
int n;
|
|
||||||
|
|
||||||
@@ -3340,12 +3340,12 @@ __func__(float rcbrtf(const float a))
|
|
||||||
return static_cast<float>(rcbrt(static_cast<double>(a)));
|
|
||||||
}
|
|
||||||
|
|
||||||
-__func__(float sinpif(const float a))
|
|
||||||
+__func__(float sinpif(const float a)) throw()
|
|
||||||
{
|
|
||||||
return static_cast<float>(sinpi(static_cast<double>(a)));
|
|
||||||
}
|
|
||||||
|
|
||||||
-__func__(float cospif(const float a))
|
|
||||||
+__func__(float cospif(const float a)) throw()
|
|
||||||
{
|
|
||||||
return static_cast<float>(cospi(static_cast<double>(a)));
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.48.1
|
|
||||||
|
|
@@ -1,223 +0,0 @@
|
|||||||
#!/usr/bin/env python
|
|
||||||
# Copyright 2024-2025 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# Takes the manifests/*.xml file from the NVIDIA CUDA Toolkit as input.
|
|
||||||
# Those files contain a nested tree of package items.
|
|
||||||
#
|
|
||||||
# For each package node a if block is output that checks the package's
|
|
||||||
# name attribute against the environment provided array SKIP_COMPONENTS
|
|
||||||
# and skips that whole package if it's listed in it.
|
|
||||||
#
|
|
||||||
# Each item contains four nodes that reference things to install,
|
|
||||||
# `dir`, `file`, `desktopFile`, & `pcfile`, and metadata that further
|
|
||||||
# detail these. This script will output calls to do* calls that
|
|
||||||
# use the metadata.
|
|
||||||
# - dodir would create an empty file - we handle this in dofile
|
|
||||||
# - dofile copies a regex file glob
|
|
||||||
# - dodesktopFile creates a .desktop file
|
|
||||||
# - dopcfile creates a pkgconfig file
|
|
||||||
#
|
|
||||||
# The resulting bash code can be run inside src_install().
|
|
||||||
#
|
|
||||||
# Usage: python parse_manifest.py <cuda_aarch64.xml|cuda_x86_64.xml>
|
|
||||||
|
|
||||||
|
|
||||||
import argparse
|
|
||||||
import xml.etree.ElementTree
|
|
||||||
|
|
||||||
import defusedxml.ElementTree
|
|
||||||
from pathlib import Path
|
|
||||||
|
|
||||||
ind = "\t"
|
|
||||||
indent = 1
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
|
||||||
parser = argparse.ArgumentParser()
|
|
||||||
parser.add_argument('filename') # positional argument
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
|
||||||
|
|
||||||
basedir = Path(args.filename).parents[1]
|
|
||||||
|
|
||||||
et = defusedxml.ElementTree.parse(args.filename)
|
|
||||||
|
|
||||||
# Find all packages under the package with the id main (i.e. under "CUDA Installer")
|
|
||||||
for e in et.findall("[@id='main']/package"):
|
|
||||||
def p_package(el: xml.etree.ElementTree.Element, level: int = 0):
|
|
||||||
|
|
||||||
skip = {
|
|
||||||
"Documentation", # obsolete
|
|
||||||
"Driver", # unused
|
|
||||||
# "Kernel Objects", # split
|
|
||||||
# "Demo Suite",
|
|
||||||
# "Visual Tools",
|
|
||||||
# old eclipse
|
|
||||||
# "nsight",
|
|
||||||
# old java
|
|
||||||
# "nvvp",
|
|
||||||
# "cuda-gdb-src"
|
|
||||||
}
|
|
||||||
|
|
||||||
name = el.get("name")
|
|
||||||
|
|
||||||
# trim leading CUDA and trailing version
|
|
||||||
if name.startswith("CUDA"):
|
|
||||||
name2 = ' '.join(name.split(" ")[1:-1])
|
|
||||||
else:
|
|
||||||
name2 = name
|
|
||||||
|
|
||||||
if name2 in skip:
|
|
||||||
return
|
|
||||||
|
|
||||||
# avoid having to deal with whitespaces in bash
|
|
||||||
name2 = name2.replace(" ", "_")
|
|
||||||
|
|
||||||
path = ""
|
|
||||||
|
|
||||||
print(f"{ind * (level + 0) * indent}if ! has {name2} \"${{SKIP_COMPONENTS[@]}}\"; then # \"{name}\"")
|
|
||||||
|
|
||||||
# output attributes from unhandled tags
|
|
||||||
for child in el:
|
|
||||||
if child.tag == "package":
|
|
||||||
continue
|
|
||||||
if child.tag == "file":
|
|
||||||
continue
|
|
||||||
if child.tag == "desktopFile":
|
|
||||||
continue
|
|
||||||
if child.tag == "pcfile":
|
|
||||||
continue
|
|
||||||
for attrib in child.attrib:
|
|
||||||
print(f"{child.tag} {attrib}={child.attrib[attrib]}")
|
|
||||||
|
|
||||||
# <name>CUDA Installer</name>
|
|
||||||
# only for CUDA Installer
|
|
||||||
# unused
|
|
||||||
for node in el.findall("./name"):
|
|
||||||
print(f"{ind * (level + 1) * indent}# {node.tag}: \"{node.text}\"")
|
|
||||||
|
|
||||||
# <type>compiler</type>
|
|
||||||
# category. We use the package name instead.
|
|
||||||
# unused
|
|
||||||
# for node in el.findall("./type"):
|
|
||||||
# print(f"{ind * (level + 1) * indent}# {node.tag}: \"{node.text}\"")
|
|
||||||
|
|
||||||
# <priority>1</priority>
|
|
||||||
# probably sorting for the tui installer
|
|
||||||
# unused
|
|
||||||
# for node in el.findall("./priority"):
|
|
||||||
# print(f"{ind * (level + 1) * indent}# {node.tag}: \"{node.text}\"")
|
|
||||||
|
|
||||||
# <single-selection/>
|
|
||||||
# proably for tui installer
|
|
||||||
# unused
|
|
||||||
# for node in el.findall("./single-selection"):
|
|
||||||
# print(f"{ind * (level + 1) * indent}# {node.tag}: \"{node.text}\"")
|
|
||||||
|
|
||||||
# <koversion>2.24.2</koversion>
|
|
||||||
# version of the installed kernel object (Kernel Objects only)
|
|
||||||
# unused
|
|
||||||
for node in el.findall("./koversion"):
|
|
||||||
print(f"{ind * (level + 1) * indent}# {node.tag}: \"{node.text}\"")
|
|
||||||
|
|
||||||
# <installPath>/usr/local/cuda-12.8</installPath>
|
|
||||||
# overrides the install location
|
|
||||||
# unused
|
|
||||||
# for node in el.findall("./installPath"):
|
|
||||||
# print(f"{ind * (level + 1) * indent}# {node.tag}: \"{node.text}\"")
|
|
||||||
|
|
||||||
# <buildPath>./builds/cuda_cccl/</buildPath>
|
|
||||||
# path where the package files are found
|
|
||||||
# we cd into it
|
|
||||||
for node in el.findall("./buildPath"):
|
|
||||||
path = node.text.removeprefix('./')
|
|
||||||
print(f"{ind * (level + 1) * indent}cd \"${{S}}/{path}\" || die \"cd ${{S}}/{path} failed\"")
|
|
||||||
print()
|
|
||||||
|
|
||||||
# <dir>bin</dir>
|
|
||||||
# would install empty dirs
|
|
||||||
# unused
|
|
||||||
# for node in el.findall("./dir"):
|
|
||||||
# pass
|
|
||||||
|
|
||||||
# <file dir="bin/">.*</file>
|
|
||||||
# <file>targets/x86_64-linux/lib/.*\.so</file>
|
|
||||||
# regex glob of files to install.
|
|
||||||
for node in el.findall("./file"):
|
|
||||||
# unescape '.*' -> '*' & '\.' -> '.'
|
|
||||||
file = (node.text
|
|
||||||
.replace(".*", "*")
|
|
||||||
.replace(r"\.", ".")
|
|
||||||
.replace("x86_64", "${narch}")
|
|
||||||
.replace("sbsa", "${narch}")
|
|
||||||
)
|
|
||||||
|
|
||||||
# optional dir offset, we merge it into path
|
|
||||||
dir = ""
|
|
||||||
if "dir" in node.attrib:
|
|
||||||
dir = f" \"{Path(node.attrib['dir'])}\""
|
|
||||||
|
|
||||||
filepath = basedir / path / file
|
|
||||||
|
|
||||||
# ignore existing symlinks ( include, lib* ) and the uninstallers
|
|
||||||
if not filepath.is_symlink() and not file.endswith("-uninstaller"):
|
|
||||||
print(f"{ind * (level + 1) * indent}dofile \"{file}\"{dir}")
|
|
||||||
|
|
||||||
# <pcfile description="CUDA Runtime Library">opencl-12.8.pc</pcfile>
|
|
||||||
# create a pkgconfig file for the given description and lib name/version
|
|
||||||
for node in el.findall("./pcfile"):
|
|
||||||
offset = node.text.rfind('-')
|
|
||||||
if offset == -1:
|
|
||||||
raise RuntimeError(f"failed to split pcfile {node.text}")
|
|
||||||
|
|
||||||
lib_name = node.text[:offset]
|
|
||||||
|
|
||||||
if not node.text.endswith('.pc'):
|
|
||||||
raise RuntimeError(f"pcfile does not end in '.pc' {node.text}")
|
|
||||||
lib_version = node.text[offset+1:-3]
|
|
||||||
|
|
||||||
if "description" not in node.attrib:
|
|
||||||
raise RuntimeError(f"no description for {node.text}")
|
|
||||||
|
|
||||||
subdir = ""
|
|
||||||
if "subdir" in node.attrib:
|
|
||||||
subdir = f" \"{node.attrib['subdir']}\""
|
|
||||||
|
|
||||||
print(f"{ind * (level + 1) * indent}dopcfile "
|
|
||||||
f"\"{lib_name}\" "
|
|
||||||
f"\"{lib_version}\" "
|
|
||||||
f"\"{node.attrib['description']}\"{subdir}")
|
|
||||||
|
|
||||||
# <desktopFile
|
|
||||||
# filename="nsight"
|
|
||||||
# name="Nsight Eclipse Edition"
|
|
||||||
# categories="Development;IDE;Debugger;ParallelComputing"
|
|
||||||
# keywords="cuda;gpu;nvidia;debugger;"
|
|
||||||
# iconPath="libnsight/icon.xpm"
|
|
||||||
# execPath="bin/nsight"
|
|
||||||
# tryExecPath="bin/nsight"
|
|
||||||
# />
|
|
||||||
# create a .desktop file
|
|
||||||
for node in el.findall("./desktopFile"):
|
|
||||||
print(f"{ind * (level + 1) * indent}dodesktopFile \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['filename']}\" \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['name']}\" \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['categories']}\" \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['keywords']}\" \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['iconPath']}\" \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['execPath']}\" \\")
|
|
||||||
print(f"{ind * (level + 2) * indent}\"{node.attrib['tryExecPath']}\"")
|
|
||||||
|
|
||||||
# iterator over all nested packages
|
|
||||||
for node in el.findall("./package"):
|
|
||||||
p_package(node, level + 1)
|
|
||||||
|
|
||||||
print(f"{ind * (level + 0) * indent}fi")
|
|
||||||
|
|
||||||
p_package(e)
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
main()
|
|
@@ -1,17 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="project">
|
|
||||||
<email>sci@gentoo.org</email>
|
|
||||||
<name>Gentoo Science Project</name>
|
|
||||||
</maintainer>
|
|
||||||
<use>
|
|
||||||
<flag name="clang">Depend on <pkg>llvm-core/clang</pkg> as host compiler</flag>
|
|
||||||
<flag name="debugger">Install the CUDA debugger</flag>
|
|
||||||
<flag name="nsight">Install profiling and optimizing tools (nsight-compute, nsight-systems)</flag>
|
|
||||||
<flag name="profiler">Install the NVIDIA CUDA profiler (nvprof) and the related libraries</flag>
|
|
||||||
<flag name="rdma">Enable infiniband support via <pkg>sys-cluster/rdma-core</pkg></flag>
|
|
||||||
<flag name="sanitizer">Install compute-sanitizer tool</flag>
|
|
||||||
<flag name="vis-profiler">Install the NVIDIA CUDA visual profiler (nvvp)</flag>
|
|
||||||
</use>
|
|
||||||
</pkgmetadata>
|
|
@@ -1,382 +0,0 @@
|
|||||||
# Copyright 1999-2025 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
# shellcheck disable=SC2317
|
|
||||||
|
|
||||||
EAPI=8
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{11..13} )
|
|
||||||
inherit check-reqs edo toolchain-funcs
|
|
||||||
inherit python-r1
|
|
||||||
|
|
||||||
DRIVER_PV="575.57.08"
|
|
||||||
GCC_MAX_VER="14"
|
|
||||||
CLANG_MAX_VER="19"
|
|
||||||
|
|
||||||
DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)"
|
|
||||||
HOMEPAGE="https://developer.nvidia.com/cuda-zone"
|
|
||||||
SRC_URI="
|
|
||||||
amd64? (
|
|
||||||
https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run
|
|
||||||
)
|
|
||||||
arm64? (
|
|
||||||
https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux_sbsa.run
|
|
||||||
)
|
|
||||||
"
|
|
||||||
S="${WORKDIR}"
|
|
||||||
|
|
||||||
LICENSE="NVIDIA-CUDA"
|
|
||||||
|
|
||||||
SLOT="0/${PV}" # UNSLOTTED
|
|
||||||
# SLOT="${PV}" # SLOTTED
|
|
||||||
|
|
||||||
KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux"
|
|
||||||
IUSE="clang debugger examples nsight profiler rdma sanitizer"
|
|
||||||
RESTRICT="bindist mirror strip test"
|
|
||||||
|
|
||||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
|
||||||
|
|
||||||
# since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the
|
|
||||||
# actual required minimum driver version are different.
|
|
||||||
RDEPEND="
|
|
||||||
!clang? (
|
|
||||||
<sys-devel/gcc-$(( GCC_MAX_VER + 1 ))_pre[cxx]
|
|
||||||
)
|
|
||||||
clang? (
|
|
||||||
<llvm-core/clang-$(( CLANG_MAX_VER + 1 ))_pre
|
|
||||||
)
|
|
||||||
sys-process/numactl
|
|
||||||
debugger? (
|
|
||||||
${PYTHON_DEPS}
|
|
||||||
)
|
|
||||||
examples? (
|
|
||||||
media-libs/freeglut
|
|
||||||
media-libs/glu
|
|
||||||
)
|
|
||||||
nsight? (
|
|
||||||
dev-util/nsight-compute
|
|
||||||
dev-util/nsight-systems
|
|
||||||
)
|
|
||||||
rdma? (
|
|
||||||
sys-cluster/rdma-core
|
|
||||||
)
|
|
||||||
"
|
|
||||||
BDEPEND="
|
|
||||||
$(python_gen_any_dep '
|
|
||||||
dev-python/defusedxml[${PYTHON_USEDEP}]
|
|
||||||
')
|
|
||||||
"
|
|
||||||
|
|
||||||
# CUDA_PATH="/opt/cuda-${PV}" #950207
|
|
||||||
CUDA_PATH="/opt/cuda"
|
|
||||||
QA_PREBUILT="${CUDA_PATH#/}/*"
|
|
||||||
|
|
||||||
python_check_deps() {
|
|
||||||
python_has_version "dev-python/defusedxml[${PYTHON_USEDEP}]"
|
|
||||||
}
|
|
||||||
|
|
||||||
cuda-toolkit_check_reqs() {
|
|
||||||
if use amd64; then
|
|
||||||
export CHECKREQS_DISK_BUILD="7195M"
|
|
||||||
elif use arm64; then
|
|
||||||
export CHECKREQS_DISK_BUILD="6969M"
|
|
||||||
fi
|
|
||||||
|
|
||||||
"check-reqs_pkg_${EBUILD_PHASE}"
|
|
||||||
}
|
|
||||||
|
|
||||||
cuda_verify() {
|
|
||||||
# only works with unpacked sources
|
|
||||||
[[ "${EBUILD_PHASE}" != prepare ]] && return
|
|
||||||
|
|
||||||
# run self checks
|
|
||||||
local compiler_versions GCC_HAS_VER CLANG_HAS_VER
|
|
||||||
compiler_versions="$(
|
|
||||||
grep -oP "unsupported (GNU|clang) version.*(gcc versions later than|clang version must be less than) [0-9]*" \
|
|
||||||
"${S}"/builds/cuda_nvcc/targets/*/include/crt/host_config.h
|
|
||||||
)"
|
|
||||||
|
|
||||||
GCC_HAS_VER="$( echo "${compiler_versions}" | grep gcc | grep -oP "(?<=than )[0-9]*")"
|
|
||||||
if [[ "${GCC_MAX_VER}" -ne "${GCC_HAS_VER}" ]]; then
|
|
||||||
eqawarn "check GCC_MAX_VER is ${GCC_MAX_VER} and should be ${GCC_HAS_VER}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
CLANG_HAS_VER="$(( $(echo "${compiler_versions}" | grep clang | grep -oP "(?<=than )[0-9]*") - 1 ))"
|
|
||||||
if [[ "${CLANG_MAX_VER}" -ne "${CLANG_HAS_VER}" ]]; then
|
|
||||||
eqawarn "check CLANG_MAX_VER is ${CLANG_MAX_VER} and should be ${CLANG_HAS_VER}"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
cuda-toolkit_check_reqs
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
cuda-toolkit_check_reqs
|
|
||||||
|
|
||||||
if [[ "${MERGE_TYPE}" == binary ]]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
# we need python for manifest parsing and to determine the supported python versions for cuda-gdb
|
|
||||||
python_setup
|
|
||||||
|
|
||||||
if use amd64; then
|
|
||||||
narch=x86_64
|
|
||||||
elif use arm64; then
|
|
||||||
narch=sbsa
|
|
||||||
else
|
|
||||||
die "unknown arch ${ARCH}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
export narch
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
cuda_verify
|
|
||||||
|
|
||||||
local exclude=(
|
|
||||||
"cuda-installer"
|
|
||||||
"*-uninstaller"
|
|
||||||
"NVIDIA-Linux-${narch}-${DRIVER_PV}.run"
|
|
||||||
"builds/cuda_documentation"
|
|
||||||
"builds/cuda_nsight"
|
|
||||||
"builds/cuda_nvvp"
|
|
||||||
"builds/nsight_compute"
|
|
||||||
"builds/nsight_systems"
|
|
||||||
"builds/nvidia_fs"
|
|
||||||
)
|
|
||||||
|
|
||||||
edob -m "Extracting ${A}" \
|
|
||||||
bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n" "${exclude[@]}")
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
pushd "builds/cuda_nvcc/targets/${narch}-linux" >/dev/null || die
|
|
||||||
eapply -p5 "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch"
|
|
||||||
popd >/dev/null || die
|
|
||||||
|
|
||||||
default
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
:
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
:
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
local -x SKIP_COMPONENTS=(
|
|
||||||
"Kernel_Objects"
|
|
||||||
"Visual_Tools"
|
|
||||||
"Documentation" # obsolete
|
|
||||||
"cuda-gdb-src" # not used
|
|
||||||
)
|
|
||||||
|
|
||||||
! use debugger && SKIP_COMPONENTS+=( "cuda-gdb" )
|
|
||||||
! use examples && SKIP_COMPONENTS+=( "Demo_Suite" )
|
|
||||||
! use profiler && SKIP_COMPONENTS+=( "cuda-cupti" "cuda-profiler-api" "nvprof" )
|
|
||||||
! use sanitizer && SKIP_COMPONENTS+=( "compute-sanitizer" )
|
|
||||||
|
|
||||||
dodir "${CUDA_PATH}"
|
|
||||||
into "${CUDA_PATH}"
|
|
||||||
|
|
||||||
dofile() {
|
|
||||||
debug-print-function "${FUNCNAME[0]}" "$@"
|
|
||||||
|
|
||||||
if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then
|
|
||||||
die "${FUNCNAME[0]} must receive one or two arguments"
|
|
||||||
fi
|
|
||||||
|
|
||||||
local _DESTDIR
|
|
||||||
_DESTDIR="$(dirname "${CUDA_PATH}/${1%/}")${2:+/${2%/}}"
|
|
||||||
mkdir -p "${ED}${_DESTDIR}" || die "mkdir ${_DESTDIR} failed"
|
|
||||||
|
|
||||||
local dir
|
|
||||||
dir="$(dirname "${1}")"
|
|
||||||
|
|
||||||
if test -z "$(find "${dir}" -maxdepth 1 -name "$(basename "$1")" -print -quit)"; then
|
|
||||||
if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
if [[ "$1" == "targets/x86_64-linux/lib/stubs/libcusolverMg*" ]] ||
|
|
||||||
[[ "$1" == "targets/x86_64-linux/lib/libcusparse.so.*" ]]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then
|
|
||||||
# skip noisy warnings
|
|
||||||
if [[ "$(basename "${1}")" == "include" ]] ||
|
|
||||||
[[ "$(basename "${1}")" == "lib64" ]]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
eqawarn "${ED}${_DESTDIR}/$(basename "${1}") exists"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
eval mv -i "${1}" "${ED}${_DESTDIR}" || die "mv failed ${PWD} / ${1} -> ${ED} ${_DESTDIR}"
|
|
||||||
}
|
|
||||||
|
|
||||||
dopcfile() {
|
|
||||||
[[ $# -eq 0 ]] && return
|
|
||||||
|
|
||||||
dodir "${CUDA_PATH}/pkgconfig"
|
|
||||||
cat > "${ED}${CUDA_PATH}/pkgconfig/${1}.pc" <<-EOF || die "dopcfile"
|
|
||||||
cudaroot=${EPREFIX}${CUDA_PATH}
|
|
||||||
libdir=\${cudaroot}/targets/${narch}-linux/lib${4}
|
|
||||||
includedir=\${cudaroot}/targets/${narch}-linux/include
|
|
||||||
|
|
||||||
Name: ${1}
|
|
||||||
Description: ${3}
|
|
||||||
Version: ${2}
|
|
||||||
Libs: -L\${libdir} -l${1}
|
|
||||||
Cflags: -I\${includedir}
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
pushd builds >/dev/null || die
|
|
||||||
fix_executable_bit=(
|
|
||||||
cuda_cupti/extras/CUPTI/samples/pc_sampling_utility/pc_sampling_utility_helper.h
|
|
||||||
cuda_cupti/extras/CUPTI/samples/pc_sampling_continuous/libpc_sampling_continuous.pl
|
|
||||||
|
|
||||||
libcufile/gds/tools/run_gdsio.cfg
|
|
||||||
)
|
|
||||||
|
|
||||||
if use amd64; then
|
|
||||||
fix_executable_bit+=(
|
|
||||||
cuda_opencl/targets/*/include/CL/cl.hpp
|
|
||||||
|
|
||||||
libcufile/targets/*/lib/libcufile_rdma_static.a
|
|
||||||
libcufile/targets/*/lib/libcufile_static.a
|
|
||||||
)
|
|
||||||
fi
|
|
||||||
chmod -x "${fix_executable_bit[@]}" || die "failed chmod"
|
|
||||||
popd >/dev/null || die
|
|
||||||
|
|
||||||
ebegin "parsing manifest" "${S}/manifests/cuda_"*.xml # {{{
|
|
||||||
|
|
||||||
"${EPYTHON}" "${FILESDIR}/parse_manifest.py" "${S}/manifests/cuda_"*".xml" &> "${T}/install.sh" \
|
|
||||||
|| die "failed to parse manifest"
|
|
||||||
# shellcheck disable=SC1091
|
|
||||||
source "${T}/install.sh" || die "failed to source install script"
|
|
||||||
|
|
||||||
eend $? # }}}
|
|
||||||
|
|
||||||
if use debugger; then
|
|
||||||
if [[ -d "${ED}/${CUDA_PATH}/extras/Debugger/lib64" ]]; then
|
|
||||||
rmdir "${ED}/${CUDA_PATH}/extras/Debugger/lib64" || die "remove debugger lib64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
find "${ED}/${CUDA_PATH}/bin" -maxdepth 1 -name "cuda-gdb-*-tui" -print0 | while read -rd $'\0' tui_name; do
|
|
||||||
impl="$(basename "${tui_name}" | cut -d '-' -f 3 | tr '.' '_')"
|
|
||||||
|
|
||||||
if ! has "${impl}" "${PYTHON_COMPAT[@]}" || ! use "python_targets_${impl}"; then
|
|
||||||
rm "${tui_name}" || die "tui-name rm ${tui_name}"
|
|
||||||
sed -e "/$(basename "${tui_name}")\"/d" -i "${ED}/${CUDA_PATH}/bin/cuda-gdb" || die "tui_name sed"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
# remove rdma libs (unless USE=rdma)
|
|
||||||
if ! use rdma; then
|
|
||||||
rm "${ED}/${CUDA_PATH}/targets/${narch}-linux/lib/libcufile_rdma"* || die "failed to remove rdma files"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Add include and lib symlinks
|
|
||||||
dosym -r "${CUDA_PATH}/targets/${narch}-linux/include" "${CUDA_PATH}/include"
|
|
||||||
dosym -r "${CUDA_PATH}/targets/${narch}-linux/lib" "${CUDA_PATH}/$(get_libdir)"
|
|
||||||
|
|
||||||
find "${ED}/${CUDA_PATH}" -empty -delete || die
|
|
||||||
|
|
||||||
local ldpathextradirs pathextradirs
|
|
||||||
|
|
||||||
use debugger && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/Debugger/lib64"
|
|
||||||
use profiler && ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/CUPTI/lib64"
|
|
||||||
|
|
||||||
local revord=$(( 999999 - $(printf "%02d%02d%02d" "$(ver_cut 1)" "$(ver_cut 2)" "$(ver_cut 3)") ))
|
|
||||||
newenvd - "99cuda${revord}" <<-EOF
|
|
||||||
PATH=${EPREFIX}${CUDA_PATH}/bin${pathextradirs}
|
|
||||||
PKG_CONFIG_PATH=${EPREFIX}${CUDA_PATH}/pkgconfig
|
|
||||||
LDPATH=${EPREFIX}${CUDA_PATH}/$(get_libdir):${EPREFIX}${CUDA_PATH}/nvvm/lib64${ldpathextradirs}
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# CUDA prepackages libraries, don't revdep-build on them
|
|
||||||
insinto /etc/revdep-rebuild
|
|
||||||
newins - "80${PN}${revord}" <<-EOF
|
|
||||||
SEARCH_DIRS_MASK="${EPREFIX}${CUDA_PATH}"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# https://bugs.gentoo.org/926116
|
|
||||||
insinto /etc/sandbox.d
|
|
||||||
newins - "80${PN}" <<-EOF
|
|
||||||
SANDBOX_PREDICT="/proc/self/task"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# TODO drop and replace with runtime detection similar to what python does {{{
|
|
||||||
# ATTENTION: change requires revbump, see link below for supported GCC # versions
|
|
||||||
# https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements
|
|
||||||
local cuda_supported_gcc=( 8.5 9.5 10 11 12 13 "${GCC_MAX_VER}" )
|
|
||||||
|
|
||||||
sed \
|
|
||||||
-e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc[*]}:g" \
|
|
||||||
"${FILESDIR}"/cuda-config.in > "${ED}/${CUDA_PATH}/bin/cuda-config" || die
|
|
||||||
fperms +x "${CUDA_PATH}/bin/cuda-config"
|
|
||||||
# }}}
|
|
||||||
|
|
||||||
# skip til cudnn has been changed #950207
|
|
||||||
# if [[ "${SLOT}" != "${PV}" ]]; then
|
|
||||||
# dosym -r "${CUDA_PATH}" "${CUDA_PATH%"-${PV}"}"
|
|
||||||
# fi
|
|
||||||
|
|
||||||
fowners -R root:root "${CUDA_PATH}"
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst_check() {
|
|
||||||
if tc-is-gcc || ! use clang; then
|
|
||||||
if ver_test "$(gcc-major-version)" -gt "${GCC_MAX_VER}"; then
|
|
||||||
ewarn
|
|
||||||
ewarn "gcc > ${GCC_MAX_VER} will not work with CUDA"
|
|
||||||
ewarn
|
|
||||||
ewarn "Append --ccbin= pointing to a gcc bindir to the nvcc compiler flags (NVCCFLAGS)"
|
|
||||||
ewarn "or set NVCC_CCBIN to the same bindir."
|
|
||||||
ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")\""
|
|
||||||
ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")"
|
|
||||||
ewarn
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if tc-is-clang || use clang; then
|
|
||||||
if ver_test "$(clang-major-version)" -gt "${CLANG_MAX_VER}"; then
|
|
||||||
ewarn
|
|
||||||
ewarn "clang > ${CLANG_MAX_VER} will not work with CUDA"
|
|
||||||
ewarn
|
|
||||||
ewarn "Append --ccbin= pointing to a clang bindir to the nvcc compiler flags (NVCCFLAGS)"
|
|
||||||
ewarn "or set NVCC_CCBIN to the same bindir."
|
|
||||||
ewarn " NVCCFLAGS=\"--ccbin=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")\""
|
|
||||||
ewarn " NVCC_CCBIN=$(eval echo "${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")"
|
|
||||||
ewarn
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
|
||||||
pkg_postinst_check
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use profiler; then
|
|
||||||
einfo
|
|
||||||
einfo "nvidia-drivers restricts access to performance counters."
|
|
||||||
einfo "You'll need to run profiling tools (nvprof) "
|
|
||||||
einfo "using sudo (needs cap SYS_ADMIN) or add the following line to "
|
|
||||||
einfo "a modprobe configuration file "
|
|
||||||
einfo "(e.g. /etc/modprobe.d/nvidia-prof.conf): "
|
|
||||||
einfo
|
|
||||||
einfo "options nvidia NVreg_RestrictProfilingToAdminUsers=0"
|
|
||||||
einfo
|
|
||||||
fi
|
|
||||||
}
|
|
@@ -1,3 +1,4 @@
|
|||||||
DIST deskflow-1.22.0.tar.gz 1855676 BLAKE2B c66f94ff8a6c6cbb9fdce83ba1e677d53f11f6646aabc7b623c027236699f53e11faf431a9a01bccefbdd5dc3e3069de62d4eb99476cd6fedfdd9ee41c3a925d SHA512 a1ce959b287e3fa22216b098e21af6572ea38c5010fc2d916a895e05eb8e8ee9c6d7f13f5e4380ed6f760ca5b9ce8c513d5156a4dace8dcc71ca2a06a4b875bb
|
DIST deskflow-1.23.0.tar.gz 1825112 BLAKE2B 4ff04858f75abeff121a4599bbd90b13dfad261d773abfc4d5f6784d56e7fae722ac2c3d28ea9d1e9feee892b5be7f862a7157b0868cfc5fe50f9616d4d54be7 SHA512 b65aa09374ae40b74336fbef851e3aa4334573f6935dbd15c01cfd29637440e46d8815dbb137a382f89e6bf99d4a9c371740140b5a49f534dc856fbae3182d86
|
||||||
EBUILD deskflow-1.22.0.ebuild 1353 BLAKE2B 92e915162b6efd9e40681501f5f79f9e9e30aa495b77b4c783c64544d94cd0af4a8b1abc2a16d9e126db20aca331bdf197c5fcfd9460a75eec4261a10f362af0 SHA512 a497f082db854bc4b14db8e35691622e45a212edecfe7accdbdfc3a44a9c3dbed38cbd3934ce9e1dfe75be70a56ba7db88fcf111e2b9e3b10fc87936d2c6be40
|
EBUILD deskflow-1.23.0.ebuild 1420 BLAKE2B 09a11a85ce95db1ac0dc3df3c0f4ddab70174e065744632198e4794b219d822a79c54fb859cf6565c31371d44295548392d7c99354459151112614d795e5b06f SHA512 9d1d1cdb6e8018f67219039f0ba09e9f712bce45b8bc1ab3dd554126451be243c5eaeb884876dd66e570fe06632bf6163600d620fec008a8121cc26c4b1ef31a
|
||||||
MISC metadata.xml 330 BLAKE2B c48d2d45fcfce50cb12db8c7aa1ad95a247a72930ec3066931c6ea76c250fb4f2749089dbb461dd4dd4d6c281d88d37c1a5aacb9acc00cc49be9d633e5c6bba9 SHA512 8a1e1e856b76fc5d5789af2254313c936f7eb71288de6d996d13e8d398a77734703e478200585b9e927c69e9bf0a1d4284ca9e5e3806bb9123f4ecc6e36e07e1
|
MISC metadata.xml 330 BLAKE2B c48d2d45fcfce50cb12db8c7aa1ad95a247a72930ec3066931c6ea76c250fb4f2749089dbb461dd4dd4d6c281d88d37c1a5aacb9acc00cc49be9d633e5c6bba9 SHA512 8a1e1e856b76fc5d5789af2254313c936f7eb71288de6d996d13e8d398a77734703e478200585b9e927c69e9bf0a1d4284ca9e5e3806bb9123f4ecc6e36e07e1
|
||||||
|
MISC pkg 341 BLAKE2B 9fdc544e1712393c5e0e12287958bb60c2914a1594567be8be6da40eccdb60018fc25c900b892f547deebb0ef89621662216304f757f8cb9b74be0e5111b0dab SHA512 2386cfb9868a58deef2805f48ca9aa5718115b9e5a16fc8a2e540a633ae8ec6686618a40de634866e390075b624207cdbfae0688a6ebf9a5d92b721cd0d41033
|
||||||
|
@@ -24,7 +24,7 @@ RESTRICT="!test? ( test )"
|
|||||||
RDEPEND="
|
RDEPEND="
|
||||||
dev-cpp/tomlplusplus
|
dev-cpp/tomlplusplus
|
||||||
dev-libs/glib:2
|
dev-libs/glib:2
|
||||||
dev-libs/libei
|
>=dev-libs/libei-0.99.1
|
||||||
dev-libs/libportal:=
|
dev-libs/libportal:=
|
||||||
dev-libs/openssl:0=
|
dev-libs/openssl:0=
|
||||||
dev-qt/qtbase:6[dbus,network,xml]
|
dev-qt/qtbase:6[dbus,network,xml]
|
||||||
@@ -55,18 +55,19 @@ BDEPEND="
|
|||||||
|
|
||||||
DOCS=(
|
DOCS=(
|
||||||
README.md
|
README.md
|
||||||
doc/configuration.md
|
doc/user/configuration.md
|
||||||
)
|
)
|
||||||
|
|
||||||
src_configure() {
|
src_configure() {
|
||||||
local mycmakeargs=(
|
local mycmakeargs=(
|
||||||
-DBUILD_GUI=$(usex gui)
|
-DBUILD_GUI=$(usex gui)
|
||||||
-DBUILD_TESTS=$(usex test)
|
-DBUILD_TESTS=$(usex test)
|
||||||
|
$(usex test -DSKIP_BUILD_TESTS=ON "")
|
||||||
)
|
)
|
||||||
cmake_src_configure
|
cmake_src_configure
|
||||||
}
|
}
|
||||||
|
|
||||||
src_test() {
|
src_test() {
|
||||||
"${BUILD_DIR}"/bin/unittests || die
|
"${BUILD_DIR}"/bin/legacytests || die
|
||||||
virtx "${BUILD_DIR}"/bin/integtests
|
BUILD_DIR+=/src/unittests virtx cmake_src_test
|
||||||
}
|
}
|
@@ -1,3 +1,3 @@
|
|||||||
DIST qt6ct-kde-0.10.tar.gz 160189 BLAKE2B f49819a0eac5161d260e96b98e501787abc0e953e0026f1b05649a9c03d346f37df185f62b20a318038e542a192e047c9294e8788e92cfe5868ed5e8f807627f SHA512 4a64ebe79cab0660178693bddce15bcf87c36b0331cd93578c1f09987c49ca28bb30cb39a1973338981d69c50976c2a37dec55b3f8f9d4520ffcbf0e73757ccd
|
DIST qt6ct-kde-0.10.tar.gz 160189 BLAKE2B f49819a0eac5161d260e96b98e501787abc0e953e0026f1b05649a9c03d346f37df185f62b20a318038e542a192e047c9294e8788e92cfe5868ed5e8f807627f SHA512 4a64ebe79cab0660178693bddce15bcf87c36b0331cd93578c1f09987c49ca28bb30cb39a1973338981d69c50976c2a37dec55b3f8f9d4520ffcbf0e73757ccd
|
||||||
EBUILD qt6ct-kde-0.10.ebuild 1355 BLAKE2B 0ff1084d38cb698db18f0e065fcf0f2fef40a69603e30cf33a1eea2b20ef5571daf20d2276d2e8c4f8abb64e698f5ec74ca54639d2598974fafc53d29b3a15d5 SHA512 35a038bf63dc0a307d653217a82d056f2de067c13fa1c2d3e96ab704fde966650e7a203a626c90ea138abd219b85115da6568de7bcd3bdfd592bd63b4a3829df
|
EBUILD qt6ct-kde-0.10.ebuild 1348 BLAKE2B efa5d963ecc09b495f887d87587af0d55f8cfef9576435ea8a3f4cdf82d9a7e75bdf395594d4a5df8d112a872335ffb4c8f9955cd92a5cae9c97bba968d8c230 SHA512 14278db85541239ee47d9c754b74a5bb9ac0ee21a5f6640329edff911c20c039c71870a60c7625ac4a021c371cd82ba87614b3104d192d1e2acf24c4095f22a4
|
||||||
MISC metadata.xml 246 BLAKE2B a512e6e8ffd8a998f89ea9dbf8a29dd4bb2d6db435e4ac0ef3182fc23996e04a6e87c1771975d835038ad86d6cb61e4a1aea8b80286666d64ad0b511c9d8f163 SHA512 d827f64596500d61c0f24c9d2a69fa3ca2f8b52e5f5815106d7db2837482172f0518d99677e6332a69fd4c34289ef817203a5047363ea7d2c10372b09f9e0618
|
MISC metadata.xml 471 BLAKE2B a2021714574ce0ac3cf571ed8038d5fcbc0e5fdba8575396ef9220d870672da076b1b18ddc6a44f553304aa683208f284f9afd0db9effe387d810284d70a883c SHA512 24ab0e19b9d3c0f202d44f94cff971c4dac2331c927e52af5fda5b44826d0ba4d8d13b20470cd2b0952f3a192708321a867fa9197f62992f066b11b121e295eb
|
||||||
|
@@ -5,7 +5,8 @@
|
|||||||
<email>pierre.saundersgb@gmail.com</email>
|
<email>pierre.saundersgb@gmail.com</email>
|
||||||
<name>Pierre Saunders</name>
|
<name>Pierre Saunders</name>
|
||||||
</maintainer>
|
</maintainer>
|
||||||
<upstream>
|
<longdescription lang="en">
|
||||||
<remote-id type="github">ilya-fedin/qt6ct</remote-id>
|
qt6ct-kde allows users to configure Qt6 settings (theme, font, icons, etc.)
|
||||||
</upstream>
|
under DE/WM without Qt integration patched to work correctly with KDE applications
|
||||||
|
</longdescription>
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
||||||
|
@@ -5,9 +5,9 @@ EAPI=8
|
|||||||
|
|
||||||
inherit cmake
|
inherit cmake
|
||||||
|
|
||||||
DESCRIPTION="Qt6 Configuration Tool (for DE/WM without Qt integration) patched to work correctly with KDE applications"
|
DESCRIPTION="Qt 6 Configuration Utility, patched to work correctly with KDE applications"
|
||||||
HOMEPAGE="https://github.com/ilya-fedin/qt6ct/"
|
HOMEPAGE="https://www.opencode.net/trialuser/qt6ct"
|
||||||
SRC_URI="https://github.com/ilya-fedin/qt6ct/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
SRC_URI="https://www.opencode.net/trialuser/qt6ct/-/archive/${PV}/qt6ct-${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
S="${WORKDIR}/qt6ct-${PV}"
|
S="${WORKDIR}/qt6ct-${PV}"
|
||||||
|
|
||||||
LICENSE="BSD-2"
|
LICENSE="BSD-2"
|
||||||
|
61
licenses/NDI_EULA_END
Normal file
61
licenses/NDI_EULA_END
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
NDI Software Development Kit (SDK) License Agreement
|
||||||
|
|
||||||
|
Please read this document carefully before proceeding. You (the undersigned Licensee) hereby agree to the terms of this NDI® Software Development Kit (SDK) License Agreement (the "License") in order to use the SDK. Vizrt NDI AB (“NDI”) agrees to license you certain rights as set forth herein under these terms.
|
||||||
|
|
||||||
|
1. Definitions
|
||||||
|
a. "SDK" means the entire NDI® Software Development Kit, including those portions pertaining to the Specific SDK, provided to you pursuant to this License, including any source code, compiled executables or libraries, and all documentation provided to you to assist you in building tools that use the NDI® Software for data transfer over a local network.
|
||||||
|
b. "Products" means your software product(s) and/or service(s) that you develop or that are developed on your behalf through the use of the SDK and that are designed to be, and/or are, used, sold and/or distributed to work closely with other NDI Products or Third Party Video Products.
|
||||||
|
c. “NDI Products refers to NDI’s line of products distributed by NDI and any upgrades.
|
||||||
|
d. “SDK Documentation” refers to the documentation included with the Software Development Kit including that portion pertaining to the Specific SDK.
|
||||||
|
e. “Specific SDK” refers to the specific SDK for which you intend to use the NDI® SDK and this license (for example: NDI® Send, NDI Receive, NDI Find, or other SDK’s that are available from time to time. These are examples only and NDI may add or subtract to this list at its discretion, and you agree to use them only in accordance with this Agreement), and includes the documentation relating to it.
|
||||||
|
f. “Third Party Video Products” refers to products of third parties developed by or for them also using the NDI® Software Development Kit in any way.
|
||||||
|
|
||||||
|
2. License
|
||||||
|
a. Pursuant to the terms, conditions and requirements of this License and the SDK Documentation, you are hereby granted a nonexclusive royalty-free license to use the sample code, object code and documentation included in the SDK for the sole purpose of developing Products using the Specific SDK, and to distribute, only in accordance with the SDK Documentation requirements, object code included in the SDK solely as used by such Products (your Product and compiled sample code referred to as the “Bundled Product”).
|
||||||
|
b. If you are making a product release you must use a version of the SDK that is less than thirty (30) days old if there is one.
|
||||||
|
c. This is a License only, and no employment, joint venture, partnership, or other business venture is created by this License.
|
||||||
|
d. Unless otherwise stated in the SDK, no files within the SDK and the Specific SDK may be distributed. Certain files within the SDK or the Specific SDK may be distributed, said files and their respective distribution license are individually identified within the SDK documentation. This is not a license to create revisions or other derivative works of any NDI software or technology.
|
||||||
|
e. You agree to comply with the steps outlined in the SDK Documentation, including the SDK manual for the Specific SDK. Different obligations and restrictions may be imposed by NDI with respect to different Specific SDK’s. NDI will not agree to sponsor your Product or show affiliation; however NDI shall have the right to test the Product, and if it does not work or operate to NDI’s satisfaction, NDI may terminate this license pursuant to Section 10. Notwithstanding that NDI may test the Product, it does not warrant the test; it is for NDI’s benefit, and you agree not to promote in your Product marketing or elsewhere any results or that NDI has tested the Product.
|
||||||
|
f. You acknowledge that information provided to NDI to induce NDI to enter into this license with you about your experience in the industry, sales, distribution, SDK experience or otherwise, whether such information is provided to NDI verbally or in writing, is true.
|
||||||
|
g. NDI makes the SDK available for developers for developing Products only, under these specific conditions herein, and if any, or all, of the terms of this license are not enforceable within your legal jurisdiction in any way, or if any clause is voided or modified in any way, then you may not enter into this agreement, any license and permission granted herein is revoked and withdrawn as of the date you first downloaded and/or used the SDK, and you are then unauthorized to copy, create derivative works, or otherwise use the SDK in any way.
|
||||||
|
|
||||||
|
|
||||||
|
3. Restrictions and Confidentiality.
|
||||||
|
a. “Confidential Information” includes the SDK and all specifications, source code, example code, tools and documentation provided within the SDK, and any support thereof, and any other proprietary information provided by NDI and identified as Confidential in the course of assisting You with your NDI® implementation. Confidential Information does not include information that: 1) is or becomes generally available to the public other than as a result of a disclosure by You, or 2) becomes available to You on a non-confidential basis from a source that was not prohibited from disclosing such information. Except as authorized herein, or in the SDK Documentation, or as otherwise approved in writing by NDI: 1) The disclosure to you of the SDK and all other Confidential Information shall not be disclosed to any third party 2)You agree not to commercialize the Confidential Information for yours or others benefit in any way; 3) You will not make or distribute copies of the SDK, or other Confidential Information or electronically transfer the SDK to any individual within your business or company who does not need to know or view the SDK, and under no circumstances shall you disclose it, or any part of it, to any company, or any other individual not employed directly by the business or company you represent, without express written permission of NDI.
|
||||||
|
b. You will not modify, sell, rent, transfer, resell for profit, distribute, or create derivative works based upon the SDK or any part thereof other than as set forth herein, and you will not allow independent contractors to create derivative works; however, you may use the SDK to create your own program for the primary purpose of making it or your Product compatible with the NDI network APIs, a NDI Product, or for other purposes expressly set forth by you in advance in writing and agreed to in writing by NDI. In the case of your derivative works based upon the SDK, you may create and revise your Product using the SDK, and sell, rent, transfer, resell for profit and distribute, so long as it is for the Principal objective for which you were provided the SDK and it otherwise complies with this agreement, including the requirement that your Product or any other Third Party Product using any portion of the SDK continues to use the current SDK as required herein and functions properly using the SDK. NDI reserves the right to determine at any time the compliance of your Product or any Third Party Product as properly using the SDK including maintaining current and complete NDI compatibility. Notwithstanding anything to the contrary herein, no intellectual property claim, whether in patent, trademark, copyright, or otherwise, is made by NDI in or to your Product (except as to the SDK including software code and/or Libraries, and copyright rights therein, and any Confidential Information used in or with the Product).
|
||||||
|
c. You will comply with applicable export control and trade sanctions laws, rules, regulations and licenses and will not export or re-export, directly or indirectly, the SDK into any country, to any organization or individual prohibited by the United States Export Administration Act and the regulations thereunder.
|
||||||
|
d. Any direct or indirect distribution of your Product or any Bundled Products by you that include your Product, shall be under the terms of a license agreement containing terms that: (i) prohibit any modifications to the SDK or any part thereof, (ii) prohibit any reverse engineering, disassembly or recompilation of the SDK or any part thereof, or any protocols used in the SDK, and further prohibit any attempt to do so; (iii) disclaim any and all warranties on behalf of NDI and each of its licensors, (iv) disclaim, to the extent permitted by applicable law, liability of NDI and/or its licensors for any damages, whether direct, indirect, incidental or consequential, arising from the use of the Product or Bundled Products, (v) comply fully with all relevant export laws and regulations of the United States to assure that the Bundled Products or any part thereof is not exported, directly or indirectly, in violation of United States law; (vi) include the appropriate copyright notice showing NDI, Inc. as copyright owner; (vii) require all third party developers using your Product to develop Third Party Products to comply with the terms of the NDI® SDK license, including that such Third Party Products have current and complete NDI compatibility, and further require such third party developers to include in their End User License Agreement the terms of this paragraph 3d.
|
||||||
|
e. You agree not to use the SDK for any unlawful propose or in any way to cause injury, harm or damage to NDI, or its Products, trademarks, reputation and/or goodwill, or use information provided pursuant to the SDK, to interfere with NDI in the commercialization of NDI Products.
|
||||||
|
f. You agree to use NDI trademarks (NDI trademarks include, but are not limited to NDI®, NDIHX™), only in accordance with applicable policies of NDI for such trademark usage by software developers in effect from time to time, which policy may be amended at any time with or without notice. NDI’s trademarks shall not be utilized within the Product itself, or on the Product packaging or promotion, or on websites, except to identify that the Product is compatible with NDI’s pertinent Video Product, and in all cases where NDI trademarks are utilized, special and clear notations shall be provided that the marks are NDI trademarks. Your Product is not a product of NDI and no promotion, packaging, or use of NDI trademarks shall suggest sponsorship by NDI of your Products, except where specifically authorized by NDI in writing. Any distribution of your Product in a fraudulent manner, or in any other manner or method that violates any civil or criminal laws shall constitute a default under this agreement and result in immediate revocation of any right to utilize NDI’s marks.
|
||||||
|
g. NDI owns or has licensed copyright rights to the SDK. To the extent any of the SDK is incorporated into your Product, you agree to include all applicable copyright notices, along with yours, indicating NDI’s copyright rights as applicable and as requested by NDI.
|
||||||
|
h. You agree that by using the SDK, or any portion or part of the NDI® Software, in your Products, that you shall not at any time during the term create, use or distribute Products utilizing the NDI® SDK that are not interoperable with, or have significantly degraded performance of functionality when working with, NDI Products or Third Party Video Products that are created with or utilize in whole or in part the SDK. Your Products and Third Party Products must maintain current and complete NDI® compatibility at all times.
|
||||||
|
i. You agree to not to reverse engineer, disassemble or recompile the SDK or any part thereof, or any protocols used in the SDK, or attempt to do so.
|
||||||
|
j. You agree not to use the SDK, or cause the SDK to be used, for any purpose that it was not designed for, and in particular, you agree not to use the SDK for any purpose but for the precise purposes as expressly identified to NDI in writing that is the basis of the SDK and this license, and you agree you will not attempt to violate any of the foregoing, or encourage third parties to do so.
|
||||||
|
|
||||||
|
4. Software Defect Reporting
|
||||||
|
If you find software defects in the SDK, you agree to make reasonable effort to report them to NDI in accordance with the SDK documentation or in such other manner as NDI directs in writing. NDI will evaluate and, at its sole discretion, may address them in a future revision of the SDK. NDI does not warrant the SDK to be free of defects.
|
||||||
|
|
||||||
|
5. Updates
|
||||||
|
You understand and agree that NDI may amend, modify, change, and/or cease distribution or production of the SDK at any time. You understand that you are not entitled to receive any upgrades, updates, or future versions of the SDK under this License. NDI does not warrant or represent that its future updates and revisions will be compatible with your Product, and NDI does not warrant that its updates and/or revisions will allow your Product to be compatible with or without modifications to your Product.
|
||||||
|
|
||||||
|
6. Ownership
|
||||||
|
Nothing herein is intended to convey to you any patent, trademark, copyright, trade secret or other Intellectual Property owned by NDI or its Licensors in the SDK or in any NDI software, hardware, products, trade names, or trademarks. NDI and its suppliers or licensors shall retain all right, title, and interest to the foregoing Intellectual Property and to the SDK. All rights not expressly granted herein are reserved by NDI.
|
||||||
|
|
||||||
|
7. Indemnity and Limitations
|
||||||
|
You agree to indemnify and hold NDI harmless from any third party claim, loss, or damage (including attorney's fees) related to your use, sale or distribution of the SDK. THE SDK IS PROVIDED TO YOU FREE OF CHARGE, AND ON AN "AS IS" BASIS AND "WITH ALL FAULTS", WITHOUT ANY TECHNICAL SUPPORT OR WARRANTY OF ANY KIND FROM NDI. YOU ASSUME ALL RISKS THAT THE SDK IS SUITABLE OR ACCURATE FOR YOUR NEEDS AND YOUR USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK. NDI AND ITS LICENSORS DISCLAIM ALL EXPRESS AND IMPLIED WARRANTIES FOR THE SDK INCLUDING, WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. ALSO, THERE IS NO WARRANTY OF NON-INFRINGEMENT, TITLE OR QUIET ENJOYMENT. SOME STATES DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION MAY NOT APPLY TO YOU. YOU MAY ALSO HAVE OTHER LEGAL RIGHTS THAT VARY FROM STATE TO STATE.
|
||||||
|
|
||||||
|
8. Limitation of Damages
|
||||||
|
NEITHER NDI NOR ITS SUPPLIERS OR LICENSORS SHALL BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES OR LOSS (INCLUDING DAMAGES FOR LOSS OF BUSINESS, LOSS OF PROFITS, OR THE LIKE), ARISING OUT OF THIS LICENSE WHETHER BASED ON BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, PRODUCT LIABILITY OR OTHERWISE, EVEN IF NDI OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS LIMITATION OR EXCLUSION MAY NOT APPLY TO YOU. The limited warranty, exclusive remedies and limited liability set forth above are fundamental elements of the basis of the bargain between NDI and you. You agree that NDI would not be able to provide the Software on an economic basis without such limitations. IN NO EVENT WILL NDI BE LIABLE FOR ANY AMOUNT GREATER THAN WHAT YOU ACTUALLY PAID FOR THE SDK.
|
||||||
|
|
||||||
|
9. Termination
|
||||||
|
Either party may terminate this License upon thirty (30) days written notice. Either party may also terminate if the other party materially defaults in the performance of any provision of this License, the non-defaulting party gives written notice to the other party of such default, and the defaulting party fails to cure such default within ten (10) days after receipt of such notice. Upon the termination of this License, the rights and licenses granted to you by NDI pursuant to this License will automatically cease. Nothing herein shall prevent either party from pursuing any injunctive relief at any time if necessary, or seeking any other remedies available in equity. Each party reserves the right to pursue all legal and equitable remedies available. Upon termination, all SDK materials shall be promptly returned to NDI, and any and all copies stored in electronic or other format shall be deleted and destroyed, and any rights to use NDI’s trademarks are revoked. If this License is terminated for any reason, the provisions of Sections 1, 3, 6, 7, 8, 9, 10, and 11 shall survive such termination.
|
||||||
|
|
||||||
|
10. General
|
||||||
|
Notices given hereunder may be sent to either party at the address below by either overnight mail or by email and are deemed effective when sent. This License shall be governed by the laws of Sweden, without regard to its choice of law rules and you agree to exclusive jurisdiction therein. This License contains the complete agreement between you and NDI with respect to the subject matter (SDK) of this License, and supersedes all prior or contemporaneous agreements or understandings, whether oral or written. It does not replace any licenses accompanying NDI Products. You may not assign this SDK License.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
April 2023 NDI® Technology License Agreement
|
||||||
|
|
||||||
|
|
@@ -1,5 +1,5 @@
|
|||||||
AUX imgui-docking-meson.build 5691 BLAKE2B 332d560d54b51e8dc54c638622a79464e471cd5a007d6716a470dc389c60e5d82054674e1c665765aba04059dd340275000cef7a96702e733bd0508909120c3f SHA512 7bfaf4f62fbe331072525263150fc231971020ea356fcf5ef4d773e61e39b52f79558534527b9086884029fa262eeeef588fa98b547590d1f790b49838123930
|
AUX imgui-docking-meson.build 5691 BLAKE2B 332d560d54b51e8dc54c638622a79464e471cd5a007d6716a470dc389c60e5d82054674e1c665765aba04059dd340275000cef7a96702e733bd0508909120c3f SHA512 7bfaf4f62fbe331072525263150fc231971020ea356fcf5ef4d773e61e39b52f79558534527b9086884029fa262eeeef588fa98b547590d1f790b49838123930
|
||||||
AUX imgui-docking-meson_options.txt 887 BLAKE2B c3cee068700d00b14e98522a464d5dd373c20e7f6fd81295fb694f402e663a9e5c040701c9cf1297b9aab4159945b00b0e6460557835c6b764f5897776e92236 SHA512 e33e892aaae8a12a656b91ff4275b3f286d3806b7eea1a325e701dfb0e3f6bdd27de0c5e5765413503cd7c780f1a48e16027cddef71a4864cbd20d7e54b40a4c
|
AUX imgui-docking-meson_options.txt 887 BLAKE2B c3cee068700d00b14e98522a464d5dd373c20e7f6fd81295fb694f402e663a9e5c040701c9cf1297b9aab4159945b00b0e6460557835c6b764f5897776e92236 SHA512 e33e892aaae8a12a656b91ff4275b3f286d3806b7eea1a325e701dfb0e3f6bdd27de0c5e5765413503cd7c780f1a48e16027cddef71a4864cbd20d7e54b40a4c
|
||||||
DIST imgui-1.92.0-docking.tar.gz 2080780 BLAKE2B cf67a70bedc5bfbb4e21e2cc0adc74eae20b5996499fc4c892ea5bc867d175142b48fb9fea9ac9fd84d8c5e9483a59d0d3ab0fcb4a53b31b1954c3fb0f4c239e SHA512 16aa9adc5e2a753a1c3a6fe121db6920755160f42793d8726fc6a69006f56b1316302820b9429671bce763fef6fc2b2dda0e09fbacdbf54cdd1680ec8a62165a
|
DIST imgui-1.92.1-docking.tar.gz 2087814 BLAKE2B c334f3b06f9a7d61aba47022aa8209cdce6ca6e5db4c0cccd784690b3c3f6d2c8a30a38e73f9399964b6a65c6a1dad4a8f8273280404ebcb535df24c4b73212f SHA512 a6bce731285669667df32092b58b95a246c9db2d695950b699cefcda33d8eb470cfd00e44fedd1e5bc79df5981669feee792b63440c671828fe629548f0f5dc5
|
||||||
EBUILD imgui-docking-1.92.0.ebuild 2111 BLAKE2B 1ba57d237cf4db3ab9926c5b001d723de3a557d0931e1275d57faf1812b26dac46e46ee4e40eaf2fbaa67fedaef6b522936adcc1a4401cf0649a501d33173f59 SHA512 d9b51952a5b2b2917be4fe596c88303af881c77303928fac3a43c6df67a08d45af1c39f413a455f7eded0f2076fd12588fea04f73eb2396fcaffb376cf108e9a
|
EBUILD imgui-docking-1.92.1.ebuild 2111 BLAKE2B 1ba57d237cf4db3ab9926c5b001d723de3a557d0931e1275d57faf1812b26dac46e46ee4e40eaf2fbaa67fedaef6b522936adcc1a4401cf0649a501d33173f59 SHA512 d9b51952a5b2b2917be4fe596c88303af881c77303928fac3a43c6df67a08d45af1c39f413a455f7eded0f2076fd12588fea04f73eb2396fcaffb376cf108e9a
|
||||||
MISC metadata.xml 1018 BLAKE2B 24ef0cdaf35fb432e284cf2ea6605de6d67e70a2c9f4da72ed89b35279e330afeffc80e541b3b6fd611097a3434e82cada6f9128461cb775fb2c9561bd63f5b6 SHA512 2c6d4d3117dc1a1b3b9bf0ec91a96bcb971a3373eca0fb869a6e6cb5f6ec34e542cfd496ea4329d1e6a03e0b09bd3c419752f9809de41b3a1bf03a83fde7206a
|
MISC metadata.xml 1018 BLAKE2B 24ef0cdaf35fb432e284cf2ea6605de6d67e70a2c9f4da72ed89b35279e330afeffc80e541b3b6fd611097a3434e82cada6f9128461cb775fb2c9561bd63f5b6 SHA512 2c6d4d3117dc1a1b3b9bf0ec91a96bcb971a3373eca0fb869a6e6cb5f6ec34e542cfd496ea4329d1e6a03e0b09bd3c419752f9809de41b3a1bf03a83fde7206a
|
||||||
|
4
media-video/distroav/Manifest
Normal file
4
media-video/distroav/Manifest
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
AUX distroav-4.13.1-ndi-search-paths.patch 289 BLAKE2B ef8634badb15cd4b8e8f2d7657f7365ffed53f5a5d29e059d604e78a14922f7df3d5d8da4d08d1e769b8593a4795a7cb0352026d2dca73037d6a9d2824d68066 SHA512 552f8b22d47299694faf8d55a45b1069eaf7ecd9c3f434711bb69766b57611c18603f577212aa53e125684a148693c452dd555333129fbc1a7262e0b206884aa
|
||||||
|
DIST distroav-6.1.1.gh.tar.gz 1057152 BLAKE2B 89e06c83d87951ea155f67e52fa6753f5d4d3e0c870489c669b22c268bfd8f312b56f4ecc22248e373e0e4614002dca6bcf4dd4804d56a5456c18c6da5ddb6e8 SHA512 874ba3e0e151e0f15c5ae1313db106169ec93631982c221bdc758cee00412df2141e6412cbff96085092caea3e002eb65bdcef477e2a58f25501472f924734d1
|
||||||
|
EBUILD distroav-6.1.1.ebuild 875 BLAKE2B bef3b4520465db76fa5070d0fc6ec93d004e061298ea6d9f288c23397ec44bbce00555b5d583678b9b54f690b9d56b6ae3af65b610f6d055a528acbb1d77cad6 SHA512 6297ae45c50ae3c421ae09c3d037ec7a0102e139de0992ce44e4ba1a2748a0fe8e1c5ef541709ed7d1d81a689f74222d6a99978f8eab7fd6196a51f1e8c970dc
|
||||||
|
MISC metadata.xml 340 BLAKE2B 3b397365fb208d04250a5c42f701d31bce743a8aba160a0d09eddc95dbc16d502b067b211f3d1b5311e9606df533afc449ce8d8c0c0925bc285a3389fa03e749 SHA512 baf143365bf48f86ed8450401c75803d2276fd477fde4852994c1a77055c42e9d2ac9cd7b9bfecafeb3ded150abfb0f581a30511c528ce1ab5fe5c7abd1d6b88
|
44
media-video/distroav/distroav-6.1.1.ebuild
Normal file
44
media-video/distroav/distroav-6.1.1.ebuild
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
# Copyright 2025 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit cmake
|
||||||
|
|
||||||
|
MY_PN="DistroAV"
|
||||||
|
MY_P="DistroAV-${PV}"
|
||||||
|
|
||||||
|
DESCRIPTION="NewTek NDI integration for OBS Studio"
|
||||||
|
HOMEPAGE="https://github.com/distroav/distroav"
|
||||||
|
SRC_URI="https://github.com/distroav/distroav/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
|
||||||
|
S="${WORKDIR}/${MY_P}"
|
||||||
|
|
||||||
|
LICENSE="GPL-2"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64"
|
||||||
|
|
||||||
|
DEPEND="
|
||||||
|
>=media-video/obs-studio-31.0.0
|
||||||
|
dev-qt/qtbase:6[network,widgets]
|
||||||
|
>=media-video/ndi-sdk-6.0:0=
|
||||||
|
net-misc/curl
|
||||||
|
"
|
||||||
|
RDEPEND="${DEPEND}"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-4.13.1-ndi-search-paths.patch"
|
||||||
|
)
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
# Remove bundled NDI headers, required to support multiple NDI major versions
|
||||||
|
rm -r lib/ndi
|
||||||
|
cmake_src_prepare
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
local mycmakeargs=(
|
||||||
|
# Build doesn't work without Qt
|
||||||
|
-DENABLE_QT=true
|
||||||
|
)
|
||||||
|
cmake_src_configure
|
||||||
|
}
|
@@ -0,0 +1,10 @@
|
|||||||
|
--- a/src/plugin-main.cpp
|
||||||
|
+++ b/src/plugin-main.cpp
|
||||||
|
@@ -246,6 +246,7 @@ const NDIlib_v4 *load_ndilib()
|
||||||
|
}
|
||||||
|
#if defined(__linux__) || defined(__APPLE__)
|
||||||
|
locations << "/usr/lib";
|
||||||
|
+ locations << "/usr/lib64";
|
||||||
|
locations << "/usr/local/lib";
|
||||||
|
#endif
|
||||||
|
for (QString location : locations) {
|
11
media-video/distroav/metadata.xml
Normal file
11
media-video/distroav/metadata.xml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<email>pierre.saundersgb@gmail.com</email>
|
||||||
|
<name>Pierre Saunders</name>
|
||||||
|
</maintainer>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="github">distroav/distroav</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
3
media-video/ndi-sdk/Manifest
Normal file
3
media-video/ndi-sdk/Manifest
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
DIST ndi-sdk-6.2.0.tar.gz 60175936 BLAKE2B d9516169b8c661fb295716ca70334f9edbabf65cf9ac3ad1070bcf58f5260fae7c5415b26205b170693be4558e24a0f90b4d7d5ae2ab3ee8a6ba265f3f858de7 SHA512 8d1e08f29c348fb214b9f11526aa3b1b44adebdd362ca084db2e57ff618dbcce1181fc3368b2c728406ddb129c336717425301ae18879dd42b53e8c4297b59f3
|
||||||
|
EBUILD ndi-sdk-6.2.0.ebuild 1440 BLAKE2B a5afde0275e223bbc9e546e50034c663cd1d42f3ae66c3c80f9155efdeeb9cfc718ab036cef8f73b499e67cdc7811a8a9c9f00d17e07d143747cd3b57f514f3b SHA512 da81f603b465eee7b0546e26b428fdb435e0273c3b5c0a33295a13b0cfe3fc27f80ea23e46bedd1e2862e7d48647ddd49a8616a4c7a0f1fee6a91197a5e79de3
|
||||||
|
MISC metadata.xml 330 BLAKE2B b7d803b1a48b71e7e01fe9d1f6f5efc727f174dccbab5a8a773f53a9af63c52ac09709663fdcfdee5906c31971c7625e62bf5ad02c007cf0347cf6cd0bd3a04e SHA512 f1c52830d8ac8f14d1049c5630bb0ca6afad2d294a787dc4fa8990bdf2bafe8cf867d42d4af82908f24fb3820f18d119ed25c12d99d428cb17d39d6fb33f8865
|
11
media-video/ndi-sdk/metadata.xml
Normal file
11
media-video/ndi-sdk/metadata.xml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<email>pierre.saundersgb@gmail.com</email>
|
||||||
|
<name>Pierre Saunders</name>
|
||||||
|
</maintainer>
|
||||||
|
<use>
|
||||||
|
<flag name="tools">Install additional NDI tools</flag>
|
||||||
|
</use>
|
||||||
|
</pkgmetadata>
|
60
media-video/ndi-sdk/ndi-sdk-6.2.0.ebuild
Normal file
60
media-video/ndi-sdk/ndi-sdk-6.2.0.ebuild
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
# Copyright 2025 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
INSTALLER_VER="$(ver_cut 1)"
|
||||||
|
FILE_NAME="Install_NDI_SDK_v${INSTALLER_VER}_Linux.sh"
|
||||||
|
|
||||||
|
DESCRIPTION="NewTek NDI SDK"
|
||||||
|
HOMEPAGE="https://ndi.video/tech/"
|
||||||
|
SRC_URI="https://downloads.ndi.tv/SDK/NDI_SDK_Linux/Install_NDI_SDK_v${INSTALLER_VER}_Linux.tar.gz -> ${P}.tar.gz"
|
||||||
|
|
||||||
|
S="${WORKDIR}/NDI SDK for Linux/"
|
||||||
|
|
||||||
|
LICENSE="NDI_EULA_END"
|
||||||
|
# subslot is SONAME version
|
||||||
|
SLOT="0/$(ver_cut 1)"
|
||||||
|
KEYWORDS="-* ~amd64"
|
||||||
|
IUSE="doc examples tools"
|
||||||
|
|
||||||
|
RDEPEND="net-dns/avahi[dbus]"
|
||||||
|
|
||||||
|
RESTRICT="bindist mirror"
|
||||||
|
QA_PREBUILT="
|
||||||
|
usr/bin/*
|
||||||
|
usr/*/libndi.so.${PV}
|
||||||
|
"
|
||||||
|
|
||||||
|
src_unpack() {
|
||||||
|
unpack "${A}"
|
||||||
|
ARCHIVE="$(awk '/^__NDI_ARCHIVE_BEGIN__/ { print NR+1; exit 0; }' "${WORKDIR}/${FILE_NAME}")" \
|
||||||
|
|| die "Failed to find internal archive location"
|
||||||
|
tail -n+"$ARCHIVE" "${WORKDIR}/${FILE_NAME}" | tar xvz \
|
||||||
|
|| die "Failed to unpack internal archive"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local host
|
||||||
|
case "${CHOST}" in
|
||||||
|
x86_64-*-linux-gnu)
|
||||||
|
host="x86_64-linux-gnu"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
die "Unsupported CHOST ${CHOST}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
local ndi_so
|
||||||
|
ndi_so="libndi.so.${PV}"
|
||||||
|
dolib.so "lib/${host}/${ndi_so}"
|
||||||
|
dosym "${ndi_so}" "usr/$(get_libdir)/libndi.so.$(ver_cut 1)"
|
||||||
|
dosym "libndi.so.$(ver_cut 1)" "usr/$(get_libdir)/libndi.so"
|
||||||
|
|
||||||
|
doheader -r include/*
|
||||||
|
|
||||||
|
use doc && dodoc -r documentation/*
|
||||||
|
insinto "/usr/share/${PN}"
|
||||||
|
use examples && doins -r examples
|
||||||
|
use tools && dobin "bin/${host}"/*
|
||||||
|
}
|
@@ -7,8 +7,7 @@ INHERIT=go-module
|
|||||||
KEYWORDS=~amd64 ~arm64
|
KEYWORDS=~amd64 ~arm64
|
||||||
LICENSE=Apache-2.0 BSD ISC MIT Unlicense
|
LICENSE=Apache-2.0 BSD ISC MIT Unlicense
|
||||||
RDEPEND=>=app-containers/docker-cli-1.13 >=app-containers/docker-compose-1.23.2
|
RDEPEND=>=app-containers/docker-cli-1.13 >=app-containers/docker-compose-1.23.2
|
||||||
RESTRICT=strip
|
|
||||||
SLOT=0
|
SLOT=0
|
||||||
SRC_URI=https://github.com/jesseduffield/lazydocker/archive/v0.24.1.tar.gz -> lazydocker-0.24.1.tar.gz
|
SRC_URI=https://github.com/jesseduffield/lazydocker/archive/v0.24.1.tar.gz -> lazydocker-0.24.1.tar.gz
|
||||||
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module 191a27261275fc3bff7dd7482361b5d6
|
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module d96f2a2fd6d8fbad6d94516bf238f885
|
||||||
_md5_=a886cd47b2767673c481312f26806e63
|
_md5_=a886cd47b2767673c481312f26806e63
|
||||||
|
File diff suppressed because one or more lines are too long
@@ -6,8 +6,7 @@ HOMEPAGE=https://github.com/noahgorstein/jqp
|
|||||||
INHERIT=go-module
|
INHERIT=go-module
|
||||||
KEYWORDS=~amd64 ~arm64
|
KEYWORDS=~amd64 ~arm64
|
||||||
LICENSE=MIT
|
LICENSE=MIT
|
||||||
RESTRICT=strip
|
|
||||||
SLOT=0
|
SLOT=0
|
||||||
SRC_URI=https://github.com/noahgorstein/jqp/archive/v0.7.0.tar.gz -> jqp-0.7.0.tar.gz
|
SRC_URI=https://github.com/noahgorstein/jqp/archive/v0.7.0.tar.gz -> jqp-0.7.0.tar.gz
|
||||||
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module 191a27261275fc3bff7dd7482361b5d6
|
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module d96f2a2fd6d8fbad6d94516bf238f885
|
||||||
_md5_=cf5e6a526226d7f83ce5809682eccb86
|
_md5_=cf5e6a526226d7f83ce5809682eccb86
|
||||||
|
10
metadata/md5-cache/app-misc/saundersp-toolbox-20250730
Normal file
10
metadata/md5-cache/app-misc/saundersp-toolbox-20250730
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
DEFINED_PHASES=compile install
|
||||||
|
DESCRIPTION=Compilation of useful scripts and small programs
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://git.saundersp.com/saundersp/toolbox
|
||||||
|
IUSE=+format-time +format-time-ns +format-bytes +gcd +compress +convertUTF8 +extract
|
||||||
|
KEYWORDS=~amd64 ~arm ~arm64 ~x86
|
||||||
|
LICENSE=MIT
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://git.saundersp.com/saundersp/toolbox/archive/939b373b226df742b53fd38bf043531d2fd691bf.tar.gz -> saundersp-toolbox-20250730.tar.gz
|
||||||
|
_md5_=c8615789ba963c8d5d874c9b7c5c8470
|
File diff suppressed because one or more lines are too long
13
metadata/md5-cache/app-text/ltex-ls-16.0.0
Normal file
13
metadata/md5-cache/app-text/ltex-ls-16.0.0
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
DEFINED_PHASES=compile install preinst prepare setup
|
||||||
|
DEPEND=>=dev-java/java-config-2.2.0-r3
|
||||||
|
DESCRIPTION=LSP language server for LanguageTool supporting LaTeX, Markdown, and others
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://valentjn.github.io/ltex/
|
||||||
|
INHERIT=java-pkg-2
|
||||||
|
KEYWORDS=~amd64 ~x86
|
||||||
|
LICENSE=MPL-2.0
|
||||||
|
RDEPEND=>=virtual/jre-1.8 dev-java/slf4j-api:0 dev-java/slf4j-nop:0 dev-java/guava:0 dev-java/icu4j:0 dev-java/jansi:2 dev-java/commons-lang:3.6 dev-java/commons-logging:0 dev-java/commons-text:0 dev-java/jackson-core:0 dev-java/jackson-annotations:2 dev-java/jackson-databind:0 dev-java/jaxb-api:2 dev-java/jaxb-runtime:4 dev-java/picocli:0 dev-java/protobuf-java:0 dev-java/stax2-api:0 dev-java/woodstox-core:0 dev-java/json:0 dev-java/j2objc-annotations:0 dev-java/istack-commons-runtime:0 dev-java/hamcrest-core:1.3 dev-java/failureaccess:0 dev-java/error-prone-annotations:0 dev-java/checker-framework-qual:0 dev-java/animal-sniffer-annotations:0 dev-java/fastinfoset:0 >=dev-java/java-config-2.2.0-r3
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://github.com/valentjn/ltex-ls/releases/download/16.0.0/ltex-ls-16.0.0.tar.gz
|
||||||
|
_eclasses_=java-utils-2 e2cdf66cd9c826ccda532772976d342d java-pkg-2 38fd81c7880666a00a638ca8deb64d72
|
||||||
|
_md5_=249dfdf0afde7a877639743dee1612da
|
14
metadata/md5-cache/dev-java/commons-text-1.14.0
Normal file
14
metadata/md5-cache/dev-java/commons-text-1.14.0
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
DEFINED_PHASES=compile install preinst prepare setup test
|
||||||
|
DEPEND=>=virtual/jdk-1.8:* dev-java/commons-lang:3.6 >=dev-java/java-config-2.2.0-r3 source? ( app-arch/zip )
|
||||||
|
DESCRIPTION=Apache Commons Text is a library focused on algorithms working on strings
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://commons.apache.org/proper/commons-text/
|
||||||
|
INHERIT=java-pkg-2 java-pkg-simple
|
||||||
|
IUSE=doc source
|
||||||
|
KEYWORDS=~amd64 ~ppc64 ~x86
|
||||||
|
LICENSE=Apache-2.0
|
||||||
|
RDEPEND=>=virtual/jre-1.8:* dev-java/commons-lang:3.6 >=dev-java/java-config-2.2.0-r3 source? ( app-arch/zip )
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://archive.apache.org/dist/commons/text/source/commons-text-1.14.0-src.tar.gz
|
||||||
|
_eclasses_=java-utils-2 e2cdf66cd9c826ccda532772976d342d java-pkg-2 38fd81c7880666a00a638ca8deb64d72 java-pkg-simple 460c3cd928ba6e677d113a15c496017e
|
||||||
|
_md5_=52bd6a45d313dde798630ae4044f2d4a
|
14
metadata/md5-cache/dev-java/failureaccess-33.4.8
Normal file
14
metadata/md5-cache/dev-java/failureaccess-33.4.8
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
DEFINED_PHASES=compile install preinst prepare setup test
|
||||||
|
DEPEND=>=virtual/jdk-1.8:* >=dev-java/java-config-2.2.0-r3 source? ( app-arch/zip )
|
||||||
|
DESCRIPTION=Guava's InternalFutureFailureAccess and InternalFutures classes.
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://github.com/google/guava/
|
||||||
|
INHERIT=java-pkg-2 java-pkg-simple
|
||||||
|
IUSE=doc source
|
||||||
|
KEYWORDS=~amd64 ~arm ~arm64 ~ppc64 ~x86
|
||||||
|
LICENSE=Apache-2.0
|
||||||
|
RDEPEND=>=virtual/jre-1.8:* >=dev-java/java-config-2.2.0-r3 source? ( app-arch/zip )
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://github.com/google/guava/archive/v33.4.8.tar.gz -> guava-33.4.8.tar.gz
|
||||||
|
_eclasses_=java-utils-2 e2cdf66cd9c826ccda532772976d342d java-pkg-2 38fd81c7880666a00a638ca8deb64d72 java-pkg-simple 460c3cd928ba6e677d113a15c496017e
|
||||||
|
_md5_=8aded878ba231cecd421997c5f9d5d0c
|
@@ -8,6 +8,6 @@ LICENSE=NVIDIA-cuDNN
|
|||||||
RDEPEND==dev-util/nvidia-cuda-toolkit-12*
|
RDEPEND==dev-util/nvidia-cuda-toolkit-12*
|
||||||
RESTRICT=mirror
|
RESTRICT=mirror
|
||||||
SLOT=0/9
|
SLOT=0/9
|
||||||
SRC_URI=https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-9.10.2.21_cuda12-archive.tar.xz
|
SRC_URI=https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-9.11.0.98_cuda12-archive.tar.xz
|
||||||
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
|
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 unpacker 3b4ee72d1e2e0374fd8cd3eddfa00627
|
||||||
_md5_=fe7f28caf363fdfe01331bc8394319c3
|
_md5_=fe7f28caf363fdfe01331bc8394319c3
|
@@ -1,16 +0,0 @@
|
|||||||
BDEPEND=|| ( ( dev-lang/python:3.13 dev-python/defusedxml[python_targets_python3_13(-)] ) ( dev-lang/python:3.12 dev-python/defusedxml[python_targets_python3_12(-)] ) ( dev-lang/python:3.11 dev-python/defusedxml[python_targets_python3_11(-)] ) )
|
|
||||||
DEFINED_PHASES=compile configure install postinst prepare pretend setup unpack
|
|
||||||
DESCRIPTION=NVIDIA CUDA Toolkit (compiler and friends)
|
|
||||||
EAPI=8
|
|
||||||
HOMEPAGE=https://developer.nvidia.com/cuda-zone
|
|
||||||
INHERIT=check-reqs edo toolchain-funcs python-r1
|
|
||||||
IUSE=clang debugger examples nsight profiler rdma sanitizer python_targets_python3_11 python_targets_python3_12 python_targets_python3_13
|
|
||||||
KEYWORDS=-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux
|
|
||||||
LICENSE=NVIDIA-CUDA
|
|
||||||
RDEPEND=!clang? ( <sys-devel/gcc-15_pre[cxx] ) clang? ( <llvm-core/clang-20_pre ) sys-process/numactl debugger? ( python_targets_python3_11? ( dev-lang/python:3.11 ) python_targets_python3_12? ( dev-lang/python:3.12 ) python_targets_python3_13? ( dev-lang/python:3.13 ) ) examples? ( media-libs/freeglut media-libs/glu ) nsight? ( dev-util/nsight-compute dev-util/nsight-systems ) rdma? ( sys-cluster/rdma-core )
|
|
||||||
REQUIRED_USE=|| ( python_targets_python3_11 python_targets_python3_12 python_targets_python3_13 )
|
|
||||||
RESTRICT=bindist mirror strip test
|
|
||||||
SLOT=0/12.9.1
|
|
||||||
SRC_URI=amd64? ( https://developer.download.nvidia.com/compute/cuda/12.9.1/local_installers/cuda_12.9.1_575.57.08_linux.run ) arm64? ( https://developer.download.nvidia.com/compute/cuda/12.9.1/local_installers/cuda_12.9.1_575.57.08_linux_sbsa.run )
|
|
||||||
_eclasses_=check-reqs 2a9731073c152554078a9a8df8fc0f1b edo a5e294016aa84979fcb2459749eb80b2 toolchain-funcs f9d71a6efe9d083aec750dd13968e169 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multiprocessing 1e32df7deee68372153dca65f4a7c21f python-utils-r1 5ffe8ec396a751540949b565de0f048c python-r1 0e15b2ab9cfc87d7474678201d6bca38
|
|
||||||
_md5_=cd600e071df1454a8a8962b10738aa21
|
|
@@ -7,5 +7,5 @@ KEYWORDS=amd64 ~arm64 ppc ~ppc64 x86
|
|||||||
LICENSE=BSD
|
LICENSE=BSD
|
||||||
SLOT=5
|
SLOT=5
|
||||||
SRC_URI=https://github.com/premake/premake-core/archive/v5.0.0-beta7.tar.gz -> premake-5.0.0_beta7.tar.gz
|
SRC_URI=https://github.com/premake/premake-core/archive/v5.0.0-beta7.tar.gz -> premake-5.0.0_beta7.tar.gz
|
||||||
_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0
|
||||||
_md5_=6718a0290af279432739dd64cef06032
|
_md5_=6718a0290af279432739dd64cef06032
|
||||||
|
File diff suppressed because one or more lines are too long
@@ -1,17 +0,0 @@
|
|||||||
BDEPEND=virtual/pkgconfig gui? ( dev-qt/qttools:6[linguist] ) app-alternatives/ninja >=dev-build/cmake-3.20.5 test? ( x11-base/xorg-server[xvfb] x11-apps/xhost )
|
|
||||||
DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
|
|
||||||
DEPEND=dev-cpp/tomlplusplus dev-libs/glib:2 dev-libs/libei dev-libs/libportal:= dev-libs/openssl:0= dev-qt/qtbase:6[dbus,network,xml] x11-libs/libxkbcommon x11-libs/libxkbfile gui? ( dev-qt/qtbase:6[gui,widgets] ) x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXi x11-libs/libXinerama x11-libs/libXrandr x11-libs/libXtst dev-cpp/cli11 x11-base/xorg-proto test? ( dev-cpp/gtest )
|
|
||||||
DESCRIPTION=Share a mouse and keyboard between computers (FOSS version of Synergy)
|
|
||||||
EAPI=8
|
|
||||||
HOMEPAGE=https://github.com/deskflow/deskflow
|
|
||||||
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
|
|
||||||
INHERIT=cmake virtualx xdg
|
|
||||||
IUSE=gui test test
|
|
||||||
KEYWORDS=~amd64
|
|
||||||
LICENSE=GPL-2
|
|
||||||
RDEPEND=dev-cpp/tomlplusplus dev-libs/glib:2 dev-libs/libei dev-libs/libportal:= dev-libs/openssl:0= dev-qt/qtbase:6[dbus,network,xml] x11-libs/libxkbcommon x11-libs/libxkbfile gui? ( dev-qt/qtbase:6[gui,widgets] ) x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXi x11-libs/libXinerama x11-libs/libXrandr x11-libs/libXtst
|
|
||||||
RESTRICT=!test? ( test ) !test? ( test )
|
|
||||||
SLOT=0
|
|
||||||
SRC_URI=https://github.com/deskflow/deskflow/archive/refs/tags/v1.22.0.tar.gz -> deskflow-1.22.0.tar.gz
|
|
||||||
_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg 3ef49a87c52c8b77c476351195dfe575
|
|
||||||
_md5_=b3a2db61faa39562d18ac28bfa5a948c
|
|
17
metadata/md5-cache/gui-apps/deskflow-1.23.0
Normal file
17
metadata/md5-cache/gui-apps/deskflow-1.23.0
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
BDEPEND=virtual/pkgconfig gui? ( dev-qt/qttools:6[linguist] ) app-alternatives/ninja >=dev-build/cmake-3.20.5 test? ( x11-base/xorg-server[xvfb] x11-apps/xhost )
|
||||||
|
DEFINED_PHASES=compile configure install postinst postrm preinst prepare test
|
||||||
|
DEPEND=dev-cpp/tomlplusplus dev-libs/glib:2 >=dev-libs/libei-0.99.1 dev-libs/libportal:= dev-libs/openssl:0= dev-qt/qtbase:6[dbus,network,xml] x11-libs/libxkbcommon x11-libs/libxkbfile gui? ( dev-qt/qtbase:6[gui,widgets] ) x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXi x11-libs/libXinerama x11-libs/libXrandr x11-libs/libXtst dev-cpp/cli11 x11-base/xorg-proto test? ( dev-cpp/gtest )
|
||||||
|
DESCRIPTION=Share a mouse and keyboard between computers (FOSS version of Synergy)
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://github.com/deskflow/deskflow
|
||||||
|
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||||
|
INHERIT=cmake virtualx xdg
|
||||||
|
IUSE=gui test test
|
||||||
|
KEYWORDS=~amd64
|
||||||
|
LICENSE=GPL-2
|
||||||
|
RDEPEND=dev-cpp/tomlplusplus dev-libs/glib:2 >=dev-libs/libei-0.99.1 dev-libs/libportal:= dev-libs/openssl:0= dev-qt/qtbase:6[dbus,network,xml] x11-libs/libxkbcommon x11-libs/libxkbfile gui? ( dev-qt/qtbase:6[gui,widgets] ) x11-libs/libICE x11-libs/libSM x11-libs/libX11 x11-libs/libXext x11-libs/libXi x11-libs/libXinerama x11-libs/libXrandr x11-libs/libXtst
|
||||||
|
RESTRICT=!test? ( test ) !test? ( test )
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://github.com/deskflow/deskflow/archive/refs/tags/v1.23.0.tar.gz -> deskflow-1.23.0.tar.gz
|
||||||
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a virtualx 9741d451eb64ea8bb9faee90d68a9b68 xdg 3ef49a87c52c8b77c476351195dfe575
|
||||||
|
_md5_=4ce96dfa70bc3216d08cec8a1e912cf4
|
@@ -1,14 +1,14 @@
|
|||||||
BDEPEND=dev-qt/qtbase:6 dev-qt/qttools:6[linguist] app-alternatives/ninja >=dev-build/cmake-3.20.5
|
BDEPEND=dev-qt/qtbase:6 dev-qt/qttools:6[linguist] app-alternatives/ninja >=dev-build/cmake-3.20.5
|
||||||
DEFINED_PHASES=compile configure install postinst prepare test
|
DEFINED_PHASES=compile configure install postinst prepare test
|
||||||
DEPEND=dev-qt/qtbase:6=[gui,widgets]
|
DEPEND=dev-qt/qtbase:6=[gui,widgets]
|
||||||
DESCRIPTION=Qt6 Configuration Tool (for DE/WM without Qt integration) patched to work correctly with KDE applications
|
DESCRIPTION=Qt 6 Configuration Utility, patched to work correctly with KDE applications
|
||||||
EAPI=8
|
EAPI=8
|
||||||
HOMEPAGE=https://github.com/ilya-fedin/qt6ct/
|
HOMEPAGE=https://www.opencode.net/trialuser/qt6ct
|
||||||
INHERIT=cmake
|
INHERIT=cmake
|
||||||
KEYWORDS=amd64
|
KEYWORDS=amd64
|
||||||
LICENSE=BSD-2
|
LICENSE=BSD-2
|
||||||
RDEPEND=dev-qt/qtbase:6=[gui,widgets] dev-qt/qtsvg:6
|
RDEPEND=dev-qt/qtbase:6=[gui,widgets] dev-qt/qtsvg:6
|
||||||
SLOT=0
|
SLOT=0
|
||||||
SRC_URI=https://github.com/ilya-fedin/qt6ct/archive/0.10.tar.gz -> qt6ct-kde-0.10.tar.gz
|
SRC_URI=https://www.opencode.net/trialuser/qt6ct/-/archive/0.10/qt6ct-0.10.tar.gz
|
||||||
_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a
|
||||||
_md5_=c0b1ce1354d57694bdf9ae35f979673b
|
_md5_=21d798d72adc3e239a8b7d164ff59601
|
||||||
|
@@ -9,7 +9,7 @@ IUSE=allegro5 glfw sdl2 sdl3 sdl2-renderer sdl3-renderer opengl vulkan webgpu ab
|
|||||||
KEYWORDS=~amd64
|
KEYWORDS=~amd64
|
||||||
LICENSE=MIT
|
LICENSE=MIT
|
||||||
RDEPEND=dev-libs/stb:= media-libs/libglvnd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/glew[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] allegro5? ( media-libs/allegro:5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) glfw? ( media-libs/glfw:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl2? ( media-libs/libsdl2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl2-renderer? ( media-libs/libsdl2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl3? ( media-libs/libsdl3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl3-renderer? ( media-libs/libsdl3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( || ( >=media-libs/mesa-24.1.7-r1[opengl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] <media-libs/mesa-24.1.7-r1[gles2,egl(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) webgpu? ( dev-util/webgpu-headers )
|
RDEPEND=dev-libs/stb:= media-libs/libglvnd[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/glew[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] allegro5? ( media-libs/allegro:5[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) glfw? ( media-libs/glfw:0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl2? ( media-libs/libsdl2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl2-renderer? ( media-libs/libsdl2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl3? ( media-libs/libsdl3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) sdl3-renderer? ( media-libs/libsdl3[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) opengl? ( || ( >=media-libs/mesa-24.1.7-r1[opengl,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] <media-libs/mesa-24.1.7-r1[gles2,egl(+),abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) ) vulkan? ( media-libs/vulkan-loader[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] ) webgpu? ( dev-util/webgpu-headers )
|
||||||
SLOT=0/1.92.0
|
SLOT=0/1.92.1
|
||||||
SRC_URI=https://github.com/ocornut/imgui/archive/v1.92.0-docking.tar.gz -> imgui-1.92.0-docking.tar.gz
|
SRC_URI=https://github.com/ocornut/imgui/archive/v1.92.1-docking.tar.gz -> imgui-1.92.1-docking.tar.gz
|
||||||
_eclasses_=toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 5ffe8ec396a751540949b565de0f048c meson 99466844dd8d4fcfb07578a76f5a9922 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 meson-multilib 8989922d980e5e870cc3de949d1b2586
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 python-utils-r1 bb392d69d55c48a5483d356933a26d57 meson 99466844dd8d4fcfb07578a76f5a9922 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 multilib b2a329026f2e404e9e371097dda47f96 multilib-build 9ac26ea006828266d235e2f0135429b5 multilib-minimal e9f54d75b074edc47d36994bbc1e2123 meson-multilib 8989922d980e5e870cc3de949d1b2586
|
||||||
_md5_=d984a9bb56643666fb4b87942b03bec6
|
_md5_=d984a9bb56643666fb4b87942b03bec6
|
14
metadata/md5-cache/media-video/distroav-6.1.1
Normal file
14
metadata/md5-cache/media-video/distroav-6.1.1
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5
|
||||||
|
DEFINED_PHASES=compile configure install prepare test
|
||||||
|
DEPEND=>=media-video/obs-studio-31.0.0 dev-qt/qtbase:6[network,widgets] >=media-video/ndi-sdk-6.0:0= net-misc/curl
|
||||||
|
DESCRIPTION=NewTek NDI integration for OBS Studio
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://github.com/distroav/distroav
|
||||||
|
INHERIT=cmake
|
||||||
|
KEYWORDS=~amd64
|
||||||
|
LICENSE=GPL-2
|
||||||
|
RDEPEND=>=media-video/obs-studio-31.0.0 dev-qt/qtbase:6[network,widgets] >=media-video/ndi-sdk-6.0:0= net-misc/curl
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://github.com/distroav/distroav/archive/6.1.1.tar.gz -> distroav-6.1.1.gh.tar.gz
|
||||||
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a
|
||||||
|
_md5_=8dade3e3129d6d2c81a4b766fc71d697
|
12
metadata/md5-cache/media-video/ndi-sdk-6.2.0
Normal file
12
metadata/md5-cache/media-video/ndi-sdk-6.2.0
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
DEFINED_PHASES=install unpack
|
||||||
|
DESCRIPTION=NewTek NDI SDK
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://ndi.video/tech/
|
||||||
|
IUSE=doc examples tools
|
||||||
|
KEYWORDS=-* ~amd64
|
||||||
|
LICENSE=NDI_EULA_END
|
||||||
|
RDEPEND=net-dns/avahi[dbus]
|
||||||
|
RESTRICT=bindist mirror
|
||||||
|
SLOT=0/6
|
||||||
|
SRC_URI=https://downloads.ndi.tv/SDK/NDI_SDK_Linux/Install_NDI_SDK_v6_Linux.tar.gz -> ndi-sdk-6.2.0.tar.gz
|
||||||
|
_md5_=ee8eed7c884df329ddb7ba8281c6a757
|
@@ -7,8 +7,7 @@ INHERIT=go-module
|
|||||||
KEYWORDS=~amd64 ~arm64
|
KEYWORDS=~amd64 ~arm64
|
||||||
LICENSE=Apache-2.0 BSD ISC MIT Unlicense
|
LICENSE=Apache-2.0 BSD ISC MIT Unlicense
|
||||||
RDEPEND=net-libs/nodejs
|
RDEPEND=net-libs/nodejs
|
||||||
RESTRICT=strip
|
|
||||||
SLOT=0
|
SLOT=0
|
||||||
SRC_URI=https://github.com/jesseduffield/lazynpm/archive/v0.1.4.tar.gz -> lazynpm-0.1.4.tar.gz
|
SRC_URI=https://github.com/jesseduffield/lazynpm/archive/v0.1.4.tar.gz -> lazynpm-0.1.4.tar.gz
|
||||||
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs f9d71a6efe9d083aec750dd13968e169 flag-o-matic b892042b2667b8ac69ec8a2571dc290a go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module 191a27261275fc3bff7dd7482361b5d6
|
_eclasses_=multiprocessing 1e32df7deee68372153dca65f4a7c21f toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 go-env 0e2babf96e7d0b045fc07ad199eb2399 go-module d96f2a2fd6d8fbad6d94516bf238f885
|
||||||
_md5_=dbe96bd546df76965014540f59b80af7
|
_md5_=dbe96bd546df76965014540f59b80af7
|
||||||
|
17
metadata/md5-cache/net-libs/nodejs-24.4.1
Normal file
17
metadata/md5-cache/net-libs/nodejs-24.4.1
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
BDEPEND=|| ( dev-lang/python:3.13[threads(+)] dev-lang/python:3.12[threads(+)] dev-lang/python:3.11[threads(+)] ) app-alternatives/ninja sys-apps/coreutils virtual/pkgconfig test? ( net-misc/curl ) pax-kernel? ( sys-apps/elfix )
|
||||||
|
DEFINED_PHASES=compile configure install postinst prepare pretend setup test
|
||||||
|
DEPEND=>=app-arch/brotli-1.1.0:= dev-db/sqlite:3 >=dev-libs/libuv-1.51.0:= >=dev-libs/simdjson-3.10.1:= >=net-dns/c-ares-1.34.4:= >=net-libs/nghttp2-1.64.0:= >=net-libs/nghttp3-1.7.0:= sys-libs/zlib corepack? ( !sys-apps/yarn ) system-icu? ( >=dev-libs/icu-73:= ) system-ssl? ( >=net-libs/ngtcp2-1.9.1:= >=dev-libs/openssl-1.1.1:0= ) !system-ssl? ( >=net-libs/ngtcp2-1.9.1:=[-gnutls] ) || ( sys-devel/gcc:* llvm-runtimes/libatomic-stub )
|
||||||
|
DESCRIPTION=A JavaScript runtime built on Chrome's V8 JavaScript engine
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://nodejs.org/
|
||||||
|
INHERIT=bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils pax-utils python-any-r1 toolchain-funcs xdg-utils
|
||||||
|
IUSE=corepack cpu_flags_x86_sse2 debug doc +icu +inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test
|
||||||
|
KEYWORDS=~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos
|
||||||
|
LICENSE=Apache-1.1 Apache-2.0 BSD BSD-2 MIT npm? ( Artistic-2 )
|
||||||
|
RDEPEND=>=app-arch/brotli-1.1.0:= dev-db/sqlite:3 >=dev-libs/libuv-1.51.0:= >=dev-libs/simdjson-3.10.1:= >=net-dns/c-ares-1.34.4:= >=net-libs/nghttp2-1.64.0:= >=net-libs/nghttp3-1.7.0:= sys-libs/zlib corepack? ( !sys-apps/yarn ) system-icu? ( >=dev-libs/icu-73:= ) system-ssl? ( >=net-libs/ngtcp2-1.9.1:= >=dev-libs/openssl-1.1.1:0= ) !system-ssl? ( >=net-libs/ngtcp2-1.9.1:=[-gnutls] ) || ( sys-devel/gcc:* llvm-runtimes/libatomic-stub )
|
||||||
|
REQUIRED_USE=inspector? ( icu ssl ) npm? ( ssl ) system-icu? ( icu ) system-ssl? ( ssl ) x86? ( cpu_flags_x86_sse2 )
|
||||||
|
RESTRICT=!test? ( test )
|
||||||
|
SLOT=0/24
|
||||||
|
SRC_URI=https://nodejs.org/dist/v24.4.1/node-v24.4.1.tar.xz
|
||||||
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 bash-completion-r1 767861f3744f589ee5291c1698b1c082 check-reqs 2a9731073c152554078a9a8df8fc0f1b flag-o-matic a7afe42e95fb46ce9691605acfb24672 linux-info efd923656513c879204fec6638eadee5 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-utils-r1 8a006695bc0db22490452dd06914dda5 python-any-r1 891415dfe39ad9b41b461f2b86354af0 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
|
||||||
|
_md5_=c5107e98192c12df516bed45abe52a28
|
17
metadata/md5-cache/net-libs/nodejs-24.5.0
Normal file
17
metadata/md5-cache/net-libs/nodejs-24.5.0
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
BDEPEND=|| ( dev-lang/python:3.13[threads(+)] dev-lang/python:3.12[threads(+)] dev-lang/python:3.11[threads(+)] ) app-alternatives/ninja sys-apps/coreutils virtual/pkgconfig test? ( net-misc/curl ) pax-kernel? ( sys-apps/elfix )
|
||||||
|
DEFINED_PHASES=compile configure install postinst prepare pretend setup test
|
||||||
|
DEPEND=>=app-arch/brotli-1.1.0:= dev-db/sqlite:3 >=dev-libs/libuv-1.51.0:= >=dev-libs/simdjson-3.10.1:= >=net-dns/c-ares-1.34.4:= >=net-libs/nghttp2-1.64.0:= >=net-libs/nghttp3-1.7.0:= sys-libs/zlib corepack? ( !sys-apps/yarn ) system-icu? ( >=dev-libs/icu-73:= ) system-ssl? ( >=net-libs/ngtcp2-1.9.1:= >=dev-libs/openssl-1.1.1:0= ) !system-ssl? ( >=net-libs/ngtcp2-1.9.1:=[-gnutls] ) || ( sys-devel/gcc:* llvm-runtimes/libatomic-stub )
|
||||||
|
DESCRIPTION=A JavaScript runtime built on Chrome's V8 JavaScript engine
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://nodejs.org/
|
||||||
|
INHERIT=bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils pax-utils python-any-r1 toolchain-funcs xdg-utils
|
||||||
|
IUSE=corepack cpu_flags_x86_sse2 debug doc +icu +inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test
|
||||||
|
KEYWORDS=~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos
|
||||||
|
LICENSE=Apache-1.1 Apache-2.0 BSD BSD-2 MIT npm? ( Artistic-2 )
|
||||||
|
RDEPEND=>=app-arch/brotli-1.1.0:= dev-db/sqlite:3 >=dev-libs/libuv-1.51.0:= >=dev-libs/simdjson-3.10.1:= >=net-dns/c-ares-1.34.4:= >=net-libs/nghttp2-1.64.0:= >=net-libs/nghttp3-1.7.0:= sys-libs/zlib corepack? ( !sys-apps/yarn ) system-icu? ( >=dev-libs/icu-73:= ) system-ssl? ( >=net-libs/ngtcp2-1.9.1:= >=dev-libs/openssl-1.1.1:0= ) !system-ssl? ( >=net-libs/ngtcp2-1.9.1:=[-gnutls] ) || ( sys-devel/gcc:* llvm-runtimes/libatomic-stub )
|
||||||
|
REQUIRED_USE=inspector? ( icu ssl ) npm? ( ssl ) system-icu? ( icu ) system-ssl? ( ssl ) x86? ( cpu_flags_x86_sse2 )
|
||||||
|
RESTRICT=!test? ( test )
|
||||||
|
SLOT=0/24
|
||||||
|
SRC_URI=https://nodejs.org/dist/v24.5.0/node-v24.5.0.tar.xz
|
||||||
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 bash-completion-r1 767861f3744f589ee5291c1698b1c082 check-reqs 2a9731073c152554078a9a8df8fc0f1b flag-o-matic a7afe42e95fb46ce9691605acfb24672 linux-info efd923656513c879204fec6638eadee5 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 pax-utils 5555f2e75744739fe100ee62c22d28fe python-utils-r1 8a006695bc0db22490452dd06914dda5 python-any-r1 891415dfe39ad9b41b461f2b86354af0 xdg-utils 42869b3c8d86a70ef3cf75165a395e09
|
||||||
|
_md5_=c5107e98192c12df516bed45abe52a28
|
File diff suppressed because one or more lines are too long
18
metadata/md5-cache/net-p2p/qbittorrent-5.1.2
Normal file
18
metadata/md5-cache/net-p2p/qbittorrent-5.1.2
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
BDEPEND=verify-sig? ( sec-keys/openpgp-keys-qbittorrent ) >=dev-qt/qttools-6.5:6[linguist] virtual/pkgconfig app-alternatives/ninja >=dev-build/cmake-3.20.5 virtual/pkgconfig verify-sig? ( app-crypt/gnupg >=app-portage/gemato-20 )
|
||||||
|
DEFINED_PHASES=compile configure install postinst postrm preinst prepare test unpack
|
||||||
|
DEPEND=>=dev-libs/openssl-3.0.2:= >=dev-qt/qtbase-6.5:6[network,ssl,sql,sqlite,xml] >=net-libs/libtorrent-rasterbar-2.0.10:= >=sys-libs/zlib-1.2.11 gui? ( >=dev-qt/qtbase-6.5:6[dbus?,gui,widgets] >=dev-qt/qtsvg-6.5:6 ) webui? ( acct-group/qbittorrent acct-user/qbittorrent ) >=dev-libs/boost-1.76
|
||||||
|
DESCRIPTION=BitTorrent client in C++ and Qt
|
||||||
|
EAPI=8
|
||||||
|
HOMEPAGE=https://www.qbittorrent.org
|
||||||
|
IDEPEND=dev-util/desktop-file-utils x11-misc/shared-mime-info
|
||||||
|
INHERIT=cmake edo multibuild optfeature systemd verify-sig xdg
|
||||||
|
IUSE=+dbus +gui test webui verify-sig
|
||||||
|
KEYWORDS=amd64 ~arm ~arm64 ~ppc64 ~riscv x86
|
||||||
|
LICENSE=GPL-2+-with-openssl-exception GPL-3+-with-openssl-exception
|
||||||
|
RDEPEND=>=dev-libs/openssl-3.0.2:= >=dev-qt/qtbase-6.5:6[network,ssl,sql,sqlite,xml] >=net-libs/libtorrent-rasterbar-2.0.10:= >=sys-libs/zlib-1.2.11 gui? ( >=dev-qt/qtbase-6.5:6[dbus?,gui,widgets] >=dev-qt/qtsvg-6.5:6 ) webui? ( acct-group/qbittorrent acct-user/qbittorrent )
|
||||||
|
REQUIRED_USE=|| ( gui webui ) dbus? ( gui )
|
||||||
|
RESTRICT=!test? ( test )
|
||||||
|
SLOT=0
|
||||||
|
SRC_URI=https://downloads.sourceforge.net/qbittorrent/qbittorrent-5.1.2.tar.xz verify-sig? ( https://downloads.sourceforge.net/qbittorrent/qbittorrent-5.1.2.tar.xz.asc )
|
||||||
|
_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a edo a5e294016aa84979fcb2459749eb80b2 out-of-source-utils dbf9e34ee8964084651e25907fa8f52c multibuild 4650a65187015567b4e041bb9bfdb364 optfeature 538bce96e5589935b57e178e8635f301 systemd a964c0cbe818b5729da1dbfcee5be861 eapi9-pipestatus d2c134036ac31c3085aebc9147f572bd verify-sig 4e83419d7fb5d336f6a4de8193968319 xdg 3ef49a87c52c8b77c476351195dfe575
|
||||||
|
_md5_=1c79aac6dc9aecb67be85380d7675bb5
|
6
net-libs/nodejs/Manifest
Normal file
6
net-libs/nodejs/Manifest
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
AUX nodejs-24.1.0-paxmarking.patch 3496 BLAKE2B 128a05fb3bc040edfd53221d5744a0626a0f64b7ba46dac94dc0df0d57631017f2da839e06ce769194a8519dcb7feebbede7cef9743323fded5044694a8eb4cc SHA512 3fae2c3bb0f90bd84e147a7fb740f12fab93843ef8f3a2ecf07359582222f86e9793b49b624894fa244f4d9159ac897e1b32d014a6fffbd0d687a1c0996e4240
|
||||||
|
DIST node-v24.4.1.tar.xz 50266728 BLAKE2B 79461f2ea24e919ce7b27c06ebd3978befa2e2b3ce5277655a5ce8c807e1351efd0400c21e6f993f5e65d12b6353c0bf6d97ff04ecd75248711aa2a9637924fd SHA512 d01a579f2d16b6d7a5d07d58579aa204e2602df13be80b6eb3772ac6f0e28bcbc1e6a68142c2e1c8bc75f397e7ae12ce339f03e46ba4cc6008a938c5a88dcae8
|
||||||
|
DIST node-v24.5.0.tar.xz 52281988 BLAKE2B 6d5829c1891e59066aded4dbe9a6a872835e052e007e392991ca01deb877a2bc126a98843ee74946d9a96bd5fa072f80e8aabe9f83964499bdd0726a95116e48 SHA512 8aebac41a273f6208579500e2c393c175233d771165dfbf76a360ddcba0ed341b27489fe5829a9ce9bcaf3d3ceaf3bb0a14ba7aecabc7adf7f8b2ef8071d57f8
|
||||||
|
EBUILD nodejs-24.4.1.ebuild 8422 BLAKE2B 9f8a38f95be24ef5fb21c953f308f59a3eee0def4d120faab71d666a583eacf568db5a4b5b89e588ffd2be6f0a18de569998c1fa2f0946fb19f1783dd0a79671 SHA512 6d700bde90405850d64f7b0a53d60a62368215c20fbb490146b83fa7aa8c87857a9337705e62bed194d7ae29c3b634117dc56aa0c80052eb8ddb3be9643b304a
|
||||||
|
EBUILD nodejs-24.5.0.ebuild 8422 BLAKE2B 9f8a38f95be24ef5fb21c953f308f59a3eee0def4d120faab71d666a583eacf568db5a4b5b89e588ffd2be6f0a18de569998c1fa2f0946fb19f1783dd0a79671 SHA512 6d700bde90405850d64f7b0a53d60a62368215c20fbb490146b83fa7aa8c87857a9337705e62bed194d7ae29c3b634117dc56aa0c80052eb8ddb3be9643b304a
|
||||||
|
MISC metadata.xml 919 BLAKE2B fec5e1a55653b516865d2b0f7788ba520fc46029276f6584be3bfa579fb9852119b3a7fb907e1977279227627cc65c085dbffc4a06ca11cd4dd031325a423468 SHA512 658d82da53e3b701d0ed5a2ba4f515744240ebcdf8392c0a40c9b9e9808f89357ea270a2b742dd0045628ff0d87baf9c26f60ac0d046d75808cb97add192c8a3
|
101
net-libs/nodejs/files/nodejs-24.1.0-paxmarking.patch
Normal file
101
net-libs/nodejs/files/nodejs-24.1.0-paxmarking.patch
Normal file
@@ -0,0 +1,101 @@
|
|||||||
|
From d6a829fbeefdc289bcdac566dc234bf55380d4a6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: William Hubbs <w.d.hubbs@gmail.com>
|
||||||
|
Date: Sat, 24 May 2025 14:21:24 -0500
|
||||||
|
Subject: [PATCH] pax marking
|
||||||
|
|
||||||
|
---
|
||||||
|
node.gyp | 17 ++++++++++++++++-
|
||||||
|
tools/v8_gypfiles/v8.gyp | 24 +++++++++++++++++++++++-
|
||||||
|
2 files changed, 39 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/node.gyp b/node.gyp
|
||||||
|
index 59303d9ab7c..7db72a0ebdf 100644
|
||||||
|
--- a/node.gyp
|
||||||
|
+++ b/node.gyp
|
||||||
|
@@ -422,6 +422,7 @@
|
||||||
|
'src/node_webstorage.h',
|
||||||
|
],
|
||||||
|
'node_mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)node_mksnapshot<(EXECUTABLE_SUFFIX)',
|
||||||
|
+ 'node_mksnapshot_u_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)node_mksnapshot_u<(EXECUTABLE_SUFFIX)',
|
||||||
|
'node_js2c_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)node_js2c<(EXECUTABLE_SUFFIX)',
|
||||||
|
'conditions': [
|
||||||
|
['GENERATOR == "ninja"', {
|
||||||
|
@@ -688,11 +689,25 @@
|
||||||
|
'conditions': [
|
||||||
|
['node_snapshot_main!=""', {
|
||||||
|
'actions': [
|
||||||
|
+ {
|
||||||
|
+ 'action_name': 'run_pax_mksnapshot',
|
||||||
|
+ 'inputs': [
|
||||||
|
+ '<(node_mksnapshot_exec)',
|
||||||
|
+ ],
|
||||||
|
+ 'outputs': [
|
||||||
|
+ '<(node_mksnapshot_u_exec)',
|
||||||
|
+ ],
|
||||||
|
+ 'action': [
|
||||||
|
+ 'bash',
|
||||||
|
+ '-c',
|
||||||
|
+ 'mv <(node_mksnapshot_exec) <(node_mksnapshot_u_exec) && paxmark.sh m <(node_mksnapshot_u_exec)',
|
||||||
|
+ ],
|
||||||
|
+ },
|
||||||
|
{
|
||||||
|
'action_name': 'node_mksnapshot',
|
||||||
|
'process_outputs_as_sources': 1,
|
||||||
|
'inputs': [
|
||||||
|
- '<(node_mksnapshot_exec)',
|
||||||
|
+ '<(node_mksnapshot_u_exec)',
|
||||||
|
'<(node_snapshot_main)',
|
||||||
|
],
|
||||||
|
'outputs': [
|
||||||
|
diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp
|
||||||
|
index 8e3f015dff1..575bba798ae 100644
|
||||||
|
--- a/tools/v8_gypfiles/v8.gyp
|
||||||
|
+++ b/tools/v8_gypfiles/v8.gyp
|
||||||
|
@@ -9,6 +9,7 @@
|
||||||
|
'v8_vector_stores%': 0,
|
||||||
|
'v8_embed_script%': "",
|
||||||
|
'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)',
|
||||||
|
+ 'mksnapshot_u_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot_u<(EXECUTABLE_SUFFIX)',
|
||||||
|
'v8_os_page_size%': 0,
|
||||||
|
'generate_bytecode_output_root': '<(SHARED_INTERMEDIATE_DIR)/generate-bytecode-output-root',
|
||||||
|
'generate_bytecode_builtins_list_output': '<(generate_bytecode_output_root)/builtins-generated/bytecodes-builtins-list.h',
|
||||||
|
@@ -1723,7 +1724,7 @@
|
||||||
|
],
|
||||||
|
}, # bytecode_builtins_list_generator
|
||||||
|
{
|
||||||
|
- 'target_name': 'mksnapshot',
|
||||||
|
+ 'target_name': 'mksnapshot_u',
|
||||||
|
'type': 'executable',
|
||||||
|
'dependencies': [
|
||||||
|
'v8_base_without_compiler',
|
||||||
|
@@ -1767,6 +1768,27 @@
|
||||||
|
'ldflags': [ '-fno-lto' ],
|
||||||
|
}],
|
||||||
|
],
|
||||||
|
+ }, # mksnapshot_u
|
||||||
|
+ {
|
||||||
|
+ 'target_name': 'mksnapshot',
|
||||||
|
+ 'type': 'none',
|
||||||
|
+ 'dependencies': ['mksnapshot_u'],
|
||||||
|
+ 'actions': [
|
||||||
|
+ {
|
||||||
|
+ 'action_name': 'paxmark_mksnapshot',
|
||||||
|
+ 'inputs': [
|
||||||
|
+ '<(mksnapshot_u_exec)',
|
||||||
|
+ ],
|
||||||
|
+ 'outputs': [
|
||||||
|
+ '<(mksnapshot_exec)',
|
||||||
|
+ ],
|
||||||
|
+ 'action': [
|
||||||
|
+ 'bash',
|
||||||
|
+ '-c',
|
||||||
|
+ 'cp <(mksnapshot_u_exec) <(mksnapshot_exec) && paxmark.sh m <(mksnapshot_exec)'
|
||||||
|
+ ],
|
||||||
|
+ },
|
||||||
|
+ ],
|
||||||
|
}, # mksnapshot
|
||||||
|
{
|
||||||
|
'target_name': 'torque',
|
||||||
|
--
|
||||||
|
2.49.0
|
||||||
|
|
21
net-libs/nodejs/metadata.xml
Normal file
21
net-libs/nodejs/metadata.xml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<email>williamh@gentoo.org</email>
|
||||||
|
<name>William Hubbs</name>
|
||||||
|
</maintainer>
|
||||||
|
<use>
|
||||||
|
<flag name="corepack">Enable the experimental corepack package management tool</flag>
|
||||||
|
<flag name="inspector">Enable V8 inspector</flag>
|
||||||
|
<flag name="npm">Enable NPM package manager</flag>
|
||||||
|
<flag name="pax-kernel">Enable building under a PaX enabled kernel</flag>
|
||||||
|
<flag name="snapshot">Enable snapshot creation for faster startup</flag>
|
||||||
|
<flag name="system-icu">Use system <pkg>dev-libs/icu</pkg> instead of the bundled version</flag>
|
||||||
|
<flag name="system-ssl">Use system OpenSSL instead of the bundled one</flag>
|
||||||
|
</use>
|
||||||
|
<upstream>
|
||||||
|
<remote-id type="github">nodejs/node</remote-id>
|
||||||
|
<remote-id type="cpe">cpe:/a:nodejs:nodejs</remote-id>
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
292
net-libs/nodejs/nodejs-24.4.1.ebuild
Normal file
292
net-libs/nodejs/nodejs-24.4.1.ebuild
Normal file
@@ -0,0 +1,292 @@
|
|||||||
|
# Copyright 1999-2025 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
CONFIG_CHECK="~ADVISE_SYSCALLS"
|
||||||
|
PYTHON_COMPAT=( python3_{10..13} )
|
||||||
|
PYTHON_REQ_USE="threads(+)"
|
||||||
|
|
||||||
|
inherit bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils pax-utils python-any-r1 toolchain-funcs xdg-utils
|
||||||
|
|
||||||
|
DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
|
||||||
|
HOMEPAGE="https://nodejs.org/"
|
||||||
|
LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT npm? ( Artistic-2 )"
|
||||||
|
|
||||||
|
if [[ ${PV} == *9999 ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://github.com/nodejs/node"
|
||||||
|
SLOT="0"
|
||||||
|
else
|
||||||
|
SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
|
||||||
|
SLOT="0/$(ver_cut 1)"
|
||||||
|
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
|
||||||
|
S="${WORKDIR}/node-v${PV}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
IUSE="corepack cpu_flags_x86_sse2 debug doc +icu +inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test"
|
||||||
|
REQUIRED_USE="inspector? ( icu ssl )
|
||||||
|
npm? ( ssl )
|
||||||
|
system-icu? ( icu )
|
||||||
|
system-ssl? ( ssl )
|
||||||
|
x86? ( cpu_flags_x86_sse2 )"
|
||||||
|
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
RDEPEND=">=app-arch/brotli-1.1.0:=
|
||||||
|
dev-db/sqlite:3
|
||||||
|
>=dev-libs/libuv-1.51.0:=
|
||||||
|
>=dev-libs/simdjson-3.10.1:=
|
||||||
|
>=net-dns/c-ares-1.34.4:=
|
||||||
|
>=net-libs/nghttp2-1.64.0:=
|
||||||
|
>=net-libs/nghttp3-1.7.0:=
|
||||||
|
sys-libs/zlib
|
||||||
|
corepack? ( !sys-apps/yarn )
|
||||||
|
system-icu? ( >=dev-libs/icu-73:= )
|
||||||
|
system-ssl? (
|
||||||
|
>=net-libs/ngtcp2-1.9.1:=
|
||||||
|
>=dev-libs/openssl-1.1.1:0=
|
||||||
|
)
|
||||||
|
!system-ssl? ( >=net-libs/ngtcp2-1.9.1:=[-gnutls] )
|
||||||
|
|| (
|
||||||
|
sys-devel/gcc:*
|
||||||
|
llvm-runtimes/libatomic-stub
|
||||||
|
)"
|
||||||
|
BDEPEND="${PYTHON_DEPS}
|
||||||
|
app-alternatives/ninja
|
||||||
|
sys-apps/coreutils
|
||||||
|
virtual/pkgconfig
|
||||||
|
test? ( net-misc/curl )
|
||||||
|
pax-kernel? ( sys-apps/elfix )"
|
||||||
|
DEPEND="${RDEPEND}"
|
||||||
|
|
||||||
|
# These are measured on a loong machine with -ggdb on, and only checked
|
||||||
|
# if debugging flags are present in CFLAGS.
|
||||||
|
#
|
||||||
|
# The final link consumed a little more than 7GiB alone, so 8GiB is the lower
|
||||||
|
# limit for memory usage. Disk usage was 19.1GiB for the build directory and
|
||||||
|
# 1.2GiB for the installed image, so we leave some room for architectures with
|
||||||
|
# fatter binaries and set the disk requirement to 22GiB.
|
||||||
|
CHECKREQS_MEMORY="8G"
|
||||||
|
CHECKREQS_DISK_BUILD="22G"
|
||||||
|
|
||||||
|
pkg_pretend() {
|
||||||
|
if [[ ${MERGE_TYPE} != "binary" ]]; then
|
||||||
|
if is-flagq "-g*" && ! is-flagq "-g*0" ; then
|
||||||
|
einfo "Checking for sufficient disk space and memory to build ${PN} with debugging CFLAGS"
|
||||||
|
check-reqs_pkg_pretend
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
python-any-r1_pkg_setup
|
||||||
|
linux-info_pkg_setup
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
tc-export AR CC CXX PKG_CONFIG
|
||||||
|
export V=1
|
||||||
|
export BUILDTYPE=Release
|
||||||
|
|
||||||
|
# fix compilation on Darwin
|
||||||
|
# https://code.google.com/p/gyp/issues/detail?id=260
|
||||||
|
sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die
|
||||||
|
|
||||||
|
# proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504
|
||||||
|
local LIBDIR=$(get_libdir)
|
||||||
|
sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die
|
||||||
|
sed -i -e "s/'lib'/'${LIBDIR}'/" deps/npm/lib/npm.js || die
|
||||||
|
|
||||||
|
# Avoid writing a depfile, not useful
|
||||||
|
sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
|
||||||
|
|
||||||
|
sed -i -e "/'-O3'/d" common.gypi node.gypi || die
|
||||||
|
|
||||||
|
# debug builds. change install path, remove optimisations and override buildtype
|
||||||
|
if use debug; then
|
||||||
|
sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
|
||||||
|
BUILDTYPE=Debug
|
||||||
|
fi
|
||||||
|
|
||||||
|
# We need to disable mprotect on two files when it builds Bug 694100.
|
||||||
|
use pax-kernel && PATCHES+=( "${FILESDIR}"/${PN}-24.1.0-paxmarking.patch )
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
xdg_environment_reset
|
||||||
|
|
||||||
|
# LTO compiler flags are handled by configure.py itself
|
||||||
|
filter-lto
|
||||||
|
# The warnings are *so* noisy and make build.logs massive
|
||||||
|
append-cxxflags $(test-flags-CXX -Wno-template-id-cdtor)
|
||||||
|
# https://bugs.gentoo.org/931514
|
||||||
|
use arm64 && append-flags $(test-flags-CXX -mbranch-protection=none)
|
||||||
|
|
||||||
|
local myconf=(
|
||||||
|
--ninja
|
||||||
|
# ada is not packaged yet
|
||||||
|
# https://github.com/ada-url/ada
|
||||||
|
# --shared-ada
|
||||||
|
--shared-brotli
|
||||||
|
--shared-cares
|
||||||
|
--shared-libuv
|
||||||
|
--shared-nghttp2
|
||||||
|
--shared-nghttp3
|
||||||
|
--shared-ngtcp2
|
||||||
|
--shared-simdjson
|
||||||
|
# sindutf is not packaged yet
|
||||||
|
# https://github.com/simdutf/simdutf
|
||||||
|
# --shared-simdutf
|
||||||
|
--shared-sqlite
|
||||||
|
--shared-zlib
|
||||||
|
)
|
||||||
|
use debug && myconf+=( --debug )
|
||||||
|
use lto && myconf+=( --enable-lto )
|
||||||
|
if use system-icu; then
|
||||||
|
myconf+=( --with-intl=system-icu )
|
||||||
|
elif use icu; then
|
||||||
|
myconf+=( --with-intl=full-icu )
|
||||||
|
else
|
||||||
|
myconf+=( --with-intl=none )
|
||||||
|
fi
|
||||||
|
use corepack || myconf+=( --without-corepack )
|
||||||
|
use inspector || myconf+=( --without-inspector )
|
||||||
|
use npm || myconf+=( --without-npm )
|
||||||
|
use snapshot || myconf+=( --without-node-snapshot )
|
||||||
|
if use ssl; then
|
||||||
|
use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
|
||||||
|
else
|
||||||
|
myconf+=( --without-ssl )
|
||||||
|
fi
|
||||||
|
|
||||||
|
local myarch=""
|
||||||
|
case "${ARCH}:${ABI}" in
|
||||||
|
*:amd64) myarch="x64";;
|
||||||
|
*:arm) myarch="arm";;
|
||||||
|
*:arm64) myarch="arm64";;
|
||||||
|
loong:lp64*) myarch="loong64";;
|
||||||
|
riscv:lp64*) myarch="riscv64";;
|
||||||
|
*:ppc64) myarch="ppc64";;
|
||||||
|
*:x32) myarch="x32";;
|
||||||
|
*:x86) myarch="ia32";;
|
||||||
|
*) myarch="${ABI}";;
|
||||||
|
esac
|
||||||
|
|
||||||
|
GYP_DEFINES="linux_use_gold_flags=0
|
||||||
|
linux_use_bundled_binutils=0
|
||||||
|
linux_use_bundled_gold=0" \
|
||||||
|
"${EPYTHON}" configure.py \
|
||||||
|
--prefix="${EPREFIX}"/usr \
|
||||||
|
--dest-cpu=${myarch} \
|
||||||
|
"${myconf[@]}" || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
export NINJA_ARGS=" $(get_NINJAOPTS)"
|
||||||
|
emake -Onone
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local LIBDIR="${ED}/usr/$(get_libdir)"
|
||||||
|
default
|
||||||
|
|
||||||
|
pax-mark -m "${ED}"/usr/bin/node
|
||||||
|
|
||||||
|
# set up a symlink structure that node-gyp expects..
|
||||||
|
dodir /usr/include/node/deps/{v8,uv}
|
||||||
|
dosym . /usr/include/node/src
|
||||||
|
for var in deps/{uv,v8}/include; do
|
||||||
|
dosym ../.. /usr/include/node/${var}
|
||||||
|
done
|
||||||
|
|
||||||
|
if use doc; then
|
||||||
|
docinto html
|
||||||
|
dodoc -r "${S}"/doc/*
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use npm; then
|
||||||
|
keepdir /etc/npm
|
||||||
|
echo "NPM_CONFIG_GLOBALCONFIG=${EPREFIX}/etc/npm/npmrc" > "${T}"/50npm
|
||||||
|
doenvd "${T}"/50npm
|
||||||
|
|
||||||
|
# Install bash completion for `npm`
|
||||||
|
local tmp_npm_completion_file="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
|
||||||
|
"${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
|
||||||
|
newbashcomp "${tmp_npm_completion_file}" npm
|
||||||
|
|
||||||
|
# Move man pages
|
||||||
|
doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
rm -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
|
||||||
|
|
||||||
|
local find_exp="-or -name"
|
||||||
|
local find_name=()
|
||||||
|
for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
|
||||||
|
".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
|
||||||
|
"*.bat" "*.cmd"; do
|
||||||
|
find_name+=( ${find_exp} "${match}" )
|
||||||
|
done
|
||||||
|
|
||||||
|
# Remove various development and/or inappropriate files and
|
||||||
|
# useless docs of dependend packages.
|
||||||
|
find "${LIBDIR}"/node_modules \
|
||||||
|
\( -type d -name examples \) -or \( -type f \( \
|
||||||
|
-iname "LICEN?E*" \
|
||||||
|
"${find_name[@]}" \
|
||||||
|
\) \) -exec rm -rf "{}" \;
|
||||||
|
fi
|
||||||
|
|
||||||
|
use corepack &&
|
||||||
|
"${D}"/usr/bin/corepack enable --install-directory "${D}"/usr/bin
|
||||||
|
|
||||||
|
mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
local drop_tests=(
|
||||||
|
test/parallel/test-dns.js
|
||||||
|
test/parallel/test-dns-resolveany-bad-ancount.js
|
||||||
|
test/parallel/test-dns-setserver-when-querying.js
|
||||||
|
test/parallel/test-dotenv.js
|
||||||
|
test/parallel/test-fs-mkdir.js
|
||||||
|
test/parallel/test-fs-read-stream.js
|
||||||
|
test/parallel/test-fs-utimes-y2K38.js
|
||||||
|
test/parallel/test-fs-watch-recursive-add-file.js
|
||||||
|
test/parallel/test-http2-client-set-priority.js
|
||||||
|
test/parallel/test-http2-priority-event.js
|
||||||
|
test/parallel/test-process-euid-egid.js
|
||||||
|
test/parallel/test-process-get-builtin.mjs
|
||||||
|
test/parallel/test-process-initgroups.js
|
||||||
|
test/parallel/test-process-setgroups.js
|
||||||
|
test/parallel/test-process-uid-gid.js
|
||||||
|
test/parallel/test-release-npm.js
|
||||||
|
test/parallel/test-socket-write-after-fin-error.js
|
||||||
|
test/parallel/test-strace-openat-openssl.js
|
||||||
|
test/sequential/test-tls-session-timeout.js
|
||||||
|
test/sequential/test-util-debug.js
|
||||||
|
)
|
||||||
|
use inspector ||
|
||||||
|
drop_tests+=(
|
||||||
|
test/parallel/test-inspector-emit-protocol-event.js
|
||||||
|
test/parallel/test-inspector-network-arbitrary-data.js
|
||||||
|
test/parallel/test-inspector-network-domain.js
|
||||||
|
test/parallel/test-inspector-network-fetch.js
|
||||||
|
test/parallel/test-inspector-network-http.js
|
||||||
|
test/sequential/test-watch-mode.mjs
|
||||||
|
)
|
||||||
|
rm -f "${drop_tests[@]}" || die "disabling tests failed"
|
||||||
|
|
||||||
|
out/${BUILDTYPE}/cctest || die
|
||||||
|
"${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
if use npm; then
|
||||||
|
ewarn "remember to run: source /etc/profile if you plan to use nodejs"
|
||||||
|
ewarn " in your current shell"
|
||||||
|
fi
|
||||||
|
}
|
292
net-libs/nodejs/nodejs-24.5.0.ebuild
Normal file
292
net-libs/nodejs/nodejs-24.5.0.ebuild
Normal file
@@ -0,0 +1,292 @@
|
|||||||
|
# Copyright 1999-2025 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
CONFIG_CHECK="~ADVISE_SYSCALLS"
|
||||||
|
PYTHON_COMPAT=( python3_{10..13} )
|
||||||
|
PYTHON_REQ_USE="threads(+)"
|
||||||
|
|
||||||
|
inherit bash-completion-r1 check-reqs flag-o-matic linux-info ninja-utils pax-utils python-any-r1 toolchain-funcs xdg-utils
|
||||||
|
|
||||||
|
DESCRIPTION="A JavaScript runtime built on Chrome's V8 JavaScript engine"
|
||||||
|
HOMEPAGE="https://nodejs.org/"
|
||||||
|
LICENSE="Apache-1.1 Apache-2.0 BSD BSD-2 MIT npm? ( Artistic-2 )"
|
||||||
|
|
||||||
|
if [[ ${PV} == *9999 ]]; then
|
||||||
|
inherit git-r3
|
||||||
|
EGIT_REPO_URI="https://github.com/nodejs/node"
|
||||||
|
SLOT="0"
|
||||||
|
else
|
||||||
|
SRC_URI="https://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz"
|
||||||
|
SLOT="0/$(ver_cut 1)"
|
||||||
|
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
|
||||||
|
S="${WORKDIR}/node-v${PV}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
IUSE="corepack cpu_flags_x86_sse2 debug doc +icu +inspector lto npm pax-kernel +snapshot +ssl +system-icu +system-ssl test"
|
||||||
|
REQUIRED_USE="inspector? ( icu ssl )
|
||||||
|
npm? ( ssl )
|
||||||
|
system-icu? ( icu )
|
||||||
|
system-ssl? ( ssl )
|
||||||
|
x86? ( cpu_flags_x86_sse2 )"
|
||||||
|
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
|
RDEPEND=">=app-arch/brotli-1.1.0:=
|
||||||
|
dev-db/sqlite:3
|
||||||
|
>=dev-libs/libuv-1.51.0:=
|
||||||
|
>=dev-libs/simdjson-3.10.1:=
|
||||||
|
>=net-dns/c-ares-1.34.4:=
|
||||||
|
>=net-libs/nghttp2-1.64.0:=
|
||||||
|
>=net-libs/nghttp3-1.7.0:=
|
||||||
|
sys-libs/zlib
|
||||||
|
corepack? ( !sys-apps/yarn )
|
||||||
|
system-icu? ( >=dev-libs/icu-73:= )
|
||||||
|
system-ssl? (
|
||||||
|
>=net-libs/ngtcp2-1.9.1:=
|
||||||
|
>=dev-libs/openssl-1.1.1:0=
|
||||||
|
)
|
||||||
|
!system-ssl? ( >=net-libs/ngtcp2-1.9.1:=[-gnutls] )
|
||||||
|
|| (
|
||||||
|
sys-devel/gcc:*
|
||||||
|
llvm-runtimes/libatomic-stub
|
||||||
|
)"
|
||||||
|
BDEPEND="${PYTHON_DEPS}
|
||||||
|
app-alternatives/ninja
|
||||||
|
sys-apps/coreutils
|
||||||
|
virtual/pkgconfig
|
||||||
|
test? ( net-misc/curl )
|
||||||
|
pax-kernel? ( sys-apps/elfix )"
|
||||||
|
DEPEND="${RDEPEND}"
|
||||||
|
|
||||||
|
# These are measured on a loong machine with -ggdb on, and only checked
|
||||||
|
# if debugging flags are present in CFLAGS.
|
||||||
|
#
|
||||||
|
# The final link consumed a little more than 7GiB alone, so 8GiB is the lower
|
||||||
|
# limit for memory usage. Disk usage was 19.1GiB for the build directory and
|
||||||
|
# 1.2GiB for the installed image, so we leave some room for architectures with
|
||||||
|
# fatter binaries and set the disk requirement to 22GiB.
|
||||||
|
CHECKREQS_MEMORY="8G"
|
||||||
|
CHECKREQS_DISK_BUILD="22G"
|
||||||
|
|
||||||
|
pkg_pretend() {
|
||||||
|
if [[ ${MERGE_TYPE} != "binary" ]]; then
|
||||||
|
if is-flagq "-g*" && ! is-flagq "-g*0" ; then
|
||||||
|
einfo "Checking for sufficient disk space and memory to build ${PN} with debugging CFLAGS"
|
||||||
|
check-reqs_pkg_pretend
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_setup() {
|
||||||
|
python-any-r1_pkg_setup
|
||||||
|
linux-info_pkg_setup
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
tc-export AR CC CXX PKG_CONFIG
|
||||||
|
export V=1
|
||||||
|
export BUILDTYPE=Release
|
||||||
|
|
||||||
|
# fix compilation on Darwin
|
||||||
|
# https://code.google.com/p/gyp/issues/detail?id=260
|
||||||
|
sed -i -e "/append('-arch/d" tools/gyp/pylib/gyp/xcode_emulation.py || die
|
||||||
|
|
||||||
|
# proper libdir, hat tip @ryanpcmcquen https://github.com/iojs/io.js/issues/504
|
||||||
|
local LIBDIR=$(get_libdir)
|
||||||
|
sed -i -e "s|lib/|${LIBDIR}/|g" tools/install.py || die
|
||||||
|
sed -i -e "s/'lib'/'${LIBDIR}'/" deps/npm/lib/npm.js || die
|
||||||
|
|
||||||
|
# Avoid writing a depfile, not useful
|
||||||
|
sed -i -e "/DEPFLAGS =/d" tools/gyp/pylib/gyp/generator/make.py || die
|
||||||
|
|
||||||
|
sed -i -e "/'-O3'/d" common.gypi node.gypi || die
|
||||||
|
|
||||||
|
# debug builds. change install path, remove optimisations and override buildtype
|
||||||
|
if use debug; then
|
||||||
|
sed -i -e "s|out/Release/|out/Debug/|g" tools/install.py || die
|
||||||
|
BUILDTYPE=Debug
|
||||||
|
fi
|
||||||
|
|
||||||
|
# We need to disable mprotect on two files when it builds Bug 694100.
|
||||||
|
use pax-kernel && PATCHES+=( "${FILESDIR}"/${PN}-24.1.0-paxmarking.patch )
|
||||||
|
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
xdg_environment_reset
|
||||||
|
|
||||||
|
# LTO compiler flags are handled by configure.py itself
|
||||||
|
filter-lto
|
||||||
|
# The warnings are *so* noisy and make build.logs massive
|
||||||
|
append-cxxflags $(test-flags-CXX -Wno-template-id-cdtor)
|
||||||
|
# https://bugs.gentoo.org/931514
|
||||||
|
use arm64 && append-flags $(test-flags-CXX -mbranch-protection=none)
|
||||||
|
|
||||||
|
local myconf=(
|
||||||
|
--ninja
|
||||||
|
# ada is not packaged yet
|
||||||
|
# https://github.com/ada-url/ada
|
||||||
|
# --shared-ada
|
||||||
|
--shared-brotli
|
||||||
|
--shared-cares
|
||||||
|
--shared-libuv
|
||||||
|
--shared-nghttp2
|
||||||
|
--shared-nghttp3
|
||||||
|
--shared-ngtcp2
|
||||||
|
--shared-simdjson
|
||||||
|
# sindutf is not packaged yet
|
||||||
|
# https://github.com/simdutf/simdutf
|
||||||
|
# --shared-simdutf
|
||||||
|
--shared-sqlite
|
||||||
|
--shared-zlib
|
||||||
|
)
|
||||||
|
use debug && myconf+=( --debug )
|
||||||
|
use lto && myconf+=( --enable-lto )
|
||||||
|
if use system-icu; then
|
||||||
|
myconf+=( --with-intl=system-icu )
|
||||||
|
elif use icu; then
|
||||||
|
myconf+=( --with-intl=full-icu )
|
||||||
|
else
|
||||||
|
myconf+=( --with-intl=none )
|
||||||
|
fi
|
||||||
|
use corepack || myconf+=( --without-corepack )
|
||||||
|
use inspector || myconf+=( --without-inspector )
|
||||||
|
use npm || myconf+=( --without-npm )
|
||||||
|
use snapshot || myconf+=( --without-node-snapshot )
|
||||||
|
if use ssl; then
|
||||||
|
use system-ssl && myconf+=( --shared-openssl --openssl-use-def-ca-store )
|
||||||
|
else
|
||||||
|
myconf+=( --without-ssl )
|
||||||
|
fi
|
||||||
|
|
||||||
|
local myarch=""
|
||||||
|
case "${ARCH}:${ABI}" in
|
||||||
|
*:amd64) myarch="x64";;
|
||||||
|
*:arm) myarch="arm";;
|
||||||
|
*:arm64) myarch="arm64";;
|
||||||
|
loong:lp64*) myarch="loong64";;
|
||||||
|
riscv:lp64*) myarch="riscv64";;
|
||||||
|
*:ppc64) myarch="ppc64";;
|
||||||
|
*:x32) myarch="x32";;
|
||||||
|
*:x86) myarch="ia32";;
|
||||||
|
*) myarch="${ABI}";;
|
||||||
|
esac
|
||||||
|
|
||||||
|
GYP_DEFINES="linux_use_gold_flags=0
|
||||||
|
linux_use_bundled_binutils=0
|
||||||
|
linux_use_bundled_gold=0" \
|
||||||
|
"${EPYTHON}" configure.py \
|
||||||
|
--prefix="${EPREFIX}"/usr \
|
||||||
|
--dest-cpu=${myarch} \
|
||||||
|
"${myconf[@]}" || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
export NINJA_ARGS=" $(get_NINJAOPTS)"
|
||||||
|
emake -Onone
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
local LIBDIR="${ED}/usr/$(get_libdir)"
|
||||||
|
default
|
||||||
|
|
||||||
|
pax-mark -m "${ED}"/usr/bin/node
|
||||||
|
|
||||||
|
# set up a symlink structure that node-gyp expects..
|
||||||
|
dodir /usr/include/node/deps/{v8,uv}
|
||||||
|
dosym . /usr/include/node/src
|
||||||
|
for var in deps/{uv,v8}/include; do
|
||||||
|
dosym ../.. /usr/include/node/${var}
|
||||||
|
done
|
||||||
|
|
||||||
|
if use doc; then
|
||||||
|
docinto html
|
||||||
|
dodoc -r "${S}"/doc/*
|
||||||
|
fi
|
||||||
|
|
||||||
|
if use npm; then
|
||||||
|
keepdir /etc/npm
|
||||||
|
echo "NPM_CONFIG_GLOBALCONFIG=${EPREFIX}/etc/npm/npmrc" > "${T}"/50npm
|
||||||
|
doenvd "${T}"/50npm
|
||||||
|
|
||||||
|
# Install bash completion for `npm`
|
||||||
|
local tmp_npm_completion_file="$(TMPDIR="${T}" mktemp -t npm.XXXXXXXXXX)"
|
||||||
|
"${ED}/usr/bin/npm" completion > "${tmp_npm_completion_file}"
|
||||||
|
newbashcomp "${tmp_npm_completion_file}" npm
|
||||||
|
|
||||||
|
# Move man pages
|
||||||
|
doman "${LIBDIR}"/node_modules/npm/man/man{1,5,7}/*
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
rm -f "${LIBDIR}"/node_modules/npm/{.mailmap,.npmignore,Makefile}
|
||||||
|
|
||||||
|
local find_exp="-or -name"
|
||||||
|
local find_name=()
|
||||||
|
for match in "AUTHORS*" "CHANGELOG*" "CONTRIBUT*" "README*" \
|
||||||
|
".travis.yml" ".eslint*" ".wercker.yml" ".npmignore" \
|
||||||
|
"*.bat" "*.cmd"; do
|
||||||
|
find_name+=( ${find_exp} "${match}" )
|
||||||
|
done
|
||||||
|
|
||||||
|
# Remove various development and/or inappropriate files and
|
||||||
|
# useless docs of dependend packages.
|
||||||
|
find "${LIBDIR}"/node_modules \
|
||||||
|
\( -type d -name examples \) -or \( -type f \( \
|
||||||
|
-iname "LICEN?E*" \
|
||||||
|
"${find_name[@]}" \
|
||||||
|
\) \) -exec rm -rf "{}" \;
|
||||||
|
fi
|
||||||
|
|
||||||
|
use corepack &&
|
||||||
|
"${D}"/usr/bin/corepack enable --install-directory "${D}"/usr/bin
|
||||||
|
|
||||||
|
mv "${ED}"/usr/share/doc/node "${ED}"/usr/share/doc/${PF} || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
local drop_tests=(
|
||||||
|
test/parallel/test-dns.js
|
||||||
|
test/parallel/test-dns-resolveany-bad-ancount.js
|
||||||
|
test/parallel/test-dns-setserver-when-querying.js
|
||||||
|
test/parallel/test-dotenv.js
|
||||||
|
test/parallel/test-fs-mkdir.js
|
||||||
|
test/parallel/test-fs-read-stream.js
|
||||||
|
test/parallel/test-fs-utimes-y2K38.js
|
||||||
|
test/parallel/test-fs-watch-recursive-add-file.js
|
||||||
|
test/parallel/test-http2-client-set-priority.js
|
||||||
|
test/parallel/test-http2-priority-event.js
|
||||||
|
test/parallel/test-process-euid-egid.js
|
||||||
|
test/parallel/test-process-get-builtin.mjs
|
||||||
|
test/parallel/test-process-initgroups.js
|
||||||
|
test/parallel/test-process-setgroups.js
|
||||||
|
test/parallel/test-process-uid-gid.js
|
||||||
|
test/parallel/test-release-npm.js
|
||||||
|
test/parallel/test-socket-write-after-fin-error.js
|
||||||
|
test/parallel/test-strace-openat-openssl.js
|
||||||
|
test/sequential/test-tls-session-timeout.js
|
||||||
|
test/sequential/test-util-debug.js
|
||||||
|
)
|
||||||
|
use inspector ||
|
||||||
|
drop_tests+=(
|
||||||
|
test/parallel/test-inspector-emit-protocol-event.js
|
||||||
|
test/parallel/test-inspector-network-arbitrary-data.js
|
||||||
|
test/parallel/test-inspector-network-domain.js
|
||||||
|
test/parallel/test-inspector-network-fetch.js
|
||||||
|
test/parallel/test-inspector-network-http.js
|
||||||
|
test/sequential/test-watch-mode.mjs
|
||||||
|
)
|
||||||
|
rm -f "${drop_tests[@]}" || die "disabling tests failed"
|
||||||
|
|
||||||
|
out/${BUILDTYPE}/cctest || die
|
||||||
|
"${EPYTHON}" tools/test.py --mode=${BUILDTYPE,,} --flaky-tests=dontcare -J message parallel sequential || die
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
if use npm; then
|
||||||
|
ewarn "remember to run: source /etc/profile if you plan to use nodejs"
|
||||||
|
ewarn " in your current shell"
|
||||||
|
fi
|
||||||
|
}
|
6
net-p2p/qbittorrent/Manifest
Normal file
6
net-p2p/qbittorrent/Manifest
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
AUX qbittorrent.confd 494 BLAKE2B 862037a6237dd0104ca0717d8cfe1cced3b0e5d15d2629e33a78bfd2ea963a47a344246a2cda085357103762427bc1142d26c53b2a3df11cee9196030ce74407 SHA512 685e65344ed313ec24b8fad48fc9b5fcfcf6ca460fd3ac30861f27e6773ce9d74d45c68b5b21c804c95f5c69fb7139d192113eddea3a8359d43e47f696662846
|
||||||
|
AUX qbittorrent.initd 911 BLAKE2B 6c776811d97d8eec38104e7fa4df6b3c80f1f50ea985c05e24034f636d73b9b0227ae34a6f4080bf25970cb0ee7ae4edd679bfb402c6d69eb59aa5b4f9c77f28 SHA512 1e1cd4d4163aeacf8c30fdd2b8842fd3565495d6ffa80189ad46a5e928c6bcb4eb30bf3c22fe14237f2e9e6b798680cab058d0a8bd7aa80e6e57a81f718b689c
|
||||||
|
DIST qbittorrent-5.1.2.tar.xz 4631900 BLAKE2B 5cf21619c29878f1cecc08d66df27289c8f8541fe03bc4593384394921ad13891fc89f5846a9828b927ea08b51c0123d17d02952fee0b5ddac6dd259a9b0030b SHA512 8817c0136892373257b4c89983121af1d2c33ab93b248678949775c3b0e5e6b299cefd1ad3c7ab9b88c56a618ee3837a984872f781bb4ace9769c92a42908cab
|
||||||
|
DIST qbittorrent-5.1.2.tar.xz.asc 849 BLAKE2B 2d023dd2dc922da973f26094349c2262e8f29227b615debc4a8f04c511bb513bfa56c0ac78e8e351e5b6c5f1a003c29d3a1860cd31e7d3dcbb006367b41e7d3e SHA512 69be899ed521da551ebcf0961c494ae828d2143fea9bc253f17ed81df61c4989124a8b231226c83c433314059e292ee3bf58422d861166eaa4272597bb8643c6
|
||||||
|
EBUILD qbittorrent-5.1.2.ebuild 2856 BLAKE2B 215389d756e27e01626ce5975757cdd0a38bf55791c3c98369022a1904fa44899783e58368dc7fb0d59adefbb8d93c1379fb3d789522f59be0c6201baa2269fd SHA512 7231b4b515765431e603ff385ee7c85afa71b186dcc81efa1aaa121dfb0493892f499a992e14591b7869deb7bb84c69ce9f952c004a523c54c265a9ebb703930
|
||||||
|
MISC metadata.xml 936 BLAKE2B ec39beee61a7aeb19eb0261553e4295aeb5c4283d3d66071b149db76df03c92e553c67d5f77103c385640cb79814ed3685b0f6c2dcf82422db2126df67ad02d3 SHA512 73171b7f2c43b7cb46d69b23431a47dd70e78bda1e7edea90cbd8da428dba2271df09745f68d0711dff2a10870e5c53ecf8d616f8c43bad4051584137f5dfb71
|
20
net-p2p/qbittorrent/files/qbittorrent.confd
Normal file
20
net-p2p/qbittorrent/files/qbittorrent.confd
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
# /etc/conf.d/qbittorrent: config file for /etc/init.d/qbittorrent
|
||||||
|
|
||||||
|
# User and group as which to run
|
||||||
|
#QBITTORRENT_USER="qbittorrent"
|
||||||
|
#QBITTORRENT_GROUP="qbittorrent"
|
||||||
|
|
||||||
|
# Directory where qBittorrent saves its logs (and maybe downloads)
|
||||||
|
#QBITTORRENT_DIRECTORY="/var/lib/qbittorrent"
|
||||||
|
|
||||||
|
# umask used to create files
|
||||||
|
#QBITTORRENT_UMASK=0022
|
||||||
|
|
||||||
|
# I/O nice level of qBittorrent
|
||||||
|
#QBITTORRENT_IONICE=0
|
||||||
|
|
||||||
|
# Nice level of qBittorrent
|
||||||
|
#QBITTORRENT_NICE=0
|
||||||
|
|
||||||
|
# Extra opts given to qBittorrent
|
||||||
|
#QBITTORRENT_OPTS=""
|
27
net-p2p/qbittorrent/files/qbittorrent.initd
Normal file
27
net-p2p/qbittorrent/files/qbittorrent.initd
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
#!/sbin/openrc-run
|
||||||
|
# Copyright 2023 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
QBITTORRENT_USER=${QBITTORRENT_USER:-qbittorrent}
|
||||||
|
QBITTORRENT_GROUP=${QBITTORRENT_GROUP:-qbittorrent}
|
||||||
|
QBITTORRENT_DIRECTORY=${QBITTORRENT_DIRECTORY:-/var/lib/qbittorrent}
|
||||||
|
QBITTORRENT_UMASK=${QBITTORRENT_UMASK:-0022}
|
||||||
|
QBITTORRENT_IONICE=${QBITTORRENT_IONICE:-0}
|
||||||
|
QBITTORRENT_NICE=${QBITTORRENT_NICE:-0}
|
||||||
|
|
||||||
|
description="BitTorrent client in C++ and Qt"
|
||||||
|
command="/usr/bin/qbittorrent-nox"
|
||||||
|
command_args="${QBITTORRENT_OPTS}"
|
||||||
|
pidfile="/run/${RC_SVCNAME}.pid"
|
||||||
|
command_background="yes"
|
||||||
|
command_user="${QBITTORRENT_USER}:${QBITTORRENT_GROUP}"
|
||||||
|
umask="${QBITTORRENT_UMASK}"
|
||||||
|
start_stop_daemon_args="--ionice ${QBITTORRENT_IONICE} --nicelevel ${QBITTORRENT_NICE}"
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
need localmount net
|
||||||
|
}
|
||||||
|
|
||||||
|
start_pre() {
|
||||||
|
checkpath -q -d -o ${QBITTORRENT_USER}:${QBITTORRENT_GROUP} ${QBITTORRENT_DIRECTORY}
|
||||||
|
}
|
24
net-p2p/qbittorrent/metadata.xml
Normal file
24
net-p2p/qbittorrent/metadata.xml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<email>eschwartz@gentoo.org</email>
|
||||||
|
<name>Eli Schwartz</name>
|
||||||
|
</maintainer>
|
||||||
|
<maintainer type="person" proxied="yes">
|
||||||
|
<email>fkobi@pm.me</email>
|
||||||
|
<name>Filip Kobierski</name>
|
||||||
|
</maintainer>
|
||||||
|
<use>
|
||||||
|
<flag name="dbus">Enable support for notifications and power-management features via D-Bus</flag>
|
||||||
|
<flag name="webui">Install qBittorrent Web UI (qbittorrent-nox)</flag>
|
||||||
|
</use>
|
||||||
|
<upstream>
|
||||||
|
<bugs-to>https://github.com/qbittorrent/qBittorrent/issues</bugs-to>
|
||||||
|
<changelog>https://www.qbittorrent.org/news</changelog>
|
||||||
|
<doc>https://github.com/qbittorrent/qBittorrent/wiki</doc>
|
||||||
|
<remote-id type="github">qbittorrent/qBittorrent</remote-id>
|
||||||
|
<!-- Sourceforge hosts the distfiles.
|
||||||
|
Ignore the "redirection" and "missing remote-id" warnings -->
|
||||||
|
</upstream>
|
||||||
|
</pkgmetadata>
|
126
net-p2p/qbittorrent/qbittorrent-5.1.2.ebuild
Normal file
126
net-p2p/qbittorrent/qbittorrent-5.1.2.ebuild
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
# Copyright 2023-2025 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
inherit cmake edo multibuild optfeature systemd verify-sig xdg
|
||||||
|
|
||||||
|
DESCRIPTION="BitTorrent client in C++ and Qt"
|
||||||
|
HOMEPAGE="https://www.qbittorrent.org"
|
||||||
|
|
||||||
|
if [[ ${PV} == *9999 ]]; then
|
||||||
|
EGIT_REPO_URI="https://github.com/qbittorrent/qBittorrent.git"
|
||||||
|
inherit git-r3
|
||||||
|
else
|
||||||
|
SRC_URI="
|
||||||
|
https://downloads.sourceforge.net/qbittorrent/${P}.tar.xz
|
||||||
|
verify-sig? ( https://downloads.sourceforge.net/qbittorrent/${P}.tar.xz.asc )
|
||||||
|
"
|
||||||
|
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~riscv x86"
|
||||||
|
|
||||||
|
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-qbittorrent )"
|
||||||
|
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/qBittorrent.asc
|
||||||
|
fi
|
||||||
|
|
||||||
|
LICENSE="GPL-2+-with-openssl-exception GPL-3+-with-openssl-exception"
|
||||||
|
SLOT="0"
|
||||||
|
IUSE="+dbus +gui test webui"
|
||||||
|
RESTRICT="!test? ( test )"
|
||||||
|
REQUIRED_USE="
|
||||||
|
|| ( gui webui )
|
||||||
|
dbus? ( gui )
|
||||||
|
"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
>=dev-libs/openssl-3.0.2:=
|
||||||
|
>=dev-qt/qtbase-6.5:6[network,ssl,sql,sqlite,xml]
|
||||||
|
>=net-libs/libtorrent-rasterbar-2.0.10:=
|
||||||
|
>=sys-libs/zlib-1.2.11
|
||||||
|
gui? (
|
||||||
|
>=dev-qt/qtbase-6.5:6[dbus?,gui,widgets]
|
||||||
|
>=dev-qt/qtsvg-6.5:6
|
||||||
|
)
|
||||||
|
webui? (
|
||||||
|
acct-group/qbittorrent
|
||||||
|
acct-user/qbittorrent
|
||||||
|
)
|
||||||
|
"
|
||||||
|
DEPEND="
|
||||||
|
${RDEPEND}
|
||||||
|
>=dev-libs/boost-1.76
|
||||||
|
"
|
||||||
|
BDEPEND+="
|
||||||
|
>=dev-qt/qttools-6.5:6[linguist]
|
||||||
|
virtual/pkgconfig
|
||||||
|
"
|
||||||
|
|
||||||
|
DOCS=( AUTHORS Changelog {CONTRIBUTING,README}.md )
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
MULTIBUILD_VARIANTS=(
|
||||||
|
$(usev gui)
|
||||||
|
$(usev webui nogui)
|
||||||
|
)
|
||||||
|
|
||||||
|
my_src_configure() {
|
||||||
|
local mycmakeargs=(
|
||||||
|
-DVERBOSE_CONFIGURE=ON # for bug reports
|
||||||
|
-DSTACKTRACE=$(usex !elibc_musl) # musl lacks execinfo.h
|
||||||
|
-DTESTING=$(usex test)
|
||||||
|
-DWEBUI=$(usex webui)
|
||||||
|
)
|
||||||
|
|
||||||
|
# upstream supports building just gui or nogui
|
||||||
|
# so we build the project twice (see #839531 for details)
|
||||||
|
# Fedora does the same: https://src.fedoraproject.org/rpms/qbittorrent
|
||||||
|
if [[ ${MULTIBUILD_VARIANT} == "gui" ]]; then
|
||||||
|
mycmakeargs+=(
|
||||||
|
-DGUI=ON
|
||||||
|
-DDBUS=$(usex dbus)
|
||||||
|
-DSYSTEMD=OFF
|
||||||
|
)
|
||||||
|
else
|
||||||
|
mycmakeargs+=(
|
||||||
|
-DGUI=OFF
|
||||||
|
-DDBUS=OFF
|
||||||
|
# The systemd service calls qbittorrent-nox, built only when GUI=OFF.
|
||||||
|
-DSYSTEMD=ON
|
||||||
|
-DSYSTEMD_SERVICES_INSTALL_DIR="$(systemd_get_systemunitdir)"
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
|
||||||
|
cmake_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
multibuild_foreach_variant my_src_configure
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
multibuild_foreach_variant cmake_src_compile
|
||||||
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
my_src_test() {
|
||||||
|
# cmake does not detect tests by default, if you use enable_testing
|
||||||
|
# in a subdirectory instead of the root CMakeLists.txt
|
||||||
|
cd "${BUILD_DIR}"/test || die
|
||||||
|
edo ctest .
|
||||||
|
}
|
||||||
|
|
||||||
|
multibuild_foreach_variant my_src_test
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
multibuild_foreach_variant cmake_src_install
|
||||||
|
|
||||||
|
if use webui; then
|
||||||
|
newconfd "${FILESDIR}/${PN}.confd" "${PN}"
|
||||||
|
newinitd "${FILESDIR}/${PN}.initd" "${PN}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
xdg_pkg_postinst
|
||||||
|
|
||||||
|
optfeature "I2P anonymyzing network support" net-vpn/i2pd net-vpn/i2p
|
||||||
|
}
|
Reference in New Issue
Block a user