100 Commits
Author SHA1 Message Date
Matt Sturgeon b5d9e7d2cf flake: mark systems as flake=false
`inputs.systems` is imported directly to evaluate a list of systems;
it has no flake inputs and we never evaluate its flake outputs, so we
may as well declare `flake=false`.

flake/dev/flake.lock updates:

• Updated input 'nixvim':
    'path:../..'
  → 'path:../..'
2026-08-16 18:38:42 +00:00
Matt Sturgeon a19efae6c1 nixbot: build stable branches on push
Nixbot recently added a `build_branches` config option,¹ which allows
specifying additional branches to be built on push. This replaces the
old behaviour where all branches were built on push.

The default branch and merge-queue refs are always built on push and
Pull Requests are considered their own non-push event.

¹: https://github.com/Mic92/nixbot/commit/87c9a409c2e8f91ebcb5069e177f3a045ddfbc1e
2026-07-31 19:47:58 +00:00
Matt Sturgeon 4ef28e447b Revert "tests: disable vectorcode"
This reverts commit 1b06626c17.
2026-07-12 15:18:12 +00:00
Matt Sturgeon c2faafacaf Revert "tests/all-package-defaults: disable codex on darwin"
This reverts commit 3103545331.
2026-07-12 15:18:12 +00:00
Matt Sturgeon ea95b028a3 docs: drop nixos-render-docs overlay
All patches are now upstream.
2026-07-12 15:18:12 +00:00
Matt Sturgeon 992c9c0f74 tests/all-package-defaults: disable R on darwin 2026-07-12 13:18:22 +00:00
Matt Sturgeon 3103545331 tests/all-package-defaults: disable codex on darwin 2026-07-12 13:18:22 +00:00
Matt Sturgeon adc03a3d70 tests/all-package-defaults: disable godot on darwin 2026-07-12 13:18:22 +00:00
Matt Sturgeon 637d45981f tests/all-package-defaults: disable sioyek on darwin 2026-07-12 13:18:22 +00:00
Matt Sturgeon 1aee8fbd1f tests: disable cpplint 2026-07-12 13:18:22 +00:00
Matt Sturgeon ebd0f063f8 modules/doc: disable man-docs on darwin
We cannot build docs on Darwin because pandoc is currently built without
lua support: https://github.com/NixOS/nixpkgs/issues/540900
2026-07-12 13:18:22 +00:00
Matt Sturgeon b275f90bee tests: disable fstar
Dependency z3-4.8.5 fails to build.
2026-07-12 13:18:22 +00:00
Matt Sturgeon 7204212dd0 tests: disable swiftformat 2026-07-12 13:18:22 +00:00
Matt Sturgeon 1b06626c17 tests: disable vectorcode
Dependency python3.14-frictionless-5.18.1 fails to build.
2026-07-12 13:18:22 +00:00
Matt Sturgeon 787af2e44d tests: disable slither-analyzer
Transitive issue:
    py-evm-0.12.1-beta.1 not supported for interpreter python3.14
2026-07-12 13:18:22 +00:00
Matt Sturgeon 64b8f4d7fe plugins/efmls-configs/packages: declare oxfmt & oxlint packages 2026-07-12 13:18:22 +00:00
Matt Sturgeon 9350b3700a plugins/vimtex: update default texlive to top-level package
`texlive.combined.scheme-medium` is marked for removal in 27.05, but
top-level packages like `texliveMedium` exist.

    texlive.combined schemes are deprecated and will be removed from Nixpkgs 27.05.
    Please switch to texliveSmall or another top level scheme.
2026-07-12 13:18:22 +00:00
Matt Sturgeon 511a763e20 docs: use GFM alert patches from Nixpkgs PR
Replace our gfm-alerts-to-admonitions plugin and nixos-render-docs
patches with patches from the upstream Nixpkgs PR:
https://github.com/NixOS/nixpkgs/pull/538502
2026-07-09 17:39:52 +00:00
Matt Sturgeon 6d1424cefd Revert "tests/platforms/darwin: disable docs"
This reverts commit 8a95c224e3.
2026-07-08 20:55:29 +00:00
Matt Sturgeon 8a95c224e3 tests/platforms/darwin: disable docs
Workaround for https://github.com/nix-darwin/nix-darwin/issues/1817
2026-07-05 14:56:14 +00:00
Matt Sturgeon a402fdf2a1 docs/modules: move page rendering orchestration to Python
Replace the generated bash+jq rendering pipeline with a Python
implementation.

