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

bochs: move to by-name hierarchy #254284

Merged
merged 1 commit into from
Sep 10, 2023
Merged

bochs: move to by-name hierarchy #254284

merged 1 commit into from
Sep 10, 2023

Conversation

AndersonTorres
Copy link
Member

Description of changes

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux labels Sep 9, 2023
@AndersonTorres AndersonTorres marked this pull request as ready for review September 10, 2023 01:02
@AndersonTorres AndersonTorres merged commit 7d3ee72 into NixOS:master Sep 10, 2023
@AndersonTorres AndersonTorres deleted the bochs branch September 10, 2023 12:43
, libtool
, ncurses
, pkg-config
, readline
, wget
, wxGTK
, wxGTK32
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh this is actually a bit concerning. This is a breaking change because .override { wxGTX = ...; } doesn't work anymore. I don't think we should make these changes until we have a better story for that, even if this allows removing definitions from all-packages.nix.

Note that even if you need custom arguments, you can still use the pkgs/by-name directory.

Copy link
Member Author

@AndersonTorres AndersonTorres Sep 11, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bochs didn't update their dependencies yet (they are more concerned about optimizing the emulation core), so overriding wxGTK to other version than that specific one will not work.
I considered the "all-packages-mode" but it didn't feel useful.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overrides can also be used to just make minor changes to packages, e.g.

.override (old: {
  wxGTK = old.wxGTK.overrideAttrs ...;
})

Similarly the darwin change could also cause breakage, consider:

.override {
  libobjc = ...;
}

These overrides would now silently not do anything anymore.

Of course, Nixpkgs has always not really enforced not having such breakages, but the migration to pkgs/by-name should not cause more of these to happen. This is a problem to be fixed in the future.

I opened #254632 to have this written down.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similarly the darwin change could also cause breakage

That Darwin-specific things were always problematic to me, since the splicing incident (that, among other things, break inherit (X) a b c; design pattern).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yeah that also messes with it, there's definitely many things to be improved. I feel like the custom argument one might be the next one to dig into.

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 on Darwin 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants