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

Re: [MoM] Packaging fis-get



Andreas,


Many thanks for the clarifications.


Below is my progress report for today.


I will keep echoing all the steps in a verbose manner
at the risk of being repetitive with the instructions on
your side. The hope is that this may prove useful to
the next packager in training.


--------------------------
On Sat, Jan 21, 2012 at 5:39 AM, Andreas Tille <andreas@an3as.eu> wrote:
>     svn co svn+ssh://svn.debian.org/svn/debian-med/
>
-----------

Thanks to your instructions,  and to
additional advice from Olivier Sallou,

I followed the instructions in:
http://debian-med.alioth.debian.org/docs/policy.html#ssh-tips

and the instructions in the Wiki article:
http://wiki.debian.org/Alioth/SSH

Then created a new SSH key pair, with the command

        ssh-keygen -t rsa   luis_ibanez_debian_rsa

used a long passphrase.

put the pair of files it in my ~/.ssh directory

edited my  the file   ~/.ssh/config

and added:

Host svn.debian.org git.debian.org bzr.debian.org hg.debian.org darcs.debian.org arch.debian.org alioth.debian.org
  User    luisusernameinalioth
  IdentityFile ~/.ssh/luis_ibanez_debian_rsa


Went to my account in
https://alioth.debian.org/account/

and added my public key in
https://alioth.debian.org/account/editsshkeys.php


Waited one hour for my public key to be
picked up in the server renewal system.


Then was able to do:

        ssh    alioth.debian.org
 
and get to login successfully.

Then did:

   svn co svn+ssh://svn.debian.org/svn/debian-med


and successfully got a full
checkout of the repository


So,
Task (1): Get SVN repository
has been completed.


MoM Wiki page.  Please read

   http://debian-med.alioth.debian.org/docs/policy.html


Excellent,
Thanks for the link.

I have now read the document,
but I'm sure that will have to reread it a
couple of times for all this content to sink in...    :-)

Question:

The policy document says that if I intent to
work in a package I should report that to

   http://www.debian.org/devel/wnpp/#l1

"If you intent to work on a Debian package
you should follow the normal Debian rules
and file a WNPP bug report."

Looking at the list of the Debian-med blend
http://debian-med.alioth.debian.org/tasks/

It looks like fis-gtm is here
"Hospital Information Systems":
http://debian-med.alioth.debian.org/tasks/his

and that a WNPP report is here:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=541239


Should I do anything about this at this point ?

-

So, Task (2): Read the policy document,
is marked as done...with the qualification
that this is probably first of many reads
to come...     :-)


> >   4. tar -xzf *.orig.tar.gz
> >
> The files turned out to be placed
> one directory above "trunk" in:
>
>       debian-med/trunk/packages/fis-gtm/fis-gtm-server
>
> Doing "ls -l" at that level showed :
>
>  fis-gtm-server_54002B.orig.tar.gz -> gtm_V54002B_linux_i686_src.tar.gz
>  gtm_V54002B_linux_i686_src.tar.gz
>  tags
>  trunk
>
> In this directory, then I did:
>
>               tar -xzf *.orig.tar.gz
>
> it went smoothly and produced:
>
> COPYING
> README
> sr_i386
> sr_linux
> sr_port
> sr_port_cm
> sr_unix
> sr_unix_cm
> sr_unix_gnp
> sr_unix_nsb
> sr_x86_64
> sr_x86_regs
> tags
> trunk

Uhmm, perhaps I should have checked this first what you get.  Fis-gtm is
coming from uspstream in a what we call "dirty archive".  It does not
unpack in a single target directory but rather in your current path.
This causes trouble and should be avoided upstream.  I have not checked
whether recent dpkg-buildpackage can cope with this when manually
unpacking into a separate directory (I think I remember vaguely that
this might work - probably yes because Thorsten Alteholz did not take
any means to work around this).  We are now in the comfortable situation
that we have you as upstream here in the boat.  So I would like you to
talk to those poeple who are responsible to release the distribution
tarball and ask them to unpack the tarball to some directory, say

   gtm-V54002B

and not straigt into the current working directory.



Got it.
I just contacted the upstream team at fisglobal.
We should be able to work with them to make this change.

 
Because I want to stick to my mentoring role I'd like to give an
additional hint:  If I see a situation where I have a technical question
like "How to handle a dirty tarball that unpacks to current working
directory?" I would ask the mailing list debian-mentors@lists.debian.org
where you usually get good advise what to do.  But in our current
situation we do not need to answer this question immediately (see
below).


Got it.

Just to follow with the exercise,
I subscribed to the list at:
http://lists.debian.org/debian-mentors/

 

> Google led me to this document:
> http://debianpaket.de/svn-buildpackage/index.html
>
> (put this path on hold, since it
>  requires concentrated reading..)

