MacOS Home Folder on External Drive

Trying to install Channels DVR Server on an M4 Pro Mac mini. I have my home user folder on an external thunderbolt 5 drive. When run the CDVR installer, it indicates that it has installed but the final step (http.127.0.0.1:8089) fails with Safari Cannot Open Page. I have no CDVR icon in the menu bar.

In addition, channels does not show up in the applications folder.

Perhaps some sort of a permissions issue?

Please let me know if there is any additional information I can provide that may help.

Thanks in advance.

Perhaps relevant thread?

Doesn't get more relevant than that! Thank you Fofer, not sure how I missed that.

For those wondering, I decided to buy an M4 Pro Mac mini with a smaller hard drive and invest my money in more ram to avoid the "Apple Tax" on SSD memory. The thunderbolt 5 enclosure actually gives me better performance than the internal SSD. I did this so that I may turn off Optimize Storage on iCloud Photos and iCloud Drive and have my iCloud files stored locally on the M4 Pro Mini. This enables me to use Time Machine to effectively backup my iCloud storage to my NAS.

That being said, for some reason I have not yet figured out (permissions maybe), it appears you cannot install the MacOS version of CDVR Server on a home folder that resides on an external drive.

I'll continue to investigate and if I make any headway, I'll share.

Thanks

Hmm. Putting the user folder on a separate volume may confuse other 3rd party apps in the future too. In my experience, it's been seen as a non-standard configuration, so typically, unsupported.

So why not install macOS Sequoia on the Thunderbolt 5 drive then, and make it your Mac's bootable startup drive? The internal SSD can then be wiped clean, repurposed as a secondary drive, used as a scratch disk, for extra files, backups or whatever. This way, Channels DVR will be installed on the same drive as the home folder and everything will work as you're hoping it to. And you'd have the best performance, for everything. That's the way I'd set it up, at least.

Ironically, that was my original setup and Channels DVR Server installed in that configuration. The problems I ran into were that Apple Intelligence didn't work, Apple Pay didn't work and several other security related things were problematic.

I thought going the Home folder on the external drive would give me the best of both worlds.

I'm still not giving up on that "dream", just have to figure out why the Channels DVR Server software won't install in my current configuration.

If I make any headway, I'll certainly report back here.

Thank you again for your help and guidance, it's greatly appreciated.

1 Like

Further investigation ... I went to:

'/Volumes/Ext_4TB/Users/jxxxxxxxx/Library/Application Support/ChannelsDVR/latest/channels-dvr and ran the channels-dvr file and received the following:

Last login: Fri Jun 13 11:27:51 on ttys000

/Volumes/Ext_4TB/Users/jxxxxxxxx/Library/Application\ Support/ChannelsDVR/latest/channels-dvr ; exit;

jxxxxxxxx@jxxxxxxxx-admins-Mac-mini ~ % /Volumes/Ext_4TB/Users/jdepietto/Library/Application\ Support/ChannelsDVR/latest/channels-dvr ; exit;

2025/06/13 11:34:47.165419 [SYS] Starting Channels DVR v2025.06.01.2212 (darwin-arm64 pid:22684) in /Volumes/Ext_4TB/Users/jxxxxxxxx

2025/06/13 11:34:47.207044 [SYS] Started HTTP Server on 8089

2025/06/13 11:34:47.660681 [HDR] Found 1 devices

2025/06/13 11:34:47.691592 [ERR] Failed to refresh auth: missing oauth client

2025/06/13 11:34:48.428351 [SYS] Bonjour service registered with jxxxxxxxx-admins-Mac-mini.local

missing oauth client stands out.

Any insight on what "missing oath client" relates to??

1 Like

That's normal if you try to run it directly

You would need to check the launchctl logs

Checked the Launchctl logs and found the following:

