!LemuOOvbWqRXodtSsw:nixos.org

NixOS Reproducible Builds

485 Members
Report: https://reproducible.nixos.org Project progress: https://github.com/orgs/NixOS/projects/30105 Servers

Load older messages


SenderMessageTime
25 Aug 2024
@ss:someonex.netSomeoneSerge (utc+3) joined the room.23:03:45
26 Aug 2024
@adis:blad.is@adis:blad.is

I found a reproducibility bug yesterday: https://github.com/NixOS/nixpkgs/issues/337209
The kernel version of the builder causes a Python check hook to fail/succeed depending on the uname of the builder.

It's because of platform_release from https://peps.python.org/pep-0508/#environment-markers

Conceptually the fix is pretty easy: We scrub platform_release and platform_version from the environment.
My problem is that I don't even know what to set them to.
We can probably skip platform_version, but platform_release needs to be a valid version number.

02:29:21
@emilazy:matrix.orgemilypin it to something bigger than any current Linux/macOS/etc. kernel release I guess?02:30:44
@emilazy:matrix.orgemilyprobably relatively few stuff will treat the latest kernel and really new ones differently02:30:55
@emilazy:matrix.orgemilyalternatively we could pin it to the lowest we support on all platforms02:31:01
@emilazy:matrix.orgemilyalthough I don't know if anyone has actually decided what we support for Linux lol02:31:08
@adis:blad.is@adis:blad.is
In reply to @emilazy:matrix.org
although I don't know if anyone has actually decided what we support for Linux lol
Using the version of linuxHeaders would make sense there I think
02:31:38
@emilazy:matrix.orgemily sounds reasonable. and for macOS, apple-sdk (when it exists in a few weeks) 02:32:00
@emilazy:matrix.orgemily though actually you want the darwinMinVersion I guess 02:32:15
@emilazy:matrix.orgemilyand for other platforms, ???02:32:22
@adis:blad.is@adis:blad.is
In reply to @emilazy:matrix.org
and for other platforms, ???
I'm inclined to set it to an empty string on those and let the hook fail loudly
02:32:49
@adis:blad.is@adis:blad.is It will only fail for builds which reference platform_release 02:33:00
@emilazy:matrix.orgemilyI take it setting it to an empty string in general isn't viable?02:33:06
@adis:blad.is@adis:blad.isAnd if we can't do something correct we might as well fail02:33:17
@adis:blad.is@adis:blad.is
In reply to @emilazy:matrix.org
I take it setting it to an empty string in general isn't viable?
No. That was my initial attempt but that trips up the version parser
02:33:34
@emilazy:matrix.orgemilyright02:33:47
@emilazy:matrix.orgemilyIMO, platforms should actually expose this information02:33:59
@emilazy:matrix.orgemilythe "minimum supported version of the platform"02:34:04
@emilazy:matrix.orgemilyrather than Python stuff having to figure it out02:34:15
@qyliss:fairydust.spaceAlyssa RossWe have a fake uname package08:31:48
@qyliss:fairydust.spaceAlyssa RossAlthough I think here setting it to linuxHeaders.version probably makes sense.08:32:15
@emilazy:matrix.orgemilywhat does that one output? :)14:10:54
@emilazy:matrix.orgemilywe should align them in any case14:10:58
@emilazy:matrix.orgemily and add a fake sw_vers to match, that came up recently 14:11:04
@qyliss:fairydust.spaceAlyssa RossI don't know. tbh I'm not a fan.14:27:44
@emilazy:matrix.orgemilybecause you'd prefer to patch stuff?14:28:01
@qyliss:fairydust.spaceAlyssa Rossyeah14:28:24
@emilazy:matrix.orgemily adisbladis: fwiw apparently macOS already scrubs this info for Python https://matrix.to/#/!lheuhImcToQZYTQTuI:nixos.org/$d2JnDxYdhDRsYkHK84BfURKIr4LVjWNiKHAdjVHrmNo?via=nixos.org&via=matrix.org&via=nixos.dev 14:30:11
@emilazy:matrix.orgemilyand it has caused a few issues, so be aware if you follow suit14:30:19
@sliedes:hacklab.fiSami Liedes joined the room.22:14:24

Show newer messages


Back to Room ListRoom Version: 6