id = "homebridge"
name = "Homebridge"
homepage = "https://homebridge.io"
description = "A lightweight Node.js server you can run on your home network to emulate the HomeKit Accessory Protocol (HAP)."
icon = "SimpleIcons:homebridge"
executables = ["homebridge", "hb-service"]
[dotfiles]
paths = ["~/.homebridge/config.json"]
exclude = [
"~/.homebridge/persist/",
"~/.homebridge/accessories/",
"~/.homebridge/matter/",
"~/.homebridge/backups/",
"~/.homebridge/homebridge.log",
]
secret = []
[[dotfiles.secret_paths]]
file = "~/.homebridge/config.json"
match = { key_path = ["bridge.pin"] }
[[dotfiles.machine_lines]]
file = "~/.homebridge/config.json"
match = { key_path = ["bridge.username", "bridge.port"] }
scope = "backup"
[commands]
format = 1
label = "Homebridge service"
description = "Install and control the Homebridge system service via hb-service. Install options other than the service name, port and user are left out."
quality = "ai-draft"
base = "fig:hb-service"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/hb-service.ts"
license = "MIT"
[[commands.subcommand]]
path = ["install"]
label = "Install as a service"
description = "Register Homebridge as a system service; this usually needs elevated rights."
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/hb-service.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "service_name"
label = "Service name"
type = "string"
option = ["--service-name", "-S"]
description = "The name of the homebridge service to install or control."
sources = ["fig"]
[[commands.subcommand.field]]
id = "port"
label = "UI port"
type = "integer"
option = ["--port"]
description = "The port to set for the Homebridge UI when installing as a service."
sources = ["fig"]
[[commands.subcommand.field]]
id = "user"
label = "Service user"
type = "string"
option = ["--user"]
description = "The user account the service will be installed as (Linux, macOS only)."
sources = ["fig"]
[[commands.subcommand.task]]
id = "install"
label = "Install service"
fields = ["service_name", "port", "user"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["service_name", "port", "user"]
[[commands.subcommand]]
path = ["restart"]
label = "Restart the service"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/hb-service.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "service_name"
label = "Service name"
type = "string"
option = ["--service-name", "-S"]
description = "The name of the homebridge service to control."
sources = ["fig"]
[[commands.subcommand.task]]
id = "restart"
label = "Restart"
fields = ["service_name"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["service_name"]
[[commands.subcommand]]
path = ["logs"]
label = "Tail service logs"
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/hb-service.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "service_name"
label = "Service name"
type = "string"
option = ["--service-name", "-S"]
description = "The name of the homebridge service to control."
sources = ["fig"]
[[commands.subcommand.task]]
id = "logs"
label = "Tail logs"
fields = ["service_name"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["service_name"]