Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 410525 - app-forensics/air-2.0.0 install failure
Summary: app-forensics/air-2.0.0 install failure
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal major (vote)
Assignee: Forensics Herd [disbanded]
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 327069
  Show dependency tree
 
Reported: 2012-04-02 10:06 UTC by Ian Delaney (RETIRED)
Modified: 2012-10-03 15:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild patch (air.patch,715 bytes, patch)
2012-04-02 10:06 UTC, Ian Delaney (RETIRED)
Details | Diff
files/ patch (install.patch,674 bytes, patch)
2012-04-02 10:08 UTC, Ian Delaney (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ian Delaney (RETIRED) gentoo-dev 2012-04-02 10:06:52 UTC
Created attachment 307461 [details, diff]
ebuild patch

First package I take on expecting a nice easy test and amd64 ok.  Right;

ok for starters, the current version supposedly 804.29.0
(archtester air # eix perl-tk
[I] dev-perl/perl-tk
     Available versions:  804.29.0
)
It never had a hope. To start, line 4 reads
PERLTK_VER="804.028_502", something that can NEVER be found. Let's patch that to
PERLTK_VER="804.029"

PERLTK_VER="804.029"  // line 4
echo $PERLTK_VER
archtester air # ebuild air-2.0.0.ebuild clean install
yields
804.29.

the PERLTK_VER got changed from 804.029 to 804.29.
That is not 1 but 2 separate errors.  should have stayed 029, and I can't tell whethat dot at the end is not finishing the sentence, it has been added to the string. 

Patching the single file install-air-2.0.0, a bash script, with the following;
CUR_VER=`perl -e 'use Tk;print "$Tk::VERSION";' 2>> $INSTALL_LOG`
echo $?
echo $CUR_VER
echo $PERLTK_VER
exit
archtester air # ebuild air-2.0.0.ebuild clean install
yields
0
804.029
804.29.

running it directly, it yields

804.029
804.029

indicating some influence from portage making 804.29. from 804.029 Consequently; 
if [ $CUR_VER = $PERLTK_VER ] || [ $CUR_VER = $PERLTK_ALT_VER ] ; then
yields no match, a wrong outcome.
There are several ways to do this.  We need patch to ensure the above 
if [ $CUR_VER = $PERLTK_VER ] || [ $CUR_VER = $PERLTK_ALT_VER ] ; then
yields a match with the two vars.
eix itself lists it as  804.29.0, yet another alternate syntax.

So the task is to unravel whatever interference occurred and return 
804.29. to 804.029.

archtester air # ebuild air-2.0.0.ebuild merge
 * checking 58 files for package collisions
>>> Merging app-forensics/air-2.0.0 to /
>>> app-forensics/air-2.0.0 merged.
>>> Regenerating /etc/ld.so.cache...

archtester app-forensics # eix app-forensics/air
[I] app-forensics/air
     Available versions:  *1.2.7 ~1.2.8-r1 (~)2.0.0
     Installed versions:  2.0.0(17:43:35 02/04/12)

You might want to tinker with it seeing I have made the changes unconditional, but it is FIXED
Comment 1 Ian Delaney (RETIRED) gentoo-dev 2012-04-02 10:08:06 UTC
Created attachment 307463 [details, diff]
files/ patch

Rename at leisure
Comment 2 Sergey Popov gentoo-dev 2012-10-03 15:00:38 UTC
+*air-2.0.0-r1 (03 Oct 2012)
+
+  03 Oct 2012; Sergey Popov <pinkbyte@gentoo.org> +air-2.0.0-r1.ebuild:
+  Revision bump. Fixes bug #410525, thanks to Ian Delaney. Also contains a lot
+  of enhancements, described in bug's comments

I have commited air-2.0.0-r1 ebuild with fix to this bug and bunch of enhancements:

- EAPI 4;
- sys-apps/dcfldd is not used in air 2.0 at all, and dc3dd is not in portage, leave a comment for this in ebuild;
- net-analyzer/cryptcat is now optional run-time dependency, controlled by USE="crypt";
- pipe was not created by utility itself, using mkfifo in src_install for this;- - fix dev-perl/perl-tk version in dependencies