aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-07-04 18:09:20 +0900
committernsfisis <nsfisis@gmail.com>2026-07-04 18:13:36 +0900
commitdea563685a1da4770c38e1878118636ee7b9b253 (patch)
tree9384d8100f66eb6fbf6828a456153a58398eb240 /docs
parentafe51053abd338e50fcc0fee3ba641721058da26 (diff)
downloadphp-shirabe-dea563685a1da4770c38e1878118636ee7b9b253.tar.gz
php-shirabe-dea563685a1da4770c38e1878118636ee7b9b253.tar.zst
php-shirabe-dea563685a1da4770c38e1878118636ee7b9b253.zip
feat(config): use shirabe-branded default home/cache/data dirs
Avoid colliding with an existing Composer installation on the same machine by defaulting COMPOSER_HOME/CACHE_DIR/DATA_DIR paths to shirabe/Shirabe instead of composer/Composer, while keeping the env var names, composer.json/lock, and vendor/composer/ unchanged for ecosystem compatibility.
Diffstat (limited to 'docs')
-rw-r--r--docs/known-incompatibilities.md23
1 files changed, 23 insertions, 0 deletions
diff --git a/docs/known-incompatibilities.md b/docs/known-incompatibilities.md
index 6f043ca..7b9b685 100644
--- a/docs/known-incompatibilities.md
+++ b/docs/known-incompatibilities.md
@@ -7,3 +7,26 @@ NOTE: This is not an exhaustive list. Shirabe is in early development and there
Error messages, in particular those from PHP built-in functions, are not intended to be mapped exactly.
Plugins or external tools that rely on error messages may break.
+
+
+## Default Home/Cache/Data Directories
+
+To avoid conflicting with an existing Composer installation, Shirabe's default system directories
+use `shirabe`/`Shirabe` instead of `composer`/`Composer`.
+
+| Purpose | OS | Composer default | Shirabe default |
+| --------- | ------------- | ------------------------------- | ------------------------------ |
+| Home dir | Unix, XDG | `$XDG_CONFIG_HOME/composer` | `$XDG_CONFIG_HOME/shirabe` |
+| Home dir | Unix, non-XDG | `$HOME/.composer` | `$HOME/.shirabe` |
+| Home dir | Windows | `%APPDATA%/Composer` | `%APPDATA%/Shirabe` |
+| Cache dir | Unix, XDG | `$XDG_CACHE_HOME/composer` | `$XDG_CACHE_HOME/shirabe` |
+| Cache dir | macOS | `$HOME/Library/Caches/composer` | `$HOME/Library/Caches/shirabe` |
+| Cache dir | Windows | `%LOCALAPPDATA%/Composer` | `%LOCALAPPDATA%/Shirabe` |
+| Data dir | Unix, XDG | `$XDG_DATA_HOME/composer` | `$XDG_DATA_HOME/shirabe` |
+
+The following are intentionally left unchanged for ecosystem compatibility:
+
+* `composer.json` and `composer.lock`
+* `vendor/composer/` directory
+
+TODO: a CLI flag or an environment variable to force Shirabe to use compatible paths.