this post was submitted on 19 Mar 2025
145 points (96.8% liked)

Linux

52005 readers
976 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

The Linux Ship of Theseus

  1. pick any distro and install it.

  2. Then, without installing another distro over the top of it, slowly convert it into another distro by replacing package managers, installed packages, and configurations.

System must be usable and fully native to the new distro (all old packages replaced with new ones).

No flatpaks, avoid snaps where physically possible, native packages only.

EDIT: Some clarification on some of the clever tools brought up here:

chroot, dd, debootstrap, and partition editors that allow you to install the new system in an empty container or blanket-overwrite the old system go against the spirit of this challenge.

These are very useful and valid tools under a normal context and I strongly recommend learning them.

You can use them if you prefer, but The ship of Theseus was replaced one board at a time. We are trying to avoid dropping a new ship in the harbor and tugging the old one out.

It may however be a good idea to use them to test out the target system in a safe environment as you perform the migration back in the real root, so you have a reference to go by.


Easy: pick two similar distros, such as Ubuntu and Debian or Manjaro and Arch and go from the base to the derivative.

Medium: Same as easy but go from the derivative to the base.

Hard: Pick two disparate distros like Debian and Artix and go from one to the other.

Nightmare: Make a self-compiled distro your target.

top 34 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 13 minutes ago* (last edited 12 minutes ago) (1 children)

So, any distro to any other distro?

  • Installs Fedora Silverblue
  • Rebases to Bazzite

Jobs done chief!

[–] [email protected] 1 points 4 minutes ago

installs ubuntu, converts to mint. bam.

[–] [email protected] 3 points 1 hour ago

kid named nixos-infect:

[–] [email protected] 4 points 3 hours ago

I think it would be very interesting to convert e.g. a regular Fedora installation into a (so-called “immutable”) Fedora Silverblue installation or vice-versa.

[–] [email protected] 5 points 4 hours ago (1 children)

debootstrap makes this easy, and familiarity with that process introduces chroot skills.

[–] [email protected] 1 points 4 hours ago* (last edited 4 hours ago) (1 children)

This goes against the spirit of the challenge, but as its a singleplayer game (unless you bring friends and SSH!) you can definitely choose to allow dd, chroot, and similar tools

[–] [email protected] 2 points 3 hours ago (1 children)

it is pretty terrifying to debootstrap over ssh. constantly checking that you're on the correct system, and using the chrooted terminal. it's like a high wire act. at least the first few times.

[–] [email protected] 1 points 1 hour ago* (last edited 1 hour ago)

Oh I totally believe that. I can imagine how stressful that is.

This challenge is meant to be a bit different though, it's supposed to be more of a "Linux Ship of Theseus." chroot, debootstrap, parted, and dd are all very efficient ways to get the job done, but they're basically just dropping a new ship in the harbor and tugging the old one out.

[–] [email protected] 2 points 4 hours ago (1 children)

Shouldn't everyone that installed Arch the right way be able to do it on most distros, simply after installing Pacman?

Though I think changing (shrink, create new, migrate, delete old) the partition layout would count as installing another distro on top...

Want a challange? Start with something like Silverblue.

[–] [email protected] 2 points 4 hours ago

Arch already has apt in the repo, so I'd imagine it's not super hard to build your own Debian from there.

[–] [email protected] 8 points 6 hours ago

I "broke" linux mint just by trying to pop KDE on, had to timeshift because it messed up my keyboard layout and a whole bunch of other things with my display.

I don't know how people do these crazy changes without pain, and have a feeling the answer is simply "there's pain" 😂

[–] [email protected] -3 points 6 hours ago* (last edited 6 hours ago) (3 children)

I am not educated enough about this, but don't these kind of games unnecesarrily strain all the servers that host the packages for people that really need them for download and most of these people run these servers for free in good will and faith that they will serve meaningful needs with positive impact? I am sorry for spoiling the fun, but I felt like I had to point this out.

