Open rluu opened 9 years ago
The iching project is hosted at Google Code on Subversion, and the packaging scripts within that project assume that Subversion is used, not Git. This is a problem because the packaging scripts and the CM tool used are tightly coupled for that solution.
APP_VERSION_NUMBER
variable which is used in various parts of the packaging. The way I obtained the version number with that project was to extract it from a global variable in the main.py source file. A better way to do this is to tag releases from GitHub and in the script, pull the version from Git. There are examples of various scripts and how other people have handled this at various places online.APP_BUILD_NUMBER
variable which is used in various parts of the packaging. For the iching project code on subversion, I had used the incrementing revision number for the CFBundleVersion
variable that is required for the Info.plist file. Nothing exists that would be able to fulfill this need in git. People ahve tried to solve this in various ways, but none really seem super elegant. I need to think about this some.http://www.dribin.org/dave/blog/archives/2006/08/02/versioning_os_x_apps/ https://www.google.com/search?q=CFBundleVersion+git
Background
Although the software will run on all platforms, there are a lot of preparation steps required for a user to get the application up and running. Because of the added complexity and time to set up an environment, users will likely be discouraged from trying out this application.
Proposed Solution
Need to write scripts for bundling and packaging the application for installation on Mac OS X. Because Python 3 is used, cx_Freeze is likely to be the solution that will be used.
Tips / Notes
rluu: See how I did the packaging on the iching project as a example for reproducing it on this project.