A launch point for your personal nvim configuration
Go to file
berkenar1 78ad9fe4b2 Add health check, uninstall script, Makefile, and GitHub Actions workflow 2026-01-01 18:31:33 +03:00
.github Add health check, uninstall script, Makefile, and GitHub Actions workflow 2026-01-01 18:31:33 +03:00
doc feat: move to lazy.nvim package manager and add first plugins (#178) 2023-02-17 16:31:57 -05:00
lua Update remaining Mason's old address (#1530) 2025-05-22 17:10:04 -04:00
.gitignore rewrite: slimmer, trimmer and more lazy kickstart.nvim (#635) 2024-02-26 10:03:53 -05:00
.stylua.toml Use call_parentheses 2023-06-16 21:12:11 -07:00
LICENSE.md license 2022-06-25 21:51:44 -04:00
Makefile Add health check, uninstall script, Makefile, and GitHub Actions workflow 2026-01-01 18:31:33 +03:00
README.md Add FreeBSD support: update treesitter config, disable Mason auto-install, add install script 2026-01-01 18:27:51 +03:00
check-freebsd.sh Add health check, uninstall script, Makefile, and GitHub Actions workflow 2026-01-01 18:31:33 +03:00
init.lua Add FreeBSD support: update treesitter config, disable Mason auto-install, add install script 2026-01-01 18:27:51 +03:00
install-freebsd.sh Add FreeBSD support: update treesitter config, disable Mason auto-install, add install script 2026-01-01 18:27:51 +03:00
uninstall-freebsd.sh Add health check, uninstall script, Makefile, and GitHub Actions workflow 2026-01-01 18:31:33 +03:00

README.md

kickstart.nvim-FreeBSD

Introduction

A FreeBSD-optimized fork of kickstart.nvim that is:

  • Small
  • Single-file
  • Completely Documented
  • FreeBSD-Native: Configured to use system packages instead of Mason auto-install

NOT a Neovim distribution, but instead a starting point for your configuration tailored for FreeBSD.

What's Different from Original Kickstart

This fork includes FreeBSD-specific modifications:

  • No Mason auto-compilation: Uses system pkg packages instead
  • Tree-sitter support: Configured to use system tree-sitter libraries
  • Tested on FreeBSD: All plugins verified to work on FreeBSD systems
  • Pre-install script: Automated dependency installation via install-freebsd.sh

Installation

Install Neovim

Kickstart.nvim targets only the latest 'stable' and latest 'nightly' of Neovim. If you are experiencing issues, please make sure you have the latest versions.

Install External Dependencies

Use the provided installation script to automatically install all dependencies:

sudo sh install-freebsd.sh

Or manually install dependencies:

sudo pkg update -f
sudo pkg install -y git gmake unzip llvm ripgrep fd-find tree-sitter stylua base64-by-elvis

Note: lua-language-server is not available in FreeBSD pkg repositories, so LSP support for Lua is disabled in this config.

Other External Requirements

  • Basic utils: git, gmake (FreeBSD uses gmake instead of make), unzip, C Compiler (clang via llvm)
  • ripgrep, fd-find
  • Clipboard tool (xclip/xsel or xclip-freebsd)
  • A Nerd Font: optional, provides various icons
    • if you have it set vim.g.have_nerd_font in init.lua to true
  • Language Setup:
    • If you want to write Typescript, you need npm
    • If you want to write Golang, you will need go
    • etc.

Install Kickstart.nvim-FreeBSD

[!NOTE] Backup your previous configuration (if any exists)

Neovim's configuration location on FreeBSD:

~/.config/nvim

Clone the Repository

git clone https://github.com/YOUR_USERNAME/kickstart.nvim-freebsd.git "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim
cd ~/.config/nvim

Install Dependencies

Run the automated install script:

sudo sh install-freebsd.sh

Start Neovim and Sync Plugins

nvim

Inside Neovim, run:

:Lazy sync

Wait for plugins to finish installing, then restart Neovim.

Getting Started

Read through the init.lua file in your configuration folder for more information about extending and exploring Neovim.

FAQ

  • What should I do if I already have a pre-existing Neovim configuration?
    • You should back it up and then delete all associated files.
    • This includes your existing init.lua and the Neovim files in ~/.local which can be deleted with rm -rf ~/.local/share/nvim/
  • Can I keep my existing configuration in parallel to kickstart?
    • Yes! You can use NVIM_APPNAME=nvim-NAME to maintain multiple configurations. For example, you can install the kickstart configuration in ~/.config/nvim-freebsd and create an alias:
      alias nvim-freebsd='NVIM_APPNAME="nvim-freebsd" nvim'
      
      When you run Neovim using nvim-freebsd alias it will use the alternative config directory and the matching local directory ~/.local/share/nvim-freebsd. You can apply this approach to any Neovim distribution that you would like to try out.
  • What if I want to "uninstall" this configuration:
  • Why is the kickstart init.lua a single file? Wouldn't it make sense to split it into multiple files?
    • The main purpose of kickstart is to serve as a teaching tool and a reference configuration that someone can easily use to git clone as a basis for their own. As you progress in learning Neovim and Lua, you might consider splitting init.lua into smaller parts. A fork of kickstart that does this while maintaining the same functionality is available here: