From owner-soc-status@freebsd.org Tue May 28 22:51:16 2019 Return-Path: Delivered-To: soc-status@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 2EFC015AEFC2; Tue, 28 May 2019 22:51:16 +0000 (UTC) (envelope-from theron.tarigo@gmail.com) Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0B5096EB2B; Tue, 28 May 2019 22:51:12 +0000 (UTC) (envelope-from theron.tarigo@gmail.com) Received: by mail-pl1-x634.google.com with SMTP id g9so148474plm.6; Tue, 28 May 2019 15:51:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:subject:cc:message-id:date:user-agent:mime-version :content-transfer-encoding:content-language; bh=PewRgrcLsE1Pkei/lgF1JJ6vDiNsSrMmPO1yiU/aQjs=; b=iL0T2W8s1kjtUXURJb66Q7K/MGTKczXDzrRiRBwUrvsjmq8XoFV54gslV8yj/XmSet Ipv+W6h4Zy1zNZAMYYDAZfBG4Wma7+P89B9zx4D/728QzfKc7vtlFOrFAV65dBAUJ27m h30rEvicRBPOf0hPoSqYc6oXjkhSYN5/pQBxc3/8gP/3qZ0z6r0NFTc7Tgnt0VqKFB8w vEq1PHKqI9ZGYhjZpAxlY2ruBT0HeK/Jaf0CorlYUHfH5xT8DfQpOhLFG1ppN9mIdHDg Wi1SOpDUx8A2F6L/5U0qXZfbQzeRKpYK70S0Z0zvJtPj7xUimsLn3zOZTcm01zyMgO1p 27Vg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:subject:cc:message-id:date :user-agent:mime-version:content-transfer-encoding:content-language; bh=PewRgrcLsE1Pkei/lgF1JJ6vDiNsSrMmPO1yiU/aQjs=; b=owFFWQY2gb/1GcsrGVQp8regk79ML2SYMfjNMAwdvDUzONsmncvpkMmHvUiwW9L5ls Bi8N0WFu93xtel+R1Gc00Bnd9yapnmNJu+NDQkn8+E7LIO9/zcBOJa+14C7n36iDJFON qK6sF3p9Obbje5OGxzLlneiLJIFy8+dZjKqQzCGE382seIDT+gyFBlHgX/UK72lAt3gz fabfRtJ9MjjqHyBAd1NPrtXO+WnFp6y22Lht2B7untssYbFAA4OU4rCD72qb9bxz2g6P glykeTmzdoCM3a2YTj1mdbHkPxzKiyEuAWbHd5ebt3tlHi20anYfytYLzFQRJkotHCXr DPng== X-Gm-Message-State: APjAAAVMHCaqRvMAJi/r+Yjn3/jZ0Pg94JbhqF8Bqr95AJeZKJzatmGS 7V5w0q8NCgmY0Rdc6x4KAVAI2ulGGXM= X-Google-Smtp-Source: APXvYqwn8/j5XXByWa5wXFvKsJh4WMM/WIM4ldI04smmGtg/PygW9S3pqFqy0J+K6AVk2ZJZKcSfMg== X-Received: by 2002:a17:902:9a9:: with SMTP id 38mr95809372pln.10.1559083870762; Tue, 28 May 2019 15:51:10 -0700 (PDT) Received: from [192.168.1.25] (c-73-170-47-221.hsd1.ca.comcast.net. [73.170.47.221]) by smtp.gmail.com with ESMTPSA id t25sm29608488pfq.91.2019.05.28.15.51.09 (version=TLS1_3 cipher=AEAD-AES128-GCM-SHA256 bits=128/128); Tue, 28 May 2019 15:51:10 -0700 (PDT) Sender: Theron Tarigo From: Theron To: soc-status@freebsd.org Subject: GSoC: Separation of Ports Build Process from Local Installation Cc: freebsd-ports@freebsd.org, freebsd-hackers@freebsd.org, Bakul Shah Message-ID: <5cdb1c0b-a2dd-c754-daa3-187330ad9ad6@gmail.com> Date: Tue, 28 May 2019 18:51:08 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Rspamd-Queue-Id: 0B5096EB2B X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20161025 header.b=iL0T2W8s; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (mx1.freebsd.org: domain of therontarigo@gmail.com designates 2607:f8b0:4864:20::634 as permitted sender) smtp.mailfrom=therontarigo@gmail.com X-Spamd-Result: default: False [-6.89 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36]; FREEMAIL_FROM(0.00)[gmail.com]; RCVD_COUNT_THREE(0.00)[3]; DKIM_TRACE(0.00)[gmail.com:+]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; NEURAL_HAM_SHORT(-0.97)[-0.975,0]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; TAGGED_FROM(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com.dwl.dnswl.org : 127.0.5.0]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20161025]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[text/plain]; IP_SCORE(-2.90)[ip: (-8.88), ipnet: 2607:f8b0::/32(-3.30), asn: 15169(-2.29), country: US(-0.06)]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[4.3.6.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0] X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Summer of Code Status Reports and Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 May 2019 22:51:16 -0000 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