automate/020_windsurf-codeium.sh

62 lines
1.3 KiB
Bash

#!/bin/bash
DEST=${1:/etc/skel}
# Install required tools
sudo apt-get install wget gpg
# Download and process GPG key
wget -qO- "https://windsurf-stable.codeiumdata.com/wVxQEIWkwPUEAGf3/windsurf.gpg" | gpg --dearmor > windsurf-stable.gpg
sudo install -D -o root -g root -m 644 windsurf-stable.gpg /etc/apt/keyrings/windsurf-stable.gpg
# Create sources file in DEB822 format
cat << EOF | sudo tee /etc/apt/sources.list.d/windsurf.sources > /dev/null
Types: deb
URIs: https://windsurf-stable.codeiumdata.com/wVxQEIWkwPUEAGf3/apt
Suites: stable
Components: main
Architectures: amd64
Signed-By: /etc/apt/keyrings/windsurf-stable.gpg
Enabled: yes
EOF
# Clean up temporary key file
rm -f windsurf-stable.gpg
sudo apt install apt-transport-https
sudo apt update
sudo apt install windsurf
# neovim codeium plugin
# https://github.com/Exafunction/windsurf.vim
# key bindings
# disable bindings
# vim.g.codeium_disable_bindings = 1
# using folke/lazy.nvim.
cat << 'EOF' | tee ${DEST}/.config/nvim/lua/plugins/windsurf.lua
return {
{
"Exafunction/windsurf.nvim",
dependencies = {
"nvim-lua/plenary.nvim",
"hrsh7th/nvim-cmp",
},
config = function()
require("codeium").setup({
accept_keymapping = "<C-g>",
virtual_text = {
enabled = true,
},
debug = false,
})
end,
},
}
EOF