Earlier this year, I built a new PC and it’s running Ubuntu. I’ve been installing various apps and configuring them since then. Now, I realize I don’t have any way of knowing what I would want to reinstall, if I (for instance) lost this drive somehow.

How do you keep track of what you’ve installed/ your favorite apps?

Separately, how can I backup the configurations I’m using right now.

Thanks!

  • zacher_glachl@lemmy.world
    link
    fedilink
    English
    arrow-up
    38
    ·
    11 months ago

    Git.

    Keep all the config files of your tools in subdirectories of a git versioned directory and symlink them into their target location (e.g. with GNU stow). If installation of a tool is involved and you expect to have to revisit it, put the steps into an installation bash script and version it as well.

    • mariom@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      11 months ago

      +1, essential ones I keep in GitHub repository (like zsh, tmux, xdefaults configs with no personal data). With makefile that makes symlinks. This is the easiest way to sync zsh config between my personal and work machines.

      Rest is just in a backup.

      • hikarulsi@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        Do you have an example of a generalise makefile that does that? Or does it need to be customise per configuration?

    • eshep@social.trom.tf
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      11 months ago

      @zacher_glachl @perishthethought I take a similar approach starting with a bare work-tree at $HOME/.cfg and add config files I’ve changed. Then throw my --git-dir and --work-tree switches in an alias for git.

      As for installed programs, a simple backup of my portage world file takes car of that.