New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RDY] neovim-unwrapped: ease hacking/development #75164
Conversation
hum I guess I can still improve things to run more tests:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Besides this all LGTM.
@GrahamcOfBorg build neovim-unwrapped |
cc @timokau |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As I said in my email, I don't really understand why this is necessary (what are the advantages over your own shell.nix
or just adding these packages to your system?).
I don't really have anything against it though, and if it helps you with development we can go ahead with this. The complexity increase is rather small.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Although I commented a long time ago that it LGTM. I'm not sure what this PR does that an overlay couldn't do? Overlays would be needed anyway for someone to use devMode
... I object just a bit to adding extra flags that are not packages while I think most of them can be binded to doCheck
instead? I think that although tests are disabled, we should support them almost, so here's my opinion.
] | ||
++ optionals devMode [ | ||
include-what-you-use # for scripts/check-includes.py | ||
jq # jq for scripts/vim-patch.sh -r | ||
doxygen | ||
]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd do:
] | |
++ optionals devMode [ | |
include-what-you-use # for scripts/check-includes.py | |
jq # jq for scripts/vim-patch.sh -r | |
doxygen | |
]; | |
# To generate dev docs | |
doxygen | |
jq # jq for scripts/vim-patch.sh -r | |
] | |
++ optionals doCheck [ | |
include-what-you-use # for scripts/check-includes.py | |
]; |
I suggest this considering:
- I hope that adding doxygen doesn't mean dev docs are not built and installed unconditionally.
- jq doesn't bother anyone if it'll be there, since it'll most likely won't be referenced in the output.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
all of these deps are just to help with development (in a nix-shell -A neovim-unwrapped
), they dont change the build process.
|
||
# set devMode to true to pull the software used to develop on neovim | ||
, devMode ? false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think most of the functionality this flag suggests can be coupled with that of doCheck
, so:
# set devMode to true to pull the software used to develop on neovim | |
, devMode ? false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
devMode is really for developers to use. I intend to enable doCheck at some point in the future hence the decorrelation.
This is the question why I requested external review. I believe its is worthwhile because neovim is popular enough that people may want to contribute. The dependencies to hack on neovim are neither obvious or well documented so instead of having everyone tweaking his own shell.nix, I thought I could share the changes. It's only because of this specificity that I believe it's worthwhile to have in nixpkgs. Also the complexity is low. But yeah it still is more complex than the current one so I could understand not wanting that in. I do help maintaining (the) neovim (package) if that can help with my case :) |
@teto maybe it'll be more appropriate to share your Neovim's |
Make functionaltests more complete.
no you are right, I will post this either in neovim wiki or in some neovim flake. Yet another repo to maintain :'( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
I'm not fully opposed to have dev-setup related things in nixpkgs, but @doronbehar's concerns are warranted. We'd probably have to think about how to do this right and in a uniform manner if we wanted to do it.
That sound like you need better upstream documentation ;)
Yeah I agree with the low complexity, so the benefit doesn't have to be that great to be worthwhile. In my opinion you, a neovim and nixpkgs core contributor, thinking its a good idea is sufficient. So if you really would prefer this in nixpkgs, I'm not opposed. |
Motivation for this change
I am hacking on neovim and I need some extra config to be able to run the :
targets.
I've introduced a devMode flag on top of the doCheck but I don't like the increased complexity.
I would like to merge both under the name of devMode as it is what makes most sense.
Any thought ?
Things done
sandbox
innix.conf
on non-NixOS linux)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)Notify maintainers
cc @