[Pythonmac-SIG] Building multiple command-line( ( CLI ) programs with py2app

Bob Ippolito bob at redivi.com
Sat Jan 14 22:33:08 CET 2006

Given the current implementation, I would build one application that  
takes the action name as the first argument.  This would be similar  
in style to something like subversion "svn update", "svn commit" or  
distutils "setup.py install", "setup.py build", etc.

One huge advantage to this approach is that the command with no  
arguments (or help as an argument) can list all of the things you can  
do with the tool, where 30 commands would get easily lost amongst the  
bin folder, or even conflict with some other tool.


On Jan 14, 2006, at 9:34 AM, Read Roberts wrote:

> Thank you for your response.
> I am distributing a set of tools for editing fonts. Five are quite  
> large and
> complex, the rest are small programs for doing very specific teaks  
> to the
> font files. They are all usually run in batch-mode to be applied to  
> many
> font files, and typically take as input only ad input and output  
> file names
> and a few option setting,  hence the implementation as command-line  
> tools.
> My current plan is to use py2app to build a single bundle app, and  
> then
> build a shell command file for each tool to wrap a call to the CLI  
> program
> inside the bundle app with the name of the desired Python file to  
> to run.
> - Read Roberts
> On 1/14/06 4:32 AM, "Bob Ippolito" <bob at redivi.com> wrote:
>> On Jan 13, 2006, at 6:48 PM, Read Roberts wrote:
>>> I would like to distribute about 30 Python command-line programs
>>> that use a
>>> single stand-alone Python distribution. Looking at py2app, I only
>>> see the
>>> following two ways of doing it. Can anyone suggest a better  
>>> approach?
>> What do you want to happen, ideally?  Clearly you don't want 30 CLI
>> apps with 30 full Python distributions.  There are several
>> workarounds, but in order to make py2app serve your needs I'm going
>> to need to know what that is.  Also, you probably have the same need
>> on other platforms, so cx_freeze and/or py2exe should be capable of
>> doing the same thing.
>> -bob
> Read Roberts Adobe SJ on Weds, home office 415-642-5642 other days

More information about the Pythonmac-SIG mailing list