Re: Path to PostgreSQL portabiliy - Mailing list pgsql-hackers

From Jean-Michel POURE
Subject Re: Path to PostgreSQL portabiliy
Date
Msg-id 200205091009.04998.jm.poure@freesurf.fr
Whole thread Raw
In response to Re: Path to PostgreSQL portabiliy  ("Dann Corbit" <DCorbit@connx.com>)
List pgsql-hackers
Le Jeudi 9 Mai 2002 01:30, Dann Corbit a écrit :
> In other words, they already have an automated installation procedure
> for PostgreSQL if you are using Cygwin.

Cygwin installer does not handle package dependencies. Therefore:
1) users install all packages at once.
2) upgrading becomes a mess .
3) sofware may conflict. Example : Cygwin Perl and native Perl, Cygwin Apache
and native Apache.

IMHO the problem stems from the lack of package installers the Windows world.
Here is the proposed plan, which boils down to port Debian to Cygwin/Windows:

1) Description of W32/Debian porting

- Port Debian dpkg to native Windows and compile it using mingw. This task has
nearly been accomplished on http://debian-cygwin.sourceforge.net/bootstrap/.

dpkg is a very powerfull package system comparable to RPM on Linux. I don't
know if it is possible to compile dpkg natively under Windows using mingw.

- Create W32/Debian packages providing mingw core executables and libraries.

- Compile Cygwin.dll using mingw. This will enable the creation of a first
W32/Debian Cygwin.dll package. This should be possible using MSYS-1.0.7 and
MinGW-1.1. Again, Cygwin installer is messy, we should get rid of it.

- Create W32/Debian packages providing Cygwin core packages.

- At that point, we shoul be able to have our own Cygwin installer with
dependency checking. There we go:

This will allow to create further W32/Debian packages and tell wether they
depend on  Cygwin or not. For example, we may offer Perl with depency to
Cygwin and  another one with no depency (compiled with mingw). Another
example is Apache : users may be interested in compiling the Cygwin version
of Apache, but they might as well simply need to install the Windows native
binary version.

Also there are a bunch of Windows only programs. Example Dev-C++ or
OpenOffice. We should also package them.

- Create W32/Debian packages for GUI environnement (Xfree / qt2 / KDE2 /
Gnome). Porting has already been accomplised on Cygwin. Even KDE3 is on the
way. See http://kde-cygwin.sourceforge.net/.

User will be able to open a KDE window and execute KDE applications without
hastle. This will allow us to offer popular developement environments (ex:
KDevelop).

2) GUI installer

W32/Debian installation should be performed within a single GUI. The
installation program will give access to all W32/Debian packages at once.
Packages will be available on Debian mirrors.

Basically, there will be two kinds of packages :
- native Windows software (native PHP + apache, native python, native Dev-C++,
native OpenOffice1.0) with no depency to Cygwin.
- Unix and Linux ports with Cygwin dependency (ex : PostgreSQL at first).

All of them will be available within a SINGLE INSTALLER.

So to me, the question is not "How to we port PostgreSQL to Windows" but
rather "How do we package all important software needed", including Cygwin
dependant software and Windows native software.

If we could provide such an installer, this could well be the end of Microsoft
hegemony. Microsoft is a dangerous company violating Human Rights.

Don't spend too much time on porting PostgreSQL to native Windows. This can be
done in two months. The amount of work needed to create a minimal W32/Debian
distribution with an on-line installer is very little for a community like
ours. This would change the history of Windows computing.

Cheers,
Jean-Michel POURE




pgsql-hackers by date:

Previous
From: "Dave Page"
Date:
Subject: Re: OK, lets talk portability.
Next
From: Jean-Michel POURE
Date:
Subject: Re: How much work is a native Windows application?