Nix on macOS | 1203 Members | |
| “There are still many issues with the Darwin platform but most of it is quite usable.” — http://yves.gnu-darwin.org | 201 Servers |
| Sender | Message | Time |
|---|---|---|
| 15 Apr 2026 | ||
| https://github.com/Wawona/Wawona/ there is now a successor to the owl compositor | 09:01:42 | |
| * https://github.com/Wawona/Wawona/ there is now a successor to the owl compositor this apparently works on iOS too. | 09:47:51 | |
| * https://github.com/Wawona/Wawona/ there is now a successor to the owl compositor this apparently works on iOS/Android too. | 09:48:05 | |
| eveeifyeve: The issue is that Homebrew itself does not understand multi-user setups. All homebrew setup on one machine belongs to one user - on a multi-user machine it might be work creating a user homebrew for just homebrew. | 14:38:55 | |
| https://github.com/NixOS/nixpkgs/pull/506470#issuecomment-4252904631 | 16:51:17 | |
| 😕 | 16:51:25 | |
| I'm not able to reproduce the failure either. I hope it’s just something like the channel hasn’t advanced yet on Darwin. | 17:17:39 | |
i keep getting Killed: 9 immediately after running a specific version of ffmpeg :(e.g. /nix/store/6a5nr567sb4a36lisa6gydpp3bfij1vv-ffmpeg-8.0-bin/bin/ffmpeg -version IMMEDIATELY gets killed, but /nix/store/nsrc95cdywj31amg8pz6ncbsn9y5a0a6-ffmpeg-8.0.1-bin/bin/ffmpeg -version works fineand... codesign -vv says the first one isn't valid, but the second one is....and yet, even after doing codesign --sign - --force --preserve-metadata=entitlements,requirements,flags,runtime on the first one, it still gets killed...it looks like https://github.com/NixOS/nixpkgs/issues/208951, but all this is telling me is "macOS is weird sometimes and nobody knows why" am i the only one getting this? is there any workaround? i tried nix store repair, doesn't work | 23:13:05 | |
| now im just scared this can happen to any binary ever | 23:13:23 | |
| It can potentially. If you scroll up a few days, there's been a chat about it | 23:54:16 | |
| 16 Apr 2026 | ||
| 01:40:12 | |
| Yay. | 01:40:14 | |
| anyone familiar with flake-parts, i need to expose a package (output of pkgs.writeShellApplication) only on macos on my flake, is there an easy way of doing this with flake parts? Also, the "normal" way of flake .packages.aarch64-darwin is not working inside of a flake-parts module https://termbin.com/iohy | 02:22:11 | |
In reply to @xored:xored.lolMight just set meta.platforms to darwin, that way the package won’t build elsewhere; not great if you want perfect flake metadata but it’ll do the trick | 02:41:45 | |
| https://github.com/NixOS/nixpkgs/pull/510469 updates ld64 and fixes the 26.4 SDK issue. | 02:48:35 | |
| Also incorporates the duplicate RPATH patch. | 02:48:44 | |
| it would be really nice to get https://github.com/NixOS/nixpkgs/pull/506844 reviewed so macvim stops being broken. i just rebased/updated it now that my other vim PR has been merged | 09:14:40 | |
i haven't used flake-parts myself. looking at it right now, it has a whole perSystem thing and it looks like you're supposed to do something like perSystem = { config, pkgs, ... }: { packages.foo = pkgs.callPackage ./foo.nix {}; }? my inclination would be to figure out how you look up the current system (is it just pkgs.stdenv.hostPlatform.system or is there a better way to check, such as is it available just as an argument here?) and to then just conditionally expose a packages.aerospace-focus-fzf package depending on whether that system is darwin. something like perSystem = { lib, config, pkgs, ... }: { packages.${lib.optionalDrvAttr pkgs.stdenv.hostPlatform.isDarwin "aerospace-focus-fzf"} = aerospace-focus-fzf; } | 09:26:49 | |
| I remember the previous discussion about hardening flags, so LGTM. I approved and added it to the merge queue. | 10:42:28 | |
| I tried this with mkIf and some part of flake-parts was referencing the missing platform, I’m not sure what optionalDrv… does but I’ll try later | 12:25:06 | |
I second the suggestion to set meta.platforms to lib.platforms.darwin. That flakes allow packages to vary per system feels like a footgun. You’ll get a worse error message on unsupported platforms (i.e., Nix will complain about a missing attribute instead of telling you the platform is unsupported), and it adds complexity to the flake definition. | 13:15:08 | |
| I can understand the motivation (avoiding the need to eval the package to determine supported platforms), but it makes the UX worse. | 13:18:05 | |
| the problem is I have more than one package that has this issue, e.g the arrs don't build on darwin at this point, so I need to force them on linux only, i've been experimenting with patching pkgs-by-name-for-flake-parts (which handles the linux ones), but I'd need to need how to have it behave properly to begin with | 17:36:53 | |
| and I have meta.badPlatforms on the arrs btw, nix screams on refusing to evaluate | 17:37:34 | |
| * the problem is I have more than one package that has this issue, e.g the arrs don't build on darwin at this point, so I need to force them on linux only, i've been experimenting with patching pkgs-by-name-for-flake-parts (which handles the linux ones), but I'd need to know how to have it behave properly to begin with | 17:39:36 | |
optionalDrvAttr cond s is just if cond then s else null, so this avoids defining the key unless the condition holds | 18:03:52 | |
(technically that method exists to use for derivation attributes, because nulls get omitted from the environment, but it works equally well as shorthand for "${if cond then "key" else null} = value syntax) | 18:04:56 | |
* (technically that method exists to use for derivation attributes, because nulls get omitted from the environment, but it works equally well as shorthand for "${if cond then "key" else null} = value; syntax) | 18:05:06 | |
i guess the other idea is to see if you can do this in the top-level flake section, if you define e.g. flake.packages.aarch64-darwin.aerospace-focus-fzf maybe that will get merged with the perSystem stuff? | 18:07:34 | |
unfortunately flake-parts does something weird with flake.packages and i can't seem to export packages that way (i believe it tries to transpose system into it, I might be wrong | 18:10:56 | |