• λλλ
    link
    fedilink
    arrow-up
    1
    ·
    9 months ago

    I thought about doing that but updating nixos confuses me. Does nixos-rebuild switch pull new packages? To my understanding there is a file that saves all currently installed versions of packages and switch only adds new things but wouldn’t update packages.

    Like, if I want to update Google Chrome. Doing switch wouldn’t change anything if the config hasn’t changed, right?

    • null@slrpnk.net
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      9 months ago

      I believe that’s correct – if nothing has changed from your last generation, then the new generation will be identical. But if something has changed, it will do a bunch of duplicating and remapping symlinks in the Nix store to ensure that everything plays nicely together and that you can rollback to a previous generation if needed.

      So if you do a rebuild switch regularly, you will end up with gigs worth of old “copies” of things that aren’t being referenced in your current generation.

      That’s what nix-collect-garbage handles – once you know your current generation is working well, you collect the garbage and recover that space, at the expense of not being able to roll back.

      That’s why I think building a core system with NixOS and then having user software come from Flatpak is a nice combo for simple workstation that won’t update and bork itself, leaving my grandpa without a laptop until I can come take a look.

      Edit: To clarify, nixos-rebuild-switch won’t update your Flatpaks at all – just the Flatpak service

      • λλλ
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        9 months ago

        That makes a lot of sense. I can setup their computer with nixos and stuff that needs to be updated regularly (like a web browser) can be flatpak which should be more stable too.

        Then flatpak update would get them updated without rebuilding the whole OS.

        My grandparents have been rocking Linux Mint for a few years. I have managed Chrome through Flatpak since I discovered that was possible on Mint. I’ve been flirting with the idea of having NixOS instead so I don’t have to remember what I’ve configured in the past. I’m not 100% sure now though :-P

        • null@slrpnk.net
          link
          fedilink
          arrow-up
          1
          ·
          9 months ago

          Exactly right. Throw in Plymouth and set the bootloader timeout to 0 and you’ve got a noob-friendly workstation.

              • λλλ
                link
                fedilink
                arrow-up
                1
                ·
                9 months ago

                Oh cool. My grandparents don’t have any idea that scrolling text isn’t normal on startup. Neat project though!