summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/flips/Manifest2
-rw-r--r--dev-util/flips/flips-1.31.ebuild79
-rw-r--r--dev-util/flips/flips-1.31_p202.ebuild81
-rw-r--r--dev-util/flips/metadata.xml13
-rw-r--r--dev-util/google-antigravity-ide/Manifest2
-rw-r--r--dev-util/google-antigravity-ide/google-antigravity-ide-2.5.5.ebuild134
-rw-r--r--dev-util/google-antigravity/Manifest2
-rw-r--r--dev-util/google-antigravity/google-antigravity-2.8.1.ebuild127
-rw-r--r--dev-util/lua-language-server/Manifest1
-rw-r--r--dev-util/lua-language-server/lua-language-server-3.19.1.ebuild95
-rw-r--r--dev-util/ruff/Manifest2
-rw-r--r--dev-util/ruff/ruff-0.16.3.ebuild111
-rw-r--r--dev-util/uftrace/Manifest1
-rw-r--r--dev-util/uftrace/uftrace-0.19.ebuild71
14 files changed, 721 insertions, 0 deletions
diff --git a/dev-util/flips/Manifest b/dev-util/flips/Manifest
new file mode 100644
index 000000000000..825ee6d9d20b
--- /dev/null
+++ b/dev-util/flips/Manifest
@@ -0,0 +1,2 @@
+DIST flips-1.31.zip 158223 BLAKE2B e553a92e3bd8f5c1cfc768b023211733a48e1394eed1f0a991563eccd304ce7607b8dac3ad618bf768e1e52c591a5f2cde9e29b0f9cfbf0ab09f8449c4aba274 SHA512 40c1e9e2c78ef8f30e1a146dd1b1bd1c49addb97c1bc55bd1b1c964f0ee78d2626704ff706c1eb60fc5cd20ffdb70b5188ff8ac6cf34193ef73f2ba48241deb2
+DIST flips-1.31_p202.tar.gz 44534139 BLAKE2B 9d9a3358432696cad19c976126ce51c3e4c0bcb0439779b5639caafd85974481a0d0f8b31039489d25c20c170f87e018cc5f30ceb81d05303053849a4d5bd429 SHA512 3468b477b075cd55189e3f993930cc4c6857227dd9a63e9f8a5ba51fb63d561df3d7914f2f7dd7093cf0ecf33204be571f127f340c0be8a1d03a07f844e570e5
diff --git a/dev-util/flips/flips-1.31.ebuild b/dev-util/flips/flips-1.31.ebuild
new file mode 100644
index 000000000000..18967495e80e
--- /dev/null
+++ b/dev-util/flips/flips-1.31.ebuild
@@ -0,0 +1,79 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs desktop xdg
+
+DESCRIPTION="Patcher for IPS and BPS files"
+HOMEPAGE="https://www.smwcentral.net/?p=section&a=details&id=11474"
+
+SRC_URI="https://dl.smwcentral.net/11474/floating.zip -> ${P}.zip"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+divsuf +gtk +pgo"
+RDEPEND="
+ divsuf? ( dev-libs/libdivsufsort )
+ gtk? (
+ x11-libs/gtk+:3
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-arch/unzip
+ virtual/imagemagick-tools[png]
+ virtual/pkgconfig
+"
+
+src_unpack() {
+ __vecho ">>> Unpacking ${P}.zip to ${PWD}"
+ unzip -q "${DISTDIR}/${P}.zip" src.zip || die
+ mkdir "${P}" || die
+ unzip -q -d "${P}" src.zip || die
+}
+
+src_configure() { :; }
+
+src_compile() {
+ local pkg_config="$(tc-getPKG_CONFIG)"
+ local myemakeargs=(
+ CXX="$(tc-getCXX)"
+ CFLAGS="${CPPFLAGS} ${CXXFLAGS}"
+ LFLAGS="${LDFLAGS}"
+ GTKFLAGS="$("${pkg_config}" --cflags --libs gtk+-3.0)"
+
+ TARGET=$(usex gtk gtk cli)
+ DIVSUF=$(usex divsuf)
+ )
+ if use divsuf; then
+ myemakeargs+=(
+ DIVSUF_CFLAGS="-DUSE_DIVSUFSORT $("${pkg_config}" --cflags libdivsufsort)"
+ DIVSUF_LFLAGS="$("${pkg_config}" --libs libdivsufsort)"
+ )
+ fi
+ if ! use pgo; then
+ emake "${myemakeargs[@]}"
+ else
+ # From make.sh
+ emake "${myemakeargs[@]}" CFLAGS="${CXXFLAGS} -fprofile-generate"
+ # Upstream is missing profiling data, use whatever's available
+ einfo "Running tests ..."
+ ./profile/profile1.sh ./flips bps.ico ips.ico || die
+ ./profile/profile1.sh ./flips libbps.cpp libips.cpp || die
+ rm flips || die
+ emake "${myemakeargs[@]}" CFLAGS="${CXXFLAGS} -fprofile-use"
+ fi
+
+ magick flips.ico flips.png || die
+}
+
+src_install() {
+ einstalldocs
+ dobin flips
+
+ # Using the category field from newer upstream
+ make_desktop_entry flips flips flips 'GNOME;GTK;Utility;RevisionControl'
+ newicon flips-2.png flips.png
+}
diff --git a/dev-util/flips/flips-1.31_p202.ebuild b/dev-util/flips/flips-1.31_p202.ebuild
new file mode 100644
index 000000000000..0052e949953d
--- /dev/null
+++ b/dev-util/flips/flips-1.31_p202.ebuild
@@ -0,0 +1,81 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs xdg
+
+DESCRIPTION="Patcher for IPS and BPS files"
+HOMEPAGE="https://www.smwcentral.net/?p=section&a=details&id=11474"
+
+MY_PV="${PV##*_p}"
+SRC_URI="https://git.disroot.org/Sir_Walrus/Flips/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/flips"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+gtk +pgo"
+RDEPEND="
+ dev-libs/libdivsufsort
+ gtk? (
+ x11-libs/gtk+:3
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ # Unbundle divsuf
+ sed -e '/^DIVSUF :=/{N;N;d}' \
+ -i Makefile || die
+
+ # Avoid traversing the filesystem to find a git repository
+ sed -e '/^COMMIT_COUNT :=/s/:=.*$/:=/' \
+ -i Makefile || die
+
+ default
+}
+
+src_configure() { :; }
+
+src_compile() {
+ local pkg_config="$(tc-getPKG_CONFIG)"
+ local DIVSUF_CFLAGS="$("${pkg_config}" --cflags libdivsufsort)"
+ local DIVSUF_LIBS="$("${pkg_config}" --libs libdivsufsort)"
+ local myemakeargs=(
+ CXX="$(tc-getCXX)"
+ PKG_CONFIG="$pkg_config"
+ CFLAGS="${CPPFLAGS} ${DIVSUF_CFLAGS} ${CXXFLAGS}"
+ LFLAGS="${LDFLAGS} ${DIVSUF_LIBS}"
+
+ TARGET=$(usex gtk gtk cli)
+ )
+ if ! use pgo; then
+ emake "${myemakeargs[@]}"
+ else
+ # From make-linux.sh
+ emake "${myemakeargs[@]}" CFLAGS="${CXXFLAGS} -fprofile-generate"
+ einfo "Running tests ..."
+ ./flips --create --bps-delta \
+ profile/firefox-10.0esr.tar \
+ profile/firefox-17.0esr.tar /dev/null || die
+ ./flips --create --bps-delta-moremem \
+ profile/firefox-10.0esr.tar \
+ profile/firefox-17.0esr.tar /dev/null || die
+ rm flips || die
+ emake "${myemakeargs[@]}" CFLAGS="${CXXFLAGS} -fprofile-use"
+ fi
+}
+
+src_install() {
+ einstalldocs
+
+ if ! use gtk; then
+ dobin flips
+ else
+ emake TARGET=gtk DESTDIR="${ED}" install
+ fi
+}
diff --git a/dev-util/flips/metadata.xml b/dev-util/flips/metadata.xml
new file mode 100644
index 000000000000..0a4bb3f1cb95
--- /dev/null
+++ b/dev-util/flips/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>esteve.varela@gmail.com</email>
+ <name>Esteve Varela Colominas</name>
+ </maintainer>
+ <use>
+ <flag name="divsuf">Uses the more performant <pkg>dev-libs/libdivsufsort</pkg> instead of a bundled modified copy of yuta256's sais algorithm.</flag>
+ <flag name="pgo">Optimize the build using Profile Guided Optimization (PGO)</flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-util/google-antigravity-ide/Manifest b/dev-util/google-antigravity-ide/Manifest
index 7d71d25e63f2..bad9a7be3297 100644
--- a/dev-util/google-antigravity-ide/Manifest
+++ b/dev-util/google-antigravity-ide/Manifest
@@ -2,3 +2,5 @@ DIST google-antigravity-ide-2.0.4_amd64.tar.gz 241557573 BLAKE2B bf357247921718d
DIST google-antigravity-ide-2.0.4_arm64.tar.gz 237028342 BLAKE2B ee50f01fe287ce94845c7055a9474ef78a88b248f79a0a9a1d272d4ee717aa04cbb152e97f7357afc2bdf892804b5b1982f0ab399354a83221979296222f00c4 SHA512 eab641909e28b8a5ec4840377cca522d6cb490b3214596d7d019861247ee5ee12d49bbd1e964f168aba5035b967e76b1c39e460932c0eee78c23b8922495dbc6
DIST google-antigravity-ide-2.1.1_amd64.tar.gz 232330396 BLAKE2B f4824f97635589990848e3f88544a51e59c11da0de9135f16220b68b342c311d4fa4d1e0b36271629ce40824d715553eca11213f5c7469b691869d776bc6d411 SHA512 c009b46aa9b67928fafdd8f7dd242a1c97e04d08fbda80e2253bd5e64a06a0d37ebe90ae2bb699364e66f76878cf72e80bb55c3e1a1d03dae7293db4310d3dba
DIST google-antigravity-ide-2.1.1_arm64.tar.gz 228608508 BLAKE2B 48e331bccfc78be22b5fa6778d2c4c2e31bcefd31fdda699e255f5ef52de5af66ed965599de1154e8ae0bbeeaa1634d4d9bf297741ca924db77147510aeb1d55 SHA512 3e5de8bff9fe23b23877444c976c3b05d7ce76b9d4c6830f1dd241197b48028328176a0dd219e5e2bf11eb7a9af18d5fb83405e2732a902ad2e1a42a0fc84503
+DIST google-antigravity-ide-2.5.5_amd64.tar.gz 240837095 BLAKE2B c016152db0e08f3c49ee353481135c4285ac9f837da295021600464a41b7ee054d5e72ba0e1462d1c26e6bab0b06e1dcf6346f8df015acf2f1dc24ed03e65264 SHA512 40e5214288bc330aa07467e2707e13cebb7b55037993398fcd421f258d36fc8552414f6396c7e00fb6fcbd0a7089c4dbed3f89f44e4d276372a64df55147ca50
+DIST google-antigravity-ide-2.5.5_arm64.tar.gz 236865493 BLAKE2B 09e5454f9793c536eeb9d3b10a7a08203caada8046f6c04f7b470509bcfd99337a134c07d682459af31920028e87446860d3d2e23b1c25e554114948832fcadd SHA512 1254df495be1eb96bedc9f2332ff6a822d22dce986824a610eb2c8e6a4dc76166ef2ce01174431d2739b6286c68658e8a2f4b2f87baadc0a070ef448edff35c1
diff --git a/dev-util/google-antigravity-ide/google-antigravity-ide-2.5.5.ebuild b/dev-util/google-antigravity-ide/google-antigravity-ide-2.5.5.ebuild
new file mode 100644
index 000000000000..c0da568aa068
--- /dev/null
+++ b/dev-util/google-antigravity-ide/google-antigravity-ide-2.5.5.ebuild
@@ -0,0 +1,134 @@
+# Copyright 2026 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-419 es 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 optfeature pax-utils shell-completion xdg
+
+EXECUTION_ID="4923483625488384"
+
+MY_PN="${PN#google-}"
+DESCRIPTION="Google Antigravity's Editor view with context-aware agent"
+HOMEPAGE="https://antigravity.google/"
+BASE_URI="https://edgedl.me.gvt1.com/edgedl/release2/j0qc3/antigravity/stable/${PV}-${EXECUTION_ID}"
+SRC_URI="
+ amd64? ( ${BASE_URI}/linux-x64/Antigravity%20IDE.tar.gz -> ${P}_amd64.tar.gz )
+ arm64? ( ${BASE_URI}/linux-arm/Antigravity%20IDE.tar.gz -> ${P}_arm64.tar.gz )
+"
+S="${WORKDIR}"
+
+# It's complicated...
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+IUSE="kerberos webkit"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ || (
+ sys-apps/systemd
+ sys-apps/systemd-utils
+ )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/libsecret[crypt]
+ app-misc/ca-certificates
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/libglvnd
+ media-libs/mesa
+ net-misc/curl
+ net-print/cups
+ sys-apps/dbus
+ virtual/zlib:=
+ sys-process/lsof
+ x11-libs/cairo
+ x11-libs/gtk+:3
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon
+ x11-libs/libxkbfile
+ x11-libs/libXrandr
+ x11-libs/libXScrnSaver
+ x11-libs/pango
+ x11-misc/xdg-utils
+ kerberos? ( app-crypt/mit-krb5 )
+ webkit? (
+ net-libs/libsoup:3.0
+ net-libs/webkit-gtk:4.1
+ )
+"
+
+QA_PREBUILT="*"
+QA_DESKTOP_FILE="usr/share/applications/${MY_PN}.*\\.desktop"
+
+AGY_HOME_BASE="opt/google"
+AGY_HOME="${AGY_HOME_BASE}/${MY_PN}"
+
+pkg_setup() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_unpack() {
+ default
+ mv "Antigravity IDE" "${MY_PN}" || die
+}
+
+src_prepare() {
+ default
+
+ cd "${MY_PN}" || die
+
+ pushd locales > /dev/null || die
+ chromium_remove_language_paks
+ popd > /dev/null || die
+
+ if ! use kerberos; then
+ rm -r resources/app/node_modules/kerberos || die
+ fi
+
+ if ! use webkit; then
+ rm -r resources/app/extensions/microsoft-authentication || die
+ fi
+}
+
+src_install() {
+ cd "${MY_PN}" || die
+
+ mkdir -p "${ED}/${AGY_HOME}" || die
+ cp -r . "${ED}/${AGY_HOME}" || die
+
+ pax-mark m "${ED}/${AGY_HOME}/bin/${MY_PN}"
+ fperms 0755 "/${AGY_HOME}/${MY_PN}" "/${AGY_HOME}/bin/${MY_PN}"
+ dosym "/${AGY_HOME}/bin/${MY_PN}" "/usr/bin/${MY_PN}"
+
+ fperms 4711 "/${AGY_HOME}/chrome-sandbox"
+
+ domenu "${FILESDIR}/${MY_PN}.desktop"
+ newicon -s scalable "${ED}/${AGY_HOME}/resources/app/resources/linux/code.png" ${MY_PN}.png
+
+ insinto /usr/share/metainfo
+ doins "${FILESDIR}/${MY_PN}.metainfo.xml"
+
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}/${MY_PN}-workspace.xml"
+
+ newbashcomp "${ED}/${AGY_HOME}/resources/completions/bash/antigravity-ide" antigravity-ide
+ newzshcomp "${ED}/${AGY_HOME}/resources/completions/zsh/_antigravity-ide" _antigravity-ide
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ optfeature "desktop notifications" x11-libs/libnotify
+}
diff --git a/dev-util/google-antigravity/Manifest b/dev-util/google-antigravity/Manifest
index 1e2ce5acef13..efccfe74b125 100644
--- a/dev-util/google-antigravity/Manifest
+++ b/dev-util/google-antigravity/Manifest
@@ -5,3 +5,5 @@ DIST google-antigravity-2.4.2_amd64.tar.gz 168799424 BLAKE2B 5ed7d4a6b63980b2384
DIST google-antigravity-2.4.2_arm64.tar.gz 166119562 BLAKE2B 198c3feccbff8fe06afdbb006daeb0db00e1385a5f539fa6fd54520ee1b97b271f5f9c301f9f0019345c3832ea9c5a9ea0d08ddc5b7410509e0e59ec2f98965f SHA512 7442e48c2321db1d7387203e2db7414d4de050aad957701d7cf49bfec4fc6bae719eedce264fc5f1f8d39d9ae6b7e2c7c89d855300b6df0b61ccc9753b097788
DIST google-antigravity-2.6.0_amd64.tar.gz 168520716 BLAKE2B 2a35f903baaf8ea87e7a6523e6bbf2145ccedea9035091a8c7b5e2ac8646524b34cb8ad010a392c498c965155286b9ea480ca38751b65ade23a2617675c3ee86 SHA512 9ba75ba8fae02540eb86e0c362b72a06e6f4479c6b0854d60026ff3746b0b71fc2df5dcebf1421a581923b178b2e32a5ae420a439020290a98a9c438cbe31773
DIST google-antigravity-2.6.0_arm64.tar.gz 165752247 BLAKE2B 0be6c217fa7c85ed56b6ad9adf5a9cd663bedee2ee371c1ddecfca1f2ccf27cf56962c39ce65507eeeca9b8a3b499412b5a26ab0174a7ff5a5e8a23d6988d63d SHA512 559e8df99ba23da7b23b24eb79e7f80fdc86144d1dc67aadab73077e15699472e3b09e1db581a1fd2ca328a892f4a39344c220a627e96ff2beb5826768f4c5c4
+DIST google-antigravity-2.8.1_amd64.tar.gz 170782155 BLAKE2B 28cd85a27589086fab14fccc11aacde0ca03ec5d2526eca0df62e654fec019c4e59008e259462b2cf7d09d6601a4f988d4ce7eec8096c19d9f0a1100e2f7c3aa SHA512 7825236de2ab8ef36d922fd56a70d25c148a5abe7256428e05788e9a56884755a6eda8fa3893e1c6873579e1dfab354d2f389855c0ba7c29f0e9761eaa09d377
+DIST google-antigravity-2.8.1_arm64.tar.gz 167868357 BLAKE2B 78cf085afd4e50dd21c24be8d71b830bc6e9ef8aace1020318b7787ca7c0e857ce4126e8ff9b4a64a25c821867f80268fcd0d03668f8b34179b982033cc46d22 SHA512 9290e5b621e7af863f8caf407bc51139621fad789d9b8d3a08a4cbbb07ae0cf4f5101a85eabb9e51179a2b1dd8c0a4082ae68f63195403bb768bceb110f052ba
diff --git a/dev-util/google-antigravity/google-antigravity-2.8.1.ebuild b/dev-util/google-antigravity/google-antigravity-2.8.1.ebuild
new file mode 100644
index 000000000000..e33d0e75867c
--- /dev/null
+++ b/dev-util/google-antigravity/google-antigravity-2.8.1.ebuild
@@ -0,0 +1,127 @@
+# Copyright 2026 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-419 es 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 optfeature pax-utils xdg
+
+EXECUTION_ID="6512087774658560"
+
+MY_PN="${PN#google-}"
+DESCRIPTION="Google Antigravity 2.0, a dedicated platform to work with agents"
+HOMEPAGE="https://antigravity.google/"
+BASE_URI="https://storage.googleapis.com/antigravity-public/antigravity-hub/${PV}-${EXECUTION_ID}"
+SRC_URI="
+ amd64? ( ${BASE_URI}/linux-x64/Antigravity.tar.gz -> ${P}_amd64.tar.gz )
+ arm64? ( ${BASE_URI}/linux-arm/Antigravity.tar.gz -> ${P}_arm64.tar.gz )
+"
+S="${WORKDIR}"
+
+# It's complicated...
+LICENSE="all-rights-reserved"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~arm64"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ || (
+ sys-apps/systemd
+ sys-apps/systemd-utils
+ )
+ >=app-accessibility/at-spi2-core-2.46.0:2
+ app-crypt/libsecret[crypt]
+ app-misc/ca-certificates
+ dev-libs/expat
+ dev-libs/glib:2
+ dev-libs/nspr
+ dev-libs/nss
+ media-libs/alsa-lib
+ media-libs/libglvnd
+ media-libs/mesa
+ net-misc/curl
+ net-print/cups
+ sys-apps/dbus
+ virtual/zlib:=
+ sys-process/lsof
+ x11-libs/cairo
+ x11-libs/gtk+:3
+ x11-libs/libdrm
+ x11-libs/libX11
+ x11-libs/libxcb
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libxkbcommon
+ x11-libs/libxkbfile
+ x11-libs/libXrandr
+ x11-libs/libXScrnSaver
+ x11-libs/pango
+ x11-misc/xdg-utils
+"
+
+QA_PREBUILT="*"
+QA_DESKTOP_FILE="usr/share/applications/${MY_PN}.*\\.desktop"
+
+AGY_HOME_BASE="opt/google"
+AGY_HOME="${AGY_HOME_BASE}/${MY_PN}"
+
+pkg_setup() {
+ chromium_suid_sandbox_check_kernel_config
+}
+
+src_unpack() {
+ default
+ mv "Antigravity-"* "${MY_PN}" || die
+}
+
+src_prepare() {
+ default
+
+ cd "${MY_PN}" || die
+
+ pushd locales > /dev/null || die
+ chromium_remove_language_paks
+ popd > /dev/null || die
+}
+
+src_install() {
+ cd "${MY_PN}" || die
+
+ mkdir -p "${ED}/${AGY_HOME}" || die
+ cp -r . "${ED}/${AGY_HOME}" || die
+
+ pax-mark m "${ED}/${AGY_HOME}/${MY_PN}"
+ fperms 0755 "/${AGY_HOME}/${MY_PN}"
+ dosym "/${AGY_HOME}/${MY_PN}" "/usr/bin/${MY_PN}"
+
+ fperms 4711 "/${AGY_HOME}/chrome-sandbox"
+
+ domenu "${FILESDIR}/${MY_PN}.desktop"
+ newicon -s scalable "${FILESDIR}/${MY_PN}.png" ${MY_PN}.png
+
+ insinto /usr/share/metainfo
+ doins "${FILESDIR}/${MY_PN}.metainfo.xml"
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ echo
+ ewarn "Package Split Notice:"
+ einfo "Beginning with version 2.0, this package only installs the agent component of"
+ einfo "Antigravity without the editor view."
+ einfo
+ einfo "Users looking for the IDE should install:"
+ einfo " dev-util/google-antigravity-ide"
+ einfo
+ einfo "For the official announcement and details regarding this change, see:"
+ einfo "https://antigravity.google/blog/introducing-google-antigravity-2-0"
+ echo
+
+ optfeature "desktop notifications" x11-libs/libnotify
+}
diff --git a/dev-util/lua-language-server/Manifest b/dev-util/lua-language-server/Manifest
index 0946fe8edeeb..445baab92a26 100644
--- a/dev-util/lua-language-server/Manifest
+++ b/dev-util/lua-language-server/Manifest
@@ -1,3 +1,4 @@
DIST lua-language-server-3.18.1.zip 32025060 BLAKE2B 34a7e5ace59525953b9d9e81fd356748920ff30bcefe8fe52d97fe4ddeb88f39c7ec7367ec14f083ca7fd0b152ed0519d5272bb6e2686b46cfa36bb1bd0432f6 SHA512 646772d16a439597cc7142eb5806a3b90ab06b76a0e7047ce59407a8db4a374f571e3cddc27384ab87d7329705f10936e0fcfb56827d67182858441f92e8af1f
DIST lua-language-server-3.18.2.zip 32023745 BLAKE2B 891015e2ab9b9948a1f35eebcba15cd5676a1f3d3b90f713e700d0c420d810502508d7501023f9a16db2692461222d184a7ba1e32769429c7a86ea80c09aac00 SHA512 91054584cb2172abde83c88dcdf699026921d38c109e87893192c4bfea31eb788ca8911792eb52433d86a142baaf1577ed7a70c99b9ee150d9399ccbff513aeb
DIST lua-language-server-3.19.0.zip 32057098 BLAKE2B 2de1517c95d17c158574f078368216933a640f879158a6d4549b0666c17566bf747d8b893de8e7ddfa3890610aaa471f903585e290abe6e30f8896542fb63333 SHA512 7baac28ebc49a6a9e33c841c61b1099e118cc8fdbf8e174fe18ab150b5bd013b7288514384561de9f81530ee01edc4ebbc399dd747fbf35043bc9510757efff8
+DIST lua-language-server-3.19.1.zip 32103648 BLAKE2B f17e5b9048a954b0a4a391cad4c277ee9e0e6e4874475cd23a6a5c04cab5fff6fa2450a6fd50ec4f7edc7599977b8ec1a6be71a78d427f2635579535c1e579b0 SHA512 f704c807951feeae11a9ea834fe9633a39faf9bb9ef875beef0a0a7f49d5628a05b160e414c3422c7fcfec04b1aec7a948fd172b957f62cd41fb692069e27d48
diff --git a/dev-util/lua-language-server/lua-language-server-3.19.1.ebuild b/dev-util/lua-language-server/lua-language-server-3.19.1.ebuild
new file mode 100644
index 000000000000..549d060cfbab
--- /dev/null
+++ b/dev-util/lua-language-server/lua-language-server-3.19.1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+
+inherit ninja-utils toolchain-funcs lua-single prefix
+
+DESCRIPTION="Lua language server"
+HOMEPAGE="https://github.com/LuaLS/lua-language-server"
+SRC_URI="https://github.com/LuaLS/lua-language-server/releases/download/${PV}/${P}-submodules.zip -> ${P}.zip"
+S="${WORKDIR}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="llvm-libunwind test"
+REQUIRE_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="
+ ${LUA_DEPS}
+ sys-libs/binutils-libs
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ app-alternatives/ninja
+ app-arch/unzip
+ !llvm-libunwind? ( sys-libs/libunwind )
+ llvm-libunwind? ( llvm-runtimes/libunwind )
+"
+RESTRICT="!test? ( test )"
+
+src_prepare() {
+ # Remove hardcoded gcc references
+ sed -i "/lm.cxx/a lm.cc = '$(tc-getCC)'" \
+ make.lua || die
+ sed -i "s/CC = gcc/ CC = ${tc-getCC}/" \
+ 3rd/lpeglabel/makefile || die
+ # Shipped file doesn't respect CFLAGS/CXXFLAGS/LDFLAGS
+ eapply "${FILESDIR}/3.16.4-linux.ninja.patch"
+ eapply_user
+ sed -i -e "s/^cc = REPLACE_ME/cc = $(tc-getCC)/" \
+ -e "s/^ar = REPLACE_AR/ar = $(tc-getAR)/" \
+ -e "s/CFLAGS/${CFLAGS}/" \
+ -e "s/CXXFLAGS/${CXXFLAGS}/" \
+ -e "s/LDFLAGS/${LDFLAGS}/" \
+ 3rd/luamake/compile/ninja/linux.ninja || die
+ if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
+ sed -i "s/-lstdc++fs//" 3rd/luamake/compile/ninja/linux.ninja || die
+ fi
+
+ prefixify_ro "${FILESDIR}/wrapper.sh"
+}
+
+src_compile() {
+ eninja -C 3rd/luamake -f compile/ninja/linux.ninja "$(usex test "test" "luamake")"
+ use test && eninja -C 3rd/luamake -f compile/ninja/linux.ninja luamake
+ ./3rd/luamake/luamake init || die
+
+ # Generated file doesn't respect CFLAGS/CXXFLAGS/LDFLAGS
+ sed -i -e "s/^cc =.*./cc = REPLACE_ME/" \
+ -e "s/^ar =.*./ar = REPLACE_AR/" \
+ build/build.ninja || die
+
+ eapply "${FILESDIR}/3.16.4-build.ninja.patch"
+ sed -i -e "s/REPLACE_ME/$(tc-getCC)/" \
+ -e "s/REPLACE_AR/$(tc-getAR)/" \
+ -e "s|LUAMAKE_PATH|${S}/3rd/luamake/luamake|" \
+ -e "s/CFLAGS/${CFLAGS}/" \
+ -e "s/CXXFLAGS/${CXXFLAGS}/" \
+ -e "s/LDFLAGS/${LDFLAGS}/" \
+ build/build.ninja || die
+ if [[ $(tc-get-cxx-stdlib) == libc++ ]]; then
+ sed -i "s/-lstdc++fs//" build/build.ninja || die
+ fi
+
+ use test && eninja -f build/build.ninja || eninja -f build/build.ninja all
+ rm -rf meta/198256b1
+}
+
+src_install() {
+ newbin "${T}/wrapper.sh" ${PN}
+
+ into /opt/${PN}
+ dobin bin/${PN}
+
+ insinto /opt/${PN}/bin
+ doins bin/main.lua
+
+ insinto /opt/${PN}
+ doins -r debugger.lua main.lua locale meta script
+
+ einstalldocs
+}
diff --git a/dev-util/ruff/Manifest b/dev-util/ruff/Manifest
index 44e51b9e853f..9ffa9dfb579c 100644
--- a/dev-util/ruff/Manifest
+++ b/dev-util/ruff/Manifest
@@ -7,4 +7,6 @@ DIST ruff-0.16.1-crates.tar.xz 28659240 BLAKE2B 119a6395d66c4bac93761180cc729e4a
DIST ruff-0.16.1.gh.tar.gz 12733382 BLAKE2B 3296aef4902f375250fd19cfef80101bafd6acb5c9771ac3138d9c8560137d93d3cb1d434e74ec3a00387d22c3308942fd799e550d6d2b618bfb711319abcb7b SHA512 ed7d691fd755264202cb80276f12b0eef78682c6a0e1badfb2735d2451a10f707e0188a06bbe6494594f10f45c6d5ccaf6eda891754e0d79cc2367b75ba629cc
DIST ruff-0.16.2-crates.tar.xz 28677024 BLAKE2B 2361f6e64bab7890c3fd13742d73d279b8a159d3fc8d7282b2dd98a9e8c9ffb6273c8b52d730a7bd5472b24aad74383fa9ef958eefb50a7eb827736e3ab84087 SHA512 2dd4e404749ead2a4dd6a44f748e8354cc37a8464f1daf621f080b1d2a4779d7aa183f755da78112fee88e7425aaa8d11079f9081bd934a4849a4c439641ad22
DIST ruff-0.16.2.gh.tar.gz 12845092 BLAKE2B 81f188e137deeb996ed1c7ef504c0149831212c1527d3f6da520e403cc9742101ca178684e0f1baa71a5f187f554d7710c5125a78ece0cb9eaffe25d15ea8134 SHA512 e809c5724bb7c5f7ecb0a2d018bee00a1eb096a2546b369ddd08b4d4dcab51c5a0f61daf27f2e57c324fe359875d2e19af263561888b45d1ac4db5a93495831e
+DIST ruff-0.16.3-crates.tar.xz 28676112 BLAKE2B 39589abb617e446375d6005c4af0febcfd73c660796b9c8ec888b079a1189acb3a8f9d58c5f51adbb19c63c4b317002c954d0724069f5b0bdc9b7e0aaa6c8805 SHA512 2590a1bba550871131a506ec12818efb311687c8f403c7782f90e69c676ca688c7b673b097057f1f83aad71112c0642ebeb9e23c979299cfdf224ddc7146063d
+DIST ruff-0.16.3.gh.tar.gz 12914254 BLAKE2B f4c3c8eb0f4894dde899147e44fe4c017993c4c593f15599bd3f282f28b6830f8502f85d6a32a1dad5839349fd92519806a8152b248f61906d3a2a8d8affee79 SHA512 1e1bdb8265944685c2ea4faa97601236d994a24e19ae0f615952dd2c103e930b104b85a0d16d376efe22384b2a46a8486fb5f7dd025496cb9e858c3090fc86bb
DIST salsa-55e5e7d32fa3fc189276f35bb04c9438f9aedbd1.gh.tar.gz 731425 BLAKE2B ce720abaa295b46c7e1fa06a73e2ad9a48a6b9da7f2b4a91edba38a28bb9a63a1661886fc7c5d6dbc915f589f2e055731a544cdf18afb4dd7b3f6815c59e543b SHA512 91942cfc6bbfb7f07366cdd3d42e5296bff877ee723b24868ff3c278defd0ef247f03e957332bc0696553f0f1977a41c18d08efe7887f5bda3a1cb98543bddbd
diff --git a/dev-util/ruff/ruff-0.16.3.ebuild b/dev-util/ruff/ruff-0.16.3.ebuild
new file mode 100644
index 000000000000..fe46867af3c0
--- /dev/null
+++ b/dev-util/ruff/ruff-0.16.3.ebuild
@@ -0,0 +1,111 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.15.1
+
+EAPI=8
+
+CRATES="
+"
+
+RUST_MIN_VER="1.95"
+
+inherit shell-completion cargo
+
+DESCRIPTION="An extremely fast Python linter, written in Rust"
+HOMEPAGE="
+ https://docs.astral.sh/ruff/
+ https://github.com/astral-sh/ruff
+"
+SRC_URI="
+ ${CARGO_CRATE_URIS}
+ https://github.com/astral-sh/ruff/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz
+ https://github.com/gentoo-crate-dist/${PN}/releases/download/${PV}/${P}-crates.tar.xz
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 BSD CC0-1.0 ISC MIT MPL-2.0 PSF-2 Unicode-3.0
+ Unicode-DFS-2016 WTFPL-2 ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
+
+RDEPEND="
+ !elibc_musl? ( !elibc_Darwin? ( !elibc_bionic? ( dev-libs/jemalloc:= ) ) )
+ app-arch/zstd
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+DOCS=(
+ BREAKING_CHANGES.md
+ CONTRIBUTING.md
+ README.md
+ assets
+ docs
+)
+
+src_prepare() {
+ default
+
+ # Experimental cruft cleaner. These crates are not used by the ruff binary,
+ # and when they are removed in the git repo, the lockfile is regenerated
+ # and gets quite a bit smaller. Hence pycargoebuild also produces much
+ # smaller CRATES= variables. Less for the user to download, fewer distfiles
+ # to mirror.
+ pushd crates >/dev/null || die
+ rm -r ruff_{benchmark,dev} ty{,_{server,completion_eval}} *_wasm || die
+ popd > /dev/null || die
+
+ # tests that hang in the ebuild environment
+ rm crates/ruff_annotate_snippets/tests/examples.rs || die
+}
+
+src_configure() {
+ export RUSTFLAGS="${RUSTFLAGS}"
+ cargo_src_configure
+}
+
+src_compile() {
+ local -x ZSTD_SYS_USE_PKG_CONFIG=1
+ # Gentoo bug #927338
+ if use !elibc_musl && use !elibc_Darwin && use !elibc_bionic; then
+ local -x CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS=1
+ local -x JEMALLOC_OVERRIDE="${ESYSROOT}/usr/$(get_libdir)"/libjemalloc.so
+ fi
+ cargo_src_compile --bin ruff
+
+ local releasedir
+ releasedir=$(cargo_target_dir)
+
+ ${releasedir}/ruff generate-shell-completion bash > ruff-completion.bash || die
+ ${releasedir}/ruff generate-shell-completion fish > ruff-completion.fish || die
+ ${releasedir}/ruff generate-shell-completion zsh > ruff-completion.zsh || die
+}
+
+src_test() {
+ local -x ZSTD_SYS_USE_PKG_CONFIG=1
+ # Gentoo bug #927338
+ if use !elibc_musl && use !elibc_Darwin && use !elibc_bionic; then
+ local -x CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS=1
+ local -x JEMALLOC_OVERRIDE="${ESYSROOT}/usr/$(get_libdir)"/libjemalloc.so
+ fi
+ cargo_src_test --target-dir "${PWD}"/tested-target/
+}
+
+src_install() {
+ local releasedir=$(cargo_target_dir)
+
+ dobin ${releasedir}/ruff
+
+ newbashcomp ruff-completion.bash ruff
+ newfishcomp ruff-completion.fish ruff.fish
+ newzshcomp ruff-completion.zsh _ruff
+
+ dodoc -r "${DOCS[@]}"
+}
diff --git a/dev-util/uftrace/Manifest b/dev-util/uftrace/Manifest
index bb434db88147..7196b323d176 100644
--- a/dev-util/uftrace/Manifest
+++ b/dev-util/uftrace/Manifest
@@ -1,3 +1,4 @@
DIST uftrace-0.17.tar.gz 1164457 BLAKE2B 7e9ed9af07d9f2ca8b78d7b7651408f5065917207c57855e6486c6d0d8acdaf3f87096a789f74e4458705c2fd59393fb6973f8e43750bc0bb4e3ab56268e6177 SHA512 b76ac32e68b474522f7d9c470940093bc37cf5d3d2d119d10ffad2954262e83c4092f593f307a41c765a6975416bfc62b844436a4d1888639741eb328e16e1d8
DIST uftrace-0.18.1.tar.gz 1173722 BLAKE2B 2185205b0cbaafcb497adce672611f5bc28c6dbecd02b757fc5f2ee3c5d9967ac8aa539c66dc106e40ad3e19adce33e984da4dd6aa336a45c8bec9396f53f7dd SHA512 372b7ab0f9b87904493c21e58497d886c212708129334203c11bce1a86da212d2b44f6c66a12d813bab5ab581c866a114d34ffbc403089497942142c7bfb8315
DIST uftrace-0.18.tar.gz 1173673 BLAKE2B 866e4489e482b60fc487de77dfcb5cb1c4733c7e1d5a4fa43728fd1d7129ff53c6dcce493ca7478a554cfba5462c7e457d7fb3d8046cf4804963c6521e1f246d SHA512 07b3559248698c9c5155a6a97e0781b1f16778e773f3522d7f9b553998e69285ddb69e29be9e271c439edd95adb6a12fa57967015716c3e450498f6835b7c613
+DIST uftrace-0.19.tar.gz 1176532 BLAKE2B b7dea0ce0e5e895828f09c8591787a12415eaed8ed5bbd25629508e9564f97f2ee8f4109620a89f5b1cdf8b3b25570c9eedf55ff0dee8c3a044e528ff6598a43 SHA512 725b265e103a933fe9dfccaf19d3846077519c86a24380ced15f1eb5ab30400efd5ce9fd50f704b51dd2b738e4e9c849df647a7be5d6373ac2834a64a10808ce
diff --git a/dev-util/uftrace/uftrace-0.19.ebuild b/dev-util/uftrace/uftrace-0.19.ebuild
new file mode 100644
index 000000000000..afb227d2afc3
--- /dev/null
+++ b/dev-util/uftrace/uftrace-0.19.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1,3,4} luajit )
+PYTHON_COMPAT=( python3_{11..14} ) # fails to compile with python3.13t
+
+inherit bash-completion-r1 lua-single python-single-r1 toolchain-funcs
+
+DESCRIPTION="Function (graph) tracer for user-space"
+HOMEPAGE="https://github.com/namhyung/uftrace"
+SRC_URI="https://github.com/namhyung/uftrace/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="capstone lua python unwind"
+
+REQUIRED_USE="
+ lua? ( ${LUA_REQUIRED_USE} )
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="test"
+
+RDEPEND="
+ sys-libs/ncurses:=
+ virtual/libelf:=
+ capstone? ( dev-libs/capstone:0= )
+ lua? ( ${LUA_DEPS} )
+ python? ( ${PYTHON_DEPS} )
+ unwind? ( sys-libs/libunwind:= )
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+ sed -i -e "s/ARCH/MYARCH/g" -e "/ldconfig/d" -e "/bash.completion/d" Makefile || die
+ sed -i -e '/PYTHON_LDFLAGS/{s/$(PYTHON_LDFLAGS)/$(COMMON_LDFLAGS) $(PYTHON_LDFLAGS)/g; p}' Makefile || die
+}
+
+src_configure() {
+ local myconf=(
+ --libdir="${EPREFIX}/usr/$(get_libdir)/uftrace"
+ $(use_with capstone)
+ $(use_with unwind libunwind)
+ $(use_with python libpython)
+ )
+ if use lua && use lua_single_target_luajit; then
+ myconf+=(
+ --with-libluajit
+ )
+ else
+ myconf+=(
+ --without-libluajit
+ )
+ fi
+ CC="$(tc-getCC)" LD="$(tc-getLD)" econf "${myconf[@]}"
+}
+
+src_compile() {
+ emake V=1
+}
+
+src_install() {
+ default
+
+ dodoc doc/*.{md,gif,png}
+ newbashcomp misc/bash-completion.sh uftrace
+}