Right, you need some time until you get everything by heart.



(This doc is still in my list of things to read,
 so task (3) in my list is still pending)



 
> >   B) Simply
> >        cp -a debian <source_directory>
> >        cd <source_directory>
> >        debuild
> >
> In path (B),
>
>
> being in the directory
>
>    debian-med/trunk/packages/fis-gtm/fis-gtm-server/trunk
>
>
> did the commands:
>
>     cp -a debian gtmsource
>     cd gtmsource/
>     debuild
>
>
> and got back the message:
>
> debuild: found debian/changelog for package fis-gtm-server in the directory
>   /tmp/debian-med/trunk/packages/fis-gtm/fis-gtm-server/trunk
> but this directory name does not match the package name according to the
> regex  PACKAGE(-.+)?.
>
> To run debuild on this package, see the --check-dirname-level and
> --check-dirname-regex options; run debuild --help for more info.

Well, I think I started at an uninformed state when I gave my advise.  I
now tried to do the very same as you and I unpacked to a clean directory,
copied the debian/ dir into it and tried:

fis-gtm-server_54002B$ debuild
 dpkg-buildpackage -rfakeroot -D -us -uc
dpkg-buildpackage: source package fis-gtm-server
dpkg-buildpackage: source version 54002A-1
dpkg-buildpackage: source changed by Thorsten Alteholz <debian@alteholz.de>
 dpkg-source --before-build fis-gtm-server_54002B
dpkg-buildpackage: host architecture amd64
dpkg-checkbuilddeps: Unmet build dependencies: libgpgme11-dev fis-gtm-initial
dpkg-buildpackage: warning: Build dependencies/conflicts unsatisfied; aborting.



Ok, I see.

I managed to retrace your steps with:

typing commands:

cd debian-med/trunk/packages/fis-gtm/fis-gtm-server/trunk/
make -f debian/rules get-orig-source

got response:

uscan --force-download
fis-gtm-server: Version (54002B) available on remote site:
  http://qa.debian.org/watch/sf.php/fis-gtm/gtm_V54002B_linux_i686_src.tar.gz
  (local version is 54002A)
fis-gtm-server: Successfully downloaded updated package gtm_V54002B_linux_i686_src.tar.gz
    and symlinked fis-gtm-server_54002B.orig.tar.gz to it


then typed commands:

