Here you have my nix config files.
Nothing too fancy.
Love Blueprint
mvim
is my own bespoke neovim config based on
LazyVim and nix
.
Try it yourself...
nix run github:multivac61/nixos-config#mvim
Relevant files are found under
./home/nvim/
-- my lua files./packages/mvim.nix
-- standalone package./modules/home/nvim.nix
-- home-manager module
Then you can set up the GitHub Action stuff like so...
./.github/workflows/update-flake-lock.yml
and
./.github/workflows/update-lazy-plugins.yaml
use the
create-github-app-token
action. In order to use it in your project you need to
register a new GitHub app.
In order to use this action, you need to:
- Register new GitHub App. When creating the app you need to enable read and write access for "Contents" and "Pull Requests" permissions.
- Next you must install the app to make it available to your repo .
- Store the App's ID in your repository environment variables
as
CI_APP_ID
. - Store the App's private key in your repository secrets
as
CI_PRIVATE_KEY
. - Create a new
auto-merge
label in the GitHub UI. - Enable auto-merge in your GitHub repo settings.
- Set up branch protection:
- Go to repository Settings
- Click "Branches" in the left sidebar
- Click "Add branch protection rule"
- For "Branch name pattern" enter: main
- Check "Require status checks to pass before merging"
- In the search box, type "Auto Merge Dependency Updates"
- Also search for and add your ci workflow, e.g., building all systems using determinate-ci or similar
Now you can upload the code and go to town with a sparking new auto-updating neovim config!
Note
Lots of the nix
and CICD code is adopted from the venerable
Mic92