MSI installer for KDE4

Pau Garcia i Quiles pgquiles at elpauer.org
Thu Aug 21 13:40:54 CEST 2008


Quoting "Aaron J. Seigo" <aseigo at kde.org>:

> Hello Hamed ...
>
> On Thursday 21 August 2008, you wrote:
>> Is (or will be) there any MSI installer for kde4 on windows?
>
> I really don't know, but I'm CC'ing the kde-windows team because   
> they probably
> *do* know ;)

This is something I'd like to see. There was some chatting about this  
at  aKademy and I was reading more about side-by-side assemblies  
before writing but here comes a "mind --dump".

Not MSI installers necessarily, but standalone application installers  
which only contain the application binaries and, maybe, some specific  
dependencies.

I think what we should do is have redistributable kdelibs, kdepimlibs,  
etc binary packages mimicking the Visual C++ Redistributable Packages  
Microsoft makes available for Visual C++. Using side-by-side  
assemblies (SxS, http://msdn.microsoft.com/en-us/library/aa376307.aspx  
), these libraries would be shared by all KDE applications and thanks  
to the versioning capabilities SxS provides, it would even be possible  
to have KDE 4.1 and KDE 4.2 applications (for instance, Parley from  
4.2 and Kate for 4.1) without kdelibs 4.1 and 4.2 clashing.

How would this work (at least in my mind :-) ? You would only download  
an application and the installer (NSIS, MSI or whatever it uses) would  
look for the libraries it needs.

Take, for instance, KWord. The KWord installer would only contain the  
KWord binaries and 3rd party dependencies specific to KWord. When the  
installer is started, it would look for KDElibs 4.1 (or 4.2, I don't  
know then KWord plans to release) and KOfficeLibs 2.0. If KDElibs 4.1  
and/or KOfficeLibs 2.0 are not found, it would tell you it needs the  
"KDElibs 4.1 redistributable package", exactly the same way  
applications compiled with Visual C++ 2005 and 2008 do now if you are  
on Windows 2000 or XP. It could even offer you to download and install  
the package for you. This "KDElibs 4.1 redistributable package" would  
then contain KDElibs 4.1 and its 3rd party dependencies.

My point is the current installer works very well because it resolves  
dependencies and installs everything but it's not what a Windows user  
is used to and IIRC, offline installations need you to essentially  
mirror the WinKDE repository and tell the WinKDE installer where the  
mirror is (not exactly intuitive for the average Windows user).

Summarizing, what I propose is:
* Have redistributable packages for kdelibs, kdepimlibs and  
kofficelibs, each one of them including its third-party dependencies
* Use side-by-side assemblies and make kdelibs, kdepimlibs and  
kofficelibs be shared assemblies
* Standalone installers for applications, including the application  
and the 3rd party dependencies specific to that application

Comments?

-- 
Pau Garcia i Quiles
http://www.elpauer.org
(Due to my workload, I may need 10 days to answer)



More information about the Kde-windows mailing list