Add self package to flake.nix, nix fixes, fmt - #203
Conversation
484acbd to
2313f7b
Compare
yimsk
left a comment
There was a problem hiding this comment.
Thanks for adding the Nix package and installation instructions.
It would be good to add a workflow that builds the Nix package itself. The current workflows run the Go build/tests and nix develop, but they do not run nix build .#clawscli. As a result, if vendorHash becomes stale after a dependency change, CI could remain green while installation through Nix is broken.
Could we add nix build .#clawscli after the Nix setup in the Integration Test workflow and, if practical, also run the generated claws --version as a smoke test?
I also left an inline comment about limiting the package output to the claws binary.
For the skipped tests, it would be better in the long term to make them runnable in the Nix environment. However, that can be handled as a follow-up, and I do not think the current skip list needs to block this PR.
I added it as a separate job, since none of the go setup needs to happen outside of Nix anyway. |
|
Thanks! That approach works for me. |
019821c to
456793a
Compare
|
Alright, some changes:
|
456793a to
9aa78ca
Compare
* Added a `default`/`clawscli` package that builds this project. Note, `vendorHash` has to be set when the dependencies change. * Uses the same flags as in the `.goreleaser.yml` * Uses `self` for automatic version options using the hash of the current git revision. Uses the `dirtyShortRev` if it is available so that builds and versions show that there are changes to the working copy. Nix already takes care of making the output different, so no bumping versions are necessary to do `nix build ...` * Formatted the flake.nix using `nixfmt`. * Used built-in `stdenv.targetPlatform.node` variables for fetching indexion, set `meta.platforms` to limit where it can run. * Added nix info to the README. * Does replacement for /bin/echo in tests * Uses a temporary home directory in tests for config tests * Added nix checks into a separate Github actions job * Ignore nix output `result`s
9aa78ca to
1a134b0
Compare
This MR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github:clawscli/claws](https://github.com/clawscli/claws) | tools | minor | `0.17.0` → `0.18.0` | MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot). **Proposed changes to behavior should be submitted there as MRs.** --- ### Release Notes <details> <summary>clawscli/claws (github:clawscli/claws)</summary> ### [`v0.18.0`](https://github.com/clawscli/claws/releases/tag/v0.18.0) [Compare Source](clawscli/claws@v0.17.0...v0.18.0) #### Changelog - [`1a134b0`](clawscli/claws@1a134b0) Add self package to flake.nix, nix fixes, fmt - [`09b5b18`](clawscli/claws@09b5b18) Merge branch 'main' into dependabot/github\_actions/actions/setup-go-7 - [`c04cca1`](clawscli/claws@c04cca1) Merge branch 'main' into kai/nixupdates - [`9e954ae`](clawscli/claws@9e954ae) Merge pull request [#​200](clawscli/claws#200) from clawscli/dependabot/github\_actions/actions/checkout-7 - [`8761774`](clawscli/claws@8761774) Merge pull request [#​202](clawscli/claws#202) from nick4eva/add-ability-to-paste-search-string-from-clipboard - [`a035f89`](clawscli/claws@a035f89) Merge pull request [#​203](clawscli/claws#203) from KaiSforza/kai/nixupdates - [`7a0a8ea`](clawscli/claws@7a0a8ea) Merge pull request [#​204](clawscli/claws#204) from clawscli/dependabot/github\_actions/actions/setup-go-7 - [`7edd29f`](clawscli/claws@7edd29f) ci: bump actions/checkout from 6 to 7 - [`a3dab3f`](clawscli/claws@a3dab3f) ci: bump actions/setup-go from 6 to 7 - [`c569b46`](clawscli/claws@c569b46) fix(ui): return clipboard paste to command input and keep log scroll - [`5e97066`](clawscli/claws@5e97066) fix(ui): support clipboard paste in filter and command inputs </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this MR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box --- This MR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODguMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4OC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiLCJhdXRvbWF0aW9uOmJvdC1hdXRob3JlZCIsImRlcGVuZGVuY3ktdHlwZTo6bWlub3IiXX0=-->
default/clawsclipackage that builds this project. Note,vendorHashhas to be set when the dependencies change..goreleaser.ymlselffor automatic version options using the hash of the currentgit revision. Uses the
dirtyShortRevif it is available so thatbuilds and versions show that there are changes to the working copy.
Nix already takes care of making the output different, so no bumping
versions are necessary to do
nix build ...nixfmt.stdenv.targetPlatform.nodevariables for fetchingindexion, set
meta.platformsto limit where it can run.results