PRoot-go has a go command wrapper on original C version of proot to provide smart interface. Thanks to [viper](https://github.com/spf13/viper) Proot-go have the ability to read pre-defined arguments from environment, command-line args and YAML configuration file(see proot.yaml.example for example).
PRoot-go also support busybox like functionality. Rename or symbolic link proot-go to the command you prefer(like ln -s proot-go bash && ./bash), Proot-go will search configuration file .proot.yaml automatically and execute the command inside proot guest context. This functionality is very useful when one want to run docker like command.
Try ./proot-go --go-verbose --go-help to see help information.
chroot, mount --bind, and binfmt_misc without privilege/setup for Linux
The following commands can be used to compile PRoot and CARE:
make -C src loader.elf loader-m32.elf build.h # first build the config and loader make -C src proot care # then compile PRoot and CARE make -C test # run test suite
- libarchive
- libtalloc
- uthash (only required for building CARE)
For Ubuntu, one may install the dependencies with command sudo apt install libarchive-dev libtalloc-dev uthash-dev.
SPDX-License-Identifier: GPL-2.0-or-later