# Copyright 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 bash-completion-r1 chromium-2 desktop optfeature pax-utils xdg DESCRIPTION="Google's Antigravity IDE - Next-generation code editor" HOMEPAGE="https://antigravity.google/" MY_PV="${PV%.*}-${PV##*.}" SRC_URI="https://edgedl.me.gvt1.com/edgedl/release2/j0qc3/antigravity/stable/${MY_PV}/linux-x64/Antigravity.tar.gz -> ${PN}-${MY_PV}.tar.gz" LICENSE="MIT Google-TOS" SLOT="0" KEYWORDS="~amd64" IUSE="libsecret wayland" RESTRICT="bindist mirror strip" RDEPEND=" >=app-accessibility/at-spi2-core-2.46.0:2 app-crypt/libsecret[crypt] dev-libs/expat dev-libs/glib:2 dev-libs/nspr dev-libs/nss media-libs/alsa-lib media-libs/libpng media-libs/mesa net-print/cups sys-apps/util-linux sys-libs/zlib x11-libs/cairo x11-libs/gtk+:3 x11-libs/libdrm x11-libs/libX11 x11-libs/libxcb x11-libs/libXcomposite x11-libs/libXcursor x11-libs/libXdamage x11-libs/libXext x11-libs/libXfixes x11-libs/libXi x11-libs/libxkbcommon x11-libs/libXrandr x11-libs/libXrender x11-libs/libXScrnSaver x11-libs/libXtst x11-libs/pango x11-misc/shared-mime-info x11-misc/xdg-utils libsecret? ( app-crypt/libsecret ) wayland? ( dev-libs/wayland ) " QA_PREBUILT=" opt/antigravity/antigravity opt/antigravity/chrome-sandbox opt/antigravity/chrome_crashpad_handler opt/antigravity/libEGL.so opt/antigravity/libGLESv2.so opt/antigravity/libffmpeg.so opt/antigravity/libvk_swiftshader.so opt/antigravity/libvulkan.so.1 " S="${WORKDIR}/Antigravity" src_prepare() { default # Remove unused language files pushd locales > /dev/null || die chromium_remove_language_paks popd > /dev/null || die } src_install() { local appdir="/opt/${PN}" # Install data files insinto "${appdir}" doins chrome_100_percent.pak doins chrome_200_percent.pak doins icudtl.dat doins LICENSES.chromium.html doins resources.pak doins snapshot_blob.bin doins v8_context_snapshot.bin doins vk_swiftshader_icd.json # Install executables exeinto "${appdir}" doexe antigravity doexe chrome-sandbox doexe chrome_crashpad_handler # Shared libraries doexe libEGL.so doexe libGLESv2.so doexe libffmpeg.so doexe libvk_swiftshader.so doexe libvulkan.so.1 # Resources and locales insinto "${appdir}" doins -r resources doins -r locales # Bin directory if [[ -d bin ]]; then insinto "${appdir}/bin" doins -r bin/. fperms 0755 "${appdir}/bin/antigravity" fi # Permissions fperms 0755 "${appdir}"/antigravity fperms 0755 "${appdir}"/chrome_crashpad_handler fperms 4755 "${appdir}"/chrome-sandbox # Symlink to /usr/bin dosym "${appdir}/antigravity" /usr/bin/antigravity # Shell completions newbashcomp resources/completions/bash/antigravity antigravity insinto /usr/share/zsh/site-functions newins resources/completions/zsh/_antigravity _antigravity # Desktop file (fixed duplicate Comment) make_desktop_entry \ "antigravity" \ "Antigravity" \ "antigravity" \ "Development;IDE;TextEditor" \ "GenericName=Text Editor\nStartupNotify=true\nStartupWMClass=antigravity" # Icon newicon resources/app/resources/linux/code.png antigravity.png # Documentation dodoc resources/app/LICENSE.txt dodoc resources/app/ThirdPartyNotices.txt # PaX marking for JIT pax-mark -m "${ED}${appdir}"/antigravity } pkg_postinst() { xdg_pkg_postinst elog "Antigravity has been installed to ${EROOT}/opt/${PN}" elog "" elog "You may install additional extensions via the Extensions Marketplace." elog "" optfeature "GPU acceleration support" media-libs/mesa optfeature "Password storage" app-crypt/libsecret optfeature "Wayland support" dev-libs/wayland if ! use libsecret; then ewarn "Password storage requires libsecret USE flag enabled" fi } pkg_postrm() { xdg_pkg_postrm }