Navigation Menu

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

Don't use deprecated dbusdirs #68875

Merged
merged 30 commits into from Sep 17, 2019

Conversation

worldofpeace
Copy link
Contributor

@worldofpeace worldofpeace commented Sep 16, 2019

Motivation for this change

✌️etc/dbus-1/system.d for third party packages.
This is a mix of upstream patches of my own, other people's yet to be merged patches, and using the configure flags projects provided.

There's still a few more I'd like to get but didn't have time for

  • hplip
  • system-config-printer
  • wpa_supplicant
  • rtkit
  • rpm-ostree
Upstream PRs/MRs
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 nix-review --run "nix-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)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

cc @

@jtojnar
Copy link
Contributor

jtojnar commented Sep 16, 2019

Is there any benefit to patching the projects downstream? Unless the legacy directory support is to be removed in near future, I would say this just clutters the expressions without any added value. For the expressions where we are explicitly passing the legacy path, it looks good.

@worldofpeace
Copy link
Contributor Author

@jtojnar All the patches have been submitted upstream, I'm certain they'll all be accepted.

@jtojnar
Copy link
Contributor

jtojnar commented Sep 16, 2019

Yeah, that is good. But I do not see much benefit in applying them here.

@worldofpeace
Copy link
Contributor Author

Yeah, that is good. But I do not see much benefit in applying them here.

I'd disagree. The added value is that the dbus sys directory is now correct, and that's what this PR is for. The patches are the means to this. If I wasn't going to do that I wouldn't have opened this PR.

Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
…em.d

Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
…em.d

Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.
@worldofpeace worldofpeace merged commit 86c7fc4 into NixOS:staging Sep 17, 2019
@worldofpeace worldofpeace deleted the dont-use-deprecated-dbusdirs branch September 17, 2019 16:21
Mic92 added a commit that referenced this pull request Oct 14, 2019
This reverts commit ad6aada.

The patch does not apply to our version.
This commit was part of #68875

cc @worldofpeace
@NeQuissimus
Copy link
Member

NeQuissimus commented Oct 14, 2019

Pretty sure this broke WPA Supplicant (at least I can't find anything else that would have caused this):

Oct 14 09:22:02 nixus dbus-daemon[1819]: dbus[1819]: Failed to start message bus: Failed to read directory "/nix/store/4n7bwq053a3gfz7w8dyigizvq3iydj0h-wpa_supplicant-2.9/share/dbus-1/system.d": Not a directory
Oct 14 09:22:02 nixus systemd[1769]: systemd-logind.service: Executable /sbin/modprobe missing, skipping: No such file or directory
Oct 14 09:22:03 nixus kernel: iwlwifi 0000:01:00.0: Applying debug destination EXTERNAL_DRAM
Oct 14 09:22:03 nixus kernel: iwlwifi 0000:01:00.0: Applying debug destination EXTERNAL_DRAM
Oct 14 09:22:03 nixus kernel: iwlwifi 0000:01:00.0: FW already configured (0) - re-configuring
Oct 14 09:22:03 nixus kernel: IPv6: ADDRCONF(NETDEV_UP): wlp1s0: link is not ready
Oct 14 09:22:03 nixus dhcpcd[1761]: wlp1s0: waiting for carrier
Oct 14 09:22:03 nixus dhcpcd[1761]: wlp1s0: carrier acquired
Oct 14 09:22:03 nixus dhcpcd[1761]: DUID 00:04:d7:9c:d0:a5:72:1f:c7:40:bd:7d:89:00:f7:a2:77:3c
Oct 14 09:22:03 nixus dhcpcd[1761]: wlp1s0: IAID 88:6f:25:20
Oct 14 09:22:03 nixus dhcpcd[1761]: wlp1s0: adding address fe80::4e34:88ff:fe6f:2520
Oct 14 09:22:03 nixus dhcpcd[1761]: wlp1s0: carrier lost
Oct 14 09:22:03 nixus dhcpcd[1761]: wlp1s0: deleting address fe80::4e34:88ff:fe6f:2520
Oct 14 09:22:33 nixus dhcpcd[1761]: timed out
Oct 14 09:22:33 nixus dhcpcd[1761]: timed out
Oct 14 09:22:33 nixus dhcpcd[1761]: forked to background, child pid 1950

@jtojnar
Copy link
Contributor

jtojnar commented Oct 14, 2019

See #71113

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

4 participants