<abathur>
the usage info on Catalina describes it as " -B : bootstrap the root filesystem"
<abathur>
in Big Sur it's described as "-t stitches and creates synthetic objects on root volume group"
<antifuchs>
Hmmm. So something would have to run this at boot time?
<abathur>
no, the system will process it at boot time, but we're able to force it to happen that way during the install so that the install doesn't have to have an intermission :)
LnL has quit [Quit: exit 1]
<abathur>
I mean, behind the scenes I assume they call the same code, but there's nothing active we have to do if we'd prefer to just write to synthetic.conf and reboot
<abathur>
AFAIR all it's really doing is letting you tell the system to create empty directories, for use as mount points or symlink targets, in the read-only root
hedgie has joined #nix-darwin
<abathur>
and then fstab as its own role to play in ensuring the drive actually gets mounted there
<abathur>
er, volume
<abathur>
has anyone done a daemon/multi-user install recently on Catalina? I got the installer working on Mojave but there's also something annoying/dumb happening with the rc/profile stuff
hedgie_ has quit [Ping timeout: 260 seconds]
<abathur>
I'm running the installer naively from zsh, the line to source nix-daemon.sh does get appended to the /etc/bashrc--but not /etc/zshrc, so if I restart my shell like it tells me I get bupkiss
<abathur>
also, if I open bash from zsh, I get nothing as well
<abathur>
if I chsh to bash it'll work
<abathur>
but, anyways, it seems suboptimal; not exactly sure what the installer should do here
hedgie_ has joined #nix-darwin
hedgie has quit [Ping timeout: 244 seconds]
hedgie has joined #nix-darwin
<emily>
antifuchs: do you have AutomountDisksWithoutUserLogin in /Library/Preferences/SystemConfiguration/autodiskmount?
<emily>
it seems like that turning that on was going to be added to the upstream installer at one point but then got removed, wonder if it could relate to these problems -- seems to relate to only mounting potentially removable drives on login
hedgie_ has quit [Ping timeout: 260 seconds]
hedgie_ has joined #nix-darwin
hedgie has quit [Ping timeout: 244 seconds]
philr has quit [Ping timeout: 256 seconds]
spease has joined #nix-darwin
<spease>
Is there any way to use the system Xcode or to specify a newer Xcode version than 11?
hedgie has joined #nix-darwin
hedgie_ has quit [Ping timeout: 244 seconds]
cransom has quit [Ping timeout: 256 seconds]
cransom has joined #nix-darwin
spease has quit [Remote host closed the connection]
<emily>
I'm afraid I can't report success -- even before installing Nix, after setting up the volume, adding it to the system keychain, and to fstab, it does mount on login when rebooting, but seemingly too late: the Terminal header bar shows a normal folder /nix rather than the disk icon if I cd out and back in, TextEdit or Preview windows opened on the /nix partition don't restore, ...
hedgie_ has joined #nix-darwin
hedgie has quit [Ping timeout: 260 seconds]
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
LnL has joined #nix-darwin
hedgie has joined #nix-darwin
abathur has quit [Ping timeout: 240 seconds]
abathur has joined #nix-darwin
hedgie_ has quit [Ping timeout: 260 seconds]
abathur has quit [Read error: Connection reset by peer]
abathur has joined #nix-darwin
__monty__ has joined #nix-darwin
hedgie_ has joined #nix-darwin
hedgie has quit [Ping timeout: 244 seconds]
hedgie has joined #nix-darwin
hedgie_ has quit [Ping timeout: 260 seconds]
philr has joined #nix-darwin
hedgie_ has joined #nix-darwin
eraserhd has quit [Quit: WeeChat 2.9]
hedgie has quit [Ping timeout: 244 seconds]
emily has quit [*.net *.split]
hamishmack has quit [*.net *.split]
carter has quit [*.net *.split]
hamishmack has joined #nix-darwin
carter has joined #nix-darwin
emily has joined #nix-darwin
philr_ has joined #nix-darwin
philr has quit [Ping timeout: 260 seconds]
philr has joined #nix-darwin
philr_ has quit [Ping timeout: 240 seconds]
philr_ has joined #nix-darwin
philr has quit [Ping timeout: 260 seconds]
philr has joined #nix-darwin
philr_ has quit [Ping timeout: 240 seconds]
philr_ has joined #nix-darwin
philr has quit [Ping timeout: 258 seconds]
eraserhd has joined #nix-darwin
philr has joined #nix-darwin
philr_ has quit [Ping timeout: 240 seconds]
philr_ has joined #nix-darwin
philr has quit [Ping timeout: 240 seconds]
philr has joined #nix-darwin
philr_ has quit [Ping timeout: 264 seconds]
<abathur>
emily oof :(
<antifuchs>
hrm, yeah that's what I saw as well
<antifuchs>
app restore precedes anything that would make it useful, it seems /:
<antifuchs>
(I turned off app restore via the NSQuitAlwaysKeepsWindows global setting, but it's still awful that you can't rely on those volumes being where you need them in a timely manner)
<LnL>
yeah, fstab is too late for that
<antifuchs>
that's a little surprising and very disappointing
<LnL>
indeed, no clue if there's some other way to do things earlier
<LnL>
one thing that might be interesting to test is what happens for a regular volume mounted in /Volumes
<LnL>
that might get mounted by apfs itself
<abathur>
also oof, I keep finding little installer stuff in master that has shifted/broken from 2.3.7 while trying to test this big sur installer
<abathur>
so, I got through a clean run, but it's not setting up the LaunchDaemon, and maybe some other stuff in install-darwin-multi-user.sh
<abathur>
looks like some of it shifted in nix#3788
<emily>
I guess a system-wide LaunchDaemon that tries to mount the partition might run before login? it's strange that even setting removable mounts to happen before login doesn't get the fstab entry mounted soon enough
<emily>
tbh I'm confused how anyone has app restore with Nix working on Catalina+ -- it doesn't seem like the system keychain should have availability problems before login, seems like macOS just really doesn't like mounting volumes early
<antifuchs>
I'm near-certain the system keychain is definitely available pre-login. that's where network creds are stored, at least...
<antifuchs>
but yep, I wanna experiment with system launch daemons now
<antifuchs>
the `MachServices` key in launchd.plist(5) might be interesting
<antifuchs>
same for RunAtLoad
<antifuchs>
but the "dependencies" section says it all: launchd has no dependency model, so anything managed by it is basically all-at-once
<emily>
yeah, but nothing should actually require the volume until login hopefully
<emily>
so anything that runs a mount pre-login should be sufficient
xcmw has joined #nix-darwin
<antifuchs>
yah, system launchdaemon sounds right then. I believe you can construct those with nix-darwin though, so that might be a problem if you combine the two.
<emily>
sigh we really need firmlinks, don't we...
<abathur>
I'm not sure if it's of any use here
<abathur>
but there is a new util I found in beta that I don't really grok, but did find some examples of someone else on GH already using
<abathur>
there's no real doc that I've seen and the usage is pretty scant, just says .../apfs_boot_util (1|2) and then explains that it "Executes the mount phase designated by the number provided."
<abathur>
the README in the 3 results on the GH search says: (credit to ASentientBot for Hax.dylib fix for "Install macOS Beta.app" and "apfs_boot_util" to mount the BigSur Data Volume from single user mode, after using "apfs_boot_util" from single user mode apart the Data Volume also the Preboot Volume is available in this path /System/Volumes/)
philr has quit [Ping timeout: 240 seconds]
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
xcmw has joined #nix-darwin
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
xcmw has joined #nix-darwin
<abathur>
grumblegrumble
<abathur>
installer edits should probably trigger tests
__monty__ has quit [Quit: leaving]
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
xcmw has joined #nix-darwin
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
xcmw has joined #nix-darwin
xcmw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]