In article <8dc6ce3d-5d37-db07-4fe6-accf7948b...@gmx.com>,
Kamil Rytarowski  <n...@gmx.com> wrote:
>-=-=-=-=-=-
>-=-=-=-=-=-

>Can we sync incompatible command line arguments, at least for sysinst?
>
>https://nxr.netbsd.org/xref/src/usr.sbin/sysinst/defs.h#511

511 #ifdef      USING_PAXASTAR
512 #define     TAR_EXTRACT_FLAGS       "-xhepf"
513 #else
514 #define     TAR_EXTRACT_FLAGS       "-xpPf"
515 #endif

So the different flags are:

pax-as-tar:
        -e exits after first error, does not change behavior much
        except that it aborts quicker. We could add it to bsdtar,
        but it is not critical (the letter is free).

        -h Does not work the same way. In pax-as-tar internally is
        called Lflag and is allowed both in creation and extraction.
        In creation it follows symlink and puts the actual destinations
        of symlinks in archives; in extraction it follows symlinks
        before creating directories instead of replacing symlinks
        with directories; it does not make a difference for files.
        In bsdtar it is translated to -L and only allowed in
        creation, not extraction, having the same semantics as
        pax-as-tar. After the patch in pull 1300 bsdtar behaves
        like -h was given when extracting. I think that the pax-as-tar
        behavior is better (to require -h to follow symlinks on
        extraction).

        Both these can be fixed.

bsdtar:
        -P is not needed anymore, since with the pullup 1300 bsdtar
        always preserves existing symlinks (but perhaps it should not 
        for directories unless -h is given, like pax-as-tar does)

christos

Reply via email to