mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-19 20:13:01 -04:00
Merge updates from master
This commit is contained in:
@@ -1 +1 @@
|
||||
DIST xed-3.8.4.tar.gz 4603399 BLAKE2B fe311f47850615a14077904af8beeba11b054f849f399f2916b7338dd3b5bc7e29a71cde70d32d1201b01bbca12ef4417cf2078db038a747aa21281c0d8b204a SHA512 f443803ea07f5d35f9c1925dac76037750df9b9135c32746b8e0ef175c6b75ebcd92f5853bc94ced1f52a01d0a1f3c57a3ae1a58cb45a8ca98464459dbca8b2b
|
||||
DIST xed-3.8.7.tar.gz 4639906 BLAKE2B 24796b2d39f56e8a1e5dfeeca70c8d8b10ad8c4ace1cd08730f3216787109d1c7884de1a0eede8738034c9b6e9c9d35aec3c4aa5328bda7fe78ee40947b4b8aa SHA512 668ca54207ca56f8e707c15eb97ef83f302758012486c33090bd078ef83b22db813ea8c4c891e97e515af252b73439decc9f8ddd6487db4993c8b4fcac50b4ee
|
||||
|
||||
@@ -20,6 +20,7 @@ RDEPEND="
|
||||
>=x11-libs/gtk+-3.19.3:=
|
||||
>=x11-libs/gtksourceview-4.0.3
|
||||
>=dev-libs/libpeas-1.12.0
|
||||
<dev-libs/libpeas-2.0.0
|
||||
x11-libs/pango
|
||||
x11-libs/libxklavier
|
||||
>=x11-libs/xapp-1.9.0
|
||||
@@ -27,7 +28,10 @@ RDEPEND="
|
||||
gtk-doc? ( dev-util/gtk-doc )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
dev-util/itstool
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
local emesonargs=(
|
||||
@@ -1 +1 @@
|
||||
DIST curseforge-1.293.0_p29621.deb 95445056 BLAKE2B 5546b6cef9f02cbf7110d8cf9cbf541eaea2efdd1dadfa3af8cdf42a4cef571f3f03b586887f587aec25e29e818b32ecfe8122e4fa548f9726fdc6be4e3f746a SHA512 42deb6dc7412d23e8869087a40b4a98002e0ab828a73b6e430ae28f25f88fc69431d8320a07a88447a31fc16a53a4c9eec314f4358b80a8925024f076ff61920
|
||||
DIST curseforge-1.294.0_p29866.deb 95641148 BLAKE2B c99248f4ffb75c3bd01351c5d0e6d3182384721269cf686e8ce958bf0d17d4c8d36940c3eb544fbb4e0ebb43d779d69cf05ab328a41fa76ab7272e5af81b47f8 SHA512 b096ea6e909ec055f7a1a9537514e478783890e8083015af3d095c634b416115a292b2bf208021941b6b9b18ae527653a81c81e338a79da941edfaffd9c0e293
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
DIST Logic-2.4.29-linux-x64.AppImage 190784685 BLAKE2B 77e3ef319656fa000a33f7f43385d8132331df6b2aa7bcb7609b53e7cdf53b8c82c99e1508877c07ea20ac0af761501f2db9ae3043e71e09f701a171a4c13167 SHA512 7f99549b3aa1a0c60d157177b14216c2cb55eadbecd4043051a657e0b60a040c6d38ab3117575100f35e3a8fd3805436986b3653dad02240a262ce5283600aa3
|
||||
DIST Logic-2.4.36-linux-x64.AppImage 191333184 BLAKE2B 2d7e9aa54ffcc47182acce8c158461f9cf2a152acaef3edef601e712dd065db9373403d5f75d39c027a74b2cd897e8c2b0d270d3f4a6972849cb08e52bb1bef6 SHA512 d38f2891f2fe2fe4294c25e737c4574d72d945348b9d833b22e8e96e7698c61594b77b87cce4cb56b76ed3788239aa8198b8a29e6402be11cecf7e8e7a638139
|
||||
DIST Logic-2.4.39-linux-x64.AppImage 191523196 BLAKE2B 5c12092bb1ae95e8e5095bcb2d75f86044473308ce20c2dd288f76f5a441742dea5f7fc7bf4168eaef0b58caadcd20b8874d52d1b1c22e4fb8425802a6f34b96 SHA512 7eb9e90ab3cb1cf20aeee4af93b6bcc24021a4853dde53f84e1260c7029f876d2cd4f5eefecec66bd741662084f3743d3ede8f252c1dc21e1d96beb1d74efe2d
|
||||
DIST Logic-2.4.40-linux-x64.AppImage 191604343 BLAKE2B c342c195c5de201d909bd8000844b4e0f0b14ab1996e7a7a6cca5ddd10397feb463a137b1a70eac3b208ae30ee12754c4f828a2dfb8b518b637113a0112c8edb SHA512 bc43b6f4690a1957db3bddc4d56c2bf5179ede9e2bd556306d638cb8a5fc6da7c4c1f495222f26e32af6806b07dcb6a43b4706e2649e55fc02e75c05b7e11733
|
||||
|
||||
@@ -1,128 +0,0 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CHROMIUM_LANGS="
|
||||
af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
|
||||
hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
|
||||
sw ta te th tr uk ur vi zh-CN zh-TW
|
||||
"
|
||||
|
||||
inherit chromium-2 desktop xdg
|
||||
|
||||
APPIMAGE="Logic-${PV}-linux-x64.AppImage"
|
||||
DESCRIPTION="Saleae logic analyzer"
|
||||
HOMEPAGE="https://www.saleae.com"
|
||||
|
||||
SRC_URI="https://downloads2.saleae.com/logic2/${APPIMAGE}"
|
||||
|
||||
S="${WORKDIR}"
|
||||
LICENSE="Saleae"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64"
|
||||
|
||||
RESTRICT="bindist mirror strip"
|
||||
|
||||
RDEPEND="
|
||||
app-accessibility/at-spi2-core:2
|
||||
dev-libs/dbus-glib
|
||||
dev-libs/expat
|
||||
dev-libs/glib:2
|
||||
dev-libs/libdbusmenu
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
media-libs/alsa-lib
|
||||
media-libs/mesa
|
||||
net-print/cups
|
||||
sys-apps/dbus
|
||||
sys-libs/libxcrypt
|
||||
virtual/zlib
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libnotify
|
||||
x11-libs/libX11
|
||||
x11-libs/libXcomposite
|
||||
x11-libs/libXdamage
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXScrnSaver
|
||||
x11-libs/libXtst
|
||||
x11-libs/libdrm
|
||||
x11-libs/libxcb
|
||||
x11-libs/libxkbcommon
|
||||
x11-libs/pango
|
||||
"
|
||||
|
||||
BDEPEND="dev-util/patchelf"
|
||||
|
||||
QA_PREBUILT="*"
|
||||
|
||||
src_unpack() {
|
||||
cp "${DISTDIR}/${APPIMAGE}" "${S}" || die
|
||||
|
||||
cd "${S}" || die # "appimage-extract" unpacks to current directory
|
||||
chmod +x "${APPIMAGE}" || die
|
||||
./"${APPIMAGE}" --appimage-extract || die
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Fix permissions
|
||||
find "${S}" -type d -exec chmod a+rx {} + || die
|
||||
find "${S}" -type f -exec chmod a+r {} + || die
|
||||
|
||||
cd squashfs-root || die
|
||||
|
||||
for f in *.so; do
|
||||
patchelf --set-rpath '$ORIGIN' $f || die
|
||||
done
|
||||
|
||||
# scanelf: rpath_security_checks(): Security problem NULL DT_RUNPATH
|
||||
pushd resources/linux-x64/Analyzers || die
|
||||
for f in *.so; do
|
||||
patchelf --set-rpath '$ORIGIN' $f || die
|
||||
done
|
||||
popd
|
||||
|
||||
pushd locales || die
|
||||
chromium_remove_language_paks
|
||||
popd
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
default
|
||||
chromium_suid_sandbox_check_kernel_config
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cd "${S}/squashfs-root" || die
|
||||
|
||||
insinto /usr/share
|
||||
doins -r ./usr/share/icons
|
||||
|
||||
local -a toremove=(
|
||||
.DirIcon
|
||||
AppRun
|
||||
Logic.png
|
||||
usr/lib/libnotify.so.4
|
||||
usr/lib/libXss.so.1
|
||||
usr/lib/libXtst.so.6
|
||||
)
|
||||
rm -r "${toremove[@]}" || die
|
||||
|
||||
insinto /opt/Logic
|
||||
doins -r *
|
||||
|
||||
fperms 4755 /opt/Logic/chrome-sandbox
|
||||
for i in Logic chrome_crashpad_handler *.so* usr/lib/*.so*; do
|
||||
fperms +x "/opt/Logic/${i}"
|
||||
done
|
||||
|
||||
dosym -r "/opt/Logic/Logic" /usr/bin/Logic
|
||||
domenu Logic.desktop
|
||||
}
|
||||
@@ -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
|
||||
@@ -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
|
||||
|
||||
350
sci-ml/ollama/ollama-0.13.4.ebuild
Normal file
350
sci-ml/ollama/ollama-0.13.4.ebuild
Normal file
@@ -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
|
||||
}
|
||||
@@ -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+=(
|
||||
|
||||
@@ -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
|
||||
|
||||
74
sys-apps/corefreq/corefreq-2.0.9.ebuild
Normal file
74
sys-apps/corefreq/corefreq-2.0.9.ebuild
Normal file
@@ -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"
|
||||
}
|
||||
Reference in New Issue
Block a user