On another note I DID manage to get schily tar installed. I'll be testing this soon, but I'll be making a tarball of both it and schily make probably soon.
Edit: Well that didn't work. Inst still balks:
sudo inst -f neko_make_42.tardist
Default distribution to install from: neko_make_42.tardist
For help on inst commands, type "help overview".
Inst 4.1 Main Menu
1. from [source ...] Specify location of software to be installed
2. open [source ...] Specify additional software locations
3. close [source ...] Close a software distribution location
4. list [keywords] [names] Display information about software subsystems
5. go Perform software installation and removal now
6. install [keywords] [names] Select subsystems to be installed
7. remove [keywords] [names] Select subsystems to be removed
8. keep [keywords] [names] Do not install or remove these subsystems
9. step [keywords] [names] Interactive mode for install/remove/keep
10. conflicts [choice ...] List or resolve installation conflicts
11. help [topic] Get help in general or on a specific word
12. view ... Go to the View Commands Menu
13. admin ... Go to the Administrative Commands Menu
14. quit Terminate software installation
Inst> list
Unpacking tardist file into temporary distribution directory /var/tmp/tardista00DlL
ERROR: tar terminated abnormally
Inst> quit
All the same, I did manage to get star and it's far faster/better than bsdtar. I'll keep on planning to package libarchive for other ports, but I'll probably be using "star" as my personal tar.
So the command inst uses is : /sbin/tar xBfRRRo -
The problem flag commands appear to be B and RRR which do the following:
Code:
When specified as RRR, all
filenames (including the targets of symbolic links) are made
directory relative; that is, they are extracted as ./filename.
This mode is intended for the use of programs running as root, such
as tardist, that want to be sure that they do not overwrite system
files when extracting archives, either by accident, or through a
trojan horse attack. Since the t,x and other options referring to
specific files use pattern matching, you must omit the leading '/'
when specifying directory or filenames with those options when
using the R option. Thus, to extract /a/b/c with a relative
pathname, you would do:
tar xvR a/b/c
Earlier releases prepended a leading '.', requiring the use of:
tar xvR ./a/b/c
The way to check for sure is to use:
tar tvR | head -2
and then use whichever format is used in the output list.
If specified as RRR, all directory information is stripped from
pathnames in the archive, including the pathnames of symbolic
links. All files will be written to the current directory; no
directories will be created; symbolic links will only refer to
files in the current directory. Note that if two or more different
files in the archive have the same filename but have different
pathnames, the last file extracted will overwrite any earlier file
with the same filename.
...
B Force input and output blocking to 20 blocks per record, and cause
the input processing to ignore input record boundaries,
concatenating all input into a contiguous stream. This option
allows tar to work through pipes, networks, and other
communications channels where the record blocking may not be
maintained.
This indicates that yeah, it's trying to do it at a blocksize of 20.
star __does__ by default use a blocksize of 20, so B is not a problem. It also strips leading slashes by default.
This could cause issues if we tried to wrapper inst, and I'm not willing to risk a clobbering install myself to do that. But the RRR functionality could potentially be implemented.
Either way, I could modify the star program to ignore -B with a printf message "IRIX compatibility flag detected, ignoring" but that won't fix the -RRR flag. It does make you appreciate the thoughtfulness with which IRIX devs did at least implement the functionality.
I'm the system admin of this site. Private security technician, licensed locksmith, hack of a c developer and vintage computer enthusiast.
https://contrib.irixnet.org/raion/ -- contributions and pieces that I'm working on currently.
https://codeberg.org/SolusRaion -- Code repos I control
Technical problems should be sent my way.