Skip to main content

max / alloy

fw12: add the 1.25x display drop-in, drop the shelved hinged preset Two gaps found while checking whether the installer stick was ready for real hardware. HARDWARE-FW12.md specifies `output eDP-1 scale 1.25` as the default for the 12.2" 1920x1200 panel, but etc/sway/config.d/ did not exist, so the FW12 would have booted at 1.0x, the option that doc explicitly rejects. The drop-in matches eDP-1, which is the internal panel on any laptop, so it is right for the one hardware target Alloy has and wrong the moment there is a second. The file records that and what to do about it. alloy-hinged.service was enabled in the user preset with no unit shipped anywhere. The fold-to-notes daemon was shelved in the 2026-07-17 pivot, so the line only produced a failed enable at first login. Same drift as the egui crates: the docs retired it, the tree kept it.
Co-Authored-By
Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Author: Max Johnson <me@maxj.phd> · 2026-07-19 16:18 UTC
Signed with PGP, not checked
Commit: 267e92016de7b9b5cf76f0cf54cb41456bc317c7
Parent: 12613d0
3 files changed, +22 insertions, -6 deletions
M Containerfile +2 -2
@@ -189,8 +189,8 @@
189 189 # =====================================================================
190 190 # Systemd presets — shipped via etc/systemd/{system,user}-preset/
191 191 # in the config tree above. Split across system-preset (greetd,
192 - # tailscaled) and user-preset (swayosd, syncthing, gammastep,
193 - # alloy-hinged). See docs/CONTINUITY.md for rationale.
192 + # tailscaled) and user-preset (swayosd, syncthing, gammastep).
193 + # See docs/CONTINUITY.md for rationale.
194 194 #
195 195 # The preset files declare the intended enable/disable state; they
196 196 # do not by themselves create the wants/ symlinks. `systemctl
@@ -8,12 +8,13 @@
8 8 # (see docs/CONTINUITY.md).
9 9 # - gammastep: opt-in only. User needs to set their location
10 10 # before enabling makes sense.
11 - # - alloy-hinged: FW12 fold-to-notes daemon. Enabled by default;
12 - # the daemon self-detects whether SW_TABLET_MODE
13 - # exists and no-ops on non-2-in-1 hardware.
11 + #
12 + # alloy-hinged was enabled here until 2026-07-19. The fold-to-notes
13 + # daemon was shelved in the 2026-07-17 pivot (see
14 + # docs/HARDWARE-FW12.md#fold-to-notes-shelved) and no unit was ever
15 + # shipped, so the line only produced a failed enable at first login.
14 16
15 17 enable swayosd.service
16 - enable alloy-hinged.service
17 18
18 19 disable syncthing.service
19 20 disable gammastep.service
@@ -1,0 +1,15 @@
1 + # Framework Laptop 12 display tuning.
2 + #
3 + # 12.2" 1920x1200 (16:10), ~185 PPI. 1.0x puts glyphs too small at
4 + # arm's length and 1.5x wastes usable columns, so the panel sits in the
5 + # awkward middle that fractional scaling exists for. See
6 + # docs/HARDWARE-FW12.md#display for the full reasoning.
7 + #
8 + # SCOPE: this matches eDP-1, which is the internal panel on any laptop,
9 + # not just the FW12. Alloy has one hardware target today so shipping it
10 + # active is the pragmatic call. When a second device is validated, this
11 + # should either move to a usr/share/alloy/ template the installer copies,
12 + # or match the panel by make/model instead of by connector name.
13 + # Delete this file on hardware where 1.25x is wrong.
14 +
15 + output eDP-1 scale 1.25