Finally got around to upgrading. So far it works no worse than 16, except my fancy login screen has been replaced with some crappy username/password entry box, and encrypted swap partitions no longer work (apparently the latter is a known bug).
Here’s roughly how I did it:
1. Use the backup tool to save a list of installed applications.
2. Boot up, plug in the USB backup drive and log in to a console terminal.
3. cd /tmp and sudo -i to become root, not in my own home directory.
4. Since I have an encrypted home directory, I now want to unmount /home/emg so nothing can write to the directory while I’m backing it up. So umount /home/emg.
5. Copy /home to the backup drive. This saves an encrypted backup which can be reloaded if everything goes horribly wrong.
6. While doing that, make a list of the partitions on the disk.
7. Unmount the backup drive, unplug it, and reboot on the install disk.
8. Select to install. Select all partitions other than /home, and choose to reformat them and install.
9. Set the hostname and username, and ensure you pick the same password as you had before, so the encrypted home directory will work.
12. Edit /etc/fstab to mount the old home partition as /home.
14. Log in as yourself, update (in my case, I had to download about 400 upgraded packages) and finish installing the packages you need.
15. Reboot for safety. Job done.