This avoids repeatedly parsing large JSON blobs during page rendering
and significantly reduces documentation build time.
2026-07-04 13:55:02 +00:00
Matt Sturgeon d3ba58e0bd docs/modules: move rendering logic 2026-07-04 13:55:02 +00:00
Matt Sturgeon 79df3b165c docs/modules: propagate collections of page nodes 2026-07-04 13:55:02 +00:00
Matt Sturgeon 2ab9e79e92 docs/modules: add main entrypoint 2026-07-04 13:55:02 +00:00
Matt Sturgeon 97f048f640 ci: buildbot-nix → nixbot
Migrate flake outputs, config files, etc from buildbot-nix to nixbot.

This is not urgent, because nixbot falls back to buildbot-nix.toml when
nixbot.toml is missing.
2026-07-02 13:52:50 +00:00
Matt Sturgeon 702008d2b3 ci/backport: specify workflows permission
Needed to create branches that modify workflow files.
2026-07-01 15:26:03 +00:00
Matt Sturgeon be307b6b8f ci/pr-merged: explicitly checkout base_ref
This _should_ be the default, but actions/checkout is still complaining
about checking out untrusted PR code.

Technically, this workflow only runs on `merged` PRs, so the PR code _is_
trusted anyway. But currently there's no need to use the PR's code.
2026-07-01 13:42:15 +00:00
Matt Sturgeon 266d5c31d5 ci/backport: explicitly define persist-credentials
This is the default, but it's best practice to state it explicitly to
avoid security footguns.
2026-07-01 13:42:15 +00:00
Matt Sturgeon aeb34e84f6 ci/backport: update for checkout v7
We need to specify allow-unsafe-pr-checkout now, to be explicit about
checking out PR code on a privileged workflow.
2026-07-01 13:42:15 +00:00
Matt Sturgeon 78acb50d9a modules/nixpkgs: import libForPkgs correctly 2026-07-01 03:15:00 +00:00
Matt Sturgeon cc3b773a7a modules/nixpkgs: use libForPkgs for elaborate
`lib.systems.elaborate` is sensitive to Nixpkgs revision, so import a
`lib` instance from the Nixpkgs revision we're constructing.
2026-07-01 00:13:16 +00:00
Matt Sturgeon c02fd3edc6 docs/lib: use structuredAttrs
When using structuredAttrs, we don't need a separate "function locations"
derivation. Instead, we can read directly from NIX_ATTRS_JSON_FILE.
2026-06-23 18:14:39 +00:00
Matt Sturgeon 91df3d9f91 docs/modules: model page content as sections
Represent page content as a list of typed sections, rather than a fixed
set of page attributes.

This allows pages to be composed from multiple content sources while
simplifying the rendering logic and prepares the new docs system for
additional section types such as option documentation.
2026-06-23 01:04:32 +00:00
Matt Sturgeon f60bf47332 modules/nixvim-info: flatten and simplify
Instead of recursively merging a nested tree, construct a flat map of
"option-path" → {info}.

This should be more efficient to eval, and simpler to introspect.
2026-06-22 20:39:04 +00:00
Matt Sturgeon c7ccb896eb docs/man: simplify using structuredAttrs
Verified the output does not change:

$ nix build .#man-docs github:nix-community/nixvim#man-docs

$ sha256sum result{,-1}/share/man/man5/nixvim.5.gz
63177f4e1bff6db2ef01dfdb31c0674342ba9d9d27fe8e3d392bf86131fbc867  result/share/man/man5/nixvim.5.gz
63177f4e1bff6db2ef01dfdb31c0674342ba9d9d27fe8e3d392bf86131fbc867  result-1/share/man/man5/nixvim.5.gz
2026-06-22 20:38:34 +00:00
Matt Sturgeon caee4e5d41 plugins.lsp: restore autostart compatibility
`autostart` was a legacy nvim-lspconfig option controlling whether a
server was automatically started for matching buffers.

Neovim's `vim.lsp.config` API does not have an `autostart` field, but
the `vim.lsp.enable()` function is effectively equivalent.

