<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dot.git/config/alacritty/mux.toml, branch master</title>
<subtitle>Shell, editor and terminal configuration, and the tools that go with them
</subtitle>
<id>https://git.soarez.net/sz/dot.git/atom?h=master</id>
<link rel='self' href='https://git.soarez.net/sz/dot.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.soarez.net/sz/dot.git/'/>
<updated>2026-10-05T06:45:05+00:00</updated>
<entry>
<title>alacritty: the mux launch in its own import, overridable per machine</title>
<updated>2026-10-05T06:45:05+00:00</updated>
<author>
<name>Igor Soarez</name>
<email>igor@soarez.org</email>
</author>
<published>2026-10-05T06:45:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.soarez.net/sz/dot.git/commit/?id=fac95146b95ef103e8100b2284671be4bdc1065f'/>
<id>urn:sha1:fac95146b95ef103e8100b2284671be4bdc1065f</id>
<content type='text'>
Alacritty merges the importing file last, over all of its imports
(v0.17.0: merge(imports, config)), so the inline [terminal.shell] could not be
replaced from local.toml at all; local.toml only ever got away with keys the
main file leaves unset. The launch now lives in mux.toml, imported first, and
local.toml, imported after it, can replace it.

But only in the string form. Alacritty's merge appends arrays rather than
replacing them, key by key (serde_utils.rs), so a [terminal.shell] table in
local.toml would put its args after tmux's, zsh would run the first -c, and
the window would open in tmux with no error -- the override the filed request
described would not have worked. mux.toml and AGENTS.md say how to do it:
`[terminal] shell = "/path/to/launcher"`, which replaces the whole table.

No machine changes today: the existing local.toml files set fonts only.

From change request 0bd5fb.
</content>
</entry>
</feed>
