diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index a43a9445..2379973f 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -2,48 +2,72 @@ ## Table of Contents -- [Welcome](#welcome) -- [Contributing](#contributing) +- [Preface](#preface) +- [Contributing Process](#contributing-process) - [Code of Conduct](#code-of-conduct) -## Welcome +## Preface -I'm glad you are thinking about contributing to nvf! If you're unsure about -anything, just ask - or submit the issue or pull request anyway. The worst that -can happen is you'll be politely asked to change something. Friendly -contributions are always welcome. +[LICENSE]: ../LICENSE -Before you contribute, I encourage you to read this project's CONTRIBUTING -policy (you are here) and its [LICENSE](../LICENSE) to understand how your -contributions are licensed. +I am glad you are thinking about contributing to nvf! The project is shaped by +contributors and user feedback, and all contributions are appreciated. -If you have any questions regarding those files, feel free to open an issue or -[shoot me an email](mailto:me@notashelf.dev). Discussions tab is also available -for more informal discussions. +If you are unsure about anything, whether a change is necessary or if it would +be accepted _had_ you created a PR, please just ask! Or submit the issue or pull +request anyway, the worst that can happen is that you will be politely asked to +change something. Friendly contributions are _always_ welcome. -## Contributing +Before you contribute, I encourage you to read the rest of this document for our +contributing policy and guidelines, followed by the [LICENSE] to understand how +your contributions are licensed. -The contribution process is mostly documented in the -[pull request template](PULL_REQUEST_TEMPLATE/pull_request_template.md). You -will find a checklist of items to complete before submitting a pull request. -Please make sure you complete it before submitting a pull request. If you are +If you have any questions regarding those files, or would like to ask a question +that is not covered by any of them, please feel free to open an issue! +Discussions tab is also available for less formal discussions. You may also +choose to contact me on Discord or Matrix if you would like to talk to me +personally. + +## Contributing Process + +[pull request template]: ./PULL_REQUEST_TEMPLATE.md + +The contribution process is mostly documented in the [pull request template]. +When you create a pull request, you will find a checklist of items to complete +before it can be submitted. We ask that you please complete it before submitting +a pull request to help maintainers provide more specific feedback. If you are unsure about any of the items, please ask. ### Guidelines -We provide instructions on a healthy contribution to neovim-flake - including -styling, commit formats, how-to guides for adding new modules and options. You -are very well recommended to read the contributing guidelines over at -[the documentation](https://notashelf.github.io/nvf#hacking) +We provide instructions for a healthy contribution to nvf. This includes +**styling**, **commit formats**, **how-to guides for common contributions**. You +are strongly encouraged to read the contributing guidelines in full over at +[the documentation](https://notashelf.github.io/nvf#hacking). + +A general gist of our requirements is that you must + +1. Write clean Nix code +2. Self-test your changes +3. Document your changes + +Though, please take a look at the manual for the complete contributing guide. +Please also feel free to let us know if you feel that something is missing. We +hope to provide clear, comprehensive instructions that make the contribution +process a breeze. ### Code of Conduct -This project does not quite have a code of conduct yet. And to be perfectly -honest, I'm not sure if I want one or if it will ever have one. I'm not -expecting this project to be a hotbed of activity, but I do want to make sure -that everyone who does contribute feels welcome and safe. As such, I will do my -best to make sure that those who distrupt the project are dealt with swiftly and -appropriately. +This project does not have a formal code of conduct yet, and to be perfectly +honest I am not entirely positive if I want one or if it will _ever_ have one. +This project is not expected to be a hotbed of activity, and I trust my +contributors to keep it civil and respectful. + +I do, however, want to make sure that everyone who does contribute feels welcome +and safe around project spaces. As such, I will do my best to make sure anyone +who disrupts the project or engages in negative behaviour will are dealt with +appropriately, and swiftly. You are invited to share any concerns that you have +with the projects moderation, be it over public or private spaces. If you feel that you are not being treated with respect, please contact me directly. diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index a3f4fce3..c0338f1d 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -39,6 +39,17 @@ jobs: - name: Check formatting via Alejandra run: nix run nixpkgs#alejandra -- --check . --exclude npins + - name: Check formatting via Deno + run: nix run nixpkgs#deno -- fmt --check --ext md **/*.md + + - if: ${{ failure() }} + shell: bash + run: | + echo "::error:: Current codebase contains formatting errors that were caught by the CI!" + echo "Please ensure that all Nix code is formatted with Alejandra, and Markdown with `deno fmt" + echo "[skip ci] label may be added to the PR title if this is a one-time issue and is safe to ignore" + exit 1 + check-typos: name: "Check source tree for typos" runs-on: ubuntu-latest @@ -142,7 +153,8 @@ jobs: - name: Checking Editorconfig conformance shell: bash run: | - < "$HOME/changed_files" nix-shell -p editorconfig-checker --run 'xargs -r editorconfig-checker -disable-indent-size' + < "$HOME/changed_files" nix-shell -p editorconfig-checker \ + --run 'xargs -r editorconfig-checker -disable-indent-size --exclude flake.lock' - if: ${{ failure() }} shell: bash diff --git a/.github/README.md b/README.md similarity index 96% rename from .github/README.md rename to README.md index 395a9320..7786636a 100644 --- a/.github/README.md +++ b/README.md @@ -1,6 +1,6 @@
- nvf Logo + nvf Logo

nvf

@@ -122,7 +122,7 @@ the following in order to take **nvf** out for a spin. ```bash # Run the default package -nix run github:notashelf/nvf +$ nix run github:notashelf/nvf ``` This will get you a feel for the base configuration and UI design. Though, none @@ -144,7 +144,7 @@ coverage, run: ```bash # Run the maximal package -nix run github:notashelf/nvf#maximal +$ nix run github:notashelf/nvf#maximal ``` Similar instructions will apply for `nix profile install`. However, you are @@ -196,11 +196,12 @@ members, or engage in productive discussion with the maintainers. ## Contributing +[contributing guide]: .github/CONTRIBUTING.md + I am always looking for new ways to help improve this flake. If you would like -to contribute, please read the [contributing guide](CONTRIBUTING.md) before -submitting a pull request. You can also create an issue on the [issue tracker] -before submitting a pull request if you would like to discuss a feature or bug -fix. +to contribute, please read the [contributing guide] before submitting a pull +request. You can also create an issue on the [issue tracker] before submitting a +pull request if you would like to discuss a feature or bug fix. ## Frequently Asked Questions @@ -259,11 +260,11 @@ further configure Neovim. ### Co-Maintainers Alongside [myself](https://github.com/notashelf), nvf is developed by those -talented folk. nvf would not be what it is today without their invaluable +talented folk. **nvf** would not be what it is today without their invaluable contributions. - [**@horriblename**](https://github.com/horriblename) - ([Liberapay](https://liberapay.com/horriblename/))- For actively implementing + ([Liberapay](https://liberapay.com/horriblename/)) - For actively implementing planned features and quality of life updates. - [**@Soliprem**](https://github.com/soliprem) - For rigorously implementing missing features and excellent work on new language modules. diff --git a/docs/manual/configuring/overriding-plugins.md b/docs/manual/configuring/overriding-plugins.md index bb698666..25a71559 100644 --- a/docs/manual/configuring/overriding-plugins.md +++ b/docs/manual/configuring/overriding-plugins.md @@ -2,9 +2,9 @@ The [additional plugins section](#sec-additional-plugins) details the addition of new plugins to nvf under regular circumstances, i.e. while making a pull -request to the project. You may _override_ those plugins in your config -to change source versions, e.g., to use newer versions of plugins -that are not yet updated in **nvf**. +request to the project. You may _override_ those plugins in your config to +change source versions, e.g., to use newer versions of plugins that are not yet +updated in **nvf**. ```nix vim.pluginOverrides = { diff --git a/docs/manual/hacking/keybinds.md b/docs/manual/hacking/keybinds.md index 3940466f..90623dd3 100644 --- a/docs/manual/hacking/keybinds.md +++ b/docs/manual/hacking/keybinds.md @@ -30,8 +30,8 @@ There are many settings available in the options. Please refer to the [documentation](https://notashelf.github.io/nvf/options.html#opt-vim.keymaps) to see a list of them. -**nvf** provides a helper function, so that you don't have to write the -mapping attribute sets every time: +**nvf** provides a helper function, so that you don't have to write the mapping +attribute sets every time: - `mkKeymap`, which mimics neovim's `vim.keymap.set` function diff --git a/docs/manual/installation/standalone/nixos.md b/docs/manual/installation/standalone/nixos.md index 267d15b7..65dc9205 100644 --- a/docs/manual/installation/standalone/nixos.md +++ b/docs/manual/installation/standalone/nixos.md @@ -49,7 +49,8 @@ the default theme enabled. You may use other options inside `config.vim` in # ... modules = [ # This will make wrapped neovim available in your system packages - # Can also move this to another config file if you pass inputs/self around with specialArgs + # Can also move this to another config file if you pass your own + # inputs/self around with specialArgs ({pkgs, ...}: { environment.systemPackages = [self.packages.${pkgs.stdenv.system}.neovim]; }) @@ -58,4 +59,5 @@ the default theme enabled. You may use other options inside `config.vim` in }; }; }; -}``` +} +``` diff --git a/flake.lock b/flake.lock index c17d2963..45e2be1a 100644 --- a/flake.lock +++ b/flake.lock @@ -36,26 +36,6 @@ "type": "github" } }, - "flake-utils": { - "inputs": { - "systems": [ - "systems" - ] - }, - "locked": { - "lastModified": 1731533236, - "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, "mnw": { "locked": { "lastModified": 1748710831, @@ -91,7 +71,6 @@ "inputs": { "flake-compat": "flake-compat", "flake-parts": "flake-parts", - "flake-utils": "flake-utils", "mnw": "mnw", "nixpkgs": "nixpkgs", "systems": "systems" diff --git a/flake.nix b/flake.nix index 74dcca35..35820e0b 100644 --- a/flake.nix +++ b/flake.nix @@ -98,11 +98,6 @@ inputs.nixpkgs-lib.follows = "nixpkgs"; }; - flake-utils = { - url = "github:numtide/flake-utils"; - inputs.systems.follows = "systems"; - }; - flake-compat = { url = "git+https://git.lix.systems/lix-project/flake-compat.git"; flake = false;