Skip to content

Migrate Neovim plugins from Packer to lazy.nvim - #17

Open
akan72 wants to merge 3 commits into
akan72/shell-restructuringfrom
akan72/nvim-lazy-migration
Open

Migrate Neovim plugins from Packer to lazy.nvim#17
akan72 wants to merge 3 commits into
akan72/shell-restructuringfrom
akan72/nvim-lazy-migration

Conversation

@akan72

@akan72 akan72 commented May 29, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replace archived Packer with lazy.nvim pinned to v11.17.5.
  • Convert plugin specifications, add lazy-loading triggers, and track lazy-lock.json.
  • Stack position 8 of 15, after Restructure shell config into shared.sh #15.

Test Plan

  • Ran the complete installer in a fresh synthetic home on the Mac mini.
  • Captured the actual headless Neovim command before and after; it changed from PackerSync to Lazy! restore, preserving the committed lock state.
  • Aligned the lazy.nvim lock entry with the pinned v11.17.5 bootstrap commit and verified CI leaves lazy-lock.json unchanged.
  • Ran bash -n assimilate.sh and git diff --check.
  • Screenshots: not applicable; validation was CLI-based.

@akan72
akan72 changed the base branch from main to akan72/shell-restructuring August 22, 2026 19:29
@akan72
akan72 force-pushed the akan72/nvim-lazy-migration branch from 43b19ca to bad8a46 Compare August 22, 2026 19:29
@akan72
akan72 force-pushed the akan72/nvim-lazy-migration branch from bad8a46 to 9f56cde Compare August 22, 2026 19:36
@akan72
akan72 force-pushed the akan72/nvim-lazy-migration branch from 9f56cde to 3c9308f Compare August 22, 2026 19:42
akan72 added 2 commits August 22, 2026 15:46
- Replace Packer bootstrap with lazy.nvim bootstrap pinned to v11.17.5
  (self-installs on first launch)
- Convert all use{} specs to lazy {} specs: run -> build, requires -> dependencies
- Set mapleader before lazy.setup so lazy 'keys' specs bind correctly
- Add priority = 1000 + lazy = false to the gruvbox colorscheme
- Remove the BufWritePost PackerCompile autocmd
- Lazy-load: telescope (keys + :Telescope), fugitive (:Git/:G + <leader>gs),
  markdown-preview (ft = markdown)
- Fix nvim-treesitter ensure_installed: 'help' -> 'vimdoc' (parser renamed)
- Delete nvim/coc-settings.json (unused; config uses lsp-zero + Mason)
- Remove nvim/plugin/ from .gitignore (Packer artifact dir; lazy doesn't use it)
- assimilate.sh: drop the packer clone + PackerSync; lazy self-bootstraps and we
  trigger a headless 'Lazy\! sync' instead

Notes:
- lsp.lua already used 'ts_ls' (not 'tsserver'), so no rename was needed there.
- Kept the vim.tbl_flatten shim in init.lua: the still-pinned old plugin
  versions (e.g. telescope 0.1.1) reference it; remove only after unpinning.
- lazy-lock.json is generated on first interactive launch — run nvim, let lazy
  install, verify (:Lazy), then commit the lockfile.
Generated by the headless Lazy! sync in assimilate.sh; commits match the
pins in plugins.lua and lock the plugins that only pin a branch (LuaSnip,
nvim-cmp, mason, Comment.nvim, ...).
@akan72
akan72 force-pushed the akan72/nvim-lazy-migration branch from 3c9308f to 07b07a3 Compare August 22, 2026 19:46
@akan72
akan72 force-pushed the akan72/nvim-lazy-migration branch from 4a93906 to 01b5f9c Compare August 22, 2026 19:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant