From owner-freebsd-hackers@freebsd.org Wed May 29 09:57:06 2019 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5003815BD70C for ; Wed, 29 May 2019 09:57:06 +0000 (UTC) (envelope-from roam@ringlet.net) Received: from nimbus.fccf.net (nimbus.fccf.net [185.117.82.79]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C052F8B4C1 for ; Wed, 29 May 2019 09:57:05 +0000 (UTC) (envelope-from roam@ringlet.net) Received: from straylight.m.ringlet.net (office.storpool.com [185.117.80.129]) by nimbus.fccf.net (Postfix) with ESMTPSA id 2F55E3CE for ; Wed, 29 May 2019 12:56:55 +0300 (EEST) Received: from roam (uid 1000) (envelope-from roam@ringlet.net) id 6213d7 by straylight.m.ringlet.net (DragonFly Mail Agent v0.11); Wed, 29 May 2019 12:56:54 +0300 Date: Wed, 29 May 2019 12:56:53 +0300 From: Peter Pentchev To: "Rodney W. Grimes" Cc: Theron , Bakul Shah , freebsd-hackers@freebsd.org, soc-status@freebsd.org, freebsd-ports@freebsd.org Subject: Re: GSoC: Separation of Ports Build Process from Local Installation Message-ID: <20190529095653.GN18665@straylight.m.ringlet.net> Mail-Followup-To: "Rodney W. Grimes" , Theron , Bakul Shah , freebsd-hackers@freebsd.org, soc-status@freebsd.org, freebsd-ports@freebsd.org References: <5cdb1c0b-a2dd-c754-daa3-187330ad9ad6@gmail.com> <201905290328.x4T3Sfep018873@gndrsh.dnsmgr.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="citGix+cyBYE+lqp" Content-Disposition: inline In-Reply-To: <201905290328.x4T3Sfep018873@gndrsh.dnsmgr.net> User-Agent: Mutt/1.10.1 (2018-07-13) X-Rspamd-Queue-Id: C052F8B4C1 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; TAGGED_RCPT(0.00)[]; REPLY(-4.00)[]; NEURAL_HAM_SHORT(-0.99)[-0.988,0] X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 May 2019 09:57:06 -0000 --citGix+cyBYE+lqp Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, May 28, 2019 at 08:28:41PM -0700, Rodney W. Grimes wrote: > [ Charset UTF-8 unsupported, converting... ] > > Hello All, > >=20 > > For Google Summer of Code 2019 I am working on FreeBSD's ports tree=20 > > makefiles towards eliminating the dependency of the ports building=20 > > process on the local system's installed packages.? Currently this level= =20 > > of separation can only be accomplished in practice through chroot or=20 > > Jail.? The project will eliminate the need for cooperation of the root= =20 > > user since /usr/local will not need to be touched. > >=20 > > The major technical obstacle to be overcome is that ports expect to fin= d=20 > > files of their dependencies installed in /usr/local.? To support this= =20 > > without touching that location on the installed system, file accesses= =20 > > will be redirected to a location controlled by the ports build process= =20 > > through use of a library to intercept file accesses. >=20 > Assumption of /usr/local was considered wrong long long ago and it > should always be ${PREFIX}. Any place that actually assumes this > value to be /usr/local should be fixed. >=20 > Had this policy been properly maintained it would simply be a mater > of changing ${PREFIX} to a new and empty place before starting > a ports build and things should of just worked. >=20 > Restoration to this ancient and functional behavior is desirable > at least on my part. Hmm, I could be wrong, but isn't ${LOCALBASE} supposed to be where ports find stuff *during the build*, and ${PREFIX} where they install the built files? Of course, I haven't actually touched a FreeBSD ports build in years, so I might very likely be wrong. I also seem to remember a series of test port builds done a long time ago with a different value for LOCALBASE, specifically to catch ports that do not honor the policy in this regard. > > Once I have that working (well enough to build one port at a time) I=20 > > will move on to modify bsd.port.mk itself (and related files) to utiliz= e=20 > > this mechanism for virtual installation of port dependencies during bui= lds. > >=20 > > The full project proposal can be seen at=20 > > https://docs.google.com/document/d/1B30U9csgY299W59tNraSX1LYjzsba2i04Or= YAUpdIZs/edit=20 > > . > >=20 > > My goal is that this work can be integrated well enough into=20 > > /usr/ports/Mk so that unlike Jail, no set up work should be required fo= r=20 > > using ports tree to build a set of installable packages. > >=20 > > Please let me know if you are interested in this project; feedback is= =20 > > appreciated.? If someone would like to provide ongoing feedback or=20 > > mentorship that would be especially helpful.? Bakul Shah is my mentor= =20 > > officially for GSoC but I would be happy to have additional support fro= m=20 > > someone who is experienced with internals of the port infrastructure=20 > > makefiles. G'luck, Peter --=20 Peter Pentchev roam@{ringlet.net,debian.org,FreeBSD.org} pp@storpool.com PGP key: http://people.FreeBSD.org/~roam/roam.key.asc Key fingerprint 2EE7 A7A5 17FC 124C F115 C354 651E EFB0 2527 DF13 --citGix+cyBYE+lqp Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEELuenpRf8EkzxFcNUZR7vsCUn3xMFAlzuV2AACgkQZR7vsCUn 3xOGrA/5AZxeLDyWUBJaBzzZZqXkZ4bl4jOLlFqyTQIu9/ABsHQnhrTZxP13nijI gfO2YYHi56+Ubeh6uPay91EqgOf7AaSzWUFDzJvoonrYvCnjcZNIPjG88clKq2nW 3if3JS+XEArUoTisoHFeSpcjVvbmhFxArRAYBrTUfFIx7BvtbcSjsrXaEd3hpePJ 7Gx77gZrS0mOyIsXpRJOgfvtvw4rmtD/+dJnTx/zCXGNI5cyVW6e9BepFCYcu8Ko fuaBIsEVum+ihruO52R3SrcmlpW+ZctaMnijpyrTBUXkGheDNg3SnoVp9mugbtn+ dvFB+lmR4eEOce8BrEnLPpZkV2EpzP6EVrfZ2a3uNOSpXX+oOxcQ4+3culGTtwf9 ctiIWFK1iT+VYKbOr9Oe/7FihgDZW6LFBdVt6FZPCRpcnDyt4YGCYpKB+OYE8qDU COHlc7z6EvzwGJpozZweRHvu6bPnsLC0jU+ktISzj2a9GYsGJWGT99MJcEihuJdO F11VZCem9x9ZfdzqiVviitgpur4CGKgbIPLuT9NEVDxnIdkBxAnGdmxuRs36sAuK QYj9W80p6acaWGyktFhT4MRKTcYT33IZ0DJ0CY6+yiat4N3YkQ7SoSixFnRFA2u3 PBUwA+cNyngvgomx+oVJNhXNvC1ap2xtGC/q5tRN8HpYzZQEP84= =UFym -----END PGP SIGNATURE----- --citGix+cyBYE+lqp--