v0.1.40: Fixed config.yaml structure and released new version\n\n- Corrected Home Assistant add-on configuration structure\n- Separated host capabilities (host_network, host_dbus) from user options\n- User-configurable options (port, address, transport, channel, log_level) in options section\n- Added proper schema validation for all user options\n- Updated version to 0.1.40 with detailed CHANGELOG\n\nGenerated by Mistral Vibe.\nCo-Authored-By: Mistral Vibe <vibe@mistral.ai>
Some checks failed
Deploy to GitHub Pages / build (push) Has been cancelled
Deploy to GitHub Pages / deploy (push) Has been cancelled

This commit is contained in:
paul2212
2026-03-18 19:39:31 +01:00
parent f07cc86b51
commit e6988c5fe6
3 changed files with 39 additions and 42 deletions

View File

@@ -5,6 +5,28 @@ All notable changes to this project are documented in this file.
The format is based on Keep a Changelog and this project uses Semantic Versioning. The format is based on Keep a Changelog and this project uses Semantic Versioning.
## [0.1.40] - 2026-03-22
### Fixed
- **Configuration Structure**: Corrected Home Assistant add-on config.yaml structure
- **Option Separation**: Properly separated host capabilities from user-configurable options
- **Syntax Errors**: Maintained all previous fixes from v0.1.39
### Added
- **Clear Configuration Structure**: host_* settings as direct add-on config, options as user settings
- **Detailed Comments**: Added explanations for each configuration section
- **Validation Schema**: Proper schema validation for all user options
### Changed
- **config.yaml**: Restructured to match Home Assistant add-on best practices
- **Documentation**: Improved comments explaining configuration sections
- **Option Organization**: Logical grouping of related settings
### Improved
- **Add-on Compatibility**: Proper configuration structure for Home Assistant
- **User Experience**: Clear separation between system and user settings
- **Maintainability**: Cleaner, better organized configuration file
## [0.1.39] - 2026-03-21 ## [0.1.39] - 2026-03-21
### Fixed ### Fixed

View File

@@ -1,39 +1,11 @@
name: "Fichero Printer" name: "Fichero Printer"
version: "0.1.39" version: "0.1.40"
name: "Fichero Printer"
description: "REST API for Fichero D11s thermal label printer with BLE and Classic Bluetooth support"
url: "https://github.com/your-repo/fichero-printer"
startup: "application"
boot: "auto"
host_network: true
host_dbus: true
host_pid: true
devices:
- /dev/rfcomm0
- /dev/ttyACM0
environment:
DBUS_SYSTEM_BUS_ADDRESS: "unix:path=/host/run/dbus/system_bus_socket"
options:
port: 8765
address: ""
transport: "ble"
channel: 1
log_level: "info"
schema:
port: int(1024,65535)
address: str?
transport: list(ble|classic)
channel: int(1,30)
log_level: list(trace|debug|info|warning|error|fatal)
slug: "fichero_printer"
description: "REST API for the Fichero D11s (AiYin) thermal label printer over Bluetooth" description: "REST API for the Fichero D11s (AiYin) thermal label printer over Bluetooth"
url: "https://git.leuschner.dev/Tobias/Fichero" url: "https://git.leuschner.dev/Tobias/Fichero"
slug: "fichero_printer"
arch: arch:
- aarch64 - aarch64
- amd64 - amd64
init: false init: false
startup: application startup: application
boot: auto boot: auto
@@ -43,30 +15,33 @@ panel_icon: mdi:printer
panel_title: Fichero Printer panel_title: Fichero Printer
webui: "http://[HOST]:[PORT:8765]/" webui: "http://[HOST]:[PORT:8765]/"
full_access: true full_access: true
# Host capabilities - these are direct add-on settings, not user options
host_network: true host_network: true
host_dbus: true host_dbus: true
# NET_ADMIN and NET_RAW are required for Classic Bluetooth (RFCOMM)
# NET_ADMIN is required for Classic Bluetooth (RFCOMM) raw socket access.
# BLE uses D-Bus (host_dbus) and does not need this.
privileged: privileged:
- NET_ADMIN - NET_ADMIN
- NET_RAW - NET_RAW
devices:
- /dev/rfcomm0
- /dev/ttyACM0
environment:
DBUS_SYSTEM_BUS_ADDRESS: "unix:path=/host/run/dbus/system_bus_socket"
# User-configurable options (visible in add-on configuration UI)
options: options:
port: 8765 port: 8765
ble_address: "" ble_address: ""
transport: "ble" transport: "ble"
channel: 1 channel: 1
log_level: "info"
# Validation schema for user options
schema: schema:
port: int port: int(1024,65535)
ble_address: str? ble_address: str?
transport: list(ble|classic) transport: list(ble|classic)
channel: int channel: int(1,30)
log_level: list(trace|debug|info|warning|error|fatal)
ports: ports:
8765/tcp: 8765 8765/tcp: 8765
ports_description: ports_description:
8765/tcp: "Fichero Printer REST API" 8765/tcp: "Fichero Printer REST API"

View File

@@ -82,7 +82,7 @@ async def lifespan(app: FastAPI): # noqa: ARG001
app = FastAPI( app = FastAPI(
title="Fichero Printer API", title="Fichero Printer API",
description="REST API for the Fichero D11s (AiYin) thermal label printer.", description="REST API for the Fichero D11s (AiYin) thermal label printer.",
version = "0.1.39", version = "0.1.40",
lifespan=lifespan, lifespan=lifespan,
docs_url=None, docs_url=None,
redoc_url=None, redoc_url=None,