# Maintainer: Chris Watson pkgname=windsurf pkgver=2.3.15 pkgrel=1 pkgdesc='The new purpose-built IDE to harness magic' arch=('x86_64') url='https://windsurf.com/' license=('LicenseRef-Windsurf Editor') depends=( 'alsa-lib' 'dbus' 'fd' 'gnupg' 'libnotify' 'libsecret' 'libxkbfile' 'libxss' 'ripgrep' 'xdg-utils' ) optdepends=( 'glib2: Move to trash functionality' 'libdbusmenu-glib: KDE global menu' 'lsof: Terminal splitting' 'org.freedesktop.secrets: Sync settings' 'vulkan-driver: Hardware acceleration' ) options=('!strip') source=( "windsurf-${pkgver}.deb::https://windsurf-stable.codeiumdata.com/wVxQEIWkwPUEAGf3/apt/pool/main/w/windsurf/Windsurf-linux-x64-${pkgver}.deb" 'code.sh::https://gitlab.archlinux.org/archlinux/packaging/packages/code/-/raw/main/code.sh' ) sha256sums=('bd740d4872aed1d56303e4d4342ec41f634fcc82bb1c12cd6c3e29546a0a13e6' '5da1525b5fe804b9192c05e1cbf8d751d852e3717fb2787c7ffe98fd5d93e8c1') noextract=("windsurf-${pkgver}.deb") build() { bsdtar -xOf "${srcdir}/windsurf-${pkgver}.deb" data.tar.xz | tar -xJf - # Fix paths mv usr/share/{appdata,metainfo} mv usr/share/zsh/{vendor-completions,site-functions} # Launcher _app=/usr/share/windsurf/resources/app sed -e 's|code-flags|windsurf-flags|' \ -e "s|/usr/lib/code/out/cli.js|${_app}/out/cli.js|" \ -e "s|/usr/lib/code/code.mjs|--app=${_app}|" \ "${srcdir}/code.sh" > run.sh # System binary replacements ln -svf /usr/bin/fd usr/share/windsurf/resources/app/extensions/windsurf/bin/fd ln -svf /usr/bin/rg usr/share/windsurf/resources/app/node_modules/@vscode/ripgrep/bin/rg ln -svf /usr/bin/xdg-open usr/share/windsurf/resources/app/node_modules/open/xdg-open # SVG Icon install -Dm644 "usr/share/${pkgname}/resources/app/out/media/code-icon.svg" \ "usr/share/icons/hicolor/scalable/apps/${pkgname}.svg" } package() { cp -r --reflink=auto usr "${pkgdir}/usr" sed "s|/usr/lib/\${name}/electron|/usr/share/windsurf/windsurf|" run.sh > run-safe.sh install -Dm755 run-safe.sh "${pkgdir}/usr/bin/windsurf" }