<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotfiles/dot_config/systemd, branch master</title>
<subtitle>My linux config and rc files</subtitle>
<id>https://git.sommerfeld.dev/dotfiles/atom/dot_config/systemd?h=master</id>
<link rel='self' href='https://git.sommerfeld.dev/dotfiles/atom/dot_config/systemd?h=master'/>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/'/>
<updated>2026-08-14T13:21:05Z</updated>
<entry>
<title>Remove former work environment configuration</title>
<updated>2026-08-14T13:21:05Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-08-14T13:21:05Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=315e7580b35f2535319bbd852d443c3c9bcb4d41'/>
<id>urn:sha1:315e7580b35f2535319bbd852d443c3c9bcb4d41</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Improve Sway display recovery</title>
<updated>2026-08-14T13:21:04Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-08-14T13:21:04Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=c678c19a30f61ab9736e206457b14b26843ae18f'/>
<id>urn:sha1:c678c19a30f61ab9736e206457b14b26843ae18f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reduce Arch package surface</title>
<updated>2026-06-18T11:06:20Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-18T11:06:20Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=511793cba498f52b0f92904965ea5c9afa8b6ea4'/>
<id>urn:sha1:511793cba498f52b0f92904965ea5c9afa8b6ea4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restore AUR pass secret service</title>
<updated>2026-06-17T14:47:34Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-17T14:47:34Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=a3ac6ebc73831181bcb72472a6c9616cc345d5bf'/>
<id>urn:sha1:a3ac6ebc73831181bcb72472a6c9616cc345d5bf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reduce AUR package surface</title>
<updated>2026-06-14T23:55:43Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-14T23:55:43Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=bb607b3cdb027a2d02cf2111b8ee12dab172efad'/>
<id>urn:sha1:bb607b3cdb027a2d02cf2111b8ee12dab172efad</id>
<content type='text'>
Move pass-secret-service, snx-rs, and Sparrow under Nix/Home Manager.

Track the snx-rs system unit, pass-secret-service user unit, and pacman cache cleanup hook in the repo.

Drop the mkinitcpio firmware metapackage, overdue, pacman-cleanup-hook, and the standalone btc package group.
</content>
</entry>
<entry>
<title>Move more host tooling to Nix</title>
<updated>2026-06-05T10:06:02Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-05T10:06:02Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=b0e83e2ee3fc328e55119ee7c1f09ad7ed20a635'/>
<id>urn:sha1:b0e83e2ee3fc328e55119ee7c1f09ad7ed20a635</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor(mail): migrate protonmail-bridge from pacman to nix</title>
<updated>2026-06-05T10:06:02Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-05T10:06:02Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=4d8cf1bc30a076e2976787051d28d8072f8f5321'/>
<id>urn:sha1:4d8cf1bc30a076e2976787051d28d8072f8f5321</id>
<content type='text'>
Move the ProtonMail Bridge off the AUR protonmail-bridge-core package
and onto nix/host.nix, consistent with the other migrated user-leaf
tools. Since the AUR package previously supplied the systemd user unit
(customized via a drop-in), ship a repo-owned
dot_config/systemd/user/protonmail-bridge.service instead: it runs the
nix binary by absolute %h/.nix-profile/bin path with --noninteractive
and folds the former drop-in's PASSWORD_STORE_DIR into the unit, so the
now-redundant protonmail-bridge.service.d/override.conf is removed.

Drop protonmail-bridge-core from meta/base.txt (the git send-email Perl
prereqs stay). No vm.nix change: the bridge is host-only and user units
are not symlinked on the headless VM.
</content>
</entry>
<entry>
<title>fix(systemd): ship poweralertd.service user unit</title>
<updated>2026-06-05T10:06:02Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-05T10:06:02Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=7414a25165e1469cacee3fa9d8e9dd25df640aa0'/>
<id>urn:sha1:7414a25165e1469cacee3fa9d8e9dd25df640aa0</id>
<content type='text'>
poweralertd was migrated to nix (host.nix) but, like mako, the nix
package does not ship a systemd user unit on the manager's search
path. sway-session.target's Wants=poweralertd.service referenced a
non-existent unit (previously the pacman package supplied
/usr/lib/systemd/user/poweralertd.service), so battery/AC
notifications never started at login.

Add a repo-owned poweralertd.service (absolute nix-profile path) and
register it in systemd-units/user.txt.
</content>
</entry>
<entry>
<title>fix(systemd): ship mako.service user unit</title>
<updated>2026-06-05T10:06:01Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-05T10:06:01Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=c613f5b23418c5b68c6116ec22ce46d1a1fb42a2'/>
<id>urn:sha1:c613f5b23418c5b68c6116ec22ce46d1a1fb42a2</id>
<content type='text'>
The nix mako package does not ship a systemd user unit on the user
manager's search path, so sway-session.target's Wants=mako.service
referenced a non-existent unit after the pacman-&gt;nix migration
(previously the Arch mako package provided /usr/lib/systemd/user/
mako.service). mako only started on first D-Bus notification, never
eagerly at session login.

Add a repo-owned mako.service (Type=dbus, org.freedesktop.Notifications)
using the absolute nix-profile path, matching the other sway-session
units, and register it in systemd-units/user.txt.
</content>
</entry>
<entry>
<title>fix(systemd): drop StopWhenUnneeded from sway-session.target</title>
<updated>2026-06-05T10:06:01Z</updated>
<author>
<name>sommerfeld</name>
<email>sommerfeld@sommerfeld.dev</email>
</author>
<published>2026-06-05T10:06:01Z</published>
<link rel='alternate' type='text/html' href='https://git.sommerfeld.dev/dotfiles/commit/?id=9ec3c16d06acc3c496634f4952e1f8dc73a7de1c'/>
<id>urn:sha1:9ec3c16d06acc3c496634f4952e1f8dc73a7de1c</id>
<content type='text'>
The target reached active then was immediately garbage-collected:
  Reached target sway compositor session
  Stopped target sway compositor session
  Stopping swayr.../Waybar...
Nothing holds a reverse dependency on sway-session.target, so the first
"stop unneeded units" pass (triggered when any Wanted service transitions,
e.g. a ConditionEnvironment skip during the env-import race) found it
unneeded and StopWhenUnneeded=yes tore it down, cascading via PartOf/
BindsTo to every session service. Manual `systemctl --user start` worked
because that starts the service directly, not the GC-prone target.

StopWhenUnneeded has been latent since 030848c; the nix migration's
changed startup timing exposed it. The canonical sway-session.target
omits it; teardown still works via BindsTo=graphical-session.target and
user-manager shutdown at logout (swaymsg exit).
</content>
</entry>
</feed>
