!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

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

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


SenderMessageTime
22 Oct 2025
@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
@reckenrode:matrix.orgRandy EckenrodeWould that make Darwin’s having the only two hooks that take arguments?01:23:20
@emilazy:matrix.orgemily I've been working on proper support for scopes etc. for by-name 01:23:25
@emilazy:matrix.orgemilyso the magic filename stuff probably can't last forever anyway :)01:23:35
@emilazy:matrix.orgemilythough ideally we just get Swift Build working and don't have to maintain our own build systems for it all any more01:23:55
@debtquity:matrix.orgdebtquityseems some applications that rely on gtk are breaking on unstable01:23:56
@reckenrode:matrix.orgRandy Eckenrode What do you mean by scopes for by-name? Like there would be a pkgs/python/by-name? 01:23:59
@emilazy:matrix.orgemilywhich would also cut down on the boilerplaet a lot01:24:08
@emilazy:matrix.orgemily* which would also cut down on the boilerplate a lot01:24:11
@reckenrode:matrix.orgRandy Eckenrode I wish the by-name infrastructure were exposed as a function. 01:24:27
@emilazy:matrix.orgemily that's already possible-ish (tclPackages moved to by-name and there's a draft for Python), what isn't possible is scopes that are inside pkgs/by-name itself 01:24:42
* @reckenrode:matrix.orgRandy Eckenrode goes to look at the implementation.01:26:52
@reckenrode:matrix.orgRandy Eckenrode It’s importing by-name-overlay.nix. 01:27:24
@emilazy:matrix.orgemilythat will probably end up abstracted away in the process yeah01:27:39
@emilazy:matrix.orgemily(although in practice it is just going to be the automatic path for scopes rather than something you have to think about)01:28:02
@reckenrode:matrix.orgRandy Eckenrode Which is different from lib.packagesFromDirectoryRecursive. 01:28:06
@reckenrode:matrix.orgRandy Eckenrode I want to move Darwin to the by-name-overlay for 25.11. 01:28:32
@reckenrode:matrix.orgRandy Eckenrode * I want to move Darwin to the by-name-overlay for 26.05. 01:29:10
@reckenrode:matrix.orgRandy Eckenrode Switch from lib.packagesFromDirectoryRecursive to the overlay and get rid of the randomly ordered list of callPackage. 01:29:15

Show newer messages


Back to Room ListRoom Version: 6