You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@forrest.apache.org by Johannes Schaefer <jo...@uidesign.de> on 2008/01/04 13:57:32 UTC

Windows-Installer for Forrest

Hi!

I hacked together an installer [1] for Windows that does the following:
- Copies forrest 0.8 to the program directory (C:\Program Files)
- Sets FORREST_HOME
- Seeds a new project (new folder on the user's desktop)
- Creates desktop shortcuts to start forrest and open localhost:8888

The installation is based on the zip-file for forrest-0.8 and
results in a total size of 23.088.307 Bytes (slightly *smaller*
than the original zip file).

I'll attach the script to generate the installer to this e-mail
(you'll probably need to adapt the sources, line 42).

I don't know how to proceed:
- Is such an installer of general interest?
- Who may help "polish" it (e.g. uninstall, icons, ...)?
- How to commit? The script is easily committed but what about the .exe?

Cheers,
Johannes


[1] http://nsis.sourceforge.net/   plus plugin:
[2] http://nsis.sourceforge.net/ShellLink_plug-in


-- 
User Interface Design GmbH, Ludwigsburg, Germany
Phone/Fax  +49 7141 37700-46/-99, Mobile +49 170 4914567
E-mail johannes.schaefer@uidesign.de * www.uidesign.de

Offices:
Martin-Luther-Straße 57-59, D-71636 Ludwigsburg
Truderinger Strasse 330, D-81825 Muenchen
Friedrichsring 46, D-68161 Mannheim

Legal information according to EHUG:
User Interface Design GmbH; Managing Directors: Dr. Claus Goerner,
Franz Koller; Head office: Ludwigsburg; Commercial register of the
local court of Stuttgart, Germany, HRB 205519

+++
We have moved to new premises: As of October 15, you will find the UID head
office at Martin-Luther-Strasse 57-59 * 71636 Ludwigsburg.
+++

Re: Windows-Installer for Forrest

Posted by CFAS Webmaster <we...@cfas.org>.
Johannes,

  I'll say, yes at least for me.  When I eventually turn over
administration of the cfas.org site, I anticipate the person who ends up
with it will use Windows.  I've chosen to use forrest because it's
cross-platform and mostly easy to use.  And installer will help the
latter substantially.

Thanks!
-Paul

Johannes Schaefer wrote:
> Hi!
>
> I hacked together an installer [1] for Windows that does the following:
> - Copies forrest 0.8 to the program directory (C:\Program Files)
> - Sets FORREST_HOME
> - Seeds a new project (new folder on the user's desktop)
> - Creates desktop shortcuts to start forrest and open localhost:8888
>
> The installation is based on the zip-file for forrest-0.8 and
> results in a total size of 23.088.307 Bytes (slightly *smaller*
> than the original zip file).
>
> I'll attach the script to generate the installer to this e-mail
> (you'll probably need to adapt the sources, line 42).
>
> I don't know how to proceed:
> - Is such an installer of general interest?
> - Who may help "polish" it (e.g. uninstall, icons, ...)?
> - How to commit? The script is easily committed but what about the .exe?
>
> Cheers,
> Johannes
>
>
> [1] http://nsis.sourceforge.net/   plus plugin:
> [2] http://nsis.sourceforge.net/ShellLink_plug-in
>
>
>   

Re: Windows-Installer for Forrest

Posted by Johannes Schaefer <jo...@uidesign.de>.
Ferdinand Soethe schrieb:
> Great. I think this is a great idea and long overdue.
> 
> Where can I look up the documentation for the nsi-language?

Download and install it, then press F1 ;-)
It comes with an extensive user manual and heaps of examples.
I didn't have a clue of NSIS and put the installer in about
two hours together, so it's fairly easy.

>> - Copies forrest 0.8 to the program directory (C:\Program
>>   Files)
> 
> As far as I gather that name of the program-directory is
> language specific and becomes C:\pogramme in german Windows?

Right, NSIS will handle this.

>> The installation is based on the zip-file for forrest-0.8
>> and results in a total size of 23.088.307 Bytes (slightly
>> *smaller* than the original zip file).
> 
> Does it have to become a compiled exe or could it simply
> work with the Forrest zip?

No. It contains everything in a single .exe file (as far as
I see). But this is the whole point of it: Make it easier.
One download, one double-click and you're done.

> Some first comments:
> 
> - I'd rather not set FORREST_HOME as a permanent
>   environment variable but rather set it in the batch-file
>   that starts forrest. That also makes it possible to have
>   separate versions of forrest installed.

I was thinking about this, since Forrest actually does not
need it. In the installer the user may choose not to set
the variable. All parts are optional (even the Forrest one,
labelled "required").

> - To simplify working with projects I can contribute a
>   solution that created a context menu item for directories
>   in the windows explorer. That way you simply right-click
>   any project directory and select menu items such as
>   "forrest 0.8 run", "forrest 0.8 compile" etc.

Hey, this sounds good.
Maybe we can integrate such things into the installer.
But I wonder how many *users* would work with more than
one installed forrest?! This sounds like a dev task to
me...

I can only encourage you to download NSIS and create the
installer yourself to see how it works. This will be easier
than up/downloading it just for you to see.

It's here
 >> [1] http://nsis.sourceforge.net/   plus plugin:
 >> [2] http://nsis.sourceforge.net/ShellLink_plug-in

Cheers,
Johannes


> Best regards,
> Ferdinand Soethe
>

-- 
User Interface Design GmbH, Ludwigsburg, Germany
Phone/Fax  +49 7141 37700-46/-99, Mobile +49 170 4914567
E-mail johannes.schaefer@uidesign.de * www.uidesign.de

Offices:
Martin-Luther-Straße 57-59, D-71636 Ludwigsburg
Truderinger Strasse 330, D-81825 Muenchen
Friedrichsring 46, D-68161 Mannheim

Legal information according to EHUG:
User Interface Design GmbH; Managing Directors: Dr. Claus Goerner,
Franz Koller; Head office: Ludwigsburg; Commercial register of the
local court of Stuttgart, Germany, HRB 205519

+++
We have moved to new premises: As of October 15, you will find the UID head 
office at Martin-Luther-Strasse 57-59 * 71636 Ludwigsburg.
+++

Re: Windows-Installer for Forrest

Posted by Ferdinand Soethe <fe...@apache.org>.
Great. I think this is a great idea and long overdue.

Where can I look up the documentation for the nsi-language?

> - Copies forrest 0.8 to the program directory (C:\Program
>   Files)

As far as I gather that name of the program-directory is
language specific and becomes C:\pogramme in german Windows?

> The installation is based on the zip-file for forrest-0.8
> and results in a total size of 23.088.307 Bytes (slightly
> *smaller*
> than the original zip file).

Does it have to become a compiled exe or could it simply
work with the Forrest zip?

Some first comments:

- I'd rather not set FORREST_HOME as a permanent
  environment variable but rather set it in the batch-file
  that starts forrest. That also makes it possible to have
  separate versions of forrest installed.

- To simplify working with projects I can contribute a
  solution that created a context menu item for directories
  in the windows explorer. That way you simply right-click
  any project directory and select menu items such as
  "forrest 0.8 run", "forrest 0.8 compile" etc.

Best regards,
Ferdinand Soethe



Re: Windows-Installer for Forrest

Posted by David Crossley <cr...@apache.org>.
Johannes Schaefer wrote:
> 
> The installation is based on the zip-file for forrest-0.8 and
> results in a total size of 23.088.307 Bytes (slightly *smaller*
> than the original zip file).

Could the installer find their nearest mirror and offer them
download options like our own download page does?

That might avoid the distribution issues.

It should verify the checksum and signature too.

The installer needs to also show them the Release Notes and
the README.txt file.


Re: Windows-Installer for Forrest

Posted by David Crossley <cr...@apache.org>.
Johannes Schaefer wrote:
> 
> If I got it right it would be hard to get an installer for
> Release 0.8 out to the mirrors since we went through the release
> process some time ago.

We can create a forrest-0.8.1 from the 0.8 SVN branch.

Or the installer could be a separately released product.
That could be a good solution if the installer can contact
the mirrors.

Or we can release a 0.9 soon (though the Cocoon issues
should be attended to).

> The NSIS license seems to be rather liberal:
>   http://nsis.sourceforge.net/License

We are not re-distributing NSIS, so it doesn't matter.
The *.nsi script is all your own work, so it will be
an Apache Licensed file.

-David

Re: Windows-Installer for Forrest

Posted by Ferdinand Soethe <fe...@apache.org>.
After some playing around I created the attached script.
You simply point it to the Forrest home dir (need text to
say so) and it creates explorer context menu items to seed,
run and compile a project.

It still needs the license screen but that is not my point.

What I'm trying to show is:

- We wouldn't need to package all of Forrest in the
  installer. Enclosed script could be in Forrest root
  and Docs could instruct user to execute it once
  Forrest is unzipped.

  (I'd say if unzipping is beyond our user then this won't
   be the last problem they would have with Forrest)

- With a small modification this installer could be
  generic and would not require a change with every release.

- In addition we could create a second installer that lives
  and is executed by "Forrest seed" and creates Start-Menu
  items for runinng and compiling the seeded project.

  With that we could actually do away with the context menu
  items run and comile and just keep seed.

wdyt?

Best regards,
Ferdinand Soethe

Re: Windows-Installer for Forrest

Posted by David Crossley <cr...@apache.org>.
Johannes Schaefer wrote:
> David,
> 
> I knew it, you have all the administrative hassles at hand ;-)
> Thanks for that, I'll have a closer look later on.

The whole Forrest PMC needs to attend to such issues.

-David

Re: Windows-Installer for Forrest

Posted by Johannes Schaefer <jo...@uidesign.de>.
David,

I knew it, you have all the administrative hassles at hand ;-)
Thanks for that, I'll have a closer look later on.

If I got it right it would be hard to get an installer for
Release 0.8 out to the mirrors since we went through the release
process some time ago.

The NSIS license seems to be rather liberal:
   http://nsis.sourceforge.net/License

We could place our license and credits on an informative step
within the wizard (The "Do you accept this?" screen).

So much for now
Johannes



David Crossley schrieb:
> Johannes Schaefer wrote:
>> I don't know how to proceed:
>> - Is such an installer of general interest?
> 
> I would think so.
> 
> Does the user needs any pre-requisites?
> 
>> - Who may help "polish" it (e.g. uninstall, icons, ...)?
> 
> Anyone.
> 
>> - How to commit? The script is easily committed but what about the .exe?
> 
> There are probably past discussions about how to handle
> this sort of thing on the ASF legal-discuss mail list
> http://apache.org/foundation/mailinglists.html#foundation-legal
> 
> I am no expert, so the following are some quick thoughts.
> I am away for a while so hopefully other PMC members will help.
> 
> I have some concerns about where in our SVN it should live,
> and how to distribute it. The user needs to see the license
> files for Forrest and our NOTICE file where some supporting
> products require prominent attribution.
> 
> The script should go in our main trunk SVN. 
>  
> The exe probably should go on the distribution mirrors 
> alongside our release. If so then it would need to
> follow our normal release process.
> 
> Perhaps look at how some other ASF projects manage and
> distribute such installers.
> 
> -------
> 
> I gather that you or another Windows-based committer
> runs the script to generate the .exe using a certain
> version of NSIS.
> 
> Obviously the script would need the standard Apache License header.
> The exe should have a commit message saying which version of
> NSIS and Forrest it was built with.
> 
> Check your SVN properties too for both *.nsi (as normal
> native text file) and *.exe (needs executable property).
> The former is yet not in the list of auto-properties
> provided for ASF committers local config [3]. 
> 
> [3] http://apache.org/dev/version-control.html#https-svn-config
> 
> -David
> 

-- 
User Interface Design GmbH, Ludwigsburg, Germany
Phone/Fax  +49 7141 37700-46/-99, Mobile +49 170 4914567
E-mail johannes.schaefer@uidesign.de * www.uidesign.de

Offices:
Martin-Luther-Straße 57-59, D-71636 Ludwigsburg
Truderinger Strasse 330, D-81825 Muenchen
Friedrichsring 46, D-68161 Mannheim

Legal information according to EHUG:
User Interface Design GmbH; Managing Directors: Dr. Claus Goerner,
Franz Koller; Head office: Ludwigsburg; Commercial register of the
local court of Stuttgart, Germany, HRB 205519

+++
We have moved to new premises: As of October 15, you will find the UID head 
office at Martin-Luther-Strasse 57-59 * 71636 Ludwigsburg.
+++

Re: Windows-Installer for Forrest

Posted by David Crossley <cr...@apache.org>.
Johannes Schaefer wrote:
> 
> I don't know how to proceed:
> - Is such an installer of general interest?

I would think so.

Does the user needs any pre-requisites?

> - Who may help "polish" it (e.g. uninstall, icons, ...)?

Anyone.

> - How to commit? The script is easily committed but what about the .exe?

There are probably past discussions about how to handle
this sort of thing on the ASF legal-discuss mail list
http://apache.org/foundation/mailinglists.html#foundation-legal

I am no expert, so the following are some quick thoughts.
I am away for a while so hopefully other PMC members will help.

I have some concerns about where in our SVN it should live,
and how to distribute it. The user needs to see the license
files for Forrest and our NOTICE file where some supporting
products require prominent attribution.

The script should go in our main trunk SVN. 
 
The exe probably should go on the distribution mirrors 
alongside our release. If so then it would need to
follow our normal release process.

Perhaps look at how some other ASF projects manage and
distribute such installers.

-------

I gather that you or another Windows-based committer
runs the script to generate the .exe using a certain
version of NSIS.

Obviously the script would need the standard Apache License header.
The exe should have a commit message saying which version of
NSIS and Forrest it was built with.

Check your SVN properties too for both *.nsi (as normal
native text file) and *.exe (needs executable property).
The former is yet not in the list of auto-properties
provided for ASF committers local config [3]. 

[3] http://apache.org/dev/version-control.html#https-svn-config

-David