[–] [email protected] 1 points 2 minutes ago

As other commenters have said, its about as strenuous as doing two normal installs.

However, if you want to do this challenge but feel guilty about the consumed resources, consider donating to the two distros you are performing this with to cover any additional service costs. In all likelihood it'll be fractions of pennies, but any reason to donate to FOSS is always appreciated.

[–] [email protected] 5 points 6 hours ago (1 children)

No? It's the same amount of "strain" as doing two full OS installs of the different distros.

[–] [email protected] 1 points 30 minutes ago* (last edited 30 minutes ago)

You are kind of right. I should have thought about that before commenting.

[–] [email protected] 10 points 6 hours ago

How is this any less meaningful than any other use case? Is downloading a distro to play video games ok? To shitpost on social media? To watch clickbait videos on youtube? Why is this in particular a bad use of resources?

[–] [email protected] 14 points 7 hours ago

New Game+: speedrun it

[–] [email protected] 8 points 7 hours ago

I have seen dozens of systems migrated from Gentoo to CentOS by live swapping the userspace and eventually rebooting into the new kernel. A hair raising experience to be sure.

[–] [email protected] 8 points 9 hours ago

I once switched from Debian i386 to amd64 in-place. That was MUCH harder than you would expect, I guess somewhere between medium and hard in your list. That server is still running that install btw, so in the end it all worked out.

[–] [email protected] 5 points 9 hours ago

It is quite easy to go slackware -> gentoo from what I remember but minimalist distros might be cheating

[–] [email protected] 2 points 9 hours ago (1 children)

Is that even possible? I'm already in panic when I remove a package and it's dependencies with pacman 😅.

Sure I did replaced Thunar with Nemo, but a few things don't work exactly how it should, like opening the download directory from Firefox (Known issue BTW) even though all mime-types are correctly set !

Even switching from Alternative -> Base distro seems like a really difficult task :/

[–] [email protected] 8 points 7 hours ago

Possible? Absolutely. Pleasant? Hell, no.

[–] [email protected] 14 points 9 hours ago

To add sadism on top of masochism, tell all your friends how you did it in great detail

[–] [email protected] 44 points 10 hours ago (1 children)
[–] [email protected] 40 points 8 hours ago

But the rules say the system must be usable.

[–] [email protected] 5 points 10 hours ago

Linux From Scratch rulez!

Migrate from Nix to Linux From Scratch!

[–] [email protected] 22 points 10 hours ago

Reminds me of a recent post someone converted their system from Debian to OpenBSD via SSH only

[–] [email protected] 54 points 11 hours ago (2 children)

I would watch a YouTube series doing this

[–] [email protected] 4 points 6 hours ago (1 children)

Reminds me of MattKC, a guy on YouTube who does similar stuff. He ported the .Net framework to win95. very interesting videos, if think this challenge would be exactly his type.

[–] [email protected] 6 points 4 hours ago (1 children)

Love him. His lego island port has been a pleasure to watch.

[–] [email protected] 3 points 4 hours ago

Oh he's the Lego Island guy, I thought he sounded familiar.

[–] [email protected] 16 points 8 hours ago

whoever runs the channel will singlehandedly cause a worldwide antidepressant shortage

[–] [email protected] 20 points 11 hours ago (1 children)

“Medium: Same as easy but go from the derivative to the base.”

I can't quite recall, but I think I did exactly that with Ubuntu -> Debian once upon a time. I think Ubuntu was only a year or so old though, so there wasn't a huge amount of divergence back then. As a bonus anecdote I also attempted a semi-successful build of Gentoo on a PPC Mac around the same time (nothing before or after that has compared in its level of nightmare).

[–] [email protected] 4 points 8 hours ago

I also attempted a semi-successful build of Gentoo on a PPC Mac around the same time (nothing before or after that has compared in its level of nightmare).

Amen!