# Copyright 2018 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     "Brltty daemon"
author          "chromium-os-dev@chromium.org"

# The service is started by Chrome via UpstartClient::StartBrltty() for
# Bluetooth connections and by /lib/udev/rules.d/70-brltty.rules for USB
# connections.

# Initialize the device and driver to what we want for their defaults.
env BRLTTY_BRAILLE_DEVICE=usb:
env BRLTTY_BRAILLE_DRIVER=auto

# Allow our udev rules to tell us what the device and driver are.
import BRLTTY_BRAILLE_DEVICE
import BRLTTY_BRAILLE_DRIVER

# This is how the ui tells us what the Bluetooth device address is.
env ADDRESS
import ADDRESS

exec /lib/udev/brltty run
post-stop exec /lib/udev/brltty wait
