[kde-freebsd] KDEmod with Ports

Ion-Mihai Tetcu itetcu at FreeBSD.org
Wed Jun 25 09:16:49 CEST 2008


On Tue, 24 Jun 2008 18:58:37 -0400
"Josh Rickmar" <joshua.rickmar at gmail.com> wrote:

> Hi.  Last weekend I switched my desktop computer from Arch Linux to
> FreeBSD.  On Arch, I used KDEmod [1] (a modular and splitted KDE) in
> place of Arch's vanilla KDE.
> 
> I am now wondering if it is possible to port KDEmod to FreeBSD with
> Ports.  KDEmod is built using a different build system than Arch's
> standard PKGBUILD and makepkg tools.  Instead of building one package
> for each PKGBUILD, a SPLITBUILD is used to create multiple packages.
> 
> This way, instead of having just kdetoys (like in
> /usr/ports/x11-clocks/kdetoys3), it is possible to build seperate
> packages for amor, kteatime, ktux, kweather... all part of kdetoys,
> with the same SPLITBUILD or PKGBUILD.
> 
> (Here's a better explanation of how the build system works [2].  This
> is for KDE3, the KDE4 version is (slightly?) different, but the
> concept is similar.)
> 
> I have started this thread [3] on the KDEmod forums asking if it is
> still possible to port KDEmod to other distros or systems with the new
> buildsystem.  Funkyou (the original developer of KDEmod) replied
> saying that if you can port the kdetoys example, it should be
> relatively easy to port the rest.
> 
> I am willing to write Ports for this (if it is possible), however, I
> have only basic knowledge of writting PKGBUILDs and no knowledge in
> making Ports.  Any help would be appreciated.

The place where you want to discuss this is kde@ (CC'ed).

Making our KDE more modular has been discussed from time to time but
there's a big amount of work needed for that and our kde maintainers
didn't have the resources to do it. Besides KDE components are pretty
interdependent and sorting out what can be split and what not is time
consuming (and many of the problems will only be evident at runtime).

From what I see "SPLITBUILD" means making install in only a subdir
(that holds the app you are interested in) instead of the top dir.
But since it's based on PKGBUILD which we don't use you can't port it
to FreeBSD (basically you'd need to replace all out ports
infrastructure with an other packaging system).

What you could do is for the beginning is to try to simulate what their
bash scripts do in a Makefile.

A first step would be to take an existing kde port like 
/usr/ports/x11-clocks/kdetoys3, try to understand what
/usr/ports/x11-clocks/kdetoys3/Makefile, /usr/ports/x11/kde3/Makefile.kde
and /usr/ports/Mk/bsd.kde.mk do, then
modify /usr/ports/x11-clocks/kdetoys3/Makefile by adding a few custom
targets to it that would install only part of what it's built.

Like:
install-kodo:
	cd ${WRKSRC}/kodo && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}

Then test it at run time, see what else it depends on, etc.

Then start the packaging part (plist, transforming it in one port for
each component plus metaportm etc.).


-- 
IOnut - Un^d^dregistered ;) FreeBSD "user"
  "Intellectual Property" is   nowhere near as valuable   as "Intellect"
FreeBSD committer -> itetcu at FreeBSD.org, PGP Key ID 057E9F8B493A297B
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-freebsd/attachments/20080625/3e8f0107/attachment.pgp 


More information about the kde-freebsd mailing list