I noticed while updating my system just how many packages I have installed that I don’t recognize.

I tend to think that minimalism is better for security, so I’d like to remove any packages that I’m not using, but this is a bit of a scary task.

Does anybody have a safe method for reviewing and purging unused or bloat packages while obviously making sure not to accidentally remove important dependencies?

I’m on arch btw.

  • superkret@feddit.org
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    4 hours ago

    Just leave it. Either they do something in the background. Then you’ll get issues when they’re missing, and you’ll never know which package is missing for what.
    Or they don’t do anything, then they just take up a few MB of disk space.

    “Cleaning up” is the most sure-fire way to destroy your OS, and absolutely not worth anyone’s time. Trust me, I’ve made that mistake multiple times.

  • cravl@slrpnk.net
    link
    fedilink
    arrow-up
    0
    ·
    1 day ago

    For anyone reading this on a Debian-based system, you can get a good start without risking removing anything important like this:

    1. Run apt-mark showmanual, and copy any package names you don’t think you need into a list.
    2. Run apt-mark auto <pkg1> <pkg2> ...
    3. Run apt autoremove
  • Geodad@lemm.ee
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 day ago

    Assuming you are using something Debian based, you can use:

    apt purge (package name)

    Followed by:

    apt autoremove

  • Eugenia@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    2 days ago

    These are just dependencies for your packages. However, Arch doesn’t automatically clean the downloaded files after installation so that ends up taking space. On my Dell laptop that has only a 64 GB eMMC, the installation package files took and whopping 5 GB of space, sitting there doing nothing. I nuked them (it didn’t remove the installed apps and libs, only the already used package files). Run: sudo pacman -Scc

  • JASN_DE@feddit.org
    link
    fedilink
    arrow-up
    0
    ·
    2 days ago

    That’s because a lot of them are dependencies for the packages you actually want to use, and those needed for the system to work as designed.

  • audaxdreik@pawb.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    2 days ago

    When I switched to Arch, I started a notebook in Obsidian with a bunch of different information in it, I have a section devoted to Maintenance. Here are a few things I’ve put in there:

    Clean package cache with paccache: https://ostechnix.com/recommended-way-clean-package-cache-arch-linux/

    Clean orphaned dependencies: sudo pacman -Rs $(pacman -Qtdq)

    For yay, I’m unsure if I should be using -Yc, -Sc, or -Scc. If anyone has more info with that, I’d appreciate it.

    For flatpak: flatpak uninstall --unused

    And for journals: journalctl --vacuum-time 7days


    That’s most of the “automatic” stuff, cruft that can be cleaned out with little to no consequence. Other than that, you’ll just have to manually review what you have on your system.

    If anyone has other commands or comments on the ones I provided, I’d be happy to accept further advice here as well 😃

    • nous@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 days ago

      Clean orphaned dependencies: sudo pacman -Rs $(pacman -Qtdq)

      In addition to this, or rather before, you can run pacman -D --asdeps package_name to mark a package as a dep. If it is no longer required by something else it will be removed with the above. This can be useful for things that are deps that you installed manually at some point for some reason.

      And remember that you can recover from anything, even removing base packages or bootloader ones with a live cd and chroot or using pacman with a different root with the --root /mnt flag to pacman.

      Otherwise if your system still boots it is just a matter of following the install instructions for whatever is not working like you did the first time.

      • audaxdreik@pawb.social
        link
        fedilink
        English
        arrow-up
        0
        ·
        1 day ago

        In addition to this, or rather before, you can run pacman -D --asdeps package_name to mark a package as a dep. If it is no longer required by something else it will be removed with the above. This can be useful for things that are deps that you installed manually at some point for some reason.

        Oh, that’s some amazing info, thanks!

        I had noticed this might be a problem when I was setting something up and tried to install a dependency that was already on the system. It informed me it was being set to explicit and I wondered if it might lead to a situation like that.

        • nous@programming.dev
          link
          fedilink
          English
          arrow-up
          0
          ·
          15 hours ago

          --asdeps also works when installing something to immediately mark it as a dep. Can be useful for non dep packages if you only need it temporarily as it will be removed the next time you purge unused deps.