GSoC: Separation of Ports Build Process from Local Installation
Theron Tarigo
theron at freebsd.org
Mon Jun 24 17:16:07 UTC 2019
Hello all,
This project aims to decouple the build process of the ports framework
from the local installation. To work around the assumptions made by
ports about dependency file locations, a userspace tool to remap
processes' filesystem namespaces is under development.
This past week, I have made the following progress:
- Switched bsd.port.mk from using a chroot for namespace manipulation to
using the userspace namespace tool.
- Enabled namespace tool to read path mappings from environment,
supplied by bsd.port.mk
- Re-ran port builds. Several problems which had not occurred when
using chroot became introduced.
- Studied interactions between executables, namespace tool, dynamic
linker, and standard library to understand the cases in which file
accesses fail to be intercepted.
What I am working on next:
- Research, design, implement, and test appropriate solutions for the
problems encountered with userspace file access interception.
Project goals and status are kept at
https://wiki.freebsd.org/SummerOfCode2019Projects/PortsSeparatedBuild .
Source of the userspace filesystem namespace tool is shared at
https://github.com/therontarigo/freebsd-user-namespace .
Changes to ports framework are shared at
https://github.com/freebsd/freebsd-ports/compare/master...therontarigo:master
.
Theron Tarigo
More information about the soc-status
mailing list