feat: adds flake.nix with home manager support #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Removes the original example Nix configuration I had contributed and adds a
flake.nix
to the repo with more thorough installation steps. Aflake.nix
in the repository allows Nix users to install directly from GitHub.This is in response to the new comments on #2 (comment).
The following files are added:
flake.nix
- Entry point that the Nix package manager looks for when installing from GitHub.flake.lock
- Nix is declarative and enforces pinned dependencies. This shouldn't need to be updated very often if at all. The only dependency is onnixpkgs
and the instructions have the user override it with whatever version they use.nix/default.nix
- Creates the Nix plugin package.nix/generate-config.nix
- Helper to convert YAML configurations into a Nix source file.nix/home-manager.nix
- Nix is typically focused on system configurations whereas home manager focuses on per-user configurations. This adds options the user can use to install and configure the plugin with Nix expressions. It handles converting Nix expressions back into a YAML configuration and runningbuild.py
to produce the final tmux configuration.I updated
README.md
by removing the old example and put in more thorough examples using theflake.nix
. I also corrected a few linting errors for indented code blocks under a list and HTML elements.I'm also happy to be a CODEOWNER for these files to keep them maintained if wished. If you want me to add, just let me know!