!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

1136 Members
“There are still many issues with the Darwin platform but most of it is quite usable.” — http://yves.gnu-darwin.org180 Servers

You have reached the beginning of time (for this room).


SenderMessageTime
21 Oct 2025
@dbaynard:matrix.orgdbaynard *
> nix build -L '.#libtree.tests.checkCoreUtils' --no-link --print-out-paths
/nix/store/40xm11r0sklkl4x5cp8xdckp5sha0yfd-libtree-ls-test

> nix build -L '.#libtree.tests.checkCoreUtils' --no-link --print-out-paths | xargs bat
───────┬──────────────────────────────────────────────────────────────────────────────────────────────
       │ File: /nix/store/40xm11r0sklkl4x5cp8xdckp5sha0yfd-libtree-ls-test
───────┼──────────────────────────────────────────────────────────────────────────────────────────────
   1   │ /nix/store/x2s54dnz7kd4vbslfcv1x3g69p30fz7y-coreutils-aarch64-unknown-linux-gnu-9.7/bin/ls
   2   │ ├── libacl.so.1 [runpath]
   3   │ │   └── libattr.so.1 [runpath]
   4   │ ├── libattr.so.1 [runpath]
   5   │ └── libgmp.so.10 [runpath]
───────┴──────────────────────────────────────────────────────────────────────────────────────────────

This is the test result, making the above change to use the pkgsCross (but not pkgsStatic!) coreutils.

23:47:21
@dbaynard:matrix.orgdbaynardThanks for your help. I should have been more explicit that this is working, reasonably, for me (I haven't used all the functionality but I have found it useful as a tool that works on macos that can analyze ELFs). I'll ask in the cross compile channel, when I return to this.23:50:07
@emilazy:matrix.orgemilyno worries :)23:50:38
@emilazy:matrix.orgemily I agree with Randy Eckenrode about the best way to test it 23:50:44
@emilazy:matrix.orgemily pull in clang-unwrapped on all platforms and make a couple basic .sos with --target= 23:51:16
@emilazy:matrix.orgemily no need for pkgsCross 23:51:25
22 Oct 2025
@reckenrode:matrix.orgRandy Eckenrodehttps://github.com/NixOS/nixpkgs/pull/45440200:37:38
@reckenrode:matrix.orgRandy EckenrodeDarwin source release updates to 15.600:37:42
@reckenrode:matrix.orgRandy Eckenrode * 00:39:25
@emilazy:matrix.orgemilywill try to take a look at this tomorrow00:39:43
@reckenrode:matrix.orgRandy EckenrodeThere were some build changes, but I rolled most of it into the 14.0 PR.00:40:19
@emilazy:matrix.orgemilydid you see https://github.com/NixOS/nixpkgs/pull/453094 and https://github.com/NixOS/nixpkgs/pull/453106 btw?00:40:26
@emilazy:matrix.orgemily (these actually come out of… me looking into .override interfaces) 00:42:03
@emilazy:matrix.orgemily(long story)00:42:42
@reckenrode:matrix.orgRandy Eckenrode I got the mkAppleDerivation interface from the FreeBSD stuff. Is there no way to use it after https://github.com/NixOS/nixpkgs/pull/453094 without a full stdenv? 00:47:27
@emilazy:matrix.orgemily it's kinda impossible to properly support with finalAttrs in general I think 00:55:19
@emilazy:matrix.orgemily because what gets passed as finalAttrs could depend on the stdenv in theory 00:55:29
@emilazy:matrix.orgemily it only affects a single package so I decided it wasn't worth messing with (I'd rather move mkAppleDerivation over to use hooks etc. instead) 00:56:07
@emilazy:matrix.orgemily (but the stdenv is only determined by finalAttrs.noCC/finalAttrs.noBootstrap) 00:56:20
@emilazy:matrix.orgemily unifdef already requires stdenv anyway, so darwin.AvailabilityVersions is not really helped by avoiding it, it'd mostly matter for cross scenarios I suppose 00:57:57
@reckenrode:matrix.orgRandy Eckenrode Overall, it seems fine. What did you have in mind about hooks and helper functions? The point of mkAppleDerivation is to minimize boilerplate in the source release derivations. The Xcode version check is already a hook. The Meson stuff can’t be a hook. It’s horrible, but I would like to work towards using Swift Build with a private SDK to build the source releases instead of using Meson. 01:15:19
@reckenrode:matrix.orgRandy Eckenrode * Overall, it seems fine. What did you have in mind about hooks and helper functions? The point of mkAppleDerivation is to minimize boilerplate in the source release derivations. The Xcode version check is already a hook. The Meson stuff can’t be a hook. It’s horrible, but I would like to work towards using Swift Build with an internal SDK to build the source releases instead of using Meson. 01:15:31
@reckenrode:matrix.orgRandy EckenrodeI considered adding dtrace, cherry-picking from the PR, but I didn’t want to sink a lot more time into the update.01:16:42
@emilazy:matrix.orgemily the Meson stuff could be a hook other than the magic filename lookup stuff, which is a bit evil anyway IMO (and IIRC caused issues with the DTrace PR?), but I agree that Swift Build would be nice. src could be set with a helper function and meta could be inherited 01:19:01
@emilazy:matrix.orgemily but the reason to switch to lib.extendMkDerivation is that it makes .overrideAttrs etc. actually work properly 01:19:54
@emilazy:matrix.orgemily and avoids the results having a somewhat dodgy .override (albeit one that is clobbered by callPackage in practice) 01:20:21
@reckenrode:matrix.orgRandy Eckenrode The magic filename stuff is largely the point of the Meson stuff. It’s to reduce the boilerplate of copying in the files and setting the version/etc. With Swift Build, we don’t need that stuff at all. You could just use swiftBuildHook (or whatever it gets called) and the internal SDK. 01:20:31
@reckenrode:matrix.orgRandy Eckenrode Inheriting meta seems worse. You would end up with every derivation copying and pasting meta = { description = "blah"; inherit (standardMeta) etc etc etc; }. 01:21:36
@emilazy:matrix.orgemily it could be done with (magicMesonHook ./.) or similar though 01:22:39
@reckenrode:matrix.orgRandy EckenrodeTrue.01:23:03

Show newer messages


Back to Room ListRoom Version: 6