Package the macOS release as Ludusavi.app - #642
Conversation
|
Hi! Thanks, this does make sense. I'll make some time in the next couple of days to test this out. |
There was a problem hiding this comment.
For reference, how was this icns file generated?
There was a problem hiding this comment.
Hi! I generated it from Ludusavi’s existing assets/icon.svg: rendered it to a 1024×1024 PNG with rsvg-convert, placed it on a transparent 1024×1024 canvas at 820×820 to give it more standard Dock padding (as it looked very big otherwise, compared to the other icons on the dock), then used Pillow to write the .icns sizes from 16 through 1024 pixels. I can add a small reproducible generation script or document the exact command rather than keeping the binary asset as a hand-generated export.
There was a problem hiding this comment.
Having a reproducible script would be great if it's not too much hassle 👍
|
Finally got a chance to try this, and the |
Summary
Ludusavi.appwith standard bundle metadata and the Ludusavi icon.ludusavisymlink to the bundled executable.Problem
The current macOS archive contains only a raw Mach-O executable. It has no application bundle metadata or bundled app icon, so macOS services such as Launch Services, Raycast, and the Dock cannot consistently recognize it as Ludusavi. Users can end up with a generic executable or script-style icon rather than a normal application entry.
This makes the download more straightforward to use on macOS: extract the archive and open
Ludusavi.applike any other app, while retaining the existing command-line workflow.Testing
bash tests/package-macos-app.shludusavi 0.31.0binary, extracted the archive, and verified the app executable, icon metadata, bundle identifier, and relative CLI symlink..github/workflows/main.yamlwith Ruby's YAML parser.