mkdir gtm_54002B
cd gtm_54002B
tar -xzf ../../*.orig.tar.gz
cd ..
cp -a debian gtm_54002B
cd gtm_54002B
debuild

and got the message:

This package has a Debian revision number but there does not seem to be
an appropriate original tar file or .orig directory in the parent directory;
(expected one of fis-gtm-server_54002A.orig.tar.gz, fis-gtm-server_54002A.orig.tar.bz2,
fis-gtm-server_54002A.orig.tar.lzma or gtm_54002B.orig)
continue anyway? (y/n) y
 dpkg-buildpackage -rfakeroot -D -us -uc
dpkg-buildpackage: set CFLAGS to default value: -g -O2
dpkg-buildpackage: set CPPFLAGS to default value:
dpkg-buildpackage: set LDFLAGS to default value: -Wl,-Bsymbolic-functions
dpkg-buildpackage: set FFLAGS to default value: -g -O2
dpkg-buildpackage: set CXXFLAGS to default value: -g -O2
dpkg-buildpackage: source package fis-gtm-server
dpkg-buildpackage: source version 54002A-1
dpkg-buildpackage: source changed by Thorsten Alteholz <debian@alteholz.de>
dpkg-buildpackage: host architecture amd64
dpkg-checkbuilddeps: Unmet build dependencies: debhelper (>= 8) tcsh | csh | c-shell libgpgme11-dev fis-gtm-initial
dpkg-buildpackage: warning: Build dependencies/conflicts unsatisfied; aborting.
dpkg-buildpackage: warning: (Use -d flag to override.)
debuild: fatal error at line 1340:
dpkg-buildpackage -rfakeroot -D -us -uc failed


So, I think we are in the same page here.
I'm also missing the "libgpgme11-dev" package,
but had no trouble installing it with:

         sudo apt-get install libgpgme11-dev
 

This shows two things:  I'm missing on my box the package libgpgme11-dev
which could be easily installed.  However, the package fis-gtm-initial
should be installed as well and you guess that this package can not yet
be easily installed. :-)


Got it.
 
So sorry for missguiding you in the first place - we need to start with
this first.  I now checked what Thorsten did.  When doing so I realised
that it was a bit outdated.  Due to changes on our main developmet
server we larned that the way we specified the fields Vcs-Svn and
Vcs-Browser not correctly (Debian Med policy now fiyxed but it was
recommending a wrong spelling).  So I fixed this and I also added the
deep link fis-gtm-initial-i386 to guide directly to our packaging for
fis-gtm-initial.  


Yeap. I see your updates in svn.

 
This package should be now in our focus because we at
first need to bootstrap GT.M (well, you have choosen a complex package
for the beginning - if you manage this one you can do probably 99.9% of
all Debian packages. ;-))


Double happiness...      :-)

 
If you look at the svn log of the commited revision 9356

Got it:
http://anonscm.debian.org/viewvc/debian-med?view=revision&revision=9356

I see the changes in:
http://anonscm.debian.org/viewvc/debian-med/trunk/packages/fis-gtm/fis-gtm-initial-i386/trunk/debian/control?r1=9356&r2=9355&pathrev=9356
http://anonscm.debian.org/viewvc/debian-med/trunk/packages/fis-gtm/fis-gtm-initial-i386/trunk/debian/changelog?r1=9356&r2=9355&pathrev=9356

 
I not only
changed the file debian/control but also debian/changelog.  For not yet
uploaded packages this is ... how to say ... voluntary.  Usually the
first upload of a Debian package has only one entry saying "Initial
upload".  However, there is no reason not to specify what we changed and
for the purpose of MoM I decided to be pretty verbose to guide you
patiently as promised.


Yes,
your details here are very helpful.

Now I can connect the dots with the instructions
in the policy document about

the file "debian/control":
http://debian-med.alioth.debian.org/docs/policy.html#debian-control

and the file "debian/changelog":
http://debian-med.alioth.debian.org/docs/policy.html#debian-changelog
 

When you edit debian changelog the best thing you can do is to move
do the directory below the debian/ dir (where you could type
`edit debian/changelog`).  There you do

   dch        (or debchange - dch is the shortcut for lazy people)

This brings up your $EDITOR setting the date properly and will even
inject a new section for *your* changelog entries - quite practical
if you ask me.  


Yeap,
I manage to replicate this.

In the directory:

debian-med/trunk/packages/fis-gtm/fis-gtm-server/trunk

typed:

     debchange

and got Vim to open the file with my name conveniently inserted.
(then quit without modifying the file).


Moreover some syntax checking is done after editing.
If you want to inject a new upstream version you do

   dch -i

which is what I actually did for the new upstream version.


mm, I have a question here:

I see that you replaced the GTM version

                           (54002A-1)

with the GTM version

                           (54002A-2)

but the fis-gtm version that is available at sourceforge:

       http://sourceforge.net/projects/fis-gtm/

is:

                           (54002B)

Is there a reason for sticking to (54002A-2)
instead of  going after (54002B) ?

 
Please also notice the target distribution field which I setted to
"UNRELEASED" (also for the previous version).  This is described in
Debian Med policy and tells other people of the team that this is work
in progress.  (You sometimes find bad examples in our SVN where people
just set "unstable" which is the distribution the upload is finally
targeting to - we want to do proper work and use UNRELEASED, right.)


Got it.
Yes I see the explanation in the policy document at:
http://debian-med.alioth.debian.org/docs/policy.html#debian-changelog

 

Coming back to my previous advise.  Please replace in my advise "server"
by "initial" and try again.  Please pay specifiv attention to the script
debian/get-orig-source.  You can read more about its purpose in our
policy document.  It is a work around dirty tarballs and in this case
specifically reflects the extraordinary complexity of the fis-gtm case.
I have to admit that we do *not* have a typical package, but anyway we
should try to fight our way.


Ok, I'll attack this now.

Will focus on the package:

                          "fis-gtm-initial"



I hope so.  As I said I'm no svn-buildpackage expert.  You might like to
ask separate specific questions here on the Debian Med list.



I'll skip the path (A) on svn-buildpackage by now,
and stick to your recipe for path (B), if that is OK
with you.


 
> 4)  I can use advice on what went wrong
>      when attempting path (B).

Wrong package - my fault.


Got it. Thanks.

Will focus now then on:      "fis-gtm-initial".
 

Thanks Luis for your work.  I really have to admit that I'm very happy
how you were dealing with your first tasks.  You did not gave up on the
first steps (ssh) but went over to other tasks fighting hard against my
incomplete advises.  I'm really happy that we startet MoM and I'm quite
positive that it will be work and fun at the same time - which finally
is the good thing in Free Software.


Many thanks for your guidance.

If I was not in the MoM program,
I would have not dared to come thus far.     :-)

 
Hope my explanations bring you a bit foreward and looking foreward for
your response about new success and failure stories.



Yes, they are very helpful.


So, I'm now going for coffee    :-)

and will do a second try,
this time focusing on "fis-gtm-initial".


    Many Thanks


          Luis



Reply to: