I have Bazzite running on a BC-250 machine. A few weeks ago, I made some changes using rpm-ostree related to zram and swap. I had assumed that, because I used rpm-ostree, the changes would become part of the “tree” and I could rollback to the original settings. But when I went to look at Bazzite’s rollback tools, it seemed solely focused on rolling back to previous official releases, and I couldn’t find any reference to the specific changes I made.

  • throwaway403@programming.dev
    link
    fedilink
    arrow-up
    9
    arrow-down
    1
    ·
    edit-2
    9 hours ago

    I made some changes using rpm-ostree related to zram and swap

    Could you be more transparent and/or elaborate in this regard? Like, what did you actually do?

    FWIW, I’ve been on Fedora Atomic since before Bazzite’s existence, but I’ve never once considered using rpm-ostree to make changes to zram and swap. So, I’m a bit confused. To be clear, it’s perfectly possible that what you did is 100% legit, but that it just happened to expose a gap in my knowledge.

    I had assumed that, because I used rpm-ostree, the changes would become part of the “tree” and I could rollback to the original settings. But when I went to look at Bazzite’s rollback tools, it seemed solely focused on rolling back to previous official releases, and I couldn’t find any reference to the specific changes I made.

    Basically, while rpm-ostree does offer git-like control on your base system; hence, why it’s so powerful to begin with. It does not keep more than two deployments around; at least, by default.

    If you would like to keep around a specific deployment (for whatever reason), you can do so with the ostree admin pin <insert number> command. The git-like control also enables you to keep track of:

    • the changes applied to /etc; invoke ostree admin config-diff to see what files have been added or modified since installation
    • layered packages; simply invoke rpm-ostree status

    Keeping track is cool and all, but its usefulness is in full display with powerful applications such as:

    • rpm-ostree reset; this basically removes all permutations. That is, two people on the same image, will have the identical base system after this. (Note that this still isn’t as powerful as a factory reset. For that, refer to this issue tracker on bootc[1].)

    Finally, the git-like structure ensures actual reversibility. On most other systems, installing A -> installing B -> uninstalling A will yield a different state than just installing B. With rpm-ostree, the base system between the two will be identical.


    For completeness’ sake, I’ve used “base system” above to just mean the contents of /usr and /etc (and maybe some other subdirectories of /). Crucially, the contents of /var are not part of the “base system”.


    1. On that note, bootc’s model is arguably better suited if you’re just interested in finding back references to changes you made in the past. Granted, bootc offers a hefty amount of freedom in how you’d approach this and might be overwhelming for now. FWIW, both Bazzite and this are products of this. ↩︎

  • breadsmasher@lemmy.world
    link
    fedilink
    English
    arrow-up
    19
    arrow-down
    1
    ·
    edit-2
    12 hours ago

    https://docs.bazzite.gg/Installing_and_Managing_Software/rpm-ostree/

    Layering packages irresponsibly can be destructiveand may prevent updates as well as other issues until the layered packages are removed.

    Use this method as a last resort and for anything at a “system-level” only since it can pause updates, if the package contains dependency issues with future upgrades, until the package is uninstalled.

    MAJOR caveats using rpm-ostree

    Layering packages can cause severe consequences including:

    • Pause system updates until package(s) are uninstalled.
    • Prevent rebasing to different images until package(s) are uninstalled.
    • Conflict with existing packages as part of the image leading to dependency issues.
    • Updates taking longer to download as you layer more packages to your system.

    Youre breaking a core tenant of immutable distros by installing system level packages. i think that might be your misunderstanding?

    • throwaway403@programming.dev
      link
      fedilink
      arrow-up
      5
      ·
      edit-2
      9 hours ago

      Bazzite’s messaging has merit, but we’d be making a mistake by regarding it as absolute. It makes more sense to take them as carefully written guide lines for a specific audience.

      Furthermore. with all due respect, but OP’s writing doesn’t imply installing/managing software with rpm-ostree. Which, is actually the subject of the documentation entry you quoted. As such, I think you might have misunderstood them.

      Youre breaking a core tenant of immutable distros by installing system level packages.

      Finally, FWIW, I absolutely disagree with the above. The page you quoted from seems to agree with me on this: “Layering packages are mostly intended for system-level applications, libraries, and other dependencies.”