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?
NixOS. A big learning curve but replicable.
++. 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.
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.
- Transfer/copy your entire
Personally, I use Fedora Silverblue and use bash scripts for reproducibility. To set up a new system, all I need to to is install, reboot, run my bash script, reboot, and my system is 90% configured. With bash scripts, I am able to reproduce more of my system than I could when I used NixOS.
A lot of people recommend Nix, but the thing about Nix is that you’re only declaring how the system is configured. Not your home folder. You need to rely on third party tools for that.
Bash scripts can configure system and home folder. They can also be used on any distro, whereas a Nix configuration file only works on NixOS.
Though the worst part about any new install is just signing back into everything, especially an annoyance when you have proper 2FA setup. Bash scripts or Nix can’t solve that unless you migrate data over.
What is a bash script? Is it something I’d have to write mysel using the terminal? Sorry but my skills are quite limited for now.
Yes, it’s something you write yourself. Bash is the language you use when you use the terminal. A bash script is just many lines of bash commands.
A bash script could be as simple as
dnf install package1 package2 package3 dnf remove package4 package5 package6
This script automates installing some packages and removing some packages. The bash script I use does a lot more, such as running commands to configure Gnome how I like it.
If you’re not comfortable with the terminal, I would definitely recommend staying away from NixOS. To declaratively/reproducibly set up the system, it uses a language called Nix that is a fair bit more complicated than bash. It’s also just very different from traditional Linux systems like Fedora or Ubuntu.
Seperate home is a must imho. Fedora had kickstart but alas a little old. This may help. https://discussion.fedoraproject.org/t/here-is-how-to-easily-create-a-bootable-clone-of-your-fedora-system-disk/111308
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.
NixOS is the sort answer. It’s reproducible across hardware. But I’ve never tested it.
nixos
deleted by creator
Could I make an image of my Fedora Workstation install?
I’m struggling to understand what all these ublue or other images are…
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.
Oh from reading what’s in the link, it looks like it’s exactly what I need.
I’ll go deeper into it.
Would you know why I’m getting that error? :
I’ve already allowed access to all system files through Flatseal.
I think it needs access to all your host files as well, let me see if I can replicate that error.
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.
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.
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.
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 😅
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
As a counterpoint to the majority of answers here, I’d love to suggest GNU Guix as the best answer. Like Nix, but enhanced for freedom with a formidable governance model. Built on freedom. Built to last forever. Also easier and more beautiful
How’s it’s hardware support GNU Trisequel was bad in that regard
it is built so that non-free packages can be made easily available (e.g. the non-guix channel). being sort of a meta-OS, already a bunch of operating systems were built on top of it, arguably easier to just get started as a novice
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?
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.