diff --git a/docs/COMPARISON.md b/docs/COMPARISON.md index b289535e97a..b80ea514431 100644 --- a/docs/COMPARISON.md +++ b/docs/COMPARISON.md @@ -25,33 +25,33 @@ | -------------------------------------- | ------------- | ----------------- | ----------------- | ----------------- | ------------------------ | ------------- | ---------- | | Distribution | Single binary | Python package | Multiple files | Ruby gem | Single script or package | Single script | - | | Install method | Many | git submodule | Many | Ruby gem | Many | Many | Manual | -| Non-root install on bare system | 🟢 | 🟠 | 🟠 | 🟠 | 🟢 | 🟢 | 🟢 | -| Windows support | 🟢 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | 🟢 | +| Non-root install on bare system | ✅ | ⁉️ | ⁉️ | ⁉️ | ✅ | ✅ | ✅ | +| Windows support | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | | Bootstrap requirements | None | Python, git | Perl, git | Ruby, git | sh, git | git | git | | Source repos | Single | Single | Multiple | Single | Multiple | Single | Single | | dotfiles are... | Files | Symlinks | Files | Symlinks | Files | Files | Files | | Config file | Optional | Required | Optional | None | None | None | Optional | -| Private files | 🟢 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | -| Show differences without applying | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🟢 | 🟢 | -| Whole file encryption | 🟢 | 🔴 | 🔴 | 🔴 | 🔴 | 🟢 | 🔴 | -| Password manager integration | 🟢 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | -| Machine-to-machine file differences | Templates | Alternative files | Alternative files | Alternative files | Branches | Templates | 🟠 | -| Custom variables in templates | 🟢 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | -| Executable files | 🟢 | 🟢 | 🟢 | 🟢 | 🟢 | 🔴 | 🟢 | -| File creation with initial contents | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🔴 | 🔴 | -| Externals | 🟢 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | 🔴 | -| Manage partial files | 🟢 | 🔴 | 🔴 | 🔴 | 🟠 | 🔴 | 🟠 | -| File removal | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🔴 | 🔴 | -| Directory creation | 🟢 | 🟢 | 🟢 | 🔴 | 🟢 | 🔴 | 🟢 | -| Run scripts | 🟢 | 🟢 | 🟢 | 🔴 | 🟢 | 🔴 | 🔴 | -| Run once scripts | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🔴 | 🔴 | -| Machine-to-machine symlink differences | 🟢 | 🔴 | 🔴 | 🔴 | 🟠 | 🟢 | 🟠 | -| Shell completion | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🟢 | 🟢 | -| Archive import | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🔴 | 🟢 | -| Archive export | 🟢 | 🔴 | 🔴 | 🔴 | 🟢 | 🔴 | 🟢 | +| Private files | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Show differences without applying | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | +| Whole file encryption | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | +| Password manager integration | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Machine-to-machine file differences | Templates | Alternative files | Alternative files | Alternative files | Branches | Templates | ⁉️ | +| Custom variables in templates | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Executable files | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | +| File creation with initial contents | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | +| Externals | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| Manage partial files | ✅ | ❌ | ❌ | ❌ | ⁉️ | ❌ | ⁉️ | +| File removal | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | +| Directory creation | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ | +| Run scripts | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | +| Run once scripts | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ❌ | +| Machine-to-machine symlink differences | ✅ | ❌ | ❌ | ❌ | ⁉️ | ✅ | ⁉️ | +| Shell completion | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | +| Archive import | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ✅ | +| Archive export | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ | ✅ | | Implementation language | Go | Python | Perl | Ruby | POSIX Shell | Bash | C | -🟢 Supported 🟠 Possible with significant manual effort 🔴 Not supported +✅ Supported, ⁉️ Possible with significant manual effort, ❌ Not supported For more comparisons, visit [dotfiles.github.io](https://dotfiles.github.io/).