Migrating from Sierra on one box to High Sierra on another

Ryan Schmidt ryandesign at macports.org
Tue Jan 21 18:44:54 UTC 2020

On Jan 21, 2020, at 03:54, Chris Jones wrote:

> On 21/01/2020 1:28 am, Dave Horsfall wrote:
>> I don't have web access right now, hence the list...
>> My ancient Sierra MacBook failed (graphics board which is no longer available) but I have been offered a more recent second-hand one for a reasonable price, and it will run High Sierra (I don't want Mojave just yet).
>> What's the procedure to update all the existing ports i.e. is there such a thing as "port upgrade all" to do "the right thing"?  I have the old system drive available (external USB - long story) and can slurp the appropriate files over (I don't like restoring using Time Machine, and the Capsule may not be up to date anyway, as I was working when the video disappeared).
>> I know that I have to recompile my own stuff.
>> Anything else that I should know about?  I like to be forewarned, and remember that I don't have web access right now.
> As with any OS upgrade, follow the instructions at
> https://trac.macports.org/wiki/Migration

Since you don't have web access, I'll reproduce the main part of that page here:

> Migration procedure <https://trac.macports.org/wiki/Migration#Migrationprocedure>
> Install the latest version of Xcode and the Xcode command-line tools <https://trac.macports.org/wiki/Migration#xcode>
> Update the development tools by ‚Äčinstalling Xcode <https://guide.macports.org/#installing.xcode>. Open the Xcode application once after installation and follow any prompts.
> Install the command line tools package as well (run xcode-select --install).
> Reinstall MacPorts base system <https://trac.macports.org/wiki/Migration#base>
> To reinstall, simply install the base MacPorts system <https://www.macports.org/install.php> for your new platform.
> Update your macports.conf (if not default) <https://trac.macports.org/wiki/Migration#config>
> If your macports.conf (typically at /opt/local/etc/macports/macports.conf) contains uncommented settings for universal_archs or build_arch, you will likely want to update them, since unlike earlier OS versions, the compiler on Snow Leopard and later will build for x86_64 by default on systems that support it. Default values are fine for most users, so unless you know you need something different, just comment out these two lines.
> Several other settings in macports.conf have changed their defaults over the years. Take a moment to compare each line of your macports.conf with the corresponding line in macports.conf.defaultin the same directory. Unless you know a reason why a line in your settings file should be different from the defaults, adopt the line from the defaults file.
> Reinstall your ports <https://trac.macports.org/wiki/Migration#ports>
> Save the list of installed ports:
> port -qv installed > myports.txt
> (optional) Save the list of requested ports:
> port echo requested | cut -d ' ' -f 1 > requested.txt
> Uninstall all installed ports:
> sudo port -f uninstall installed
> Clean any partially-completed builds:
> sudo rm -rf /opt/local/var/macports/build/*
> Download and execute the restore_ports script. (If you installed MacPorts from source and used a custom prefix, then you'll need to use the -p option when you run restore_ports.tcl; see ./restore_ports.tcl -h.)
> curl --location --remote-name https://github.com/macports/macports-contrib/raw/master/restore_ports/restore_ports.tcl
> chmod +x restore_ports.tcl
> xattr -d com.apple.quarantine restore_ports.tcl
> sudo ./restore_ports.tcl myports.txt
> Note: ports that are not available on your new platform will be skipped, with only a warning message. 
> (optional) Restore requested status: If you saved the list of requested ports, you can now restore the requested flags for your newly installed ports to their former states.
> sudo port unsetrequested installed
> xargs sudo port setrequested < requested.txt
> Warning: if a port in requested.txt was not installed in the previous step, the iterative setrequested will terminate, leaving some ports still marked as not-requested. Edit requested.txtto remove any ports that were not installed and repeat this step. Double-check your desired ports are set as requested with port echo requested.

If your new machine is old enough to run Sierra, and if you have not yet set up or put any of your data on the new machine, then the simplest way to proceed might be to clone your old machine's disk to your new machine (using Carbon Copy Cloner, SuperDuper, or similar), then boot up from your new machine's internal disk and upgrade to High Sierra, and then follow the migration instructions as normal.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-users/attachments/20200121/baad43cf/attachment.html>

More information about the macports-users mailing list