[FEATURE] Restructure Zsh config to follow XDG Base Directory
Los mantenedores suelen responder en 1 día
@mylinuxforwork ya está trabajando en esto.
Desde el 6/9/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Is your feature request related to a problem? Please describe.
The current Zsh setup places .zshrc directly in home directory and links configs from ~/.config/zshrc/ or .zshrc_custom file that may be created in home directory. Moreover, runtime files like .zsh_history and zcompdump files end up directly in the home directory, polluting the root of home directory.
Potential conflict with existing ZDOTDIR in ~/.zshenv:
If a user already has a ~/.zshenv setting ZDOTDIR (e.g., pointing to ~/.config/zsh), Zsh will search for .zshrc inside $ZDOTDIR and completely ignore the ~/.zshrc file generated/placed by the ML4W installer in home directory. Moving to a native ZDOTDIR architecture prevents this conflict and ensures ML4W configs are loaded predictably.
Describe the solution you'd like
- Instead of putting
.zshrcin home directory, create a minimalist~/.zshenvfile that sets exportZDOTDIR="$HOME/.config/zsh". - Move all Zsh configuration files (.zshrc, aliases, plugins and etc) inside
$ZDOTDIR/(~/.config/zsh/). - Explicitly set paths inside Zsh config for history and completion dump files to keep home dir clean:
# History
HISTFILE="$ZDOTDIR/.zsh_history"
# Cache
## check if cache folder env exists and set if not
: "${XDG_CACHE_HOME:=$HOME/.cache}"
## check if ZSH folder exists in .cache folder and create if not
[[ -d "$XDG_CACHE_HOME/zsh" ]] || mkdir -p "$XDG_CACHE_HOME/zsh"
## set folder for ZSH cache
autoload -Uz compinit
compinit -d "$XDG_CACHE_HOME/zsh/zcompdump-$ZSH_VERSION"
Describe alternatives you've considered
No response
Additional context
Following the XDG Base Directory Specification makes dotfiles much cleaner, modular, and easier to backup/manage.
Support or Contribution
- Lenguaje dominante
- QML
- Estrellas
- 5.1k
- Forks
- 386
- Merge medio
- 16 h 45 min
- PR fusionados (30 d)
- 14
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mylinuxforwork/dotfiles
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
mylinuxforwork/dotfiles#1904 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 82/100
mylinuxforwork/dotfiles#1829 ·
Los mantenedores suelen responder en 1 día
-
enhancement solved
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
mylinuxforwork/dotfiles#1807 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
mylinuxforwork/dotfiles#1765 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[FEATURE] add keycap 1 app window over all windowsPosiblemente ocupada @mylinuxforwork la tomó hace 1 día. Abiertoenhancement
mylinuxforwork/dotfiles#1902 · 1 asignado ·
Los mantenedores suelen responder en 1 día