Files
fish-shell/tests/checks
Johannes Altmanninger 654041895b Stop using universal __fish_initialized to detect first launch
As of 7640e95bd7 (Create user config file/directories only on
first startup again, 2025-12-29) we interpret absence of the
__fish_initialized variable as "this is the first run, so create
~/.config/fish/conf.d etc.".

As reported in #11226, the presence of this universal variable causes
friction to users who track ~/.config/fish/fish_variables in version
control.

Also, __fish_initialized is the only universal variable we create
by default.

Use another way to detect the first run: since we already create
~/.config/fish on every run, assume that a successful mkdir() means
we should also create the subdirectories.

This has false negatives (if the user already created the directory)
and false positives (if the user doesn't want ~/.config/fish to exist)
but at least the latter should not really matter because historically
we always created it, at least for ~/.config/fish/fish_variables.

Alternatively, we could create a file at ~/.cache/fish/first-run-done.
But let's not add more state unless there's a good reason.
2026-06-09 22:31:14 +09:00
..
2025-06-23 13:53:43 +02:00
2026-01-21 17:43:26 +01:00
2025-12-17 10:27:24 +08:00
2026-04-11 18:55:00 +08:00
2025-04-18 20:22:30 +02:00
2026-04-11 18:55:00 +08:00
2026-01-30 09:30:57 -08:00
2025-03-13 18:13:10 +01:00
2026-03-25 21:53:05 +08:00
2025-03-13 18:13:10 +01:00
2025-11-23 12:30:22 +01:00
2026-04-11 18:55:00 +08:00
2025-03-13 18:13:10 +01:00
2025-10-11 18:02:57 +02:00
2025-01-26 20:30:48 -08:00
2026-04-11 18:55:00 +08:00
2026-04-11 18:55:00 +08:00
2026-04-11 18:55:00 +08:00