xdg-ninja is a shell script that checks for unwanted files and directories in the user’s home directory and suggests moving them to an appropriate location. The script uses a configuration file that contains rules for identifying unwanted files and directories. The configurations are from the arch wiki page on XDG_BASE_DIR, antidot, and contributions from other users. The script can be run manually by cloning the repository and running the xdg-ninja.sh script or installed with Homebrew. Optional dependencies include glow for rendering Markdown in the terminal. The script is available on GitHub. The tool has been discussed on Reddit and Hacker News.

  • Turbo@lemmy.ml
    link
    fedilink
    arrow-up
    3
    arrow-down
    2
    ·
    1 year ago

    I’m not understanding why we don’t want some config files in our home dir

    Where else would we put them and why would I want to have to back then all up from different places?

    Thx

    • why would I want to have to back then all up from different places?

      That’s the point, putting them all in ~/.config and a bunch of other common places makes backups easy. My home directory is filled with XDG incompliant dotfiles but also with some Xorg logs, a bunch of session tokens, a few hidden directories that seem to be used for cache, and some other stuff I don’t really want to be part of my config backup like the Flatpak .var store.

      With XDG, you’re free to set your config path to $HOME if you’d like. I’d like programs to stick to ~/.config, ~/.csche, and ~/.local for config, cache, and application storage.

      • Turbo@lemmy.ml
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        Okay, got you. Thanks. Maybe I’m just use to it, and selectively backup stuff from my home without doing a full sync.

        Thanks for the answer.

    • cdombroski@programming.dev
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      Typically xdg-ninja will tell you how to set things up so as many dot files and directories as possible end up in the correct xdg location instead of cluttering up the top level of your home directory.