/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to initramfs-unpack

  • Committer: Teddy Hogeborn
  • Date: 2021-02-01 19:30:45 UTC
  • mto: This revision was merged to the branch mainline in revision 404.
  • Revision ID: teddy@recompile.se-20210201193045-lpg6aprpc4srem6k
Fix issue with french translation

Initial white space was missing in both msgid and msgstr of the french
translation, leading to checking tools reporing an incomplete
translation.  The string is a raw command line command, and therefore
did not need translation, so this was never a user-visible issue.

* debian/po/fr.po: Add missing whitespace to the id and translation
  for msgid " mandos-keygen -F/dev/null|grep ^key_id".

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
3
3
# Initramfs unpacker - unpacks initramfs images into /tmp
4
4
5
 
# Copyright © 2013-2018 Teddy Hogeborn
6
 
# Copyright © 2013-2018 Björn Påhlsson
 
5
# Copyright © 2013-2019 Teddy Hogeborn
 
6
# Copyright © 2013-2019 Björn Påhlsson
7
7
8
8
# This file is part of Mandos.
9
9
#
43
43
    if $cpio --quiet --list --file="$imgfile" >/dev/null 2>&1; then
44
44
        # Number of bytes to skip to get to the compressed archive
45
45
        skip=$(($(LANG=C $cpio --io-size=1 --list --file="$imgfile" 2>&1 \
46
 
            | sed --quiet --expression='s/^\([0-9]\+\) blocks$/\1/p')+8))
47
 
        catimg="dd if=$imgfile bs=$skip skip=1 status=noxfer"
 
46
                      | sed --quiet \
 
47
                            --expression='s/^\([0-9]\+\) blocks$/\1/p')+8))
 
48
        if [ -x /usr/lib/dracut/skipcpio ]; then
 
49
            catimg="/usr/lib/dracut/skipcpio $imgfile"
 
50
        else
 
51
            catimg="dd if=$imgfile bs=$skip skip=1 status=noxfer"
 
52
        fi
48
53
    else
 
54
        echo "No microcode detected"
49
55
        catimg="cat -- $imgfile"
50
56
    fi
51
 
    # Determine the compression method
52
 
    if { $catimg 2>/dev/null | zcat --test >/dev/null 2>&1;
53
 
            [ ${PIPESTATUS[-1]} -eq 0 ]; }; then
54
 
        decomp="zcat"
55
 
    elif { $catimg 2>/dev/null | bzip2 --test >/dev/null 2>&1;
56
 
            [ ${PIPESTATUS[-1]} -eq 0 ]; }; then
57
 
        decomp="bzip2 --stdout --decompress"
58
 
    elif { $catimg 2>/dev/null | lzop --test >/dev/null 2>&1;
59
 
            [ ${PIPESTATUS[-1]} -eq 0 ]; }; then
60
 
        decomp="lzop --stdout --decompress"
61
 
    else
62
 
        echo "Error: Could not determine type of $imgfile" >&2
63
 
        continue
64
 
    fi
 
57
    while :; do
 
58
        # Determine the compression method
 
59
        if { $catimg 2>/dev/null | zcat --test >/dev/null 2>&1;
 
60
             [ ${PIPESTATUS[-1]} -eq 0 ]; }; then
 
61
            decomp="zcat"
 
62
        elif { $catimg 2>/dev/null | bzip2 --test >/dev/null 2>&1;
 
63
               [ ${PIPESTATUS[-1]} -eq 0 ]; }; then
 
64
            decomp="bzip2 --stdout --decompress"
 
65
        elif { $catimg 2>/dev/null | lzop --test >/dev/null 2>&1;
 
66
               [ ${PIPESTATUS[-1]} -eq 0 ]; }; then
 
67
            decomp="lzop --stdout --decompress"
 
68
        else
 
69
            skip=$((${skip}+1))
 
70
            echo "Could not determine compression of ${imgfile}; trying to skip ${skip} bytes" >&2
 
71
            catimg="dd if=$imgfile bs=$skip skip=1 status=noxfer"
 
72
            continue
 
73
        fi
 
74
        break
 
75
    done
 
76
    case "$catimg" in
 
77
        *skipcpio*) echo "Microcode detected, skipping";;
 
78
        *) echo "Microcode detected, skipping ${skip} bytes";;
 
79
    esac
65
80
    $catimg 2>/dev/null | $decomp | ( cd -- "$imgdir" && $cpio --quiet )
66
81
    if [ ${PIPESTATUS[-1]} -eq 0 ]; then
67
82
        echo "$imgfile unpacked into $imgdir"