# Copyright 2016 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.

description   "Start the Chromium OS biometrics daemon"
author        "chromium-os-dev@chromium.org"

start on started system-services
stop on stopping system-services
respawn
respawn limit 3 10  # if the job respawns 3 times in 10 seconds, stop trying.

env LOG_DIR=/var/log/biod

pre-start script
  mkdir -p ${LOG_DIR}
  chown -R biod:biod ${LOG_DIR}
  chmod 755 ${LOG_DIR}
end script

# biod doesn't do anything, so grant it no caps
exec minijail0 -u biod -g biod -G -c 0 --  \
  /usr/bin/biod                            \
    --log_dir=${LOG_DIR}                   \
    >/var/log/biod.out 2>&1