2025-07-06 16:46:31.340422 (com.getchannels.dvr) : This service is defined to be constantly running and is inherently inefficient.
2025-07-06 16:46:31.340427 (gui/501/com.getchannels.dvr) : (lint): UserName is not supported by the domain, ignoring.
2025-07-06 16:46:31.340429 (gui/501 [100545]) : pending spawn, domain in on-demand-only mode: com.getchannels.dvr
2025-07-06 16:46:32.984503 (gui/501/com.getchannels.dvr) : internal event: WILL_SPAWN, code = 0
2025-07-06 16:46:32.984506 (gui/501/com.getchannels.dvr) : service state: spawn scheduled
2025-07-06 16:46:32.984507 (gui/501/com.getchannels.dvr) : service state: spawning
2025-07-06 16:46:32.984531 (gui/501/com.getchannels.dvr) : launching: speculative
2025-07-06 16:46:32.986055 (gui/501/com.getchannels.dvr [17003]) : xpcproxy spawned with pid 17003
2025-07-06 16:46:32.986066 (gui/501/com.getchannels.dvr [17003]) : internal event: SPAWNED, code = 0
2025-07-06 16:46:32.986068 (gui/501/com.getchannels.dvr [17003]) : service state: xpcproxy
2025-07-06 16:46:32.997524 (gui/501/com.getchannels.dvr [17003]) : internal event: SOURCE_ATTACH, code = 0
2025-07-06 16:46:32.998235 (gui/501/com.getchannels.dvr [17003]) : Requesting first run LWCR update
2025-07-06 16:46:33.050942 (gui/501/com.getchannels.dvr [17003]) : Updated BTM identifiers: 00000000-0000-0000-0000-000000000000 New LWCR needed: 1
2025-07-06 16:46:33.063588 (gui/501/com.getchannels.dvr [17003]) : service state: running
2025-07-06 16:46:33.063590 (gui/501/com.getchannels.dvr [17003]) : internal event: INIT, code = 0
2025-07-06 16:46:33.063599 (gui/501/com.getchannels.dvr [17003]) : Successfully spawned channels-dvr[17003] because speculative
2025-07-06 16:46:33.589398 (pid/17003 [channels-dvr]) : uncorking exec source upfront
2025-07-06 16:46:33.589404 (pid/17003 [channels-dvr]) : created
2025-07-06 16:46:34.592270 (gui/501/com.getchannels.dvr [17003]) : job state = running
2025-07-06 16:59:31.558254 (gui/501 [100545]) : removing active service: com.getchannels.dvr
2025-07-06 16:59:31.558262 (gui/501/com.getchannels.dvr [17003]) : signaled service: Terminated: 15
2025-07-06 16:59:31.558263 (gui/501/com.getchannels.dvr [17003]) : service state: SIGTERMed
2025-07-06 16:59:31.558264 (gui/501/com.getchannels.dvr [17003]) : scheduling cleanup in 5 sec after sending Terminated: 15
2025-07-06 16:59:31.898915 (gui/501/com.getchannels.dvr [17003]) : exited due to exit(0) during logout, ran for 778905ms
2025-07-06 16:59:31.898919 (gui/501/com.getchannels.dvr [17003]) : service state: exited
2025-07-06 16:59:31.898921 (gui/501/com.getchannels.dvr [17003]) : internal event: EXITED, code = 0
2025-07-06 16:59:31.898922 (gui/501/com.getchannels.dvr [17003]) : job state = exited
2025-07-06 16:59:31.898930 (gui/501 [100545]) : service inactive: com.getchannels.dvr
2025-07-06 16:59:31.898931 (gui/501 [100545]) : removing service: com.getchannels.dvr
2025-07-06 16:59:31.898935 (gui/501/com.getchannels.dvr [17003]) : internal event: PETRIFIED, code = 0
2025-07-06 16:59:31.898935 (gui/501/com.getchannels.dvr [17003]) : job state = removed
2025-07-06 16:59:31.898941 (gui/501/com.getchannels.dvr [17003]) : service state: not running
2025-07-06 16:59:31.898949 (pid/17003 [channels-dvr]) : shutting down
2025-07-06 16:59:31.898951 (pid/17003 [channels-dvr]) : cleaning up

Any insight would be greatly appreciated

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.