From 087ba6fd4049ad07667e8ca26c76adf0d9f81cb8 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:24:01 -0500 Subject: [PATCH 01/13] app-editors/xed: keyword ~arm64 Signed-off-by: crueter --- app-editors/xed/xed-3.8.7.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app-editors/xed/xed-3.8.7.ebuild b/app-editors/xed/xed-3.8.7.ebuild index 63ab51176c..36e5f552f3 100644 --- a/app-editors/xed/xed-3.8.7.ebuild +++ b/app-editors/xed/xed-3.8.7.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/linuxmint/xed/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64" +KEYWORDS="~amd64 ~arm64" IUSE="gtk-doc spell" RDEPEND=" From 4a1ab59d71bdb00a8eb8f49897e9cd39eb474e84 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:50:04 -0500 Subject: [PATCH 02/13] games-emulation/eden: keyword ~arm64 Signed-off-by: crueter --- games-emulation/eden/eden-0.0.4_rc3.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/games-emulation/eden/eden-0.0.4_rc3.ebuild b/games-emulation/eden/eden-0.0.4_rc3.ebuild index 1929194238..2d0b09094f 100644 --- a/games-emulation/eden/eden-0.0.4_rc3.ebuild +++ b/games-emulation/eden/eden-0.0.4_rc3.ebuild @@ -19,7 +19,7 @@ S="${WORKDIR}/${PN}" LICENSE="GPL-3+" SLOT="0" -KEYWORDS="~amd64" +KEYWORDS="~amd64 ~arm64" IUSE="camera +cubeb discord llvm lto +opengl +qt6 room sdl ssl test +usb web-applet web-service wifi" REQUIRED_USE=" !qt6? ( !camera !discord !web-applet ) From 603127f14723b75db99a82d9df55142b60a5c383 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:52:25 -0500 Subject: [PATCH 03/13] dev-cpp/cpp-jwt: keyword ~arm64 Signed-off-by: crueter --- dev-cpp/cpp-jwt/cpp-jwt-1.5_pre20220727.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-cpp/cpp-jwt/cpp-jwt-1.5_pre20220727.ebuild b/dev-cpp/cpp-jwt/cpp-jwt-1.5_pre20220727.ebuild index 3ec2715fa5..db9e14d845 100644 --- a/dev-cpp/cpp-jwt/cpp-jwt-1.5_pre20220727.ebuild +++ b/dev-cpp/cpp-jwt/cpp-jwt-1.5_pre20220727.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/arun11299/cpp-jwt/archive/e12ef06218596b52d9b5d6e163 LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="~amd64 ~arm64 ~ppc64" DEPEND="test? ( dev-cpp/gtest ) dev-libs/openssl From 99134c377899a5e05186436f3c5bca72163ffbc0 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:52:54 -0500 Subject: [PATCH 04/13] dev-libs/discord-rpc: keyword ~arm64 Signed-off-by: crueter --- dev-libs/discord-rpc/discord-rpc-3.4.1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/discord-rpc/discord-rpc-3.4.1.ebuild b/dev-libs/discord-rpc/discord-rpc-3.4.1.ebuild index b15934192a..391cc649ff 100644 --- a/dev-libs/discord-rpc/discord-rpc-3.4.1.ebuild +++ b/dev-libs/discord-rpc/discord-rpc-3.4.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/eden-emulator/discord-rpc/archive/refs/tags/${PV}.ta LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="~amd64 ~arm64 ~ppc64" IUSE="examples" DEPEND=" From 2b2e31a200f582ddb0ed81a270e4d957b891ca5f Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:53:17 -0500 Subject: [PATCH 05/13] dev-libs/frozen: keyword ~arm64, ~ppc64 Signed-off-by: crueter --- dev-libs/frozen/frozen-1.2.0.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/frozen/frozen-1.2.0.ebuild b/dev-libs/frozen/frozen-1.2.0.ebuild index ade488f638..aaead84e1e 100644 --- a/dev-libs/frozen/frozen-1.2.0.ebuild +++ b/dev-libs/frozen/frozen-1.2.0.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/serge-sans-paille/frozen/archive/refs/tags/${PV}.tar LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~amd64" +KEYWORDS="~amd64 ~arm64 ~ppc64" IUSE="test" RESTRICT="!test? ( test )" From 6e61d5561e598a329c82561c64ed57ae014fb533 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:53:39 -0500 Subject: [PATCH 06/13] dev-libs/mcl: keyword ~arm64 Signed-off-by: crueter --- dev-libs/mcl/mcl-0.1.13.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/mcl/mcl-0.1.13.ebuild b/dev-libs/mcl/mcl-0.1.13.ebuild index 8c5d96b6b1..ed625bc87d 100644 --- a/dev-libs/mcl/mcl-0.1.13.ebuild +++ b/dev-libs/mcl/mcl-0.1.13.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/merryhime/mcl/archive/refs/tags/${PV}.tar.gz -> ${P} LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="~amd64 ~arm64 ~ppc64" IUSE="test" RESTRICT="!test? ( test )" From 7d657b327c03007e87b681965e373cc97bc27f48 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:53:58 -0500 Subject: [PATCH 07/13] dev-libs/oaknut: keyword ~arm64 Signed-off-by: crueter --- dev-libs/oaknut/oaknut-2.0.2.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/oaknut/oaknut-2.0.2.ebuild b/dev-libs/oaknut/oaknut-2.0.2.ebuild index f21de82e30..bdab72d3a2 100644 --- a/dev-libs/oaknut/oaknut-2.0.2.ebuild +++ b/dev-libs/oaknut/oaknut-2.0.2.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/merryhime/oaknut/archive/refs/tags/${PV}.tar.gz -> $ LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="~amd64 ~arm64 ~ppc64" IUSE="test" RESTRICT="!test? ( test )" From c6e0d6af15f317445252a69a0b2e5eaf7c1f99f9 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:54:46 -0500 Subject: [PATCH 08/13] dev-libs/sirit: keyword ~arm64 Signed-off-by: crueter --- dev-libs/sirit/sirit-1.0.1.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev-libs/sirit/sirit-1.0.1.ebuild b/dev-libs/sirit/sirit-1.0.1.ebuild index badbade308..46fbcf0545 100644 --- a/dev-libs/sirit/sirit-1.0.1.ebuild +++ b/dev-libs/sirit/sirit-1.0.1.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/eden-emulator/sirit/archive/refs/tags/v${PV}.tar.gz LICENSE="AGPL-3+" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="~amd64 ~arm64 ~ppc64" IUSE="test" RESTRICT="!test? ( test )" From ba3aa95f0eed82a4f8b64b9feaeaf92c0cb24eb3 Mon Sep 17 00:00:00 2001 From: crueter Date: Thu, 18 Dec 2025 16:55:10 -0500 Subject: [PATCH 09/13] media-libs/VulkanMemoryAllocator: keyword ~arm64 Signed-off-by: crueter --- .../VulkanMemoryAllocator/VulkanMemoryAllocator-3.3.0.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/media-libs/VulkanMemoryAllocator/VulkanMemoryAllocator-3.3.0.ebuild b/media-libs/VulkanMemoryAllocator/VulkanMemoryAllocator-3.3.0.ebuild index 74ca1d0b7b..fa78a8a35c 100644 --- a/media-libs/VulkanMemoryAllocator/VulkanMemoryAllocator-3.3.0.ebuild +++ b/media-libs/VulkanMemoryAllocator/VulkanMemoryAllocator-3.3.0.ebuild @@ -11,7 +11,7 @@ SRC_URI="https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/archi LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="~amd64 ~arm64 ~ppc64" IUSE="doc" BDEPEND=" From 0f042155c3face61e0718bb9010bdd432f3c1703 Mon Sep 17 00:00:00 2001 From: Paul Zander Date: Thu, 18 Dec 2025 22:04:02 +0100 Subject: [PATCH 10/13] sci-ml/ollama: add 0.13.4, update mkl detection Without Fortran the detection requires `libmkl_intel_thread.so` which we provide only for `sci-libs/mkl[llvm-openmp]`. Closes: https://bugs.gentoo.org/967657 Signed-off-by: Paul Zander --- sci-ml/ollama/Manifest | 2 + sci-ml/ollama/ollama-0.13.4.ebuild | 350 +++++++++++++++++++++++++++++ sci-ml/ollama/ollama-9999.ebuild | 4 +- 3 files changed, 354 insertions(+), 2 deletions(-) create mode 100644 sci-ml/ollama/ollama-0.13.4.ebuild diff --git a/sci-ml/ollama/Manifest b/sci-ml/ollama/Manifest index 10a141402e..0bccb51fb6 100644 --- a/sci-ml/ollama/Manifest +++ b/sci-ml/ollama/Manifest @@ -4,3 +4,5 @@ DIST ollama-0.13.1-deps.tar.xz 49906880 BLAKE2B efd7b64921784b1d68a27d07c1de8083 DIST ollama-0.13.1.gh.tar.gz 20813055 BLAKE2B 588ddb803868b3be49ac25f3798a6ad762cdb6a05c355876ab5f1b9b86457f5cebad3f023d6f2ba6f622ff130e4af2a8bfbb7a48284988643bba7e713b07d079 SHA512 91369ec02b7cfa001707b10226db805497df34e24dbc01d4408825775ba305f2c7ff3eccba508843c3e5f659624ced77bd88b1857c75bf08322bdda279dc7c13 DIST ollama-0.13.2-deps.tar.xz 49906880 BLAKE2B efd7b64921784b1d68a27d07c1de80836a57f163fc4a17748e52ac0e78480c8811f68149d8f75eff9ba2e19c8be62683c9e75d2b92cfef84100a0de2e7818e3c SHA512 0af9f5fc1d5633b6ac9934e5a7d232aa20c5e2f8d4eaeb0152c6fcf77e1922dc7b67fcc039933562832939553dc3861ca35cf2e604fd310934669227666aee3e DIST ollama-0.13.2.gh.tar.gz 20871489 BLAKE2B 97fdec1c45eeca4394e3455655460e8363e5d70bcfcde8f5993107d5cf7229aea99ea60727d5240fd338546a93cb07f48c47d0adb6bd51f82642d3ea9a37e52a SHA512 4c29e7933c5cc3114382ba32ee9bf6f57ceab03963520e552885ff67ab0ab22f7e6cd1933e237ab22bfbe73ff366be63068a139955293e282819b492a64f8f7d +DIST ollama-0.13.4-deps.tar.xz 49906880 BLAKE2B efd7b64921784b1d68a27d07c1de80836a57f163fc4a17748e52ac0e78480c8811f68149d8f75eff9ba2e19c8be62683c9e75d2b92cfef84100a0de2e7818e3c SHA512 0af9f5fc1d5633b6ac9934e5a7d232aa20c5e2f8d4eaeb0152c6fcf77e1922dc7b67fcc039933562832939553dc3861ca35cf2e604fd310934669227666aee3e +DIST ollama-0.13.4.gh.tar.gz 20941151 BLAKE2B 76ae6bcd668f1f25477084f20ae549fbd5c9ac389f323661fa434af20ec3455a174dbdfcd99f68e045d55cd36aa46580b612e93037c669173534fb5032f9d054 SHA512 fc6e341fce5c40cd8d046bc9e303af9e6ab789b3ed9d48dc3565c7e52d3553062e0fa8acd587fb43c3710ab53e9b42ee126df8064e9c86f79e7149488d4b8d7d diff --git a/sci-ml/ollama/ollama-0.13.4.ebuild b/sci-ml/ollama/ollama-0.13.4.ebuild new file mode 100644 index 0000000000..96d77bea52 --- /dev/null +++ b/sci-ml/ollama/ollama-0.13.4.ebuild @@ -0,0 +1,350 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# supports ROCM/HIP >=5.5, but we define 6.1 due to the eclass +ROCM_VERSION="6.1" +inherit cuda rocm +inherit cmake +inherit flag-o-matic go-module linux-info systemd toolchain-funcs + +DESCRIPTION="Get up and running with Llama 3, Mistral, Gemma, and other language models." +HOMEPAGE="https://ollama.com" + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/ollama/ollama.git" +else + SRC_URI=" + https://github.com/ollama/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz + https://github.com/gentoo-golang-dist/${PN}/releases/download/v${PV}/${P}-deps.tar.xz + " + KEYWORDS="~amd64" +fi + +LICENSE="MIT" +SLOT="0" + +X86_CPU_FLAGS=( + sse4_2 + avx + f16c + avx2 + bmi2 + fma3 + avx512f + avx512vbmi + avx512_vnni + avx_vnni +) +CPU_FLAGS=( "${X86_CPU_FLAGS[@]/#/cpu_flags_x86_}" ) +IUSE="blas ${CPU_FLAGS[*]} cuda mkl rocm vulkan" +# IUSE+=" opencl" + +RESTRICT="mirror test" + +COMMON_DEPEND=" + blas? ( + !mkl? ( + virtual/blas + ) + mkl? ( + sci-libs/mkl[llvm-openmp] + ) + ) + cuda? ( + dev-util/nvidia-cuda-toolkit:= + ) + rocm? ( + >=dev-util/hip-${ROCM_VERSION}:= + >=sci-libs/hipBLAS-${ROCM_VERSION}:= + >=sci-libs/rocBLAS-${ROCM_VERSION}:= + ) +" + +DEPEND=" + ${COMMON_DEPEND} + >=dev-lang/go-1.23.4 +" +BDEPEND=" + vulkan? ( + dev-util/vulkan-headers + media-libs/shaderc + ) +" + +RDEPEND=" + ${COMMON_DEPEND} + acct-group/${PN} + >=acct-user/${PN}-3[cuda?] +" + +PATCHES=( + "${FILESDIR}/${PN}-9999-use-GNUInstallDirs.patch" +) + +pkg_pretend() { + if use amd64; then + if use cpu_flags_x86_f16c && use cpu_flags_x86_avx2 && use cpu_flags_x86_fma3 && ! use cpu_flags_x86_bmi2; then + ewarn + ewarn "CPU_FLAGS_X86: bmi2 not enabled." + ewarn " Not building haswell runner." + ewarn " Not building skylakex runner." + ewarn " Not building icelake runner." + ewarn " Not building alderlake runner." + ewarn + if grep bmi2 /proc/cpuinfo > /dev/null; then + ewarn "bmi2 found in /proc/cpuinfo" + ewarn + fi + fi + fi +} + +pkg_setup() { + if use rocm; then + linux-info_pkg_setup + if linux-info_get_any_version && linux_config_exists; then + if ! linux_chkconfig_present HSA_AMD_SVM; then + ewarn "To use ROCm/HIP, you need to have HSA_AMD_SVM option enabled in your kernel." + fi + fi + fi +} + +src_unpack() { + # Already filter lto flags for ROCM + # 963401 + if use rocm; then + # copied from _rocm_strip_unsupported_flags + strip-unsupported-flags + export CXXFLAGS="$(test-flags-HIPCXX "${CXXFLAGS}")" + fi + + if [[ "${PV}" == *9999* ]]; then + git-r3_src_unpack + go-module_live_vendor + else + go-module_src_unpack + fi +} + +src_prepare() { + cmake_src_prepare + + sed \ + -e "/set(GGML_CCACHE/s/ON/OFF/g" \ + -e "/PRE_INCLUDE_REGEXES.*cu/d" \ + -e "/PRE_INCLUDE_REGEXES.*hip/d" \ + -i CMakeLists.txt || die "bundle headers sed failed" + + # TODO see src_unpack? + sed \ + -e "s/ -O3//g" \ + -i \ + ml/backend/ggml/ggml/src/ggml-cpu/cpu.go \ + || die "-O3 sed failed" + + # grep -Rl -e 'lib/ollama' -e '"..", "lib"' --include '*.go' + sed \ + -e "s/\"..\", \"lib\"/\"..\", \"$(get_libdir)\"/" \ + -e "s#\"lib/ollama\"#\"$(get_libdir)/ollama\"#" \ + -i \ + ml/backend/ggml/ggml/src/ggml.go \ + ml/path.go \ + || die "libdir sed failed" + + if use amd64; then + if + ! use cpu_flags_x86_sse4_2; then + sed -e "/ggml_add_cpu_backend_variant(sse42/s/^/# /g" -i ml/backend/ggml/ggml/src/CMakeLists.txt || die + # SSE42) + fi + if + ! use cpu_flags_x86_sse4_2 || + ! use cpu_flags_x86_avx; then + sed -e "/ggml_add_cpu_backend_variant(sandybridge/s/^/# /g" -i ml/backend/ggml/ggml/src/CMakeLists.txt || die + # SSE42 AVX) + fi + if + ! use cpu_flags_x86_sse4_2 || + ! use cpu_flags_x86_avx || + ! use cpu_flags_x86_f16c || + ! use cpu_flags_x86_avx2 || + ! use cpu_flags_x86_bmi2 || + ! use cpu_flags_x86_fma3; then + sed -e "/ggml_add_cpu_backend_variant(haswell/s/^/# /g" -i ml/backend/ggml/ggml/src/CMakeLists.txt || die + # SSE42 AVX F16C AVX2 BMI2 FMA) + fi + if + ! use cpu_flags_x86_sse4_2 || + ! use cpu_flags_x86_avx || + ! use cpu_flags_x86_f16c || + ! use cpu_flags_x86_avx2 || + ! use cpu_flags_x86_bmi2 || + ! use cpu_flags_x86_fma3 || + ! use cpu_flags_x86_avx512f; then + sed -e "/ggml_add_cpu_backend_variant(skylakex/s/^/# /g" -i ml/backend/ggml/ggml/src/CMakeLists.txt || die + # SSE42 AVX F16C AVX2 BMI2 FMA AVX512) + fi + if + ! use cpu_flags_x86_sse4_2 || + ! use cpu_flags_x86_avx || + ! use cpu_flags_x86_f16c || + ! use cpu_flags_x86_avx2 || + ! use cpu_flags_x86_bmi2 || + ! use cpu_flags_x86_fma3 || + ! use cpu_flags_x86_avx512f || + ! use cpu_flags_x86_avx512vbmi || + ! use cpu_flags_x86_avx512_vnni; then + sed -e "/ggml_add_cpu_backend_variant(icelake/s/^/# /g" -i ml/backend/ggml/ggml/src/CMakeLists.txt || die + # SSE42 AVX F16C AVX2 BMI2 FMA AVX512 AVX512_VBMI AVX512_VNNI) + fi + if + ! use cpu_flags_x86_sse4_2 || + ! use cpu_flags_x86_avx || + ! use cpu_flags_x86_f16c || + ! use cpu_flags_x86_avx2 || + ! use cpu_flags_x86_bmi2 || + ! use cpu_flags_x86_fma3 || + ! use cpu_flags_x86_avx_vnni; then + sed -e "/ggml_add_cpu_backend_variant(alderlake/s/^/# /g" -i ml/backend/ggml/ggml/src/CMakeLists.txt || die + # SSE42 AVX F16C AVX2 BMI2 FMA AVX_VNNI) + fi + + # ml/backend/ggml/ggml/src/CMakeLists.txt + fi + + if use cuda; then + cuda_src_prepare + fi + + if use rocm; then + # --hip-version gets appended to the compile flags which isn't a known flag. + # This causes rocm builds to fail because -Wunused-command-line-argument is turned on. + # Use nuclear option to fix this. + # Disable -Werror's from go modules. + find "${S}" -name ".go" -exec sed -i "s/ -Werror / /g" {} + || die + fi +} + +src_configure() { + local mycmakeargs=( + -DGGML_CCACHE="no" + + # -DGGML_CPU="yes" + -DGGML_BLAS="$(usex blas)" + # -DGGML_CUDA="$(usex cuda)" + # -DGGML_HIP="$(usex rocm)" + + # -DGGML_METAL="yes" # apple + # missing from ml/backend/ggml/ggml/src/ + # -DGGML_CANN="yes" + # -DGGML_MUSA="yes" + # -DGGML_RPC="yes" + # -DGGML_SYCL="yes" + # -DGGML_KOMPUTE="$(usex kompute)" + # -DGGML_OPENCL="$(usex opencl)" + # -DGGML_VULKAN="$(usex vulkan)" + "$(cmake_use_find_package vulkan Vulkan)" + ) + + if use blas; then + if use mkl; then + mycmakeargs+=( + -DGGML_BLAS_VENDOR="Intel10_64lp" + ) + else + mycmakeargs+=( + -DGGML_BLAS_VENDOR="Generic" + ) + fi + fi + + if use cuda; then + local -x CUDAHOSTCXX CUDAHOSTLD + CUDAHOSTCXX="$(cuda_gccdir)" + CUDAHOSTLD="$(tc-getCXX)" + + cuda_add_sandbox -w + addpredict "/dev/char/" + else + mycmakeargs+=( + -DCMAKE_CUDA_COMPILER="NOTFOUND" + ) + fi + + if use rocm; then + mycmakeargs+=( + -DCMAKE_HIP_ARCHITECTURES="$(get_amdgpu_flags)" + -DCMAKE_HIP_PLATFORM="amd" + ) + + local -x HIP_PATH="${ESYSROOT}/usr" + else + mycmakeargs+=( + -DCMAKE_HIP_COMPILER="NOTFOUND" + ) + fi + + cmake_src_configure +} + +src_compile() { + # export version information + # https://github.com/gentoo/guru/pull/205 + # https://forums.gentoo.org/viewtopic-p-8831646.html + local VERSION + if [[ "${PV}" == *9999* ]]; then + VERSION="$( + git describe --tags --first-parent --abbrev=7 --long --dirty --always \ + | sed -e "s/^v//g" + )" + else + VERSION="${PVR}" + fi + local EXTRA_GOFLAGS_LD=( + # "-w" # disable DWARF generation + # "-s" # disable symbol table + "-X=github.com/ollama/ollama/version.Version=${VERSION}" + "-X=github.com/ollama/ollama/server.mode=release" + ) + GOFLAGS+=" '-ldflags=${EXTRA_GOFLAGS_LD[*]}'" + + ego build + + cmake_src_compile +} + +src_install() { + dobin ollama + + cmake_src_install + + newinitd "${FILESDIR}/ollama.init" "${PN}" + newconfd "${FILESDIR}/ollama.confd" "${PN}" + + systemd_dounit "${FILESDIR}/ollama.service" +} + +pkg_preinst() { + keepdir /var/log/ollama + fperms 750 /var/log/ollama + fowners "${PN}:${PN}" /var/log/ollama +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + einfo "Quick guide:" + einfo "\tollama serve" + einfo "\tollama run llama3:70b" + einfo + einfo "See available models at https://ollama.com/library" + fi + + if use cuda ; then + einfo "When using cuda the user running ${PN} has to be in the video group or it won't detect devices." + einfo "The ebuild ensures this for user ${PN} via acct-user/${PN}[cuda]" + fi +} diff --git a/sci-ml/ollama/ollama-9999.ebuild b/sci-ml/ollama/ollama-9999.ebuild index e437e32c45..96d77bea52 100644 --- a/sci-ml/ollama/ollama-9999.ebuild +++ b/sci-ml/ollama/ollama-9999.ebuild @@ -50,7 +50,7 @@ COMMON_DEPEND=" virtual/blas ) mkl? ( - sci-libs/mkl + sci-libs/mkl[llvm-openmp] ) ) cuda? ( @@ -253,7 +253,7 @@ src_configure() { if use blas; then if use mkl; then mycmakeargs+=( - -DGGML_BLAS_VENDOR="Intel" + -DGGML_BLAS_VENDOR="Intel10_64lp" ) else mycmakeargs+=( From ef8fad4c681b532b01ccb9a1b2b986423bb4918f Mon Sep 17 00:00:00 2001 From: Paul Zander Date: Thu, 18 Dec 2025 22:05:17 +0100 Subject: [PATCH 11/13] sys-apps/corefreq: add 2.0.9 Rework `CONFIG_CHECK` to make it clear some options are indeed optional. Signed-off-by: Paul Zander --- sys-apps/corefreq/Manifest | 1 + sys-apps/corefreq/corefreq-2.0.9.ebuild | 74 +++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 sys-apps/corefreq/corefreq-2.0.9.ebuild diff --git a/sys-apps/corefreq/Manifest b/sys-apps/corefreq/Manifest index c0c766383e..b0dc40fe2b 100644 --- a/sys-apps/corefreq/Manifest +++ b/sys-apps/corefreq/Manifest @@ -1 +1,2 @@ DIST corefreq-2.0.8.tar.gz 1236511 BLAKE2B bb125d356e9b140bf9e93b3e5d96a27f2bdc56f6588fcf24bfd423fa7a11a04a1e2f777aab0141cbffeb0757133a22c01599d791df38f3230e6a413e1e1f78d3 SHA512 efbebb70d80425db2f448814e2c219013f795150a1cf13246565e3863fd0c66780e38f7a673479fe99cc3d5605d260e6caa77671cdfa74edf75d28db26817109 +DIST corefreq-2.0.9.tar.gz 1237167 BLAKE2B 711de9b3293082997e62b7909bee6839bf7c02ee54ff564566f0791fd34f16c187951606dbc53f82117a00626a1e1a2a1be48f90f24aa44e1dcf6cb4f778908f SHA512 dfc6da41a3345b8d66dff7a7359e4cfc860f4fe2756820f9bc782feb64491b5e74e5ff8aaba43d94cdd830d42aa2c896dacfe0564504adc5e379ddeb120b075f diff --git a/sys-apps/corefreq/corefreq-2.0.9.ebuild b/sys-apps/corefreq/corefreq-2.0.9.ebuild new file mode 100644 index 0000000000..955df936c5 --- /dev/null +++ b/sys-apps/corefreq/corefreq-2.0.9.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 systemd toolchain-funcs + +DESCRIPTION="CPU monitoring and tuning software designed for 64-bit processors" +HOMEPAGE="https://www.cyring.fr/" +SRC_URI="https://github.com/cyring/CoreFreq/archive/${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/CoreFreq-${PV}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" + +DOCS=( README.md ) + +pkg_setup() { + # see README.md + # required + local CONFIG_CHECK="SMP X86_MSR" + # optional + local optional_checks=( + HOTPLUG_CPU + CPU_IDLE + CPU_FREQ + PM_SLEEP + DMI + HAVE_NMI + XEN + AMD_NB + HAVE_PERF_EVENTS + SCHED_MUQSS + SCHED_BMQ + SCHED_PDS + ) + + CONFIG_CHECK+="$(printf " ~%s" "${optional_checks[@]}")" + + local check + for check in "${optional_checks[@]}"; do + eval "WARNING_${check}"="\"CONFIG_${check} is optional and not enabled\"" + done + + linux-mod-r1_pkg_setup +} + +src_compile() { + local modlist=( corefreqk=misc::build ) + local modargs=( KERNELDIR="${KV_OUT_DIR}" ) + linux-mod-r1_src_compile + + emake V=1 CC="$(tc-getCC)" OPTIM_FLG="${CFLAGS} ${LDFLAGS}" corefreqd corefreq-cli +} + +src_install() { + linux-mod-r1_src_install + + dobin build/{corefreqd,corefreq-cli} + newconfd "${FILESDIR}/${PN}.conf" "${PN}" + doinitd "${FILESDIR}/${PN}" + systemd_dounit "${PN}d.service" +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + + einfo "To be able to use corefreq, you need to load kernel module:" + einfo "modprobe corefreqk" + einfo "After that - start daemon with corefreqd" + einfo "or by 'rc-service corefreq start'" + einfo "And only after that you can start corefreq-cli" +} From 07d3c61d2c64c550e766286dbc149266d2ac8ac1 Mon Sep 17 00:00:00 2001 From: Paul Zander Date: Thu, 18 Dec 2025 22:10:38 +0100 Subject: [PATCH 12/13] sci-electronics/logic-bin: small QA fixes - prebuilt image only works for amd64 - popd requires die - doins * could glob files leading with `-` turning them into options Signed-off-by: Paul Zander --- sci-electronics/logic-bin/logic-bin-2.4.40.ebuild | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sci-electronics/logic-bin/logic-bin-2.4.40.ebuild b/sci-electronics/logic-bin/logic-bin-2.4.40.ebuild index 8cac66fb17..f83d485bda 100644 --- a/sci-electronics/logic-bin/logic-bin-2.4.40.ebuild +++ b/sci-electronics/logic-bin/logic-bin-2.4.40.ebuild @@ -15,9 +15,11 @@ APPIMAGE="Logic-${PV}-linux-x64.AppImage" DESCRIPTION="Saleae logic analyzer" HOMEPAGE="https://www.saleae.com" -SRC_URI="https://downloads2.saleae.com/logic2/${APPIMAGE}" - +SRC_URI=" + amd64? ( https://downloads2.saleae.com/logic2/${APPIMAGE} ) +" S="${WORKDIR}" + LICENSE="Saleae" SLOT="0" KEYWORDS="-* ~amd64" @@ -85,11 +87,11 @@ src_prepare() { for f in *.so; do patchelf --set-rpath '$ORIGIN' $f || die done - popd + popd || die pushd locales || die chromium_remove_language_paks - popd + popd || die default } @@ -116,7 +118,7 @@ src_install() { rm -r "${toremove[@]}" || die insinto /opt/Logic - doins -r * + doins -r ./* fperms 4755 /opt/Logic/chrome-sandbox for i in Logic chrome_crashpad_handler *.so* usr/lib/*.so*; do From 3eb2045443bd1abecbeaf47e35176147e64ef842 Mon Sep 17 00:00:00 2001 From: Paul Zander Date: Thu, 18 Dec 2025 23:00:43 +0100 Subject: [PATCH 13/13] Revert "games-emulation/eden: keyword ~arm64" This reverts commit 4a1ab59d71bdb00a8eb8f49897e9cd39eb474e84. Broken revdeps https://github.com/gentoo/guru/actions/runs/20352389433 Signed-off-by: Paul Zander --- games-emulation/eden/eden-0.0.4_rc3.ebuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/games-emulation/eden/eden-0.0.4_rc3.ebuild b/games-emulation/eden/eden-0.0.4_rc3.ebuild index 2d0b09094f..1929194238 100644 --- a/games-emulation/eden/eden-0.0.4_rc3.ebuild +++ b/games-emulation/eden/eden-0.0.4_rc3.ebuild @@ -19,7 +19,7 @@ S="${WORKDIR}/${PN}" LICENSE="GPL-3+" SLOT="0" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="~amd64" IUSE="camera +cubeb discord llvm lto +opengl +qt6 room sdl ssl test +usb web-applet web-service wifi" REQUIRED_USE=" !qt6? ( !camera !discord !web-applet )