# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit desktop shell-completion unpacker xdg MY_PN="devin-desktop" DESCRIPTION="AI-powered code editor (formerly Windsurf) keeping you in flow state" HOMEPAGE="https://devin.ai" SRC_URI="https://windsurf-stable.codeiumdata.com/wVxQEIWkwPUEAGf3/apt/pool/main/d/${MY_PN}/Devin-linux-x64-${PV}.deb" S="${WORKDIR}" # License same as vscode LICENSE=" Apache-2.0 BSD BSD-1 BSD-2 BSD-4 CC-BY-4.0 ISC LGPL-2.1+ Microsoft-vscode MIT MPL-2.0 openssl PYTHON TextMate-bundle Unlicense UoI-NCSA W3C " SLOT="0" KEYWORDS="-* ~amd64" RESTRICT="mirror strip bindist" RDEPEND=" >=app-accessibility/at-spi2-core-2.46.0:2 app-crypt/libsecret[crypt] app-crypt/mit-krb5 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 sys-apps/dbus sys-process/lsof virtual/zlib 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="*" src_install() { # Upstream rebranded Windsurf -> Devin Desktop as of 3.x: the .deb ships all # artifacts under "devin-desktop" (binary, desktop files, icon, etc.). mkdir -p "${ED}/opt/${MY_PN}" || die cp -r "${S}/usr/share/${MY_PN}/"* "${ED}/opt/${MY_PN}" || die # Fix chrome-sandbox permissions fperms 4755 "/opt/${MY_PN}/chrome-sandbox" # Install launcher symlink (upstream binary is "devin-desktop") dosym "../../opt/${MY_PN}/${MY_PN}" "/usr/bin/${MY_PN}" # Fix paths in desktop files sed -i \ -e "s|/usr/share/${MY_PN}/${MY_PN}|/opt/${MY_PN}/${MY_PN}|g" \ "${S}/usr/share/applications/${MY_PN}.desktop" \ "${S}/usr/share/applications/${MY_PN}-url-handler.desktop" \ || die "sed failed" # Install desktop files domenu "${S}/usr/share/applications/${MY_PN}.desktop" domenu "${S}/usr/share/applications/${MY_PN}-url-handler.desktop" # Install icon doicon "${S}/usr/share/pixmaps/${MY_PN}.png" # Install metainfo insinto /usr/share/metainfo doins "${S}/usr/share/appdata/${MY_PN}.appdata.xml" # Install MIME type definitions insinto /usr/share/mime/packages doins "${S}/usr/share/mime/packages/${MY_PN}-workspace.xml" # Install completions dobashcomp "${S}/usr/share/bash-completion/completions/${MY_PN}" newzshcomp "${S}/usr/share/zsh/vendor-completions/_${MY_PN}" "_${MY_PN}" }