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

Re: [MoM] Packaging fis-get



Andreas,

On Wed, Jan 25, 2012 at 4:22 AM, Andreas Tille <andreas@an3as.eu> wrote:
Ahhh, thanks for beeing stubborn.  That's the key to success in these
cases. ;-)

There might be some pedagogical advises to inject some errors here and
there and let students find them.  So while I did not intentionally did
so I might be a specifically talented mentor in doing this by accident.
In any case you found the clue.  Most probably it migth be a good idea
if you put new maintainers guide[1] as well as the other essential
readings mentioned in Debian Med policy[2] under your pillow.  This will
help you detecting my mistakes in advises easier. ;-)


Thanks for the links to the Maintainers' Guide
I Just bookmark it and will do the reading as homework.

 
> gpg: skipped "Andreas Tille <tille@debian.org>": secret key not available
> gpg: /tmp/debsign.MBn96VZG/fis-gtm-initial_54002B-1.dsc: clearsign failed:
> secret key not available
> debsign: gpg error occurred!  Aborting....
> debuild: fatal error at line 1246:
> running debsign failed

The failure of debsign is expected.  You can prevent this by making the
changelog your own:

 $ dch
 :wq

(assumed vim is your editor) would be the most simple way to fix this.
To avoid this oversimplification which will force dch to assume a NMU
because  your ID is not mentioned as Uploader I would advise to edit

  debian/control

first and add your ID (Name <email> as specified in your GPG key) in the
comma separated list of Uploaders.  This tells dch that you are not
doing a NMU (NonMaintainer Upload).  After having done so you can even
sign the package with your key.  Because you are asked for signing
source and binary package by debsign you will be asked for the pass
phrase twice - that's normal.


Ok, so, here I took a long detour today to get advice
from local Gurus on seetting my GPG keys
(since I didn't have one so far).


Guided by:
http://www.gnupg.org/gph/en/manual.html

and:
http://www.debian-administration.org/articles/82

and in general:
http://www.debian-administration.org/tag/gpg

We have done most of the process of creating the keys,
and at this point I can use advice on guidelines that are
specific to Debian, in particular in what pertain to using
the GPG key for signing packages.

Are the links above the right places that I should be
looking at, at this point ?

(...I'll continue the the process below and continue
 on GPG keys as a background task...)

 
> I guess that all these messages are good news,
> and that the error at the end is simply due to
> some specific keys being required for that step.

Yes,  correct.  Congratulations, you builded your first package! \o/


Great !   :-) 


 
> Now running lintian...

Here you get a message from lintian.  Lintian is one of the packagers
greatest friends.  Sometimes friends can be boring if they are too picky
- but it is a friend anyway.


I see.
http://lintian.debian.org/

 
> W: fis-gtm-initial source: newer-standards-version 3.9.2 (current is 3.9.1)

This warning is a consequence of building on a stable machine.  New packages
are targeting at Debian unstable and you should build for the latest standards
version which is currently 3.9.2 (and this in your control file is the line

  Standards-Version: 3.9.2

However, the lintian on your system does not yet know this latest standards
version.  So it is a good idea to do the following (untested, but you will
find it out)

 $ su
 # cd /etc/apt
 # echo 'deb http://ftp.debian.org/debian/ unstable main non-free contrib' >> sources.list
 # cat >> preferences <<EOT
Package: *
Pin: release a=stable
Pin-Priority: 501

Package: *
Pin: release a=unstable
Pin-Priority: 50
EOT
 # cat >preferences.d/01-linitan.pref <<EOT
Package: lintian
Pin: release a=unstable
Pin-Priority: 605
EOT



Done, and it went smoothly.

but presumed that "01-linitan.pref" above
was a typo, si used "01-lintian.pref" instead.

 
This does the following:

 1. Add unstable to your sources.list
 2. /etc/apt/preferences makes sure you will not simply upgrade your system
    to unstable but stable has preference (well, probably it might not harm
    to upgrade your whole machine to unstable anyway, but I'm running my
    machine on testing and not on unstable and you should learn the means
    how to enable using unstable components on a stable / testing system)
 3. /etc/apt/preferences.d/01-linitan.pref injects an exception of the
    preferences for lintian which should be from unstable

Please check this via

 $ sudo apt-get update

This went smoothly.
 
 $ apt-cache policy lintian


This returned:

 apt-cache policy lintian

lintian:
  Installed: 2.4.3+squeeze1
  Candidate: 2.5.4
  Package pin: 2.5.4
  Version table:
     2.5.4 605
         50 http://ftp.debian.org/debian/ unstable/main i386 Packages
 *** 2.4.3+squeeze1 605
        501 http://ftp.us.debian.org/debian/ squeeze/main i386 Packages
        100 /var/lib/dpkg/status


 
The version from unstable should be marked as installation candidate and an

 $ sudo apt-get dist-upgrade
or
 $ sudo apt-get install lintian


before doing this,

the command:  "dpkg -s lintian"

returned:

Package: lintian
Status: install ok installed
Priority: optional
Section: devel
Installed-Size: 1916
Maintainer: Debian Lintian Maintainers <lintian-maint@debian.org>
Architecture: all
Version: 2.4.3+squeeze1


and after doing:  "apt-get install lintian"

the output includes this line (among others):

Get:1 http://ftp.debian.org/debian/ unstable/main lintian all 2.5.4 [649 kB]

and then the command "dkpg -s lintian" returns:

dpkg -s lintian
Package: lintian
Status: install ok installed
Priority: optional
Section: devel
Installed-Size: 1831
Maintainer: Debian Lintian Maintainers <lintian-maint@debian.org>
Architecture: all
Version: 2.5.4

Which seems to indicate that the update
proceeded without trouble.

 
should make the lintian warning from above vanish.  You do not need to
rebuild the package.  You can call lintian manually either for source and
binary package via

 $ lintian *.dsc *.deb

In the directory:

/home/ibanez/src/debian-med/trunk/packages/fis-gtm/fis-gtm-initial

This command "lintian *.dsc *.deb"  returns:

W: fis-gtm-initial source: syntax-error-in-dep5-copyright paragraph 2 after the field license:  Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>


 
or separately for every *.dsc and *.deb.  If you wonder what the warnings
are meaning try the '-i' argument.  If you love really picky warnings you
can also turn on '-I'.  So I usually do

 $ lintian -i -I *.dsc *.deb

Please play around with this a bit.


when adding the "-i -I" options, we now get:

W: fis-gtm-initial source: syntax-error-in-dep5-copyright paragraph 2 after the field license:  Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
N:
N:    The machine-readable copyright file didn't pass Debian control file
N:    syntax check.
N:   
N:    Refer to http://dep.debian.net/deps/dep5/ for details.
N:   
N:    Severity: normal, Certainty: possible
N:   
N:    Check: source-copyright, Type: source
N:


This seems to be a problem with the text of the license
in the file, that prevents it from being machine readable.

 
> Finished running lintian.
> Now signing changes and any dsc files...
>  signfile fis-gtm-initial_54002B-1.dsc Andreas Tille <tille@debian.org>
> gpg: skipped "Andreas Tille <tille@debian.org>": secret key not available
> gpg: /tmp/debsign.elh7rtXS/fis-gtm-initial_54002B-1.dsc: clearsign failed:
> secret key not available
> debsign: gpg error occurred!  Aborting....
> debuild: fatal error at line 1246:
> running debsign failed
>


I'm working now on getting my gpg key,
so this part can be done without errors.

 
>  I hope this is not too verbose for a report.

No.  It is part of the agreement.  What is the next step.  Well, installing
your freshly created *.deb package, right?  The basic way you can go is

  $ sudo dpkg -i *.deb


This command generated the following output:



Selecting previously deselected package fis-gtm-initial.
(Reading database ... 133931 files and directories currently installed.)
Unpacking fis-gtm-initial (from fis-gtm-initial_54002B-1_i386.deb) ...
Setting up fis-gtm-initial (54002B-1) ...

Creating config file /etc/default/fis-gtm-initial with new version
 
##############################################
automatic configuration, please be patient ...
                     GT.M Configuration Script
Copyright 2009, 2011 Fidelity National Information Services, Inc. Use of this
software is restricted by the provisions of your license agreement.

What user account should own the files? (bin) What group should own the files? (bin) Should execution of GT.M be restricted to this group? (y or n) In what directory should GT.M be installed?
Directory /usr/lib/fis-gtm/54002B-initial exists. If you proceed with this installation then
some files will be over-written. Is it ok to proceed? (y or n)
Installing GT.M....

Should unicode support be installed? (y or n) Should an ICU version other than the default be used? (y or n) WARNING: Default ICU version not found. Not installing Unicode support.

All of the GT.M MUMPS routines are distributed with uppercase names.
You can create lowercase copies of these routines if you wish, but
to avoid problems with compatibility in the future, consider keeping
only the uppercase versions of the files.

Do you want uppercase and lowercase versions of the MUMPS routines? (y or n)
Creating lowercase versions of the MUMPS routines.
./CHK2LEV.m --->  ./chk2lev.m
./CHKOP.m --->  ./chkop.m
./GENDASH.m --->  ./gendash.m
./GENOUT.m --->  ./genout.m
./GETPASS.m --->  ./getpass.m
./GTMDefinedTypesInit.m --->  ./gtmdefinedtypesinit.m
./GTMHELP.m --->  ./gtmhelp.m
./GTMHLPLD.m --->  ./gtmhlpld.m
./LOADOP.m --->  ./loadop.m
./LOADVX.m --->  ./loadvx.m
./MSG.m --->  ./msg.m
./PINENTRY.m --->  ./pinentry.m
./TTTGEN.m --->  ./tttgen.m
./TTTSCAN.m --->  ./tttscan.m
./_D.m --->  ./_d.m
./_DATE.m --->  ./_date.m
./_DH.m --->  ./_dh.m
./_DO.m --->  ./_do.m
./_EXP.m --->  ./_exp.m
./_FL.m --->  ./_fl.m
./_FREECNT.m --->  ./_freecnt.m
./_G.m --->  ./_g.m
./_GBLDEF.m --->  ./_gbldef.m
./_GC.m --->  ./_gc.m
./_GCE.m --->  ./_gce.m
./_GD.m --->  ./_gd.m
./_GED.m --->  ./_ged.m
./_GI.m --->  ./_gi.m
./_GO.m --->  ./_go.m
./_GSE.m --->  ./_gse.m
./_GSEL.m --->  ./_gsel.m
./_H.m --->  ./_h.m
./_HD.m --->  ./_hd.m
./_HEX2UTF.m --->  ./_hex2utf.m
./_HO.m --->  ./_ho.m
./_LCASE.m --->  ./_lcase.m
./_LCLCOL.m --->  ./_lclcol.m
./_OD.m --->  ./_od.m
./_OH.m --->  ./_oh.m
./_PATCODE.m --->  ./_patcode.m
./_RANDSTR.m --->  ./_randstr.m
./_RCE.m --->  ./_rce.m
./_RD.m --->  ./_rd.m
./_RI.m --->  ./_ri.m
./_RO.m --->  ./_ro.m
./_RSE.m --->  ./_rse.m
./_RSEL.m --->  ./_rsel.m
./_SQROOT.m --->  ./_sqroot.m
./_T.m --->  ./_t.m
./_TI.m --->  ./_ti.m
./_TO.m --->  ./_to.m
./_UCASE.m --->  ./_ucase.m
./_UTF2HEX.m --->  ./_utf2hex.m
./_XCMD.m --->  ./_xcmd.m

Compiling all of the MUMPS routines. This may take a moment.


GTM>
%GDE-I-GDUSEDEFS, Using defaults for Global Directory
    /usr/lib/fis-gtm/54002B-initial/gtmhelp.gld

GDE>
GDE>
GDE>
%GDE-I-VERIFY, Verification OK

%GDE-I-GDCREATE, Creating Global Directory file
    /usr/lib/fis-gtm/54002B-initial/gtmhelp.gld

GTM>
%GDE-I-GDUSEDEFS, Using defaults for Global Directory
    /usr/lib/fis-gtm/54002B-initial/gdehelp.gld

GDE>
GDE>
GDE>
%GDE-I-VERIFY, Verification OK

%GDE-I-GDCREATE, Creating Global Directory file
    /usr/lib/fis-gtm/54002B-initial/gdehelp.gld

Installation completed. Would you like all the temporary files
removed from this directory? (y or n) 
... automatic configuration finished
##############################################
rmdir: failed to remove `TMPPOSTINST': Directory not empty
dpkg: error processing fis-gtm-initial (--install):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 fis-gtm-initial


--

So, It looks like the process went smoothly,
and the only problem was the removal of a
temporary directory.

To double check, I do:

   cd /usr/lib/fis-gtm/
 
and "ls -l " returns:

total 20
dr-xr-xr-x 4 root  root  12288 Jan 27 18:33 54002B-initial
drwxr-xr-x 2 root  root   4096 Jan 27 18:33 distribution
drwxr-xr-x 5 40535 40535  4096 Jan 27 18:33 TMPPOSTINST

The directory TMPPOSTINT is indeed not empty:

The command "ls TMPPOSTINST/" returns:

arch.gtc    GDEADD.o         GDEPARSE.o  _G.m             GTMDefinedTypesInit.m     gtmstart.gtc   LOADVX.m       _RD.m
CHK2LEV.m   GDECHANG.o       GDEPUT.o    _GO.m            gtm_descript.h            gtm_stdio.h    lowerc         _RI.m
CHKOP.m     gdedefaults      GDEQUIT.o   _GSEL.m          gtm.gtc                   gtm_stdlib.h   lowerc_cp      _RO.m
configure   gdedefaults.gtc  GDERENAM.o  _GSE.m           gtmhelp.dat               gtmstop        main_pragma.h  _RSEL.m
COPYING     GDEDELET.o       GDESCAN.o   gtcm_gnp_server  gtmhelp.dmp               gtmstop.gtc    MSG.m          _RSE.m
_DATE.m     GDEEXIT.o        GDESETGD.o  gtcm_pkdisp      gtmhelp.gld               gtm_string.h   mumps          semstat2
_DH.m       GDEGET.o         GDESHOW.o   gtcm_play        GTMHELP.m                 gtm_strings.h  mumps.gld      _SQROOT.m
_D.m        gdehelp.dat      GDESPAWN.o  gtcm_run         GTMHLPLD.m                gtmxc_types.h  mumps.hlp      _TI.m
_DO.m       gdehelp.gld      GDETEMPL.o  gtcm_run.gtc     gtminstall                _HD.m          mupip          _T.m
dse         GDEHELP.o        GDEVERIF.o  gtcm_server      gtm_limits.h              _HEX2UTF.m     mupip.hlp      _TO.m
dse.hlp     gde.hlp          _GD.m       gtcm_shmclean    gtmprofile                _H.m           _OD.m          TTTGEN.m
_EXP.m      GDEINIT.o        _GED.m      gtcm_slist       gtmprofile.gtc            _HO.m          _OH.m          TTTSCAN.m
_FL.m       GDELOCKS.o       GENDASH.m   gtcm_slist.gtc   gtmprofile_preV54000      _LCASE.m       _PATCODE.m     _UCASE.m
_FREECNT.m  GDELOG.o         GENOUT.m    gtm              gtmprofile_preV54000.gtc  _LCLCOL.m      PINENTRY.m     upperc
ftok        GDEMAP.o         geteuid     gtmbase          gtmsecshr                 libgtmshr.so   PINENTRY.o     upperc_cp
_GBLDEF.m   GDEMSGIN.o       GETPASS.m   gtmbase.gtc      gtmsecshrdir              lke            plugin         _UTF2HEX.m
_GCE.m      GDE.o            GETPASS.o   gtmcshrc         gtm_sizeof.h              lke.hlp        _RANDSTR.m     utf8
_GC.m       GDEOGET.o        _GI.m       gtmcshrc.gtc     gtmstart                  LOADOP.m       _RCE.m         _XCMD.m



and the command

                              ls distribution/

returns:

             gtm_V54002B_linux_i686_pro-i386.tar.gz


while the command:

                            ls 54002B-initial/

returns:

chk2lev.m  _fl.o        GDEMSGIN.o  getpass.o        gtmdefinedtypesinit.m  _hex2utf.m    main_pragma.h  _rd.m      _T.o
CHK2LEV.m  _FL.o        GDE.o       GETPASS.o        GTMDefinedTypesInit.m  _HEX2UTF.m    msg.m          _RD.m      _to.m
chk2lev.o  _freecnt.m   GDEOGET.o   _gi.m            gtmdefinedtypesinit.o  _hex2utf.o    MSG.m          _rd.o      _TO.m
CHK2LEV.o  _FREECNT.m   GDEPARSE.o  _GI.m            GTMDefinedTypesInit.o  _HEX2UTF.o    msg.o          _RD.o      _to.o
chkop.m    _freecnt.o   GDEPUT.o    _gi.o            gtm_descript.h         _h.m          MSG.o          _ri.m      _TO.o
CHKOP.m    _FREECNT.o   GDEQUIT.o   _GI.o            gtmhelp.dat            _H.m          mumps          _RI.m      tttgen.m
chkop.o    ftok         GDERENAM.o  _g.m             gtmhelp.gld            _h.o          mupip          _ri.o      TTTGEN.m
CHKOP.o    _gbldef.m    GDESCAN.o   _G.m             gtmhelp.m              _H.o          _od.m          _RI.o      tttgen.o
COPYING    _GBLDEF.m    GDESETGD.o  _g.o             GTMHELP.m              _ho.m         _OD.m          _ro.m      TTTGEN.o
_date.m    _gbldef.o    GDESHOW.o   _G.o             gtmhelp.o              _HO.m         _od.o          _RO.m      tttscan.m
_DATE.m    _GBLDEF.o    GDESPAWN.o  _go.m            GTMHELP.o              _ho.o         _OD.o          _ro.o      TTTSCAN.m
_date.o    _gce.m       GDETEMPL.o  _GO.m            gtmhlpld.m             _HO.o         _oh.m          _RO.o      tttscan.o
_DATE.o    _GCE.m       GDEVERIF.o  _go.o            GTMHLPLD.m             _lcase.m      _OH.m          _rsel.m    TTTSCAN.o
_dh.m      _gce.o       _gd.m       _GO.o            gtmhlpld.o             _LCASE.m      _oh.o          _RSEL.m    _ucase.m
_DH.m      _GCE.o       _GD.m       _gsel.m          GTMHLPLD.o             _lcase.o      _OH.o          _rsel.o    _UCASE.m
_dh.o      _gc.m        _gd.o       _GSEL.m          gtm_limits.h           _LCASE.o      _patcode.m     _RSEL.o    _ucase.o
_DH.o      _GC.m        _GD.o       _gsel.o          gtmprofile             _lclcol.m     _PATCODE.m     _rse.m     _UCASE.o
_d.m       _gc.o        _ged.m      _GSEL.o          gtmprofile_preV54000   _LCLCOL.m     _patcode.o     _RSE.m     upperc
_D.m       _GC.o        _GED.m      _gse.m           gtmsecshr              _lclcol.o     _PATCODE.o     _rse.o     upperc_cp
_d.o       GDEADD.o     _ged.o      _GSE.m           gtmsecshrdir           _LCLCOL.o     pinentry.m     _RSE.o     _utf2hex.m
_D.o       GDECHANG.o   _GED.o      _gse.o           gtm_sizeof.h           libgtmshr.so  PINENTRY.m     semstat2   _UTF2HEX.m
_do.m      gdedefaults  gendash.m   _GSE.o           gtmstart               lke           pinentry.o     _sqroot.m  _utf2hex.o
_DO.m      GDEDELET.o   GENDASH.m   gtcm_gnp_server  gtm_stdio.h            loadop.m      PINENTRY.o     _SQROOT.m  _UTF2HEX.o
_do.o      GDEEXIT.o    gendash.o   gtcm_pkdisp      gtm_stdlib.h           LOADOP.m      plugin         _sqroot.o  _xcmd.m
_DO.o      GDEGET.o     GENDASH.o   gtcm_play        gtmstop                loadop.o      _randstr.m     _SQROOT.o  _XCMD.m
dse        gdehelp.dat  genout.m    gtcm_run         gtm_string.h           LOADOP.o      _RANDSTR.m     _ti.m      _xcmd.o
_exp.m     gdehelp.gld  GENOUT.m    gtcm_server      gtm_strings.h          loadvx.m      _randstr.o     _TI.m      _XCMD.o
_EXP.m     GDEHELP.o    genout.o    gtcm_shmclean    gtmxc_types.h          LOADVX.m      _RANDSTR.o     _ti.o
_exp.o     GDEINIT.o    GENOUT.o    gtcm_slist       _hd.m                  loadvx.o      _rce.m         _TI.o
_EXP.o     GDELOCKS.o   geteuid     gtm              _HD.m                  LOADVX.o      _RCE.m         _t.m
_fl.m      GDELOG.o     getpass.m   gtmbase          _hd.o                  lowerc        _rce.o         _T.m
_FL.m      GDEMAP.o     GETPASS.m   gtmcshrc         _HD.o                  lowerc_cp     _RCE.o         _t.o



Which looks all very good.



 
However, dpkg is not able to install dependencies and thus you need to do
this afterwards (in case some are needed) via

  $ sudo apt-get -f install



This command (done after the install above) returned:

apt-get -f install
Reading package lists... Done
Building dependency tree      
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up fis-gtm-initial (54002B-1) ...
 
##############################################
automatic configuration, please be patient ...
                     GT.M Configuration Script
Copyright 2009, 2011 Fidelity National Information Services, Inc. Use of this
software is restricted by the provisions of your license agreement.

What user account should own the files? (bin) What group should own the files? (bin) Should execution of GT.M be restricted to this group? (y or n) In what directory should GT.M be installed?
Directory /usr/lib/fis-gtm/54002B-initial exists. If you proceed with this installation then
some files will be over-written. Is it ok to proceed? (y or n)
Installing GT.M....

Should unicode support be installed? (y or n) Should an ICU version other than the default be used? (y or n) WARNING: Default ICU version not found. Not installing Unicode support.

All of the GT.M MUMPS routines are distributed with uppercase names.
You can create lowercase copies of these routines if you wish, but
to avoid problems with compatibility in the future, consider keeping
only the uppercase versions of the files.

Do you want uppercase and lowercase versions of the MUMPS routines? (y or n)
Creating lowercase versions of the MUMPS routines.
./CHK2LEV.m --->  ./chk2lev.m
./CHKOP.m --->  ./chkop.m
./GENDASH.m --->  ./gendash.m
./GENOUT.m --->  ./genout.m
./GETPASS.m --->  ./getpass.m
./GTMDefinedTypesInit.m --->  ./gtmdefinedtypesinit.m
./GTMHELP.m --->  ./gtmhelp.m
./GTMHLPLD.m --->  ./gtmhlpld.m
./LOADOP.m --->  ./loadop.m
./LOADVX.m --->  ./loadvx.m
./MSG.m --->  ./msg.m
./PINENTRY.m --->  ./pinentry.m
./TTTGEN.m --->  ./tttgen.m
./TTTSCAN.m --->  ./tttscan.m
./_D.m --->  ./_d.m
./_DATE.m --->  ./_date.m
./_DH.m --->  ./_dh.m
./_DO.m --->  ./_do.m
./_EXP.m --->  ./_exp.m
./_FL.m --->  ./_fl.m
./_FREECNT.m --->  ./_freecnt.m
./_G.m --->  ./_g.m
./_GBLDEF.m --->  ./_gbldef.m
./_GC.m --->  ./_gc.m
./_GCE.m --->  ./_gce.m
./_GD.m --->  ./_gd.m
./_GED.m --->  ./_ged.m
./_GI.m --->  ./_gi.m
./_GO.m --->  ./_go.m
./_GSE.m --->  ./_gse.m
./_GSEL.m --->  ./_gsel.m
./_H.m --->  ./_h.m
./_HD.m --->  ./_hd.m
./_HEX2UTF.m --->  ./_hex2utf.m
./_HO.m --->  ./_ho.m
./_LCASE.m --->  ./_lcase.m
./_LCLCOL.m --->  ./_lclcol.m
./_OD.m --->  ./_od.m
./_OH.m --->  ./_oh.m
./_PATCODE.m --->  ./_patcode.m
./_RANDSTR.m --->  ./_randstr.m
./_RCE.m --->  ./_rce.m
./_RD.m --->  ./_rd.m
./_RI.m --->  ./_ri.m
./_RO.m --->  ./_ro.m
./_RSE.m --->  ./_rse.m
./_RSEL.m --->  ./_rsel.m
./_SQROOT.m --->  ./_sqroot.m
./_T.m --->  ./_t.m
./_TI.m --->  ./_ti.m
./_TO.m --->  ./_to.m
./_UCASE.m --->  ./_ucase.m
./_UTF2HEX.m --->  ./_utf2hex.m
./_XCMD.m --->  ./_xcmd.m

Compiling all of the MUMPS routines. This may take a moment.


GTM>
%GDE-I-LOADGD, Loading Global Directory file
    /usr/lib/fis-gtm/54002B-initial/gtmhelp.gld
%GDE-I-VERIFY, Verification OK


GDE>
GDE>
GDE>
%GDE-I-VERIFY, Verification OK

%GDE-I-GDUPDATE, Updating Global Directory file
    /usr/lib/fis-gtm/54002B-initial/gtmhelp.gld

GTM>
%GDE-I-LOADGD, Loading Global Directory file
    /usr/lib/fis-gtm/54002B-initial/gdehelp.gld
%GDE-I-VERIFY, Verification OK


GDE>
GDE>
GDE>
%GDE-I-VERIFY, Verification OK

%GDE-I-GDUPDATE, Updating Global Directory file
    /usr/lib/fis-gtm/54002B-initial/gdehelp.gld
mkdir: cannot create directory `/usr/lib/fis-gtm/54002B-initial/gtmsecshrdir': File exists

Installation completed. Would you like all the temporary files
removed from this directory? (y or n) 
... automatic configuration finished
##############################################
rmdir: failed to remove `TMPPOSTINST': Directory not empty
dpkg: error processing fis-gtm-initial (--configure):
 subprocess installed post-installation script returned error exit status 1
configured to not write apport reports
                                      Errors were encountered while processing:
 fis-gtm-initial
E: Sub-process /usr/bin/dpkg returned an error code (1)


--

Which overall, looks like is attempting to repeat the
installation process, and also runs into an issue with
the TMPPOSTINST.


 
I'm a friend of the wrapper 'wajig'.  However, I think you also need a
more recent version than the one in stable to profit from the feature of
automatically installing dependencies.  So in case you like wajig you
could try

  $ sudo apt-get -t unstable install wajig



This returned:

apt-get -t unstable install wajig
Reading package lists... Done
Building dependency tree      
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libc6-dev : Breaks: gcc-4.4 (< 4.4.6-4) but 4.4.5-8 is to be installed
E: Broken packages


 
(but this has quite some Dependencies like python3 and will spoil your
system with several packages fro unstable - just a warning).


Since I'm doing this in a VM that is dedicated
exclusively to build the fis-gtm package, there
is no harm in bringing packages from unstable.

In retrospective, I should have created the VM
as a full unstable installation. (maybe something
to add as a suggestion for future MoM trainees).

 
Wajig has some nice features like calling sudo if needed - I like it,
others don't.

BTW, if we are talking about prefered tools:  I'm a really big fan of
mc.  Far back in my DOS days a computer was pronounced as a real
computer (not just a brick) after installing Norton Commander.  So NC
and its clones always are on my machines and for some tasks this is
really comfortable.  Regarding Debian packaging it is quite comfortable
to browse *.deb files and *.tar files, compare directory tries etc.


I do remember Norton Commander    :-)

 
For Instance you now have a copy of your debian/ dir outside of your
SVN tree (please try to find out what went wrong with your first attempt
to build the package).  If you now change something here and want to
have it back into SVN dir just do the following in mc:


I think it was all a matter of not being in
the right directory when typing "debuild".

For this latest build above, I'm doing all in the
debian-med  SVN directory tree.


 
  navigate in panel A to SVN dir
    (you can switch panels using <tab>)
  navigate in panel B to changed debian/ dir
    (you can use usual cd commands for navigation if prefered,
     tab extension works via <Esc><tab>
  compare directories via:  F9-c-c
     this marks those files that are changed
  copy files over using F5
  go into SVN dir (via <tab>)
  type "svn diff" in the command line
  the output vanished fast but <Ctrl-O> to switch to the output
    console; you can perfectly type other commands at this shell
  another <Ctrl-O> brings you back (and forward again if needed) to
    mc panels

Not everybody likes mc - but I'm sure it increases my productivity a
lot.


Installed "mc"
It brings good memories.

on the bright side, the build has been successful
in the SVN directory, so I think we got that part
of the recipe right.

 
What now.  When you are installing the just created package via dpkg or
wajig you will notice that the postinst script will fail with an error.

Yes, this is the error about  TMPPOSTINST

 
And now we reached a point where we dive into upstream land and its your
turn to fix this error (for sure we can continue discussion here).

As a hint:  The package installs postinst (and the other post/pre
installation files to)

  /var/lib/dpkg/info/<pkgname>.postinst


Yes,
The command "ls -l /var/lib/dpkg/info/fis-gtm-initial.*"  returns:

-rwxr-xr-x 1 root root  467 Jan 26 10:54 /var/lib/dpkg/info/fis-gtm-initial.config
-rw-r--r-- 1 root root  354 Jan 27 18:33 /var/lib/dpkg/info/fis-gtm-initial.list
-rw-r--r-- 1 root root  338 Jan 26 10:54 /var/lib/dpkg/info/fis-gtm-initial.md5sums
-rwxr-xr-x 1 root root 2876 Jan 26 10:54 /var/lib/dpkg/info/fis-gtm-initial.postinst
-rwxr-xr-x 1 root root 1849 Jan 26 10:54 /var/lib/dpkg/info/fis-gtm-initial.postrm
-rw-r--r-- 1 root root 1031 Jan 26 10:54 /var/lib/dpkg/info/fis-gtm-initial.templates


 
So if you want to go a shortcut instead of

  $ vim debian/postinst
  $ debuild

you can also try

  /var/lib/dpkg/info/fis-gtm-initial.postinst

and than calling

  # sudo /var/lib/dpkg/info/fis-gtm-initial.postinst

However, sometimes this is dangerous and complex - just try what
happens and if this is helpful.


Ok, so, first I just call the file without modification:

/var/lib/dpkg/info/fis-gtm-initial.postinst
postinst called with unknown argument `'


Comparing the two files with "diff":

diff /var/lib/dpkg/info/fis-gtm-initial.postinst /home/ibanez/src/debian-med/trunk/packages/fis-gtm/fis-gtm-initial/trunk/debian/postinst

returns:


101c101
<
---
> #DEBHELPER#



Looking at the code in the script:

 /var/lib/dpkg/info/fis-gtm-initial.postinst

it seems that it expects arguments, and
that the most innocuous is "configure",
so I called it as:

/var/lib/dpkg/info/fis-gtm-initial.postinst  configure

and this replicates the process that I see as the
final part of doing "debuild". Which is good news.


I'll study this script and will check with Bhaskar on
what is the right thing to do for the installation of
GTM at this stage of the process.


Your turn is now to make sure fis-gtm will install correctly on the
machine.  And I admit, I'm afraid we are now changing the roles that I
will be the fis-gtm student and you become the mentor ...



I'm afraid that first,
we will pass for an intermediate stage
where both of us will be students of Bhaskar...       :-)

 
    Thanks


          Luis


Reply to: