Suggestions for successful distro hopping

What tips or tricks do you do to make your distro-hopping a good experience? Share your ideas here!

1 Like

Here are a couple of mine:

  1. Keep data on a separate partiton, or better yet on a separate hard drive.
  2. Use clonezilla to make an image of your hard drive before each new install so you can revert to a known good state. Especially useful for dual (triple, etc.) booting.

One of my favorites: boot iso installers from grub. Takes some time to do the research, and not all distros do it the same, but it is very cool, and saves burning isos endlessly to usb sticks. Of course this is only if you already have a distro installed and can use its grub to boot the other isos.

I hop and test quite a bit. The biggest tip I can give is to do your backups, and for that I recommend TimeShift.

I have an 80GB Partition on my disk that is for backups only, and I point TimeShift to it. It has the ability to backup and restore your GRUB and UEFI structure as well. It has saved me a couple of times when my system became unbootable since you can run TimeShift from a LiveUSB and restore from your backup partition.

My testing is always first done with VirtualBox, and then I move to hardware. If possible, I will opt to not install grub at all as long as the installer gives you the option. I always use my Manjaro UEFI’s grub menu but this will work with any. Just boot back into your usual distro and run update-grub (or whichever command your distro requires) and it will find and add your newly installed distro to the boot menu.

I always add and remove distros, so I will usually only give enough of a partition to test it out. 40GB is usually enough for a good long term test. This also allows me to then add more. I’ve had up to 11 distros on my 1TB drive with no issues.

1 Like

For safety use a VM or if you are lucky enough a seperate machine with no data on it. Safest way possible.

If you can’t, backup your data, Timeshift is great and to a drive that can be disconnected is even better.

I don’t hop, but I do test in VMs when I see something of interest. Having 24GB of RAM certainly helps there.

1 Like

I also use scripts to automate things I do repetitively (like installing certain programs). I keep these scripts on gitlab and sync them to my newly installed distro.

if I’m hopping to a totally new distro base, rpm or pacman for example, I do a VM install and have a play around to familiarize myself with the installer and the package manager. Once I feel confident in a virtual iteration of the OS I will then try it on real hardware. I have been playing with EndeavourOS in VirtualBox for a week or so but feel comfortable now so will be doing a hardware install when I’m back home next week in preparation for a review on Distrohoppers Digest at the end of August.

I don’t store data worth anything on my machines, all I need is on my FreeNAS box, so I usually install on metal.

The second best option is to install to a USB stick/drive with the boot loader and everything on that stick. Most USB 3.0 sticks are fast enough to poke around in a system anyway.

1 Like

I like to have a script to automatically install some of my favorite programs. They way I do it:

  1. Create a folder to put two files: install.sh and programlist

  2. In programlist I list all of my favorite programs, one program on each line.

  3. If there are programs I do NOT want to install from this list, I comment them out by putting a # in front of the program name.

  4. In my install.sh script, I put the following:
    For arch based distros:

     #!/bin/bash
    
     #This will install all programs in the programlist file in this directory
    
     if [[ $EUID -ne 0 ]]; then
        	echo "This script must be run as root type: sudo ./install.sh" 
        	exit 1
         
      else
    
     FILE=./programlist
    
     OUTPUT="$(grep -v '^#' $FILE)"
    
     sudo pacman -S --needed $OUTPUT
    
     fi
    

For debian based distros:

#!/bin/bash

#This will install all programs in the programlist file in this directory

if [[ $EUID -ne 0 ]]; then
   	echo "This script must be run as root type: sudo ./install.sh" 
   	exit 1
    
 else

   FILE=./programlist

OUTPUT="$(grep -v '^#' $FILE)"

sudo apt install $OUTPUT

fi

This saves so much time! Maybe it will help you, too.

2 Likes

Icydock with some drives for easy swapping. Could work wonders for some distro hoppers.

2 Likes