[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFC: packaging a daemon for an embedded platform



Hi, Rogério

Rogério Brito wrote:
> Dear mentors (with CC to debian-powerpc),
>
> I intend to package a heartbeat program for an embedded computer
> (actually, a NAS) based on PowerPC, the Kurobox.
>   
Yup, your thread on -devel is most detailed.
> The original firmware of the Kurobox is non-free, but there is a free,
> highly configurable daemon from
> <http://sourceforge.net/projects/ppc-evtd>.
>
> The "problem" is that it is packaged by upstream in a quite unusual
> way, with the following directory structure:
>   
Hmm.. "packaged"? you mean the "upstream tarball"?
In this case, it doesn't really matter.
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> rbrito@cruz:/tmp$ tar ztf avr_evtd_1.7.2.release.tar.gz
> usr/src/avr_evtd/./
> usr/src/avr_evtd/./COPYING
> usr/src/avr_evtd/./Makefile
> usr/src/avr_evtd/./README1st.txt
> usr/src/avr_evtd/./avr_evtd.c
> usr/src/avr_evtd/./PPC/
> usr/src/avr_evtd/./PPC/avr_evtd
> usr/src/avr_evtd/./MIPS/
> usr/src/avr_evtd/./Install/
> usr/src/avr_evtd/./Install/avr_evtd
> usr/src/avr_evtd/./Install/emergency_eth0
> usr/src/avr_evtd/./Install/avr_evtd.sample
> usr/src/avr_evtd/./Install/EventScript
> usr/src/avr_evtd/./Install/COPYING
> usr/src/avr_evtd/./Install/recovery.tar
> usr/src/avr_evtd/./Install/avr_evtd.1.gz
> usr/src/avr_evtd/./IMPORTANT.PLEASE READ
> rbrito@cruz:/tmp$
> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
> It also contains a binary included and some other things that need to
> be Debianized. So, in light of this strange situation, would it be the
> case of repackaging the source or would it be better to keep
> upstream's strange arrangement?
>   
dpkg-source would, AFAIK, rename the "usr" to the proper
avr-evtd-<version> upon unpacking.
Unless you have to extensively patch the source, or remove any
non-DFSG-free content, I would keep the upstream tarball as it is as
much as possible ("pristine upstream source" for traceability purposes)
> I'm interested, BTW, in getting things working well in small, embedded
> platforms.
>   
That should only be a matter of keeping the package small (i.e. not
shipping unneeded files) -- the rest depends directly on the source itself.
> Thanks for any comments, Rogério Brito.
>   
When debianizing, just:

in debian/rules:
    - remove all binaries (I mean src/avr_evtd/PPC/avr_evtd): this is
typically achieved by calling "$(MAKE) clean" or similar
    - compile, but do not install --- you most probably want to do that
yourself, anyway, seeing how upstream likes to arrange things o_O
    - you might want to investigate compiler switches to make the daemon
use less resources

For the rest
- put the daemon in /usr/sbin  -debian/install (or avr-evtd.install)

- put the config file in /etc/avr-evtd/avr-evtd.conf or similar  (you
might need to patch the source for this)

- emergency_eth0 seems to be a script -- it would go within
/etc/avr-evtd or /usr/lib/avr-evtd depending on how it gets used

- install the manpage   - dh_installmanpages
- install the samples   - dh_installexamples


What does "recovery.tar" contain?? this might be the most hairy part...



Hope that helps.

Cheers,

    J.L.


Reply to: