Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now what to do with it?

2003-01-27 Thread Dave Page


> -Original Message-
> From: Justin Clift [mailto:[EMAIL PROTECTED]] 
> Sent: 27 January 2003 11:51
> To: Dave Page
> Cc: PostgreSQL Hackers Mailing List; PostgreSQL Cygwin Mailing List
> Subject: Re: [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy 
> installer... now what to do with it?
> 
> 
> Dave Page wrote:
> 
> >>No real stress there, as I'm really sure the pgAdmin team and
> >>yourself 
> >>will be able to give pointers on how to make that work properly.  :)
>  >
> > Step 1 is use an MSI compliant setup package.
> 
> Ok, do you have any recommendations?  Using M$ Visual 
>  isn't 
> an option, but am willing to look at alternatives.

I don't know of any freebies, other than the Microsoft Installer SDK
which is a pain to use. I use Wise for Windows Installer for the ODBC
driver, Installshield also does MSI format though.

> Am curious as to whether packaging solutions other than MSI use merge 
> modules.  Any idea?

MSI is the underlying technology built into Windows and the packaging
format, rather than the packaging software itself. They are pushing it's
use because it allows centralised control of installations independently
of the author of the tools (among other things). In other words, even if
Fred Blogss (sorry Fred) writes a bad installer that will cause DLL
hell, the installer service should sort out the mess.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/set
up/about_windows_installer.asp

Regards, Dave.

---(end of broadcast)---
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly



Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now

2003-01-27 Thread Justin Clift
Dave Page wrote:


No real stress there, as I'm really sure the pgAdmin team and 
yourself 
will be able to give pointers on how to make that work properly.  :)
>

Step 1 is use an MSI compliant setup package.


Ok, do you have any recommendations?  Using M$ Visual  isn't 
an option, but am willing to look at alternatives.

> Step 2 is then extremely
easy. There are a number of advantages to this including:

1) DLL conflicts are handled properly by the installer service.
2) Installations can be properly rolled back in case they fail.
3) Installation patches can be created.
4) The base package can be built as a merge module which can then be
included in any other setup program for seamless integration, and a
guaranteed correct installation.


These sound like worthwhile things to cater for.



Point 4 here is very important. If people want to include PostgreSQL in
their application (which is surely what we want?), all they need do is
include the merge module in their own setup. This is how pgAdmin
installs psqlODBC. The stup builder doesn't need to know how PostgreSQL
installs and therefore doesn't have to re-write his own version of the
installer, and risk getting it wrong. It also means that the installer
service can correctly handle the installation of a PostgreSQL-included
package onto a system that already has PostgreSQL installed.


Am curious as to whether packaging solutions other than MSI use merge 
modules.  Any idea?

:-)

Regards and best wishes,

Justin Clift


Regards, Dave.



--
"My grandfather once told me that there are two kinds of people: those
who work and those who take the credit. He told me to try to be in the
first group; there was less competition there."
- Indira Gandhi


---(end of broadcast)---
TIP 6: Have you searched our list archives?

http://archives.postgresql.org



Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now what to do with it?

2003-01-27 Thread Dave Page


> -Original Message-
> From: Justin Clift [mailto:[EMAIL PROTECTED]] 
> Sent: 27 January 2003 02:38
> To: Dave Page
> Cc: PostgreSQL Hackers Mailing List; PostgreSQL Cygwin Mailing List
> Subject: Re: [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy 
> installer... now what to do with it?
> 
> 
> The package here also has the ODBC drivers in it, but doesn't include 
> pgAdmin, nor Igor's WinMaster.  It was originally assembled 
> with both of 
> them, but WinMaster didn't seem to really add anything (the package 
> auto-installs as a service), 

No, WinMaster shouldn't be required for a production system, though it
can be handy for testing.

> and with pgAdmin I was having trouble 
> getting it to register HighlightBox.ocx and use it once 
> installed.  :( 
> No real stress there, as I'm really sure the pgAdmin team and 
> yourself 
> will be able to give pointers on how to make that work properly.  :)

Step 1 is use an MSI compliant setup package. Step 2 is then extremely
easy. There are a number of advantages to this including:

1) DLL conflicts are handled properly by the installer service.
2) Installations can be properly rolled back in case they fail.
3) Installation patches can be created.
4) The base package can be built as a merge module which can then be
included in any other setup program for seamless integration, and a
guaranteed correct installation.

Point 4 here is very important. If people want to include PostgreSQL in
their application (which is surely what we want?), all they need do is
include the merge module in their own setup. This is how pgAdmin
installs psqlODBC. The stup builder doesn't need to know how PostgreSQL
installs and therefore doesn't have to re-write his own version of the
installer, and risk getting it wrong. It also means that the installer
service can correctly handle the installation of a PostgreSQL-included
package onto a system that already has PostgreSQL installed.

Regards, Dave.

---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster



Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now

2003-01-26 Thread Justin Clift
Dave Page wrote:


Hi Justin,

Does it use the Microsoft Installer service so we can provide a merge
module for embedded installations in other products as we do for
psqlODBC? If not, I for one will probably end up redoing it all anyway
:-(


Hi Dave,

It's an installation "setup.exe" type of thing, created using a product 
called Inno Setup.

Spent about 20 minutes last night on an email to Mark (mlw) yesterday 
after analysing his Inno Setup script (he's got some good ideas in 
there), but Mozilla died when I hit send.  Arrgh.

It would be cool if we had a project on GBorg for it, so we can create 
and co-ordinate the "windows specific bits" that will be desirable to 
have for 7.4 when it's released.  We can use 7.3.1 for the moment and 
practise with that.  There's probably no real reason that people can't 
use the 7.3.1 version for smaller stuff in the real world (personal 
workstation database for development, etc).

The package here also has the ODBC drivers in it, but doesn't include 
pgAdmin, nor Igor's WinMaster.  It was originally assembled with both of 
them, but WinMaster didn't seem to really add anything (the package 
auto-installs as a service), and with pgAdmin I was having trouble 
getting it to register HighlightBox.ocx and use it once installed.  :( 
No real stress there, as I'm really sure the pgAdmin team and yourself 
will be able to give pointers on how to make that work properly.  :)

Mark's version uses his custom built CygConsole program, based on Igor's 
WinMaster, and sounds like it has more functionality, but it doesn't 
install as a service.  The target for the package here is that 
PostgreSQL gets installed and runs in the background unless it's 
explicitely disabled or de-installed.  The package here also has a bunch 
of shortcuts in it to the websites.

Will chuck it up on the techdocs site somewhere in a few minutes as a 
temporary home until we get the GBorg project up and running.

Anyone have a good idea for the name of the project?

:-)

Regards and best wishes,

Justin Clift


Regards, Dave.



--
"My grandfather once told me that there are two kinds of people: those
who work and those who take the credit. He told me to try to be in the
first group; there was less competition there."
- Indira Gandhi


---(end of broadcast)---
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly



Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now what to do with it?

2003-01-26 Thread Dave Page


> -Original Message-
> From: Justin Clift [mailto:[EMAIL PROTECTED]] 
> Sent: 26 January 2003 03:12
> To: PostgreSQL Hackers Mailing List; PostgreSQL Cygwin Mailing List
> Subject: [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy 
> installer... now what to do with it?
>
> Anyway, spent the last two days making a brand new "PostgreSQL 7.3.1 
> Proof of Concept for Windows Alpha 1" easy-installer 
> (11,161KB) using a 
> product called Inno Setup (very nice) and have a pretty good result.

Hi Justin,

Does it use the Microsoft Installer service so we can provide a merge
module for embedded installations in other products as we do for
psqlODBC? If not, I for one will probably end up redoing it all anyway
:-(

Regards, Dave.

---(end of broadcast)---
TIP 6: Have you searched our list archives?

http://archives.postgresql.org



Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now

2003-01-26 Thread mlw
I thought I sent off an email about how to do it, OK here goes:

Create a working minimal cygwin with postgres install.
Delete unwanted utilities and files.
Test if you can start, stop, initdb, and query Postgres.
Use the attached pgsql.iss script to make the install.

Notes:
My version of the console program may be different than what is up on 
winmaster. I sent all my changes to Igor, but I have never been able to 
compile what he sends back. I'm not sure what compiler he is using, I am 
building mine with gcc and MSVC.

The registry entries are very important, make sure you don't mess with 
them too much.

You asked how I managed the "run as service" issue. I handled it by 
ignoring it. I do not setup the run as service option because, IMHO, it 
is too hard to ensure that the setup works without any problems. I 
modified the  console program to take care of the issues of running 
PostgreSQL under cygwin, including cygipc. If I were to add "run as a 
service" I would write a service program that wrapped the cygwin and 
cygipc details in much the same way as the console program does.

Further thoughts about "run as service." My install is aimed at Windows 
power users, not back office guys. PostgreSQL with cygwin is not ready 
for the back office, the biggest problems are the limit of concurrent 
connections and performance. I don't trust cygwin as a reliable service, 
so adding the option "run as a service" may just encourage them to do 
so. I think that would do more harm than not having the option. When 
PostgreSQL has a native Windows version, I'll add it. Until then, I 
think of it more as a "desktop" version for small offices and 
developers. The "server" version currently only runs on UNIX


Justin Clift wrote:

mlw wrote:


Sorry, I think there was a misunderstanding. What were you looking for?



Sorry Mark, I just thought you were busy.

Was wondering if you were going to make a project of it somewhere, so 
we can get things together and have a really decent release for 
Windows when 7.4 comes out.  :)

I used inno setup as well. If you want I can send my install script.



That would be really cool.  :)

How did you handle the user and "Log on as a service" aspects of it?

:)


I thought I was being very forth coming.



