johnw has quit [Ping timeout: 248 seconds]
andreabedini has joined #nix-darwin
disasm has joined #nix-darwin
carlosdagos has quit [Quit: Connection closed for inactivity]
johnw has joined #nix-darwin
johnw has quit [Ping timeout: 240 seconds]
andreabedini has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
andreabedini has joined #nix-darwin
andreabedini has quit [Quit: Textual IRC Client: www.textualapp.com]
philr has joined #nix-darwin
johnw has joined #nix-darwin
philr has quit [Ping timeout: 260 seconds]
cbarrett has quit [Read error: Connection reset by peer]
trcc has joined #nix-darwin
trcc has quit [Client Quit]
trcc has joined #nix-darwin
<Enzime> LnL: can you let me build things with OfBorg? :)
<Enzime> (Darwin access as well is preferred :p)
<angerman> I keep getting `warning: opening file '/nix/store/zqh23g7arqlrf9cl2iji69rmg3y1is5k-user-environment/default.nix': No such file or directory; will use bash from your environment` when i try nix-shell; anyone got an idea how to fix it?
<Enzime> angerman: how are you trying nix-shell
<Enzime> also, what's in /nix/store/zqh23g7arqlrf9cl2iji69rmg3y1is5k-user-environment
<angerman> Enzime: that one contains `binary-caches darwin manifest.nix nixpkgs`
<angerman> Enzime: nix-shell --pure file.nix -A attr
<angerman> Not sure what the default.nix should look like :(
<Enzime> angerman: running NixOS atm, no default.nix in any of my /nix/store/*-user-environment folders
<angerman> Hmm...
<angerman> Enzime: so ... that user-env is essentially what nixpkgs=/nix/var/nix/profiles/per-user/root/channels points to in NIX_PATH
philr has joined #nix-darwin
<Enzime> ah I see
<Enzime> for me I have binary-caches nixos manifest.nix in my user-environment at that folder
<Enzime> there is a default.nix inside nixos/
<angerman> yea that would be in nixpkgs as well.
<angerman> Enzime: any alternative way to get into the nix-build step without nix-shell?
<Enzime> what's your file.nix look like?
<Enzime> angerman: is this just on macOS or also NixOS?
<angerman> should probably work on both
<Enzime> not sure tbh
<Enzime> might want to ask on #nixos
<angerman> Enzime: I routinely run it through a x86_64 linux builder
<angerman> ahh... so if I stub out nixpkgs, I get `warning: attribute 'bashInteractive' missing, at (string):1:1; will use bash from your environment` lovely.
<angerman> Let's see if pointing `nixpkgs` to some nixpkgs checkout works.
<angerman> hey, that worked.
<angerman> so now wtf is wrong with my NIX_PATH?
<LnL> angerman: it should be nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixpkgs or /nix/var/nix/profiles/per-user/root/channels
<LnL> unless this is on nixos, that uses the 'nixos' channel
<angerman> I'll have to experiment with that.
<LnL> a named NIX_PATH entry has to point at an actual expression, not a set like you can do with unnamed entries
<LnL> Enzime: https://github.com/NixOS/ofborg#guidelines, create a pr to request access but I'd wait with trusted until you contributed a bit more
<LnL> and yeah, nix-shell gets a bit unhappy if it can't find a nixpkgs because using bash from PATH has some problems
<angerman> can I start a sandbox with nix-shell?
<angerman> I'm running into some $TMP reuse issues :(
alexteves has joined #nix-darwin
<LnL> no, the best isolation you can get is --pure
<angerman> that still gives the same $TMP, dang.
<LnL> and if this is /tmp instead of $TMPDIR you wouldn't even get isolation with sandboxing, we can't create a per-user mount like linux does
hamishmack has joined #nix-darwin
gu3 has joined #nix-darwin
<gu3> Hi, I was wondering if some version of GHC (8.x) in OSX is available in the nix binary cache. It's taking forever to compile. :-/
<LnL> 8. what?
<LnL> 8.4.3 is the default now and will have a cache for the entire haskell set
<gu3> 8.0.2 or 8.2.2 for instance
<gu3> maybe the binary cache is not working for some reason?
<gu3> (locally)
<LnL> 18.03 has 8.2.2 if you can't use 8.4
<LnL> nix-build channel:nixpkgs-18.03-darwin -A ghc
<gu3> Thanks a lot! :)
gu3 has quit [Ping timeout: 252 seconds]
trcc has quit [Remote host closed the connection]
ryanartecona has joined #nix-darwin
philr has quit [Quit: WeeChat 2.2]
johnw has quit [Ping timeout: 240 seconds]
alexteves has quit [Remote host closed the connection]
alexteves has joined #nix-darwin
johnw has joined #nix-darwin
<zimbatm> LnL: can you dump a bit more context on me about the apple frameworks?
<zimbatm> I am trying to come with a definitive version
<zimbatm> I have a commit with a much simplified logic but it's not perfect yet
<zimbatm> the issue is that there is a mix of sub-frameworks. some of them are part of the framework and some of them are symlinks to other system-level frameworks
<zimbatm> so to reproduce things properly we could have to restore the mapping as well
<zimbatm> the aim at the end is that the only different between the derivation output and the system one would be the path references
<zimbatm> how often does Apple break backward-compatibility on those frameworks?
ryanartecona has quit [Quit: ryanartecona]
<LnL> I think they generally don't, but having builds fine new stuff that's potentially not on the deployment target can cause problems
<LnL> depends a bit on how you implemented it, but the biggest potential problem is eg. depending on those system paths to discover subframeworks
<zimbatm> basically I am trying to simplify the linkFramework() bit
<LnL> if you do that the contents of the store path might be different depending on what machine it was built on
<zimbatm> one strategy might be to `cp -r` the framework from the sdk, then look the corresponding framwork on the system and symlink the missing bits
<zimbatm> right, I am trying to figure out how much should be brought up to the nix level
<LnL> that sounds ok
<zimbatm> potentially we could have the whole file map described in nix
<zimbatm> so nothing has to be scanned in the system frameworks
<zimbatm> ok
<LnL> just as soon as you start depending on eg. $(ls /System/...) we get problems
philr has joined #nix-darwin
<zimbatm> yeah so that has been a problem in the past?
<LnL> we had that before with Libsystem where we queried the libraries that the system dylib links against
<zimbatm> because macOS wants to be treated more and more like a immutable disk image
<LnL> and at some point we had a mix of 10.11 and 10.12 machines causing all sorts of annoying problems as a result
<zimbatm> ok
<zimbatm> so now I am thinking that I need to build a script to generate the filesystem map to nix code
<LnL> yeah, so if you can get enough information from the sdk sources that would be nice
<LnL> otherwise we need to model it in nix somewhere
<zimbatm> okay I see
<zimbatm> painful ^_^
<LnL> yeah, impurities are hard...
<zimbatm> so you have to run the script on the old Darwin so it's forward-compatible right?
<LnL> for Libsystem we basically use the overlapping set of all supported versions, but I'm not sure if it's important here
<zimbatm> ok so I will start building the script. I only have highsierra available so it will have to be checked later
<zimbatm> hopefully there won't be any cyclic dependencies
<LnL> in general only new frameworks get added so using it on an older version would just result in some broken symlinks, that's fine I think
<LnL> but I could be wrong
ryanartecona has joined #nix-darwin
<zimbatm> thanks, we'll see :)
<zimbatm> thanks for all the info!
ryanartecona has quit [Client Quit]
philr has quit [Ping timeout: 240 seconds]
Ericson2314 has joined #nix-darwin
ryanartecona has joined #nix-darwin
Ericson2314 has quit [Ping timeout: 244 seconds]
ryanartecona has quit [Quit: ryanartecona]
Ericson2314 has joined #nix-darwin
Sonarpulse has joined #nix-darwin
Ericson2314 has quit [Ping timeout: 244 seconds]
gleber_ has quit [Ping timeout: 255 seconds]
gleber_ has joined #nix-darwin
Sonarpulse has quit [Ping timeout: 240 seconds]
hamishmack has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
johnw has quit [Ping timeout: 240 seconds]
johnw has joined #nix-darwin
hamishmack has joined #nix-darwin
carlosdagos has joined #nix-darwin