Mailinglist Archive: opensuse-buildservice (171 mails)

< Previous Next >
Re: [opensuse-buildservice] OBS for native Windows nodes
  • From: Adrian Schröter <adrian@xxxxxxx>
  • Date: Mon, 7 Sep 2009 09:24:06 +0200
  • Message-id: <200909070924.06632.adrian@xxxxxxx>
Am Montag, 7. September 2009 09:11:10 schrieb Klaas Freitag:
Am Montag 07 September 2009 02:01:40 schrieb John Pye:
Hi,

I expanded my page about Windows support for OBS as a build client on
native Windows build-nodes. The idea is to build packages directly on
Windows machines using MinGW, rather than using cross-compilers.
Accompanying the concept is a concept for a package manager for
Windows that would deal with dependencies in a way that interoperates
with the usually 'standalone' installers common on Windows.

http://en.opensuse.org/Build_Service/Concepts/Windows_Support

Would appreciate any thoughts on this.

From my point of view the virtualized build system is the only way to
go in the long term. Only that one would offer the needed functionality
to build packages without the need to adapt the build system to support
cross builds (which will anyway not work in all cases).

I tried some time ago to use a wine wrapper inside of our build script
to support windows builds. At that point of time, I was not able to get
gnumake running inside of wine, but that is quite some time ago.

Another option would be to try to use a prepare ReactOS image, haven't
tried yet.

I would like to avoid to use MS Windows for opensuse.org. It would be
nice if we can support this as well, but using MS Windows would not
allow the users to run secure local builds with "osc build", because we
would not be allowed to distribute the image due to the license.

Perhaps the license issues could be overcome with a suitably high-level
conversation with Microsoft by Novell?

I doubt that one would be able to negotiate with MS that we're allowed to
distribute a MS Windows based build system onto everybodies home computer
with osc build ;-)

Right, me too.

And, on the other hand, I think we should try hard to push in the free
software direction and work with alternatives. ReactOS is a great
initiative, and maybe we can ask them for help?

The pure implementation time of a new package format into our OBS
backend code would be quite low, if someone would find out how this
format would look alike and adapt the build script for it. (Yes some
bash script and one perl module).

So, if someone is doing this job, either Michael or me can extend our
OBS backend code relative fast for this (of course someone else can do
it as well, but that needs quite some knowledge). The build script
itself its modules (there are one RPM, one Deb and one kiwi) can be
done easily, if you have have some knowledge about the windows format.
This is were Michael and me are lacking the knowldege ;)

My thoughts on all this are that RPMs are great (especially coming from
a Linux background), but they're not really what end-users demand. On
Windows, end-users demand MSI or .EXE installers, and if there is any
package management, then it has to happen automatically from within that
installer.

MSI does not support dependencies which makes it hard but not impossible
for the build environment setup - we probably have to go a "install
all"-way.

I was told that there is something in .msi and .cab where you can somehow
require others. And .msi should be extensible to an own, obs-properitary
provides/requires system at least.

For the bundling of the user downloadable packages MSI also could only be
used if we also follow the 'put everything in' approach which seems to be
quite common on the platform.

To create MSI's it seems to be recommended to use a opensource toolkit
called WiX. It is driven by Microsoft and written in C#, see
http://wix.sourceforge.net/
and a tutorial here:
http://wix.sourceforge.net/tutorial.html
It comes with command line tools and uses a XML file config file from which
a MSI package (or program?) is compiled. Sounds pretty much how we like
it, except some details maybe ;-) There is a pretty active community with
mailinglists. We also could ask there for help.

regards,
Klaas


--

Adrian Schroeter
SUSE Linux Products GmbH
email: adrian@xxxxxxx

--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx

< Previous Next >
Follow Ups