From 6db0dd2064eea2aef5304be730fad928af5a3d8a Mon Sep 17 00:00:00 2001 From: Dima73 Date: Sat, 1 Feb 2025 16:32:35 +0200 Subject: [PATCH 1/3] Use BoxInfo("model") instead BoxInfo("machine") more info: https://forums.openpli.org/topic/101067-zgemma-h9-twin-se-enigmainfo/ https://forums.openpli.org/topic/101409-pli-91-on-et4000-installation-failure/?view=findpost&p=1668085 --- lib/python/Components/RcModel.py | 2 +- lib/python/Components/SystemInfo.py | 63 ++++++++++++++--------------- lib/python/Tools/HardwareInfo.py | 3 +- 3 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lib/python/Components/RcModel.py b/lib/python/Components/RcModel.py index 9b1532f78d8..900593237d5 100644 --- a/lib/python/Components/RcModel.py +++ b/lib/python/Components/RcModel.py @@ -7,7 +7,7 @@ class RcModel: RcModels = {} def __init__(self): - self.model = BoxInfo.getItem("machine") + self.model = BoxInfo.getItem("model") # cfg files has modelname rcname entries. # modelname is boxname optionally followed by .rctype for line in open((resolveFilename(SCOPE_SKIN, 'rc_models/rc_models.cfg')), 'r'): diff --git a/lib/python/Components/SystemInfo.py b/lib/python/Components/SystemInfo.py index 311ae261e96..fc6dc081945 100644 --- a/lib/python/Components/SystemInfo.py +++ b/lib/python/Components/SystemInfo.py @@ -42,7 +42,7 @@ def __delitem__(self, key): class BoxInformation: def __init__(self, root=""): - self.boxInfo = immutableDict({"machine": "default", "checksum": None}) #add one key to the boxInfoCollector as it always should exist to satisfy the CI test on github and predefine checksum + self.boxInfo = immutableDict({"machine": "default", "model": "unknown", "checksum": None}) #add one key to the boxInfoCollector as it always should exist to satisfy the CI test on github and predefine checksum checksumcollectionstring = "" file = root + "/usr/lib/enigma.info" if fileExists(file): @@ -139,11 +139,10 @@ def getBootdevice(): def setBoxInfoItems(): - machine = BoxInfo.getItem("machine") #This contains the value where the image is buld from - model = BoxInfo.getItem("model") #This may contain more information about the specific model + model = BoxInfo.getItem("model") # This may contain more information about the specific model BoxInfo.setItem("InDebugMode", eGetEnigmaDebugLvl() >= 4) - BoxInfo.setItem("CommonInterface", machine in ("h9combo", "h9combose", "h10", "pulse4kmini") and 1 or eDVBCIInterfaces.getInstance().getNumOfSlots()) - BoxInfo.setItem("CiAlternativeCaHandling", machine in ("pulse4k", "pulse4kmini")) + BoxInfo.setItem("CommonInterface", model in ("h9combo", "h9combose", "h10", "pulse4kmini") and 1 or eDVBCIInterfaces.getInstance().getNumOfSlots()) + BoxInfo.setItem("CiAlternativeCaHandling", model in ("pulse4k", "pulse4kmini")) BoxInfo.setItem("CommonInterfaceCIDelay", fileCheck("/proc/stb/tsmux/rmx_delay")) for cislot in range(0, BoxInfo.getItem("CommonInterface")): BoxInfo.setItem("CI%dSupportsHighBitrates" % cislot, fileCheck("/proc/stb/tsmux/ci%d_tsclk" % cislot)) @@ -156,16 +155,16 @@ def setBoxInfoItems(): BoxInfo.setItem("ZapMode", fileCheck("/proc/stb/video/zapmode") or fileCheck("/proc/stb/video/zapping_mode")) BoxInfo.setItem("NumFrontpanelLEDs", countFrontpanelLEDs()) BoxInfo.setItem("FrontpanelDisplay", fileExists("/dev/dbox/oled0") or fileExists("/dev/dbox/lcd0")) - BoxInfo.setItem("LCDsymbol_circle_recording", fileCheck("/proc/stb/lcd/symbol_circle") or machine in ("hd51", "vs1500") and fileCheck("/proc/stb/lcd/symbol_recording")) + BoxInfo.setItem("LCDsymbol_circle_recording", fileCheck("/proc/stb/lcd/symbol_circle") or model in ("hd51", "vs1500") and fileCheck("/proc/stb/lcd/symbol_recording")) BoxInfo.setItem("LCDsymbol_timeshift", fileCheck("/proc/stb/lcd/symbol_timeshift")) - BoxInfo.setItem("LCDshow_symbols", (machine.startswith("et9") or machine in ("hd51", "vs1500")) and fileCheck("/proc/stb/lcd/show_symbols")) - BoxInfo.setItem("LCDsymbol_hdd", machine in ("hd51", "vs1500") and fileCheck("/proc/stb/lcd/symbol_hdd")) + BoxInfo.setItem("LCDshow_symbols", (machine.startswith("et9") or model in ("hd51", "vs1500")) and fileCheck("/proc/stb/lcd/show_symbols")) + BoxInfo.setItem("LCDsymbol_hdd", model in ("hd51", "vs1500") and fileCheck("/proc/stb/lcd/symbol_hdd")) BoxInfo.setItem("FrontpanelDisplayGrayscale", fileExists("/dev/dbox/oled0")) - BoxInfo.setItem("DeepstandbySupport", machine != "dm800") + BoxInfo.setItem("DeepstandbySupport", model != "dm800") BoxInfo.setItem("Fan", fileCheck("/proc/stb/fp/fan")) BoxInfo.setItem("FanPWM", BoxInfo.getItem("Fan") and fileCheck("/proc/stb/fp/fan_pwm")) - BoxInfo.setItem("PowerLED", fileCheck("/proc/stb/power/powerled") or machine in ("gbue4k", "gbquad4k") and fileCheck("/proc/stb/fp/led1_pattern")) - BoxInfo.setItem("StandbyLED", fileCheck("/proc/stb/power/standbyled") or machine in ("gbue4k", "gbquad4k") and fileCheck("/proc/stb/fp/led0_pattern")) + BoxInfo.setItem("PowerLED", fileCheck("/proc/stb/power/powerled") or model in ("gbue4k", "gbquad4k") and fileCheck("/proc/stb/fp/led1_pattern")) + BoxInfo.setItem("StandbyLED", fileCheck("/proc/stb/power/standbyled") or model in ("gbue4k", "gbquad4k") and fileCheck("/proc/stb/fp/led0_pattern")) BoxInfo.setItem("SuspendLED", fileCheck("/proc/stb/power/suspendled") or fileCheck("/proc/stb/fp/enable_led")) BoxInfo.setItem("Display", BoxInfo.getItem("FrontpanelDisplay") or BoxInfo.getItem("StandbyLED")) BoxInfo.setItem("LedPowerColor", fileCheck("/proc/stb/fp/ledpowercolor")) @@ -174,12 +173,12 @@ def setBoxInfoItems(): BoxInfo.setItem("Power4x7On", fileCheck("/proc/stb/fp/power4x7on")) BoxInfo.setItem("Power4x7Standby", fileCheck("/proc/stb/fp/power4x7standby")) BoxInfo.setItem("Power4x7Suspend", fileCheck("/proc/stb/fp/power4x7suspend")) - BoxInfo.setItem("PowerOffDisplay", machine not in "formuler1" and fileCheck("/proc/stb/power/vfd") or fileCheck("/proc/stb/lcd/vfd")) + BoxInfo.setItem("PowerOffDisplay", model not in "formuler1" and fileCheck("/proc/stb/power/vfd") or fileCheck("/proc/stb/lcd/vfd")) BoxInfo.setItem("WakeOnLAN", not machine.startswith("et8000") and fileCheck("/proc/stb/power/wol") or fileCheck("/proc/stb/fp/wol")) - BoxInfo.setItem("HasExternalPIP", not (machine.startswith("et9") or machine in ("e4hd",)) and fileCheck("/proc/stb/vmpeg/1/external")) + BoxInfo.setItem("HasExternalPIP", not (machine.startswith("et9") or model in ("e4hd",)) and fileCheck("/proc/stb/vmpeg/1/external")) BoxInfo.setItem("VideoDestinationConfigurable", fileExists("/proc/stb/vmpeg/0/dst_left")) BoxInfo.setItem("hasPIPVisibleProc", fileCheck("/proc/stb/vmpeg/1/visible")) - BoxInfo.setItem("MaxPIPSize", machine in ("hd51", "h7", "vs1500", "e4hd") and (360, 288) or (540, 432)) + BoxInfo.setItem("MaxPIPSize", model in ("hd51", "h7", "vs1500", "e4hd") and (360, 288) or (540, 432)) BoxInfo.setItem("VFD_scroll_repeats", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/scroll_repeats")) BoxInfo.setItem("VFD_scroll_delay", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/scroll_delay")) BoxInfo.setItem("VFD_initial_scroll_delay", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/initial_scroll_delay")) @@ -192,17 +191,17 @@ def setBoxInfoItems(): BoxInfo.setItem("3DZNorm", fileCheck("/proc/stb/fb/znorm") or fileCheck("/proc/stb/fb/primary/zoffset")) BoxInfo.setItem("HasQuadpip", fileCheck("/proc/stb/video/decodermode")) BoxInfo.setItem("Blindscan_t2_available", fileCheck("/proc/stb/info/vumachine") and machine.startswith("vu")) - BoxInfo.setItem("RcTypeChangable", not (machine in ("gbquad4k", "gbue4k", "et8500") or machine.startswith("et7")) and pathExists("/proc/stb/ir/rc/type")) - BoxInfo.setItem("HasFullHDSkinSupport", machine not in ("et4000", "et5000", "sh1", "hd500c", "hd1100", "xp1000", "lc")) + BoxInfo.setItem("RcTypeChangable", not (model in ("gbquad4k", "gbue4k", "et8500") or machine.startswith("et7")) and pathExists("/proc/stb/ir/rc/type")) + BoxInfo.setItem("HasFullHDSkinSupport", model not in ("et4000", "et5000", "sh1", "hd500c", "hd1100", "xp1000", "lc")) BoxInfo.setItem("HasBypassEdidChecking", fileCheck("/proc/stb/hdmi/bypass_edid_checking")) BoxInfo.setItem("HasMMC", "root" in cmdline and cmdline["root"].startswith("/dev/mmcblk")) BoxInfo.setItem("HasColorspace", fileCheck("/proc/stb/video/hdmi_colorspace")) BoxInfo.setItem("HasColorspaceSimple", BoxInfo.getItem("HasColorspace") and BoxInfo.getItem("HasMMC") and BoxInfo.getItem("Blindscan_t2_available")) BoxInfo.setItem("HasTranscoding", pathExists("/proc/stb/encoder/0") or fileCheck("/dev/bcm_enc0")) BoxInfo.setItem("HasH265Encoder", fileHas("/proc/stb/encoder/0/vcodec_choices", "h265")) - BoxInfo.setItem("CanNotDoSimultaneousTranscodeAndPIP", machine in ("vusolo4k", "gbquad4k", "gbue4k")) + BoxInfo.setItem("CanNotDoSimultaneousTranscodeAndPIP", model in ("vusolo4k", "gbquad4k", "gbue4k")) BoxInfo.setItem("HasColordepth", fileCheck("/proc/stb/video/hdmi_colordepth")) - BoxInfo.setItem("HasFrontDisplayPicon", machine in ("et8500", "vusolo4k", "vuuno4kse", "vuduo4k", "vuduo4kse", "vuultimo4k", "gbquad4k", "gbue4k")) + BoxInfo.setItem("HasFrontDisplayPicon", model in ("et8500", "vusolo4k", "vuuno4kse", "vuduo4k", "vuduo4kse", "vuultimo4k", "gbquad4k", "gbue4k")) BoxInfo.setItem("Has24hz", fileCheck("/proc/stb/video/videomode_24hz")) BoxInfo.setItem("Has2160p", fileHas("/proc/stb/video/videomode_preferred", "2160p50")) BoxInfo.setItem("HasHDMIpreemphasis", fileCheck("/proc/stb/hdmi/preemphasis")) @@ -211,16 +210,16 @@ def setBoxInfoItems(): BoxInfo.setItem("HasScaler_sharpness", pathExists("/proc/stb/vmpeg/0/pep_scaler_sharpness")) BoxInfo.setItem("HasHDMIin", BoxInfo.getItem("dmifhdin") or BoxInfo.getItem("hdmihdin")) BoxInfo.setItem("HasHDMI-CEC", BoxInfo.getItem("hdmi") and fileExists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/HdmiCEC/plugin.pyc")) and (fileExists("/dev/cec0") or fileExists("/dev/hdmi_cec") or fileExists("/dev/misc/hdmi_cec0"))) - BoxInfo.setItem("HasYPbPr", machine in ("dm8000", "et5000", "et6000", "et6500", "et9000", "et9200", "et9500", "et10000", "formuler1", "mbtwinplus", "spycat", "vusolo", "vuduo", "vuduo2", "vuultimo")) - BoxInfo.setItem("HasScart", machine in ("dm8000", "et4000", "et6500", "et8000", "et9000", "et9200", "et9500", "et10000", "formuler1", "hd1100", "hd1200", "hd1265", "hd2400", "vusolo", "vusolo2", "vuduo", "vuduo2", "vuultimo", "vuuno", "xp1000")) - BoxInfo.setItem("HasSVideo", machine in ("dm8000")) - BoxInfo.setItem("HasComposite", machine not in ("i55", "gbquad4k", "gbue4k", "hd1500", "osnino", "osninoplus", "purehd", "purehdse", "revo4k", "vusolo4k", "vuzero4k", "vuduo4k", "vuduo4kse", "vuuno4k", "vuuno4kse", "vuultimo4k")) - BoxInfo.setItem("hasXcoreVFD", machine in ("osmega", "spycat4k", "spycat4kmini", "spycat4kcombo") and fileCheck("/sys/module/brcmstb_%s/parameters/pt6302_cgram" % machine)) - BoxInfo.setItem("HasOfflineDecoding", machine not in ("osmini", "osminiplus", "et7000mini", "et11000", "mbmicro", "mbtwinplus", "mbmicrov2", "et7000", "et8500")) + BoxInfo.setItem("HasYPbPr", model in ("dm8000", "et5000", "et6000", "et6500", "et9000", "et9200", "et9500", "et10000", "formuler1", "mbtwinplus", "spycat", "vusolo", "vuduo", "vuduo2", "vuultimo")) + BoxInfo.setItem("HasScart", model in ("dm8000", "et4000", "et6500", "et8000", "et9000", "et9200", "et9500", "et10000", "formuler1", "hd1100", "hd1200", "hd1265", "hd2400", "vusolo", "vusolo2", "vuduo", "vuduo2", "vuultimo", "vuuno", "xp1000")) + BoxInfo.setItem("HasSVideo", model in ("dm8000")) + BoxInfo.setItem("HasComposite", model not in ("i55", "gbquad4k", "gbue4k", "hd1500", "osnino", "osninoplus", "purehd", "purehdse", "revo4k", "vusolo4k", "vuzero4k", "vuduo4k", "vuduo4kse", "vuuno4k", "vuuno4kse", "vuultimo4k")) + BoxInfo.setItem("hasXcoreVFD", model in ("osmega", "spycat4k", "spycat4kmini", "spycat4kcombo") and fileCheck("/sys/module/brcmstb_%s/parameters/pt6302_cgram" % machine)) + BoxInfo.setItem("HasOfflineDecoding", model not in ("osmini", "osminiplus", "et7000mini", "et11000", "mbmicro", "mbtwinplus", "mbmicrov2", "et7000", "et8500")) BoxInfo.setItem("hasKexec", fileHas("/proc/cmdline", "kexec=1")) - BoxInfo.setItem("canKexec", not BoxInfo.getItem("hasKexec") and fileExists("/usr/bin/kernel_auto.bin") and fileExists("/usr/bin/STARTUP.cpio.gz") and (machine in ("vuduo4k", "vuduo4kse") and ["mmcblk0p9", "mmcblk0p6"] or machine in ("vusolo4k", "vuultimo4k", "vuuno4k", "vuuno4kse") and ["mmcblk0p4", "mmcblk0p1"] or machine == "vuzero4k" and ["mmcblk0p7", "mmcblk0p4"])) + BoxInfo.setItem("canKexec", not BoxInfo.getItem("hasKexec") and fileExists("/usr/bin/kernel_auto.bin") and fileExists("/usr/bin/STARTUP.cpio.gz") and (model in ("vuduo4k", "vuduo4kse") and ["mmcblk0p9", "mmcblk0p6"] or model in ("vusolo4k", "vuultimo4k", "vuuno4k", "vuuno4kse") and ["mmcblk0p4", "mmcblk0p1"] or model == "vuzero4k" and ["mmcblk0p7", "mmcblk0p4"])) BoxInfo.setItem("MultibootStartupDevice", getMultibootStartupDevice()) - BoxInfo.setItem("canMode12", "%s_4.boxmode" % machine in cmdline and cmdline["%s_4.boxmode" % machine] in ("1", "12") and "192M") + BoxInfo.setItem("canMode12", "%s_4.boxmode" % model in cmdline and cmdline["%s_4.boxmode" % machine] in ("1", "12") and "192M") BoxInfo.setItem("canMultiBoot", getMultibootslots()) BoxInfo.setItem("canDualBoot", fileExists("/dev/block/by-name/flag")) BoxInfo.setItem("canFlashWithOfgwrite", not (machine.startswith("dm"))) @@ -245,17 +244,17 @@ def setBoxInfoItems(): BoxInfo.setItem("CanBTAudio", fileHas("/proc/stb/audio/btaudio_choices", "off")) BoxInfo.setItem("CanBTAudioDelay", fileCheck("/proc/stb/audio/btaudio_delay") or fileCheck("/proc/stb/audio/btaudio_delay_pcm")) BoxInfo.setItem("BootDevice", getBootdevice()) - BoxInfo.setItem("NimExceptionVuSolo2", machine == "vusolo2") - BoxInfo.setItem("NimExceptionVuDuo2", machine == "vuduo2") - BoxInfo.setItem("NimExceptionDMM8000", machine == "dm8000") - BoxInfo.setItem("FbcTunerPowerAlwaysOn", machine in ("vusolo4k", "vuduo4k", "vuduo4kse", "vuultimo4k", "vuuno4k", "vuuno4kse")) + BoxInfo.setItem("NimExceptionVuSolo2", model == "vusolo2") + BoxInfo.setItem("NimExceptionVuDuo2", model == "vuduo2") + BoxInfo.setItem("NimExceptionDMM8000", model == "dm8000") + BoxInfo.setItem("FbcTunerPowerAlwaysOn", model in ("vusolo4k", "vuduo4k", "vuduo4kse", "vuultimo4k", "vuuno4k", "vuuno4kse")) BoxInfo.setItem("HasPhysicalLoopthrough", ["Vuplus DVB-S NIM(AVL2108)", "GIGA DVB-S2 NIM (Internal)"]) - if machine in ("et7500", "et8500"): + if model in ("et7500", "et8500"): BoxInfo.setItem("HasPhysicalLoopthrough", BoxInfo.getItem("HasPhysicalLoopthrough") + ["AVL6211"]) BoxInfo.setItem("HasFBCtuner", ["Vuplus DVB-C NIM(BCM3158)", "Vuplus DVB-C NIM(BCM3148)", "Vuplus DVB-S NIM(7376 FBC)", "Vuplus DVB-S NIM(45308X FBC)", "Vuplus DVB-S NIM(45208 FBC)", "DVB-S2 NIM(45208 FBC)", "DVB-S2X NIM(45308X FBC)", "DVB-S2 NIM(45308 FBC)", "DVB-C NIM(3128 FBC)", "BCM45208", "BCM45308X", "BCM3158"]) BoxInfo.setItem("HasHiSi", pathExists("/proc/hisi")) BoxInfo.setItem("FCCactive", False) - BoxInfo.setItem("Autoresolution_proc_videomode", machine in ("gbue4k", "gbquad4k") and "/proc/stb/video/videomode_50hz" or "/proc/stb/video/videomode") + BoxInfo.setItem("Autoresolution_proc_videomode", model in ("gbue4k", "gbquad4k") and "/proc/stb/video/videomode_50hz" or "/proc/stb/video/videomode") setBoxInfoItems() \ No newline at end of file diff --git a/lib/python/Tools/HardwareInfo.py b/lib/python/Tools/HardwareInfo.py index a2b599ac9cd..ad7cf243912 100644 --- a/lib/python/Tools/HardwareInfo.py +++ b/lib/python/Tools/HardwareInfo.py @@ -40,7 +40,8 @@ def __init__(self): self.device_brandname = BoxInfo.getItem("displaybrand") # standard values - self.device_model = self.machine_name = BoxInfo.getItem("machine") + self.machine_name = BoxInfo.getItem("machine") # This contains the value where the image is buld from + self.device_model = BoxInfo.getItem("model") # This may contain more information about the specific model self.device_hw = BoxInfo.getItem("displaymodel") if self.device_revision: From b73b50678e8304b4ea6a97db2668e4b456d1ca53 Mon Sep 17 00:00:00 2001 From: Dimitrij Date: Sat, 1 Feb 2025 16:51:56 +0200 Subject: [PATCH 2/3] [SystemInfo] rename forgot machine as model --- lib/python/Components/SystemInfo.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/python/Components/SystemInfo.py b/lib/python/Components/SystemInfo.py index fc6dc081945..587738473d0 100644 --- a/lib/python/Components/SystemInfo.py +++ b/lib/python/Components/SystemInfo.py @@ -157,7 +157,7 @@ def setBoxInfoItems(): BoxInfo.setItem("FrontpanelDisplay", fileExists("/dev/dbox/oled0") or fileExists("/dev/dbox/lcd0")) BoxInfo.setItem("LCDsymbol_circle_recording", fileCheck("/proc/stb/lcd/symbol_circle") or model in ("hd51", "vs1500") and fileCheck("/proc/stb/lcd/symbol_recording")) BoxInfo.setItem("LCDsymbol_timeshift", fileCheck("/proc/stb/lcd/symbol_timeshift")) - BoxInfo.setItem("LCDshow_symbols", (machine.startswith("et9") or model in ("hd51", "vs1500")) and fileCheck("/proc/stb/lcd/show_symbols")) + BoxInfo.setItem("LCDshow_symbols", (model.startswith("et9") or model in ("hd51", "vs1500")) and fileCheck("/proc/stb/lcd/show_symbols")) BoxInfo.setItem("LCDsymbol_hdd", model in ("hd51", "vs1500") and fileCheck("/proc/stb/lcd/symbol_hdd")) BoxInfo.setItem("FrontpanelDisplayGrayscale", fileExists("/dev/dbox/oled0")) BoxInfo.setItem("DeepstandbySupport", model != "dm800") @@ -174,15 +174,15 @@ def setBoxInfoItems(): BoxInfo.setItem("Power4x7Standby", fileCheck("/proc/stb/fp/power4x7standby")) BoxInfo.setItem("Power4x7Suspend", fileCheck("/proc/stb/fp/power4x7suspend")) BoxInfo.setItem("PowerOffDisplay", model not in "formuler1" and fileCheck("/proc/stb/power/vfd") or fileCheck("/proc/stb/lcd/vfd")) - BoxInfo.setItem("WakeOnLAN", not machine.startswith("et8000") and fileCheck("/proc/stb/power/wol") or fileCheck("/proc/stb/fp/wol")) + BoxInfo.setItem("WakeOnLAN", not model.startswith("et8000") and fileCheck("/proc/stb/power/wol") or fileCheck("/proc/stb/fp/wol")) BoxInfo.setItem("HasExternalPIP", not (machine.startswith("et9") or model in ("e4hd",)) and fileCheck("/proc/stb/vmpeg/1/external")) BoxInfo.setItem("VideoDestinationConfigurable", fileExists("/proc/stb/vmpeg/0/dst_left")) BoxInfo.setItem("hasPIPVisibleProc", fileCheck("/proc/stb/vmpeg/1/visible")) BoxInfo.setItem("MaxPIPSize", model in ("hd51", "h7", "vs1500", "e4hd") and (360, 288) or (540, 432)) - BoxInfo.setItem("VFD_scroll_repeats", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/scroll_repeats")) - BoxInfo.setItem("VFD_scroll_delay", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/scroll_delay")) - BoxInfo.setItem("VFD_initial_scroll_delay", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/initial_scroll_delay")) - BoxInfo.setItem("VFD_final_scroll_delay", not machine.startswith("et8500") and fileCheck("/proc/stb/lcd/final_scroll_delay")) + BoxInfo.setItem("VFD_scroll_repeats", not model.startswith("et8500") and fileCheck("/proc/stb/lcd/scroll_repeats")) + BoxInfo.setItem("VFD_scroll_delay", not model.startswith("et8500") and fileCheck("/proc/stb/lcd/scroll_delay")) + BoxInfo.setItem("VFD_initial_scroll_delay", not model.startswith("et8500") and fileCheck("/proc/stb/lcd/initial_scroll_delay")) + BoxInfo.setItem("VFD_final_scroll_delay", not model.startswith("et8500") and fileCheck("/proc/stb/lcd/final_scroll_delay")) BoxInfo.setItem("LcdLiveTV", fileCheck("/proc/stb/fb/sd_detach") or fileCheck("/proc/stb/lcd/live_enable")) BoxInfo.setItem("LcdLiveTVMode", fileCheck("/proc/stb/lcd/mode")) BoxInfo.setItem("LcdLiveDecoder", fileCheck("/proc/stb/lcd/live_decoder")) @@ -222,7 +222,7 @@ def setBoxInfoItems(): BoxInfo.setItem("canMode12", "%s_4.boxmode" % model in cmdline and cmdline["%s_4.boxmode" % machine] in ("1", "12") and "192M") BoxInfo.setItem("canMultiBoot", getMultibootslots()) BoxInfo.setItem("canDualBoot", fileExists("/dev/block/by-name/flag")) - BoxInfo.setItem("canFlashWithOfgwrite", not (machine.startswith("dm"))) + BoxInfo.setItem("canFlashWithOfgwrite", not model.startswith("dm"))) BoxInfo.setItem("HDRSupport", fileExists("/proc/stb/hdmi/hlg_support_choices") and fileCheck("/proc/stb/hdmi/hlg_support")) BoxInfo.setItem("CanProc", BoxInfo.getItem("HasMMC") and not BoxInfo.getItem("Blindscan_t2_available")) BoxInfo.setItem("HasMultichannelPCM", fileCheck("/proc/stb/audio/multichannel_pcm")) @@ -257,4 +257,4 @@ def setBoxInfoItems(): BoxInfo.setItem("Autoresolution_proc_videomode", model in ("gbue4k", "gbquad4k") and "/proc/stb/video/videomode_50hz" or "/proc/stb/video/videomode") -setBoxInfoItems() \ No newline at end of file +setBoxInfoItems() From 2808437c63f3dbabcc7e9dd31638c02ae9fda07e Mon Sep 17 00:00:00 2001 From: Dimitrij Date: Sat, 1 Feb 2025 20:24:42 +0200 Subject: [PATCH 3/3] [SystemInfo] fix forgotten quotes --- lib/python/Components/SystemInfo.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/python/Components/SystemInfo.py b/lib/python/Components/SystemInfo.py index 587738473d0..bbb9b566aaa 100644 --- a/lib/python/Components/SystemInfo.py +++ b/lib/python/Components/SystemInfo.py @@ -222,7 +222,7 @@ def setBoxInfoItems(): BoxInfo.setItem("canMode12", "%s_4.boxmode" % model in cmdline and cmdline["%s_4.boxmode" % machine] in ("1", "12") and "192M") BoxInfo.setItem("canMultiBoot", getMultibootslots()) BoxInfo.setItem("canDualBoot", fileExists("/dev/block/by-name/flag")) - BoxInfo.setItem("canFlashWithOfgwrite", not model.startswith("dm"))) + BoxInfo.setItem("canFlashWithOfgwrite", not (model.startswith("dm"))) BoxInfo.setItem("HDRSupport", fileExists("/proc/stb/hdmi/hlg_support_choices") and fileCheck("/proc/stb/hdmi/hlg_support")) BoxInfo.setItem("CanProc", BoxInfo.getItem("HasMMC") and not BoxInfo.getItem("Blindscan_t2_available")) BoxInfo.setItem("HasMultichannelPCM", fileCheck("/proc/stb/audio/multichannel_pcm"))