blob: 1550b32bdf7d0c1974fd9dab14d17fb7b7cac6bd [file] [log] [blame]
# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=7
CROS_WORKON_COMMIT="6f9011123f3656c45bb34148673aa110a22326b3"
CROS_WORKON_TREE=("791c6808b4f4f5f1c484108d66ff958d65f8f1e3" "eae0546f4ee5132d4544af4770755eb05f60cba6" "4ec0160713133cb6e004285d204db461280e4549" "e7dba8c91c1f3257c34d4a7ffff0ea2537aeb6bb")
CROS_WORKON_INCREMENTAL_BUILD=1
CROS_WORKON_LOCALNAME="platform2"
CROS_WORKON_PROJECT="chromiumos/platform2"
CROS_WORKON_OUTOFTREE_BUILD=1
CROS_WORKON_SUBTREE="common-mk libpasswordprovider system-proxy .gn"
PLATFORM_SUBDIR="system-proxy"
inherit cros-workon platform user
DESCRIPTION="A daemon that provides authentication support for system services
and ARC apps behind an authenticated web proxy."
HOMEPAGE="https://chromium.googlesource.com/chromiumos/platform2/+/master/system-proxy/"
LICENSE="BSD-Google"
SLOT="0/0"
KEYWORDS="*"
IUSE="fuzzer"
COMMON_DEPEND="
chromeos-base/libpasswordprovider:=
chromeos-base/minijail:=
chromeos-base/patchpanel:=
chromeos-base/patchpanel-client:=
dev-libs/protobuf:=
sys-apps/dbus:=
net-misc/curl:=
"
RDEPEND="${COMMON_DEPEND}"
DEPEND="
${COMMON_DEPEND}
chromeos-base/permission_broker-client:=
fuzzer? ( dev-libs/libprotobuf-mutator:= )
"
pkg_preinst() {
enewuser "system-proxy"
enewgroup "system-proxy"
}
src_install() {
dosbin "${OUT}"/system_proxy
dosbin "${OUT}"/system_proxy_worker
insinto /etc/dbus-1/system.d
doins dbus/org.chromium.SystemProxy.conf
insinto /usr/share/dbus-1/system-services
doins dbus/org.chromium.SystemProxy.service
insinto /etc/init
doins init/system-proxy.conf
insinto /usr/share/policy
newins seccomp/system-proxy-seccomp-"${ARCH}".policy system-proxy-seccomp.policy
newins seccomp/system-proxy-worker-seccomp-"${ARCH}".policy system-proxy-worker-seccomp.policy
if use fuzzer; then
platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_connect_headers_parser_fuzzer
platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_worker_config_fuzzer
platform_fuzzer_install "${S}"/OWNERS "${OUT}"/system_proxy_http_util_fuzzer
fi
}
platform_pkg_test() {
platform_test "run" "${OUT}/system-proxy_test"
}