| 18 Jan 2026 |
Randy Eckenrode | I will probably be keeping it in development/swift/compilers when it lands but using the by-name stuff like Tcl does. | 11:33:17 |
Randy Eckenrode | For now, I’m going to continue with it like this because it preserves the old packages for reference. | 11:34:06 |
Randy Eckenrode | emily had talked about the possibility of everything being moved to by-name for 26.05, which would include package sets. I was trying to get out in front of that. If it’s not ready when Swift lands, it will be where it has to be to satisfy the checks. | 11:52:56 |
Sarah Clark | I'm running into a problem where fetchFromGitHub expects one hash on darwin and another on linux. The sources are not being pulled from the build cache but directly from github. https://github.com/NixOS/nixpkgs/pull/477051 The issue appears to be some docs artifacts that use mixed-case filenames. Help? | 18:35:16 |
samasaur | you could probably just use postFetch to wipe out the conflicting files on linux so that the hash matches | 18:38:56 |
samasaur | though I'm not sure whether the behavior of case-insensitive APFS is deterministic as to which files remain | 18:40:25 |
Sarah Clark | That's a new one to me. Thanks! | 18:42:46 |
samasaur | actually uhhh. do you need docs/ at all? if not you could just rm -rf docs/ in postFetch and then you're definitely fine, because all the case-sensitive files are in that folder | 18:42:56 |
Sarah Clark | I don't need docs, so rm -rf it is. | 18:45:52 |
samasaur | that should be rm -rf $out/docs, sorry | 18:45:59 |
samasaur | but yeah if you don't need docs that sounds easiest | 18:46:07 |
samasaur | I would ofc leave a comment explaining why you're doing so | 18:46:57 |
Sarah Clark | Did so :) | 18:58:03 |
Sarah Clark | Nuts, that wasn't it. | 18:59:04 |
samasaur | drat. same issue of different hashes? | 18:59:25 |
Sarah Clark | Yes | 18:59:51 |
samasaur | huh I get the same hash on both aarch64-darwin and x86_64-linux | 19:03:11 |
samasaur | with
src = fetchFromGitHub {
owner = "googleapis";
repo = "google-api-python-client";
tag = "v${version}";
hash = "sha256-uNvsWCfoT+wp6UnbDP5QS7Os2FnEsTzusdGZ9lD/LwY=";
postFetch = ''
rm -rf $out/docs/
'';
};
| 19:03:58 |
samasaur | (that's for 2.188.0) | 19:04:19 |
Sarah Clark | Looks like squashing the changed commit picked up the old hash | 19:06:06 |
Sarah Clark | (So, it's on me) | 19:06:18 |
Sarah Clark | Wait a minute, I'm getting
| 19:07:11 |
Sarah Clark | * Wait a minute, I'm getting
error: hash mismatch in fixed-output derivation '/nix/store/lhhlcs14jx2qlcmvba4clg2xfhn4c97p-source.drv':
likely URL: (unknown)
specified: sha256-uNvsWCfoT+wp6UnbDP5QS7Os2FnEsTzusdGZ9lD/LwY=
got: sha256-WLSN0hsYPOGGykJqPEp4qtbNPJQvvQryQpmkx1D+ICc=
| 19:07:41 |
Sarah Clark | Where WLSN... is the old hash. back to the editor, muttering | 19:10:15 |
samasaur | hmm i'm not sure | 19:11:10 |
samasaur | if it's helpful i can push/pastebin exactly what I have that's working | 19:11:23 |
Sarah Clark | Ohhhhh...wait, postFetch goes inside fetchFromGitHub | 19:17:33 |
samasaur | ah yeah that'd do it | 19:17:51 |
Sarah Clark | And it did | 19:19:13 |
Sarah Clark | Thank you so much | 19:19:40 |