============
New architectures
-----------------
* PRoot now works natively on Linux ARM64 systems (a.k.a AArch64).
Note that PRoot/AArch64 doesn't support 32-bit binaries yet.
* PRoot/x86_64 now supports x32 binaries/rootfs.
Fixes
-----
* Paths from Unix domain sockets are now translated. For example, it
wasn't possible previously to use "tmux" in the guest rootfs if
another instance were running in the host rootfs.
* When a host path is bound to a nonexistent guest path, PRoot tries
to create this latter in the guest rootfs, for some technical
reasons. Previously, this "dummy" guest path was created with RWX
permissions but this might cause troubles when re-using the rootfs
for other purpose. Now, this "dummy" guest path is created with
minimal permissions, and it is also possible to avoid its creation
by defining the PROOT_DONT_POLLUTE_ROOTFS environment variable.
Command-line interface changes
------------------------------
* The directory "/run" is removed from the list of recommended
bindings (-B option) because this creates to much conflicts with
programs that write in the "/run/var" directory.
* The -0 option now makes user's files appear as if they were actually
owned by root, and it also fakes the success of any mode changes
(chmod* syscalls). This is typically useful to create packages
where the files belong to the root user (it's almost always the
case).
Internal changes
----------------
* PRoot should be even more portable now. For instance, there's no
need to worry about syscallee-saved registers anymore.
Thanks
------
This release was made possible thanks to, in no special order: Yvan
Roux, Jerôme Audu, Heehooman, Yann Droneaud, and James Le Cuirot. See
"git log" for details.
Validation
----------
All the packages were built successfully on OBS. The following tests
were ran on Slackware64 14.0 (and "current-130312" for x32) with QEMU
1.4.0.
===================== =========== ================= ==================
Guest distro Options Testsuite Failures
===================== =========== ================= ==================
Slackware64 14.0 PRoot-v2.4 OK
Slackware64 14.0 memcheck PRoot-v2.4 OK
STLinux 2.4 SH4 smoke tests OK
Ubuntu 10.10 ARM PRoot-v2.4 OK
OpenEmbedded AArch64 smoke tests OK
Slackware64 14.0 -r / Perl 5.16.1 OK 2/2189 [1]_
Slackware64 14.0 -k 3.2.29 Perl 5.16.1 OK 2/2189 [1]_
Slackware 14.0 i486 -B Perl 5.16.1 OK 3/2188 [2]_
Gentoo 20130130 x32 -B Perl 5.16.1 OK 3/2188 [2]_
Slackware 14.0 ARM -Q qemu-arm Perl 5.16.1 OK 3/2188 [2]_
Slackware64 14.0 -r / CoreUtils 8.19 OK 5/491 [3]_
Slackware64 14.0 -k 3.2.29 CoreUtils 8.19 OK 5/491 [3]_
Slackware 14.0 ARM -Q qemu-arm CoreUtils 8.19 OK 12/491 [4]_
Slackware64 14.0 -r / POSIX tests 1.5.1 OK same as native
Slackware 14.0 i486 -B POSIX tests 1.5.1 OK same as v2.3.1
Slackware 14.0 ARM -Q qemu-arm POSIX tests 1.5.1 OK same as v2.3.1
===================== =========== ================= ==================
.. [1] not a regression: cpan/File-Path/t/Path.t,
dist/ExtUtils-Command/t/eu_command.t
.. [2] not a regression: op/magic.t + [1]
.. [3] not a regression: install/basic-1, mkdir/p-3, readlink/can-e,
readlink/can-f, readlink/can-m
.. [4] not a regression: misc/ls-misc, misc/printenv, split/fail,
misc/stty, df/total-unprocessed, dd/skip-seek,
dd/skip-seek-past-file, + [3]_