[PATCH] win32 installer for bzr 0.9: rev.2

Alexander Belchenko bialix at ukr.net
Fri Jul 28 07:58:39 BST 2006


John Arbash Meinel пишет:
> Alexander Belchenko wrote:
> 
> ...
> 
>>> I do believe something like the GPL is generally added as either
>>> COPYING.txt, or as GPL. I'd probably be happier with GPG.txt than
>>> 'gpl.txt'.
>> It's name from gnu.org site. I'm not invent them. So what the best
>> variant? COPYING (either with extension .txt or without) is good for
>> installer and for me. I rename it to COPYING. You agree?
> 
> hmm.. Probably best as COPYING.txt, since that is pretty common, and
> allows users to double click to open on all platforms.

If you really wish to make them double-clickable on all platform
including windows then I need to convert it to CRLF line-endings.
Otherwise it will looks ugly in windows notepad.

But CRLF could looks ugly in Linux. So it's a sort of dilemma for me.

> 
> ...
> 
>>> There are other ways to start 'bzr.iss' without requiring the exact path
>>> to Inno Setup.
>> The simplest one method to run Inno Setup compiler is to have his
>> installation directory in the $PATH. I prefer to change to:
>>
>>     iscc /Q tools\win32\bzr.iss

Flag /Q here is 'quiet' option: it suppress usual progress messages, but
allows to see (unexpected) error messages.

>>
>>> I don't know the right way to do it from a Makefile, but in python I use
>>> either:
>>> win32api.ShellExecute(0, 'compile', filename, None, None, 0)
>>>
>>> Or with ctypes:
>>> ctypes.windll.shell32.ShellExecuteA(0, 'compile', filename,
>>>                                     None, None, 0)
>>>
>> I don't think we need too complex solutions.
> 
> I think you can also run 'start tools\win32\bzr.iss' which will launch
> the program associated with that file type.
> 
> The above are just calling ShellExecute, which looks up the association
> for the file, and runs the 'compile' option.

Yes, I check: it runs compilation of installer in GUI window. I prefer
don't mix console/gui and use command line tools only.

> 'start' runs the equivalent of double clicking on the file. I don't know
> if that will compile, or just run InnoSetup configuration utility.

In this case will be invoked InnoSetup GUI (configuration utility). But
we need compilation (from command line). So we need to 'start iscc'.

> 
> ...
> 
> I probably prefer running 'start' to any of the others. I don't know a
> Makefile trick to call into the win32 api. Probably there is something
> you could do with 'rundll32', but I don't know the tricks.

'start' will every time invoke new shell console and execute program
in it and therefore person who will build installer wiil not to see
unexpected error messages. We need simply run iscc in the same console
as usual compiler. Just for the situation when some errors raised. So I
see only one *right* way -- adding installation path of InnoSetup to
$PATH. It's easy and harmless.

> 
> 
>>>> -Contains the default user config. Only one section, ``[DEFAULT]`` is
>>>> allowed.
>>>> +Contains the default user config. At least one section,
>>>> ``[DEFAULT]`` is required.
>>>>  A typical default config file may be similiar to::
>>>>  
>>>>      [DEFAULT]
>>>
>>> I don't believe that [DEFAULT] is actually required.
>>> In fact, I believe if you only have entries in the file, they
>>> automatically go into the 'DEFAULT' section.
>>>
>>> Does your experience contradict this?
>> Well, I send this improvements for separate review but no one speak up.
>> https://lists.ubuntu.com/archives/bazaar-ng/2006q3/015052.html
>> What the best way to rework this sentences?
> 
> Yeah, I didn't get to that one, and when I was reviewing this, it seemed
> to be included.
> 
> Anyway ...
> 
> Contains the users default configuration. The section ``[DEFAULT]`` is
> used to define general configuration that will be applied everywhere.
> The section ``[ALIASES]`` can be used to create command aliases for
> commonly used options.
> 
> A typical config file might look something like::
> 
>   [DEFAULT]
>   email=John Doe <jdoe at isp.com>
> 
>   [ALIASES]
>   commit = commit --strict
>   log10 = log --short -r -10..-1
> 
> 
> 
> That's at least my recommendation. I don't know if you want to go into
> that much detail about the configuration file.

Well, I'm not initial author of man page. So I cannot know how verbose
it supposed to be. I only create rstx generator by example of man
generator. Any variants is good for me. And I think your variant is very
good, very informative. (And because my English too far from ideal I
prefer don't change your words at all).

> 
> But if you do update autodoc_rstx.py, you should update autodoc_man.py
> as well. As the comments in there are also wrong.

Yes, I'll do.

--
Alexander






More information about the bazaar mailing list