Date: Tue, 28 May 2019 18:51:08 -0400 From: Theron <theron.tarigo@gmail.com> To: soc-status@freebsd.org Cc: freebsd-ports@freebsd.org, freebsd-hackers@freebsd.org, Bakul Shah <bakul@bitblocks.com> Subject: GSoC: Separation of Ports Build Process from Local Installation Message-ID: <5cdb1c0b-a2dd-c754-daa3-187330ad9ad6@gmail.com>
next in thread | raw e-mail | index | archive | help
Hello All, For Google Summer of Code 2019 I am working on FreeBSD's ports tree makefiles towards eliminating the dependency of the ports building process on the local system's installed packages. Currently this level of separation can only be accomplished in practice through chroot or Jail. The project will eliminate the need for cooperation of the root user since /usr/local will not need to be touched. The major technical obstacle to be overcome is that ports expect to find files of their dependencies installed in /usr/local. To support this without touching that location on the installed system, file accesses will be redirected to a location controlled by the ports build process through use of a library to intercept file accesses. Once I have that working (well enough to build one port at a time) I will move on to modify bsd.port.mk itself (and related files) to utilize this mechanism for virtual installation of port dependencies during builds. The full project proposal can be seen at https://docs.google.com/document/d/1B30U9csgY299W59tNraSX1LYjzsba2i04OrYAUpdIZs/edit . My goal is that this work can be integrated well enough into /usr/ports/Mk so that unlike Jail, no set up work should be required for using ports tree to build a set of installable packages. Please let me know if you are interested in this project; feedback is appreciated. If someone would like to provide ongoing feedback or mentorship that would be especially helpful. Bakul Shah is my mentor officially for GSoC but I would be happy to have additional support from someone who is experienced with internals of the port infrastructure makefiles. Theron Tarigo
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5cdb1c0b-a2dd-c754-daa3-187330ad9ad6>