From 6e52ff1f3d2443f87b8b93b8c862e03dc879e370 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Thu, 31 May 2012 14:05:49 -0400 Subject: [PATCH] update hooks: migrate paths to userpriv settings Now that we're enabling userpriv for the chroot, we need to fix all the paths that might be owned by root to the right user. BUG=chromium-os:3616 TEST=`./update_chroot` on a system with root-owned files in the various paths changed them all to my user Change-Id: I3655c851d5844524ec77c3476cee7a6e9d70ce0d CQ-DEPEND=Id513c0b8b380d57dd3e150917a969d0bf36883fc Reviewed-on: https://gerrit.chromium.org/gerrit/24216 Reviewed-by: David James Tested-by: Mike Frysinger Commit-Ready: Mike Frysinger --- chroot_version_hooks.d/38_host_userpriv | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 chroot_version_hooks.d/38_host_userpriv diff --git a/chroot_version_hooks.d/38_host_userpriv b/chroot_version_hooks.d/38_host_userpriv new file mode 100644 index 0000000000..8178f88069 --- /dev/null +++ b/chroot_version_hooks.d/38_host_userpriv @@ -0,0 +1,17 @@ +# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +# Migrate to userpriv for building things. We need to clean out old +# dirs that might have files owned by root:root. + +eval $(portageq envvar -v PORTAGE_{TMPDIR,USERNAME,GRPNAME} DISTDIR PKGDIR) +: ${PORTAGE_TMPDIR:=/var/tmp/portage} +: ${PORTAGE_USERNAME:=${USER}} +: ${PORTAGE_GRPNAME:=portage} +: ${DISTDIR:=/var/cache/distfiles/host} +: ${PKGDIR:=/var/lib/portage/pkgs} + +exec sudo find "${PORTAGE_TMPDIR}" "${DISTDIR}" "${PKGDIR}" \ + '(' -uid 0 -o -gid 0 ')' \ + -exec chown -h "${PORTAGE_USERNAME}:${PORTAGE_GRPNAME}" {} +