Description:
Currently, weathr is a terminal-based CLI application. Users cannot install it as a native screensaver on macOS or Windows. This feature request proposes packaging weathr as a screensaver that runs the ASCII weather animation in the screensaver context.
Problem:
- macOS requires .saver bundles implementing a ScreenSaverView class.
- Windows requires .scr files handling standard screensaver callbacks.
- Currently, users must run weathr manually in the terminal; no native screensaver option exists.
Proposed Solution:
- Implement a wrapper module for macOS:
- Create a .saver bundle
- Implement ScreenSaverView subclass that launches weathr internally
- Render ASCII animation inside the screensaver window
- Implement a wrapper module for Windows:
- Compile a .scr file
- Handle standard screensaver messages (WM_PAINT, WM_CLOSE, WM_SYSCOMMAND)
- Launch weathr animation inside a dedicated window
- Add build targets in Cargo for each platform
- Optional: allow config options for location, units, and animation style
Alternatives:
- Run weathr inside a fullscreen terminal emulator, but this is not a proper native screensaver.
Additional Context:
- macOS .saver bundles must declare NSPrincipalClass = ScreenSaverView in Info.plist
- Windows .scr are essentially .exe with screensaver callbacks
Goal:
Enable users to run weathr as a true native screensaver on both macOS and Windows, preserving the ASCII weather animation.
Description:
Currently, weathr is a terminal-based CLI application. Users cannot install it as a native screensaver on macOS or Windows. This feature request proposes packaging weathr as a screensaver that runs the ASCII weather animation in the screensaver context.
Problem:
Proposed Solution:
Alternatives:
Additional Context:
Goal:
Enable users to run weathr as a true native screensaver on both macOS and Windows, preserving the ASCII weather animation.