Updated & simplified build_osx.py for a reliable Mac app without requiring any homebrew dependencies for users #346
No reviewers
Labels
No Label
bug
build
dependencies
developers
documentation
duplicate
enhancement
formatting
invalid
legal
mobile
obsolete
packaging
performance
protocol
question
refactoring
regression
security
test
translation
usability
wontfix
No Milestone
No project
No Assignees
1 Participants
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Bitmessage/PyBitmessage-2024-12-01#346
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "master"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This simplified py2app config allows OS X users to download and run BitMessage without needing to install any homebrew dependencies. Just download and run.
It works reliably for 10.8.4, tested across different machines, and has received good feedback from other users: https://bitmessage.org/forum/index.php/topic,2761.0.html
The issue with the current build_osx.py is that it tends to produce an app that doesn't work reliably across different Macs (even when they're running the same 10.8.4 version). I started from scratch and built up a new py2app config one line at a time until everything worked reliably and still didn't require any dependencies to be installed by the end user.
I think this is the better one to use because it's greatly simplified and more reliable. Then it can be tweaked as needed in the future. (The current osx.sh produces a very nice DMG, so I didn't change that at all.)
Also, can we get a download link on the homepage to a Mac DMG please? Probably should specify "for OS X 10.8.4+". http://sourceforge.net/projects/bitmessagemac/files/
Yes, I can add a link to the homepage soon.
Thanks. 0.3.5 for mac is available: http://sourceforge.net/projects/bitmessagemac/files/
Do you want me to keep building these for now? Or would you prefer that you or another more core developer do it? It's easy to do now with osx.sh. But I'm happy to keep doing it if you don't have a mac based core developer.
I'm looking forward to seeing it on the homepage. Bitmessage is getting a lot of press, but people don't know it's available for mac.
Thanks Atheros.
I see that you are a new Github user. Can any well-known human vouch for your trustworthiness? If yes then you could be the person to compile it when we have a release and I could give you write access to bitmessage.org/download/osx.
Nobody. Sorry. I created this account only for bitmessage work and it is all I will connect with it. That said, I understand your reluctance and it is a good thing to maintain the security of bitmessage. It makes me happy. In that case, it'd be best if someone you know who is mac-based can maintain the package.
I'm just happy to have contributed a working py2app configuration to get this working on macs. My goal was to get it packaged so that Bitmessage could attract Mac users, many of whom are developers that may help move the project further along faster. So I hope you are able to find someone soon who you know and is on a mac and can get it posted. This is an exciting project. I'll be sticking around.
For posterity, here is how a person packages it. I would add it to the wiki, but accessing that via Tor always gives me errors and won't let me register:
1.) Install Homebrew (http://brew.sh/):
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
2.) Install dependencies:
(Python must be 2.7.5 or newer.)
3.) Install Py2App & setup tools:
4.) To package it:
(The last parameter is to specify the app version and is required.)
This produces a DMG and .app at:
~/Downloads/Bitmessage0.3.5/src/dist/Bitmessage-v0.3.5.dmg
~/Downloads/Bitmessage0.3.5/src/dist/Bitmessage.app
It's preferable to upload the DMG because it is less than half the size of the .app and because it is an archive it will download much faster than the .app with its individual files.
The app is a standalone app that users can download and use without needing to install all the above dependencies themselves. Only the package maintainer must have these. Py2app will include the dependencies into the resulting app bundle so that it is standalone.
If the above directions don't work for anyone, I'm happy to help troubleshoot. ;)
(Also, on a mac, right clicking on the .app and selecting Show Package Contents will show all the source files within the app bundle to verify the integrity of the python code.)