This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ITP: dpkg

Now this is probably going to start a huge email wave. So I'll start by
making some key points:

1) Setup does not support dpkg or rpm yet, so this package is -not-
meant to interoperate with setup.exe.
2) I'm not trying to 'race' Nicholas's rpm efforts. I don't think we
should -ever- place cygwin maintainers in a position where they must
have either dpkg or rpm on their home system in order to create
packages. That's why I want setup to support *both* .rpm and .deb file
formats. Conversely, I think maintainers should be able to have either
or both dpkg and rpm available as tools to use when building packages.
3) In case there is any doubt: I am not trying to make the cygwin net
distribution over in debian's image. If I wanted to do that, I would be
contributing my time to the debian-w32 port effort. I'm simply trying to
get my favourite packaging tool available for my use, and share it with
others if they want it.

Having said that, a few notes on the package:
4) It's not 100% ported and tested. For instance it may still try
chmod(0,0). I've addressed most issues I think though. There is still
optional extras that can be done, like making start-stop-daemon wrap
cygrunsrv rather than disabling start-stop-daemon.
5) It's deliberately a single package rather than split out into -dev,
-doc, bin and so on, because it's only aimed at developers. In point of
fact (and strange as it may sound), I had to put extra effort in to make
it a single tarball :}. Likewise the choice of category.

category: Devel
requires: perl cygwin libintl2
sdesc: "A package management system."
ldesc: "The dpkg package management system. This is NOT integrated with
setup.exe, and is packaged to allow the use of it's tools for cygwin
package maintainers."


Feedback welcomed,

(*) A helper to make dpkg useful to cygwin package maintainers. That's
the point of this after all.
#! /bin/bash
# convert a deb file to a cygwin setup.exe tarball

export PKG=`echo $1 | sed -e 's/_.*//'`
echo package $PKG
export VER=`echo $1 | sed -e 's/[^_]*_//' -e 's/_.*//'`
echo version $VER
export REL=1
echo cygwin release 1
export FULLPKG=${PKG}-${VER}-${REL}
export bin_pkg_name=${FULLPKG}.tar.bz2
export bin_pkg=`pwd`/${bin_pkg_name}

dpkg-deb -x $1 $PKG-$VER-temp && \
  cd $PKG-$VER-temp && \
  tar cvjf ${bin_pkg} * &&
  echo ${bin_pkg} created.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]