Hi everyone,

I’ve been a happy user of Fedora Workstation since Fedora 36 on my Surface Go 1.

I really enjoy Gnome and everything is set up the way I want to.

Since I was really happy with my setup I just wanted to be able to replicate it easily through Clonezilla so that I could port it on any future computer I’d get.

Sadly, even with the help of really helpful and knowledgeable users on Lemmy, it hasn’t worked (https://sh.itjust.works/post/25963065).

So now I’m left wondering if there could be a distribution that I’d enjoy and which would be easy to deploy on another computer as I’d hate to have to configure everything on every computer I’d get.

I love Gnome but I wouldn’t be against trying something else if necessary.

What distribution could meet my needs?

  • darkan15@lemmy.world
    link
    fedilink
    arrow-up
    16
    ·
    edit-2
    12 days ago

    I’m going to mention Ansible as I haven’t seen it mentioned, and it can be used to locally manage a reproducible build.

    It has already been mentioned, but as a minimum to replicate your system you need two things:

    • Transfer/copy your entire /home directory as there is where the majority of the configuration files of your system pertaining the software you use (there could be configs you could need on /etc and on /usr/local or other dir), that is why it is recommended to partition your disk on installation of your distro, so the /home directory is already separated, as if you reinstall in the same machine you don’t lose any configuration in addition to your personal documents/pictures/etc
    • Have a way to automatically install a list of programs/apps/drivers/libraries, and that is what something like a bash script, Ansible, nixOs, etc. could help you with.

    The truth is that using any of the tools in the second point requires learning a bunch, so if your skill level is still not there, there is some work to do to get there.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 days ago

      I’m going to mention Ansible

      Oh for the love of god, don’t. Ansible is 2002 technology used in 2024. It’s so clunky and janky that I’m relieved I can get chatgpt to boilerplate my stuff and save me time actually staring at fucking YAML all day. Use Anything Else before your brain rots.

      source: it’s like half my day job now and I should’ve charged more.

      • darkan15@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        11 days ago

        What would you recommend that is not NixOS or a Bash script and can be used agnostic of distro?

  • nfms@lemmy.ml
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    2
    ·
    12 days ago

    NixOS is the sort answer. It’s reproducible across hardware. But I’ve never tested it.

  • Jure Repinc@lemmy.ml
    link
    fedilink
    English
    arrow-up
    5
    ·
    12 days ago

    Cloning the system and home partitions always worked fine for me with openSUSE Tumbleweed with KDE Plasma desktop. Another option openSUSE offers is AutoYaST

    AutoYaST is a system for unattended mass deployment of openSUSE Leap systems. It uses an AutoYaST profile that contains installation and configuration data.

  • utopiah@lemmy.ml
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    11 days ago

    I’d happily give technical advice but first I need to understand the actual need.

    I don’t mean “what would be cool” but rather what’s the absolute minimum basic that would make a solution acceptable.

    Why do I insist so much? Well because installing a distribution, e.g. Debian, takes less than 1h. Assuming you have a separate /home directory, there is no need to “copy” anything, only mounting correctly. If it is on another physical computer then the speed will depend on the your storage capacity and hardware (e.g. SSD vs HDD). Finally “configuring” each piece of software will take a certain amount of time, especially if you didn’t save the configuration (which should be the case).

    Anyway, my point being that :

    • installing the OS takes little time
    • copying data across physical devices take a lot more time
    • configuring manually specific software takes a bit of time

    So, if you repeat the operation several times a week, investing time to find a solution can be useful. If you do this few times a year or less, it’s probably NOT actually efficient.

    So, again, is this an intellectual endeavor, for the purpose of knowing what an "ideal’ scenario would be or is it a genuine need?

    • Dariusmiles2123@sh.itjust.worksOP
      link
      fedilink
      arrow-up
      1
      ·
      11 days ago

      Well I don’t distro hop so I don’t think it would be used more than once a year.

      The only thing is that I would want the way I’ve configured Gnome, Joplin, Thunderbird, Gnome Calendar (only for the widget), my Gnome extensions, what program is automatically opened on what workspace, etc to be saved so that it could be reproduced on another computer easily.

      My documents, pictures, etc are already taken care of so it ain’t a problem.

      I know I could do the same thing by writing a tutorial and just spending a couple of hours every time I reinstall. But I would want to just be able to replicate my install/settings if possible.

      Someone kindly mentioned SaveDesktop and for now it seems like the way to go since simply cloning with Clonezilla doesn’t seem to work. I just have to make it work.

      • corsicanguppy@lemmy.ca
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 days ago

        The only thing is that I would want the way I’ve configured Gnome, Joplin, Thunderbird, Gnome Calendar (only for the widget), my Gnome extensions, what program is automatically opened on what workspace, etc to be saved so that it could be reproduced on another computer easily.

        These sound like user settings that don’t even exist outside ~/ . Rsync is your friend. So is git, gluster, syncthing, resilio, and a good bunch of others depending on how often you want synch to occur and how much time you have to spend.

    • data1701d (He/Him)@startrek.website
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 days ago

      That’s not necessarily the problem here.

      Normally, Fedora would boot on both types of systems, too. However, OP wants to copy an already-existing UEFI install or at least the config to a legacy system, not (necessarily) to find a distro that could be installed from a normal live installer on both boot types.

      Thus the Nix recommendations, as theoretically, one centralized config could be copied between systems to create a similar environment on different systems.

      • nanook@friendica.eskimo.com
        link
        fedilink
        arrow-up
        1
        ·
        10 days ago

        @data1701d Ok in that case, boot the os off of a USB and mount all the partitions, start with root on /mnt, then any other partitions relative to /mnt as they would be to root, then mount --bind /dev /mnt/dev, mount --bind /dev/pts /mnt/dev/pts, mount --rbind /sys /mnt/sys, mount --rbind /proc /mnt/proc, and then cp /etc/resolv.conf to /mnt/etc/resolv.conf, now chroot /mnt. Once there remove all existing versions of grub and install grub-pc, which is the bios version, next do grub_install /dev/sda or whatever your primary drive is, then exit chroot and halt the system. Now you should have a bios bootable system you can boot on your bios device.

  • TeryVeneno@lemmy.ml
    link
    fedilink
    arrow-up
    4
    ·
    12 days ago

    If you want something simple that does this for you: check out SaveDesktop. I’m not sure if it will meet every need, but it works for me when I need to switch.

      • TeryVeneno@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        12 days ago

        I was not able to reproduce that bug, but I also did not change anything in flatseal, I think you shoulf just reset the permissions and/or reinstall and just try it normally.

        • Dariusmiles2123@sh.itjust.worksOP
          link
          fedilink
          arrow-up
          1
          ·
          11 days ago

          I tried it normally but then it had another problem so that’s why I tried to gove it more access through Flatseal as recommended on the SaveDesktoo Github page.

          I’ll have a deeper look when I get the time. Thanks

        • Dariusmiles2123@sh.itjust.worksOP
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          10 days ago

          I’ve managed to create an archive with SaveDesktop, but only on my internal disk drive as I think the external drive was what was creating the problem.

          Do you know what would be the difference if I backup or don’t my home file? I’d have to find a way to back it up outside of home, but it’s complicated since it doesn’t work with an external drive.

          I mean I don’t think I can backup home with Savedesktop inside home, so I’ll have to look at my file structure once I can get back in front of my computer.

          • TeryVeneno@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            10 days ago

            I think the reason why it didn’t work on your external drive is that is a different permission to system files. Something to do with usb stuff.

            When it comes to backing up your home files, I’m not sure what you mean by home file? Do you mean the home folder? Cause if so I don’t think SaveDesktop can do that as that includes all your files, not just your configs. You’d have to use another tool to move those folders.

            • Dariusmiles2123@sh.itjust.worksOP
              link
              fedilink
              arrow-up
              2
              ·
              10 days ago

              Sorry as I’m struggling to express clearly.

              SaveDesktop has the option to backup your home folder.

              I was thinking that the save destination had to be outside of the home folder if I wanted to also backup my home folder. Otherwise it could end up in some kind of loop where the archive would contain itself and get bigger and bigger. That’s why I thought the SaveDesktop archive with the home folder shouldn’t be saved inside home.

              I hope It nakes more sense 😅

      • TeryVeneno@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        12 days ago

        I think it needs access to all your host files as well, let me see if I can replicate that error.

    • Lokidawg@lemmy.ml
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      1
      ·
      12 days ago

      ++. Yes, and not your standard Linux distro in design, never mind the hurdle of understanding Nix expressions and functional programming language. However, once tweaked, deployment on multiple machines is straightforward.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 days ago

      replicable.

      As someone who spent time in OS Build/Relmgmt before security, I have a pressing desire to play the “how do you know” game, here.

      • Atemu@lemmy.ml
        link
        fedilink
        arrow-up
        3
        ·
        10 days ago

        Because the only way to have a functioning NixOS system is to have it be reproducible. That’s the only way it works; Nix is reproducible by design.

        The ability to reproduce a system implies the ability to replicate it.

  • nanook@friendica.eskimo.com
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    11 days ago

    I don’t know how clonezilla works, but one thing I’ve discovered that causes issues when you copy a Linux distro from one machine to another, assuming you do a file system copy and not a raw partition copy so the new file system partition has a different UUID than the old, you need to fix the UUID in both /etc/fstab and /etc/initramfs-tools/resume before it will work properly.

    • InverseParallax@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 days ago

      Clonezilla covers this, it regens the partition with the correct uuid.

      My guess is some uefi or other boot weirdness, you have to register keys with the new system during install before it will let you boot, that’s probably where things went wrong.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 days ago

      you need to fix the UUID

      Don’t use UUIDs. They serve a very specific purpose, which you’re now trying to defeat (for all the right reasons).

      Fix your mounts and then carry on.

  • Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    ·
    12 days ago

    Can you just make a base image and then clone the image across. You would need to change the machine ID but that’s pretty easy to do.

    Alternatively you could use Ansible pull on a fresh install to set everything up

  • Lucy :3@feddit.org
    link
    fedilink
    arrow-up
    2
    ·
    12 days ago

    If you want to actually replicate one to one - any distro, and use dd or netcat to transfer the root partition. Reinstall the bootloader, update BLKIDs and you’re done. Worked for me multiple times.

  • SavvyWolf@pawb.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    12 days ago

    So the question is this: Do you want to be able to reproduce the system exactly, or are you fine taking a few hours to reinstall software. If you’re just wanting to keep settings and data for apps rather than the apps themselves, you can cut down on your storage requirements a lot.

    If it’s the latter, all of your user settings should be in your home directory (“/home/username” or just “~”). If you back that up, you should be able to recover your settings and data on a fresh install of your distro of choice.