Hi!

I have tried hard to make this message to the point. But that wasn't easy, as
what I figured out about gzip --only after hours of work-- I still do need
confirmation about, even though all appears correct.

gzip apparently inconsistent behavior occupies the most part of the report on
inconsistencies here (esp. the script make_gzip_archives_consistent.sh).

Another part is actually on Wireshark mailing list. Pls. see:

Filtering on (negated) frame.time_relative filters out wrong frame.number
https://www.wireshark.org/lists/wireshark-users/201704/msg00037.html
as well as my study at:
https://www.croatiafidelis.hr/foss/cap/cap-170313-git-devuan-mail/git-devuan-mail-4.php
(and the previous ones there, but I gave the last as it is simplest/fastest to 
check)

There is information that any advanced reader can easily provide by retracing
some of my steps there, and which would clear some uncertainties here.

The third part is about Bash apparent misbehavior.

And the fourth part is about eix complaining it has a bug, it's near the bottom 
part
of this email.

That is my starting point, and at this stage, after having spent quite a few
hours on this issue below (but I have other issues not-directly-related to my 
system
that haven't allowed me to finish and send this yet)...

This issue below I thought at first could be related to my Wireshark woes, and
now I don't... and at this stage (the proofreading time) I'm actually asking for
any confirmation/denial on my findings about it...

miro@g0n ~ $ ls -lh wireshark-users_miroR_q_bug_q.txt 
-rw-r--r-- 1 miro miro 802 2017-04-30 17:16 wireshark-users_miroR_q_bug_q.txt
miro@g0n ~ $ ls -l --block-size=K wireshark-users_miroR_q_bug_q.txt 
-rw-r--r-- 1 miro miro 1K 2017-04-30 17:16 wireshark-users_miroR_q_bug_q.txt
miro@g0n ~ $ mv -vi  wireshark-users_miroR_q_bug_q.txt    gzip_buggy.txt 
'wireshark-users_miroR_q_bug_q.txt' -> 'gzip_buggy.txt'

miro@g0n ~ $ tar czf gzip_buggy.txt.tar.gz  gzip_buggy.txt 
miro@g0n ~ $ tar czf gzip_buggy.txt_1.tar.gz  gzip_buggy.txt 
miro@g0n ~ $ tar czf gzip_buggy.txt_2.tar.gz  gzip_buggy.txt 
miro@g0n ~ $ sha256sum gzip_buggy.txt*.tar.gz
26bcad15b4a81a3606859fdd4560af0e2c4cd875f1271808afb4569c50bfb5ec  
gzip_buggy.txt_1.tar.gz
bd8f51bcd3274bbee4f73fa7ba9e1a2acd5db5d27f5643f72de10c52e224c22a  
gzip_buggy.txt_2.tar.gz
251a57e83ebaf4f07179f4a6500be80612a39ac6d2e97e482b30fb0a4de66f56  
gzip_buggy.txt.tar.gz
miro@g0n ~ $ 

You may check attachments:
gzip_buggy.txt_1.tar.gz
gzip_buggy.txt_2.tar.gz
gzip_buggy.txt.tar.gz

I think this is not like it should be. But the important question, really, is:

is this the case in my machine only, or is it Gentoo-userdom wide?

I fear it's the former, but like I asked in that Wireshark thread
(
And it was amazing to see how little people care... there are always plenty of
readers of Wireshark ML, and while not all can understand that thread --it
took me years since I first used Wireshark to get to be able to minimally
contribute there... lots of readers there such--, and of course those that can
not really understand, need not reply... but lots of readers of Wireshark ML
can easily repeat my steps that show in which exact fashion my Wireshark
misbehaves...

I'll be thankful is some Gentoo reader fills in this huge gap of
carelessness..
)
[but like I asked in that Wireshark thread,] I ask here on Gentoo users ML (or
readers from elsewhere).

Pls. somebody confirm if this is, or is not, the case in their Gentoo
machines. By simply decompressing the tar-gzip'd archive are do the tar-gzip
compression as I did, and checking the sums of them.

If you don't like my text file, you can use any file (like the ASCII file
below, which I hope should be simple and fine enough), and reproduce what I
tried with it.

So let's try /usr/bin/eix-installed-after
It's ASCII, it's Gentoo, everybody has it on this ML, but for visitors, it's in

You may check attachments:

eix-installed-after_1.tar.gz
eix-installed-after_2.tar.gz
eix-installed-after.tar.gz

In my Gentoo, I copied it in my homedir and...

miro@g0n ~ $ tar czf eix-installed-after.tar.gz  eix-installed-after 
miro@g0n ~ $ tar czf eix-installed-after_1.tar.gz  eix-installed-after 
miro@g0n ~ $ tar czf eix-installed-after_2.tar.gz  eix-installed-after 
miro@g0n ~ $ sha256sum eix-installed-after*.tar.gz  
80d004b1ecc6e6c2aec7cd453d05c7b4e4cc4092b9cef6b7c3fb31d148eb2310  
eix-installed-after_1.tar.gz
f4c30c6d4ccc90d1ec2cc6df2ac10cae2545d04a85c7ff39207d93129cd0ec78  
eix-installed-after_2.tar.gz
a8161c5771b661476966250af31d2b8bd80581a3e0c52d535b401524ee541ae7  
eix-installed-after.tar.gz
miro@g0n ~ $ 

And let me go further. Inspecting those...:

miro@g0n ~ $ ls -l eix-installed-after*.tar.gz
-rw-r--r-- 1 miro miro 3771 2017-04-30 17:39 eix-installed-after_1.tar.gz
-rw-r--r-- 1 miro miro 3771 2017-04-30 17:39 eix-installed-after_2.tar.gz
-rw-r--r-- 1 miro miro 3771 2017-04-30 17:39 eix-installed-after.tar.gz
miro@g0n ~ $ ls -l --block-size=K eix-installed-after*.tar.gz
-rw-r--r-- 1 miro miro 4K 2017-04-30 17:39 eix-installed-after_1.tar.gz
-rw-r--r-- 1 miro miro 4K 2017-04-30 17:39 eix-installed-after_2.tar.gz
-rw-r--r-- 1 miro miro 4K 2017-04-30 17:39 eix-installed-after.tar.gz
miro@g0n ~ $

...those tiny files, I find that...:

miro@g0n ~ $ hexdump -C eix-installed-after.tar.gz  | head -c38
00000000  1f 8b 08 00 25 05 06 59  00 miro@g0n ~ $ hexdump -C 
eix-installed-after_1.tar.gz  | head -c38
00000000  1f 8b 08 00 27 05 06 59  00 miro@g0n ~ $ hexdump -C 
eix-installed-after_2.tar.gz  | head -c38
00000000  1f 8b 08 00 29 05 06 59  00 miro@g0n ~ $
miro@g0n ~ $

...it's always the... ah well, for clarity, let's head just the first 25 bytes
of the hex representation, whihc will later be 5 bytes for dd commands...:

 miro@g0n ~ $ hexdump -C eix-installed-after.tar.gz  | head -c25
00000000  1f 8b 08 00 25 miro@g0n ~ $ hexdump -C eix-installed-after_1.tar.gz  
| head -c25
00000000  1f 8b 08 00 27 miro@g0n ~ $ hexdump -C eix-installed-after_2.tar.gz  
| head -c25
00000000  1f 8b 08 00 29 miro@g0n ~ $

...that it's always (or almost always, see below about PART3 sometimes being
different) just the 5th byte that is different, in the way that doing the
procedure below will get those files which differed at creation time...:

80d004b1ecc6e6c2aec7cd453d05c7b4e4cc4092b9cef6b7c3fb31d148eb2310  
eix-installed-after_1.tar.gz
f4c30c6d4ccc90d1ec2cc6df2ac10cae2545d04a85c7ff39207d93129cd0ec78  
eix-installed-after_2.tar.gz
a8161c5771b661476966250af31d2b8bd80581a3e0c52d535b401524ee541ae7  
eix-installed-after.tar.gz

(
Notice: the hash is always new. You won't get any of those hashes above
if you tar-gzip it. This is about the non-identical results.
)

...to become identical. This procedure, that I'll put in the script:

Pls see attachment:
make_gzip_archives_consistent.sh

The fact is, I have, hours ago (this is slow work for me...) made a backup
(and spent all this time, and more to write that script), and noticed how my
gzip behaves, or should I say the gzip program *in my machine*... And...

And I can tell that I get different instances of archives consistently fixed
with that script.
I only can't get identical archives when PART3 is different in some (usually
only one of the three) of the archives.
NOTE (at proofreading time): But I'm not investigating that anymore, find how
I confirmed that the archives upon decompression are all of verifiably same
content, and that suffices.

I really have tried only on my backup, on multiple series of three different
tar-gzip'ed instances each of which in the series was done on the same
directory with the script above.

The script is just a proof of concept, and a demonstration of the apparent
issue. Because this previously does not seem to me to have been the case, but
maybe I misremember?

I checked a few of the tar-gzip'd archives of my backup, and so far they have
always, upon decompression, shown identical in all the different instances.

The finding
===========

I've typically compared series of three instances of same directories that I
backed up, such as /home/miro, /root and /var/log, and they always were
identical upon decompression.
^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ 
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 
That means *probably* all is fine with gzip, and there is no issue.

(But this result was not trivial to get by... and since I'm unsure in my
conclusion, I'm still posting this, asking for confirmation or denial.)

So maybe I've been chasing shadows here... And for long hours...

And I'm sorry if that is so, but look at that issue that I have with
Wireshark! Look at that! That's not a shadow. That's a serious bug or a
serious malfunction in my Gentoo, the latter being most likely...

And if it is the latter, it can only be one or the other way. One: the cause
is in some Gentoo packge. Two: it is an attack by some unknown means.

(
If Air-Gapped is some info, I did try and editcap (and the whole
Wireshark) behave in the same wrong way in my Air-Gapped too.

Same holds for the gzip inconsistency --or "inconsistency".
)

And looking for solution to that Wireshark issue, I found the above issue
which appeared to me to be some kind of inconsistency...

And I have other inconsistencies, bogus or true that they might be, such as
with bash.

One is very quick to report. Here it goes...

Thanks for any report on how this issue, and the one with Wireshark, shows,
completely in order or just like in my machine, in any other Gentoo users'
systems.

This is one of a series of commands that I used to check one of the backups,
in three different instances of tar-gzip'd archive I checked (such as the
/root directory tar-gzip'd today), and which showed faultless upon
decompression in all the three instances, despite the three instances of
tar-gzip'd archives not being identical (as their SHA256 sums show):

# for i in $(ls -1d root_170430_g0n*.d/); do sum=$(echo $i|sed 
's/\.d\//\.sum/'); echo $sum ; read FAKE ; j=$(echo $i | sed 
's/\.d\//\.tar.gz/'); ls -l $j $i ; cd $i; pwd ; read FAKE ; for file in $(find 
./ -name '*'); do if [ -f "$file" ]; then sha256sum $file >> ../$sum ; fi; done 
; cd - ; done ;

Now if I just place the cursor, by moving with Alt-F (skipping "words") and 
Ctrl-F (skipping  1 char) to just after:

"for i in $(ls -1d root_170430_g0n*.d/" in that command,

and if I then hit Tab for completion on the experssion there, I get (and I'm
sorry for the mess, but that's what I get):

g0n ~ # for i in $(ls -1d root_170430_g0n*.dbash: unexpected EOF while looking 
for matching `)'bash: syntax error: unexpected end of file//\.tar.gz/'); ls -l 
$j $i ; cd $i; pwd ; read FAKE ; for file in $(find ./ -name '*'); do if [ -f 
"$file" ]; then sha256sum $file >> ../$sum ; fi; done ; cd - ; done ;

NOTE (at proofreading time): rechecked, I do get that same behavior the day
after (wrote most of this yesterday, still to send this morning).

[[
NOTE (before delayed sending): In fact, it is only this clone that exibits the
above Bash malfunctioning. I just checked the same for loop command (some six
paragraphs above) in my Air-Gapped master [1] (never any internet it sees,
longer workaround/detailed checking before updating it with stuff from
internet, sneakernet or optical media), and it is just fine. That line, simply
gave what it should:

# for i in $(ls -1d root_170430_g0n*.d/); do sum=$(echo $i|sed 
's/\.d\//\.sum/'); echo $sum ; read FAKE ; j=$(echo $i | sed 
's/\.d\//\.tar.gz/'); ls -l $j $i ; cd $i; pwd ; read FAKE ; for file in $(find 
./ -name '*'); do if [ -f "$file" ]; then sha256sum $file >> ../$sum ; fi; done 
; cd - ; done 
root_170430_g0n_1.d// root_170430_g0n_2.d// root_170430_g0n.d//   
# [[and the same command line was back here]]

under exact same conditions/circumstances as the clone of my Air-Gapped. And
it's similar with some other completion issues: they seem non-existent in my
Air-Gapped.
]]

IOW, first, Bash sullied the entire line, which is not very considerate of
Her, and second that's not some usual error. Just for clarity, it wrote this:

bash: unexpected EOF while looking for matching `)'bash: syntax error: 
unexpected end of file

(and it wrote it by overwriting, which I never used to see in Bash)

What's going on there?... Ah... Importantly:

do any of you other users get some erratic unusual behavior like this with Bash?

Of course, I can move to the start of the line with Ctrl-A and then issue
Ctrl-K to clear and capture to the entire line and then issue Ctrl-Y to paste
it back, and no disorderly message remains, but Bash isn't behaving...

I'll try and send this soon, but I first need to finish my backup...

Backup is done. Just, I guess if the reader has this bash version installed:
$ bash --version
GNU bash, version 4.4.12(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
$
they might be able to reproduce such kind of misbehavior.

And finally, and this is what eix throws on any package that I would check:

g0n ~ # eix memtest86+
* sys-apps/memtest86
     Available versions:  4.3.7 (~)4.3.7-r1 {serial}
     Homepage:            http://www.memtest86.com/
     Description:         A stand alone memory test for x86 computers

* sys-apps/memtest86+
     Available versions:  2.01^t 4.00^t 4.20-r1 (~)4.20-r3 5.01-r2 (~)5.01-r3 
{floppy iso serial}
     Homepage:            http://www.memtest.org/
     Description:         Memory tester based on memtest86

Found 2 matches
Received SIGSEGV - you probably found a bug in eix.
Please proceed with the following few instructions and help us find the bug:
 * install gdb (sys-devel/gdb)
 * reemerge eix with FEATURES="nostrip" CXXFLAGS="-g -ggdb3" LDFLAGS=""
 * enter gdb with "gdb --args eix your_arguments_for_eix"
 * type "run" and wait for the segfault to happen
 * type "bt" to get a backtrace (this helps us a lot)
 * post a bugreport and be sure to include the output from gdb.

Sorry for the inconvenience and thanks in advance!
g0n ~ # 

Too many inconsistencies. Where do I start searching for the causes?

(As far as the fourth "inconsistency", I was thinking about trying memtest as
per:

Message-ID: 
<lo1p123mb067395fd4e9010b549743c9280...@lo1p123mb0673.gbrp123.prod.outlook.com>

How to get memtest onto a USB drive
https://lists.gt.net/gentoo/user/325837#325837

, but that's just for lack of other ideas, these issues don't look
like bad memory. I might still try it, but when I go to sleep, not sooner.
)

Regards!
---
[1] My methods are still these:
Air-Gapped Gentoo Install, Tentative
https://forums.gentoo.org/viewtopic-t-987268.html

and

Postfix smtp/TLS, Bkp/Cloning Mthd, Censorship/Intrusion
https://forums.gentoo.org/viewtopic-t-999436.html#7613044

-- 
Miroslav Rovis
Zagreb, Croatia
https://www.CroatiaFidelis.hr

Attachment: gzip_buggy.txt.tar.gz
Description: Binary data

Attachment: gzip_buggy.txt_1.tar.gz
Description: Binary data

Attachment: gzip_buggy.txt_2.tar.gz
Description: Binary data

Attachment: make_gzip_archives_consistent.sh
Description: Bourne shell script

On 170317-11:29+0000, Graham Bloice wrote:
> On 17 March 2017 at 11:23, Peter Wu <pe...@lekensteyn.nl> wrote:
...
> Or use editcap to drop the packets;
>
>   editcap infile outfile packet#1 packet#2
>
       ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^
       | | | | | | | | | | | | | | | |

   I have tried just that above, and have the same issue.

While my message is awaiting moderation for over two hours (and I'm
*not* saying that anything is wrong, but want to let know of this issue
with a short notice, and move on, while I wait),

I posted about it on:

Same Issue with Editcap
https://www.croatiafidelis.hr/foss/cap/cap-170313-git-devuan-mail/git-devuan-mail-4.php

Not re-sending the much longer message, as I'm advised in the notice.

--
Miroslav Rovis
Zagreb, Croatia
https://www.CroatiaFidelis.hr
 
#!/bin/sh
# This script is part of the eix project and distributed under the
# terms of the GNU General Public License v2.
#
# Authors and Copyright (c):
#   Martin V\"ath <mar...@mvath.de>
#
# This script lists all packages installed after/before a certain package
# See the eix manpage for details. (eix 0.32.7).
set -u

# We make use of the functions provided by eix-functions.sh:

if eix_funcs=`'/usr/bin/eix-functions.sh' 2>/dev/null`
then    eval "$eix_funcs"
else    echo "${0##*/}: cannot find eix-functions.sh" >&2
        exit 1
fi
ReadFunctions

# Prepend content of eix variable EIX_INSTALLED_AFTER to the arguments

ReadVar EIX_INSTALLED_AFTER
eval "set -- a $EIX_INSTALLED_AFTER \${1+\"\$@\"}"
shift

# The following function outputs the usage of the script and then dies.

Usage() {
        n=${0##*/}
        p='eix 0.32.7'
        eval_gettext 'Usage: ${n} [options] category/package[:slot]
This is a well-commented demo script for eix (${p}).
It lists packages installed after (or before) the last (or first) install
of the given package/version in an output format which is convenient
as an argument for "emerge -1".
Be aware that only packages in the eix database are considered.

The argument can use shell pattern matching (* and ?; do not forget to quote
them if you call this script from a shell); the first match is chosen.
The :slot part can be omitted if the corresponding package has only one slot.
(Options -l and -L have different rules.)
The argument is not needed if option -f, -e or -F is used.

The eix (or environment) variable EIX_INSTALLED_AFTER is prepended to the
arguments; note that this variable is evaluated, so quote properly and be
aware about security risks!

The following options are available:

-i   Ignore all previous options (useful if EIX_INSTALLED_AFTER is set.)
-f   Output full list of all packages.
-e TIME Use TIME as "install" date.
     TIME is in seconds since epoch (see e.g. "date +%s")
-F FILE Use the mtime of FILE as the "install" date.
-l   Use /var/log/emerge.log to use the _first_ (instead of the last) install
     time of the given package. In this case, the argument must be a
     regular expression matching category/package-version.
     Note that the time in the log file and the time recorded in the database
     usually differ slightly so that usage/non-usage of option -I need not
     have the expected effect: The package may or may not be included.
     You can use -a/-A to fix the time. Note also that -t or -T have no
     effect on the data in the log file.
-L LOG As -l but use LOG instead of /var/log/emerge.log
-a SEC With -F, -l -L, or -e, increase the actual match time by SEC seconds.
-A SEC With -F, -l -L, or -e, decrease the actual match time by SEC seconds.
-b   Output packages installed before (instead of after) the given package
-I   Include the given package (on the command line) in the output
-S   When finding the starting package, choose the first matching slot
-V   When finding the starting package, look for category/package-version
     instead of category/package:slot
-d   Output the installation date after the package
-s   Output slot of the package, even if there appears no ambiguity
-v   Output category/package-version  instead of category/package[:slot]
-=   Output =category/package-version instead of category/package[:slot]
-t   Use build time (if available) instead of installation time,
     independent of the value of USE_BUILD_TIME
-T   Never use build time'
        echo
        exitcode=${1:-1}
        Exit $exitcode
}


# Parse the command line options:

DefaultOpts() {
        full=false
        timefile=
        epoch=
        logfile=
        before=false
        date_output=
        output='NAMESLOT'
        input='NAMESLOT'
        including=false
        addtime=
        subtime=
}
DefaultOpts
OPTIND=1
while getopts 'fF:lL:e:a:A:bdsv=SViItTh' opt
do      case $opt in
        f)      full=:;;
        F)      timefile=$OPTARG;;
        l)      logfile='/var/log/emerge.log';;
        L)      logfile=$OPTARG;;
        e)      epoch=$OPTARG;;
        a)      addtime=$OPTARG;;
        A)      subtime=$OPTARG;;
        b)      before=:;;
        d)      date_output='\t<date:DATE_OUTPUT>';;
        s)      output='NAMEASLOT';;
        v)      output='NAMEVERSION';;
        '=')    output='EQNAMEVERSION';;
        S)      input='NAME';;
        V)      input='NAMEVERSION';;
        i)      DefaultOpts;;
        I)      including=:;;
        t)      USE_BUILD_TIME=true; export USE_BUILD_TIME;;
        T)      USE_BUILD_TIME=false; export USE_BUILD_TIME;;
        '?')    exitcode=1; Exit 1;;
        *)      Usage 0;;
        esac
done
[ $OPTIND -le 1 ] || shift `Expr $OPTIND - 1`

# After the options there should be exactly one argument: $match

if [ -n "${timefile:++}" ]
then    epoch=`stat -c '%Y' -- "$timefile" 2>/dev/null` || epoch=
fi

# "found" is our flag in the loop whether we already found our package.
found=false
if $full
then    logfile=
        before=false
        epoch=
        found=:
elif [ -z "${epoch:++}" ]
then    [ $# -eq 1 ] || Usage
        match=$1
fi


# With options -l or -L, we also have to parse the logfile:

if [ -n "${logfile:++}" ]
then    test -r "$logfile" || die "`eval_gettext 'cannot read ${logfile}'`"
        epoch=`unset LC_ALL
LC_COLLATE=C
sed -ne "\\: Merging ($match\\:\\:.*):{s/^\([0-9]*\).*/\\1/p
q}" "$logfile"` && [ -n "${epoch:++}" ] || die "`eval_gettext \
                'cannot find merge of ${match} in ${logfile}'`"
fi

# We will let eix output for each installed package (and then sort by time):
#       date (in the format %s) TAB
#       package (in the input format) TAB
#       package (in the output format) [TAB date (in the format "%x %X")]
#       newline
# (the [...] part occurs only with option -d).
# The functions Check resp. Output are called with each $line as argument
# (which thus undergoes the usual splitting at spaces or tabs).
# Check  returns 0 if the package matches $match (or is known to be younger).
# Output outputs the package (and date).
# Both functions ignore empty lines.

if [ -z "${epoch:++}" ]
then
Check() {
        [ $# -ge 2 ] && case "$2:" in
        $match:*)
                return 0;;
        esac
        return 1
}
else    [ -z "${addtime:++}" ] || epoch=`Expr "$epoch" + "$addtime"`
        [ -z "${subtime:++}" ] || epoch=`Expr "$epoch" - "$subtime"`
# With options -f, -e, -l, -L, we need a different Check function:
Check() {
        [ $# -ne 0 ] && [ "$1" -ge "$epoch" ]
}
fi

Output() {
        if [ $# -eq 3 ]
        then    Echo "$3"
        elif [ $# -gt 3 ]
        then    printf '%-43s %-11s %s\n' "$3" "$4" "$5"
        fi
}

# Now the main loop. The interesting point is of course the call to eix.
#
# We could define NAMESLOT, NAMEASLOT, NAMEVERSION, and EQNAMEVERSION
# instead of using their default definitions (which are built into eix).
# However, we want to allow that the user overrides these definitions if he
# wants to and thus is able to change the input/output format of this script
# implicitly.
#
# Since there is no corresponding default variable which outputs _only_
# the package category/name (and never the slot), we define such a variable
# for option -S (we have chosen the name NAME for that).
#
# As you can see with "eix --dump", the default definitions of
# NAMESLOT, NAMEASLOT, NAMEVERSION, and EQNAMEVERSION make use of the variable
# VERSION_NEWLINE to output an optional newline.
# We do not want such a newline: In fact, the only newline we want is the one
# which should be output at the end of the LINE variable.
# So we set VERSION_NEWLINE=
#
# We set NOCOLORS to avoid the "reset color string" at the very end.
#
# We set EIX_LIMIT to 0 to force output of really all packages.
#
# To define the output format, we use the --format argument.
# If we would have used the FORMAT variable instead (or in <eix-0.29.6)
# we would have to set additionally DEFAULT_FORMAT=normal to make sure
# the a user's setting of DEFAULT_FORMAT is overridden.
#
# The --format refers implicitly to the LINE variable which in turn refers
# implicitly to DATE_FORMAT, DATE_OUTPUT, and NAME:
#
# The name of the variables DATE_FORMAT, DATE_OUTPUT, NAME, and LINE
# could also be any other unused names; it is only important that in LINE
# resp. in the --FORMAT argument we use the corresponding variable names.
#
# We have to quote \ for the shell when we use "..." to set variables.
#
# Note that all the following variables are automatically exported, since
# they immediately preceed the command (the \ at the line-ends is crucial):
NOCOLORS=: \
EIX_LIMIT=0 \
VERSION_NEWLINE= \
DATE_FORMAT='%s' \
DATE_OUTPUT='%x %X' \
NAME='<category>/<package>' \
LINE='<date:DATE_FORMAT>\t%{'$input'}\t%{'$output'}'$date_output'\n' \
eix --format '<installedversions:LINE>' '-I*' \
| sort -n \
| {
        while read -r line
        do      if $found
                then    $before || Output $line
                elif Check $line
                then    found=:
                        $including && Output $line
                else    $before && Output $line
                fi
        done
        $found
}
Exit

Attachment: eix-installed-after.tar.gz
Description: Binary data

Attachment: eix-installed-after_1.tar.gz
Description: Binary data

Attachment: eix-installed-after_2.tar.gz
Description: Binary data

Attachment: signature.asc
Description: Digital signature

Reply via email to