Skip to content

Commit

Permalink
Add a page about package configuration locations
Browse files Browse the repository at this point in the history
  • Loading branch information
lazka committed Oct 15, 2023
1 parent cea72a9 commit a7f411a
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 0 deletions.
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ nav:
- docs/package-management-tips.md
- docs/package-management-faq.md
- docs/filesystem-paths.md
- docs/configuration.md
- Languages & Tools:
- docs/cmake.md
- docs/autotools.md
Expand Down
25 changes: 25 additions & 0 deletions web/docs/configuration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Configuration Locations

Cygwin packages, like openssh and git, follow the standard Unix conventions and
use your `$HOME` or `$HOME/.config` directory for storing the user configuration
and `/etc` for the system configuration.

For native Windows programs the situation is a bit more complicated. For the
user configuration some programs use the standard Windows paths, such as
`%USERPROFILE%\AppData\Roaming`. In some cases native Windows programs are
minimally ported from Unix and will write to `%USERPROFILE%\.appname` or
`%USERPROFILE%\.config\appname`, or they will prefer the `HOME` environment
variable over `USERPROFILE` and store their configuration in `$HOME\.appname` or
`$HOME\.config\appname` like their Unix variants. For the system configuration
some programs might store them alongside their other data files or in case they
were ported from Unix they might follow the Unix layout and store things in
`$MINGW_PREFIX/etc/appname`

## FAQ

**Can't all programs use the same location for their user configuration?**

While having two locations for configuration can be confusing we want native
programs to follow Windows conventions and be independent from MSYS2. Also we
don't want to change the behavior of programs compared to their upstream
versions unless we have to.

0 comments on commit a7f411a

Please sign in to comment.