<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotfiles/dot_local/bin, branch master</title>
<subtitle>My linux config and rc files
</subtitle>
<id>https://git.sommerfeld.dev/dotfiles/atom?h=master</id>
<link rel='self' href='https://git.sommerfeld.dev/dotfiles/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/'/>
<updated>2026-04-21T00:24:58Z</updated>
<entry>
<title>efistub -&gt; UKI migration</title>
<updated>2026-04-21T00:24:58Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:24:58Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=c1343b0e0cf1df3bd04e8ad824af4ff96369080c'/>
<id>urn:sha1:c1343b0e0cf1df3bd04e8ad824af4ff96369080c</id>
<content type='text'>
Track /etc/kernel/cmdline and enable default_uki/fallback_uki in
linux.preset. Remove create-efi helper (UKI is self-contained; only
needed once at install time). Update bootstrap to print the one-off
efibootmgr command instead of launching create-efi.
</content>
</entry>
<entry>
<title>fix(zprofile): export DISPLAY=:0 for XWayland before exec sway</title>
<updated>2026-04-21T00:24:40Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:24:40Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=f65413f0287242fa63cfa030f6cc714e350ece61'/>
<id>urn:sha1:f65413f0287242fa63cfa030f6cc714e350ece61</id>
<content type='text'>
Sway's XWayland is lazy — DISPLAY isn't set in sway's env until the
first X client connects, which means systemctl/dbus import-environment
runs too early and nothing downstream sees DISPLAY.

Setting DISPLAY=:0 in zprofile before 'exec sway' ensures sway itself
inherits it, and therefore so do all its child processes (terminals,
scripts, systemd user services via import-environment). XWayland will
spawn on demand when a client actually connects to :0.

Also drop the redundant fallback from rqr now that the session-wide
export covers it.
</content>
</entry>
<entry>
<title>fix(rqr): restore zbarcam preview and propagate DISPLAY to XWayland</title>
<updated>2026-04-21T00:24:39Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:24:39Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=21ba27be8423b5e3790cefd04306a2f287ffd247'/>
<id>urn:sha1:21ba27be8423b5e3790cefd04306a2f287ffd247</id>
<content type='text'>
zbarcam needs an X11 display for the live camera preview, which sway
provides via XWayland. Two changes to make that reliable:

- sway/config: add DISPLAY to the systemd/dbus user-environment imports,
  so anything launched through those paths (not just direct sway execs)
  can reach XWayland.
- rqr: default DISPLAY to :0 (sway's default XWayland socket) when
  unset, as a belt-and-suspenders fallback.
</content>
</entry>
<entry>
<title>fix(rqr): use --nodisplay to avoid X11 dependency on Wayland</title>
<updated>2026-04-21T00:24:39Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:24:39Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=1f3c2328c19c3db5e835acc1c43b30435baabe3c'/>
<id>urn:sha1:1f3c2328c19c3db5e835acc1c43b30435baabe3c</id>
<content type='text'>
zbarcam defaults to opening an X11 preview window, which fails on Sway
without XWayland ("unable to open X display"). --nodisplay runs the
scanner headlessly; we don't need the preview since -1 exits on the
first barcode anyway.
</content>
</entry>
<entry>
<title>style: silence false-positive lint warnings</title>
<updated>2026-04-21T00:24:37Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:24:37Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=9efcb19038851085f1cc8c8ae489740b8db5e6f9'/>
<id>urn:sha1:9efcb19038851085f1cc8c8ae489740b8db5e6f9</id>
<content type='text'>
Inline directives for cases where the linter's shell/language dialect
doesn't match reality:
- init.lua: _G.P helper is intentional
- dot_zprofile: zsh tied arrays, $+commands, optional sourcing
- dot_zshrc: zsh brace-group-as-function-body
- ipython_config: 'c' is injected by IPython at load time
- doasedit: /bin/sh on Arch is bash, -O test is supported
</content>
</entry>
<entry>
<title>style(shell): apply shfmt (-i 2 -ci -s)</title>
<updated>2026-04-21T00:24:36Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:24:36Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=2b0930fbdea2565e01f451843dddeceef8e9cd42'/>
<id>urn:sha1:2b0930fbdea2565e01f451843dddeceef8e9cd42</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor: move create-efi.sh into dot_local/bin/</title>
<updated>2026-04-21T00:23:29Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:29Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=f5155f2137368405d6994a32ada6173b223bbb96'/>
<id>urn:sha1:f5155f2137368405d6994a32ada6173b223bbb96</id>
<content type='text'>
Aligned with the other personal scripts; chezmoi will deploy it as
~/.local/bin/create-efi (executable, no .sh extension).
</content>
</entry>
<entry>
<title>refactor: restructure to chezmoi source state</title>
<updated>2026-04-21T00:23:18Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-04-21T00:23:18Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=d00bf2cb2d5087164fa509a4f20a2be62a519044'/>
<id>urn:sha1:d00bf2cb2d5087164fa509a4f20a2be62a519044</id>
<content type='text'>
Rename home/ contents to chezmoi naming conventions:
- dot_ prefix for dotfiles and dot-dirs
- private_dot_ for .gnupg and .ssh directories
- private_ for 0600 files (nym.pub)
- executable_ for scripts in .local/bin and display-toggle.sh
- symlink_ for mimeapps.list symlink
</content>
</entry>
</feed>
