Nemo's Parental Misguidance

    This package has been deprecated

    Author message:

    This package has been deprecated and does not work anymore. DO NOT INSTALL. IT WILL BREAK THINGS

    homebridge-config-ui-hoobs

    1.1.7 • Public • Published

    npm npm Donate

    Supported Languages: 🇬🇧 🇩🇪 🇫🇷 🇵🇱 🇨🇿 🇷🇺 🇨🇳 🇭🇺 🇯🇵 🇪🇸

    Homebridge Config UI X

    This is a plugin for Homebridge. This is a fork of the work originally done by mkellsy.

    This plugin allows you to monitor, backup and configure your Homebridge server from a browser.

    Status

    Installation Instructions

    sudo npm install -g --unsafe-perm homebridge-config-ui-hoobs
    

    Once you have installed and configured the plugin you can access the interface via http://localhost:8080.

    The default username is admin and the default password is admin.

    Configuration

    Add this to your homebridge config.json file

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "sudo": false
        }
    ]

    Optional Settings

    • log - See below for details.
    • sudo - See below for details.
    • restart - The command to run when a restart request is sent from the browser. If not populated it will just terminate the Homebridge process and let your process manager (like systemd) restart it.
    • temp - The path to the file that can display your current CPU temperature in WEB UI. eg. /sys/class/thermal/thermal_zone0/temp
    • theme - The colour scheme to use. Possible values: red, pink, purple, indigo, blue, blue-grey, green, orange. Defaults to red.
    • ssl - See below for details

    Accessory Control

    The plugin allows you to view and control some types of Homebridge accessories from your web browser.

    To enable accessory control you must be running Homebridge in insecure mode:

    homebridge -I
    

    Insecure mode, as it's name suggests, is not secure. Anyone with network access to your Homebridge server port and pin will be able to control your accessories. Unless exposing the Homebridge port to the internet, this will generally not be a problem as access will be limited to people already on your local network. Remote access via a home hub (Apple TV, iPad, HomePod etc.) will still be secure. Enable at your own risk.

    Not all accessory types are supported. See this issue for a full list of supported accessory types.

    Log Viewer Configuration

    Homebridge Config UI X allows you to view the homebridge process logs in the browser. These logs can be loaded from a file or from a command.

    Logs From File

    Example loading logs from a file, change /var/log/homebridge.log to the actual location of your log file:

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "log": {
            "method": "file",
            "path": "/var/log/homebridge.log"
          }
        }
    ]

    Make sure the user which is running the Homebridge process has the correct permissions to read the log file. You may need to enable the sudo option to avoid permission errors if you are not running Homebridge as root.

    Logs From Systemd

    If you're using systemd to manage the Homebridge process then you can just set the method to systemd:

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "restart": "sudo -n systemctl restart homebridge",
          "log": {
            "method": "systemd",
            "service": "homebridge"
          }
        }
    ]

    You may need to enable the sudo option to avoid permission errors if you are not running Homebridge as root.

    Logs From Custom Command

    The log option can alternatively specify a command to spawn that will stream the logs to the client. This command should stream the logs to stdout:

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "log": {
            "method": "custom",
            "command": "sudo -n tail -n 100 -f /var/log/homebridge.log"
          }
        }
    ]

    Sudo Mode

    Many operations performed by Homebridge Config UI X, such as installing plugins, upgrading Homebridge and viewing the logs can require root permissions. You can run the Homebridge service as root or you can enable the sudo option in the config.

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "sudo": true
        }
    ]

    When sudo mode is enabled Homebridge Config UI X will use sudo when executing installing, removing or upgrading plugins, viewing the logs using the Logs From File or Logs From Systemd method, and when upgrading Homebridge. It will not be used for Logs From Custom Command or custom restart commands.

    Password-less sudo required

    For sudo mode to work password-less sudo is required. You can enable password-less sudo by adding this entry to the bottom of your /etc/sudoers file (use visudo to edit the file!):

    homebridge    ALL=(ALL) NOPASSWD: ALL
    

    Replace homebridge with the actual user you are running Homebridge as.

    Enabling SSL

    You can run this plugin over an encrypted HTTPS connection by configuring the ssl options.

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "ssl": {
            "key": "/path/to/privkey.pem",
            "cert": "/path/to/fullchain.pem"
          }
        }
    ]

    Or if using a PKCS#12 certificate you can setup SSL like this:

    "platforms"[
        {
          "platform": "config",
          "name": "Config",
          "port": 8080,
          "ssl": {
            "pfx": "/path/to/cert.pfx",
            "passphrase": "sample"
          }
        }
    ]

    Usage

    Status Screen

    This shows you that the services are running. It also has your HomeKit pin.

    Status

    Log Screen

    This shows you the rolling log. This is helpful for troubleshooting.

    Log

    Plugin Screen

    This shows you the currently installed plugins and allows you to install, remove and upgrade plugins.

    Log

    When installing, removing or upgrading plugins the output is show in the browser to help troubleshoot any issues.

    Log

    Configuration Screen

    And finally the configuration screen allows you to modify your Homebridge settings and your platforms and accessories.

    Config

    Supported Browsers

    The following browsers are supported by this plugin:

    • Safari >= 10
    • Chrome >= 55 (including Opera)
    • FireFox >= 58
    • MS Edge >= 13 on the desktop
    • iOS >=10 and Chrome on mobile

    MS Internet Explorer (any version) is not supported!

    Contributing

    Please see CONTRIBUTING.md.

    Troubleshooting

    1. Errors during installation

    Make sure you installed the package with sudo and used the --unsafe-perm flag. Most installation errors can be fixed by removing the plugin and reinstalling:

    # cleanup 
    sudo npm uninstall -g homebridge-config-ui-x
     
    # reinstall 
    sudo npm install -g --unsafe-perm homebridge-config-ui-x

    2. Accessories tab missing

    If the Accessories tab is not show then you are not running Homebridge in insecure mode. See the Enabling Accessory Control wiki for details. If you have just enabled insecure mode make sure you have restarted Homebridge and refreshed the page in your browser.

    3. Ask on Slack

    Slack Status

    Join the Homebridge Slack chat and ask in the #ui channel.

    Install

    npm i homebridge-config-ui-hoobs

    DownloadsWeekly Downloads

    3

    Version

    1.1.7

    License

    MIT

    Unpacked Size

    8.04 MB

    Total Files

    150

    Last publish

    Collaborators

    • askovi