Yep, you 100% have a really good attitude, that's why I thought you 
were busy.

:)

I even help out on the Windows PG console window.



Took a look at it, and the three buttons seem permanently greyed out 
in the download from the WinMaster project.  Wasn't sure if it was a 
configuration issue on my part, or if the code hadn't been fleshed out 
yet.

Interested in making a project on GBorg or something for the "complete 
Windows installer" as a place to work out of?

:-)

Regards and best wishes,

Justin Clift




;PostgreSQL for Windows by Mohawk Software
;Copyright (C) 2002-2003 Mark L. Woodward
; 
;This file is free software; you can redistribute it and/or
;modify it under the terms of the GNU General Public
;License as published by the Free Software Foundation; either
;version 2 of the License, or (at your option) any later version.
; 
;This file is distributed in the hope that it will be useful,
;but WITHOUT ANY WARRANTY; without even the implied warranty of
;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
;Library General Public License for more details.
; 
;You should have received a copy of the GNU General Public
;License along with this file; if not, write to the Free
;Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
;MA 02111-1307, USA
; 
;If you want support or to commercially license this file, the author
;can be reached at [EMAIL PROTECTED]

[Setup]
AppName=PostgreSQL 
AppVerName=PostgreSQL 7.3 for Windows
AppPublisher=Mohawk Software
AppPublisherURL=http://www.mohawksoft.com
AppSupportURL=http://www.mohawksoft.com
AppUpdatesURL=http://www.mohawksoft.com
DefaultDirName={sd}\PostgreSQL
DisableStartupPrompt=yes
DefaultGroupName=PostgreSQL 
AllowNoIcons=yes
SourceDir=e:\pginstall\source
OutputBaseFilename=pgsetup
OutputDir=e:\pginstall\PostgreSQL

[Registry]
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions"; Flags: uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions\Cygwin"; Flags: uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions\Cygwin\mounts v2"; Flags: 
uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions\Cygwin\mounts v2"; ValueType: String; 
ValueName: "cygdrive prefix"; ValueData: "/disks"; Flags: uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions\Cygwin\mounts v2"; ValueType: dword; 
ValueName: "cygdrive flags"; ValueData: "34"; Flags: uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/"; ValueType: String; 
ValueName: "native"; ValueData: "{app}"; Flags: uninsdeletekeyifempty
Root: HKLM; Subkey: "SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/"; ValueType: dword

Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now

2003-01-25 Thread Justin Clift
mlw wrote:

Sorry, I think there was a misunderstanding. What were you looking for?


Sorry Mark, I just thought you were busy.

Was wondering if you were going to make a project of it somewhere, so we 
can get things together and have a really decent release for Windows 
when 7.4 comes out.  :)

I used inno setup as well. If you want I can send my install script.


That would be really cool.  :)

How did you handle the user and "Log on as a service" aspects of it?

:)


I thought I was being very forth coming.


Yep, you 100% have a really good attitude, that's why I thought you were 
busy.

:)

I even help out on the Windows PG console window.


Took a look at it, and the three buttons seem permanently greyed out in 
the download from the WinMaster project.  Wasn't sure if it was a 
configuration issue on my part, or if the code hadn't been fleshed out yet.

Interested in making a project on GBorg or something for the "complete 
Windows installer" as a place to work out of?

:-)

Regards and best wishes,

Justin Clift


--
"My grandfather once told me that there are two kinds of people: those
who work and those who take the credit. He told me to try to be in the
first group; there was less competition there."
- Indira Gandhi


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]


Re: [HACKERS] [CYGWIN] Have a PG 7.3.1 Windows (cygwin) easy installer... now

2003-01-25 Thread mlw
Sorry, I think there was a misunderstanding. What were you looking for?

I used inno setup as well. If you want I can send my install script.

I thought I was being very forth coming.

I even help out on the Windows PG console window.



Justin Clift wrote:


Hi everyone,

Mark (mlw) put together a PostgreSQL installer for Windows (cygwin 
version) a little while ago, but he hasn't been responding to requests 
for feedback regarding it (probably busy).

As we're going to be releasing a native Windows version of PostgreSQL 
7.4 in a few months, it seems appropriate that we practise first to 
get the hang of making packages on Windows, plus encourage anyone with 
graphical talent to make attractive icon's for menu options, etc.

Anyway, spent the last two days making a brand new "PostgreSQL 7.3.1 
Proof of Concept for Windows Alpha 1" easy-installer (11,161KB) using 
a product called Inno Setup (very nice) and have a pretty good result.

It looks and feels *really* professional, and if people didn't know 
that it was using cygwin, they'd probably never guess.

Am reckoning that the best thing to do for this is to create a project 
on GBorg of some name, upload it, and everyone who is interested can 
take it from there.

Does that sound like the best approach, and does anyone have good 
suggestions for a project name?

:-)

Regards and best wishes,

Justin Clift




---(end of broadcast)---
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly