Date: Wed, 15 Jan 2025 04:37:07 +0000 From: Richard Childers <childers@redwoodhodling.com> To: Tomoaki AOKI <junchoon@dec.sakura.ne.jp> Cc: freebsd-ports@FreeBSD.org Subject: Re: FreeBSD 14.2; Thunderbird 128.6; Chromium, Iridium, etc Message-ID: <352dfe48-9a5e-4204-a854-e3cb0b3889aa@redwoodhodling.com> In-Reply-To: <20250111132434.6d0e06c9f3b39e7a52e8f354@dec.sakura.ne.jp> References: <9d21e261-e943-44df-8f84-8c2cb3ca81f8@redwoodhodling.com> <20250111132434.6d0e06c9f3b39e7a52e8f354@dec.sakura.ne.jp>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------QUT7VvSRCwCXcFIgm5f0UEJG Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit "Is there a symlink /usr/home pointing to /home?" Waxing philosophic on /home ... Back in 1986 I was working at GE Calma supporting a lab full of diverse UNIX servers - Apollo, Silicon Graphics, Power/64 with six CPUs (yes, in 1986) and also a Sequent (another multiprocessor platform running UNIX), a few Sun servers and about 30 Sun workstations. This was the time of the Sun 2, based on the 68010. The Sun 3 (based on the 68020) was brand new. NFS was brand new. There were few naming conventions for mount points. / and /usr could be relied upon to exist as separate partitions. But different UNIX releases placed home directories in different locations. I opted to place home directories in their own dedicated partition on the hard drive because the requirements of users were different from those of the operating system and because I did not want the users' disk space requirements to interfere with the operating system's disk space requirements. It made disk space calculations and partition sizing easier if I placed home directories in their own dedicated partition. It made backup to tape easier. It made restoring data from tape after a crash easier, too. And it made NFS easier. I mentioned this at classes and seminars I attended and the idea caught on. GE Calma was literally across the freeway from Sun Microsystems' manufacturing facility, in Milpitas, and so they were one of Sun's very first customers. I had previously seen a Sun 1, at another job in San Francisco, but that was before Sun Microsystems had written a graphic user interface ('Suntools', now lost in the mists of time, not even Wikipedia has heard of Suntools or OpenWindows or that other GUI that was supposed to run Postscript but never got off the ground, lol) and at the time the Sun 1 was just a curiosity - "look, we ported 4.1 BSD to the 68000, is that cool or what?". GE Calma was playing with X v10.4, at the time, if you wonder - Calma built giant computer workstations that were used to design things like dams and hydroelectric projects and nuclear reactors and provided customers with the ability to do walkthroughs, but it was all in wireframe and Calma wanted to add texture) and I think I got a copy of X v11.0 from The Well, in Sausalito, where I knew someone who was willing to cut me a tape - those were the good old days. Obviously the factors are not the same and ZFS changes things but, still, it's funny to see /home has migrated back to /usr/home. It is a natural misunderstanding of the acronym 'usr', which refers not so much to the users of the operating system as it did to the separation between privileged executables located in the root filesystem which were a prerequisite to booting into single user mode, and those executables which formed part of the larger ecosystem of the operating system when it reached multiuser, at which time /usr was mounted and made accessible and the systems administrator could finally heave a big sigh of relief and tell everyone the computer was back up. In response to the situation I encountered with FreeBSD 14.2 ... I gave some thought to creating a link in /usr/home but that would only perpetuate a broken situation; links don't belong in /etc/passwd, IMHO, unless you are running NFS and have multiple NFS servers providing home directories and have to cobble together a shared namespace ... but that is the topic of another post. Also ... if I don't know the true cause of the problem, then how can I say that I have fixed it? Diving to the root of the problem gave me a greater understanding of Thunderbird, Chromium, and its derivatives. I try to resist the urge to go for the quick fix until I am sure it is also the best solution to the problem. Recreating /usr/home would just kick the problem down the road but I would still have to deal with it some day. After 40 years of troubleshooting, my credo is "eschew dependencies". Keep it simple. I guess we all have to define "simple" for ourselves. My assumption is the FreeBSD team had a good reason to get rid of /usr/home; they had come to the same conclusion I had reached a few decades before. I'm not fanatical about it; I recall evaluating the Nokia FW-1, back around 1999 or 2000, at Hambrecht & Quist, LLC - the FW-1 was based on FreeBSD 3.x, I think, and the developers had taken the unusual step of mounting all filesystems but /var as read-only, so that home directories were, by necessity, located in /var/home. That sort of makes sense, for that particular application, where there is only one login, and that, an administrator - we assume he or she won't be downloading large files that interfere with the other functions of the /var filesystem. Carry on, comrades, FreeBSD 14.2 screams like the race car it is, and I am very impressed. Regards, ~richard ===== On 1/11/25 04:24, Tomoaki AOKI wrote: > On Sat, 11 Jan 2025 02:17:20 +0000 > Richard Childers<childers@redwoodhodling.com> wrote: > >> Dear folks, >> >> >> I just upgraded from 13.3 to 14.2. Maybe I missed the memo; but moving >> home directories from /usr/home back to /home broke Thunderbird, it >> couldn't find my folders. >> >> >> (When I say 'upgrade', I mean 'install an up-to-date version of FreeBSD >> on a different laptop, install up-to-date applications, rsync my home >> directory to the new install, then make the jump'. Not freebsd-update(8).) >> >> >> The fix is to edit these two text files: >> >> >> /home/LOGIN/.thunderbird/????????.default/folderCache.json >> >> /home/LOGIN/.thunderbird/????????.default/prefs.js >> >> >> ... where '????????' represents 8 >> Thunderbird-assigned-at-the-time-of-account-creation random ASCII >> characters that seem to represent a unique ID. >> >> >> If you've done this a few times your files may be quite old and contain >> references to accounts that you no longer use but a global >> search-and-replace should not damage these definitions either as if they >> still exist their paths will need to be updated as well, and if the >> folders no longer exist then you may safely engage in some housekeeping >> and delete those other lines. >> >> >> Here's hoping it helps those of us with not much hair to spare to avoid >> ripping out what is left, in frustration, after an upgrade. >> >> >> The output from 'pkg add -y thunderbird' is pretty sparse - less then >> ten lines. Not complaining but that might be a good place to put hints >> for administrators overseeing the upgrade - it's not done until the >> users can read and write email. >> >> >> 'thunderbird --help' refers to something called a "Migration Manager" >> but I could find no documentation on this from the command line; >> Thunderbird has no online UNIX manual page, alas. >> >> >> You may also find Chromium to be uncooperative; if it was running when >> you did your rsync, then you will have to remove the following file >> before it will start on the new machine: >> >> >> % rm -f .config/chromium/SingletonLock >> >> >> You may as well remove them all: >> >> >> % rm -f .config/chromium/Singleton* >> >> >> You might even want to do this: >> >> >> % rm -f .config/*/Singleton* >> >> >> ... that will fix Iridium and ungoogled-chromium, too. >> >> >> Regards, >> >> >> ~richard >> >> >> ===== >> >> >> More info:https://www.redwoodhodling.com/Exhibits/ >> >> See, also:https://www.redwoodlinux.com/RaspiLab/ >> >> See, also: >> https://www.gofundme.com/f/support-innovative-raspberry-pi-classroom-project > Is there a symlink /usr/home pointing to /home? > If not, creating it could usually workaround the problem. > > As I disliked previous default (/usr/home), I habitally create /home as > a directory (mount point) and created symlink /usr/home pointing to it > manually on installation (not using installer, though) for > copatibilities. > > *I've created a dedicated partition for /home before I've switched to > Root on ZFS, and now creating a dedicated dataset for /home. > So /home is a mountpoint anyway for me. > --------------QUT7VvSRCwCXcFIgm5f0UEJG Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 7bit <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <p>"<span style="white-space: pre-wrap">Is there a symlink /usr/home pointing to /home?"</span></p> <p><br> </p> <p>Waxing philosophic on /home ...</p> <p><br> </p> <p>Back in 1986 I was working at GE Calma supporting a lab full of diverse UNIX servers - Apollo, Silicon Graphics, Power/64 with six CPUs (yes, in 1986) and also a Sequent (another multiprocessor platform running UNIX), a few Sun servers and about 30 Sun workstations.</p> <p><br> </p> <p>This was the time of the Sun 2, based on the 68010. The Sun 3 (based on the 68020) was brand new. NFS was brand new. There were few naming conventions for mount points. / and /usr could be relied upon to exist as separate partitions. But different UNIX releases placed home directories in different locations.</p> <p><br> </p> <p>I opted to place home directories in their own dedicated partition on the hard drive because the requirements of users were different from those of the operating system and because I did not want the users' disk space requirements to interfere with the operating system's disk space requirements. It made disk space calculations and partition sizing easier if I placed home directories in their own dedicated partition. It made backup to tape easier. It made restoring data from tape after a crash easier, too. And it made NFS easier.</p> <p><br> </p> <p>I mentioned this at classes and seminars I attended and the idea caught on. GE Calma was literally across the freeway from Sun Microsystems' manufacturing facility, in Milpitas, and so they were one of Sun's very first customers. I had previously seen a Sun 1, at another job in San Francisco, but that was before Sun Microsystems had written a graphic user interface ('Suntools', now lost in the mists of time, not even Wikipedia has heard of Suntools or OpenWindows or that other GUI that was supposed to run Postscript but never got off the ground, lol) and at the time the Sun 1 was just a curiosity - "look, we ported 4.1 BSD to the 68000, is that cool or what?".</p> <p><br> </p> <p>GE Calma was playing with X v10.4, at the time, if you wonder - Calma built giant computer workstations that were used to design things like dams and hydroelectric projects and nuclear reactors and provided customers with the ability to do walkthroughs, but it was all in wireframe and Calma wanted to add texture) and I think I got a copy of X v11.0 from The Well, in Sausalito, where I knew someone who was willing to cut me a tape - those were the good old days.<br> </p> <p><br> </p> <p>Obviously the factors are not the same and ZFS changes things but, still, it's funny to see /home has migrated back to /usr/home. It is a natural misunderstanding of the acronym 'usr', which refers not so much to the users of the operating system as it did to the separation between privileged executables located in the root filesystem which were a prerequisite to booting into single user mode, and those executables which formed part of the larger ecosystem of the operating system when it reached multiuser, at which time /usr was mounted and made accessible and the systems administrator could finally heave a big sigh of relief and tell everyone the computer was back up.<br> </p> <p><br> </p> <p>In response to the situation I encountered with FreeBSD 14.2 ... I gave some thought to creating a link in /usr/home but that would only perpetuate a broken situation; links don't belong in /etc/passwd, IMHO, unless you are running NFS and have multiple NFS servers providing home directories and have to cobble together a shared namespace ... but that is the topic of another post.</p> <p><br> </p> <p>Also ... if I don't know the true cause of the problem, then how can I say that I have fixed it? Diving to the root of the problem gave me a greater understanding of Thunderbird, Chromium, and its derivatives. I try to resist the urge to go for the quick fix until I am sure it is also the best solution to the problem. Recreating /usr/home would just kick the problem down the road but I would still have to deal with it some day.<br> </p> <p><br> </p> <p>After 40 years of troubleshooting, my credo is "eschew dependencies". Keep it simple. I guess we all have to define "simple" for ourselves. My assumption is the FreeBSD team had a good reason to get rid of /usr/home; they had come to the same conclusion I had reached a few decades before.</p> <p><br> </p> <p>I'm not fanatical about it; I recall evaluating the Nokia FW-1, back around 1999 or 2000, at Hambrecht & Quist, LLC - the FW-1 was based on FreeBSD 3.x, I think, and the developers had taken the unusual step of mounting all filesystems but /var as read-only, so that home directories were, by necessity, located in /var/home. That sort of makes sense, for that particular application, where there is only one login, and that, an administrator - we assume he or she won't be downloading large files that interfere with the other functions of the /var filesystem.<br> </p> <p><br> </p> <p>Carry on, comrades, FreeBSD 14.2 screams like the race car it is, and I am very impressed.</p> <p><br> </p> <p>Regards,</p> <p><br> </p> <p>~richard</p> <p><br> </p> <p>=====<br> </p> <div class="moz-cite-prefix">On 1/11/25 04:24, Tomoaki AOKI wrote:<br> </div> <blockquote type="cite" cite="mid:20250111132434.6d0e06c9f3b39e7a52e8f354@dec.sakura.ne.jp"> <pre wrap="" class="moz-quote-pre">On Sat, 11 Jan 2025 02:17:20 +0000 Richard Childers <a class="moz-txt-link-rfc2396E" href="mailto:childers@redwoodhodling.com"><childers@redwoodhodling.com></a> wrote: </pre> <blockquote type="cite"> <pre wrap="" class="moz-quote-pre">Dear folks, I just upgraded from 13.3 to 14.2. Maybe I missed the memo; but moving home directories from /usr/home back to /home broke Thunderbird, it couldn't find my folders. (When I say 'upgrade', I mean 'install an up-to-date version of FreeBSD on a different laptop, install up-to-date applications, rsync my home directory to the new install, then make the jump'. Not freebsd-update(8).) The fix is to edit these two text files: /home/LOGIN/.thunderbird/????????.default/folderCache.json /home/LOGIN/.thunderbird/????????.default/prefs.js ... where '????????' represents 8 Thunderbird-assigned-at-the-time-of-account-creation random ASCII characters that seem to represent a unique ID. If you've done this a few times your files may be quite old and contain references to accounts that you no longer use but a global search-and-replace should not damage these definitions either as if they still exist their paths will need to be updated as well, and if the folders no longer exist then you may safely engage in some housekeeping and delete those other lines. Here's hoping it helps those of us with not much hair to spare to avoid ripping out what is left, in frustration, after an upgrade. The output from 'pkg add -y thunderbird' is pretty sparse - less then ten lines. Not complaining but that might be a good place to put hints for administrators overseeing the upgrade - it's not done until the users can read and write email. 'thunderbird --help' refers to something called a "Migration Manager" but I could find no documentation on this from the command line; Thunderbird has no online UNIX manual page, alas. You may also find Chromium to be uncooperative; if it was running when you did your rsync, then you will have to remove the following file before it will start on the new machine: % rm -f .config/chromium/SingletonLock You may as well remove them all: % rm -f .config/chromium/Singleton* You might even want to do this: % rm -f .config/*/Singleton* ... that will fix Iridium and ungoogled-chromium, too. Regards, ~richard ===== More info: <a class="moz-txt-link-freetext" href="https://www.redwoodhodling.com/Exhibits/">https://www.redwoodhodling.com/Exhibits/</a> See, also: <a class="moz-txt-link-freetext" href="https://www.redwoodlinux.com/RaspiLab/">https://www.redwoodlinux.com/RaspiLab/</a> See, also: <a class="moz-txt-link-freetext" href="https://www.gofundme.com/f/support-innovative-raspberry-pi-classroom-project">https://www.gofundme.com/f/support-innovative-raspberry-pi-classroom-project</a> </pre> </blockquote> <pre wrap="" class="moz-quote-pre"> Is there a symlink /usr/home pointing to /home? If not, creating it could usually workaround the problem. As I disliked previous default (/usr/home), I habitally create /home as a directory (mount point) and created symlink /usr/home pointing to it manually on installation (not using installer, though) for copatibilities. *I've created a dedicated partition for /home before I've switched to Root on ZFS, and now creating a dedicated dataset for /home. So /home is a mountpoint anyway for me. </pre> </blockquote> </body> </html> --------------QUT7VvSRCwCXcFIgm5f0UEJG--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?352dfe48-9a5e-4204-a854-e3cb0b3889aa>