portablectl: display sysext-specific fields
The wrong fields were being displayed, if at all.
ID and VERSION_ID in sysexts are used for matching, they
don't identify the sysext itself. Parse the newly defined
fields and display them separately from the compatibility
fields.
Before:
Image:
/home/bluca/git/systemd/base.raw
Portable Service:
n/a
Operating System:
Debian GNU/Linux 10 (buster)
Extension:
/home/bluca/git/systemd/app0.raw
Extension Scope:
n/a
Extension Compatibility Level:
n/a
Portable Service:
n/a
Portable Prefixes:
n/a
Operating System:
n/a (debian 10)
Extension:
/home/bluca/git/systemd/app1.raw
Extension Scope:
n/a
Extension Compatibility Level:
n/a
Portable Service:
n/a
Portable Prefixes:
n/a
Operating System:
n/a (debian 10)
Unit files:
app0.service
app1.service
After:
Image:
/home/bluca/git/systemd/base.raw
Portable Service:
n/a
Operating System:
Debian GNU/Linux 10 (buster)
Extension:
/home/bluca/git/systemd/app0.raw
Extension Scope:
n/a
Extension Compatibility Level:
n/a
Extension Compatibility OS:
debian
Extension Compatibility OS Version:
10
Portable Service:
n/a
Portable Prefixes:
n/a
Extension Image:
ID: app Version: 0
Extension:
/home/bluca/git/systemd/app1.raw
Extension Scope:
n/a
Extension Compatibility Level:
n/a
Extension Compatibility OS:
debian
Extension Compatibility OS Version:
10
Portable Service:
n/a
Portable Prefixes:
n/a
Extension Image:
ID: app Version: 1
Unit files:
app0.service
app1.service