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

makeDBusConf: reduce build closure #178124

Merged
merged 1 commit into from
Jun 19, 2022

Conversation

vcunat
Copy link
Member

@vcunat vcunat commented Jun 18, 2022

*buildInputs take .dev outputs by default, but we don't need it here.
The extra dependency (introduced by commit d172061) was breaking
tests like nixosTests.containers-imperative and nixosTests.installer.*
https://hydra.nixos.org/eval/1767666#tabs-still-fail

*buildInputs take .dev outputs by default, but we don't need it here.
The extra dependency (introduced by commit d172061) was breaking
tests like nixosTests.containers-imperative and nixosTests.installer.*
https://hydra.nixos.org/eval/1767666#tabs-still-fail
@vcunat vcunat requested a review from jtojnar June 18, 2022 09:23
@vcunat
Copy link
Member Author

vcunat commented Jun 18, 2022

@jtojnar: I can't see why .bin was removed in that commit; maybe it wasn't intentional?

@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild 10.rebuild-linux: 1-10 labels Jun 18, 2022
@vcunat
Copy link
Member Author

vcunat commented Jun 18, 2022

I did some local tests and then utilized Hydra's idling x86: https://hydra.nixos.org/eval/1767732#tabs-now-succeed

@jtojnar
Copy link
Member

jtojnar commented Jun 18, 2022

Looks like my mental model of mkDerivation was still off. I thought it worked similarly to buildEnv where it does not really matter what output is specified but it turns out (as I understand it now) that evaluation just runs chooseDevOutputs on inputs, and the other outputs are actually picked up at build time from propagated-build-inputs file, when present in the chosen (dev/out/primary) output.

- /nix/store/r9agajdjagf7vq640fql3j3sbhs588wh-dbus-1.drv:{out}
+ /nix/store/l777vhgbiw55iyac56vs2wjqm52n97z4-dbus-1.drv:{out}
• The set of input derivations named `dbus-1.14.0` do not match
• The set of input derivations named `libxslt-1.1.35` do not match
• The environments do not match:
    buildInputs=''
-    /nix/store/f1vf3qp1pbjrrxnskkaxv4hhl7pqf01p-dbus-1.14.0-dev
+    /nix/store/rq558bchx7fscjzl111lwbfi2dlblhxq-dbus-1.14.0
''
    nativeBuildInputs=''
-    /nix/store/xjvn8093khjzwjhn8ixgqjbiwwlpk6w6-libxslt-1.1.35-dev /nix/store/hgwlwph2989gwpzr4dn5qfql168ns194-hook
+    /nix/store/v9awz1pphpb1dbgc1h38i3mj2h3klvsf-libxslt-1.1.35-bin /nix/store/hgwlwph2989gwpzr4dn5qfql168ns194-hook
''

@bobby285271 bobby285271 added the 12.approvals: 1 This PR was reviewed and approved by one reputable person label Jun 18, 2022
@vcunat vcunat merged commit a80fd0a into NixOS:staging-next Jun 19, 2022
@vcunat vcunat deleted the p/dbus-config-closure branch June 19, 2022 06:08
@vcunat
Copy link
Member Author

vcunat commented Jun 19, 2022

I checked the multi-out docs. They probably haven't changed significantly for years, but I think they do explain this part OK: https://nixos.org/manual/nixpkgs/stable/#sec-multiple-outputs-using-split-packages

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
10.rebuild-darwin: 0 This PR does not cause any packages to rebuild 10.rebuild-linux: 1-10 12.approvals: 1 This PR was reviewed and approved by one reputable person
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants