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

libinput: fix docs & libinput command #51304

Merged
merged 1 commit into from Dec 13, 2018
Merged

Conversation

jtojnar
Copy link
Contributor

@jtojnar jtojnar commented Dec 1, 2018

Motivation for this change

libinput switched from Doxygen to Sphinx for user docs. Since Sphinx is a Python
module, it propagates Python. And because it is listed in nativeBuildInputs,
its python binary takes precedence over the one added in buildInputs.
This results in a wrong interpreter being substituted into shebangs.

The contamination occurred previously too but libinput does not use pyparsing
dependency since 1.12.0, so it could be removed.

I prevented Sphinx from propagating Python and added some additional
dependencies to it. In the future we might want something more reusable.

While at it, I also fixed the tests.

Closes: #48252

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)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

cc @FRidh for sealing Python modules (sphinx)

@grahamc
Copy link
Member

grahamc commented Dec 1, 2018

I'm fixing the red X.

@grahamc
Copy link
Member

grahamc commented Dec 1, 2018

@GrahamcOfBorg build libinput

@jtojnar jtojnar changed the base branch from master to staging December 1, 2018 02:34
libinput switched from Doxygen to Sphinx for user docs. Since Sphinx is a Python
module, it propagates Python. And because it is listed in nativeBuildInputs,
its python binary takes precedence over the one added in buildInputs.
This results in a wrong interpreter being substituted into shebangs.

The contamination occurred previously too but libinput does not use pyparsing
dependency since 1.12.0, so it could be removed.

I prevented Sphinx from propagating Python and added some additional
dependencies to it. In the future we might want something more reusable.

While at it, I also fixed the tests.
@jtojnar
Copy link
Contributor Author

jtojnar commented Dec 13, 2018

@GrahamcOfBorg build libinput

@jtojnar jtojnar merged commit 40991fa into NixOS:staging Dec 13, 2018
@jtojnar jtojnar deleted the libinput-docs-fix branch December 13, 2018 22:54
@jtojnar jtojnar mentioned this pull request Jul 8, 2020
10 tasks
jtojnar added a commit to jtojnar/nixpkgs that referenced this pull request Jul 15, 2020
Running subcommands like `libinput measure` requires python and some python modules.

I previously added the dependencies in [1] but [2] accidentally moved them to checkInputs so they are not available at runtime by patchShebangs (especially since tests are disabled).

Additionally, the tools were ported from evdev python module to python-libevdev in libinput 1.14, which was missed [3] during upgrade.

Finally, other python modules are needed so let's add them as well.

[1]: NixOS#51304
[2]: NixOS@de14f0c
[3]: NixOS@b291f2a
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

3 participants