theme.yml detected via statx() but never opened/read (icons and colors silently ignored)
Version: eza 0.23.5-2 (Arch Linux official extra repo build)
OS: Arch Linux
Terminal: kitty
Description
With EZA_CONFIG_DIR explicitly set (and also tested with the default
$XDG_CONFIG_HOME/eza location), a valid theme.yml file is detected
by eza but none of its contents (icon overrides under filenames, or
color overrides under filekinds) are ever applied. Output is
identical to running eza with no theme.yml at all.
Steps to reproduce
- Create
~/.config/eza/theme.yml:
colourful: true
filekinds:
directory:
foreground: Red
filenames:
"Cargo.toml":
icon:
glyph: ""export EZA_CONFIG_DIR="$HOME/.config/eza"touch ~/Cargo.tomleza --icons -l ~
Expected: directories shown in red, Cargo.toml shown with icon. Actual: default colors/icons, no override applied.
Evidence
strace shows eza stats the file but never opens it for reading:
strace -f -s 256 -e trace=%file eza --icons -l ~ 2>&1 | grep theme
statx(AT_FDCWD, "/home/Sergio/.config/eza/theme.yml", AT_STATX_SYNC_AS_STAT, STATX_ALL, {stx_mask=STATX_ALL|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=1774, ...}) = 0No subsequent openat call for that path appears anywhere in the trace,
suggesting the code path that checks theme.exists() never proceeds to
actually load the file's contents.
Source: eza-community/eza