• Cyborganism@lemmy.ca
    link
    fedilink
    arrow-up
    5
    ·
    14 hours ago

    (correct me if I’m wrong, I’m also new at this)

    There are two partitions. One with the current system, one with the previous system. Updates are applied in a whole batch at once, once in a while.

    Current system is cloned into the old one and an update is applied to the clone.

    Once the update is complete, system reboots in the clone, and what was the current system becomes the previous one.

    If something goes bad, you can reboot into the previous system and fix the clone.

    • chirping@infosec.pub
      link
      fedilink
      English
      arrow-up
      1
      ·
      5 hours ago

      that is one way to do it, and it’s a very common one - it’s robust and simple. So I can’t correct you, but thought I would add to it. In NixOS, they’ve improved it by making sure all your apps are symlinked, and when updating, these symlinks are updated. That way you can start using your newly updated system straight away, without a reboot. When rebooting, you are prompted to which generation you want to boot into, (defaulting to “latest” after a few seconds of no input) making rollbacks a breeze.

      • ProjectPatatoe@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 hours ago

        I believe this is how android has been for as long as i have used it. At least A6 or A7. Could be earlier but I haven’t used those enough

      • Cyborganism@lemmy.ca
        link
        fedilink
        arrow-up
        2
        ·
        11 hours ago

        Yes, it uses an immutable atomic distro. I don’t know about Android phones, but I wouldn’t be surprised.