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

Re: Debian 3.1 packaging documentation



Thank you Vincent!

I do appreciate your kind words of encouragement!

Although I only spent a few days researching what I
thought was an easy process has turned out to have
interesting twists and turns.

There appears to be very specific rules of engagement
I need to learn to build my debian. 

Just to give you a hint on what I learned:

Since I need to build a binary deliverable I read that
the following structure was required to make the 

dpkg -b foo foo_bar_1.debian31.i386.deb

directory tree:

.../debian/foo/DEBIAN

inside the DEBIAN directory is

./postinst
./preinst
./prerm
./control
./data.tar.gz
./debian-binary

I then used the above command from within the
.../debian directory and it builds the deb file and I
turned on debugging with 

dpkg -i -D100 foo_bar_1.debian31.i386.deb

And it tells me it installs everything and when I go
hunting for where I told it to install (my ./preinst
script asks the user for the directory they want to
install and it successfully builds it but then when
the ./postinst script runs it can't find the
./data.tar.gz file and it's like the debug is really
helping to explain the nature of what's going on but
since I don't have a simple to use roadmap on what's
going on it's alittle confusing.

I'm not frustrated, just curious why it's doing what
it's doing given all what I thought I learned despite
the fact I'm a newbie!

So yes Vincent, I'm aware of the debconf file for
maintaining information, but I've been unable to
sucessfully fully understand the overall nuts and
bolts of this dpkg process.

I'm going to get it and all your help and others have
only served to encourage me to really focus!

I downloaded other sample deb files and opened them up
to check out their scripts and although I wasn't
signing mine nor giving the other files that were
suggested, it stills left me asking the easy question
of the details of the process of what is going on...

So with that in mind I turned on the insane debugging
and the amount of processes that were forked, checked,
etc., was quite extensive.

Leaves me understanding that I have alot more to learn
and alot of trial and error since I'm short cutting
the process since I already have an ant process that
successfully builds my data.tar.gz and all I wanted to
do was something simple...

HA!  Guess again newbie!

But it's great!  I've been to other forums where I get
help but then it's like a quick dead end.

I guess that even after reading the man pages, books,
online material, etc., the thing I found lacking was a
complete descriptive process for building a .deb
package with existing binaries that allowed the end
user to relocate the package (oops, did I say
relocate!  HA!!! yes, I got 1/2 of that to work, but
it wasn't too happy about doing it!).

So, Vincent, I'll check out your material and since
I'm doing this for the debian 3.1 environment I'll
keep forging ahead and each time I get more
information I'll adapt!

Thanks for your ongoing support and maybe I'll get it
finished soon and then I'll report back my findings
since I've been treated pretty much okay, so why not
share the new understanding with others less fortunate
than me!

Freely!  of course!

This is after all not rocket science!

Thanks again,

Robert

--- Vincent Danjean <Vincent.Danjean@ens-lyon.org>
wrote:

> robert jennings wrote:
> > Thank you Carlo,
> > 
> > Actually, I was cutting a few corners and did a
> quick
> > read through the Debian GNU/Linux 3.1 Bible as
> well as
> > a few other sites (I like IBM's site for quick
> answers
> > for lots of little tid bits!) and I created the
> DEBIAN
> > directory with associated files and skipped the
> > dh_install process as I thought it was primarily
> for
> > when building from source, which I'm not
> delivering...
> 
> It seems you are trying to build a .deb 'by hands'.
> It is possible
> (it is an exercise for new Debian developers), but
> this is really not
> the easiest way to do.
> 
> dh_install can be used to install any files (built
> with 'make' or
> already present or ...)
> What is important to understand is that the 'source'
> debian package
> can contain already built files. For official Debian
> package in main,
> we do not want that (as we require to have the full
> sources to be able
> to modify/correct/... all programs). But for private
> package (or
> probably even Debian package in the non-free
> section), it is perfectly
> possible to put in the source prebuilt files. In
> this case, the
> debian/rules file only needs to install these files
> (and not rebuilt
> them)
> 
> I think the easiest way for you is to create a
> source package that will
> only install your prebuild files in the binary
> package. And the binary
> package (ie the .deb) will be build (as a standard
> user) with one of
> these commands :
> dpkg-buildpackage -rfakeroot -us -uc
> debuild -us -uc
> 
> Note: "-us -uc" avoids to sign your package. You can
> remove them (and
> sign your package) if you have a gpg key set up.
> 
> Then, the .deb can be installed with "dpkg -i
> .....deb"
> 
> If you want, you can look at one of my old private
> package
> labri-texutils:
>
http://dept-info.labri.fr/~danjean/deb.html#labri-texutils
> It is a package with a debian/rules and a Makefile
> that only
> installs LaTeX files in the binary package.
> It is an old package (so it is probably nor
> up-to-date with
> the current debian standards), but it can be a good
> example
> for you to start with.
> 
> So see it, go to the web page, download the
> .orig.tar.gz, .diff.gz and
> .dsc files, type "dpkg-source -x .....dsc". You will
> get a directory
> with the source package in it. Enter this directory
> and type
> "debuild -us -uc" to rebuild the binary package.
> Then, look at the
> sources and modify them as you want.
> 
> Note: all these actions (except the "dpkg -i
> ....deb" to install and
> test the package) can be done as a user (ie not
> root).
> 
> >  I later started looking again and it seems that
> I'm
> > missing maybe the debconf file to hold the users
> > responses for installation.
> 
> At first, I do not think you need to bother with
> debconf.
> Try to make your first package without it. If you
> need to
> interact with the user during the package
> installation, debconf
> is the good way to do it, but it is a little harder
> to set up.
> So this should be for a second step.
> 
> > I'm really new to Debian (about 5 days) so I'm
> sorry
> > if my learning curve is slow.
> 
> You're welcome ;-)
> 
> > Do you think I'm on track?
> 
> We all started by a first package. If you are
> motivated, there is
> no reason you cannot get your one.
> 
>   Best regards,
>     Vincent
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



Reply to: