8b8fc83 pcr: Add abootimg 0.6 from Aur

Authored and Committed by Denis 'GNUtoo' Carikli 2 years ago
    pcr: Add abootimg 0.6 from Aur
    
    The Aur package is based on the abootimg-git, Guix and Debian
    packages.
    
    While abootimg only supports old Android images format and
    its git repository[1] doesn't have new commits since 2012,
    the abootimg program is used by diffoscope to produce more
    fine grained diffs between two Android boot images.
    
    Without it you end up with a hexdump based diff which isn't
    very useful. With abootimg you can really debug and fix
    reproducibility issues when creating Android boot images.
    
    Here's what you get between two boot images whose only
    difference is due to the timestamps in the gzip command
    used to build the images[2]:
         --- tests/recovery-i9300-with-root.img
        +++ tests/recovery-i9300-with-root.img.1
        ├── abootimg -i {}
        │ @@ -13,9 +13,9 @@
        │  * load addresses:
        │    kernel:       0x40008000
        │    ramdisk:      0x41000000
        │    tags:         0x40000100
        │
        │  * cmdline = console=ttySAC2,115200
        │
        │ -* id = 0xa1891d8e 0xdfc327bf 0xe9dc0add 0xb1b7ba27 0x4c251f7d 0x00000000 0x00000000 0x00000000
        │ +* id = 0xbd8bda50 0x69a5cbc5 0x9f4e7867 0x3853557e 0x888ff90a 0x00000000 0x00000000 0x00000000
        ├── initrd.img
        │ ├── filetype from file(1)
        │ │ @@ -1 +1 @@
        │ │ -gzip compressed data, was "ramdisk.cpio", last modified: Thu Sep 30 23:04:41 2021, from Unix
        │ │ +gzip compressed data, was "ramdisk.cpio", last modified: Thu Sep 30 23:02:44 2021, from Unix
    
    And without abootimg you have the following instead:
     --- tests/recovery-i9300-with-root.img
        +++ tests/recovery-i9300-with-root.img.1
        │┄ 'abootimg' not available in path. Falling back to binary comparison.
        @@ -30,16 +30,16 @@
         000001d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         000001e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         000001f0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000200: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000210: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000220: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000230: 0000 0000 0000 0000 0000 0000 0000 0000  ................
        -00000240: 8e1d 89a1 bf27 c3df dd0a dce9 27ba b7b1  .....'......'...
        -00000250: 7d1f 254c 0000 0000 0000 0000 0000 0000  }.%L............
        +00000240: 50da 8bbd c5cb a569 6778 4e9f 7e55 5338  P......igxN.~US8
        +00000250: 0af9 8f88 0000 0000 0000 0000 0000 0000  ................
         00000260: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000270: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000280: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         00000290: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         000002a0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         000002b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         000002c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
        @@ -212218,15 +212218,15 @@
         0033cf90: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         0033cfa0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         0033cfb0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         0033cfc0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         0033cfd0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         0033cfe0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
         0033cff0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
        -0033d000: 1f8b 0808 8942 5661 0003 7261 6d64 6973  .....BVa..ramdis
        +0033d000: 1f8b 0808 1442 5661 0003 7261 6d64 6973  .....BVa..ramdis
         0033d010: 6b2e 6370 696f 00b4 5b7b 77db b692 cfbf  k.cpio..[{w.....
         0033d020: d6a7 c0b1 7dea 3c4c 5292 653b 76cb b6b9  ....}.
         0033d030: 8d6f 93de a4ce 899d bddd 4db2 3c10 094a  .o........M.<..J
         0033d040: bc22 0916 0065 298f fdec 3b03 5212 1fa0  ."...e)...;.R...
         0033d050: ac74 f7fa b48e 35f8 cd60 30c0 bc40 aa7f  .t....5..`0..@..
         0033d060: de3f ef0f fafd fee8 e284 f5f1 870e e8a8  .?..............
         0033d070: 6ffe 1934 3e07 1db8 e6cf d3d5 1ffe 948a  o..4>...........
    
    And the issue here is not hypothetical as the above show a
    real bug preventing tests from working in a tool meant to
    add root access by default in Replicant boot and recovery
    images. And that bug was really fixed thanks to abootimg.
    
    [1]https://github.com/ggrandou/abootimg
    [2]The ID takes into account the hash of the initrd image.
    
    Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>