Recommended variant from gosentry-logo.html: Space Grotesk SemiBold with
an amber "G", a clock-dial "o" (ring + hands), and petrol "Sentry". Ships
self-contained SVGs (glyphs outlined to paths, no font dependency) in
light/dark/mono plus transparent PNGs at 256-2048px, with a README and the
gen_logo.py/raster.py generators for reproducibility.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Rename icon files from mixed naming (big/16x16) to consistent size-based
names (large/small) for clarity. Update Go functions and variables to
reference the new asset names. This makes the icon pipeline easier to
understand and maintain.
File changes:
- gosentry-icon-big.png → gosentry-icon-large.png
- gosentry-icon-16x16.png → gosentry-icon-small.png
- gosentry-icon-16x16.ico → gosentry-icon-small.ico
- Embedded variable: iconBytes → iconLargeBytes for clarity
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Give the window titlebar, taskbar, and tray a size-appropriate icon with a
transparent boundary on both Windows and Linux, instead of scaling one PNG to
every size.
Assets:
- Regenerate the PNGs and gosentry.ico with feathered color-to-alpha so the
rounded-tile boundary is transparent; a binary white-key had left an opaque
halo that read as a border on dark taskbars/trays.
- Rebuild gosentry.ico as multi-size (16 hand-tuned + 32/48/256 from big) and
add a single-frame 16x16 gosentry-icon-16x16.ico for the Windows tray.
- assets.go: add IconSmall() and IconSmallICO().
Wiring:
- Windows window/taskbar: embed gosentry.ico under the GLFW_ICON resource and
skip a.SetIcon so GLFW selects the right frame per size (hand-tuned 16 for the
titlebar, a larger frame for the taskbar).
- Windows tray: SetSystemTrayIcon(IconSmallICO()), a 16x16 ICO frame.
- Linux window titlebar: a.SetIcon(IconSmall()) for a crisp ~16px _NET_WM_ICON;
tray uses the big PNG since StatusNotifierItem renders larger.
Also bump Fyne 2.6.3 -> 2.7.4 (systray 1.11.0 -> 1.12.1) and document the full
cross-platform icon strategy in assets.go, gosentry.rc, run.go, and tray.go.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Rename the application, Go module path, command package, build artifacts, resource script, and embedded icon assets from PySentry/pysentry to GoSentry/gosentry.
Move portable settings to gosentry.yaml while reading legacy pysentry.yaml during the transition, then rewrite settings under the new name.
Update Windows and Linux autostart integration to use GoSentry names while cleaning up legacy PySentry registry, desktop-entry, and systemd artifacts.
Refresh README, architecture notes, roadmap, changelog, and release examples for version 0.3.0.
Wrap dynamic job detail labels so long names, schedules, commands, and status values no longer change the right panel minimum width when the selected job changes.
Point embedded and Windows resource icons at the current asset filenames so tests and Windows builds continue to work after the asset cleanup.
Add Linux desktop integration that installs a user-level .desktop file and icon under XDG data directories so taskbars can match the PySentry window to the application icon.
Pass the installed icon path into Linux autostart desktop entries when available, while keeping the Windows and fallback autostart APIs compatible.
Bump the application version to 0.2.2, update README artifact examples, and record the release notes in docs/CHANGELOG.md. Also adjust the Mermaid architecture diagram so Gitea can render it without invalid SVG line-break tags.