<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotfiles/dot_config/waybar/executable_webcam-status.sh, branch master</title>
<subtitle>My linux config and rc files</subtitle>
<id>https://git.sommerfeld.dev/dotfiles/atom/dot_config/waybar/executable_webcam-status.sh?h=master</id>
<link rel='self' href='https://git.sommerfeld.dev/dotfiles/atom/dot_config/waybar/executable_webcam-status.sh?h=master'/>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/'/>
<updated>2026-05-13T12:43:32Z</updated>
<entry>
<title>fix(webcam-status): silence SC2086 on intentional word-splitting</title>
<updated>2026-05-13T12:43:32Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-05-13T12:43:32Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=1f67b2163c19c931419385216a29f9162fa23ad4'/>
<id>urn:sha1:1f67b2163c19c931419385216a29f9162fa23ad4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>style: apply formatter drift across repo</title>
<updated>2026-05-13T12:43:32Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-05-13T12:43:32Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=0c15212f4f2389f743b17cb6ceff50f1f9267a1b'/>
<id>urn:sha1:0c15212f4f2389f743b17cb6ceff50f1f9267a1b</id>
<content type='text'>
Pre-existing whitespace/style drift caught by `just check`. Touch
nothing semantic — pure formatter output (shfmt -i 2 -ci -s, ruff,
prettier, taplo). Excludes dot_config/clangd/config.yaml whose manual
indentation is intentionally preserved.
</content>
</entry>
<entry>
<title>feat: vim nav in wofi, bemoji, clip picker, webcam glyph fix</title>
<updated>2026-05-13T12:43:30Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-05-13T12:43:30Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=651ec1f8b7470e2ffac848b4fe99ce7ccdb826dd'/>
<id>urn:sha1:651ec1f8b7470e2ffac848b4fe99ce7ccdb826dd</id>
<content type='text'>
- wofi config: key_up/key_down accept Up,k / Down,j; Ctrl-u/Ctrl-d for
  page jumps. Picker scripts auto-load this since they only pass --style.

- waybar webcam glyph: U+F0D5D (camera/photo, looked Instagram-y) -&gt;
  U+F0567 nf-md-video (handheld video camera).

- Clipboard picker migrated from fuzzel to wofi for consistency with the
  notification picker. New driver dot_config/waybar/clip-picker.sh:
    pick   (Mod+p)        Enter pastes, Alt-d deletes
    delete (Mod+Shift+p)  Enter deletes
  No clipboard "read" indicator: Wayland has no API for observing reads.

- Emoji picker: bemoji on Mod+period, driven through wofi (so vim nav
  applies there too) and configured to type + copy via wtype.

- LibreWolf flatpak: --device=all override so v4l2 webcams work. Flatpak
  has no finer-grained device flag.

- KEYBINDS.md updated: Mod+p / Mod+Shift+p now describe wofi behavior;
  Mod+period documented.
</content>
</entry>
<entry>
<title>style(waybar): swap obvious literal labels for Nerd Font glyphs</title>
<updated>2026-05-13T12:43:29Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-05-13T12:43:29Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=0af53da3eb2574ca23758e6658b7683bcee4d6da'/>
<id>urn:sha1:0af53da3eb2574ca23758e6658b7683bcee4d6da</id>
<content type='text'>
Numeric/identity labels stay (CPU, MEM, °C, network arrows, clock).
Iconic labels are replaced with codepoints from ttf-noto-nerd:

  battery       BAT/CHR/PLG  -&gt; nf-md-battery_*, _charging, power_plug
                               (U+F0079..F0084, U+F06A5)
  pulseaudio    VOL/MUTE     -&gt; nf-md-volume_low/medium/high/off
                               (U+F057E..F0581)
  bluetooth     BT on/off    -&gt; nf-md-bluetooth/_off/_connect
                               (U+F00AF/B0/B2)
  idle_inhib.   INH/IDL      -&gt; nf-md-eye_off_outline/_outline
                               (U+F06D1, F06D0)
  custom/wifi   text only    -&gt; prefix nf-md-wifi/_off
                               (U+F05A9, F05AA)
  custom/webcam CAM          -&gt; nf-md-camera (U+F0D5D)
  custom/notif. NTF          -&gt; nf-md-bell_outline/_check_outline/_ring
                               (U+F009C, F11E8, F009E)
  custom/tb     MAIL         -&gt; nf-md-email/_alert (U+F01EE, F0D42)

style.css font-family widened from 'mono' to a declarative fallback
chain so glyph rendering doesn't depend on fontconfig auto-fallback.
</content>
</entry>
<entry>
<title>feat(waybar): add webcam privacy indicator</title>
<updated>2026-05-13T12:43:28Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-05-13T12:43:28Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=4c5021e8af8f8b93c517949900e14f1d421d3f8e'/>
<id>urn:sha1:4c5021e8af8f8b93c517949900e14f1d421d3f8e</id>
<content type='text'>
V4L2 capture goes directly through /dev/videoN and never traverses
the PipeWire portal, so the built-in privacy module misses it. New
custom/webcam module polls fuser on /dev/video* every 2s and shows
a red 'CAM' badge when any device is held open.

Empty text when idle, so the slot collapses and stays out of the way
when the webcam is unused (i.e. always, on a usual day).
</content>
</entry>
</feed>
