Skip to content

Conversation

@K900
Copy link
Contributor

@K900 K900 commented Oct 14, 2024

This may have been relevant 10 years ago ([DOUBT]), but it sure as hell isn't now, and recursive symlinks are evil.

May it burn in hell, as that is where it belongs.

I've built both Qt versions and all three GTKs, which should hopefully contain most of the blast radius, but there's definitely a chance of a lot of random leaf packages breaking here, so I'm not sure if we want to rush it in before 24.11.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • 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/)
  • 24.11 Release Notes (or backporting 23.11 and 24.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.

Add a 👍 reaction to pull requests you find important.

@K900 K900 mentioned this pull request Oct 14, 2024
@SuperSandro2000
Copy link
Member

Does this cause issues or is just a cleanup? If the later we could just schedule it for next stable to be on the chilled side.

@K900
Copy link
Contributor Author

K900 commented Oct 14, 2024

Technically, it can cause issues. In practice, I really doubt it will.

@vcunat
Copy link
Member

vcunat commented Oct 14, 2024

I get that it solves the linked issue, too? (an argument to have this PR in 24.11)

@K900
Copy link
Contributor Author

K900 commented Oct 14, 2024

For this specific package, yes. Generally, this is a buildEnv / symlink loops issue, and I think the endgame should be to just ban symlink loops treewide.

@K900
Copy link
Contributor Author

K900 commented Oct 14, 2024

@ofborg eval

1 similar comment
@K900
Copy link
Contributor Author

K900 commented Oct 14, 2024

@ofborg eval

@K900 K900 force-pushed the what-is-this-even branch from af549eb to 0b9aa54 Compare October 14, 2024 10:19
@ofborg ofborg bot requested a review from ttuegel October 14, 2024 13:19
@ofborg ofborg bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels Oct 14, 2024
This may have been relevant 10 years ago ([DOUBT]), but it
sure as hell isn't now, and recursive symlinks are evil.

May it burn in hell, as that is where it belongs.
@K900 K900 force-pushed the what-is-this-even branch from 0b9aa54 to 54874b3 Compare October 14, 2024 13:45
@K900 K900 merged commit 2da95a2 into NixOS:staging Oct 14, 2024
23 checks passed
@trofi
Copy link
Contributor

trofi commented Oct 15, 2024

Bisect says 54874b3 treewide: drop flattenInclude hack broke at least dmenu on staging as:

$ nix build --no-link -f. dmenu -L
...
dmenu> build flags: SHELL=/nix/store/mm0pa3z7kk6jh1i9rkxqxjqmd8h1qpxf-bash-5.2p37/bin/bash CC:=\$\(CC\)
dmenu> cp config.def.h config.h
dmenu> gcc -c -std=c99 -pedantic -Wall -Os -I/usr/X11R6/include -I/usr/include/freetype2 -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 -D_POSIX_C_SOURCE=200809L -DVERSION=\"5.3\" -DXINERAMA dmenu.c
dmenu> In file included from dmenu.c:17:
dmenu> /nix/store/2rxphcg0qabc3a8c4lvy610sm03bh72y-libXft-2.3.8-dev/include/X11/Xft/Xft.h:40:10: fatal error: ft2build.h: No such file or directory
dmenu>    40 | #include <ft2build.h>
dmenu>       |          ^~~~~~~~~~~~
dmenu> compilation terminated.
dmenu> make: *** [Makefile:12: dmenu.o] Error 1

@trofi
Copy link
Contributor

trofi commented Oct 15, 2024

Proposed dmenu fix as:

@K900 K900 deleted the what-is-this-even branch July 27, 2025 10:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants