_____ ____ ____ _________________ _________________ _____ ____ ____ ____ ____ _____ _____
___|\ \ | | | |/ \/ \ ___|\ \ | | | || | | ||\ \ / /|
| |\ \ | | | |\______ ______/\______ ______// /\ \ | | | || | | || \ \ / / |
| | | || | | | \( / / )/ \( / / )/ | | | || |_| || |_| || \____\/ / /
| | | || | | | ' | | ' ' | | ' | | |____|| .-. || .-. | \ | / / /
| | | || | | | | | | | | | ____ | | | || | | | \|___/ / /
| | | || | | | / // / // | | | || | | || | | | / / /
|____|/____/||\___\_|____| /___// /___// |\ ___\/ /||____| |____||____| |____| /____/ /
| / | || | | | |` | |` | | | /____/ || | | || | | | |` | /
|____|____|/ \|____|____| |____| |____| \|___| | /|____| |____||____| |____| |_____|/
\( )/ \( )/ \( \( \( |____|/ \( )/ \( )/ )/
' ' ' ' ' ' ' )/ ' ' ' ' '
No, I will not explain myself Gitea
- alpha-nvim – Fast, customizable start screen/dashboard.
- catppuccin – Beautiful pastel theme with multiple flavors.
- lualine.nvim – Fast and configurable status line.
- mini.icons – Minimal icon support for UI components.
- gitsigns.nvim – Shows Git changes in the sign column.
- neo-tree.nvim – File explorer tree with LSP and icon support.
- nui.nvim – UI component library required by Neo-tree.
- nvim-lsp-file-operations – File operations integrated with Neo-tree.
- nvim-window-picker – Pick windows when performing operations.
- plenary.nvim – Lua utilities used by Neo-tree and other plugins.
- undotree – Undo history visualizer (
<leader>uto toggle).
- mason.nvim – Package manager for LSPs, DAPs, linters, and formatters.
- mason-lspconfig.nvim – Bridges Mason with nvim-lspconfig.
- nvim-lspconfig – Quickstart configurations for LSP servers.
- nvim-treesitter – Incremental parsing and syntax highlighting.
- nvim-treesitter-textobjects – Extra text objects for Treesitter.
- nvim-ts-autotag – Auto-close and rename HTML/JSX tags.
- nvim-ts-context-commentstring – Context-aware comment strings.
- playground – Treesitter playground for exploring syntax trees.
- telescope.nvim – Highly extendable fuzzy finder.
- snacks.nvim – Miscellaneous utilities: image previews, dashboards, pickers, etc.
- which-key.nvim – Displays available keybindings in a popup.
- nvim-web-devicons – File type icons for statuslines, trees, and more.
- ripgrep
- Luarocks
- cmake
- git
- python3
- cargo
- javac
#Download prereqs
sudo apt update -y && sudo apt upgrade -y
sudo apt install curl ripgrep fd-find wget fontconfig git unzip cmake cargo luarocks python3 tar -y
# Directory setup
mkdir -p ~/.config && cd ~/.config
cargo install --locked tree-sitter-cli
# remove old /opt/nvim, extract new version, and symlink again
rm -rf /opt/nvim
# download new AppImage
wget https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.appimage
# add execute permissions
sudo chmod u+x nvim-linux-x86_64.appimage
# Use App image extract if outdate FUSE
./nvim-linux-x86_64.appimage --appimage-extract
# Install it
mv squashfs-root /opt/nvim
# Symlink
ln -sf /opt/nvim/AppRun /usr/local/bin/nvim
git clone https://git.duttchhy.com/bram/nvim.git && cd nvim
# Lazygit
LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | \grep -Po '"tag_name": *"v\K[^"]*')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/download/v${LAZYGIT_VERSION}/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
tar xf lazygit.tar.gz lazygit
sudo install lazygit -D -t /usr/local/bin/
# Nerd font
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.4.0/Ubuntu.zip
mkdir -p ~/.local/share/fonts
unzip Ubuntu.zip -d ~/.local/share/fonts/Ubuntu
fc-cache -fv
rm Ubuntu.zip
# Clean up
sudo apt autoremove -y && sudo apt autoclean -y