mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2025-03-01 10:33:28 +00:00
Refactor Settings DB and Handling (#1786)
* Refactor config API
* Corrections
* Test Qt 6.8
* Revert "Test Qt 6.8"
This reverts commit eceebec49e
.
* Corrections 2
* Update Changelog
* Add configFilter element for getconfig call
* Do not create errors for DB updates when in read-only mode
* Have configuration migration and validation before Hyperion starts
* Correct Tests
* Corrections
* Add migration items
* Correct windows build
* Ensure that first instance as default one exists
* Remove dependency between AuthManager and SSDPHandler
* Correct typos
* Address CodeQL findings
* Replace CamkeSettings by Presets and provide debug scenarios
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": true,
|
||||
"properties": {
|
||||
"enable": {
|
||||
"type": "boolean",
|
||||
|
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"type":"object",
|
||||
"title" : "edt_conf_color_heading_title",
|
||||
"required" : true,
|
||||
"properties":
|
||||
{
|
||||
"imageToLedMappingType" :
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"required" : true,
|
||||
"title" : "edt_conf_fbs_heading_title",
|
||||
"properties" :
|
||||
{
|
||||
|
@@ -7,6 +7,7 @@
|
||||
{
|
||||
"type" : "boolean",
|
||||
"title" : "edt_conf_general_enable_title",
|
||||
"required" : true,
|
||||
"default" : true,
|
||||
"propertyOrder" : 1
|
||||
},
|
||||
|
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"type": "object",
|
||||
"title": "edt_conf_fw_heading_title",
|
||||
"required": true,
|
||||
"properties": {
|
||||
"enable": {
|
||||
"type": "boolean",
|
||||
|
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"title" : "edt_conf_gen_heading_title",
|
||||
"required" : true,
|
||||
"properties" :
|
||||
{
|
||||
"name" :
|
||||
@@ -44,15 +43,6 @@
|
||||
},
|
||||
"access" : "expert",
|
||||
"propertyOrder" : 4
|
||||
},
|
||||
"previousVersion" :
|
||||
{
|
||||
"type" : "string",
|
||||
"options" : {
|
||||
"hidden":true
|
||||
},
|
||||
"access" : "expert",
|
||||
"propertyOrder" : 5
|
||||
}
|
||||
},
|
||||
"additionalProperties" : false
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": true,
|
||||
"title": "edt_conf_audio_heading_title",
|
||||
"properties": {
|
||||
"enable": {
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"required" : true,
|
||||
"title" : "edt_conf_v4l2_heading_title",
|
||||
"properties":
|
||||
{
|
||||
@@ -24,6 +23,7 @@
|
||||
"device": {
|
||||
"type": "string",
|
||||
"title": "edt_conf_enum_custom",
|
||||
"default": "none",
|
||||
"options": {
|
||||
"hidden": true
|
||||
},
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"required" : true,
|
||||
"title" : "edt_conf_instC_heading_title",
|
||||
"properties": {
|
||||
"systemEnable": {
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"required" : true,
|
||||
"title" : "edt_conf_js_heading_title",
|
||||
"properties" :
|
||||
{
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type": "array",
|
||||
"required": true,
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"type": "object",
|
||||
@@ -61,4 +60,4 @@
|
||||
},
|
||||
"additionalProperties": false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -6,6 +6,7 @@
|
||||
"level" :
|
||||
{
|
||||
"type" : "string",
|
||||
"required" : true,
|
||||
"enum" : ["silent", "warn", "verbose", "debug"],
|
||||
"title" : "edt_conf_log_level_title",
|
||||
"options" : {
|
||||
|
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"title" : "edt_conf_net_heading_title",
|
||||
"required" : true,
|
||||
"properties" :
|
||||
{
|
||||
"internetAccessAPI" :
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"required" : true,
|
||||
"title" : "edt_conf_os_events_heading_title",
|
||||
"properties": {
|
||||
"suspendEnable": {
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type" : "object",
|
||||
"required" : true,
|
||||
"title" : "edt_conf_pbs_heading_title",
|
||||
"properties" :
|
||||
{
|
||||
|
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"type": "object",
|
||||
"required": true,
|
||||
"properties": {
|
||||
"enable": {
|
||||
"type": "boolean",
|
||||
|
17
libsrc/hyperion/schema/schema-settings-default.json
Normal file
17
libsrc/hyperion/schema/schema-settings-default.json
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"properties":{
|
||||
"global":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"$ref":"schema-settings-global.json"
|
||||
},
|
||||
"instance":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"$ref":"schema-settings-instance.json"
|
||||
}
|
||||
},
|
||||
"additionalProperties":false
|
||||
}
|
59
libsrc/hyperion/schema/schema-settings-full-relaxed.json
Normal file
59
libsrc/hyperion/schema/schema-settings-full-relaxed.json
Normal file
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"properties":{
|
||||
"global":{
|
||||
"type":"object",
|
||||
"required":false,
|
||||
"properties":{
|
||||
"settings":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"$ref":"schema-settings-global-relaxed.json"
|
||||
},
|
||||
"uuid":{
|
||||
"type":"string",
|
||||
"format":"uuid",
|
||||
"required":false
|
||||
}
|
||||
},
|
||||
"additionalProperties":false
|
||||
},
|
||||
"instanceIds":{
|
||||
"type":"array",
|
||||
"required":false,
|
||||
"items":{
|
||||
"type":"integer"
|
||||
},
|
||||
"minItems":1
|
||||
},
|
||||
"instances":{
|
||||
"type":"array",
|
||||
"required":false,
|
||||
"items":{
|
||||
"type":"object",
|
||||
"properties":{
|
||||
"enabled":{
|
||||
"type":"boolean"
|
||||
},
|
||||
"id":{
|
||||
"type":"integer",
|
||||
"minimum":0,
|
||||
"maximum":255
|
||||
},
|
||||
"name":{
|
||||
"type":"string",
|
||||
"minLength":5
|
||||
},
|
||||
"settings":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"$ref":"schema-settings-instance-relaxed.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"additionalProperties":true
|
||||
},
|
||||
"additionalProperties":false
|
||||
}
|
59
libsrc/hyperion/schema/schema-settings-full.json
Normal file
59
libsrc/hyperion/schema/schema-settings-full.json
Normal file
@@ -0,0 +1,59 @@
|
||||
{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"properties":{
|
||||
"global":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"properties":{
|
||||
"settings":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"$ref":"schema-settings-global.json"
|
||||
},
|
||||
"uuid":{
|
||||
"type":"string",
|
||||
"format":"uuid",
|
||||
"required":false
|
||||
}
|
||||
},
|
||||
"additionalProperties":true
|
||||
},
|
||||
"instanceIds":{
|
||||
"type":"array",
|
||||
"required":false,
|
||||
"items":{
|
||||
"type":"integer"
|
||||
},
|
||||
"minItems":1
|
||||
},
|
||||
"instances":{
|
||||
"type":"array",
|
||||
"required":true,
|
||||
"items":{
|
||||
"type":"object",
|
||||
"properties":{
|
||||
"enabled":{
|
||||
"type":"boolean"
|
||||
},
|
||||
"id":{
|
||||
"type":"integer",
|
||||
"minimum":0,
|
||||
"maximum":255
|
||||
},
|
||||
"name":{
|
||||
"type":"string",
|
||||
"minLength":5
|
||||
},
|
||||
"settings":{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"$ref":"schema-settings-instance.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"additionalProperties":true
|
||||
},
|
||||
"additionalProperties":false
|
||||
}
|
62
libsrc/hyperion/schema/schema-settings-global-relaxed.json
Normal file
62
libsrc/hyperion/schema/schema-settings-global-relaxed.json
Normal file
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"type":"object",
|
||||
"properties":{
|
||||
"cecEvents":{
|
||||
"required":false,
|
||||
"$ref":"schema-cecEvents.json"
|
||||
},
|
||||
"flatbufServer":{
|
||||
"required":false,
|
||||
"$ref":"schema-flatbufServer.json"
|
||||
},
|
||||
"forwarder":{
|
||||
"required":false,
|
||||
"$ref":"schema-forwarder.json"
|
||||
},
|
||||
"framegrabber":{
|
||||
"required":false,
|
||||
"$ref":"schema-framegrabber.json"
|
||||
},
|
||||
"general":{
|
||||
"required":false,
|
||||
"$ref":"schema-general.json"
|
||||
},
|
||||
"grabberAudio":{
|
||||
"required":false,
|
||||
"$ref":"schema-grabberAudio.json"
|
||||
},
|
||||
"grabberV4L2":{
|
||||
"required":false,
|
||||
"$ref":"schema-grabberV4L2.json"
|
||||
},
|
||||
"jsonServer":{
|
||||
"required":false,
|
||||
"$ref":"schema-jsonServer.json"
|
||||
},
|
||||
"logger":{
|
||||
"required":false,
|
||||
"$ref":"schema-logger.json"
|
||||
},
|
||||
"network":{
|
||||
"required":false,
|
||||
"$ref":"schema-network.json"
|
||||
},
|
||||
"osEvents":{
|
||||
"required":false,
|
||||
"$ref":"schema-osEvents.json"
|
||||
},
|
||||
"protoServer":{
|
||||
"required":false,
|
||||
"$ref":"schema-protoServer.json"
|
||||
},
|
||||
"schedEvents":{
|
||||
"required":false,
|
||||
"$ref":"schema-schedEvents.json"
|
||||
},
|
||||
"webConfig":{
|
||||
"required":false,
|
||||
"$ref":"schema-webConfig.json"
|
||||
}
|
||||
},
|
||||
"additionalProperties":false
|
||||
}
|
62
libsrc/hyperion/schema/schema-settings-global.json
Normal file
62
libsrc/hyperion/schema/schema-settings-global.json
Normal file
@@ -0,0 +1,62 @@
|
||||
{
|
||||
"type":"object",
|
||||
"properties":{
|
||||
"cecEvents":{
|
||||
"required":true,
|
||||
"$ref":"schema-cecEvents.json"
|
||||
},
|
||||
"flatbufServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-flatbufServer.json"
|
||||
},
|
||||
"forwarder":{
|
||||
"required":true,
|
||||
"$ref":"schema-forwarder.json"
|
||||
},
|
||||
"framegrabber":{
|
||||
"required":true,
|
||||
"$ref":"schema-framegrabber.json"
|
||||
},
|
||||
"general":{
|
||||
"required":true,
|
||||
"$ref":"schema-general.json"
|
||||
},
|
||||
"grabberAudio":{
|
||||
"required":true,
|
||||
"$ref":"schema-grabberAudio.json"
|
||||
},
|
||||
"grabberV4L2":{
|
||||
"required":true,
|
||||
"$ref":"schema-grabberV4L2.json"
|
||||
},
|
||||
"jsonServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-jsonServer.json"
|
||||
},
|
||||
"logger":{
|
||||
"required":true,
|
||||
"$ref":"schema-logger.json"
|
||||
},
|
||||
"network":{
|
||||
"required":true,
|
||||
"$ref":"schema-network.json"
|
||||
},
|
||||
"osEvents":{
|
||||
"required":true,
|
||||
"$ref":"schema-osEvents.json"
|
||||
},
|
||||
"protoServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-protoServer.json"
|
||||
},
|
||||
"schedEvents":{
|
||||
"required":true,
|
||||
"$ref":"schema-schedEvents.json"
|
||||
},
|
||||
"webConfig":{
|
||||
"required":true,
|
||||
"$ref":"schema-webConfig.json"
|
||||
}
|
||||
},
|
||||
"additionalProperties":true
|
||||
}
|
50
libsrc/hyperion/schema/schema-settings-instance-relaxed.json
Normal file
50
libsrc/hyperion/schema/schema-settings-instance-relaxed.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"type":"object",
|
||||
"properties":{
|
||||
"backgroundEffect":{
|
||||
"required":false,
|
||||
"$ref":"schema-backgroundEffect.json"
|
||||
},
|
||||
"blackborderdetector":{
|
||||
"required":false,
|
||||
"$ref":"schema-blackborderdetector.json"
|
||||
},
|
||||
"boblightServer":{
|
||||
"required":false,
|
||||
"$ref":"schema-boblightServer.json"
|
||||
},
|
||||
"color":{
|
||||
"required":false,
|
||||
"$ref":"schema-color.json"
|
||||
},
|
||||
"device":{
|
||||
"required":false,
|
||||
"$ref":"schema-device.json"
|
||||
},
|
||||
"effects":{
|
||||
"required":false,
|
||||
"$ref":"schema-effects.json"
|
||||
},
|
||||
"foregroundEffect":{
|
||||
"required":false,
|
||||
"$ref":"schema-foregroundEffect.json"
|
||||
},
|
||||
"instCapture":{
|
||||
"required":false,
|
||||
"$ref":"schema-instCapture.json"
|
||||
},
|
||||
"ledConfig":{
|
||||
"required":false,
|
||||
"$ref":"schema-ledConfig.json"
|
||||
},
|
||||
"leds":{
|
||||
"required":false,
|
||||
"$ref":"schema-leds.json"
|
||||
},
|
||||
"smoothing":{
|
||||
"required":false,
|
||||
"$ref":"schema-smoothing.json"
|
||||
}
|
||||
},
|
||||
"additionalProperties":false
|
||||
}
|
50
libsrc/hyperion/schema/schema-settings-instance.json
Normal file
50
libsrc/hyperion/schema/schema-settings-instance.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"type":"object",
|
||||
"properties":{
|
||||
"backgroundEffect":{
|
||||
"required":true,
|
||||
"$ref":"schema-backgroundEffect.json"
|
||||
},
|
||||
"blackborderdetector":{
|
||||
"required":true,
|
||||
"$ref":"schema-blackborderdetector.json"
|
||||
},
|
||||
"boblightServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-boblightServer.json"
|
||||
},
|
||||
"color":{
|
||||
"required":true,
|
||||
"$ref":"schema-color.json"
|
||||
},
|
||||
"device":{
|
||||
"required":true,
|
||||
"$ref":"schema-device.json"
|
||||
},
|
||||
"effects":{
|
||||
"required":true,
|
||||
"$ref":"schema-effects.json"
|
||||
},
|
||||
"foregroundEffect":{
|
||||
"required":true,
|
||||
"$ref":"schema-foregroundEffect.json"
|
||||
},
|
||||
"instCapture":{
|
||||
"required":true,
|
||||
"$ref":"schema-instCapture.json"
|
||||
},
|
||||
"ledConfig":{
|
||||
"required":true,
|
||||
"$ref":"schema-ledConfig.json"
|
||||
},
|
||||
"leds":{
|
||||
"required":true,
|
||||
"$ref":"schema-leds.json"
|
||||
},
|
||||
"smoothing":{
|
||||
"required":true,
|
||||
"$ref":"schema-smoothing.json"
|
||||
}
|
||||
},
|
||||
"additionalProperties":true
|
||||
}
|
107
libsrc/hyperion/schema/schema-settings-ui.json
Normal file
107
libsrc/hyperion/schema/schema-settings-ui.json
Normal file
@@ -0,0 +1,107 @@
|
||||
{
|
||||
"type":"object",
|
||||
"required":true,
|
||||
"properties":{
|
||||
"cecEvents":{
|
||||
"required":true,
|
||||
"$ref":"schema-cecEvents.json"
|
||||
},
|
||||
"flatbufServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-flatbufServer.json"
|
||||
},
|
||||
"forwarder":{
|
||||
"required":true,
|
||||
"$ref":"schema-forwarder.json"
|
||||
},
|
||||
"framegrabber":{
|
||||
"required":true,
|
||||
"$ref":"schema-framegrabber.json"
|
||||
},
|
||||
"general":{
|
||||
"required":true,
|
||||
"$ref":"schema-general.json"
|
||||
},
|
||||
"grabberAudio":{
|
||||
"required":true,
|
||||
"$ref":"schema-grabberAudio.json"
|
||||
},
|
||||
"grabberV4L2":{
|
||||
"required":true,
|
||||
"$ref":"schema-grabberV4L2.json"
|
||||
},
|
||||
"jsonServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-jsonServer.json"
|
||||
},
|
||||
"logger":{
|
||||
"required":true,
|
||||
"$ref":"schema-logger.json"
|
||||
},
|
||||
"network":{
|
||||
"required":true,
|
||||
"$ref":"schema-network.json"
|
||||
},
|
||||
"osEvents":{
|
||||
"required":true,
|
||||
"$ref":"schema-osEvents.json"
|
||||
},
|
||||
"protoServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-protoServer.json"
|
||||
},
|
||||
"schedEvents":{
|
||||
"required":true,
|
||||
"$ref":"schema-schedEvents.json"
|
||||
},
|
||||
"webConfig":{
|
||||
"required":true,
|
||||
"$ref":"schema-webConfig.json"
|
||||
},
|
||||
"backgroundEffect":{
|
||||
"required":true,
|
||||
"$ref":"schema-backgroundEffect.json"
|
||||
},
|
||||
"blackborderdetector":{
|
||||
"required":true,
|
||||
"$ref":"schema-blackborderdetector.json"
|
||||
},
|
||||
"boblightServer":{
|
||||
"required":true,
|
||||
"$ref":"schema-boblightServer.json"
|
||||
},
|
||||
"color":{
|
||||
"required":true,
|
||||
"$ref":"schema-color.json"
|
||||
},
|
||||
"device":{
|
||||
"required":true,
|
||||
"$ref":"schema-device.json"
|
||||
},
|
||||
"effects":{
|
||||
"required":true,
|
||||
"$ref":"schema-effects.json"
|
||||
},
|
||||
"foregroundEffect":{
|
||||
"required":true,
|
||||
"$ref":"schema-foregroundEffect.json"
|
||||
},
|
||||
"instCapture":{
|
||||
"required":true,
|
||||
"$ref":"schema-instCapture.json"
|
||||
},
|
||||
"ledConfig":{
|
||||
"required":true,
|
||||
"$ref":"schema-ledConfig.json"
|
||||
},
|
||||
"leds":{
|
||||
"required":true,
|
||||
"$ref":"schema-leds.json"
|
||||
},
|
||||
"smoothing":{
|
||||
"required":true,
|
||||
"$ref":"schema-smoothing.json"
|
||||
}
|
||||
},
|
||||
"additionalProperties":false
|
||||
}
|
Reference in New Issue
Block a user