Dave Robinson wrote:
> Hi All,  :-)
>
> Re: lxf118:
>
> 64studio was chosen as the top distro in the Lifestyle
> Music Production section "Finding the perfect distro" article.
> A very good review of 64studio is included.
>
> Build Debian Packages:
> If you find the Debian documentation a bit heavy to
> begin with, this tutorial is a great way to get your feet muddy
> with Debian package building. The packages are small and
> quick to build, also the outcome leads you on to the next
> natural step in package building.
>
> Method:
> I started off with two tiny shell scripts called,
> helloworld & world like this.
>
> #!/bin/bash
> echo -n hello
> world
> #!/bin/bash
> echo ' world'
>
> $ chmod 755 helloworld
> $ chmod 755 world
>
> Assuming these scripts are in a directory that's on my
> search path I can run helloworld and see the expected output.
>
> $ mkdir ~/bin
> Add search path to .bashrc
> export PATH=/home/dave/bin:$PATH
> $ . .bashrc
>
> $ helloworld
> hello world
>
> Create the control file.
>
> $ gedit ~/control
> Add your details:
>
> Package: world
> Version: 1.1-1
> Maintainer: Your Name [email protected]
> Description: Program to print "world"
> Section: utils
> Priority: optional
> Architecture: all
> Depends: bash
>
> $ cd; mkdir wdir; cd wdir
> wdir$ mkdir -p debian/usr/local/bin/
> wdir$ cp ~/bin/world debian/usr/local/bin/
> wdir$ mkdir debian/DEBIAN/
> wdir$ cp ~/control debian/DEBIAN/
> wdir$ dpkg-deb --build debian/ .
> dpkg-deb: building package world'
> in./world_1.1-1_all.deb'.
> wdir$ ls -l
> total 8
> debian
> world_1.1-1_all.deb
>
> $ cp wdir/world_1.1-1_all.deb pkg-mmm/
>
> ~/pkg-mmm$ ar x world_1.1-1_all.deb
> ~/pkg-mmm$ ls -l
> control.tar.gz
> data.tar.gz
> debian-binary
> world_1.1-1_all.deb
>
> ~/pkg-mmm$ tar tf data.tar.gz
> ./
> ./usr/
> ./usr/local/
> ./usr/local/bin/
> ./usr/local/bin/world
>
> ~/pkg-mmm$ tar tf control.tar.gz
> ./
> ./control
>
> ~/pkg-mmm$ lintian world_1.1-1_all.deb
> E: world: dir-in-usr-local usr/local/bin/
> E: world: file-in-usr-local usr/local/bin/world
> W: world: file-in-unusual-dir usr/local/bin/world
> E: world: no-copyright-file
> E: world: extended-description-is-empty
> E: world: maintainer-name-missing
> Your Name [email protected]
> E: world:
> depends-on-essential-package-without-using-version
> depends: bash
>
> The second package (helloworld) is built in much the
> same way with different details e.g. Depends: bash "world"
> (control file details). If you try to install "helloworld"
> without installing "world" first, dpkg refuses.
> Similarly, with both packages installed, if you try to
> remove "world" dpkg refuses.
> Dependency management is working fine.
> This howto is a good way to tackle package building at a root level.
> The program lintian "lintian world_1.1-1_all.deb"
> is showing that the packages would not be accepted into
> the Debian distribution, more importantly it shows "why"
> and "what" needs correcting. Now we can research:
>
> http://www.debian.org/doc/maint-guide/
>
> Using the messages produced by lintian as a guide.
> - - - - - - - - - - - - - - -
>
> The first packaging classroom
> #ubuntu-classroom on irc.freenode.net was very good
> and I'm looking forward to next weeks session.
>
> http://ubuntupackaging.wordpress.com/
>
> Cheers!
> Dave.
>
> Forum: Package-maintainers starter
> http://www.64studio.com/node/995
>
>
>   
Thanks.
I think cdbs can make your Debian packaging a lot easier.

If you run:

dh_make -e [email protected] -f ../rumor-1.0.3b.tar.gz -c gpl -b

(change email and package of course)
in the program source directory, cdbs takes care of the /debian/rules 
file. You don't have to look at that... :)

Also the debian mentors website and mailinglist is very very helpful!

More info:

http://debathena.mit.edu/packaging/
https://perso.duckcorp.org/duck/cdbs-doc/cdbs-doc.xhtml

Good luck. It's nice to have some influence on the packages which are in 
Debian/ Ubuntu/ 64studio! :)

\r


_______________________________________________
64studio-devel mailing list
[email protected]
http://lists.64studio.com/mailman/listinfo/64studio-devel

Reply via email to