Hi Luca, have you had time to help me out or do you think you could help me out? Thanks in advance.
On Mon, Oct 18, 2021 at 12:56 PM Umut Tezduyar Lindskog <u...@tezduyar.com> wrote: > Hi again. I tried renaming ( > https://www.freedesktop.org/software/systemd/man/os-release.html) it but > that didn't work. I am not getting any errors during the attachment phase > so I am not sure if the failure is due to extension file in any way. > > A wish list is to be more verbose regarding what is going on during > extension file check/comparison and during overlaying /usr and /opt. I > think portablectl is quite verbose when it comes to preparing files, symb > links and what I wish fits well. > > Could you please try it yourself? I put them in > https://drive.google.com/file/d/1LoN_swR7jgvo5yxajWjYK5ck_e8kJs1W/view?usp=sharing > there should be a download button on the top right. Appreciate your help. > > Thanks, > Umut > > > On Fri, Oct 15, 2021 at 3:46 PM Luca Boccassi <bl...@debian.org> wrote: > >> On Fri, 2021-10-15 at 14:59 +0200, Umut Tezduyar Lindskog wrote: >> > Thanks and I would have never figured it out without your help. >> > However, moving the binary to /opt didn't work either (I made sure >> > there is empty /opt in the base too). Anything else I am missing? >> > >> > root@osboxes:/home/osboxes/Development# tree stackupper/ >> > stackupper/ >> > ├── bin >> > │ └── umut >> > ├── dev >> > ├── etc >> > │ ├── machine-id >> > │ ├── resolv.conf >> > │ └── runtime >> > ├── lib -> usr/lib >> > ├── opt >> > │ └── tree >> > ├── proc >> > ├── root >> > ├── run >> > ├── sys >> > ├── tmp >> > ├── usr >> > │ ├── bin >> > │ └── lib >> > │ ├── extension-release.d >> > │ │ └── extension-release.base >> > │ └── systemd >> > │ └── system >> > │ └── stackupper.service >> > └── var >> > └── tmp >> > >> > 18 directories, 7 files >> > root@osboxes:/home/osboxes/Development# cat >> > stackupper/usr/lib/systemd/system/stackupper.service >> > [Service] >> > Type=oneshot >> > ExecStart=/opt/tree / >> >> The extension-release file in the extension must be named exactly after >> the extension (eg: foo.raw must contain /usr/lib/extension- >> release.d/extension-release.foo), but in your case it's called ".base" >> which doesn't seem right, so double check that. This too is documented >> in the man page. >> >> > On Fri, Oct 15, 2021 at 2:23 PM Luca Boccassi <bl...@debian.org> >> > wrote: >> > > On Fri, 2021-10-15 at 12:18 +0000, Umut Tezduyar Lindskog wrote: >> > > > Hi, following works for us (for reference, configuration is >> > > printed >> > > > at the end) >> > > > >> > > > portablectl --now attach --extension=./stackupper ./base >> > > stackupper >> > > > >> > > > However, if we move the cat from base/usr/bin/cat to >> > > > stackupper/bin/cat it is not working. Seems like we cannot >> > > include >> > > > any library/executable in the extension. >> > > > >> > > > Are we missing something? >> > > > >> > > > >> > > > root@osboxes:/home/osboxes/Development# tree base/ >> > > > base/ >> > > > ├──bin >> > > > ├──dev >> > > > ├──etc >> > > > │ ├── machine-id >> > > > │ ├── os-release >> > > > │ └── resolv.conf >> > > > ├──lib >> > > > │ └── x86_64-linux-gnu >> > > > │ └── libc.so.6 >> > > > ├──lib64 >> > > > │ ├──ld-2.32.so >> > > > │ └── ld-linux-x86-64.so.2 >> > > > ├──proc >> > > > ├──root >> > > > ├──run >> > > > ├──sys >> > > > ├──tmp >> > > > ├──usr >> > > > │ ├──bin >> > > > │ │ ├──cat >> > > > │ │ ├──echo >> > > > │ │ └── tree >> > > > │ └── lib >> > > > │ └── systemd >> > > > │ └── system >> > > > └── var >> > > > └── tmp >> > > > >> > > > 18 directories, 9 files >> > > > >> > > > root@osboxes:/home/osboxes/Development# tree stackupper/ >> > > > stackupper/ >> > > > ├──bin >> > > > │ └── umut >> > > > ├──dev >> > > > ├──etc >> > > > │ ├── machine-id >> > > > │ ├── resolv.conf >> > > > │ └── runtime >> > > > ├──lib -> usr/lib >> > > > ├──proc >> > > > ├──root >> > > > ├──run >> > > > ├──sys >> > > > ├──tmp >> > > > ├──usr >> > > > │ ├──bin >> > > > │ └── lib >> > > > │ ├──extension-release.d >> > > > │ │ └── extension-release.base >> > > > │ └── systemd >> > > > │ └── system >> > > > │ └── stackupper.service >> > > > └── var >> > > > └── tmp >> > > > >> > > > 17 directories, 6 files >> > > > >> > > > root@osboxes:/home/osboxes/Development# cat >> > > > stackupper/usr/lib/systemd/system/stackupper.service >> > > > [Service] >> > > > Type=oneshot >> > > > ExecStart=/usr/bin/cat /etc/os-release >> > > > root@osboxes:/home/osboxes/Development#systemctl --version >> > > > systemd 249 (249.4-1) >> > > > +PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT >> > > +GNUTLS - >> > > > OPENSSL +ACL +BLKID +CURL +ELFUTILS -FIDO2 +IDN2 -IDN +IPTC +KMOD >> > > > +LIBCRYPTSETUP -LIBFDISK +PCRE2 -PWQUALITY -P11KIT -QRENCODE >> > > +BZIP2 >> > > > +LZ4 +XZ +ZLIB +ZSTD -XKBCOMMON +UTMP +SYSVINIT default- >> > > > hierarchy=unified >> > > >> > > Hi, >> > > >> > > You need to build your extension with the binaries under either the >> > > /usr or /opt hierarchies. Legacy locations like /bin and /lib are >> > > ignored. This is explained in the systemd-sysext.8 manpage. >> > > >> >>