I wholeheartedly agree with this blog post. I believe someone on here yesterday was asking about config file locations and setting them manually. This is in the same vein. I can’t tell you how many times a command line method for discovering the location of a config file would have saved me 30 minutes of googling.

  • teawrecks@sopuli.xyz
    link
    fedilink
    arrow-up
    9
    ·
    2 years ago

    ~/.config is the non-root version of /etc these days. But you just have to know that, which isn’t ideal.

    • Jummit@lemmy.one
      link
      fedilink
      arrow-up
      8
      ·
      edit-2
      2 years ago

      If you are a developer, please take a look at the XDG Base Directory Specification and try to follow it, users will be very grateful.

      Short summary: Look for $XDG_CONFIG_HOME for configs and $XDG_STATE_HOME for state. If they aren’t available, use the defaults (./config and .local/share).

      • teawrecks@sopuli.xyz
        link
        fedilink
        arrow-up
        7
        ·
        edit-2
        2 years ago

        ~/.local is the non-root version of /usr. By .appname do you just mean a folder that a specific app made in your home for itself? Yeah, I never condone that. imo that’s just a badly behaving app. It should move that folder into ~/.config.

    • barsoap@lemm.ee
      link
      fedilink
      arrow-up
      2
      ·
      2 years ago

      Configuration for root is in /root/, that is, root’s home directory. /etc is for system configuration, different thing.

    • heeplr@feddit.de
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      otoh, unix directory structure is far from black magic once you know it. I have yet to see an OS that does it that elegantly (leaving aside systemd)