Alias legacy `plugins.lsp.servers.<name>.autostart` definitions to
`lsp.servers.<name>.activate`, which controls `vim.lsp.enable()`.
2026-06-17 16:23:37 +00:00
Matt SturgeonandAustin Horstman af139aaae9 tests/plugins/obsidian: migrate legacy commands
https://github.com/obsidian-nvim/obsidian.nvim/wiki/Commands
2026-06-15 19:17:02 +00:00
Matt SturgeonandAustin Horstman 0065d0b5e6 plugins/obsidian: deprecate completion.{blink,nvim-cmp} settings
Mirror upstream's deprecation.
2026-06-15 19:17:02 +00:00
Matt SturgeonandAustin Horstman 047bffb020 plugins/coq-nvim: remove settings.auto_start option
It's removed & deprecated in upstream's v2 plugin.
2026-06-15 19:17:02 +00:00
Matt SturgeonandAustin Horstman 6542cdf36e plugins/coq-nvim: remove settings.xdg option
It's removed & deprecated in upstream's v2 plugin.
2026-06-15 19:17:02 +00:00
Matt SturgeonandAustin Horstman 2414f3d85d tests/claudecode: skip running nvim in example test
> ERROR: [ClaudeCode] [config] [WARN] focus_after_send=true does not focus a Claude session running outside Neovim (terminal.provider="external"). Use a `User ClaudeCodeSendComplete` autocmd to focus it yourself.
2026-06-15 19:17:02 +00:00
Matt SturgeonandAustin Horstman 8152a24e66 tests/all-package-defaults: disable semgrep on aarch64 2026-06-15 19:17:02 +00:00
Matt SturgeonandAustin Horstman 55ae671d68 modules/lsp/packages: update unpackaged LSPs
No effort was made to check if any of these _are_ packaged.
2026-06-15 19:17:02 +00:00
Matt Sturgeon 586286af54 modules/output: prevent duplicate vimPlugin assertion locations
It's possible the same plugin-name is defined multiple times in the same
file.
2026-06-15 04:08:14 +00:00
Matt Sturgeon 1fb6dccabf modules/output: make vimPlugin assertions lazier
Delay the `definitionsWithLocations` pipeline until evaluating the
assertion's `message`. The `assertion` condition itself can be a cheaper
`not any isVimPluginPackage`.
2026-06-15 04:08:14 +00:00
Matt Sturgeon e3c908fdf6 modules/output: add source locations to vimPlugin assertions
Include the definition locations of offending vim-plugins in the
`extraPackages` & `extraPackagesAfter` assertion messages.

This makes it easier to track down the plugin declarations,
especially when values originate from multiple modules.
2026-06-13 22:04:18 +00:00
Matt Sturgeon a6554084d7 tests/modules/output: use pkgs.emptyDirectory 2026-06-13 22:04:18 +00:00
Matt SturgeonandMrQubo 56f95d1655 wrappers: fix _module.check disablement
When passing a string to `disabledModules`, it is appended to
`modulesPath`. To avoid this, explicitly pass a `{key}` module.

