[Pkg-xfce-devel] bringing closer the debian/ubuntu packages

Jani Monoses jani.monoses at gmail.com
Thu Jul 6 17:01:13 UTC 2006

Hi all

currently the xfce packages in the two distros are very divergent as far
as the debian/ directories go. While our were based on debian's 4.2
packages there was little syncing in either direction since then.

The main difference right now (modulo missing packages on either side)
is that all ubuntu xfce packages were switched to cdbs + simple
patchsys. Debian still hase some plain debhelper files and some uses of
dpatch here and there.

In addition in Ubuntu we have a specialized xfce class in cdbs
(attached) the use of which further simplifies and modularizes the
packages content. We need to touch every package to modify its .desktop
file and having it done in one place in the cdbs class which is included
by all packages helps a lot.

I talked to huggie and corsac on irc and for the record I post here as
well, proposing debian-xfce to adopt such a script. This way the ubuntu
changes could be contained in this script only as opposed to scattered
across all packages.

We now patch cdbs, but after huggie said he'd prefer to not rely on the
cdbs maintainer for this I also think it's better to have the cdbs class
provided by the pkg-xfce team as well. For an example of how it's done
outside cdbs check out ruby-pkg-tools. The ruby debian team has it's own
cdbs stuff and it is maintained by them.

I also attach a the rules file for xfce4-panel to show how we use the
cdbs xfce class and why this makes our diffs non-mergeble at this stage,
since basically all packages are affected.

It would be nice if all of you agreed this is a good idea :) and have
this in place along with the upcoming 4.4 beta2.

I'd very much like to spend as little duplicated effort on maintaining
the packages themselves if the debian ones were suitable to use, as that
time is put to better use by bugfixing and developing xfce upstream itself.

-------------- next part --------------
# -*- mode: makefile; coding: utf-8 -*-
# Description: A class for XFCE packages
# This program 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, or (at
# your option) any later version.
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
# 02111-1307 USA.

_cdbs_scripts_path ?= /usr/lib/cdbs
_cdbs_rules_path ?= /usr/share/cdbs/1/rules
_cdbs_class_path ?= /usr/share/cdbs/1/class

ifndef _cdbs_class_xfce_
_cdbs_class_xfce := 1

# for dh_iconcache
CDBS_BUILD_DEPENDS   := $(CDBS_BUILD_DEPENDS), debhelper (>= 5.0.7ubuntu4)

include $(_cdbs_rules_path)/debhelper.mk$(_cdbs_makefile_suffix)
include $(_cdbs_rules_path)/simple-patchsys.mk$(_cdbs_makefile_suffix)
include $(_cdbs_rules_path)/langpack.mk$(_cdbs_makefile_suffix)
include $(_cdbs_class_path)/autotools.mk$(_cdbs_makefile_suffix)

$(patsubst %,binary-install/%,$(DEB_PACKAGES)) :: binary-install/%:
	if test -x /usr/bin/dh_desktop; then dh_desktop -p$(cdbs_curpkg) $(DEB_DH_DESKTOP_ARGS); fi
	if test -x /usr/bin/dh_iconcache; then dh_iconcache -p$(cdbs_curpkg) $(DEB_DH_ICONCACHE_ARGS); fi

-------------- next part --------------
#!/usr/bin/make -f

include /usr/share/cdbs/1/class/xfce.mk

DEB_INSTALL_MANPAGES_xfce4-panel := debian/xfce4-panel.1
DEB_INSTALL_DOCS_xfce4-panel := README.Kiosk
DEB_INSTALL_DOCS_xfce4-panel-dev := HACKING README.Plugins 


	rm -f debian/xfce4-panel/etc/xdg/xfce4/panel/*
	rm -f debian/xfce4-panel/usr/lib/xfce4/panel-plugins/*.la
	rm -f debian/xfce4-panel/usr/lib/xfce4/panel-plugins/*.a
	rm -f debian/xfce4-panel/usr/lib/xfce4/mcs-plugins/*.la
	rm -f debian/xfce4-panel/usr/lib/xfce4/mcs-plugins/*.a

More information about the Pkg-xfce-devel mailing list