!lheuhImcToQZYTQTuI:nixos.org

Nix on macOS

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

Load older messages


SenderMessageTime
9 Jul 2025
@sarahec:matrix.orgSarah ClarkSounds plausible.17:14:12
@sarahec:matrix.orgSarah ClarkSo is there a better solution than disabling the failing test(s)?17:14:50
@emilazy:matrix.orgemily you can change build-dir but it risks re-exposing you to CVEs 17:16:56
@emilazy:matrix.orgemilymaybe you can convince the tests to use shorter paths17:17:07
11 Jul 2025
@axman6:matrix.orgAxman6 I think I've asked this before, but asking again because I ran into it again - there's currently no way to get a Universal python via Nix right? The one that macOS ships with (and IIRC the installer from python.org) can build universal stuff when it needs to compile C bits, but the nix provided ones can't. I need to create an executable using pyinstaller, which works fine on aarch64 and x86_64 when using the system python. I had looked into using lipo to combine binaries from the two arches into one, but something conflicts when they're joined (we embed an executable inside this other executable, and I think the two copies conflict in its unpacking, or something ... this sounds a lot like malware now I think about it [and I'm not convinced it's not]) 01:33:38
@reckenrode:matrix.orgRandy EckenrodeDarwin support in nixpkgs is not really set up to do universal builds except in trivial cases (with no dependencies).01:37:56
@zhaofeng:zhaofeng.liZhaofeng Li

embed an executable inside this other executable

Oof, this will be a problem if you ever want to adopt app sandboxing. Also you have tried that it passes notarization, right?

01:41:49
@axman6:matrix.orgAxman6the embedded executable is also signed, and seems to work fine03:29:16
@zhaofeng:zhaofeng.liZhaofeng Liif app sandboxing is enabled, any file you drop will be quarantined and trigger gatekeeper if you execute/dlopen03:32:26
@zhaofeng:zhaofeng.liZhaofeng Lidlopen'ing a signed dylib that already exists in the user's downloads folder does work though03:33:27
@zhaofeng:zhaofeng.liZhaofeng Li* dlopen'ing a signed, non-quarantined dylib that already exists in the user's downloads folder does work though03:33:37
@zhaofeng:zhaofeng.liZhaofeng Libut this is quickly veering into malware-like territory 🫠03:33:58
@zhaofeng:zhaofeng.liZhaofeng Lianyways, curious to know if it can pass notarization, and whether still passes if the embedded binary does not meet requirements (unsigned, does not have hardened runtime enabled, etc.)03:54:33
@szlend:matrix.orgszlendI wonder if the build-dir change makes case-sensititive nix store viable on macos10:58:50
@szlend:matrix.orgszlendOne of the issues before the change was that you'd still be building on /tmp (case insensitive) and then move it to /nix/store (which would be case sensitive)11:00:21
@szlend:matrix.orgszlendbut now it's all on the same volume11:00:35
@emilazy:matrix.orgemily the Lix side (who the build-dir change was imported from) have been working towards that, yeah 11:00:57
@emilazy:matrix.orgemilythere's some missing pieces still11:01:03
@emilazy:matrix.orgemily e.g. some stuff goes into temp-dir (which Nix doesn't have IIRC) and I think some into $XDG_CACHE_HOME, so the latter would have to move if relevant and the former will need to go under /nix and be cleaned up by the daemon 11:01:42
@emilazy:matrix.orgemily and use-case-hack needs to become per-store rather than global which is a WIP in Lix I believe 11:01:57
@emilazy:matrix.orgemilyand then it'll be possible to flip the installer default and do migration tooling11:02:09
@emilazy:matrix.orgemilypeople have run case-sensitive stores for a good while now though11:02:28
@emilazy:matrix.orgemilyit's mostly just worked for me11:02:32
@emilazy:matrix.orgemilyjust need to set up the temporary dir and disable the case hack and deal with potentially having to manually clean up sometimes11:03:18
@szlend:matrix.orgszlendfun times ahead11:05:58
@szlend:matrix.orgszlendcan you actually covert to a case sensitive volume without a full copy?11:06:17
@szlend:matrix.orgszlendmigrating this sounds quite awful :D11:06:37
@emilazy:matrix.orgemilynope, it will be a full copy11:07:36
@emilazy:matrix.orgemilypost-GC though11:07:42
@reckenrode:matrix.orgRandy Eckenrode Seems like you could create a new store volume in the same container and cp the old store. 11:07:45

Show newer messages


Back to Room ListRoom Version: 6