!VRULIdgoKmKPzJZzjj:nixos.org

Nix Hackers

908 Members
For people hacking on the Nix package manager itself191 Servers

Load older messages


SenderMessageTime
23 Aug 2024
@jade_:matrix.orgjade_
In reply to @niksnut:matrix.org
How does that explain the minutes-long slowdown on macOS and some docker containers?
oh that's a different bug sorry
18:29:50
@niksnut:matrix.orgniksnutnot sure we're talking about the same issue18:29:50
@kjeremy:matrix.orgkjeremygit bisect?18:38:54
@kjeremy:matrix.orgkjeremy I just saw a post on discourse that is most likely the root of https://github.com/NixOS/nix/issues/7698. I did a quick perf run and noticed that 20% of the time for the pythonCross case is spent in GC_mark_from 21:50:21
24 Aug 2024
@shymega:one.ems.host@shymega:one.ems.host changed their display name from Dom Rodriguez (shymega) to [DEPRECATED] Dom 'shymega' Rodriguez.01:58:29
@summit0:matrix.orgsummit0 joined the room.06:06:40
@cafkafk:gitter.imcafkafk changed their profile picture.07:02:20
@trofi:matrix.orgtrofi Fun fact: glibc does not survive CA-derivation transformation: ld-linux.so has the code that does memcmp("/nix/store/path", p, N) and gcc transforms that into a sequence of movabs $part1, %rax; xorq %rax, %rsi; jne ...; movabs $part2, %rax; ... dilutin the original store path into 8-byte chunks. CA-transformation can't rewrite that and loses paths at https://sourceware.org/git/?p=glibc.git;a=blob;f=elf/dl-load.c;h=8a89b71016d426796e602b60555696649871c6ae;hb=HEAD#l162 12:34:16
@emilazy:matrix.orgemily😱14:20:25
@emilazy:matrix.orgemilydoes that mean GCC breaks conservative root scanning in general?14:21:11
@trofi:matrix.orgtrofiI think so15:13:00
@aloisw:kde.org@aloisw:kde.orgWell, at least that can be worked around by putting a plaintext file containing the reference somewhere.15:16:09
@aloisw:kde.org@aloisw:kde.orgWith CA stuff you're out of luck.15:16:19
@emilazy:matrix.orgemilywe could have some kind of CA rewrite hook thing. not sure what properties that would break.15:17:11
@emilazy:matrix.orgemilyfeeling vindicated in my hopeless opinion that store path self-reference should not be allowed 🫠15:17:41
@emilazy:matrix.orgemily anyway, I assume you could hack around this by inserting whatever black boxes or linker script indirection or whatever is required to make GCC unable to see system_dirs 15:18:37
@aloisw:kde.org@aloisw:kde.org
In reply to @emilazy:matrix.org
feeling vindicated in my hopeless opinion that store path self-reference should not be allowed 🫠
This will only make things worse, since it rejects the cases that do work, while allowing the cases that don't.
15:18:49
@emilazy:matrix.orgemilytrue and fair in this case. I guess what I mean is that we would have already had to patch the world to not do this kind of thing.15:19:27
@emilazy:matrix.orgemily(anyway, I assume the resulting package is ~broken as-is)15:19:39
@aloisw:kde.org@aloisw:kde.org
In reply to @aloisw:kde.org
This will only make things worse, since it rejects the cases that do work, while allowing the cases that don't.
Well, allowing some of the cases that don't, things where only a checksum is broken would now be rejected too.
15:20:36
@trofi:matrix.orgtrofi We can disable CA derivation on glibc if really needed. But it would be even nicer if nix was able to detect unstable derivations at least in --check mode: https://github.com/NixOS/nix/issues/5336 15:21:51
25 Aug 2024
@accelbread:matrix.org@accelbread:matrix.org left the room.03:42:38
@lineararray:matrix.orgLinearArray changed their profile picture.05:01:34
@tomberek:matrix.orgtomberekReverted the "/proc/homeless-shelter" PR due to it breaking existing Nixpkgs behavior.17:09:58
@puck:puck.moepuck i still believe this was an entirely misguided attempt to fix a completely different issue here, one specifically to do with building nix under an unsandboxed (or not properly sandboxed) environment, when looking at https://github.com/NixOS/nix/issues/11295 17:12:12
@aloisw:kde.org@aloisw:kde.orgSingle-user sandbox is not unsandboxed.17:15:35
@puck:puck.moepuck yeah, i got that much from the fact it worked entirely unsandboxed. but that still raises the question of what kind of sandbox it was running in, and what was missing 17:17:07
@aloisw:kde.org@aloisw:kde.orgIt is running in the single-user sandbox, where you can write to the root filesystem (potentially after a chmod, don't remember the details) because it's not mounted read-only.17:18:00
@puck:puck.moepuck it's hard to figure out what is exactly going on here because it's not a build in WSL2 that's failing, but a build inside a build that is 17:19:52
@aloisw:kde.org@aloisw:kde.org You don't even need WSL2, just build Nix (needs to be cppnix, Lix has a workaround) using an unprivileged user while pointing --store to some path. 17:22:49

Show newer messages


Back to Room ListRoom Version: 6