I recently replaced my SSD and installed the latest PureOS from pureos.net/download. The old (smaller) SSD has the PureOS that I installed shortly after buying the Librem 13v2 in December 2017. Since that time I’ve installed a few things, configured Thunderbird with Enigmail and CardBook, QtPass, etc. Setting all of that up on the new PureOS installation will take some time, and I have a day job that interferes.
I put my old PureOS SSD in a USB case and booted it to use my old environment. Then I thought of a cool hack, if it would work: I remembered Boxes. I booted normally into the new PureOS on the internal SSD and plugged in the old SSD. PureOS recognized it and mounted it, of course. I fired up the Disks utility and created an image file of my old PureOS boot disk. The I ran Boxes and told it to create a new VM using that image file.
Voila! Now I can boot the newly installed PureOS and run my old setup in a VM. This allows me to continue working in my familiar environment without having the SSD plugged into the Librem. And I don’t need to configure the new PureOS installation right away; I can do a little bit at a time instead of feeling like I need to get it all done right away.
There are a few limitations in the VM as opposed to directly booting the old system; I let Boxes disable shortcuts so function keys don’t work in Thunderbird for example, I can’t move workspaces with a three finger swipe, and so on, but there are other ways to do those things. I am pleasantly surprised with the performance with only 4GB of memory installed.
It’s a fun little hack that makes my life much easier!