Adds an assertion module to the platform-wrapper integration tests:

    Failed assertions:
       - Expected programs.nixvim._module.check to be true. Definitions:
       - In `/nix/store/XXXX-source/flake/wrappers.nix': false

Co-authored-by: MrQubo <jakub.jakub.nowak@gmail.com>
2026-06-13 19:20:02 +00:00
Matt SturgeonandAustin Horstman f2029d9a26 lib/keymaps: remove lua submodule option
Co-authored-by: Austin Horstman <khaneliman12@gmail.com>
2026-06-12 18:04:20 +00:00
Matt Sturgeon 90ccd43c71 modules/test: add "all" expectation predicates 2026-06-12 18:04:20 +00:00
Matt Sturgeon fec49e7376 wrappers/{nixos,hm}: add programs.neovim assertion
`programs.nixvim` and `programs.neovim` are incompatible; both install a
`neovim` package onto the PATH in an arbitrary order.

Home Manager also installs config into `.config/nvim`, which conflicts
with `wrapRc = false` used by default in our Home Manager module.
2026-06-12 18:03:35 +00:00
Matt Sturgeon 4d73571e54 modules/nixpkgs: use version-info.toml for source assertion
It may be cheaper to evaluate `(version-info.toml).nixpkgs_rev` instead
of `(nixpkgs.nix).rev` in some scenarios.

I've seen some reports of `builtins.fetchTree` _eagerly_ fetching the
FOD even without forcing `outPath`.
2026-06-09 19:46:00 +00:00
Matt Sturgeon 753b1cd663 tests/nixpkgs-fetch: cross-check with version-info.toml 2026-06-09 19:46:00 +00:00
Matt Sturgeon 82f2ec369e lib/modules: drop removal stubs 2026-06-08 02:03:06 +00:00
Matt Sturgeon 11a586418c lib/builders: drop removal stubs 2026-06-08 02:03:06 +00:00
Matt Sturgeon 6d522f7805 lib/options: drop removal stubs 2026-06-08 02:03:06 +00:00
Matt Sturgeon 5ff549fdaf modules/opts: drop rename aliases 2026-06-08 02:02:43 +00:00
Matt Sturgeon 6a2a8308fb modules/autocmd: remove autoCmd.description deprecation 2026-06-08 02:02:28 +00:00
Matt Sturgeon 64f08f9a85 tests/plugins/multicursors: fix + re-enable hint.border example
[Hydra.nvim] Option "hint.border" has been deprecated and will be removed on 2024-02-01 -- See hint.float_opts
2026-06-08 02:02:17 +00:00
Matt Sturgeon 43aea9e358 plugins/windsurf-nvim: drop some renames 2026-06-08 02:01:50 +00:00
Matt Sturgeon 488820094e plugins/typescript-tools: drop settings renames 2026-06-08 02:01:41 +00:00
Matt Sturgeon f782166c3d plugins/lualine: drop section-type coercion 2026-06-08 00:31:35 +00:00
Matt Sturgeon 2d88361744 lib/deprecations: drop mkDeprecatedSubOptionModule and deprecate getOptionRecursive 2026-06-08 00:30:23 +00:00
Matt Sturgeon a25f7cf056 plugins/web-devicons: drop auto-enable and back-compat
- Drop `plugins.<name>.iconsPackage` removal stubs
- Drop deprecated `plugins.web-devicons.enable` auto-enable
- Cleanup tests that needlessly enable icons
2026-06-08 00:17:06 +00:00
Matt Sturgeon 6b494042f8 modules/readonly-renames: drop 2026-06-07 23:59:20 +00:00
Matt SturgeonandGaétan Lepage 643284206b ci/website: simplify docs build
- Drop branch-specific composite action, target branches via flakeref
- Avoid flake-compat, using `nix build --impure` and `getEnv`
2026-06-07 21:55:05 +00:00
Matt SturgeonandGaétan Lepage a1ef7c93db ci/website: use pre-installed yq 2026-06-07 21:55:05 +00:00
Matt SturgeonandGaétan Lepage 19fd9d7d1e treewide: bump stable 25.11 → 26.05 2026-06-07 20:52:06 +00:00
Matt Sturgeon 70886b715e docs: take defaults from environment variables
When building with --impure, accept the following environment variables
for docs inputs:
- NIXVIM_DOCS_BASE_HREF → baseHref
- NIXVIM_DOCS_AVAILABLE_VERSIONS → availableVersions

This allows simplifying the `website` CI workflow.
2026-06-07 20:51:00 +00:00
Matt SturgeonandGaétan Lepage 4b98b6ae9c ci: run dependabot on GitHub Actions
Dependabot can find GHA workflows and actions in standard locations:
- /.github/workflows/*
- /action.yml

But non-standard locations like `.github/actions/**` must be specified
explicitly.
2026-06-07 13:30:13 +00:00
Matt SturgeonandAustin Horstman a509dd2645 docs/platforms: add standalone-legacy page
Documents the now-deprecated legacy standalone functions for existing
users.

Co-authored-by: Austin Horstman <khaneliman12@gmail.com>
2026-06-07 12:49:05 +00:00
Matt SturgeonandAustin Horstman 5dff6a8cab docs/platforms/standalone: document convenience functions
Co-authored-by: Austin Horstman <khaneliman12@gmail.com>
2026-06-07 12:49:05 +00:00
Matt Sturgeon 86bb52ee5f docs/platforms/standalone: update to use evalNixvim 2026-06-07 12:49:05 +00:00
Matt Sturgeon d12c8e43d3 docs/user-guide/install: update "standalone usage" to use evalNixvim 2026-06-07 12:49:05 +00:00
Matt Sturgeon 7f8cdfcac7 readme: update "standalone usage" to use evalNixvim 2026-06-07 12:49:05 +00:00
Matt Sturgeon a50452bdc1 doc/lib: add lib.nixvim.modules page
This documents functions like `lib.nixvim.evalNixvim`, `buildNixvim`,
and `testNixvim.
2026-06-07 12:49:05 +00:00
Matt Sturgeon 13e7d8a9b3 lib/modules: add evalNixvim nixdoc 2026-06-07 12:49:05 +00:00
Matt Sturgeon b984bc8159 templates/simple: add README link to docs 2026-06-07 12:49:05 +00:00
Matt Sturgeon 62c949bbc7 templates/simple: update to use evalNixvim 2026-06-07 12:49:05 +00:00
Matt Sturgeon 816a15282e tests/all-package-defaults: combine darwin + aarch64-darwin 2026-06-05 08:02:28 +00:00
Matt Sturgeon 0292e9a8c8 tests: stop handling x86_64-darwin 2026-06-05 08:02:28 +00:00
Matt Sturgeon 99ae17797f readme: drop x86_64-darwin
Followup to commit 9dd9795ae4
2026-06-05 08:02:28 +00:00
Matt Sturgeon cf8a487ce0 templates: drop x86_64-darwin
Followup to commit 9dd9795ae4
2026-06-05 08:02:28 +00:00
Matt Sturgeon b7521616f1 ci/version-info: reformat 2026-06-02 17:33:26 +00:00
Matt Sturgeon bbadbd7319 github/workflows/lint: run on Merge Queue 2026-05-29 18:34:38 +00:00
Matt Sturgeon 9dd9795ae4 flake: pin systems to future-26.11
This drops support for x86_64-darwin, which is not supported in
Nixpkgs 26.11.

flake.lock updates:
• Updated input 'systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D' (2023-04-09)
  → 'github:nix-systems/default/c29398b59d2048c4ab79345812849c9bd15e9150?narHash=sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w%3D' (2026-03-25)

flake/dev/flake.lock updates:
• Updated input 'nixvim':
    'path:../..'
  → 'path:../..'
• Updated input 'nixvim/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D' (2023-04-09)
  → 'github:nix-systems/default/c29398b59d2048c4ab79345812849c9bd15e9150?narHash=sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w%3D' (2026-03-25)
2026-05-29 16:57:17 +00:00
Matt Sturgeon 8de98e0940 maintaining: update release process docs 2026-05-29 16:30:05 +00:00
Matt Sturgeon e2caf02e8f github/workflows/lint: run on all PRs
Avoid edge-cases where ignored files can indirectly break formatting.

Some of these exclusions are also outdated, as for example spellcheck
applies to markdown files.

Running this CI unconditionally also allows us to specify it as a
"required status check".
2026-05-29 16:28:41 +00:00
Matt SturgeonandGaétan Lepage 297f934147 flake/dev/flake.lock: update nix-dawrin url
flake/dev/flake.lock updates:
• Updated input 'nix-darwin':
    'github:lnl7/nix-darwin/56c666e108467d87d13508936aade6d567f2a501?narHash=sha256-zXcwYQGCT6pzinK%2B1dBB2ekTVtfxGZAapb3Evdcu4fY%3D' (2026-05-17)
  → 'github:nix-darwin/nix-darwin/56c666e108467d87d13508936aade6d567f2a501?narHash=sha256-zXcwYQGCT6pzinK%2B1dBB2ekTVtfxGZAapb3Evdcu4fY%3D' (2026-05-17)
2026-05-26 17:29:57 +00:00
Matt Sturgeon afec1bae0e flake/dev: mark flake-compat as flake = false
As-per upstream README. No lockfile changes.
2026-05-25 04:30:52 +00:00
Matt Sturgeon 4aa27f5af0 flake/dev: have nuschtosSearch systems input follow nixivm's
flake/dev/flake.lock updates:
• Updated input 'nuschtosSearch/flake-utils/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D' (2023-04-09)
  → follows 'nixvim/systems'
2026-05-25 04:30:52 +00:00
Matt Sturgeon 860304dd63 flake/dev: drop dev-nixpkgs for nixvim path ref
flake/dev/flake.lock updates:
• Removed input 'dev-nixpkgs'
• Updated input 'devshell/nixpkgs':
    follows 'dev-nixpkgs'
  → follows 'nixvim/nixpkgs'
• Updated input 'git-hooks/nixpkgs':
    follows 'dev-nixpkgs'
  → follows 'nixvim/nixpkgs'
• Updated input 'home-manager/nixpkgs':
    follows 'dev-nixpkgs'
  → follows 'nixvim/nixpkgs'
• Updated input 'nix-darwin/nixpkgs':
    follows 'dev-nixpkgs'
  → follows 'nixvim/nixpkgs'
• Added input 'nixvim':
    'path:../..'
• Added input 'nixvim/flake-parts':
    'github:hercules-ci/flake-parts/f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb?narHash=sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4%3D' (2026-05-13)
• Added input 'nixvim/flake-parts/nixpkgs-lib':
    follows 'nixvim/nixpkgs'
• Added input 'nixvim/nixpkgs':
    'github:NixOS/nixpkgs/d99b013d5d1931ad77fe3912ed218170dec5d9a4?narHash=sha256-7DKWmH23hL2eYdkxCKeqj2i%2ByljTKuU%2B3Nk1UPHOnxc%3D' (2026-05-20)
• Added input 'nixvim/systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D' (2023-04-09)
• Updated input 'nuschtosSearch/nixpkgs':
    follows 'dev-nixpkgs'
  → follows 'nixvim/nixpkgs'
• Updated input 'treefmt-nix/nixpkgs':
    follows 'dev-nixpkgs'
  → follows 'nixvim/nixpkgs'
2026-05-25 04:30:52 +00:00
Matt Sturgeon 01bd278849 modules: drop helpers alias
Deprecated since 25.11.
2026-05-25 00:15:52 +00:00
Matt Sturgeon 909aa0a782 wrappers: pass in existing lib.nixvim
Extracting `specialArgs.lib.nixvim` from the final `programs.nixvim`
configuration is neat, but recursive. In non-lazy scenarios, it can end
up infinitely recursive.

We could extract `specialArgs.lib.nixvim` from another nixvim
configuration, such as one of the earlier `extendModules` evaluations,
however it is better to avoid evaluating multiple configurations
unnecessarily.

Instead, revert back to getting `lib.nixvim` from the same configuration
we get `extendModules` from.
2026-05-24 23:09:56 +00:00
Matt Sturgeon e71dab10a6 tests/platforms: add failing test for #4341
We see infinite recursion when `config.lib` is used to construct or define a `programs.nixvim` module.
2026-05-24 23:09:56 +00:00
Matt Sturgeon 978a84388e Revert "modules/nixpkgs: don't assign elaborated platforms"
This reverts commit f99264c1fb.

Cherry-picks https://github.com/NixOS/nixpkgs/commit/7c251e2b5fda2b42c3ff2983fdcc9eac82f2ced6
2026-05-24 05:41:42 +00:00
Matt Sturgeon d5bd4d4e41 modules/doc: disable manpage docs when config.flake is undefined
We currently access all `docs` packages via flake outputs.
2026-05-24 03:05:36 +00:00
Matt Sturgeon e1ad5c4e92 wrappers: encapsulate access to lib.nixvim and lib-overlay
- Pass only `evalNixvim` into standalone.nix.
- Access Nixvim lib via the submodule configuration in _shared.nix.
2026-05-24 03:05:36 +00:00
Matt Sturgeon fca03f1759 lib: allow instantiating without a flake instance
Separate `overlay.nix` and `overlay.internal.nix`, to encapsulate the
`flake` argument. This allows non-flake users to import `./overlay.nix`
without providing a dummy `flake = null` attr.

The read-only `config.flake` option is only defined by `evalNixvim` when
`lib` is extended using the overlay in Nixvim's flake outputs.
2026-05-24 03:05:36 +00:00
Matt Sturgeon f58f056882 modules/nixpgks: warn when nixpkgs.source default is incorrect
Currently, `nixpkgs.source` can be affected by flake input following.
Nixvim is sensitive to the pinned Nixpkgs revision and users often
follow inputs without thinking too much about it, so warn when this is
detected.
2026-05-24 03:05:36 +00:00