Skip to content
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

gnome-builder: add ctags #46594

Merged
merged 1 commit into from Sep 16, 2018
Merged

Conversation

worldofpeace
Copy link
Contributor

Gnome Builder uses Ctags for autocompletion.

From looking at this adding it as a build input should be sufficient.

cc @jameysharp @jtojnar

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

@xeji
Copy link
Contributor

xeji commented Sep 13, 2018

@GrahamcOfBorg build gnome-builder

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: gnome-builder

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: gnome-builder

Partial log (click to expand)

/nix/store/9l1vwk4pn47his2wvzvgylzh5mdbgnyz-gnome-builder-3.28.4/lib/gnome-builder/plugins/npm_plugin.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/hy65mn4wjswqih75gfr6g4q3xgqdm325-python3-3.6.6/bin/python3"
/nix/store/9l1vwk4pn47his2wvzvgylzh5mdbgnyz-gnome-builder-3.28.4/lib/gnome-builder/plugins/python_gi_imports_completion.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/hy65mn4wjswqih75gfr6g4q3xgqdm325-python3-3.6.6/bin/python3"
/nix/store/9l1vwk4pn47his2wvzvgylzh5mdbgnyz-gnome-builder-3.28.4/lib/gnome-builder/plugins/rust_langserv_plugin.py: interpreter directive changed from "/usr/bin/env python" to "/nix/store/hy65mn4wjswqih75gfr6g4q3xgqdm325-python3-3.6.6/bin/python"
/nix/store/9l1vwk4pn47his2wvzvgylzh5mdbgnyz-gnome-builder-3.28.4/lib/gnome-builder/plugins/go_langserver_plugin.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/hy65mn4wjswqih75gfr6g4q3xgqdm325-python3-3.6.6/bin/python3"
/nix/store/9l1vwk4pn47his2wvzvgylzh5mdbgnyz-gnome-builder-3.28.4/lib/gnome-builder/plugins/mono_plugin.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/hy65mn4wjswqih75gfr6g4q3xgqdm325-python3-3.6.6/bin/python3"
checking for references to /build in /nix/store/9l1vwk4pn47his2wvzvgylzh5mdbgnyz-gnome-builder-3.28.4...
shrinking RPATHs of ELF executables and libraries in /nix/store/yac8gxvrzyjcq0nd4hwv56jc4ng66k1k-gnome-builder-3.28.4-devdoc
strip is /nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/yac8gxvrzyjcq0nd4hwv56jc4ng66k1k-gnome-builder-3.28.4-devdoc
checking for references to /build in /nix/store/yac8gxvrzyjcq0nd4hwv56jc4ng66k1k-gnome-builder-3.28.4-devdoc...

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: gnome-builder

Partial log (click to expand)

/nix/store/a1w9pva9bq297mxqc41a8sh9gy9v1ami-gnome-builder-3.28.4/lib/gnome-builder/plugins/go_langserver_plugin.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/sb88r9crdhinhkm6vpxwzf5zmij86p8v-python3-3.6.6/bin/python3"
/nix/store/a1w9pva9bq297mxqc41a8sh9gy9v1ami-gnome-builder-3.28.4/lib/gnome-builder/plugins/find_other_file.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/sb88r9crdhinhkm6vpxwzf5zmij86p8v-python3-3.6.6/bin/python3"
/nix/store/a1w9pva9bq297mxqc41a8sh9gy9v1ami-gnome-builder-3.28.4/lib/gnome-builder/plugins/eslint_plugin.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/sb88r9crdhinhkm6vpxwzf5zmij86p8v-python3-3.6.6/bin/python3"
/nix/store/a1w9pva9bq297mxqc41a8sh9gy9v1ami-gnome-builder-3.28.4/lib/gnome-builder/plugins/cargo_plugin.py: interpreter directive changed from "/usr/bin/env python3" to "/nix/store/sb88r9crdhinhkm6vpxwzf5zmij86p8v-python3-3.6.6/bin/python3"
checking for references to /build in /nix/store/a1w9pva9bq297mxqc41a8sh9gy9v1ami-gnome-builder-3.28.4...
shrinking RPATHs of ELF executables and libraries in /nix/store/lhlm5hgmjqb09agangzjmdyshiqyjlkl-gnome-builder-3.28.4-devdoc
strip is /nix/store/y4ymnvgxygpq05h03kyzbj572zmh6zla-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/lhlm5hgmjqb09agangzjmdyshiqyjlkl-gnome-builder-3.28.4-devdoc
checking for references to /build in /nix/store/lhlm5hgmjqb09agangzjmdyshiqyjlkl-gnome-builder-3.28.4-devdoc...
/nix/store/a1w9pva9bq297mxqc41a8sh9gy9v1ami-gnome-builder-3.28.4

@jtojnar
Copy link
Contributor

jtojnar commented Sep 13, 2018

We have decided that Builder should be used inside nix-shell/direnv, see the opening PR: #44217

@jtojnar jtojnar closed this Sep 13, 2018
@worldofpeace
Copy link
Contributor Author

worldofpeace commented Sep 13, 2018

@jtojnar Using nix-shell/direnv for ctags doesn't make sense.

You can find errors in the output when it can't find it a soon as you open a file.

There's even an option to set the path. This is more of a dependency I think than something for someone's specific dev environment.

@jameysharp
Copy link
Contributor

I find this argument about ctags convincing, and it's also possible I was wrong to argue to the contrary for other build-time dependencies.

Perhaps the rule should be this: anything that upstream gnome-builder tries to detect while running the meson configure script should be a packaging dependency here.

My fear was about trying to track down all gnome-builder's subprocess invocations that assumed that at runtime various tools would be on $PATH. I was worried that trying to locally patch all of those references would be a maintenance problem. But that doesn't apply to ctags in this case.

It's also possible that some of those run-time dependencies should be turned into build-time dependencies. If it really only makes sense to use one version of a tool on a given platform, I'd expect that upstream would accept patches doing so, and then there's no need to maintain the large patches I was worried about here in nixpkgs.

In short: @jtojnar, my suggestion would be to go ahead and merge this pull request, and we can think about whether this reasoning applies to other tools later.

@jtojnar jtojnar reopened this Sep 16, 2018
@jtojnar jtojnar merged commit d1b6cb7 into NixOS:master Sep 16, 2018
@worldofpeace worldofpeace deleted the gnome-builder/ctags branch September 16, 2018 23:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants