Skip to main content

BlackBone

BlackBone

BlackBone is a fork of boneIO (boneIO-eu/app_bbb), maintained by SmartHome Wrocław. It adds features that were missing in the original project, developed for and proven in real client installations.

smarthome-wroclaw is not affiliated with, endorsed by, or officially connected to the original boneIO authors. BlackBone is released under the same GNU GPLv3 license as upstream.

Use at your own risk. BlackBone is provided "as is", without warranty of any kind. smarthome-wroclaw accepts no liability for any damage or loss resulting from the use of this software.

Example usage

boneio run -dd -c config.yaml

Installation

sudo apt install -y libopenjp2-7-dev python3-venv libjpeg-dev docker-compose docker.io fonts-dejavu-core fonts-dejavu-extra libffi-dev libfreetype-dev libtiff6 libxcb1 mosquitto
mkdir ~/boneio
python3 -m venv ~/boneio/venv
source ~/boneio/venv/bin/activate
pip3 install --upgrade blackbone
cp ~/venv/lib/python3.13/site-packages/boneio/example_config/*.yaml ~/boneio/

Edit config.yaml

Start app

source ~/boneio/venv/bin/activate
boneio run -c ~/boneio/config.yaml -dd
sed -i 's/^- id:/- name:/' *.yaml

Upgrading an existing controller to BlackBone

Already have a controller running the original boneIO app? SSH into it and run the BlackBone installer:

ssh <user>@<controller-ip>
curl -fsSL https://raw.githubusercontent.com/smarthome-wroclaw/blackbone/main/install.sh | bash

The installer is interactive: it auto-detects your existing virtual environment, offers to back up your current configuration and installed app before touching anything, installs BlackBone, and restarts the boneio service. Your existing config files are left in place.

Returning to the original boneIO app

The migration is reversible. The safest option is to restore the application backup created by the BlackBone installer. This returns the app to the exact version installed before migration.

SSH into the controller and set the paths below. The examples use the default locations. If the installer reported different paths, use those instead. Replace the timestamp in BACKUP_DIR with the directory created during migration.

VENV_DIR="$HOME/boneio/venv"
BACKUP_DIR="$HOME/boneio/backups/blackbone_migration_YYYYMMDD_HHMMSS"
APP_BACKUP="$(find "$BACKUP_DIR" -maxdepth 1 -type f -name 'stock_black_app_*.tar.gz' -print -quit)"
test -n "$APP_BACKUP" || { echo "Application backup not found"; exit 1; }

sudo systemctl stop boneio
"$VENV_DIR/bin/pip" uninstall --yes blackbone
tar -C "$VENV_DIR" -xzf "$APP_BACKUP"

The installer does not change your YAML configuration. If you changed it after migration and also want to restore the old configuration, inspect and extract its backup before starting the service. Extraction overwrites YAML files with their backed-up copies.

CONFIG_BACKUP="$(find "$BACKUP_DIR" -maxdepth 1 -type f -name 'configuration_*.tar.gz' -print -quit)"
test -n "$CONFIG_BACKUP" || { echo "Configuration backup not found"; exit 1; }
tar -tzf "$CONFIG_BACKUP"
tar -C "$(dirname "$VENV_DIR")" -xzf "$CONFIG_BACKUP"

Verify the restored package, then start the service:

"$VENV_DIR/bin/python" -c 'from importlib.metadata import version; print(version("boneio"))'
"$VENV_DIR/bin/pip" check
sudo systemctl start boneio
sudo systemctl is-active boneio

If you did not create an application backup, reinstall the latest official boneIO release from PyPI instead:

VENV_DIR="$HOME/boneio/venv"
sudo systemctl stop boneio
"$VENV_DIR/bin/pip" uninstall --yes blackbone
"$VENV_DIR/bin/pip" install --upgrade --force-reinstall boneio
sudo systemctl start boneio
sudo systemctl is-active boneio

To install a specific official release, use boneio==VERSION instead of boneio. Review the official boneIO releases and update instructions before choosing a version.

Contributing

Found a bug or have a feature you'd like to see? Issues and pull requests are welcome at smarthome-wroclaw/blackbone.


Polski

BlackBone to fork boneIO (boneIO-eu/app_bbb), utrzymywany przez SmartHome Wrocław. Dodaje funkcje, których brakowało w oryginalnym projekcie, wypracowane i sprawdzone w realnych instalacjach u klientów.

smarthome-wroclaw nie jest powiązane z autorami oryginalnej aplikacji boneIO ani przez nich wspierane. BlackBone jest wydawane na tej samej licencji GNU GPLv3 co projekt źródłowy.

Używasz na własną odpowiedzialność. BlackBone jest dostarczane w stanie „tak jak jest", bez żadnych gwarancji. smarthome-wroclaw nie ponosi odpowiedzialności za jakiekolwiek szkody lub straty wynikające z użytkowania tego oprogramowania.

Przykład użycia

boneio run -dd -c config.yaml

Instalacja

sudo apt install -y libopenjp2-7-dev python3-venv libjpeg-dev docker-compose docker.io fonts-dejavu-core fonts-dejavu-extra libffi-dev libfreetype-dev libtiff6 libxcb1 mosquitto
mkdir ~/boneio
python3 -m venv ~/boneio/venv
source ~/boneio/venv/bin/activate
pip3 install --upgrade blackbone
cp ~/venv/lib/python3.13/site-packages/boneio/example_config/*.yaml ~/boneio/

Edytuj config.yaml

Uruchomienie aplikacji

source ~/boneio/venv/bin/activate
boneio run -c ~/boneio/config.yaml -dd
sed -i 's/^- id:/- name:/' *.yaml

Aktualizacja istniejącego sterownika do BlackBone

Masz już sterownik z zainstalowaną oryginalną aplikacją boneIO? Połącz się z nim przez SSH i uruchom instalator BlackBone:

ssh <user>@<adres-sterownika>
curl -fsSL https://raw.githubusercontent.com/smarthome-wroclaw/blackbone/main/install.sh | bash

Instalator działa interaktywnie: sam wykrywa istniejące środowisko wirtualne, proponuje kopię zapasową aktualnej konfiguracji i zainstalowanej aplikacji zanim cokolwiek zmieni, instaluje BlackBone i restartuje usługę boneio. Istniejące pliki konfiguracyjne pozostają nietknięte.

Powrót do oryginalnej aplikacji boneIO

Migrację można cofnąć. Najbezpieczniej przywrócić kopię aplikacji utworzoną przez instalator BlackBone. Pozwala to wrócić dokładnie do wersji zainstalowanej przed migracją.

Połącz się ze sterownikiem przez SSH i ustaw poniższe ścieżki. Przykład używa domyślnych lokalizacji. Jeżeli instalator wyświetlił inne ścieżki, użyj ich. W BACKUP_DIR zastąp znacznik czasu nazwą katalogu utworzonego podczas migracji.

VENV_DIR="$HOME/boneio/venv"
BACKUP_DIR="$HOME/boneio/backups/blackbone_migration_YYYYMMDD_HHMMSS"
APP_BACKUP="$(find "$BACKUP_DIR" -maxdepth 1 -type f -name 'stock_black_app_*.tar.gz' -print -quit)"
test -n "$APP_BACKUP" || { echo "Nie znaleziono kopii aplikacji"; exit 1; }

sudo systemctl stop boneio
"$VENV_DIR/bin/pip" uninstall --yes blackbone
tar -C "$VENV_DIR" -xzf "$APP_BACKUP"

Instalator nie zmienia konfiguracji YAML. Jeśli konfiguracja została zmieniona po migracji i chcesz również przywrócić jej starszą wersję, sprawdź i rozpakuj kopię przed uruchomieniem usługi. Rozpakowanie nadpisze pliki YAML ich kopiami zapasowymi.

CONFIG_BACKUP="$(find "$BACKUP_DIR" -maxdepth 1 -type f -name 'configuration_*.tar.gz' -print -quit)"
test -n "$CONFIG_BACKUP" || { echo "Nie znaleziono kopii konfiguracji"; exit 1; }
tar -tzf "$CONFIG_BACKUP"
tar -C "$(dirname "$VENV_DIR")" -xzf "$CONFIG_BACKUP"

Sprawdź przywrócony pakiet, a następnie uruchom usługę:

"$VENV_DIR/bin/python" -c 'from importlib.metadata import version; print(version("boneio"))'
"$VENV_DIR/bin/pip" check
sudo systemctl start boneio
sudo systemctl is-active boneio

Jeżeli kopia aplikacji nie została utworzona, zainstaluj najnowsze oficjalne wydanie boneIO z PyPI:

VENV_DIR="$HOME/boneio/venv"
sudo systemctl stop boneio
"$VENV_DIR/bin/pip" uninstall --yes blackbone
"$VENV_DIR/bin/pip" install --upgrade --force-reinstall boneio
sudo systemctl start boneio
sudo systemctl is-active boneio

Aby zainstalować wybrane oficjalne wydanie, użyj boneio==WERSJA zamiast boneio. Przed wyborem wersji sprawdź oficjalne wydania boneIO oraz instrukcję aktualizacji.

Kontrybuowanie

Znalazłeś błąd albo masz pomysł na funkcję? Zgłoszenia (issues) i pull requesty są mile widziane w repozytorium smarthome-wroclaw/blackbone.

Metadata

Release files for blackbone 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for blackbone 0.1.3
File Size Uploaded
blackbone-0.1.3.tar.gz 5.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for blackbone 0.1.3
File Interpreter ABI Platform
blackbone-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 11.3 MB

Release files / blackbone-0.1.3.tar.gz

Download URL blackbone-0.1.3.tar.gz
Size 5.5 MB
Tags Source
SHA-256 checksum
How to use checksums
d15c10e096ca1b3d5d8615f4c2fa14f96520c87470c6669618e7c5688c82d2de
BLAKE2b-256 checksum
How to use checksums
6c940f5acd50f78ebea1a126b94e395d79e7692d72ce238c034cc34da562eaf4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release files / blackbone-0.1.3-py3-none-any.whl

Download URL blackbone-0.1.3-py3-none-any.whl
Size 5.8 MB
Tags Python 3
SHA-256 checksum
How to use checksums
1169909270277fa42578011605f305aeee676848cfe221b3020eb1c487060f9b
BLAKE2b-256 checksum
How to use checksums
200e38ebe8c5d65c08968c46857a98e587f41a79030e59b7d6b73da8478c2af9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 9, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.0

2 release files

0.1.4

2 release files

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page