Merge pull request #2 from persianpros/main

Safe PEP8
This commit is contained in:
gutosie
2021-04-21 22:10:56 +03:00
committed by GitHub
70 changed files with 2635 additions and 2502 deletions

View File

@@ -3,21 +3,23 @@
from __future__ import print_function
from Components.Language import language
from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_LANGUAGE
import os, gettext
import os
import gettext
PluginLanguageDomain = 'NeoBoot'
PluginLanguagePath = 'Extensions/NeoBoot/locale'
def localeInit():
lang = language.getLanguage()[:2]
os.environ['LANGUAGE'] = lang
print ("[NeoBoot] set language to "), lang
print("[NeoBoot] set language to "), lang
gettext.bindtextdomain(PluginLanguageDomain, resolveFilename(SCOPE_PLUGINS, PluginLanguagePath))
def _(txt):
t = gettext.dgettext(PluginLanguageDomain, txt)
if t == txt:
print ("[NeoBoot] fallback to default translation for"), txt
print("[NeoBoot] fallback to default translation for"), txt
t = gettext.dgettext('enigma2', txt)
return t

View File

@@ -1,7 +1,8 @@
#!/usr/bin/python
import sys, extract
#!/usr/bin/python
import sys
import extract
if len(sys.argv) < 16:
pass
else:
extract.NEOBootMainEx(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5], sys.argv[6], sys.argv[7], sys.argv[8], sys.argv[9], sys.argv[10], sys.argv[11], sys.argv[12], sys.argv[13], sys.argv[14], sys.argv[15], sys.argv[16])
extract.NEOBootMainEx(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5], sys.argv[6], sys.argv[7], sys.argv[8], sys.argv[9], sys.argv[10], sys.argv[11], sys.argv[12], sys.argv[13], sys.argv[14], sys.argv[15], sys.argv[16])

View File

@@ -1,13 +1,19 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys, os, struct, shutil
import sys
import os
import struct
import shutil
# ver. gutosie
# ver. gutosie
#--------------------------------------------- 2021 ---------------------------------------------#
def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, LanWlan, Sterowniki, InstallSettings, ZipDelete, RepairFTP, SoftCam, MediaPortal, PiconR, Kodi, BlackHole):
def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, LanWlan, Sterowniki, InstallSettings, ZipDelete, RepairFTP, SoftCam, MediaPortal, PiconR, Kodi, BlackHole):
NEOBootR(source, target, stopenigma, CopyFiles, CopyKernel, TvList, LanWlan, Sterowniki, InstallSettings, ZipDelete, RepairFTP, SoftCam, MediaPortal, PiconR, Kodi, BlackHole)
def LanguageUsed():
language = ''
lang = open('/etc/enigma2/settings', 'r')
@@ -19,65 +25,71 @@ def LanguageUsed():
language = 'No'
return language
def getBoxHostName():
if os.path.exists('/etc/hostname'):
with open('/etc/hostname', 'r') as f:
myboxname = f.readline().strip()
f.close()
return myboxname
f.close()
return myboxname
def getCPUSoC():
chipset='UNKNOWN'
chipset = 'UNKNOWN'
if os.path.exists('/proc/stb/info/chipset'):
with open('/proc/stb/info/chipset', 'r') as f:
chipset = f.readline().strip()
f.close()
f.close()
if chipset == '7405(with 3D)':
chipset == '7405'
return chipset
def getBoxVuModel():
vumodel='UNKNOWN'
vumodel = 'UNKNOWN'
if os.path.exists("/proc/stb/info/vumodel") and not os.path.exists("/proc/stb/info/boxtype"):
with open('/proc/stb/info/vumodel', 'r') as f:
vumodel = f.readline().strip()
f.close()
f.close()
return vumodel
def getCPUtype() :
cpu='UNKNOWN'
def getCPUtype():
cpu = 'UNKNOWN'
if os.path.exists('/proc/cpuinfo'):
with open('/proc/cpuinfo', 'r') as f:
lines = f.read()
f.close()
if lines.find('ARMv7') != -1:
cpu='ARMv7'
cpu = 'ARMv7'
elif lines.find('mips') != -1:
cpu='MIPS'
cpu = 'MIPS'
return cpu
def getKernelVersion():
try:
return open('/proc/version', 'r').read().split(' ', 4)[2].split('-', 2)[0]
except:
return _('unknown')
def getNeoLocation():
locatino='UNKNOWN'
locatino = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location', 'r') as f:
locatino = f.readline().strip()
f.close()
return locatino
media = getNeoLocation()
mediahome = media + '/ImageBoot/'
extensions_path = '/usr/lib/enigma2/python/Plugins/Extensions/'
dev_null = ' > /dev/null 2>&1'
supportedTuners='vuplus'
supportedTuners = 'vuplus'
def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, LanWlan, Sterowniki, InstallSettings, ZipDelete, RepairFTP, SoftCam, MediaPortal, PiconR, Kodi, BlackHole):
media_target = mediahome + target
@@ -108,8 +120,8 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
'rmdir ' + media_target + media + dev_null,
'mkdir -p ' + media_target + media + dev_null,
#'cp /etc/passwd ' + media_target + '/etc/passwd' + dev_null,
# 'cp ' + extensions_path + 'NeoBoot/bin/hdd' + media_target+'/etc/init.d/hddusb' + dev_null,
'cp /etc/hostname ' + media_target + '/etc/hostname' + dev_null,
# 'cp ' + extensions_path + 'NeoBoot/bin/hdd' + media_target+'/etc/init.d/hddusb' + dev_null,
'cp /etc/hostname ' + media_target + '/etc/hostname' + dev_null,
'cp -af ' + extensions_path + 'NeoBoot ' + media_target + extensions_path + 'NeoBoot' + dev_null,
'mkdir -p ' + media_target + extensions_path + 'NeoReboot' + dev_null,
'touch ' + media_target + extensions_path + 'NeoReboot/__init__.py' + dev_null,
@@ -121,9 +133,9 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
if CopyFiles == 'False':
os.system('echo "No copying of files..."')
os.system('touch ' + getNeoLocation() + 'ImageBoot/.without_copying; sleep 5')
os.system('touch ' + getNeoLocation() + 'ImageBoot/.without_copying; sleep 5')
if CopyKernel == 'True':
if CopyKernel == 'True':
#mips vuplus
if getBoxHostName() == 'vuultimo' or getCPUSoC() == '7405' and os.path.exists('%s/ImageBoot/%s/etc/vtiversion.info' % (media, target)):
if os.path.exists('%s/ImageBoot/%s/lib/modules' % (media, target)):
@@ -141,15 +153,15 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
cmd = 'cp -af /lib/firmware %s/ImageBoot/%s/lib > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
os.system('echo "Copied system drivers. Not recommended copied kernel.bin for Ultimo HD."')
elif getCPUtype() == "MIPS" and getBoxHostName() == 'vuultimo' or getBoxHostName() == 'bm750' or getBoxHostName() == 'vuduo' or getBoxHostName() == 'vuuno' or getBoxHostName() == 'vusolo' or getBoxHostName() == 'vuduo' or getBoxHostName() == 'vusolo2' or getBoxHostName() == 'vusolose' or getBoxHostName() == 'vuduo2' or getBoxHostName() == 'vuzero' or getBoxHostName() == 'mbultra':
os.system('mv ' + getNeoLocation() + 'ImagesUpload/vuplus/' + getBoxVuModel() + '/kernel_cfe_auto.bin ' + media_target + '/boot/' + getBoxHostName() + '.vmlinux.gz' + dev_null)
os.system('echo "Copied kernel.bin STB-MIPS"')
elif getCPUtype() == "MIPS" and getBoxHostName() == 'vuultimo' or getBoxHostName() == 'bm750' or getBoxHostName() == 'vuduo' or getBoxHostName() == 'vuuno' or getBoxHostName() == 'vusolo' or getBoxHostName() == 'vuduo' or getBoxHostName() == 'vusolo2' or getBoxHostName() == 'vusolose' or getBoxHostName() == 'vuduo2' or getBoxHostName() == 'vuzero' or getBoxHostName() == 'mbultra':
os.system('mv ' + getNeoLocation() + 'ImagesUpload/vuplus/' + getBoxVuModel() + '/kernel_cfe_auto.bin ' + media_target + '/boot/' + getBoxHostName() + '.vmlinux.gz' + dev_null)
os.system('echo "Copied kernel.bin STB-MIPS"')
#arm vuplus arms
elif getCPUtype() == "ARMv7" and getBoxHostName() == "vuultimo4k" or getBoxHostName() == "vusolo4k" or getBoxHostName() == "vuuno4k" or getBoxHostName() == "vuuno4kse" or getBoxHostName() == "vuduo4k" or getBoxHostName() == "vuduo4kse" or getBoxHostName() == "vuzero4k":
os.system('mv ' + getNeoLocation() + 'ImagesUpload/vuplus/' + getBoxVuModel() + '/kernel_auto.bin ' + media_target + '/boot/zImage.' + getBoxHostName() + '' + dev_null)
os.system('echo "Copied kernel.bin STB-ARM"')
if not os.path.exists('' + getNeoLocation() + 'ImageBoot/.without_copying'):
os.system('echo "Copied kernel.bin STB-ARM"')
if not os.path.exists('' + getNeoLocation() + 'ImageBoot/.without_copying'):
if os.path.exists('/usr/sbin/nandwrite'):
cmd = 'cp -af /usr/sbin/nandwrite %s/ImageBoot/%s/usr/sbin/nandwrite > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
@@ -188,8 +200,8 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
if not os.path.exists('%s/ImageBoot/%s/usr/lib/enigma2/python/boxbranding.so' % (media, target)):
cmd = 'cp -af /usr/lib/enigma2/python/boxbranding.so %s/ImageBoot/%s/usr/lib/enigma2/python/boxbranding.so > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
os.system('echo "Copied plugins..."')
os.system('echo "Copied plugins..."')
if TvList == 'True':
if not os.path.exists('%s/ImageBoot/%s/etc/enigma2' % (media, target)):
cmd = 'mkdir -p %s/ImageBoot/%s/etc/enigma2' % (media, target)
@@ -211,7 +223,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
os.system('echo "Not copied LAN-WLAN, not recommended for this image."')
elif os.path.exists('/etc/bhversion') and os.path.exists('%s/usr/lib/enigma2/python/Plugins/PLi' % (media, target)):
os.system('echo "Not copied LAN-WLAN, not recommended for this image."')
else:
else:
if os.path.exists('/etc/wpa_supplicant.wlan0.conf'):
cmd = 'cp -af /etc/wpa_supplicant.wlan0.conf %s/ImageBoot/%s/etc/wpa_supplicant.wlan0.conf > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
@@ -282,23 +294,23 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
if SoftCam == 'True':
if os.path.exists('/etc/CCcam.cfg'):
cmd = 'cp -af /etc/CCcam.cfg %s/ImageBoot/%s/etc > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
cmd = 'cp -af /etc/CCcam.cfg %s/ImageBoot/%s/etc > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
if os.path.exists('/etc/tuxbox/config'):
cmd = 'cp -af /etc/tuxbox/config %s/ImageBoot/%s/etc/tuxbox > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
os.system('echo "Copied softcam files to the installed image..."')
if MediaPortal == 'True':
if os.path.exists('' + extensions_path + 'MediaPortal'):
cmd = 'cp -af ' + extensions_path + 'MediaPortal %s/ImageBoot/%s/usr/lib/enigma2/python/Plugins/Extensions > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
cmd = 'cp -af ' + extensions_path + 'mpgz %s/ImageBoot/%s/usr/lib/enigma2/python/Plugins/Extensions > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
cmd = 'cp -af /usr/lib/python2.7/argparse.pyo %s/ImageBoot/%s/usr/lib/python2.7 > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
cmd = 'cp -af /usr/lib/python2.7/robotparser.pyo %s/ImageBoot/%s/usr/lib/python2.7 > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
cmd = 'cp -af /usr/lib/python2.7/site-packages/Crypto %s/ImageBoot/%s/usr/lib/python2.7/site-packages > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
cmd = 'cp -af /usr/lib/python2.7/site-packages/mechanize %s/ImageBoot/%s/usr/lib/python2.7/site-packages > /dev/null 2>&1' % (media, target)
@@ -306,7 +318,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
cmd = 'cp -af /usr/lib/python2.7/site-packages/requests %s/ImageBoot/%s/usr/lib/python2.7/site-packages > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
cmd = 'cp -af /usr/lib/python2.7/site-packages/requests-2.11.1-py2.7.egg-info %s/ImageBoot/%s/usr/lib/python2.7/site-packages > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
if not os.path.exists('%s/ImageBoot/%s/etc/enigma2' % (media, target)):
cmd = 'mkdir -p %s/ImageBoot/%s/etc/enigma2' % (media, target)
@@ -319,36 +331,36 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
rc = os.system(cmd)
if os.path.exists('/etc/enigma2/mp_pluginliste'):
cmd = 'cp /etc/enigma2/mp_pluginliste %s/ImageBoot/%s/etc/enigma2' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
os.system('echo "Copied MediaPortal..."')
elif not os.path.exists('' + extensions_path + 'MediaPortal'):
elif not os.path.exists('' + extensions_path + 'MediaPortal'):
os.system('echo "MediaPortal not found."')
if PiconR == 'True':
if os.path.exists('/usr/share/enigma2/picon'):
cmd = 'cp -af /usr/share/enigma2/picon %s/ImageBoot/%s/usr/share/enigma2' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
os.system('echo "Copied picon..."')
elif not os.path.exists('/usr/share/enigma2/picon'):
os.system('echo "Picon flash not found."')
elif not os.path.exists('/usr/share/enigma2/picon'):
os.system('echo "Picon flash not found."')
if Kodi == 'True':
cmd = 'mkdir -p %s/ImageBoot/%s/home/root/.kodi > /dev/null 2>&1' % (media, target)
rc = os.system(cmd)
if os.path.exists('/home/root/.kodi'):
os.system('echo "Kodi set ok."')
else:
if not os.path.exists('/home/root/.kodi'):
if not os.path.exists('/home/root/.kodi'):
if not os.path.exists('/.multinfo'):
if os.path.exists('/media/hdd/.kodi'):
cmd = 'mv /media/hdd/.kodi /media/hdd/.kodi_flash; ln -sf "/media/hdd/.kodi_flash" "/home/root/.kodi"; ln -sf "/home/root/.kodi" "/media/hdd/.kodi" '
rc = os.system(cmd)
rc = os.system(cmd)
os.system('echo "Kodi fix ok."')
else:
os.system('echo "Kodi not found.."')
else:
else:
os.system('echo "Kodi path possible only from flash."')
else:
else:
os.system('echo "Kodi not found."')
if BlackHole == 'True':
@@ -357,13 +369,13 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
try:
text = ver.split('-')[0]
except:
text = ''
text = ''
cmd = 'mkdir ' + getNeoLocation() + 'ImageBoot/%s/boot/blackhole' % target
rc = os.system(cmd)
cmd = 'cp -f ' + extensions_path + 'NeoBoot/bin/version ' + getNeoLocation() + 'ImageBoot/%s/boot/blackhole' % target
rc = os.system(cmd)
cmd = 'mv ' + getNeoLocation() + 'ImageBoot/' +target+ '/usr/lib/enigma2/python/Blackhole/BhUtils.pyo ' + getNeoLocation() + 'ImageBoot/%s/usr/lib/enigma2/python/Blackhole/BhUtils.pyo.org' % target
cmd = 'mv ' + getNeoLocation() + 'ImageBoot/' + target + '/usr/lib/enigma2/python/Blackhole/BhUtils.pyo ' + getNeoLocation() + 'ImageBoot/%s/usr/lib/enigma2/python/Blackhole/BhUtils.pyo.org' % target
rc = os.system(cmd)
cmd = 'cp -af ' + extensions_path + 'NeoBoot/bin/utilsbh ' + getNeoLocation() + 'ImageBoot/%s/usr/lib/enigma2/python/Blackhole/BhUtils.py' % target
rc = os.system(cmd)
@@ -371,7 +383,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
temp_file = open(localfile, 'w')
temp_file.write(text)
temp_file.close()
cmd = 'mv ' + getNeoLocation() + 'ImageBoot/' +target+ '/usr/bin/enigma2 ' + getNeoLocation() + 'ImageBoot/%s/usr/bin/enigma2-or' % target
cmd = 'mv ' + getNeoLocation() + 'ImageBoot/' + target + '/usr/bin/enigma2 ' + getNeoLocation() + 'ImageBoot/%s/usr/bin/enigma2-or' % target
rc = os.system(cmd)
fail = '' + getNeoLocation() + 'ImageBoot/%s/usr/bin/enigma2-or' % target
f = open(fail, 'r')
@@ -404,7 +416,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
cmd = 'echo -n "\n\n/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/userscript.sh \n\nexit 0" >> %s/ImageBoot/%s/etc/rc.local' % (media, target)
rc = os.system(cmd)
cmd = 'chmod 0755 %s/ImageBoot/%s/etc/rc.local' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
if os.path.exists('%s/ImageBoot/%s/etc/init.d/rc.local' % (media, target)):
filename = '%s/ImageBoot/%s/etc/init.d/rc.local' % (media, target)
@@ -426,10 +438,10 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
cmd = 'chmod 0755 %s/ImageBoot/%s/etc/init.d/rc.local' % (media, target)
rc = os.system(cmd)
if not os.path.exists('%s/ImageBoot/%s/etc/init.d/rc.local' % (media, target)) and not os.path.exists('%s/ImageBoot/%s/etc/rc.local' % (media, target)) :
if os.path.exists('%s/ImageBoot/%s/etc/init.d' % (media, target)):
if not os.path.exists('%s/ImageBoot/%s/etc/init.d/rc.local' % (media, target)) and not os.path.exists('%s/ImageBoot/%s/etc/rc.local' % (media, target)):
if os.path.exists('%s/ImageBoot/%s/etc/init.d' % (media, target)):
# cmd = 'ln -s %sImageBoot/%s/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/userscript.sh %sImageBoot/%s/etc/rcS.d/S99neo.local' % (media,
# target,
# target,
# media,
# target)
cmd = 'cp -af /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/userscript.sh %sImageBoot/%s/etc/rcS.d/S99neo.local' % (media, target)
@@ -440,16 +452,16 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
os.system('echo "/etc/init.d not found."')
os.system('echo "Copied file neo_userscript.sh"')
if not os.path.exists('' + getNeoLocation() + 'ImageBoot/.without_copying'):
if not os.path.exists('' + getNeoLocation() + 'ImageBoot/.without_copying'):
if not os.path.exists('%s/ImageBoot/%s/etc/enigma2' % (media, target)):
cmd = 'mkdir -p %s/ImageBoot/%s/etc/enigma2' % (media, target)
rc = os.system(cmd)
cmd = 'touch %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
rc = os.system(cmd)
cmd = 'grep "config.Nims" /etc/enigma2/settings >> %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
rc = os.system(cmd)
rc = os.system(cmd)
cmd1 = 'grep "av.videomode.DVI" /etc/enigma2/settings >> %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
rc = os.system(cmd1)
rc = os.system(cmd1)
cmd2 = 'grep "config.OpenWebif" /etc/enigma2/settings >> %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
rc = os.system(cmd2)
cmd3 = 'grep "config.osd" /etc/enigma2/settings >> %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
@@ -457,7 +469,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
cmd4 = 'grep "config.timezone.val" /etc/enigma2/settings >> %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
rc = os.system(cmd4)
cmd5 = 'grep "config.servicelist.startuproot" /etc/enigma2/settings >> %s/ImageBoot/%s/etc/enigma2/settings' % (media, target)
rc = os.system(cmd5)
rc = os.system(cmd5)
cmd6 = 'grep "UUID=" /etc/fstab >> %s/ImageBoot/%s/etc/fstab' % (media, target)
rc = os.system(cmd6)
@@ -478,17 +490,17 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
elif line.find('/dev/mmcblk0p4') != -1:
line = '#' + line
elif line.find('/dev/mmcblk0p5') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mmcblk0p6') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mmcblk0p7') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mmcblk0p8') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mmcblk0p9') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/root') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mtdblock1') != -1:
line = '#' + line
elif line.find('/dev/mtdblock2') != -1:
@@ -498,15 +510,15 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
elif line.find('/dev/mtdblock4') != -1:
line = '#' + line
elif line.find('/dev/mtdblock5') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mtdblock6') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mtdblock7') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mtdblock8') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/mtdblock9') != -1:
line = '#' + line
line = '#' + line
elif line.find('/dev/root') != -1:
line = '#' + line
out.write(line)
@@ -514,7 +526,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
f.close()
out.close()
os.rename(namefile2, namefile)
tpmd = media + '/ImageBoot/' + target + '/etc/init.d/tpmd'
if os.path.exists(tpmd):
os.system('rm ' + tpmd)
@@ -627,7 +639,7 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
os.rename(filename2, filename)
cmd = 'chmod -R 0755 %s' % filename
rc = os.system(cmd)
# cmd = 'cp -f ' + extensions_path + 'NeoBoot/bin/hdd ' + getNeoLocation() + 'ImageBoot/%s/etc/init.d/hddusb' % target
# rc = os.system(cmd)
@@ -637,8 +649,8 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
cmd = 'cp -af /usr/lib/enigma2/python/Tools/Testinout.py ' + getNeoLocation() + 'ImageBoot/%s/usr/lib/enigma2/python/Tools/' % target
rc = os.system(cmd)
os.system('mkdir -p ' + media_target + '/media/hdd' + dev_null)
os.system('mkdir -p ' + media_target + '/media/usb' + dev_null)
os.system('mkdir -p ' + media_target + '/var/lib/opkg/info/' + dev_null)
os.system('mkdir -p ' + media_target + '/media/usb' + dev_null)
os.system('mkdir -p ' + media_target + '/var/lib/opkg/info/' + dev_null)
os.system('touch ' + getNeoLocation() + 'ImageBoot/.data; echo "Data instalacji image" > ' + getNeoLocation() + 'ImageBoot/.data; echo " "; date > ' + getNeoLocation() + 'ImageBoot/.data')
os.system('mv -f ' + getNeoLocation() + 'ImageBoot/.data ' + getNeoLocation() + 'ImageBoot/%s/.data' % target)
cmd = 'touch /tmp/.init_reboot'
@@ -649,64 +661,65 @@ def NEOBootMainEx(source, target, stopenigma, CopyFiles, CopyKernel, TvList, Lan
os.system('cp ' + getNeoLocation() + 'ImageBoot/.neonextboot ' + getNeoLocation() + 'ImageBoot/%s/.multinfo' % target)
out = open(mediahome + '.neonextboot', 'w')
out.write('Flash')
out.close()
if '.tar.xz' not in source and not os.path.exists('' + getNeoLocation() + '/ImageBoot/%s/etc/issue' % target):
out.close()
if '.tar.xz' not in source and not os.path.exists('' + getNeoLocation() + '/ImageBoot/%s/etc/issue' % target):
os.system('echo ""; echo "No system installed! The reason for the installation error may be badly packed image files or it is not a system for your model."')
os.system('echo "The installed system may not start. Check the correctness of the installed image directory!!!"')
os.system('rm -r ' + getNeoLocation() + '/ImageBoot/%s' % target )
os.system('rm -r ' + getNeoLocation() + '/ImageBoot/%s' % target)
if os.path.exists('' + getNeoLocation() + 'ubi'):
os.system('rm -r ' + getNeoLocation() + 'ubi')
os.system('rm -r ' + getNeoLocation() + 'ubi')
if os.path.exists('' + getNeoLocation() + 'image_cache/'):
os.system('rm -r ' + getNeoLocation() + 'image_cache')
if os.path.exists('' + getNeoLocation() + 'ImageBoot/.without_copying'):
os.system('rm -f ' + getNeoLocation() + 'ImageBoot/.without_copying')
os.system('rm -f ' + getNeoLocation() + 'ImageBoot/.without_copying')
rc = RemoveUnpackDirs()
if os.path.exists('/tmp/init4'):
os.system('rm -f /tmp/init4; init 3')
os.system('echo "End of installation:"; date +%T')
os.system('echo "If you want to save the installation process from the console press green."')
os.system('echo "If you want to save the installation process from the console press green."')
def RemoveUnpackDirs():
os.chdir(media + '/ImagesUpload')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/unpackedzip'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/unpackedzip')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/*.bin'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/*.bin')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/*.txt'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/*.txt')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/unpackedzip'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/unpackedzip')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/*.bin'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/*.bin')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/*.txt'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/*.txt')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/vuplus')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/sf4008'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/sf4008')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/osmio4k'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/osmio4k')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/osmio4k')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/osmio4kplus'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/osmio4kplus')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/osmio4kplus')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dm900'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dm900')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd60'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/hd60')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd61'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/hd61')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dm900')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd60'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/hd60')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd61'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/hd61')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd51'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/hd51')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/bre2ze4k'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/bre2ze4k')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/bre2ze4k')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/multibox'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/multibox')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/multiboxse'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/multiboxse')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/multiboxse')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/unforce_multibox.txt'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/unforce_multibox.txt')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/unforce_multibox.txt')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/axas'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/axas')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/axas')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/miraclebox'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/miraclebox')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/e4hd'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/e4hd')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/e4hd')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/update'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/update')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz'):
@@ -714,92 +727,92 @@ def RemoveUnpackDirs():
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/*.nfi'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/*.nfi')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/zgemma'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/zgemma')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/zgemma')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/formuler1'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/formuler1')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/formuler3'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/formuler3')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/formuler4turbo'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/formuler4turbo')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/formuler4turbo')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/et*'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/et*')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/et*')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/xpeedl*'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/xpeedl*')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/osmini'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/osmini')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/osmini')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/xp1000 '):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/xp1000 ')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/xp1000 ')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dinobot '):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dinobot ')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dinobot ')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/e2/update'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/e2')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/e2')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/et1x000'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/et1x000')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/et1x000')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/protek4k'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/protek4k')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/protek4k')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dm920 '):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dm920 ')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dm920 ')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dreamtwo '):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dreamtwo ')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/multibox') or os.path.exists('' + getNeoLocation() + 'ImagesUpload/multiboxse') :
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/multibox ' + getNeoLocation() + 'ImagesUpload/multibox; rm -r ' + getNeoLocation() + 'ImagesUpload/multibox')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/octagon/sf8008'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/octagon; rm -r ' + getNeoLocation() + 'ImagesUpload/octagon')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/dreamtwo ')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/multibox') or os.path.exists('' + getNeoLocation() + 'ImagesUpload/multiboxse'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/multibox ' + getNeoLocation() + 'ImagesUpload/multibox; rm -r ' + getNeoLocation() + 'ImagesUpload/multibox')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/octagon/sf8008'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/octagon; rm -r ' + getNeoLocation() + 'ImagesUpload/octagon')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h7'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/h7; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/h7')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h7')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/h7; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/h7')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h7')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/h9; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/h9')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/h9; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/h9')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9se'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/h9se; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/h9se')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9se')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/h9se; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/h9se')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9se')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/i55plus'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/i55plus; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/i55plus')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/i55plus')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/i55plus; mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/i55plus')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/i55plus')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9combo'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/force_h9combo_READ.ME ' + getNeoLocation() + 'ImagesUpload/h9combo; mv ' + getNeoLocation() + 'ImagesUpload/unforce_h9combo.txt ' + getNeoLocation() + 'ImagesUpload/h9combo')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9combo')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/force_h9combo_READ.ME ' + getNeoLocation() + 'ImagesUpload/h9combo; mv ' + getNeoLocation() + 'ImagesUpload/unforce_h9combo.txt ' + getNeoLocation() + 'ImagesUpload/h9combo')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9combo')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9combose'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/force_h9combose_READ.ME ' + getNeoLocation() + 'ImagesUpload/h9combo; mv ' + getNeoLocation() + 'ImagesUpload/unforce_h9combose.txt ' + getNeoLocation() + 'ImagesUpload/h9combose')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/force_h9combose_READ.ME ' + getNeoLocation() + 'ImagesUpload/h9combo; mv ' + getNeoLocation() + 'ImagesUpload/unforce_h9combose.txt ' + getNeoLocation() + 'ImagesUpload/h9combose')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h9combose')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h10'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/force_h10_READ.ME ' + getNeoLocation() + 'ImagesUpload/h10; mv ' + getNeoLocation() + 'ImagesUpload/unforce_h10.txt ' + getNeoLocation() + 'ImagesUpload/h10')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h10')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/force_h10_READ.ME ' + getNeoLocation() + 'ImagesUpload/h10; mv ' + getNeoLocation() + 'ImagesUpload/unforce_h10.txt ' + getNeoLocation() + 'ImagesUpload/h10')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/h10')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/uclan'):
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/usb_update.bin'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/uclan')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/uclan')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/usb_update.bin'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/uclan')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/uclan')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/beyonwiz'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/beyonwiz')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/amiko'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/amiko')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/amiko')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/gigablue')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue'):
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/usb_update.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/apploader.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/bootargs.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('mv ' + getNeoLocation() + 'ImagesUpload/fastboot.bin ' + getNeoLocation() + 'ImagesUpload/gigablue')
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/gigablue')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz') :
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.tar.bz2') :
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.tar.bz2'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.bz2')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/et10000') :
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/et10000'):
rc = os.system('rm -r ' + getNeoLocation() + 'ImagesUpload/et10000')
@@ -808,7 +821,7 @@ def NEOBootExtract(source, target, ZipDelete):
os.system('echo "Press green to hide Console or red to abort the installation\nInstallation started:"; date +%T;echo "Extracting the installation file..."')
if os.path.exists('' + getNeoLocation() + 'ImageBoot/.without_copying'):
os.system('rm -f ' + getNeoLocation() + 'ImageBoot/.without_copying')
os.system('rm -f ' + getNeoLocation() + 'ImageBoot/.without_copying')
if os.path.exists('' + getNeoLocation() + 'image_cache'):
os.system('rm -rf ' + getNeoLocation() + 'image_cache')
@@ -816,7 +829,7 @@ def NEOBootExtract(source, target, ZipDelete):
sourcefile2 = media + '/ImagesUpload/%s.nfi' % source
sourcefile3 = media + '/ImagesUpload/%s.rar' % source
sourcefile4 = media + '/ImagesUpload/%s.gz' % source
#Instalacja *.nfi
if os.path.exists(sourcefile2) is True:
if sourcefile2.endswith('.nfi'):
@@ -837,13 +850,13 @@ def NEOBootExtract(source, target, ZipDelete):
if os.path.exists(sourcefile3) is True:
if sourcefile3.endswith('.rar'):
os.system('echo "Installing iamge x.rar..."')
cmd = 'unrar e ' + sourcefile3+ ' ' + getNeoLocation() + 'ImagesUpload/ > /dev/null 2>&1'
cmd = 'unrar e ' + sourcefile3 + ' ' + getNeoLocation() + 'ImagesUpload/ > /dev/null 2>&1'
rc = os.system(cmd)
if ZipDelete == 'True':
rc = os.system('rm -rf ' + sourcefile3)
else:
os.system('echo "NeoBoot keep the file: %s for reinstallation."' % sourcefile3)
#Instalacja *.zip
elif os.path.exists(sourcefile) is True:
os.system('unzip ' + sourcefile)
@@ -851,7 +864,7 @@ def NEOBootExtract(source, target, ZipDelete):
os.system('rm -rf ' + sourcefile)
#Instalacja MIPS
if getCPUtype() == 'MIPS':
if getCPUtype() == 'MIPS':
if os.path.exists('' + getNeoLocation() + 'ubi') is False:
rc = os.system('mkdir ' + getNeoLocation() + 'ubi')
to = '' + getNeoLocation() + 'ImageBoot/' + target
@@ -868,7 +881,7 @@ def NEOBootExtract(source, target, ZipDelete):
mtdfile = '/dev/mtd' + str(i)
if os.path.exists(mtdfile) is False:
break
mtd = str(i)
os.chdir(media + '/ImagesUpload')
#zgemma
@@ -998,16 +1011,15 @@ def NEOBootExtract(source, target, ZipDelete):
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/zero'):
os.chdir('zero')
rootfname = 'root_cfe_auto.bin'
#osmini
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/osmini'):
os.chdir('osmini')
brand = 'osmini'
#Instalacja image nandsim
os.system('echo "Instalacja - nandsim w toku..."')
rc = os.system('insmod /lib/modules/' + getKernelVersion() + '/kernel/drivers/mtd/nand/nandsim.ko cache_file=' + getNeoLocation() + 'image_cache first_id_byte=0x20 second_id_byte=0xaa third_id_byte=0x00 fourth_id_byte=0x15;sleep 5' )#% getKernelVersion())
#Instalacja image nandsim
os.system('echo "Instalacja - nandsim w toku..."')
rc = os.system('insmod /lib/modules/' + getKernelVersion() + '/kernel/drivers/mtd/nand/nandsim.ko cache_file=' + getNeoLocation() + 'image_cache first_id_byte=0x20 second_id_byte=0xaa third_id_byte=0x00 fourth_id_byte=0x15;sleep 5')#% getKernelVersion())
cmd = 'dd if=%s of=/dev/mtdblock%s bs=2048' % (rootfname, mtd)
rc = os.system(cmd)
cmd = 'ubiattach /dev/ubi_ctrl -m %s -O 2048' % mtd
@@ -1018,7 +1030,7 @@ def NEOBootExtract(source, target, ZipDelete):
rc = os.system(cmd)
rc = os.system('umount ' + getNeoLocation() + 'ubi')
cmd = 'ubidetach -m %s' % mtd
rc = os.system(cmd)
rc = os.system(cmd)
rc = os.system('rmmod nandsim')
rc = os.system('rm ' + getNeoLocation() + 'image_cache')
@@ -1030,7 +1042,7 @@ def NEOBootExtract(source, target, ZipDelete):
os.system('echo "RESTART ZA 15 sekund..."')
rc = os.system('rm -rf /lib/modules/%s/kernel/drivers/mtd/nand/nandsim.ko ' % getKernelVersion())
os.system('rm -r %s/ImageBoot/%s' % (media, target))
os.system('sleep 5; init 4; sleep 5; init 3 ')
@@ -1108,7 +1120,7 @@ def NEOBootExtract(source, target, ZipDelete):
os.system('mv -f root_cfe_auto.bin rootfs.bin')
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/solose/root_cfe_auto.jffs2'):
os.chdir('solose')
os.system('mv -f root_cfe_auto.jffs2 rootfs.bin')
os.system('mv -f root_cfe_auto.jffs2 rootfs.bin')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/ultimo'):
os.chdir('ultimo')
os.system('mv -f root_cfe_auto.jffs2 rootfs.bin')
@@ -1131,7 +1143,7 @@ def NEOBootExtract(source, target, ZipDelete):
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/ultimo4k'):
os.chdir('ultimo4k')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/duo4k'):
os.chdir('duo4k')
os.chdir('duo4k')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/duo4kse'):
os.chdir('duo4kse')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/zero4k'):
@@ -1173,7 +1185,7 @@ def NEOBootExtract(source, target, ZipDelete):
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/sf4008'):
os.chdir('sf4008')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/octagon/sf8008'):
os.chdir('sf8008')
os.chdir('sf8008')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue'):
os.chdir('gigablue')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue/quad'):
@@ -1208,30 +1220,30 @@ def NEOBootExtract(source, target, ZipDelete):
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/formuler4turbo'):
os.chdir('formuler4turbo')
#Instalacja image ubi_reader
os.system('echo "Instalacja - ubi_reader w toku..."')
#Instalacja image ubi_reader
os.system('echo "Instalacja - ubi_reader w toku..."')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/root_cfe_auto.*'):
os.system('mv -f root_cfe_auto.* rootfs.bin')
os.system('mv -f root_cfe_auto.* rootfs.bin')
cmd = 'chmod 777 ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py'
rc = os.system(cmd)
cmd = 'python ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py rootfs.bin -o' + getNeoLocation() + 'ubi'
rc = os.system(cmd)
os.chdir('/home/root')
os.system('mv ' + getNeoLocation() + 'ubi/rootfs/* ' + getNeoLocation() + 'ImageBoot/%s/' % target)
os.system('mv ' + getNeoLocation() + 'ubi/rootfs/* ' + getNeoLocation() + 'ImageBoot/%s/' % target)
cmd = 'chmod -R +x ' + getNeoLocation() + 'ImageBoot/' + target
rc = os.system(cmd)
else:
os.system('echo "NeoBoot wykrył błąd !!! Prawdopodobnie brak ubi_reader lub nandsim."')
#ARM
elif getCPUtype() == 'ARMv7':
os.chdir('' + getNeoLocation() + 'ImagesUpload')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9/rootfs.ubi'):
os.chdir('h9')
os.system('mv -f rootfs.ubi rootfs.bin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print ("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
os.system('mv -f rootfs.ubi rootfs.bin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
cmd = 'chmod 777 ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py'
rc = os.system(cmd)
cmd = 'python ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py rootfs.bin -o ' + getNeoLocation() + 'ubi'
@@ -1243,13 +1255,13 @@ def NEOBootExtract(source, target, ZipDelete):
rc = os.system(cmd)
cmd = 'rm -rf ' + getNeoLocation() + 'ubi'
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/axas'):
os.chdir('axas')
if os.path.exists('' + getNeoLocation() + 'ImagesUpload/axas/axashistwin'):
os.chdir('axashistwin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print ("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
os.chdir('axashistwin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
cmd = 'chmod 777 ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py'
rc = os.system(cmd)
cmd = 'python ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py rootfs.bin -o ' + getNeoLocation() + 'ubi'
@@ -1264,9 +1276,9 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/et10000/rootfs.bin'):
os.chdir('et10000')
os.system('mv -f rootfs.bin rootfs.bin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print ("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
os.system('mv -f rootfs.bin rootfs.bin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
cmd = 'chmod 777 ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py'
rc = os.system(cmd)
cmd = 'python ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py rootfs.bin -o ' + getNeoLocation() + 'ubi'
@@ -1277,7 +1289,7 @@ def NEOBootExtract(source, target, ZipDelete):
cmd = 'chmod -R +x ' + getNeoLocation() + 'ImageBoot/' + target
rc = os.system(cmd)
cmd = 'rm -rf ' + getNeoLocation() + 'ubi'
rc = os.system(cmd)
rc = os.system(cmd)
#vuplus________________________
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/vuplus/solo4k'):
os.system('echo "Please wait. System installation VuPlus Solo4K."')
@@ -1327,11 +1339,11 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dm900'):
os.system('echo "Please wait. System installation Dreambox DM900."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/dm900/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/dm900/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dm920'):
os.system('echo "Please wait. System installation Dreambox DM920."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/dm920; tar -jxf ' + getNeoLocation() + 'ImagesUpload/dm920/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/dreamtwo'):
os.system('echo "Please wait. System installation Dreambox dreamtwo."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/dreamtwo; tar -jxf ' + getNeoLocation() + 'ImagesUpload/dreamtwo/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1339,7 +1351,7 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd51/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation AX 4K Box HD51 "')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/hd51/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/hd51/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/hd60'):
os.system('echo "Please wait. System installation AX HD60 4K"')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/hd60/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/hd60/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1355,11 +1367,11 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/multibox'):
os.system('echo "Please wait. System installation AX multi twin or combo"')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/multibox/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/multibox/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/multiboxse'):
os.system('echo "Please wait. System installation maxytec"')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/multiboxse/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/multiboxse/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/axas/axasc4k'):
os.system('echo "Please wait. System installation Axas his c4k"')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/axas/axasc4k/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/axas/axasc4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1369,7 +1381,7 @@ def NEOBootExtract(source, target, ZipDelete):
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/e4hd/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/e4hd/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue/quad4k'):
os.system('echo "Please wait. System installation GigaBlue quad4k"')
os.system('echo "Please wait. System installation GigaBlue quad4k"')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/gigablue/quad4k/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/gigablue/quad4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue/ue4k'):
@@ -1383,7 +1395,7 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/update/force3uhd'):
os.system('echo "Please wait. System installation force3uhd."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/update/force3uhd/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/update/force3uhd/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/update/galaxy4k'):
os.system('echo "Please wait. System installation Galaxy4k."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/update/galaxy4k/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/update/galaxy4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1391,15 +1403,15 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/zgemma/h7/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma H7."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/zgemma/h7/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/zgemma/h7/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/zgemma/h9/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma H9S ."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/zgemma/h9/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/zgemma/h9/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/zgemma/h9se/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma H9SE ."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/zgemma/h9se/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/zgemma/h9se/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/zgemma/i55plus/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma i55plus ."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/zgemma/i55plus/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/zgemma/i55plus/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1407,7 +1419,7 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9combo/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma h9combo ."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/h9combo/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/h9combo/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h9combose/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma h9combose ."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/h9combose/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/h9combose/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1415,7 +1427,7 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/h10/rootfs.tar.bz2'):
os.system('echo "Please wait. System installation Zgemma h10 ."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/h10/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/h10/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/miraclebox/mini4k'):
os.system('echo "Please wait. System installation Miraclebox mini4k."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/miraclebox/mini4k/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/miraclebox/mini4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1447,27 +1459,27 @@ def NEOBootExtract(source, target, ZipDelete):
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/beyonwiz/v2'):
os.system('echo "Please wait. System installation beyonwiz v2 4K w toku..."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/beyonwiz/v2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/beyonwiz/v2/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/amiko/viper4k'):
os.system('echo "Please wait. System installation Amiko viper4k 4K w toku..."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/amiko/viper4k; tar -jxf ' + getNeoLocation() + 'ImagesUpload/amiko/viper4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/update/tmtwin4k'):
os.system('echo "Please wait. System installation tmtwin4k."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/update/tmtwin4k/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/update/tmtwin4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue/trio4k'):
os.system('echo "Please wait. System installation trio4k 4K Combo..."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/gigablue/trio4k; tar -jxf ' + getNeoLocation() + 'ImagesUpload/gigablue/trio4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/gigablue/ip4k'):
os.system('echo "Please wait. System installation gbip4k 4K..."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/gigablue/ip4k; tar -jxf ' + getNeoLocation() + 'ImagesUpload/gigablue/ip4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/protek4k'):
os.system('echo "Please wait. System installation protek4k..."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/protek4k; tar -jxf ' + getNeoLocation() + 'ImagesUpload/protek4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/bre2ze4k'):
os.system('echo "Please wait. System installation WWIO BRE2ZE 4K."')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/bre2ze4k; tar -jxf ' + getNeoLocation() + 'ImagesUpload/bre2ze4k/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
@@ -1476,36 +1488,36 @@ def NEOBootExtract(source, target, ZipDelete):
os.system('echo "Please wait. System installation spakowanego w plik tar.xz w toku..."')
os.system('cp -af ' + getNeoLocation() + 'ImagesUpload/' + source + '.tar.xz ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz; tar -jjxf ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.xz -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/' + source + '.tar.gz'):
os.system('echo "Please wait. System installation spakowanego w plik tar.gz w toku..."')
os.system('echo "Please wait. System installation spakowanego w plik tar.gz w toku..."')
os.system('cp -af ' + getNeoLocation() + 'ImagesUpload/' + source + '.tar.gz ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz; /bin/tar -xzvf ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/' + source + '.tar.bz2'):
os.system('echo "Please wait. System installation spakowanego w plik tar.bz2 w toku..."')
os.system('echo "Please wait. System installation spakowanego w plik tar.bz2 w toku..."')
os.system('cp -af ' + getNeoLocation() + 'ImagesUpload/' + source + '.tar.bz2 ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.bz2')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.bz2; tar -jxf ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.bz2 -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/' + source + '.mb'):
os.system('echo "Please wait. System installation spakowanego w plik .mb w toku..."')
os.system('echo "Please wait. System installation spakowanego w plik .mb w toku..."')
os.system('cp -af ' + getNeoLocation() + 'ImagesUpload/' + source + '.mb ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz')
cmd = 'chmod 777 ' + getNeoLocation() + 'ImagesUpload/*.tar.gz; tar -xzvf ' + getNeoLocation() + 'ImagesUpload/*.tar.gz -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
elif '.gz' in sourcefile4 :
elif '.gz' in sourcefile4:
os.system('cp -af ' + getNeoLocation() + 'ImagesUpload/*.tar.gz ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz')
cmd = '/bin/tar -xzvf ' + getNeoLocation() + 'ImagesUpload/rootfs.tar.gz -C ' + getNeoLocation() + 'ImageBoot/' + target + ' > /dev/null 2>&1'
rc = os.system(cmd)
if '.gz' in sourcefile4 :
rc = os.system(cmd)
if '.gz' in sourcefile4:
cmd = 'rm -rf ' + getNeoLocation() + 'ImagesUpload/*.gz ' ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
cmd = 'rm -f ' + getNeoLocation() + 'ImagesUpload/*.jpg ' ' > /dev/null 2>&1'
rc = os.system(cmd)
rc = os.system(cmd)
elif os.path.exists('' + getNeoLocation() + 'ImagesUpload/rootfs.bin'):
os.chdir('ImagesUpload')
os.system('mv -f rootfs.bin rootfs.bin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print ("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
os.system('mv -f rootfs.bin rootfs.bin')
os.system('echo "Instalacja - ubi_reader w toku..."')
print("[NeoBoot] Extracting UBIFS image and moving extracted image to our target")
cmd = 'chmod 777 ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py'
rc = os.system(cmd)
cmd = 'python ' + extensions_path + 'NeoBoot/ubi_reader/ubi_extract_files.py rootfs.bin -o ' + getNeoLocation() + 'ubi'
@@ -1521,5 +1533,5 @@ def NEOBootExtract(source, target, ZipDelete):
else:
os.system('echo "NeoBoot wykrył dłąd!!! Prawdopodobnie brak pliku instalacyjnego."')
return
#END
return
#END

View File

@@ -1,21 +1,21 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
import os
import time
from Tools.Directories import fileExists, pathExists
from Tools.CList import CList
from Components.SystemInfo import SystemInfo
from Components.Console import Console
from Plugins.Extensions.NeoBoot.files import Task
from Plugins.Extensions.NeoBoot.files import Task
if fileExists('/usr/lib/python3.8'):
from Components import Task
from Components import Task
else:
import Task
import Task
try:
from Task import LoggingTask
except:
from Components.Task import LoggingTask
except:
from Components.Task import LoggingTask
from Screens.Screen import Screen
from Components.ActionMap import ActionMap
from Components.MenuList import MenuList
@@ -23,20 +23,22 @@ from Components.Label import Label
from Components.Pixmap import Pixmap
from Screens.MessageBox import MessageBox
def readFile(filename):
file = open(filename)
data = file.read().strip()
file.close()
return data
def getProcMounts():
try:
mounts = open('/proc/mounts', 'r')
except IOError as ex:
print (("[Harddisk] Failed to open /proc/mounts"), ex )
print(("[Harddisk] Failed to open /proc/mounts"), ex)
return []
result = [ line.strip().split(' ') for line in mounts ]
result = [line.strip().split(' ') for line in mounts]
for item in result:
item[1] = item[1].replace('\\040', ' ')
@@ -44,7 +46,7 @@ def getProcMounts():
def getNonNetworkMediaMounts():
return [ x[1] for x in getProcMounts() if x[1].startswith('/media/') and not x[0].startswith('//') ]
return [x[1] for x in getProcMounts() if x[1].startswith('/media/') and not x[0].startswith('//')]
def isFileSystemSupported(filesystem):
@@ -55,7 +57,7 @@ def isFileSystemSupported(filesystem):
return False
except Exception as ex:
print (("[Harddisk] Failed to read /proc/filesystems:'"), ex )
print(("[Harddisk] Failed to read /proc/filesystems:'"), ex)
def findMountPoint(path):
@@ -69,16 +71,17 @@ def findMountPoint(path):
DEVTYPE_UDEV = 0
DEVTYPE_DEVFS = 1
class Harddisk():
def __init__(self, device, removable = False):
def __init__(self, device, removable=False):
self.device = device
if os.access('/dev/.udev', 0):
self.type = DEVTYPE_UDEV
elif os.access('/dev/.devfsd', 0):
self.type = DEVTYPE_DEVFS
else:
print ("[Harddisk] Unable to determine structure of /dev")
print("[Harddisk] Unable to determine structure of /dev")
self.type = -1
self.card = False
self.max_idle_time = 0
@@ -122,7 +125,7 @@ class Harddisk():
break
self.card = self.device[:2] == 'hd' and 'host0' not in self.dev_path
print ("[Harddisk] new device"), self.device, '->', self.dev_path, '->', self.disk_path
print("[Harddisk] new device"), self.device, '->', self.dev_path, '->', self.disk_path
if not removable and not self.card:
self.startIdle()
return
@@ -200,7 +203,7 @@ class Harddisk():
return readFile(self.sysfsPath('device/name'))
raise (Exception, ("[Harddisk] no hdX or sdX or mmcX"))
except Exception as e:
print ("[Harddisk] Failed to get model:"), e
print("[Harddisk] Failed to get model:"), e
return '-?-'
def free(self):
@@ -266,12 +269,12 @@ class Harddisk():
return 0
else:
cmd = 'umount ' + dev
print ("[Harddisk]"), cmd
print("[Harddisk]"), cmd
res = os.system(cmd)
return res >> 8
def createPartition(self):
cmd = 'printf "8,\n;0,0\n;0,0\n;0,0\ny\n" | sfdisk -f -uS ' + self.disk_path
cmd = 'printf "8,\n;0,0\n;0,0\n;0,0\ny\n" | sfdisk -f -uS ' + self.disk_path
res = os.system(cmd)
return res >> 8
@@ -294,7 +297,7 @@ class Harddisk():
parts = line.strip().split(' ')
fspath = os.path.realpath(parts[0])
if fspath == dev:
print ("[Harddisk] mounting:"), fspath
print("[Harddisk] mounting:"), fspath
cmd = 'mount -t auto ' + fspath
res = os.system(cmd)
return res >> 8
@@ -329,7 +332,7 @@ class Harddisk():
def createInitializeJob(self):
job = Task.Job(_('Initializing storage device...'))
size = self.diskSize()
print ("[HD] size: %s MB") % size
print("[HD] size: %s MB") % size
task = UnmountTask(job, self)
task = Task.PythonTask(job, _('Removing partition table'))
task.work = self.killPartitionTable
@@ -340,7 +343,7 @@ class Harddisk():
task.args.append('-z')
task.args.append(self.disk_path)
task = Task.ConditionTask(job, _('Waiting for partition'), timeoutCount=20)
task.check = lambda : not os.path.exists(self.partitionPath('1'))
task.check = lambda: not os.path.exists(self.partitionPath('1'))
task.weighting = 1
if os.path.exists('/usr/sbin/parted'):
use_parted = True
@@ -377,12 +380,12 @@ class Harddisk():
task.args.append('-uS')
task.args.append(self.disk_path)
if size > 128000:
print ("[HD] Detected >128GB disk, using 4k alignment")
print("[HD] Detected >128GB disk, using 4k alignment")
task.initial_input = '8,,L\n;0,0\n;0,0\n;0,0\ny\n'
else:
task.initial_input = ',,L\n;\n;\n;\ny\n'
task = Task.ConditionTask(job, _('Waiting for partition'))
task.check = lambda : os.path.exists(self.partitionPath('1'))
task.check = lambda: os.path.exists(self.partitionPath('1'))
task.weighting = 1
task = MkfsTask(job, _('Creating filesystem'))
big_o_options = ['dir_index']
@@ -526,7 +529,7 @@ class Harddisk():
class Partition():
def __init__(self, mountpoint, device = None, description = '', force_mounted = False):
def __init__(self, mountpoint, device=None, description='', force_mounted=False):
self.mountpoint = mountpoint
self.description = description
self.force_mounted = mountpoint and force_mounted
@@ -539,7 +542,7 @@ class Partition():
def stat(self):
if self.mountpoint:
return os.statvfs(self.mountpoint)
raise (OSError, "Device %s is not mounted") % self.device
raise (OSError, "Device %s is not mounted") % self.device
def free(self):
try:
@@ -564,7 +567,7 @@ class Partition():
return self.description
return self.description + '\t' + self.mountpoint
def mounted(self, mounts = None):
def mounted(self, mounts=None):
if self.force_mounted:
return True
else:
@@ -577,7 +580,7 @@ class Partition():
return False
def filesystem(self, mounts = None):
def filesystem(self, mounts=None):
if self.mountpoint:
if mounts is None:
mounts = getProcMounts()
@@ -621,9 +624,9 @@ class HarddiskManager():
('/media/ram', _('Ram disk')),
('/media/usb', _('USB stick')),
('/media/usb1', _('USB1 stick')),
('/media/usb2', _('USB2 stick')),
('/media/usb2', _('USB2 stick')),
('/', _('Internal flash')))
known = set([ os.path.normpath(a.mountpoint) for a in self.partitions if a.mountpoint ])
known = set([os.path.normpath(a.mountpoint) for a in self.partitions if a.mountpoint])
for m, d in p:
if m not in known and os.path.ismount(m):
self.partitions.append(Partition(mountpoint=m, description=d))
@@ -684,7 +687,7 @@ class HarddiskManager():
medium_found)
def enumerateBlockDevices(self):
print ("[Harddisk] enumerating block devices...")
print("[Harddisk] enumerating block devices...")
for blockdev in os.listdir('/sys/block'):
error, blacklisted, removable, is_cdrom, partitions, medium_found = self.addHotplugPartition(blockdev)
if not error and not blacklisted and medium_found:
@@ -711,14 +714,14 @@ class HarddiskManager():
return None
def addHotplugPartition(self, device, physdev = None):
def addHotplugPartition(self, device, physdev=None):
if not physdev:
dev, part = self.splitDeviceName(device)
try:
physdev = os.path.realpath('/sys/block/' + dev + '/device')[4:]
except OSError:
physdev = dev
print (("couldn't determine blockdev physdev for device"), device)
print(("couldn't determine blockdev physdev for device"), device)
error, blacklisted, removable, is_cdrom, partitions, medium_found = self.getBlockDevInfo(device)
if not blacklisted and medium_found:
@@ -739,14 +742,14 @@ class HarddiskManager():
partitions,
medium_found)
def addHotplugAudiocd(self, device, physdev = None):
def addHotplugAudiocd(self, device, physdev=None):
if not physdev:
dev, part = self.splitDeviceName(device)
try:
physdev = os.path.realpath('/sys/block/' + dev + '/device')[4:]
except OSError:
physdev = dev
print (("couldn't determine blockdev physdev for device"), device )
print(("couldn't determine blockdev physdev for device"), device)
error, blacklisted, removable, is_cdrom, partitions, medium_found = self.getBlockDevInfo(device)
if not blacklisted and medium_found:
@@ -796,11 +799,11 @@ class HarddiskManager():
def getCD(self):
return self.cd
def getMountedPartitions(self, onlyhotplug = False, mounts = None):
def getMountedPartitions(self, onlyhotplug=False, mounts=None):
if mounts is None:
mounts = getProcMounts()
parts = [ x for x in self.partitions if (x.is_hotplug or not onlyhotplug) and x.mounted(mounts) ]
devs = set([ x.device for x in parts ])
parts = [x for x in self.partitions if (x.is_hotplug or not onlyhotplug) and x.mounted(mounts)]
devs = set([x.device for x in parts])
for devname in devs.copy():
if not devname:
continue
@@ -808,7 +811,7 @@ class HarddiskManager():
if part and dev in devs:
devs.remove(dev)
return [ x for x in parts if not x.device or x.device in devs ]
return [x for x in parts if not x.device or x.device in devs]
def splitDeviceName(self, devname):
dev = devname[:3]
@@ -825,7 +828,7 @@ class HarddiskManager():
try:
description = readFile('/sys' + phys + '/model')
except IOError as s:
print (("couldn't read model: "), s)
print(("couldn't read model: "), s)
if part and part != 1:
description += _(' (Partition %d)') % part
@@ -844,7 +847,7 @@ class HarddiskManager():
self.partitions.remove(x)
self.on_partition_list_change('remove', x)
def setDVDSpeed(self, device, speed = 0):
def setDVDSpeed(self, device, speed=0):
ioctl_flag = int(21282)
if not device.startswith('/'):
device = '/dev/' + device
@@ -854,7 +857,7 @@ class HarddiskManager():
ioctl(cd.fileno(), ioctl_flag, speed)
cd.close()
except Exception as ex:
print ("[Harddisk] Failed to set %s speed to %s") % (device, speed), ex
print("[Harddisk] Failed to set %s speed to %s") % (device, speed), ex
class UnmountTask(Task.LoggingTask):
@@ -869,7 +872,7 @@ class UnmountTask(Task.LoggingTask):
dev = self.hdd.disk_path.split('/')[-1]
open('/dev/nomount.%s' % dev, 'wb').close()
except Exception as e:
print ("ERROR: Failed to create /dev/nomount file:"), e
print("ERROR: Failed to create /dev/nomount file:"), e
self.setTool('umount')
self.args.append('-f')
@@ -879,7 +882,7 @@ class UnmountTask(Task.LoggingTask):
self.mountpoints.append(dev)
if not self.mountpoints:
print ("UnmountTask: No mountpoints found?")
print("UnmountTask: No mountpoints found?")
self.cmd = 'true'
self.args = [self.cmd]
@@ -888,7 +891,7 @@ class UnmountTask(Task.LoggingTask):
try:
os.rmdir(path)
except Exception as ex:
print ("Failed to remove path '%s':") % path, ex
print("Failed to remove path '%s':") % path, ex
class MountTask(Task.LoggingTask):
@@ -902,7 +905,7 @@ class MountTask(Task.LoggingTask):
dev = self.hdd.disk_path.split('/')[-1]
os.unlink('/dev/nomount.%s' % dev)
except Exception as e:
print ("ERROR: Failed to remove /dev/nomount file:"), e
print("ERROR: Failed to remove /dev/nomount file:"), e
if self.hdd.mount_device is None:
dev = self.hdd.partitionPath('1')
@@ -932,7 +935,7 @@ class MkfsTask(Task.LoggingTask):
return
def processOutput(self, data):
print ("[Mkfs]"), data
print("[Mkfs]"), data
if 'Writing inode tables:' in data:
self.fsck_state = 'inode'
elif 'Creating journal' in data:
@@ -948,7 +951,7 @@ class MkfsTask(Task.LoggingTask):
d[1] = d[1].split('\x08', 1)[0]
self.setProgress(80 * int(d[0]) / int(d[1]))
except Exception as e:
print ("[Mkfs] E:"), e
print("[Mkfs] E:"), e
return
self.log.append(data)
@@ -981,7 +984,7 @@ class HarddiskSetup(Screen):
return
try:
from Task import job_manager
except:
except:
from Components.Task import job_manager
try:
job = self.action()
@@ -1030,6 +1033,7 @@ class HarddiskFsckSelection(HarddiskSelection):
harddiskmanager = HarddiskManager()
def isSleepStateDevice(device):
ret = os.popen('hdparm -C %s' % device).read()
if 'SG_IO' in ret or 'HDIO_DRIVE_CMD' in ret:
@@ -1042,7 +1046,7 @@ def isSleepStateDevice(device):
return None
def internalHDDNotSleeping(external = False):
def internalHDDNotSleeping(external=False):
state = False
if harddiskmanager.HDDCount():
for hdd in harddiskmanager.HDDList():

View File

@@ -2,6 +2,7 @@
from Tools.CList import CList
class Job(object):
NOT_STARTED, IN_PROGRESS, FINISHED, FAILED = range(4)
@@ -32,7 +33,7 @@ class Job(object):
if self.current_task == len(self.tasks):
return self.end
t = self.tasks[self.current_task]
jobprogress = t.weighting * t.progress / float(t.end) + sum([ task.weighting for task in self.tasks[:self.current_task] ])
jobprogress = t.weighting * t.progress / float(t.end) + sum([task.weighting for task in self.tasks[:self.current_task]])
return int(jobprogress * self.weightScale)
progress = property(getProgress)
@@ -59,7 +60,7 @@ class Job(object):
self.status = self.IN_PROGRESS
self.state_changed()
self.runNext()
sumTaskWeightings = sum([ t.weighting for t in self.tasks ]) or 1
sumTaskWeightings = sum([t.weighting for t in self.tasks]) or 1
self.weightScale = self.end / float(sumTaskWeightings)
def runNext(self):
@@ -70,29 +71,29 @@ class Job(object):
self.callback(self, None, [])
self.callback = None
else:
print ("still waiting for %d resident task(s) %s to finish") % (len(self.resident_tasks), str(self.resident_tasks))
print("still waiting for %d resident task(s) %s to finish") % (len(self.resident_tasks), str(self.resident_tasks))
else:
self.tasks[self.current_task].run(self.taskCallback)
self.state_changed()
return
def taskCallback(self, task, res, stay_resident = False):
def taskCallback(self, task, res, stay_resident=False):
cb_idx = self.tasks.index(task)
if stay_resident:
if cb_idx not in self.resident_tasks:
self.resident_tasks.append(self.current_task)
print ("task going resident:"), task
print("task going resident:"), task
else:
print ("task keeps staying resident:"), task
print("task keeps staying resident:"), task
return
if len(res):
print (">>> Error:"), res
print(">>> Error:"), res
self.status = self.FAILED
self.state_changed()
self.callback(self, task, res)
if cb_idx != self.current_task:
if cb_idx in self.resident_tasks:
print ("resident task finished:"), task
print("resident task finished:"), task
self.resident_tasks.remove(cb_idx)
if res == []:
self.state_changed()
@@ -151,7 +152,7 @@ class Task(object):
def setCmdline(self, cmdline):
self.cmdline = cmdline
def checkPreconditions(self, immediate = False):
def checkPreconditions(self, immediate=False):
not_met = []
if immediate:
preconditions = self.immediate_preconditions
@@ -176,9 +177,9 @@ class Task(object):
if self.cwd is not None:
self.container.setCWD(self.cwd)
if not self.cmd and self.cmdline:
print ("execute:"), self.container.execute(self.cmdline), self.cmdline
print("execute:"), self.container.execute(self.cmdline), self.cmdline
else:
print ("execute:"), self.container.execute(self.cmd, *self.args), ' '.join(self.args)
print("execute:"), self.container.execute(self.cmd, *self.args), ' '.join(self.args)
if self.initial_input:
self.writeInput(self.initial_input)
return
@@ -187,7 +188,7 @@ class Task(object):
def run(self, callback):
failed_preconditions = self.checkPreconditions(True) + self.checkPreconditions(False)
if failed_preconditions:
print ("[Task] preconditions failed")
print("[Task] preconditions failed")
callback(self, failed_preconditions)
return
self.callback = callback
@@ -195,7 +196,7 @@ class Task(object):
self.prepare()
self._run()
except Exception as ex:
print ("[Task] exception:"), ex
print("[Task] exception:"), ex
self.postconditions = [FailedPostcondition(ex)]
self.finish()
@@ -221,7 +222,7 @@ class Task(object):
self.output_line = self.output_line[i + 1:]
def processOutputLine(self, line):
print ("[Task %s]") % self.name, line[:-1]
print("[Task %s]") % self.name, line[:-1]
def processFinished(self, returncode):
self.returncode = returncode
@@ -232,7 +233,7 @@ class Task(object):
self.container.kill()
self.finish(aborted=True)
def finish(self, aborted = False):
def finish(self, aborted=False):
self.afterRun()
not_met = []
if aborted:
@@ -276,7 +277,7 @@ class LoggingTask(Task):
self.log = []
def processOutput(self, data):
print ("[%s]") % self.name, data,
print("[%s]") % self.name, data,
self.log.append(data)
@@ -313,7 +314,7 @@ class PythonTask(Task):
class ConditionTask(Task):
def __init__(self, job, name, timeoutCount = None):
def __init__(self, job, name, timeoutCount=None):
Task.__init__(self, job, name)
self.timeoutCount = timeoutCount
@@ -360,7 +361,7 @@ class JobManager:
self.active_job = None
return
def AddJob(self, job, onSuccess = None, onFail = None):
def AddJob(self, job, onSuccess=None, onFail=None):
job.onSuccess = onSuccess
if onFail is None:
job.onFail = self.notifyFailed
@@ -388,7 +389,7 @@ class JobManager:
return False
def jobDone(self, job, task, problems):
print ("job"), job, ("completed with"), problems, ("in"), task
print("job"), job, ("completed with"), problems, ("in"), task
if problems:
if not job.onFail(job, task, problems):
self.errorCB(False)
@@ -408,10 +409,10 @@ class JobManager:
def errorCB(self, answer):
if answer:
print ("retrying job")
print("retrying job")
self.active_job.retry()
else:
print ("not retrying job.")
print("not retrying job.")
self.failed_jobs.append(self.active_job)
self.active_job = None
self.kick()
@@ -463,12 +464,12 @@ class ToolExistsPrecondition(Condition):
import os
if task.cmd[0] == '/':
self.realpath = task.cmd
print ("[Task.py][ToolExistsPrecondition] WARNING: usage of absolute paths for tasks should be avoided!")
print("[Task.py][ToolExistsPrecondition] WARNING: usage of absolute paths for tasks should be avoided!")
return os.access(self.realpath, os.X_OK)
self.realpath = task.cmd
path = os.environ.get('PATH', '').split(os.pathsep)
path.append(task.cwd + '/')
absolutes = filter(lambda file: os.access(file, os.X_OK), map(lambda directory, file = task.cmd: os.path.join(directory, file), path))
absolutes = filter(lambda file: os.access(file, os.X_OK), map(lambda directory, file=task.cmd: os.path.join(directory, file), path))
if absolutes:
self.realpath = absolutes[0]
return True
@@ -519,4 +520,4 @@ class FailedPostcondition(Condition):
return self.exception is None or self.exception == 0
job_manager = JobManager()
job_manager = JobManager()

View File

@@ -3,21 +3,23 @@
from __future__ import print_function
from Components.Language import language
from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_LANGUAGE
import os, gettext
import os
import gettext
PluginLanguageDomain = 'NeoBoot'
PluginLanguagePath = 'Extensions/NeoBoot/locale'
def localeInit():
lang = language.getLanguage()[:2]
os.environ['LANGUAGE'] = lang
print ("[NeoBoot] set language to "), lang
print("[NeoBoot] set language to "), lang
gettext.bindtextdomain(PluginLanguageDomain, resolveFilename(SCOPE_PLUGINS, PluginLanguagePath))
def _(txt):
t = gettext.dgettext(PluginLanguageDomain, txt)
if t == txt:
print ("[NeoBoot] fallback to default translation for"), txt
print("[NeoBoot] fallback to default translation for"), txt
t = gettext.dgettext('enigma2', txt)
return t

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from enigma import getDesktop
from Plugins.Plugin import PluginDescriptor
from Screens.ChoiceBox import ChoiceBox
@@ -29,11 +29,12 @@ import fileinput
import re
import os
from Screens.VirtualKeyBoard import VirtualKeyBoard
import gettext, os
from Plugins.Extensions.NeoBoot.files.stbbranding import getTunerModel
import gettext
import os
from Plugins.Extensions.NeoBoot.files.stbbranding import getTunerModel
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
class ManagerDevice(Screen):
screenwidth = getDesktop(0).size().width()
if screenwidth and screenwidth == 1920:
@@ -42,7 +43,7 @@ class ManagerDevice(Screen):
<widget name="key_red" position="14,17" zPosition="1" size="271,49" font="dugme;30" halign="center" valign="center" backgroundColor="red" transparent="1" foregroundColor="red" />
<widget name="key_green" position="289,17" zPosition="1" size="369,49" font="dugme;30" halign="center" valign="center" backgroundColor="green" transparent="1" foregroundColor="green" />
<widget name="key_yellow" position="661,17" zPosition="1" size="302,49" font="dugme;30" halign="center" valign="center" backgroundColor="yellow" transparent="1" foregroundColor="yellow" />
<widget name="key_blue" position="967,17" zPosition="1" size="257,49" font="dugme;30" halign="center" valign="center" backgroundColor="blue" transparent="1" foregroundColor="blue" />
<widget name="key_blue" position="967,17" zPosition="1" size="257,49" font="dugme;30" halign="center" valign="center" backgroundColor="blue" transparent="1" foregroundColor="blue" />
<eLabel position="18,70" size="1204,2" backgroundColor="blue" foregroundColor="blue" name="linia" />
<eLabel position="18,670" size="1204,2" backgroundColor="blue" foregroundColor="blue" name="linia" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="orange" position="536,674" size="197,56" text="Exit - Back" transparent="1" />
@@ -53,10 +54,10 @@ class ManagerDevice(Screen):
</screen>"""
else:
skin = """<screen name="ManagerDevice" position="center,center" size="752,460">
<eLabel backgroundColor="black" font="Regular; 30" foregroundColor="orange" position="315,405" size="169,51" text="Exit - Back" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 30" foregroundColor="orange" position="315,405" size="169,51" text="Exit - Back" transparent="1" />
<widget name="key_red" position="21,0" zPosition="1" size="151,47" font="Regular;20" halign="center" valign="center" backgroundColor="red" transparent="1" foregroundColor="red" />
<widget name="key_green" position="216,0" zPosition="1" size="140,47" font="Regular;20" halign="center" valign="center" backgroundColor="green" transparent="1" foregroundColor="green" />
<widget name="key_yellow" position="400,0" zPosition="1" size="140,47" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" foregroundColor="yellow" />
<widget name="key_yellow" position="400,0" zPosition="1" size="140,47" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" foregroundColor="yellow" />
<widget name="key_blue" position="587,0" zPosition="1" size="149,46" font="Regular;20" halign="center" valign="center" backgroundColor="blue" transparent="1" foregroundColor="blue" />
<widget source="list" render="Listbox" position="18,63" size="721,341" scrollbarMode="showOnDemand">
<convert type="TemplatedMultiContent">\n\t\t\t\t{"template": [\n\t\t\t\t MultiContentEntryText(pos = (90, 0), size = (600, 30), font=0, text = 0),\n\t\t\t\t MultiContentEntryText(pos = (110, 30), size = (600, 50), font=1, flags = RT_VALIGN_TOP, text = 1),\n\t\t\t\t MultiContentEntryPixmapAlphaBlend(pos = (0, 0), size = (80, 80)),\n\t\t\t\t],\n\t\t\t\t"fonts": [gFont("Regular", 24),gFont("Regular", 20)],\n\t\t\t\t"itemHeight": 85\n\t\t\t\t}\n\t\t\t</convert>
@@ -64,7 +65,6 @@ class ManagerDevice(Screen):
<widget name="lab1" zPosition="2" position="29,111" size="699,40" font="Regular;22" halign="center" transparent="1" />
</screen>"""
def __init__(self, session):
Screen.__init__(self, session)
Screen.setTitle(self, _('Mount Manager'))
@@ -90,7 +90,7 @@ class ManagerDevice(Screen):
def Format_ext3(self):
try:
if fileExists('/etc/vtiversion.info') or fileExists('/etc/bhversion'):
if fileExists('/etc/vtiversion.info') or fileExists('/etc/bhversion'):
self.session.open(MessageBox, _("This option is available only from openpli or derivatives."), MessageBox.TYPE_INFO, timeout=10)
else:
from Harddisk import HarddiskSelection
@@ -103,7 +103,7 @@ class ManagerDevice(Screen):
self.session.openWithCallback(self.updateList, HarddiskSelection)
def ExitBack(self):
self.close()
self.close()
def setWindowTitle(self):
self.setTitle(_('Mount Manager'))
@@ -129,7 +129,7 @@ class ManagerDevice(Screen):
for cb in self.onChangedEntry:
cb(name, desc)
def updateList(self, result = None, retval = None, extra_args = None):
def updateList(self, result=None, retval=None, extra_args=None):
scanning = _('Wait please while scanning for devices...')
self['lab1'].setText(scanning)
self.activityTimer.start(10)
@@ -160,7 +160,7 @@ class ManagerDevice(Screen):
device2 = re.sub('[0-9]', '', device)
devicetype = path.realpath('/sys/block/' + device2 + '/device')
d2 = device
name = _('HARD DISK: ')
name = _('HARD DISK: ')
mypixmap = '' + LinkNeoBoot + '/images/dev_hdd.png'
model = file('/sys/block/' + device2 + '/device/model').read()
model = str(model).replace('\n', '')
@@ -170,13 +170,13 @@ class ManagerDevice(Screen):
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
if devicetype.find('usb1') != -1:
name = _('USB1: ')
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
if devicetype.find('usb2') != -1:
name = _('USB2: ')
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
if devicetype.find('card') != -1:
name = _('CARD: ')
mypixmap = '' + LinkNeoBoot + '/images/dev_sd.png'
mypixmap = '' + LinkNeoBoot + '/images/dev_sd.png'
name = name + model
self.Console = Console()
@@ -275,17 +275,17 @@ class ManagerDevice(Screen):
else:
self.session.open(MessageBox, _('This Device is already mounted as HDD.'), MessageBox.TYPE_INFO, timeout=10, close_on_any_key=True)
def add_fstab(self, result = None, retval = None, extra_args = None):
def add_fstab(self, result=None, retval=None, extra_args=None):
self.device = extra_args[0]
self.mountp = extra_args[1]
self.device_uuid = 'UUID=' + result.split('UUID=')[1].split(' ')[0].replace('"', '')
if not path.exists(self.mountp):
mkdir(self.mountp, 493)
file('/etc/fstab.tmp', 'w').writelines([ l for l in file('/etc/fstab').readlines() if '/media/hdd' not in l ])
file('/etc/fstab.tmp', 'w').writelines([l for l in file('/etc/fstab').readlines() if '/media/hdd' not in l])
rename('/etc/fstab.tmp', '/etc/fstab')
file('/etc/fstab.tmp', 'w').writelines([ l for l in file('/etc/fstab').readlines() if self.device not in l ])
file('/etc/fstab.tmp', 'w').writelines([l for l in file('/etc/fstab').readlines() if self.device not in l])
rename('/etc/fstab.tmp', '/etc/fstab')
file('/etc/fstab.tmp', 'w').writelines([ l for l in file('/etc/fstab').readlines() if self.device_uuid not in l ])
file('/etc/fstab.tmp', 'w').writelines([l for l in file('/etc/fstab').readlines() if self.device_uuid not in l])
rename('/etc/fstab.tmp', '/etc/fstab')
out = open('/etc/fstab', 'a')
line = self.device_uuid + '\t/media/hdd\tauto\tdefaults\t0 0\n'
@@ -304,8 +304,8 @@ class ManagerDevice(Screen):
class DevicesConf(Screen, ConfigListScreen):
screenwidth = getDesktop(0).size().width()
if screenwidth and screenwidth == 1920:
skin = """<screen name="DevicesConfFullHD" position="400,150" size="976,728" title="Choose where to mount your devices to:">
<eLabel backgroundColor="black" font="baslk; 25" foregroundColor="red" position="150,900" size="800,30" text=" Exit - Back " transparent="1" />
skin = """<screen name="DevicesConfFullHD" position="400,150" size="976,728" title="Choose where to mount your devices to:">
<eLabel backgroundColor="black" font="baslk; 25" foregroundColor="red" position="150,900" size="800,30" text=" Exit - Back " transparent="1" />
<widget name="key_red" position="110,13" zPosition="1" size="335,67" font="baslk;30" halign="center" valign="center" backgroundColor="red" transparent="1" foregroundColor="red" />
<widget name="key_green" position="549,15" zPosition="1" size="362,65" font="baslk;30" halign="center" valign="center" backgroundColor="green" transparent="1" foregroundColor="green" />
<widget name="config" position="33,179" size="891,385" font="Regular;21" scrollbarMode="showOnDemand" />
@@ -330,7 +330,7 @@ class DevicesConf(Screen, ConfigListScreen):
'red': self.close,
'back': self.close})
self.updateList()
def updateList(self):
self.list = []
list2 = []
@@ -382,11 +382,11 @@ class DevicesConf(Screen, ConfigListScreen):
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
if devicetype.find('usb2') != -1:
name = _('USB2: ')
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
if devicetype.find('card') != -1:
name = _('CARD: ')
mypixmap = '' + LinkNeoBoot + '/images/dev_sd.png'
name = name + model
f = open('/proc/mounts', 'r')
for line in f.readlines():
@@ -423,7 +423,7 @@ class DevicesConf(Screen, ConfigListScreen):
('/media/cf', '/media/cf'),
('/media/card', '/media/card')]))
if dtype == 'Linux':
dtype = 'ext2', 'ext3', 'ext4'
dtype = 'ext2', 'ext3', 'ext4'
else:
dtype = 'auto'
item.value = d1.strip()
@@ -432,7 +432,7 @@ class DevicesConf(Screen, ConfigListScreen):
if des != '' and self.list.append(res):
pass
def saveMypoints(self):
def saveMypoints(self):
self.Console = Console()
mycheck = False
for x in self['config'].list:
@@ -461,8 +461,8 @@ class DevicesConf(Screen, ConfigListScreen):
self.messagebox = self.session.open(MessageBox, _('Return to installation...'), MessageBox.TYPE_INFO)
self.close()
def add_fstab(self, result = None, retval = None, extra_args = None):
print ("[MountManager] RESULT:"), result
def add_fstab(self, result=None, retval=None, extra_args=None):
print("[MountManager] RESULT:"), result
if result:
self.device = extra_args[0]
self.mountp = extra_args[1]
@@ -476,9 +476,9 @@ class DevicesConf(Screen, ConfigListScreen):
self.device_type = 'ntfs'
if not path.exists(self.mountp):
mkdir(self.mountp, 493)
file('/etc/fstab.tmp', 'w').writelines([ l for l in file('/etc/fstab').readlines() if self.device not in l ])
file('/etc/fstab.tmp', 'w').writelines([l for l in file('/etc/fstab').readlines() if self.device not in l])
rename('/etc/fstab.tmp', '/etc/fstab')
file('/etc/fstab.tmp', 'w').writelines([ l for l in file('/etc/fstab').readlines() if self.device_uuid not in l ])
file('/etc/fstab.tmp', 'w').writelines([l for l in file('/etc/fstab').readlines() if self.device_uuid not in l])
rename('/etc/fstab.tmp', '/etc/fstab')
out = open('/etc/fstab', 'a')
line = self.device_uuid + '\t' + self.mountp + '\t' + self.device_type + '\tdefaults\t0 0\n'
@@ -496,20 +496,17 @@ class DevicesConf(Screen, ConfigListScreen):
# line2 = '"' + self.device_uuid2 + '"' + ':' + self.mountp + '\n'
# out2.write(line2)
# out2.close()
#SetDiskLabel - dziekuje autorowi
class SetDiskLabel(Screen):
screenwidth = getDesktop(0).size().width()
if screenwidth and screenwidth == 1920:
skin ="""<screen name="SetDiskLabel" position="400,188" size="1100,601" title="Set Disk Label v1.1">
if screenwidth and screenwidth == 1920:
skin = """<screen name="SetDiskLabel" position="400,188" size="1100,601" title="Set Disk Label v1.1">
<widget name="infoTXT" position="22,62" zPosition="1" size="591,86" font="baslk;28" halign="left" valign="center" backgroundColor="transpBlack" transparent="1" />
<widget name="devlist" position="685,60" size="310,132" font="Regular;20" valign="center" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_left.png" position="628,86" size="40,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_right.png" position="1015,85" size="40,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_up.png" position="630,381" size="40,42" alphatest="on" />
@@ -524,7 +521,7 @@ class SetDiskLabel(Screen):
<ePixmap pixmap="skin_default/buttons/key_green.png" position="259,535" size="40,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/key_yellow.png" position="567,535" size="40,40" alphatest="on" />
<ePixmap pixmap="skin_default/buttons/key_blue.png" position="814,532" size="40,40" alphatest="on" />
<widget name="key_red" position="60,526" zPosition="1" size="196,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
<widget name="key_green" position="304,526" zPosition="1" size="255,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
<widget name="key_yellow" position="613,526" zPosition="1" size="196,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
@@ -556,7 +553,7 @@ class SetDiskLabel(Screen):
def __init__(self, session):
global liczymy
Screen.__init__(self, session)
self.labList = ['hdd', 'usb','card', 'cf']
self.labList = ['hdd', 'usb', 'card', 'cf']
self.list = []
self.sprDev()
self.devlist = []

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
#from __future__ import print_function
from enigma import eConsoleAppContainer
from Screens.Screen import Screen
@@ -19,19 +19,19 @@ class Console(Screen):
# def __init__(self, session, title = 'Console', cmdlist = None, finishedCallback = None, closeOnSuccess = False):
# Screen.__init__(self, session)
def __init__(self, session, title = _('Console'), cmdlist = None, finishedCallback = None, closeOnSuccess = False):
def __init__(self, session, title=_('Console'), cmdlist=None, finishedCallback=None, closeOnSuccess=False):
Screen.__init__(self, session)
self.finishedCallback = finishedCallback
self.closeOnSuccess = closeOnSuccess
self.errorOcurred = False
self['key_red'] = Label(_('Stop action'))
self['key_green'] = Label(_('Hide Console'))
self['key_green'] = Label(_('Hide Console'))
self['text'] = ScrollLabel('')
self['summary_description'] = StaticText('')
self['actions'] = ActionMap(['WizardActions', 'DirectionActions', 'ColorActions'], {'ok': self.cancel,
'back': self.cancel,
'up': self.key_up,
'down': self.key_down,
'down': self.key_down,
'green': self.key_green,
'red': self.key_red}, -1)
self.cmdlist = cmdlist
@@ -59,7 +59,7 @@ class Console(Screen):
def startRun(self):
self['text'].setText(_('Execution progress:') + '\n\n')
self['summary_description'].setText(_('Execution progress:'))
print ("[Console] executing in run"), self.run, (" the command:"), self.cmdlist[self.run]
print("[Console] executing in run"), self.run, (" the command:"), self.cmdlist[self.run]
if self.doExec(self.cmdlist[self.run]):
self.runFinished(-1)
@@ -77,7 +77,7 @@ class Console(Screen):
self.toggleScreenHide(True)
if self.cancel_msg:
self.cancel_msg.close()
from Tools.Directories import fileExists
from Tools.Directories import fileExists
if not fileExists('/etc/vtiversion.info'):
lastpage = self['text'].isAtLastPage()
self['text'].appendText('\n' + _('Execution finished!!'))
@@ -126,7 +126,7 @@ class Console(Screen):
else:
self.cancel_msg = self.session.openWithCallback(self.cancelCB, MessageBox, _('Cancel execution?'), type=MessageBox.TYPE_YESNO, default=False)
def cancelCB(self, ret = None):
def cancelCB(self, ret=None):
self.cancel_msg = None
if ret:
self.cancel(True)
@@ -147,7 +147,7 @@ class Console(Screen):
else:
yield source
def saveOutputTextCB(self, ret = None):
def saveOutputTextCB(self, ret=None):
if ret:
from os import path
failtext = _("Path to save not exist: '/tmp/'")
@@ -186,7 +186,7 @@ class Console(Screen):
else:
self.output_file = ''
def toggleScreenHide(self, setshow = False):
def toggleScreenHide(self, setshow=False):
if self.screen_hide or setshow:
self.show()
else:
@@ -206,7 +206,7 @@ class Console(Screen):
return rd
def cancel(self, force = False):
def cancel(self, force=False):
if self.screen_hide:
self.toggleScreenHide()
return
@@ -218,4 +218,4 @@ class Console(Screen):
self.container.kill()
def dataAvail(self, str):
self['text'].appendText(str)
self['text'].appendText(str)

View File

@@ -1,24 +1,25 @@
# -*- coding: utf-8 -*-
#from Plugins.Extensions.NeoBoot.__init__ import _
#from Plugins.Extensions.NeoBoot.__init__ import _
import sys
import os
import time
import time
from Tools.Directories import fileExists, SCOPE_PLUGINS
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
LogFileObj = None
def Log(param = ''):
def Log(param=''):
global LogFileObj
#first close object if exists
if param.lower() in ['open','write','append','close']:
if param.lower() in ['open', 'write', 'append', 'close']:
if LogFileObj is not None:
LogFileObj.close()
if LogFileObj.closed:
LogFileObj = None
try:
with open('/tmp/NeoBoot.log','a') as f:
with open('/tmp/NeoBoot.log', 'a') as f:
f.write('LogFile closed properly\n')
f.close()
except Exception:
@@ -27,7 +28,7 @@ def Log(param = ''):
print("ERROR closing LogFile!!!")
#second create object if does not exist
if LogFileObj is None:
if param.lower() in ['open','write']:
if param.lower() in ['open', 'write']:
LogFileObj = open(LogFile, "w")
elif param.lower() in ['append']:
LogFileObj = open(LogFile, "a")
@@ -36,30 +37,36 @@ def Log(param = ''):
elif param.lower() in ['flush']:
LogFileObj.flush()
return LogFileObj
def clearMemory():
with open("/proc/sys/vm/drop_caches", "w") as f:
f.write("1\n")
f.close()
def LogCrashGS(line):
log_file = open('%sImageBoot/neoboot.log' % getNeoLocation() , 'a')
log_file = open('%sImageBoot/neoboot.log' % getNeoLocation(), 'a')
log_file.write(line)
log_file.close()
def fileCheck(f, mode = 'r'):
return fileExists(f, mode) and f
def fileCheck(f, mode='r'):
return fileExists(f, mode) and f
# if not IsImageName():
# from Components.PluginComponent import plugins
# plugins.reloadPlugins()
def IsImageName():
if fileExists("/etc/issue"):
for line in open("/etc/issue"):
if "BlackHole" in line or "vuplus" in line:
return True
return False
return False
def mountp():
pathmp = []
if os.path.isfile('/proc/mounts'):
@@ -71,365 +78,398 @@ def mountp():
pathmp.append('/tmp/')
return pathmp
def getSupportedTuners():
supportedT=''
supportedT = ''
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/stbinfo.cfg'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/stbinfo.cfg', 'r') as f:
lines = f.read()
f.close()
if lines.find("%s" % getBoxHostName()) != -1:
supportedT='%s' % getBoxHostName()
if lines.find("%s" % getBoxHostName()) != -1:
supportedT = '%s' % getBoxHostName()
return supportedT
def getFreespace(dev):
statdev = os.statvfs(dev)
space = statdev.f_bavail * statdev.f_frsize / 1024
print ("[NeoBoot] Free space on %s = %i kilobytes") % (dev, space)
return space
print("[NeoBoot] Free space on %s = %i kilobytes") % (dev, space)
return space
#check install
def getCheckInstal1():
neocheckinstal='UNKNOWN'
neocheckinstal = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/install'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/install', 'r') as f:
lines1 = f.read()
f.close()
if not lines1.find('/dev/') != -1:
neocheckinstal='1'
neocheckinstal = '1'
return neocheckinstal
def getCheckInstal2():
neocheckinstal='UNKNOWN'
neocheckinstal = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location', 'r') as f:
lines2 = f.read()
f.close()
if not lines2.find('/media/') != -1:
neocheckinstal='2'
neocheckinstal = '2'
return neocheckinstal
def getCheckInstal3():
neocheckinstal='UNKNOWN'
neocheckinstal = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neo.sh'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neo.sh', 'r') as f:
lines3 = f.read()
f.close()
if not lines3.find('/bin/mount') != -1:
neocheckinstal='3'
neocheckinstal = '3'
return neocheckinstal
#check imageATV
def getImageATv():
atvimage='UNKNOWN'
atvimage = 'UNKNOWN'
if os.path.exists('/etc/issue.net'):
with open('/etc/issue.net', 'r') as f:
lines = f.read()
f.close()
if lines.find('openatv') != -1:
atvimage='okfeedCAMatv'
atvimage = 'okfeedCAMatv'
return atvimage
#check install
def getNeoLocation():
locatino='UNKNOWN'
locatino = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location', 'r') as f:
locatino = f.readline().strip()
f.close()
f.close()
return locatino
#check ext
def getFormat():
neoformat='UNKNOWN'
neoformat = 'UNKNOWN'
if os.path.exists('/proc/mounts'):
with open('/proc/mounts', 'r') as f:
lines = f.read()
f.close()
if lines.find('ext2') != -1:
neoformat='ext2'
neoformat = 'ext2'
elif lines.find('ext3') != -1:
neoformat='ext3'
neoformat = 'ext3'
elif lines.find('ext4') != -1:
neoformat='ext4'
neoformat = 'ext4'
elif lines.find('nfs') != -1:
neoformat='nfs'
neoformat = 'nfs'
return neoformat
return neoformat
def getNEO_filesystems():
neo_filesystems='UNKNOWN'
neo_filesystems = 'UNKNOWN'
if os.path.exists('/tmp/.neo_format'):
with open('/tmp/.neo_format', 'r') as f:
lines = f.read()
f.close()
if lines.find('ext2') != -1:
neo_filesystems='1'
neo_filesystems = '1'
elif lines.find('ext3') != -1:
neo_filesystems='1'
neo_filesystems = '1'
elif lines.find('ext4') != -1:
neo_filesystems='1'
neo_filesystems = '1'
elif lines.find('nfs') != -1:
neo_filesystems='1'
neo_filesystems = '1'
return neo_filesystems
#typ procesora arm lub mips
def getCPUtype():
cpu='UNKNOWN'
cpu = 'UNKNOWN'
if os.path.exists('/proc/cpuinfo'):
with open('/proc/cpuinfo', 'r') as f:
lines = f.read()
f.close()
if lines.find('ARMv7') != -1:
cpu='ARMv7'
cpu = 'ARMv7'
elif lines.find('mips') != -1:
cpu='MIPS'
return cpu
cpu = 'MIPS'
return cpu
#check install
def getFSTAB():
install='UNKNOWN'
install = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/reading_blkid'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/reading_blkid', 'r') as f:
lines = f.read()
f.close()
if lines.find('UUID') != -1:
install='UUID'
install = 'UUID'
elif not lines.find('UUID') != -1:
install='NOUUID'
return install
install = 'NOUUID'
return install
def getFSTAB2():
install='UNKNOWN'
install = 'UNKNOWN'
if os.path.exists('/etc/fstab'):
with open('/etc/fstab', 'r') as f:
lines = f.read()
f.close()
if lines.find('UUID') != -1:
install='OKinstall'
install = 'OKinstall'
elif not lines.find('UUID') != -1:
install='NOUUID'
return install
install = 'NOUUID'
return install
def getINSTALLNeo():
neoinstall='UNKNOWN'
neoinstall = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/installNeo'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/installNeo', 'r') as f:
lines = f.read()
f.close()
if lines.find('/dev/sda1') != -1:
neoinstall='/dev/sda1'
neoinstall = '/dev/sda1'
elif lines.find('/dev/sda2') != -1:
neoinstall='/dev/sda2'
neoinstall = '/dev/sda2'
elif lines.find('/dev/sdb1') != -1:
neoinstall='/dev/sdb1'
neoinstall = '/dev/sdb1'
elif lines.find('/dev/sdb2') != -1:
neoinstall='/dev/sdb2'
neoinstall = '/dev/sdb2'
elif lines.find('/dev/sdc1') != -1:
neoinstall='/dev/sdc1'
neoinstall = '/dev/sdc1'
elif lines.find('/dev/sdd1') != -1:
neoinstall='/dev/sdd1'
neoinstall = '/dev/sdd1'
elif lines.find('/dev/sde1') != -1:
neoinstall='/dev/sde1'
neoinstall = '/dev/sde1'
elif lines.find('/dev/sdf1') != -1:
neoinstall='/dev/sdf1'
neoinstall = '/dev/sdf1'
return neoinstall
def getLocationMultiboot():
LocationMultiboot='UNKNOWN'
def getLocationMultiboot():
LocationMultiboot = 'UNKNOWN'
if os.path.exists('/media/sda1/ImageBoot'):
LocationMultiboot='/dev/sda1'
LocationMultiboot = '/dev/sda1'
if os.path.exists('/media/sda2/ImageBoot'):
LocationMultiboot='/dev/sda2'
LocationMultiboot = '/dev/sda2'
if os.path.exists('/media/sdb1/ImageBoot'):
LocationMultiboot='/dev/sdb1'
LocationMultiboot = '/dev/sdb1'
if os.path.exists('/media/sdb2/ImageBoot'):
LocationMultiboot='/dev/sdb2'
LocationMultiboot = '/dev/sdb2'
if os.path.exists('/media/sdc1/ImageBoot'):
LocationMultiboot='/dev/sdc1'
LocationMultiboot = '/dev/sdc1'
if os.path.exists('/media/sdd1/ImageBoot'):
LocationMultiboot='/dev/sdd1'
LocationMultiboot = '/dev/sdd1'
if os.path.exists('/media/sde1/ImageBoot'):
LocationMultiboot='/dev/sde1'
LocationMultiboot = '/dev/sde1'
if os.path.exists('/media/sdf1/ImageBoot'):
LocationMultiboot='/dev/sdf1'
LocationMultiboot = '/dev/sdf1'
return LocationMultiboot
def getLabelDisck():
label='UNKNOWN'
label = 'UNKNOWN'
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/reading_blkid'):
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/reading_blkid', 'r') as f:
lines = f.read()
f.close()
if lines.find('LABEL=') != -1:
label='LABEL='
return label
label = 'LABEL='
return label
#checking device neo
#checking device neo
def getNeoMount():
neo='UNKNOWN'
neo = 'UNKNOWN'
if os.path.exists('/proc/mounts'):
with open('/proc/mounts', 'r') as f:
lines = f.read()
f.close()
if lines.find('/dev/sda1 /media/hdd') != -1:
neo='hdd_install_/dev/sda1'
neo = 'hdd_install_/dev/sda1'
elif lines.find('/dev/sdb1 /media/hdd') != -1:
neo='hdd_install_/dev/sdb1'
neo = 'hdd_install_/dev/sdb1'
elif lines.find('/dev/sda2 /media/hdd') != -1:
neo='hdd_install_/dev/sda2'
neo = 'hdd_install_/dev/sda2'
elif lines.find('/dev/sdb2 /media/hdd') != -1:
neo='hdd_install_/dev/sdb2'
neo = 'hdd_install_/dev/sdb2'
elif lines.find('/dev/sdc1 /media/hdd') != -1:
neo='hdd_install_/dev/sdc1'
neo = 'hdd_install_/dev/sdc1'
elif lines.find('/dev/sdd1 /media/hdd') != -1:
neo='hdd_install_/dev/sdd1'
neo = 'hdd_install_/dev/sdd1'
elif lines.find('/dev/sde1 /media/hdd') != -1:
neo='hdd_install_/dev/sde1'
neo = 'hdd_install_/dev/sde1'
elif lines.find('/dev/sdf1 /media/hdd') != -1:
neo='hdd_install_/dev/sdf1'
neo = 'hdd_install_/dev/sdf1'
return neo
return neo
def getNeoMount2():
neo='UNKNOWN'
neo = 'UNKNOWN'
if os.path.exists('/proc/mounts'):
with open('/proc/mounts', 'r') as f:
lines = f.read()
f.close()
if lines.find('/dev/sda1 /media/usb') != -1:
neo='usb_install_/dev/sda1'
neo = 'usb_install_/dev/sda1'
elif lines.find('/dev/sdb1 /media/usb') != -1:
neo='usb_install_/dev/sdb1'
neo = 'usb_install_/dev/sdb1'
elif lines.find('/dev/sdb2 /media/usb') != -1:
neo='usb_install_/dev/sdb2'
neo = 'usb_install_/dev/sdb2'
elif lines.find('/dev/sdc1 /media/usb') != -1:
neo='usb_install_/dev/sdc1'
neo = 'usb_install_/dev/sdc1'
elif lines.find('/dev/sdd1 /media/usb') != -1:
neo='usb_install_/dev/sdd1'
neo = 'usb_install_/dev/sdd1'
elif lines.find('/dev/sde1 /media/usb') != -1:
neo='usb_install_/dev/sde1'
neo = 'usb_install_/dev/sde1'
elif lines.find('/dev/sdf1 /media/usb') != -1:
neo='usb_install_/dev/sdf1'
neo = 'usb_install_/dev/sdf1'
elif lines.find('/dev/sda1 /media/usb2') != -1:
neo='usb_install_/dev/sda1'
neo = 'usb_install_/dev/sda1'
elif lines.find('/dev/sdb1 /media/usb2') != -1:
neo='usb_install_/dev/sdb1'
neo = 'usb_install_/dev/sdb1'
elif lines.find('/dev/sdb2 /media/usb2') != -1:
neo='usb_install_/dev/sdb2'
neo = 'usb_install_/dev/sdb2'
elif lines.find('/dev/sdc1 /media/usb2') != -1:
neo='usb_install_/dev/sdc1'
neo = 'usb_install_/dev/sdc1'
elif lines.find('/dev/sdd1 /media/usb2') != -1:
neo='usb_install_/dev/sdd1'
neo = 'usb_install_/dev/sdd1'
elif lines.find('/dev/sde1 /media/usb2') != -1:
neo='usb_install_/dev/sde1'
neo = 'usb_install_/dev/sde1'
elif lines.find('/dev/sdf1 /media/usb2') != -1:
neo='usb_install_/dev/sdf1'
neo = 'usb_install_/dev/sdf1'
return neo
def getNeoMount3():
neo='UNKNOWN'
neo = 'UNKNOWN'
if os.path.exists('/proc/mounts'):
with open('/proc/mounts', 'r') as f:
lines = f.read()
f.close()
if lines.find('/dev/sda1 /media/cf') != -1:
neo='cf_install_/dev/sda1'
neo = 'cf_install_/dev/sda1'
elif lines.find('/dev/sdb1 /media/cf') != -1:
neo='cf_install_/dev/sdb1'
neo = 'cf_install_/dev/sdb1'
return neo
def getNeoMount4():
neo='UNKNOWN'
neo = 'UNKNOWN'
if os.path.exists('/proc/mounts'):
with open('/proc/mounts', 'r') as f:
lines = f.read()
f.close()
f.close()
if lines.find('/dev/sda1 /media/card') != -1:
neo='card_install_/dev/sda1'
neo = 'card_install_/dev/sda1'
elif lines.find('/dev/sdb1 /media/card') != -1:
neo='card_install_/dev/sdb1'
neo = 'card_install_/dev/sdb1'
return neo
def getNeoMount5():
neo='UNKNOWN'
neo = 'UNKNOWN'
if os.path.exists('/proc/mounts'):
with open('/proc/mounts', 'r') as f:
lines = f.read()
f.close()
if lines.find('/dev/sda1 /media/mmc') != -1:
neo='mmc_install_/dev/sda1'
neo = 'mmc_install_/dev/sda1'
elif lines.find('/dev/sdb1 /media/mmc') != -1:
neo='mmc_install_/dev/sdb1'
neo = 'mmc_install_/dev/sdb1'
return neo
#zwraca typ chipa prcesora
#zwraca typ chipa prcesora
def getCPUSoC():
chipset='UNKNOWN'
chipset = 'UNKNOWN'
if os.path.exists('/proc/stb/info/chipset'):
with open('/proc/stb/info/chipset', 'r') as f:
chipset = f.readline().strip()
f.close()
f.close()
if chipset == '7405(with 3D)':
chipset = '7405'
return chipset
def getCPUSoCModel():
devicetree='UNKNOWN'
devicetree = 'UNKNOWN'
if os.path.exists('/proc/device-tree/model'):
with open('/proc/device-tree/model', 'r') as f:
devicetree = f.readline().strip()
f.close()
return devicetree
f.close()
return devicetree
#zwraca wybrane image w neoboot do uruchomienia
def getImageNeoBoot():
imagefile='UNKNOWN'
if os.path.exists('%sImageBoot/.neonextboot' % getNeoLocation() ):
with open('%sImageBoot/.neonextboot' % getNeoLocation() , 'r') as f:
#zwraca wybrane image w neoboot do uruchomienia
def getImageNeoBoot():
imagefile = 'UNKNOWN'
if os.path.exists('%sImageBoot/.neonextboot' % getNeoLocation()):
with open('%sImageBoot/.neonextboot' % getNeoLocation(), 'r') as f:
imagefile = f.readline().strip()
f.close()
f.close()
return imagefile
#zwraca model vuplus
#zwraca model vuplus
def getBoxVuModel():
vumodel='UNKNOWN'
vumodel = 'UNKNOWN'
if fileExists("/proc/stb/info/vumodel") and not fileExists("/proc/stb/info/boxtype"):
with open('/proc/stb/info/vumodel', 'r') as f:
vumodel = f.readline().strip()
f.close()
f.close()
elif fileExists("/proc/stb/info/boxtype") and not fileExists("/proc/stb/info/vumodel"):
with open('/proc/stb/info/boxtype', 'r') as f:
vumodel = f.readline().strip()
f.close()
return vumodel
def getVuModel():
if fileExists("/proc/stb/info/vumodel") and not fileExists("/proc/stb/info/boxtype"):
brand = "Vu+"
f = open("/proc/stb/info/vumodel",'r')
f = open("/proc/stb/info/vumodel", 'r')
procmodel = f.readline().strip()
f.close()
model = procmodel.title().replace("olose", "olo SE").replace("olo2se", "olo2 SE").replace("2", "²")
return model
return model
#zwraca nazwe stb z pliku hostname
#zwraca nazwe stb z pliku hostname
def getBoxHostName():
if os.path.exists('/etc/hostname'):
with open('/etc/hostname', 'r') as f:
myboxname = f.readline().strip()
f.close()
return myboxname
f.close()
return myboxname
#zwraca vuplus/vumodel
#zwraca vuplus/vumodel
def getTunerModel(): #< neoboot.py
BOX_NAME = ''
if os.path.isfile('/proc/stb/info/vumodel') and not os.path.isfile("/proc/stb/info/boxtype"):
@@ -440,8 +480,10 @@ def getTunerModel(): #< neoboot.py
elif os.path.isfile('proc/stb/info/model') and not os.path.isfile("/proc/stb/info/mid"):
BOX_NAME = open('/proc/stb/info/model').read().strip()
return BOX_NAME
#zwraca strukture folderu zip - vuplus/vumodel
def getImageFolder():
if os.path.isfile('/proc/stb/info/vumodel'):
BOX_NAME = getBoxModelVU()
@@ -449,6 +491,8 @@ def getImageFolder():
return ImageFolder
#zwraca nazwe kernela z /lib/modules
def getKernelVersion():
try:
return open('/proc/version', 'r').read().split(' ', 4)[2].split('-', 2)[0]
@@ -456,57 +500,58 @@ def getKernelVersion():
return _('unknown')
# czysci pamiec
def runCMDS(cmdsList):
clearMemory()
if isinstance(cmdsList, (list, tuple)):
myCMD = '\n'.join(cmdsList)# + '\n'
ret = os.system(myCMD)
return rett
return rett
def getImageDistroN():
image='Internal storage'
def getImageDistroN():
image = 'Internal storage'
if fileExists('/.multinfo') and fileExists ('%sImageBoot/.imagedistro' % getNeoLocation() ):
with open('%sImageBoot/.imagedistro' % getNeoLocation() , 'r') as f:
if fileExists('/.multinfo') and fileExists('%sImageBoot/.imagedistro' % getNeoLocation()):
with open('%sImageBoot/.imagedistro' % getNeoLocation(), 'r') as f:
image = f.readline().strip()
f.close()
elif not fileExists('/.multinfo') and fileExists('/etc/vtiversion.info'):
f = open("/etc/vtiversion.info",'r')
f = open("/etc/vtiversion.info", 'r')
imagever = f.readline().strip().replace("Release ", " ")
f.close()
image = imagever
elif not fileExists('/.multinfo') and fileExists('/etc/bhversion'):
f = open("/etc/bhversion",'r')
f = open("/etc/bhversion", 'r')
imagever = f.readline().strip()
f.close()
image = imagever
# elif not fileExists('/.multinfo') and fileExists('/etc/vtiversion.info'):
# image = 'VTI Team Image '
# image = 'VTI Team Image '
elif fileExists('/.multinfo') and fileExists('/etc/bhversion'):
image = 'Flash ' + ' ' + getBoxHostName()
elif fileExists('/.multinfo') and fileExists('/etc/vtiversion.info'):
image = 'Flash ' + ' ' + getBoxHostName()
elif fileExists('/usr/lib/enigma2/python/boxbranding.so') and not fileExists('/.multinfo'):
elif fileExists('/usr/lib/enigma2/python/boxbranding.so') and not fileExists('/.multinfo'):
from boxbranding import getImageDistro
image = getImageDistro()
elif fileExists('/media/InternalFlash/etc/issue.net') and fileExists('/.multinfo') and not fileExists('%sImageBoot/.imagedistro' % getNeoLocation() ):
elif fileExists('/media/InternalFlash/etc/issue.net') and fileExists('/.multinfo') and not fileExists('%sImageBoot/.imagedistro' % getNeoLocation()):
obraz = open('/media/InternalFlash/etc/issue.net', 'r').readlines()
imagetype = obraz[0][:-3]
image = imagetype
elif fileExists('/etc/issue.net') and not fileExists('/.multinfo'):
obraz = open('/etc/issue.net', 'r').readlines()
imagetype = obraz[0][:-3]
image = imagetype
image = imagetype
else:
image = 'Inernal Flash ' + ' ' + getBoxHostName()
@@ -535,6 +580,7 @@ def getKernelImageVersion():
return kernelimage
def getTypBoxa():
if not fileExists('/etc/typboxa'):
os.system('touch /etc/typboxa')
@@ -610,6 +656,7 @@ def getTypBoxa():
return typboxa
def getImageVersionString():
try:
if os.path.isfile('/var/lib/opkg/status'):
@@ -624,6 +671,7 @@ def getImageVersionString():
return _('unavailable')
def getModelString():
try:
file = open('/proc/stb/info/boxtype', 'r')
@@ -633,6 +681,7 @@ def getModelString():
except IOError:
return 'unknown'
def getChipSetString():
try:
f = open('/proc/stb/info/chipset', 'r')
@@ -641,7 +690,8 @@ def getChipSetString():
return str(chipset.lower().replace('\n', '').replace('bcm', ''))
except IOError:
return 'unavailable'
def getCPUString():
try:
file = open('/proc/cpuinfo', 'r')
@@ -660,6 +710,7 @@ def getCPUString():
except IOError:
return 'unavailable'
def getCpuCoresString():
try:
file = open('/proc/cpuinfo', 'r')
@@ -678,14 +729,16 @@ def getCpuCoresString():
return cores
except IOError:
return 'unavailable'
def getEnigmaVersionString():
import enigma
enigma_version = enigma.getEnigmaVersionString()
if '-(no branch)' in enigma_version:
enigma_version = enigma_version[:-12]
return enigma_version
def getKernelVersionString():
try:
f = open('/proc/version', 'r')
@@ -695,6 +748,7 @@ def getKernelVersionString():
except:
return _('unknown')
def getHardwareTypeString():
try:
if os.path.isfile('/proc/stb/info/boxtype'):
@@ -708,6 +762,7 @@ def getHardwareTypeString():
return _('unavailable')
def getImageTypeString():
try:
return open('/etc/issue').readlines()[-2].capitalize().strip()[:-6]
@@ -716,12 +771,14 @@ def getImageTypeString():
return _('undefined')
def getMachineBuild():
try:
return open('/proc/version', 'r').read().split(' ', 4)[2].split('-', 2)[0]
except:
return 'unknown'
def getVuBoxModel():
if fileExists('/proc/stb/info/vumodel'):
try:
@@ -771,60 +828,61 @@ def getMachineProcModel():
elif BOX_NAME == 'uno4k':
GETMACHINEPROCMODEL = 'bcm7252S'
elif BOX_NAME == 'solo4k':
GETMACHINEPROCMODEL = 'bcm7376'
GETMACHINEPROCMODEL = 'bcm7376'
elif BOX_NAME == 'zero4K':
GETMACHINEPROCMODEL = 'bcm72604'
elif BOX_NAME == 'uno4kse':
GETMACHINEPROCMODEL = ''
GETMACHINEPROCMODEL = ''
procmodel = getMachineProcModel()
return procmodel
def getMountPointAll():
os.system('touch ' + LinkNeoBoot + '/files/mountpoint.sh; echo "#!/bin/sh\n" >> ' + LinkNeoBoot + '/files/mountpoint.sh; chmod 0755 ' + LinkNeoBoot + '/files/mountpoint.sh')
if getNeoMount() == 'hdd_install_/dev/sda1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/hdd\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/hdd\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sda2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sda2\n/bin/mount /dev/sda2 /media/hdd\n/bin/mount /dev/sda2 /media/sda2" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sdb2\n/bin/mount /dev/sdb2 /media/hdd\n/bin/mount /dev/sdb2 /media/sdb2" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('touch ' + LinkNeoBoot + '/files/mountpoint.sh; echo "#!/bin/sh\n" >> ' + LinkNeoBoot + '/files/mountpoint.sh; chmod 0755 ' + LinkNeoBoot + '/files/mountpoint.sh')
if getNeoMount() == 'hdd_install_/dev/sda1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/hdd\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/hdd\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sda2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sda2\n/bin/mount /dev/sda2 /media/hdd\n/bin/mount /dev/sda2 /media/sda2" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\nmkdir -p /media/sdb2\n/bin/mount /dev/sdb2 /media/hdd\n/bin/mount /dev/sdb2 /media/sdb2" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
if getNeoMount2() == 'usb_install_/dev/sdb1':
os.system('echo "\numount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/usb\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sda1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/sda1\n/bin/mount /dev/sda1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdb2':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdb2\n/bin/mount /dev/sdb2 /media/sdb2\n/bin/mount /dev/sdb2 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdc1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdc1\n/bin/mount /dev/sdc1 /media/sdb2\n/bin/mount /dev/sdc1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdd1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdd1\n/bin/mount /dev/sdd1 /media/sdd1\n/bin/mount /dev/sdd1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sde1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sde1\n/bin/mount /dev/sde1 /media/sde1\n/bin/mount /dev/sde1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdf1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdf1\n/bin/mount /dev/sdf1 /media/sdf1\n/bin/mount /dev/sdf1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount3() == 'cf_install_/dev/sda1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\nmkdir -p /media/sdb1\n/bin/mount /dev/sda1 /media/cf\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount3() == 'cf_install_/dev/sdb1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/cf\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
if getNeoMount2() == 'usb_install_/dev/sdb1':
os.system('echo "\numount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/usb\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sda1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/sda1\n/bin/mount /dev/sda1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdb2':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdb2\n/bin/mount /dev/sdb2 /media/sdb2\n/bin/mount /dev/sdb2 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdc1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdc1\n/bin/mount /dev/sdc1 /media/sdb2\n/bin/mount /dev/sdc1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdd1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdd1\n/bin/mount /dev/sdd1 /media/sdd1\n/bin/mount /dev/sdd1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sde1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sde1\n/bin/mount /dev/sde1 /media/sde1\n/bin/mount /dev/sde1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdf1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\nmkdir -p /media/sdf1\n/bin/mount /dev/sdf1 /media/sdf1\n/bin/mount /dev/sdf1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount4() == 'card_install_/dev/sda1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/card\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount4() == 'card_install_/dev/sdb1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/card\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount3() == 'cf_install_/dev/sda1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\nmkdir -p /media/sdb1\n/bin/mount /dev/sda1 /media/cf\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount3() == 'cf_install_/dev/sdb1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/cf\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount5() == 'mmc_install_/dev/sda1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/mmc\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount5() == 'mmc_install_/dev/sdb1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/mmc\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('echo "\n\nexit 0" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount4() == 'card_install_/dev/sda1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/card\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount4() == 'card_install_/dev/sdb1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/card\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount5() == 'mmc_install_/dev/sda1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\nmkdir -p /media/sda1\n/bin/mount /dev/sda1 /media/mmc\n/bin/mount /dev/sda1 /media/sda1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount5() == 'mmc_install_/dev/sdb1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\nmkdir -p /media/sdb1\n/bin/mount /dev/sdb1 /media/mmc\n/bin/mount /dev/sdb1 /media/sdb1" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('echo "\n\nexit 0" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
def getMountPointNeo():
os.system('' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('echo ' + getLocationMultiboot() + ' > ' + LinkNeoBoot + '/bin/install; chmod 0755 ' + LinkNeoBoot + '/bin/install')
os.system('' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('echo ' + getLocationMultiboot() + ' > ' + LinkNeoBoot + '/bin/install; chmod 0755 ' + LinkNeoBoot + '/bin/install')
if getLocationMultiboot() == '/dev/sda1':
out = open('' + LinkNeoBoot + '/files/neo.sh', 'w')
out.write('#!/bin/sh\n\n/bin/mount /dev/sda1 ' + getNeoLocation() + ' \n\nexit 0')
@@ -844,7 +902,7 @@ def getMountPointNeo():
elif getLocationMultiboot() == '/dev/sdc1':
out = open('' + LinkNeoBoot + '/files/neo.sh', 'w')
out.write('#!/bin/sh\n\n/bin/mount /dev/sdc1 ' + getNeoLocation() + ' \n\nexit 0')
out.close()
out.close()
elif getLocationMultiboot() == '/dev/sdd1':
out = open('' + LinkNeoBoot + '/files/neo.sh', 'w')
out.write('#!/bin/sh\n\n/bin/mount /dev/sdd1 ' + getNeoLocation() + ' \n\nexit 0')
@@ -859,49 +917,49 @@ def getMountPointNeo():
out.close()
os.system('chmod 755 ' + LinkNeoBoot + '/files/neo.sh')
def getMountPointNeo2():
#---------------------------------------------
os.system('touch ' + LinkNeoBoot + '/files/mountpoint.sh; echo "#!/bin/sh" > ' + LinkNeoBoot + '/files/mountpoint.sh; chmod 0755 ' + LinkNeoBoot + '/files/mountpoint.sh')
if getNeoMount() == 'hdd_install_/dev/sda1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sda1 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sdb1 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sda2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sda2 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sda2 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('touch ' + LinkNeoBoot + '/files/mountpoint.sh; echo "#!/bin/sh" > ' + LinkNeoBoot + '/files/mountpoint.sh; chmod 0755 ' + LinkNeoBoot + '/files/mountpoint.sh')
if getNeoMount() == 'hdd_install_/dev/sda1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sda1 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb1':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sdb1 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sda2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sda2 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount() == 'hdd_install_/dev/sdb2':
os.system('echo "umount -l /media/hdd\nmkdir -p /media/hdd\n/bin/mount /dev/sda2 /media/hdd" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
if getNeoMount2() == 'usb_install_/dev/sdb1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdb1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sda1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sda1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdb2':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdb2 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdc1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdc1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdd1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdd1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sde1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sde1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdf1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdf1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount3() == 'cf_install_/dev/sda1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\n/bin/mount /dev/sda1 /media/cf" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount3() == 'cf_install_/dev/sdb1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\n/bin/mount /dev/sdb1 /media/cf" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
if getNeoMount2() == 'usb_install_/dev/sdb1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdb1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sda1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sda1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdb2':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdb2 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdc1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdc1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdd1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdd1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sde1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sde1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount2() == 'usb_install_/dev/sdf1':
os.system('echo "umount -l /media/usb\nmkdir -p /media/usb\n/bin/mount /dev/sdf1 /media/usb" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount4() == 'card_install_/dev/sda1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\n/bin/mount /dev/sda1 /media/card" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount4() == 'card_install_/dev/sdb1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\n/bin/mount /dev/sdb1 /media/card" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount3() == 'cf_install_/dev/sda1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\n/bin/mount /dev/sda1 /media/cf" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount3() == 'cf_install_/dev/sdb1':
os.system('echo "umount -l /media/cf\nmkdir -p /media/cf\n/bin/mount /dev/sdb1 /media/cf" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount5() == 'mmc_install_/dev/sda1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\n/bin/mount /dev/sda1 /media/mmc" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount5() == 'mmc_install_/dev/sdb1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\n/bin/mount /dev/sdb1 /media/mmc" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount4() == 'card_install_/dev/sda1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\n/bin/mount /dev/sda1 /media/card" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount4() == 'card_install_/dev/sdb1':
os.system('echo "umount -l /media/card\nmkdir -p /media/card\n/bin/mount /dev/sdb1 /media/card" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
#---------------------------------------------
elif getNeoMount5() == 'mmc_install_/dev/sda1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\n/bin/mount /dev/sda1 /media/mmc" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
elif getNeoMount5() == 'mmc_install_/dev/sdb1':
os.system('echo "umount -l /media/mmc\nmkdir -p /media/mmc\n/bin/mount /dev/sdb1 /media/mmc" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
os.system('echo "\n\nexit 0" >> ' + LinkNeoBoot + '/files/mountpoint.sh')
boxbrand = sys.modules[__name__]

View File

@@ -1,105 +1,103 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
import os
from os import system
import time
import time
from Tools.Directories import fileExists, SCOPE_PLUGINS
def getAccesDate():
timego=''
def getAccesDate():
timego = ''
dana = getTestOutTime() # etc Nie! Szukana liczba jest wieksza!
strzal = getTestInTime() # tmp Nie! Szukana liczba jest mniejsza!
strzal = getTestInTime() # tmp Nie! Szukana liczba jest mniejsza!
if strzal == dana:
timego='access'
timego = 'access'
elif strzal < dana:
timego='isaccess'
timego = 'isaccess'
else:
timego='timeoff'
os.system('echo "19700101" > /usr/lib/periodon/.kodn')
timego = 'timeoff'
os.system('echo "19700101" > /usr/lib/periodon/.kodn')
return timego
def getTestCzas():
mytestnC=''
if os.path.exists('/usr/lib/periodon/.accessdate'):
mytestnC = ''
if os.path.exists('/usr/lib/periodon/.accessdate'):
with open('/usr/lib/periodon/.accessdate', 'r') as f:
mytestnC = f.readline().strip()
f.close()
f.close()
return mytestnC
def getTestToTest():
mytestnb=''
if os.path.exists('/tmp/.nkod'):
mytestnb = ''
if os.path.exists('/tmp/.nkod'):
with open('/tmp/.nkod', 'r') as f:
mytestnb = f.readline().strip()
f.close()
f.close()
return mytestnb
def getTestIn():
neopluspro='UNKNOWN'
neopluspro = 'UNKNOWN'
if os.path.exists('/usr/lib/periodon/.kodn'):
with open('/usr/lib/periodon/.kodn', 'r') as f:
lines = f.read()
f.close()
if lines.find('1234' + getTestToTest() + '') != -1:
neopluspro='1234%s' % getTestToTest()
return neopluspro
neopluspro = '1234%s' % getTestToTest()
return neopluspro
def getTestOut():
neoplus='UNKNOWN'
neoplus = 'UNKNOWN'
if os.path.exists('/tmp/.nkod'):
with open('/tmp/.nkod', 'r') as f:
lines2 = f.read()
f.close()
if lines2.find("%s" %getTestToTest()) != -1:
neoplus='1234%s' % getTestToTest()
return neoplus
f.close()
if lines2.find("%s" % getTestToTest()) != -1:
neoplus = '1234%s' % getTestToTest()
return neoplus
def getAccessN():
neopro='UNKNOWN'
neopro = 'UNKNOWN'
if os.path.exists('/usr/lib/periodon/.kodn'):
with open('/usr/lib/periodon/.kodn', 'r') as f:
lines3 = f.read()
f.close()
if lines3.find('1234') != -1:
neopro='1234'
f.close()
if lines3.find('1234') != -1:
neopro = '1234'
elif not lines3.find('1234') != -1:
neopro='1235'
return neopro
neopro = '1235'
return neopro
def getTestInTime():
mydatein='UNKNOWN'
def getTestInTime():
mydatein = 'UNKNOWN'
if os.path.exists('/tmp/.finishdate'):
with open('/tmp/.finishdate', 'r') as f:
mydatein = f.readline().strip()
f.close()
return mydatein
f.close()
return mydatein
def getTestOutTime():
mydateout='UNKNOWN'
mydateout = 'UNKNOWN'
if os.path.exists('/usr/lib/periodon/.accessdate'):
with open('/usr/lib/periodon/.accessdate', 'r') as f:
mydateout = f.readline().strip()
f.close()
f.close()
return mydateout
def getButtonPin():
mypin='UNKNOWN'
if os.path.exists('/usr/lib/periodon'):
mypin = 'UNKNOWN'
if os.path.exists('/usr/lib/periodon'):
out = open('/usr/lib/periodon/.kodn', 'w')
out.write('1234%s' % getTestToTest())
out.close()
mypin='pinok'
return mypin
out.close()
mypin = 'pinok'
return mypin

File diff suppressed because it is too large Load Diff

View File

@@ -5,11 +5,11 @@ import os
# darog69 = ./neoskins/darog69/skin_darog69.py
### ImageChooseFULLHD - darog69
ImageChooseFULLHD ="""
ImageChooseFULLHD = """
<screen name="NeoBootImageChoose" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
<widget name="progreso" position="594,590" size="530,10" borderWidth="1" zPosition="3" />
<ePixmap position="center,0" size="1920,1080" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/darog69/skin3.png" />
<widget name="config" position="1290,256" size="595,380" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/darog69/selektor.png" itemHeight="43" zPosition="3" font="baslk;32" scrollbarMode="showOnDemand" foregroundColor="#99FFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="yellow" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="config" position="1290,256" size="595,380" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/darog69/selektor.png" itemHeight="43" zPosition="3" font="baslk;32" scrollbarMode="showOnDemand" foregroundColor="#99FFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="yellow" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<ePixmap position="54,1008" zPosition="-7" size="1809,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek.png" />
<ePixmap position="71,903" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,820" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
@@ -21,10 +21,10 @@ ImageChooseFULLHD ="""
<ePixmap position="1305,660" zPosition="5" size="565,107" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/logo.png" alphatest="on" />
<eLabel position="70,615" size="1080,2" backgroundColor="red" foregroundColor="red" name="linia" />
<widget name="device_icon" position="123,476" size="146,136" alphatest="on" zPosition="2" />
<widget name="key_red" position="80,1010" zPosition="1" size="567,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="key_green" position="692,1010" zPosition="1" size="325,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="key_red" position="80,1010" zPosition="1" size="567,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="key_green" position="692,1010" zPosition="1" size="325,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="key_yellow" position="1030,1010" zPosition="1" size="547,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="yellow" />
<widget name="key_blue" position="1600,1010" zPosition="1" size="260,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="blue" />
<widget name="key_blue" position="1600,1010" zPosition="1" size="260,40" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="blue" />
<eLabel backgroundColor="black" font="Regular; 30" foregroundColor="red" position="60,25" size="400,50" text=" NeoMultiBoot " valign="center" transparent="1" />
<ePixmap position="65,429" size="73,42" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/darog69/menu.png" alphatest="on" zPosition="6" />
<widget name="key_menu" position="165,420" size="269,45" font="Regular;30" zPosition="1" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="yellow" /> <eLabel backgroundColor="black" font="Regular; 30" foregroundColor="#808080" position="90,659" size="80,46" text="1 &gt;" valign="center" transparent="1" />
@@ -40,20 +40,20 @@ ImageChooseFULLHD ="""
<widget name="label5" position="840,163" zPosition="1" size="305,66" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="blue" />
<widget name="label7" position="1074,324" zPosition="1" size="70,66" font="Regular;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label8" position="67,324" zPosition="1" size="1004,66" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
<widget name="label9" position="841,25" zPosition="1" size="292,50" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="label9" position="841,25" zPosition="1" size="292,50" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="label10" position="990,420" zPosition="1" size="125,55" font="Regular;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="label13" position="599,420" zPosition="1" size="374,55" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label15" position="322,573" zPosition="1" size="265,40" font="Regular;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget source="session.VideoPicture" render="Pig" position="586,625" size="645,328" zPosition="3" backgroundColor="transparent" />
<widget name="label14" position="470,25" zPosition="1" size="350,50" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label19" position="75,909" size="498,43" font="Regular;22" halign="left" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="orange" />
<widget name="label14" position="470,25" zPosition="1" size="350,50" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label19" position="75,909" size="498,43" font="Regular;22" halign="left" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="orange" />
<widget name="label6" position="550,235" zPosition="1" size="594,84" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="yellow" />
<widget name="label17" position="619,164" size="213,66" font="Regular;30" halign="right" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
<widget name="label16" position="1137,25" zPosition="1" size="142,50" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label20" position="1295,25" zPosition="1" size="625,50" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="label17" position="619,164" size="213,66" font="Regular;30" halign="right" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
<widget name="label16" position="1137,25" zPosition="1" size="142,50" font="Regular;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label20" position="1295,25" zPosition="1" size="625,50" font="Regular;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
</screen>
"""
###

View File

@@ -5,7 +5,7 @@ import os
# darog69 = ./neoskins/darog69_Ustym4kpro/skin_darog69_Ustym4kpro.py
### ImageChooseFULLHD - darog69_Ustym4kpro
ImageChooseFULLHD ="""
ImageChooseFULLHD = """
<screen name="NeoBootImageChoose" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
<widget name="progreso" position="595,590" size="530,15" borderWidth="1" zPosition="3" />
<ePixmap position="center,0" zPosition="-3" size="1920,1080" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/darog69_Ustym4kpro/skin.png" />
@@ -51,11 +51,9 @@ ImageChooseFULLHD ="""
<widget name="label14" position="595,25" zPosition="1" size="350,56" font="Regular;35" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label15" position="322,584" zPosition="1" size="265,42" font="Regular;35" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="label19" position="150,910" zPosition="1" size="750,45" font="Regular;35" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="unff00" />
</screen>
"""
###

View File

@@ -4,23 +4,23 @@ from Screens.Screen import Screen
from Components.Pixmap import Pixmap
import os
#Colors (#AARRGGBB)
#Colors (#AARRGGBB)
#____Recommended colors - Zalecane kolory :
#color name="white" value="#ffffff"
#color name="darkwhite" value="#00dddddd"
#color name="red" value="#f23d21"
#color name="green" value="#389416"
#color name="blue" value="#0064c7"
#color name="yellow" value="#bab329"
#color name="orange" value="#00ffa500"
#color name="gray" value="#808080"
#color name="lightgrey" value="#009b9b9b"
#color name="white" value="#ffffff"
#color name="darkwhite" value="#00dddddd"
#color name="red" value="#f23d21"
#color name="green" value="#389416"
#color name="blue" value="#0064c7"
#color name="yellow" value="#bab329"
#color name="orange" value="#00ffa500"
#color name="gray" value="#808080"
#color name="lightgrey" value="#009b9b9b"
# green = '#00389416' lub #00389416
# red = '#00ff2525'
# yellow = '#00ffe875'
# orange = '#00ff7f50'
# seledynowy = #00FF00
# jasny-blue = #99FFFF
# jasny-blue = #99FFFF
# Zamiast font=Regular ktory nie rozpoznaje polskich znakow np. na VTi, mozesz zmienic na ponizsze font="*:
# font - genel
@@ -28,15 +28,15 @@ import os
# font - tasat
# font - dugme
# <widget name="config" position="1177,256" size="703,717" itemHeight="43" font="genel;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
# <widget name="config" position="1177,256" size="703,717" itemHeight="43" font="genel;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
###____ Skin Ultra HD - ImageChooseFULLHD ___ mod. gutosie___
ImageChooseFULLHD ="""
ImageChooseFULLHD = """
<screen name="ImageChooseFULLHD" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#99FFFF" position="70,50" size="298,55" valign="center" text="NEOBoot Multi-image" transparent="1" />
<widget name="config" position="1177,250" size="668,715" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" itemHeight="45" font="dugme;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="progreso" position="590,600" size="542,10" borderWidth="1" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/skin.png" position="center,center" zPosition="-7" size="1920,1080" />
<widget name="config" position="1177,250" size="668,715" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" itemHeight="45" font="dugme;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="progreso" position="590,600" size="542,10" borderWidth="1" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/skin.png" position="center,center" zPosition="-7" size="1920,1080" />
<ePixmap position="54,981" zPosition="-7" size="1809,55" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek.png" />
<ePixmap position="71,903" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,820" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
@@ -55,10 +55,10 @@ ImageChooseFULLHD ="""
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/red.png" position="80,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/green.png" position="640,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellow.png" position="1035,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="1570,990" size="34,38" zPosition="1" alphatest="blend" />
<widget name="key_menu" position="230,425" zPosition="1" size="300,30" font="dugme;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ffe875" />
<ePixmap position="80,426" size="75,31" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/menu.png" transparent="1" alphatest="blend" />
<ePixmap position="158,427" size="70,31" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/arrowleft.png" alphatest="blend" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="1570,990" size="34,38" zPosition="1" alphatest="blend" />
<widget name="key_menu" position="230,425" zPosition="1" size="300,30" font="dugme;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ffe875" />
<ePixmap position="80,426" size="75,31" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/menu.png" transparent="1" alphatest="blend" />
<ePixmap position="158,427" size="70,31" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/arrowleft.png" alphatest="blend" zPosition="3" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#00dddddd" position="85,660" size="59,45" valign="center" text="1 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#00dddddd" position="85,742" size="59,45" valign="center" text="2 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#00dddddd" position="85,826" size="61,45" valign="center" text="3 &gt;" transparent="1" />
@@ -89,100 +89,100 @@ ImageChooseFULLHD ="""
###____ Skin Ultra HD - ImageChooseULTRAHD ___ mod. gutosie___
ImageChooseULTRAHD ="""
<screen name="NeoBootImageChoose" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="config" position="210,480" size="2100,510" itemHeight="102" font="genel;60" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1020" size="2100,3" backgroundColor="#0027408B" />
<widget name="label2" position="252,1050" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label4" position="252,1140" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label8" position="252,1230" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label5" position="1062,1050" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label6" position="1062,1140" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label7" position="1062,1230" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<eLabel position="210,1350" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="210,1410" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_1_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1512" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_2_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1614" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_3_UHD.png" zPosition="1" alphatest="blend" />
<widget position="330,1410" size="660,78" name="key_1" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1512" size="660,78" name="key_2" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1614" size="660,78" name="key_3" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="device_icon" position="1110,1428" size="216,252" zPosition="1" transparent="1" alphatest="blend" />
<widget name="label3" position="1410,1428" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="progreso" position="1416,1536" size="660,33" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />
<eLabel position="1416,1551" size="660,3" backgroundColor="#00FFFFFF" zPosition="1" />
<widget name="label11" position="1410,1578" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<ePixmap position="2850,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_menu_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3135,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_ok_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
ImageChooseULTRAHD = """
<screen name="NeoBootImageChoose" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="config" position="210,480" size="2100,510" itemHeight="102" font="genel;60" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1020" size="2100,3" backgroundColor="#0027408B" />
<widget name="label2" position="252,1050" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label4" position="252,1140" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label8" position="252,1230" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label5" position="1062,1050" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label6" position="1062,1140" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label7" position="1062,1230" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<eLabel position="210,1350" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="210,1410" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_1_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1512" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_2_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1614" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_3_UHD.png" zPosition="1" alphatest="blend" />
<widget position="330,1410" size="660,78" name="key_1" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1512" size="660,78" name="key_2" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1614" size="660,78" name="key_3" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="device_icon" position="1110,1428" size="216,252" zPosition="1" transparent="1" alphatest="blend" />
<widget name="label3" position="1410,1428" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="progreso" position="1416,1536" size="660,33" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />
<eLabel position="1416,1551" size="660,3" backgroundColor="#00FFFFFF" zPosition="1" />
<widget name="label11" position="1410,1578" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<ePixmap position="2850,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_menu_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3135,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_ok_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<widget source="global.CurrentTime" render="Label" position="1956,90" size="420,180" font="tasat;150" noWrap="1" halign="center" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Default</convert></widget>
<convert type="ClockToText">Default</convert></widget>
<widget source="global.CurrentTime" render="Label" position="1536,90" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%A</convert></widget>
<convert type="ClockToText">Format:%A</convert></widget>
<widget source="global.CurrentTime" render="Label" position="1536,162" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%e. %b.</convert>
</widget>
</widget>
</screen>"""
###____ Skin HD - ImageChoose ___mod. gutosie ___
ImageChooseHD ="""
<screen name="NeoBootImageChoose" position="0,0" size="1280,720" flags="wfNoBorder" backgroundColor="#ff111111">\n
<widget source="Title" render="Label" position="58,36" size="712,50" font="baslk;28" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />\n
<widget name="label1" position="70,120" size="700,30" font="genel;20" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" /> \n
<widget name="config" position="70,160" size="700,170" itemHeight="34" font="genel;20" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />\n
<eLabel position="70,340" size="700,1" backgroundColor="#0027408B" />\n
<widget name="label2" position="84,350" size="260,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />\n
<widget name="label4" position="84,380" size="260,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />\n
<widget name="label8" position="84,410" size="260,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />\n
<widget name="label5" position="354,350" size="410,30" font="genel;20" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="label6" position="354,380" size="410,30" font="genel;20" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="label7" position="354,410" size="410,30" font="genel;20" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<eLabel position="70,450" size="700,1" backgroundColor="#0027408B" />\n
<ePixmap position="70,470" size="30,30" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_1.png" zPosition="1" alphatest="blend" />\n
<ePixmap position="70,504" size="30,30" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_2.png" zPosition="1" alphatest="blend" />\n
<ePixmap position="70,538" size="30,30" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_3.png" zPosition="1" alphatest="blend" />\n
<widget position="110,470" size="220,26" name="key_1" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget position="110,504" size="220,26" name="key_2" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget position="110,538" size="220,26" name="key_3" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="device_icon" position="338,463" size="126,93" zPosition="1" transparent="1" alphatest="blend" />\n
<widget name="label3" position="470,476" size="300,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="progreso" position="472,512" size="220,11" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />\n
<eLabel position="472,517" size="220,1" backgroundColor="#00FFFFFF" zPosition="1" />\n
<widget name="label11" position="470,526" size="300,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<ePixmap position="950,600" size="81,40" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/menu1.png" transparent="1" alphatest="blend" />\n
<ePixmap position="1045,600" size="81,40" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/ok1.png" transparent="1" alphatest="blend" />\n
<ePixmap position="1140,600" size="81,40" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/exit.png" transparent="1" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/red.png" position="35,635" size="30,40" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/green.png" position="294,633" size="30,40" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellow.png" position="431,634" size="30,40" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="670,633" size="30,40" alphatest="blend" />\n
<widget name="key_red" position="71,639" size="225,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<widget name="key_green" position="331,638" size="108,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<widget name="key_yellow" position="471,639" size="198,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<widget name="key_blue" position="710,638" size="104,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<eLabel position="40,25" zPosition="-10" size="754,650" backgroundColor="#1A0F0F0F" name="layer1" />\n
ImageChooseHD = """
<screen name="NeoBootImageChoose" position="0,0" size="1280,720" flags="wfNoBorder" backgroundColor="#ff111111">\n
<widget source="Title" render="Label" position="58,36" size="712,50" font="baslk;28" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />\n
<widget name="label1" position="70,120" size="700,30" font="genel;20" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" /> \n
<widget name="config" position="70,160" size="700,170" itemHeight="34" font="genel;20" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />\n
<eLabel position="70,340" size="700,1" backgroundColor="#0027408B" />\n
<widget name="label2" position="84,350" size="260,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />\n
<widget name="label4" position="84,380" size="260,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />\n
<widget name="label8" position="84,410" size="260,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />\n
<widget name="label5" position="354,350" size="410,30" font="genel;20" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="label6" position="354,380" size="410,30" font="genel;20" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="label7" position="354,410" size="410,30" font="genel;20" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<eLabel position="70,450" size="700,1" backgroundColor="#0027408B" />\n
<ePixmap position="70,470" size="30,30" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_1.png" zPosition="1" alphatest="blend" />\n
<ePixmap position="70,504" size="30,30" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_2.png" zPosition="1" alphatest="blend" />\n
<ePixmap position="70,538" size="30,30" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_3.png" zPosition="1" alphatest="blend" />\n
<widget position="110,470" size="220,26" name="key_1" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget position="110,504" size="220,26" name="key_2" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget position="110,538" size="220,26" name="key_3" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="device_icon" position="338,463" size="126,93" zPosition="1" transparent="1" alphatest="blend" />\n
<widget name="label3" position="470,476" size="300,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<widget name="progreso" position="472,512" size="220,11" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />\n
<eLabel position="472,517" size="220,1" backgroundColor="#00FFFFFF" zPosition="1" />\n
<widget name="label11" position="470,526" size="300,30" font="genel;20" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />\n
<ePixmap position="950,600" size="81,40" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/menu1.png" transparent="1" alphatest="blend" />\n
<ePixmap position="1045,600" size="81,40" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/ok1.png" transparent="1" alphatest="blend" />\n
<ePixmap position="1140,600" size="81,40" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/exit.png" transparent="1" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/red.png" position="35,635" size="30,40" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/green.png" position="294,633" size="30,40" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellow.png" position="431,634" size="30,40" alphatest="blend" />\n
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="670,633" size="30,40" alphatest="blend" />\n
<widget name="key_red" position="71,639" size="225,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<widget name="key_green" position="331,638" size="108,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<widget name="key_yellow" position="471,639" size="198,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<widget name="key_blue" position="710,638" size="104,30" noWrap="1" zPosition="1" valign="center" font="dugme;18" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />\n
<eLabel position="40,25" zPosition="-10" size="754,650" backgroundColor="#1A0F0F0F" name="layer1" />\n
<eLabel position="795,60" zPosition="-10" size="445,580" backgroundColor="#1A27408B" name="layer2" />\n
<ePixmap position="817,335" size="422,229" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrixhd.png" transparent="1" alphatest="blend" />\n
<ePixmap position="943,179" size="295,60" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/ico_neo.png" transparent="1" alphatest="blend" />\n
<ePixmap position="943,179" size="295,60" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/ico_neo.png" transparent="1" alphatest="blend" />\n
<widget source="global.CurrentTime" render="Label" position="1089,73" size="140,60" font="tasat;50" noWrap="1" halign="center" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Default</convert>
</widget>\n
</widget>\n
<widget source="global.CurrentTime" render="Label" position="933,73" size="140,27" font="tasat;16" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%A</convert>
</widget>\n
</widget>\n
<widget source="global.CurrentTime" render="Label" position="935,105" size="140,27" font="tasat;16" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1"><convert type="ClockToText">Format:%e. %b.</convert>
</widget>\n
</screen>
@@ -190,7 +190,7 @@ ImageChooseHD ="""
###____ Skin FULLHD - MyUpgradeFULLHD ___mod. gutosie ___
MyUpgradeFULLHD ="""
MyUpgradeFULLHD = """
<screen name="MyUpgradeFULLHD" position="center,center" size="1380,570" title="Tools Neoboot">
<ePixmap position="594,255" zPosition="-2" size="623,313" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrix.png" />
<widget source="list" render="Listbox" position="33,101" size="1328,124" scrollbarMode="showOnDemand">
@@ -209,24 +209,24 @@ MyUpgradeFULLHD ="""
###____ Skin UltraHD - MyUpgradeUltraHD ___mod. gutosie ___
MyUpgradeUltraHD ="""
<screen name="MyUpgradeUltraHD" position="center,center" size="2100,1020" flags="wfNoBorder" backgroundColor="#ff111111">
<widget name="label1" position="180,210" size="1740,78" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget source="list" render="Listbox" position="210,390" size="1680,252" itemHeight="132" font="genel;66" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1">
<convert type="TemplatedMultiContent">
MyUpgradeUltraHD = """
<screen name="MyUpgradeUltraHD" position="center,center" size="2100,1020" flags="wfNoBorder" backgroundColor="#ff111111">
<widget name="label1" position="180,210" size="1740,78" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget source="list" render="Listbox" position="210,390" size="1680,252" itemHeight="132" font="genel;66" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1">
<convert type="TemplatedMultiContent">
{"template": [MultiContentEntryText(pos=(0,0), size=(1680,132), flags=RT_HALIGN_CENTER|RT_VALIGN_CENTER, text=0)], "fonts": [gFont("Regular",66)], "itemHeight":132}\n </convert>
</widget>
<widget name="label2" position="180,600" size="1740,78" font="genel;60" halign="center" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<ePixmap position="774,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<ePixmap position="1083,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<eLabel position="120,0" zPosition="-2" size="1890,60" backgroundColor="#1A27408B" name="popupUst" />
<eLabel position="0,60" zPosition="-2" size="2100,900" backgroundColor="#1A0F0F0F" name="popupOrt" />
</widget>
<widget name="label2" position="180,600" size="1740,78" font="genel;60" halign="center" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<ePixmap position="774,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<ePixmap position="1083,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<eLabel position="120,0" zPosition="-2" size="1890,60" backgroundColor="#1A27408B" name="popupUst" />
<eLabel position="0,60" zPosition="-2" size="2100,900" backgroundColor="#1A0F0F0F" name="popupOrt" />
<eLabel position="90,900" zPosition="-1" size="1920,120" backgroundColor="#1A27408B" name="popupAlt" />
</screen>"""
###____ Skin MyUpgradeHD - MyUpgradeHD ___mod. gutosie ___
MyUpgradeHD ="""
MyUpgradeHD = """
<screen name="MyUpgradeHD" position="center,center" size="1127,569" title="Tools NeoBoot">
<ePixmap position="492,223" zPosition="-2" size="589,298" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrix.png" />
<widget source="list" render="Listbox" position="18,122" size="1085,82" scrollbarMode="showOnDemand">
@@ -241,11 +241,11 @@ MyUpgradeHD ="""
</widget>
<eLabel text="NeoBoot wykry\xc5\x82 nowsz\xc4\x85 wersj\xc4\x99 wtyczki. " font="Regular; 40" position="27,40" size="1042,70" halign="center" foregroundColor="red" backgroundColor="black" transparent="1" />
<eLabel text="EXIT - Zrezygnuj" font="Regular; 40" position="27,441" size="389,80" halign="center" foregroundColor="yellow" backgroundColor="black" transparent="1" />
</screen>"""
</screen>"""
###____ Skin NeoBootInstallationFULLHD - NeoBootInstallationFULLHD ___mod. gutosie ___
NeoBootInstallationFULLHD ="""
NeoBootInstallationFULLHD = """
<screen name="NeoBootInstallationFULLHD" position="410,138" size="1200,850" title="NeoBoot">
<widget name="label3" position="10,632" size="1178,114" zPosition="1" halign="center" font="dugme;28" backgroundColor="black" transparent="1" foregroundColor="#ffffff" />
<ePixmap position="643,282" zPosition="-2" size="531,331" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrix.png" />
@@ -267,58 +267,51 @@ NeoBootInstallationFULLHD ="""
</screen>"""
###____ Skin NeoBootInstallationUltraHD - NeoBootInstallationUltraHD ___mod. gutosie ___
NeoBootInstallationUltraHD ="""
<screen name="NeoBootInstallationUltraHD" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;72" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="label2" position="210,480" size="2100,570" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="config" position="210,690" size="2100,540" itemHeight="108" font="genel;60" zPosition="2" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1470" size="2100,3" backgroundColor="#0027408B" />
<widget name="label3" position="150,1500" size="2100,90" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<eLabel position="210,1620" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
NeoBootInstallationUltraHD = """
<screen name="NeoBootInstallationUltraHD" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;72" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="label2" position="210,480" size="2100,570" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="config" position="210,690" size="2100,540" itemHeight="108" font="genel;60" zPosition="2" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1470" size="2100,3" backgroundColor="#0027408B" />
<widget name="label3" position="150,1500" size="2100,90" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<eLabel position="210,1620" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<widget source="global.CurrentTime" render="Label" position="1956,90" size="420,180" font="tasat;150" noWrap="1" halign="center" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1"><convert type="ClockToText">Default</convert>
</widget>
</widget>
<widget source="global.CurrentTime" render="Label" position="1536,90" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%A</convert>
</widget>
</widget>
<widget source="global.CurrentTime" render="Label" position="1536,162" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1"><convert type="ClockToText">Format:%e. %b.</convert>
</widget>
</screen>"""
###____ Skin NeoBootInstallationHD - NeoBootInstallationHD ___mod. gutosie ___
NeoBootInstallationHD ="""
NeoBootInstallationHD = """
<screen position="center, center" size="835, 500" title="NeoBoot">
<ePixmap position="0,0" zPosition="-1" size="835,500" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/frame835x500.png" />
<widget name="label1" position="10,15" size="840,30" zPosition="1" halign="center" font="Regular;25" foregroundColor="red" backgroundColor="black" transparent="1" />
<widget name="label2" position="7,100" size="840,296" zPosition="1" halign="center" font="Regular;20" backgroundColor="black" foregroundColor="#58ccff" transparent="1"/>
<widget name="config" position="220,200" size="440,207" backgroundColor="black" scrollbarMode="showOnDemand" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/redcor.png" position="48,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/greencor.png" position="246,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellowcor.png" position="474,406" size="150,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/bluecor.png" position="675,406" size="140,40" alphatest="on" />
<widget name="key_red" position="48,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="red" transparent="1" />
<widget name="key_green" position="248,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="green" transparent="1" />
<widget name="key_yellow" position="474,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" />
<widget name="key_blue" position="672,415" zPosition="1" size="145,45" font="Regular;20" halign="center" valign="center" backgroundColor="blue" transparent="1" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/redcor.png" position="48,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/greencor.png" position="246,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellowcor.png" position="474,406" size="150,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/bluecor.png" position="675,406" size="140,40" alphatest="on" />
<widget name="key_red" position="48,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="red" transparent="1" />
<widget name="key_green" position="248,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="green" transparent="1" />
<widget name="key_yellow" position="474,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" />
<widget name="key_blue" position="672,415" zPosition="1" size="145,45" font="Regular;20" halign="center" valign="center" backgroundColor="blue" transparent="1" />
<widget name="label3" position="20,339" size="816,61" zPosition="1" halign="center" font="Regular;24" backgroundColor="black" transparent="1" foregroundColor="#58ccff" />
</screen>"""

View File

@@ -6,10 +6,10 @@ import os
# mercus = /neoskins/mercus/mercus_skin.py
### ImageChooseFULLHD - mercus
ImageChooseFULLHD ="""
ImageChooseFULLHD = """
<screen name="ImageChooseFULLHD" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/test1.png" alphatest="blend" position="15,center" size="1920,1080" zPosition="-2" />
<widget name="config" position="1200,200" size="660,365" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" itemHeight="43" font="baslk;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="config" position="1200,200" size="660,365" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" itemHeight="43" font="baslk;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="progreso" position="91,543" size="530,12" borderWidth="1" zPosition="3" />
<widget name="device_icon" position="681,483" size="147,136" alphatest="on" zPosition="2" />
<widget name="key_red" position="140,992" zPosition="1" size="552,38" font="Regular; 30" halign="left" valign="center" backgroundColor="black" transparent="1" />
@@ -46,7 +46,7 @@ ImageChooseFULLHD ="""
</widget>
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_1.png" alphatest="blend" position="90,770" size="52,38" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_2.png" alphatest="blend" position="90,820" size="52,38" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_3.png" alphatest="blend" position="90,870" size="52,38" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_3.png" alphatest="blend" position="90,870" size="52,38" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_menu.png" alphatest="blend" position="90,920" size="52,38" zPosition="3" />
<widget source="session.VideoPicture" render="Pig" position="1200,582" size="660,370" backgroundColor="transparent" zPosition="1" />
<widget name="key_menu" position="135,915" zPosition="1" size="249,46" font="Regular;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="#99FFFF" />

View File

@@ -5,54 +5,54 @@ import os
# skin /neoskins/matrix/matrix_skin.py - mod.gutosie
### ImageChooseFULLHD
ImageChooseFULLHD ="""
<screen name="NeoBootImageChoose" position="0,0" size="1920,1080" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="97,50" size="1067,72" font="baslk;41" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="105,180" size="1050,45" font="genel;30" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="config" position="105,240" size="1050,255" itemHeight="51" font="genel;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="105,510" size="1050,2" backgroundColor="#0027408B" />
<widget name="label2" position="108,525" size="590,45" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label4" position="108,570" size="518,45" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label8" position="109,615" size="964,45" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label5" position="944,525" size="212,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label6" position="633,570" size="522,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label7" position="1089,615" size="66,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="center" valign="center" zPosition="1" transparent="1" />
<widget name="label17" position="716,525" size="213,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
### ImageChooseFULLHD
ImageChooseFULLHD = """
<screen name="NeoBootImageChoose" position="0,0" size="1920,1080" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="97,50" size="1067,72" font="baslk;41" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="105,180" size="1050,45" font="genel;30" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="config" position="105,240" size="1050,255" itemHeight="51" font="genel;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="105,510" size="1050,2" backgroundColor="#0027408B" />
<widget name="label2" position="108,525" size="590,45" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label4" position="108,570" size="518,45" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label8" position="109,615" size="964,45" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label5" position="944,525" size="212,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label6" position="633,570" size="522,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label7" position="1089,615" size="66,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="center" valign="center" zPosition="1" transparent="1" />
<widget name="label17" position="716,525" size="213,45" font="genel;30" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label19" position="130,879" size="1020,40" font="genel;30" halign="left" valign="center" zPosition="1" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" transparent="1" />
<ePixmap position="1234,261" size="615,262" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<ePixmap position="1234,261" size="615,262" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<ePixmap position="1260,583" size="564,262" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/neoAdam.png" transparent="1" alphatest="blend" />
<eLabel position="105,675" size="1050,2" backgroundColor="#0027408B" />
<ePixmap position="105,705" size="45,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_1_FHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="105,756" size="45,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_2_FHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="105,807" size="45,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_3_FHD.png" zPosition="1" alphatest="blend" />
<widget position="165,705" size="330,39" name="key_1" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="165,756" size="330,39" name="key_2" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="165,807" size="330,39" name="key_3" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="device_icon" position="516,707" size="146,138" zPosition="1" transparent="1" alphatest="blend" />
<widget name="label18" position="680,715" size="510,45" font="genel;28" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="progreso" position="683,766" size="332,15" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />
<eLabel position="684,774" size="330,2" backgroundColor="#00FFFFFF" zPosition="1" />
<widget name="label11" position="680,790" size="510,45" font="genel;28" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<ePixmap position="1425,900" size="122,60" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_menu_FHD.png" transparent="1" alphatest="blend" />
<ePixmap position="1568,900" size="122,60" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_ok_FHD.png" transparent="1" alphatest="blend" />
<ePixmap position="1710,900" size="122,60" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_FHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_FHD.png" position="48,953" size="45,60" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_FHD.png" position="401,953" size="45,60" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_FHD.png" position="590,953" size="45,60" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_FHD.png" position="967,953" size="45,60" alphatest="blend" />
<widget name="key_red" position="100,957" size="327,45" noWrap="1" zPosition="1" valign="center" font="dugme;30" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="455,957" size="166,45" noWrap="1" zPosition="1" valign="center" font="dugme;30" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="647,957" size="349,45" noWrap="1" zPosition="1" valign="center" font="dugme;30" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1021,959" size="174,45" noWrap="1" zPosition="1" valign="cener" font="dugme;30" halign="feft" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="39,38" zPosition="-10" size="1155,975" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="1194,90" zPosition="-10" size="668,876" backgroundColor="#1A27408B" name="layer2" />
<eLabel position="105,675" size="1050,2" backgroundColor="#0027408B" />
<ePixmap position="105,705" size="45,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_1_FHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="105,756" size="45,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_2_FHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="105,807" size="45,45" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_3_FHD.png" zPosition="1" alphatest="blend" />
<widget position="165,705" size="330,39" name="key_1" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="165,756" size="330,39" name="key_2" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="165,807" size="330,39" name="key_3" font="genel;30" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="device_icon" position="516,707" size="146,138" zPosition="1" transparent="1" alphatest="blend" />
<widget name="label18" position="680,715" size="510,45" font="genel;28" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="progreso" position="683,766" size="332,15" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />
<eLabel position="684,774" size="330,2" backgroundColor="#00FFFFFF" zPosition="1" />
<widget name="label11" position="680,790" size="510,45" font="genel;28" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<ePixmap position="1425,900" size="122,60" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_menu_FHD.png" transparent="1" alphatest="blend" />
<ePixmap position="1568,900" size="122,60" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_ok_FHD.png" transparent="1" alphatest="blend" />
<ePixmap position="1710,900" size="122,60" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_FHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_FHD.png" position="48,953" size="45,60" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_FHD.png" position="401,953" size="45,60" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_FHD.png" position="590,953" size="45,60" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_FHD.png" position="967,953" size="45,60" alphatest="blend" />
<widget name="key_red" position="100,957" size="327,45" noWrap="1" zPosition="1" valign="center" font="dugme;30" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="455,957" size="166,45" noWrap="1" zPosition="1" valign="center" font="dugme;30" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="647,957" size="349,45" noWrap="1" zPosition="1" valign="center" font="dugme;30" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1021,959" size="174,45" noWrap="1" zPosition="1" valign="cener" font="dugme;30" halign="feft" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="39,38" zPosition="-10" size="1155,975" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="1194,90" zPosition="-10" size="668,876" backgroundColor="#1A27408B" name="layer2" />
<widget source="global.CurrentTime" render="Label" position="1636,119" size="210,90" font="tasat;75" noWrap="1" halign="center" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Default</convert>
</widget>
</widget>
<widget source="global.CurrentTime" render="Label" position="1356,119" size="276,41" font="tasat;24" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%A</convert>
</widget>
</widget>
<widget source="global.CurrentTime" render="Label" position="1357,167" size="275,41" font="tasat;24" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%e. %b.</convert>
</widget>

View File

@@ -5,17 +5,17 @@ from Components.Pixmap import Pixmap
import os
#Colors (#AARRGGBB)
#Colors (#AARRGGBB)
#____Recommended colors - Zalecane kolory :
#color name="white" value="#ffffff"
#color name="darkwhite" value="#00dddddd"
#color name="red" value="#f23d21"
#color name="green" value="#389416"
#color name="blue" value="#0064c7"
#color name="yellow" value="#bab329"
#color name="orange" value="#00ffa500"
#color name="gray" value="#808080"
#color name="lightgrey" value="#009b9b9b"
#color name="white" value="#ffffff"
#color name="darkwhite" value="#00dddddd"
#color name="red" value="#f23d21"
#color name="green" value="#389416"
#color name="blue" value="#0064c7"
#color name="yellow" value="#bab329"
#color name="orange" value="#00ffa500"
#color name="gray" value="#808080"
#color name="lightgrey" value="#009b9b9b"
# font genel
# font baslk
@@ -25,91 +25,91 @@ import os
#jak by chcial ktos wlasny selektor, to przyklad:
# <widget name="label19" position="73,422" size="596,25" font="tasat;22" halign="left" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="orange" />
### ImageChooseFULLHD
ImageChooseFULLHD ="""
<screen name="NeoBootImageChoose" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
### ImageChooseFULLHD
ImageChooseFULLHD = """
<screen name="NeoBootImageChoose" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
<eLabel backgroundColor="black" font="tasat;30" foregroundColor="red" position="75,50" size="309,45" valign="center" text="NEOBoot Multi-image" transparent="1" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/skin.png" position="center,center" zPosition="-7" size="1920,1080" />
<ePixmap position="54,981" zPosition="-7" size="1809,55" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek.png" />
<ePixmap position="71,890" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,803" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,727" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="70,652" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="64,410" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="1170,186" size="45,64" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/updown.png" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/skin.png" position="center,center" zPosition="-7" size="1920,1080" />
<ePixmap position="54,981" zPosition="-7" size="1809,55" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek.png" />
<ePixmap position="71,890" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,803" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,727" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="70,652" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="64,410" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="1170,186" size="45,64" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/updown.png" alphatest="on" />
<eLabel position="70,152" size="1075,2" backgroundColor="blue" name="linia" />
<eLabel position="70,395" size="1075,2" backgroundColor="blue" name="linia2" />
<widget name="device_icon" position="355,465" size="185,115" alphatest="on" zPosition="2" />
<eLabel position="70,152" size="1075,2" backgroundColor="blue" name="linia" />
<eLabel position="70,395" size="1075,2" backgroundColor="blue" name="linia2" />
<widget name="device_icon" position="355,465" size="185,115" alphatest="on" zPosition="2" />
<ePixmap position="70,471" size="275,179" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1matrix.png" alphatest="blend" zPosition="3" />
<widget source="session.VideoPicture" render="Pig" position="588,625" size="545,340" backgroundColor="transparent" zPosition="1" />
<widget name="key_red" position="130,990" zPosition="1" size="505,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="key_green" position="690,990" zPosition="1" size="328,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="key_red" position="130,990" zPosition="1" size="505,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="key_green" position="690,990" zPosition="1" size="328,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="key_yellow" position="1085,990" zPosition="1" size="476,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="key_blue" position="1620,990" zPosition="1" size="240,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="key_blue" position="1620,990" zPosition="1" size="240,38" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/red.png" position="80,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/green.png" position="640,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellow.png" position="1035,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="1570,990" size="34,38" zPosition="1" alphatest="blend" />
#Window image selection - Okno wyboru image
<widget name="config" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" position="1175,256" size="680,689" itemHeight="45" font="dugme;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
#Window image selection - Okno wyboru image
<widget name="config" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" position="1175,256" size="680,689" itemHeight="45" font="dugme;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
#Used Kernel:
<widget name="label19" position="73,422" size="596,25" font="tasat;22" halign="left" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="orange" />
#More options - Menu
<ePixmap position="70,898" size="55,40" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_menu.png" alphatest="blend" zPosition="3" />
<ePixmap position="150,902" size="66,35" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/arrowleft.png" alphatest="blend" zPosition="3" />
<ePixmap position="150,902" size="66,35" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/arrowleft.png" alphatest="blend" zPosition="3" />
<widget name="key_menu" position="232,895" zPosition="1" size="343,40" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="blue" />
#key 1&gt; 2&gt; 3&gt;
#key 1&gt; 2&gt; 3&gt;
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_1.png" alphatest="blend" position="65,657" size="55,40" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_2.png" alphatest="blend" position="65,732" size="55,40" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_3.png" alphatest="blend" position="65,807" size="55,40" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/key_3.png" alphatest="blend" position="65,807" size="55,40" zPosition="3" />
<widget name="key_1" position="130,657" zPosition="1" size="445,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="key_2" position="130,732" zPosition="1" size="445,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
<widget name="key_3" position="130,807" zPosition="1" size="445,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="yellow" />
#Please choose an image to boot
<widget name="label1" position="1177,150" size="703,105" zPosition="1" halign="left" font="tasat;30" foregroundColor="red" backgroundColor="black" transparent="1" />
#NeoBoot is running from:
#Please choose an image to boot
<widget name="label1" position="1177,150" size="703,105" zPosition="1" halign="left" font="tasat;30" foregroundColor="red" backgroundColor="black" transparent="1" />
#NeoBoot is running from:
<widget name="label2" position="70,164" zPosition="1" size="538,66" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="label5" position="837,164" zPosition="1" size="305,66" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ffa500" />
#NeoBoot is running image:
#NeoBoot is running image:
<widget name="label4" position="70,245" zPosition="1" size="505,65" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="label6" position="580,235" zPosition="1" size="565,82" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00f23d21" />
#Memory disc: - Pamiec dysku
<widget name="label6" position="580,235" zPosition="1" size="565,82" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00f23d21" />
#Memory disc: - Pamiec dysku
<widget name="label15" position="345,585" zPosition="1" size="240,40" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ffa500" />
<widget name="progreso" position="587,600" size="552,10" borderWidth="1" zPosition="3" foregroundColor="#00ffa500" />
#Number of images installed:
<widget name="label8" position="70,324" zPosition="1" size="987,66" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00dddddd" />
<widget name="label7" position="1060,324" zPosition="1" size="85,66" font="tasat;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
#Version update:
<widget name="label7" position="1060,324" zPosition="1" size="85,66" font="tasat;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
#Version update:
<widget name="label13" position="675,415" zPosition="1" size="345,40" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
#UPDATEVERSION
<widget name="label10" position="1030,415" zPosition="1" size="100,40" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
<widget name="label10" position="1030,415" zPosition="1" size="100,40" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
#NeoBoot version:
<widget name="label14" position="532,50" zPosition="1" size="302,45" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#009b9b9b" />
#PLUGINVERSION
<widget name="label9" position="847,50" zPosition="1" size="315,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#808080" />
#Kernel Version
<widget name="label16" position="1171,50" zPosition="1" size="114,45" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#009b9b9b" />
#KERNELVERSION
<widget name="label20" position="1302,50" zPosition="1" size="608,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#808080" />
#NeoBoot version:
<widget name="label14" position="532,50" zPosition="1" size="302,45" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#009b9b9b" />
#PLUGINVERSION
<widget name="label9" position="847,50" zPosition="1" size="315,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#808080" />
#Kernel Version
<widget name="label16" position="1171,50" zPosition="1" size="114,45" font="tasat;30" halign="right" valign="center" backgroundColor="black" transparent="1" foregroundColor="#009b9b9b" />
#KERNELVERSION
<widget name="label20" position="1302,50" zPosition="1" size="608,45" font="tasat;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#808080" />
#hostname
<widget name="label17" position="619,164" size="213,66" font="tasat;30" halign="right" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
<widget name="label17" position="619,164" size="213,66" font="tasat;30" halign="right" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
#Memory - Used: Available:
<widget name="label3" position="533,465" zPosition="1" size="612,120" font="tasat;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="yellow" />
@@ -117,10 +117,8 @@ ImageChooseFULLHD ="""
#VIP
<widget name="label21" position="384,49" size="148,45" font="dugme;30" halign="center" valign="center" zPosition="1" backgroundColor="black" transparent="1" foregroundColor="#00ff7f50" />
</screen>
</screen>
"""
###ImageChoose-HD
###ImageChoose-HD

View File

@@ -4,14 +4,13 @@ from Components.Pixmap import Pixmap
import os
###____ Skin HD - ImageChoose ___mod. gutosie ___
ImageChooseHD ="""
<screen name="NeoBootImageChoose" position="center,center" size="1280, 720" backgroundColor="transpBlack">
<ePixmap position="0,0" zPosition="-1" size="1274,720" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1frame_base-fs8.png" />
<widget source="session.VideoPicture" render="Pig" position=" 836,89" size="370,208" zPosition="3" backgroundColor="#ff000000" />
<ePixmap position="870,304" zPosition="-1" size="300,14" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1chan_p1_bar.png" alphatest="on" />
<widget source="Title" render="Label" position="12,5" size="788,30" font="Regular;28" halign="left" foregroundColor="#58bcff" backgroundColor="transpBlack" transparent="1" />
ImageChooseHD = """
<screen name="NeoBootImageChoose" position="center,center" size="1280, 720" backgroundColor="transpBlack">
<ePixmap position="0,0" zPosition="-1" size="1274,720" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1frame_base-fs8.png" />
<widget source="session.VideoPicture" render="Pig" position=" 836,89" size="370,208" zPosition="3" backgroundColor="#ff000000" />
<ePixmap position="870,304" zPosition="-1" size="300,14" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1chan_p1_bar.png" alphatest="on" />
<widget source="Title" render="Label" position="12,5" size="788,30" font="Regular;28" halign="left" foregroundColor="#58bcff" backgroundColor="transpBlack" transparent="1" />
<widget name="label9" position="818,4" zPosition="10" size="385,30" font="Regular;24" foregroundColor="#58bcff" backgroundColor="black" halign="left" transparent="1" />
<widget selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/slekvti.png" name="config" enableWrapAround="1" position="30,150" size="270,370" itemHeight="25" font="Regular;18" zPosition="2" foregroundColor="#00cc99" scrollbarMode="showNever" transparent="1" />
<widget name="device_icon" position="470,71" size="177,132" alphatest="on" zPosition="2" />
@@ -29,7 +28,7 @@ ImageChooseHD ="""
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="319,450" size="51,25" text="1 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="318,480" size="52,25" text="2 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="318,510" size="52,25" text="3 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="317,540" size="53,25" text="4 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="317,540" size="53,25" text="4 &gt;" transparent="1" />
<widget name="key_1" position="375,450" zPosition="1" size="349,25" font="Regular;18" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
<widget name="key_2" position="374,480" zPosition="1" size="350,25" font="Regular;20" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
<widget name="key_3" position="373,510" zPosition="1" size="350,25" font="Regular;20" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
@@ -47,6 +46,6 @@ ImageChooseHD ="""
<eLabel backgroundColor="black" font="Regular; 24" foregroundColor="white" position="950,651" size="102,45" halign="left" valign="center" text="MENU &gt;" transparent="1" />
<widget source="global.CurrentTime" render="Label" position="1052,39" size="152,41" backgroundColor="black" transparent="1" zPosition="1" font="Regular;25" valign="center" halign="right">
<convert type="ClockToText">Format:%-H:%M</convert>
</widget>
</widget>
</screen>
"""

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,7 @@
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getSupportedTuners, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxHostName, getTunerModel, getNeoLocation, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from Plugins.Extensions.NeoBoot.files.stbbranding import getSupportedTuners, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxHostName, getTunerModel, getNeoLocation, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
@@ -32,6 +32,7 @@ import os
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
class StartImage(Screen):
screenwidth = getDesktop(0).size().width()
if screenwidth and screenwidth == 1920:
@@ -62,6 +63,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -84,10 +86,10 @@ class StartImage(Screen):
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
@@ -96,12 +98,12 @@ class StartImage(Screen):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
os.system(' ' +LinkNeoBoot+ '/files/findsk.sh; mkdir -p /media/InternalFlash; mount /tmp/root /media/InternalFlash')
os.system(' ' + LinkNeoBoot + '/files/findsk.sh; mkdir -p /media/InternalFlash; mount /tmp/root /media/InternalFlash')
self.sel = self['list'].getCurrent()
if self.sel:
@@ -119,61 +121,61 @@ class StartImage(Screen):
os.system('rm -f /media/InternalFlash/linuxrootfs3/etc/init.d/neobootmount.sh;')
elif fileExists('/media/InternalFlash/linuxrootfs4/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/linuxrootfs4/etc/init.d/neobootmount.sh;')
# else:
# pass
# else:
# pass
#_____ARM procesor____
if (getSupportedTuners()):
if (getSupportedTuners()):
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
if fileExists('/media/InternalFlash/linuxrootfs1/sbin/neoinitarm'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash/linuxrootfs1; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs1/sbin/init; sleep 5; reboot -d -f '
cmd1 = 'cd /media/InternalFlash/linuxrootfs1; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs1/sbin/init; sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
elif fileExists('/media/InternalFlash/linuxrootfs2/sbin/neoinitarm'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash/linuxrootfs2; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs2/sbin/init; sleep 5; reboot -d -f '
cmd1 = 'cd /media/InternalFlash/linuxrootfs2; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs2/sbin/init; sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
elif fileExists('/media/InternalFlash/linuxrootfs3/sbin/neoinitarm'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash/linuxrootfs3; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs3/sbin/init; sleep 5; reboot -d -f '
cmd1 = 'cd /media/InternalFlash/linuxrootfs3; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs3/sbin/init; sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
elif fileExists('/media/InternalFlash/linuxrootfs4/sbin/neoinitarm') :
elif fileExists('/media/InternalFlash/linuxrootfs4/sbin/neoinitarm'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash/linuxrootfs4; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs4/sbin/init; sleep 5; reboot -d -f '
cmd1 = 'cd /media/InternalFlash/linuxrootfs4; ln -sfn /sbin/init.sysvinit /media/InternalFlash/linuxrootfs4/sbin/init; sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
elif fileExists('/media/InternalFlash/sbin/init'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sfn /sbin/init.sysvinit /media/InternalFlash/sbin/init; sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
cmd1 = 'cd /media/InternalFlash; ln -sfn /sbin/init.sysvinit /media/InternalFlash/sbin/init; sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
else:
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
cmd1 = 'sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot-Reboot ....'), [cmd, cmd1])
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 5; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -d -f '
cmd1 = 'sleep 5; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -d -f '
self.session.open(Console, _('NeoBoot ....'), [cmd, cmd1])
else:
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 5; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -d -f '
cmd1 = 'sleep 5; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -d -f '
self.session.open(Console, _('NeoBoot-ERROR!!! ....'), [cmd, cmd1])
elif getImageNeoBoot() != 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 5; reboot -d -f '
cmd1 = 'sleep 5; reboot -d -f '
self.session.open(Console, _('NeoBoot ....'), [cmd, cmd1])
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 5; ln -sfn /sbin/neoinitarm /sbin/init; reboot -d -f '
cmd1 = 'sleep 5; ln -sfn /sbin/neoinitarm /sbin/init; reboot -d -f '
self.session.open(Console, _('NeoBoot ....'), [cmd, cmd1])
else:
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 5; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -d -f '
cmd1 = 'sleep 5; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -d -f '
self.session.open(Console, _('NeoBoot-ERROR!!! ....'), [cmd, cmd1])
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')
self.messagebox = self.session.open(MessageBox, _('It looks like it that multiboot does not support this STB.'), MessageBox.TYPE_INFO, 8)
self.close()
self.close()
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')

View File

@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
from Screens.VirtualKeyBoard import VirtualKeyBoard
@@ -30,7 +30,7 @@ from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remov
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
class StartImage(Screen):
@@ -63,6 +63,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -72,7 +73,7 @@ class StartImage(Screen):
'back': self.close})
self['label1'] = Label(_('Start the chosen system now ?'))
self['label2'] = Label(_('Select OK to run the image.'))
def select(self):
self.list = []
mypath = '' + LinkNeoBoot + ''
@@ -83,77 +84,76 @@ class StartImage(Screen):
self.list.append(res)
self['list'].list = self.list
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
#---------------------------------------------
def StartImageInNeoBoot(self):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
if getBoxVuModel() == 'duo4k':
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
if getBoxVuModel() == 'duo4k':
os.system('mkdir -p /media/InternalFlash; mount /dev/mmcblk0p9 /media/InternalFlash')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
self.sel = self['list'].getCurrent()
if self.sel:
self.sel = self.sel[2]
if self.sel == 0:
self.sel = self.sel[2]
if self.sel == 0:
if fileExists('/media/InternalFlash/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/etc/init.d/neobootmount.sh;')
if not fileExists('/bin/busybox.nosuid'):
os.system('ln -sf "busybox" "/bin/busybox.nosuid" ')
#################_____ARM____##########################
#VUPLUS ARM - Duo4k vu_mmcblk0p6.sh
if getCPUSoC() == '7278' or getBoxHostName() == 'vuduo4k' :
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName()) ):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()) )
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
#################_____ARM____##########################
#VUPLUS ARM - Duo4k vu_mmcblk0p6.sh
if getCPUSoC() == '7278' or getBoxHostName() == 'vuduo4k':
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName())):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()))
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "init.sysvinit" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "init.sysvinit" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sfn /sbin/neoinitarm /sbin/init; /etc/init.d/reboot'
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p6; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p6; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
self.session.open(Console, _('NeoBoot ARM '), [cmd, cmd1])
self.close()
self.close()
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')
self.messagebox = self.session.open(MessageBox, _('It looks like it that multiboot does not support this STB.'), MessageBox.TYPE_INFO, 8)

View File

@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
from Screens.VirtualKeyBoard import VirtualKeyBoard
@@ -30,7 +30,7 @@ from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remov
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
class StartImage(Screen):
@@ -63,6 +63,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -72,7 +73,7 @@ class StartImage(Screen):
'back': self.close})
self['label1'] = Label(_('Start the chosen system now ?'))
self['label2'] = Label(_('Select OK to run the image.'))
def select(self):
self.list = []
mypath = '' + LinkNeoBoot + ''
@@ -83,77 +84,76 @@ class StartImage(Screen):
self.list.append(res)
self['list'].list = self.list
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
#---------------------------------------------')
def StartImageInNeoBoot(self):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
if getBoxVuModel() == 'duo4kse':
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
if getBoxVuModel() == 'duo4kse':
os.system('mkdir -p /media/InternalFlash; mount /dev/mmcblk0p9 /media/InternalFlash')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
self.sel = self['list'].getCurrent()
if self.sel:
self.sel = self.sel[2]
if self.sel == 0:
self.sel = self.sel[2]
if self.sel == 0:
if fileExists('/media/InternalFlash/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/etc/init.d/neobootmount.sh;')
if not fileExists('/bin/busybox.nosuid'):
os.system('ln -sf "busybox" "/bin/busybox.nosuid" ')
#################_____ARM____##########################
#VUPLUS ARM - Duo4kse vu_mmcblk0p6.sh
if getCPUSoC() == '7444s' or getBoxHostName() == 'vuduo4kse' and getBoxHostName() != 'vuultimo4k' :
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName()) ):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()) )
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
#################_____ARM____##########################
#VUPLUS ARM - Duo4kse vu_mmcblk0p6.sh
if getCPUSoC() == '7444s' or getBoxHostName() == 'vuduo4kse' and getBoxHostName() != 'vuultimo4k':
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName())):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()))
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "init.sysvinit" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "init.sysvinit" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sfn /sbin/neoinitarm /sbin/init; /etc/init.d/reboot'
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p6; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p6; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '
self.session.open(Console, _('NeoBoot ARM '), [cmd, cmd1])
self.close()
self.close()
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')
self.messagebox = self.session.open(MessageBox, _('It looks like it that multiboot does not support this STB.'), MessageBox.TYPE_INFO, 8)

View File

@@ -1,12 +1,12 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getSupportedTuners, getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getSupportedTuners, getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.Console import Console
from Screens.MessageBox import MessageBox
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
from Screens.VirtualKeyBoard import VirtualKeyBoard
from Screens.Standby import TryQuitMainloop
@@ -28,7 +28,7 @@ from Tools.Directories import fileExists, pathExists, createDir, resolveFilename
from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remove as os_remove, popen
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -62,6 +62,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -71,7 +72,7 @@ class StartImage(Screen):
'back': self.close})
self['label1'] = Label(_('Start the chosen system now ?'))
self['label2'] = Label(_('Select OK to run the image.'))
def select(self):
self.list = []
mypath = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -82,56 +83,55 @@ class StartImage(Screen):
self.list.append(res)
self['list'].list = self.list
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
#---------------------------------------------
def StartImageInNeoBoot(self):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
#system('chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh')
#system('chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh')
self.sel = self['list'].getCurrent()
if self.sel:
self.sel = self.sel[2]
if self.sel == 0:
self.sel = self.sel[2]
if self.sel == 0:
if fileExists('/media/InternalFlash/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/etc/init.d/neobootmount.sh;')
if (getSupportedTuners()):
if getImageNeoBoot() == 'Flash':
if (getSupportedTuners()):
if getImageNeoBoot() == 'Flash':
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 8; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -f '
cmd1 = 'sleep 8; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -f '
self.session.open(Console, _('NeoBoot ....'), [cmd, cmd1])
elif getImageNeoBoot() != 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 5; reboot -f '
cmd1 = 'sleep 5; reboot -f '
self.session.open(Console, _('NeoBoot ....'), [cmd, cmd1])
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 8; ln -sfn /sbin/neoinitmips /sbin/init; reboot -f '
cmd1 = 'sleep 8; ln -sfn /sbin/neoinitmips /sbin/init; reboot -f '
self.session.open(Console, _('NeoBoot ....'), [cmd, cmd1])
else:
cmd = "echo -e '\n\n%s '" % _('NEOBOOT - Restart image flash....\nPlease wait, in a moment the decoder will be restarted...\n')
cmd1='sleep 8; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -f '
cmd1 = 'sleep 8; ln -sfn /sbin/init.sysvinit /sbin/init; reboot -f '
self.session.open(Console, _('NeoBoot-ERROR!!! ....'), [cmd, cmd1])
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')
self.messagebox = self.session.open(MessageBox, _('It looks like it that multiboot does not support this STB.'), MessageBox.TYPE_INFO, 8)
self.close()
self.close()
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')
self.messagebox = self.session.open(MessageBox, _('It looks like it that multiboot does not support this STB.'), MessageBox.TYPE_INFO, 8)
self.close()

View File

@@ -1,12 +1,12 @@
# -*- coding: utf-8 -*-
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
#from __future__ import print_function
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
from Screens.VirtualKeyBoard import VirtualKeyBoard
@@ -30,9 +30,10 @@ from Tools.Directories import fileExists, pathExists, createDir, resolveFilename
from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remove as os_remove, popen
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
class StartImage(Screen):
screenwidth = getDesktop(0).size().width()
if screenwidth and screenwidth == 1920:
@@ -63,6 +64,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -85,10 +87,10 @@ class StartImage(Screen):
def KeyOk(self):
if getImageNeoBoot() != "Flash":
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
@@ -96,13 +98,13 @@ class StartImage(Screen):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != "Flash":
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
if fileExists('/.multinfo') and getCPUtype() == "ARMv7":
if getBoxVuModel() == "uno4kse" or getBoxVuModel() == "uno4k" or getBoxVuModel() == "ultimo4k" or getBoxVuModel() == "solo4k":
if getBoxVuModel() == "uno4kse" or getBoxVuModel() == "uno4k" or getBoxVuModel() == "ultimo4k" or getBoxVuModel() == "solo4k":
os.system('mkdir -p /media/InternalFlash; mount /dev/mmcblk0p4 /media/InternalFlash')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
@@ -115,9 +117,9 @@ class StartImage(Screen):
if not fileExists('/bin/busybox.nosuid'):
os.system('ln -sf "busybox" "/bin/busybox.nosuid" ')
#VUPLUS ARM ultimo4k, solo4k, uno4k, uno4kse - mmcblk0p1.sh
if getCPUtype() == "ARMv7" and getBoxHostName() == "vuultimo4k" or getBoxHostName() == "vusolo4k" or getBoxHostName() == "vuuno4k" or getBoxHostName() == "vuuno4kse" :
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName()) ):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()) )
if getCPUtype() == "ARMv7" and getBoxHostName() == "vuultimo4k" or getBoxHostName() == "vusolo4k" or getBoxHostName() == "vuuno4k" or getBoxHostName() == "vuuno4kse":
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName())):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()))
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
else:
if getImageNeoBoot() == "Flash":
@@ -129,21 +131,21 @@ class StartImage(Screen):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif getImageNeoBoot() != "Flash":
elif getImageNeoBoot() != "Flash":
if not fileExists("/.multinfo"):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sfn /sbin/neoinitarm /sbin/init; /etc/init.d/reboot'
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; ' + LinkNeoBoot + '/files/kernel.sh '
elif fileExists("/.multinfo"):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p1; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; ' + LinkNeoBoot + '/files/kernel.sh '

View File

@@ -1,10 +1,10 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.Console import Console
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
@@ -28,7 +28,7 @@ from Tools.Directories import fileExists, pathExists, createDir, resolveFilename
from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remove as os_remove, popen
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -62,6 +62,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -71,7 +72,7 @@ class StartImage(Screen):
'back': self.close})
self['label1'] = Label(_('Start the chosen system now ?'))
self['label2'] = Label(_('Select OK to run the image.'))
def select(self):
self.list = []
mypath = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -82,66 +83,66 @@ class StartImage(Screen):
self.list.append(res)
self['list'].list = self.list
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
#---------------------------------------------
def StartImageInNeoBoot(self):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
system('chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh')
system('chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh')
self.sel = self['list'].getCurrent()
if self.sel:
self.sel = self.sel[2]
if self.sel == 0:
self.sel = self.sel[2]
if self.sel == 0:
if fileExists('/media/InternalFlash/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/etc/init.d/neobootmount.sh;')
if not fileExists('/bin/busybox.nosuid'):
os.system('ln -sf "busybox" "/bin/busybox.nosuid" ')
#################_____mips___##########################
#VUPLUS MIPS vu_dev_mtd1.sh
if getBoxHostName() == 'vuultimo' or getBoxHostName() == 'bm750' or getBoxHostName() == 'vuduo' or getBoxHostName() == 'vuuno' or getBoxHostName() == 'vusolo' or getBoxHostName() == 'vuduo':
if not fileExists('%sImagesUpload/.kernel/%s.vmlinux.gz' % (getNeoLocation(), getBoxHostName()) ):
self.myclose2(_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash kernel vmlinux.gz ' % getNeoLocation() ))
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NeoBoot REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
#################_____mips___##########################
#VUPLUS MIPS vu_dev_mtd1.sh
if getBoxHostName() == 'vuultimo' or getBoxHostName() == 'bm750' or getBoxHostName() == 'vuduo' or getBoxHostName() == 'vuuno' or getBoxHostName() == 'vusolo' or getBoxHostName() == 'vuduo':
if not fileExists('%sImagesUpload/.kernel/%s.vmlinux.gz' % (getNeoLocation(), getBoxHostName())):
self.myclose2(_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash kernel vmlinux.gz ' % getNeoLocation()))
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NeoBoot REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT >> Reboot...............\nPlease wait, in a moment the decoder will be restarted...')
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT >> Reboot...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/init.sysvinit /sbin/init; /etc/init.d/reboot'
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if fileExists('' + getNeoLocation() + 'ImageBoot/' + getImageNeoBoot() + '/boot/' + getBoxHostName() + '.vmlinux.gz'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT-REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT-REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
elif not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT > REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /etc/init.d/reboot'
elif not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT > REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /etc/init.d/reboot'
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT_REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'flash_eraseall /dev/mtd1; sleep 2; ' + LinkNeoBoot + '/bin/nandwrite -p /dev/mtd1 %sImagesUpload/.kernel/%s.vmlinux.gz; /etc/init.d/reboot' % ( getNeoLocation(), getBoxHostName())
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT_REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'flash_eraseall /dev/mtd1; sleep 2; ' + LinkNeoBoot + '/bin/nandwrite -p /dev/mtd1 %sImagesUpload/.kernel/%s.vmlinux.gz; /etc/init.d/reboot' % (getNeoLocation(), getBoxHostName())
elif fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............REBOOT now...............\nPlease wait, in a moment the decoder will be restarted...')
elif fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............REBOOT now...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
self.session.open(Console, _('NeoBoot MIPS....'), [cmd, cmd1])

View File

@@ -1,10 +1,10 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.Console import Console
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
@@ -28,7 +28,7 @@ from Tools.Directories import fileExists, pathExists, createDir, resolveFilename
from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remove as os_remove, popen
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -62,6 +62,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -71,7 +72,7 @@ class StartImage(Screen):
'back': self.close})
self['label1'] = Label(_('Start the chosen system now ?'))
self['label2'] = Label(_('Select OK to run the image.'))
def select(self):
self.list = []
mypath = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -82,66 +83,66 @@ class StartImage(Screen):
self.list.append(res)
self['list'].list = self.list
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
#---------------------------------------------
def StartImageInNeoBoot(self):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
system('chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh')
system('chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh')
self.sel = self['list'].getCurrent()
if self.sel:
self.sel = self.sel[2]
if self.sel == 0:
self.sel = self.sel[2]
if self.sel == 0:
if fileExists('/media/InternalFlash/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/etc/init.d/neobootmount.sh;')
if not fileExists('/bin/busybox.nosuid'):
os.system('ln -sf "busybox" "/bin/busybox.nosuid" ')
#################_____mips___##########################
#VUPLUS MIPS vu_dev_mtd2.sh
if getBoxHostName() == 'vusolo2' or getBoxHostName() == 'vusolose' or getBoxHostName() == 'vuduo2' or getBoxHostName() == 'vuzero':
if not fileExists('%sImagesUpload/.kernel/%s.vmlinux.gz' % (getNeoLocation(), getBoxHostName()) ):
self.myclose2(_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash kernel vmlinux.gz ' % getNeoLocation() ))
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NeoBoot REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
#################_____mips___##########################
#VUPLUS MIPS vu_dev_mtd2.sh
if getBoxHostName() == 'vusolo2' or getBoxHostName() == 'vusolose' or getBoxHostName() == 'vuduo2' or getBoxHostName() == 'vuzero':
if not fileExists('%sImagesUpload/.kernel/%s.vmlinux.gz' % (getNeoLocation(), getBoxHostName())):
self.myclose2(_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash kernel vmlinux.gz ' % getNeoLocation()))
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NeoBoot REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT >> Reboot...............\nPlease wait, in a moment the decoder will be restarted...')
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT >> Reboot...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/init.sysvinit /sbin/init; /etc/init.d/reboot'
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if fileExists('' + getNeoLocation() + 'ImageBoot/' + getImageNeoBoot() + '/boot/' + getBoxHostName() + '.vmlinux.gz'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT-REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT-REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
elif not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT > REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /etc/init.d/reboot'
elif not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT > REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitmipsvu /sbin/init; /etc/init.d/reboot'
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT_REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'flash_eraseall /dev/mtd2; sleep 2; ' + LinkNeoBoot + '/bin/nandwrite -p /dev/mtd2 %sImagesUpload/.kernel/%s.vmlinux.gz; /etc/init.d/reboot' % ( getNeoLocation(), getBoxHostName())
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT_REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'flash_eraseall /dev/mtd2; sleep 2; ' + LinkNeoBoot + '/bin/nandwrite -p /dev/mtd2 %sImagesUpload/.kernel/%s.vmlinux.gz; /etc/init.d/reboot' % (getNeoLocation(), getBoxHostName())
elif fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............REBOOT now...............\nPlease wait, in a moment the decoder will be restarted...')
elif fileExists('%sImageBoot/%s/boot/%s.vmlinux.gz' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............REBOOT now...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh'
self.session.open(Console, _('NeoBoot MIPS....'), [cmd, cmd1])
@@ -154,4 +155,4 @@ class StartImage(Screen):
def myclose2(self, message):
self.session.open(MessageBox, message, MessageBox.TYPE_INFO)
self.close()
self.close()

View File

@@ -1,10 +1,10 @@
# -*- coding: utf-8 -*-
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2,getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getNeoMount, getNeoMount2, getNeoMount3, getNeoMount4, getNeoMount5, getMountPointNeo2
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
from Screens.VirtualKeyBoard import VirtualKeyBoard
@@ -28,8 +28,8 @@ from Tools.Directories import fileExists, pathExists, createDir, resolveFilename
from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remove as os_remove, popen
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
import time
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
class StartImage(Screen):
@@ -62,6 +62,7 @@ class StartImage(Screen):
\n\t\t </screen>"""
__module__ = __name__
def __init__(self, session):
Screen.__init__(self, session)
self.list = []
@@ -71,7 +72,7 @@ class StartImage(Screen):
'back': self.close})
self['label1'] = Label(_('Start the chosen system now ?'))
self['label2'] = Label(_('Select OK to run the image.'))
def select(self):
self.list = []
mypath = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
@@ -82,75 +83,75 @@ class StartImage(Screen):
self.list.append(res)
self['list'].list = self.list
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
def KeyOk(self):
if getImageNeoBoot() != 'Flash':
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
else:
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % ( getNeoLocation(), getImageNeoBoot()))
os.system('rm -rf %sImageBoot/%s/usr/bin/enigma2_pre_start.sh' % (getNeoLocation(), getImageNeoBoot()))
self.StartImageInNeoBoot()
#---------------------------------------------
getMountPointNeo2()
#---------------------------------------------
def StartImageInNeoBoot(self):
def StartImageInNeoBoot(self):
if getImageNeoBoot() != 'Flash':
if fileExists('%sImageBoot/%s/.control_ok' % ( getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
if fileExists('%sImageBoot/%s/.control_ok' % (getNeoLocation(), getImageNeoBoot())):
system('touch /tmp/.control_ok ')
else:
system('touch %sImageBoot/%s/.control_boot_new_image ' % ( getNeoLocation(), getImageNeoBoot() ))
system('touch %sImageBoot/%s/.control_boot_new_image ' % (getNeoLocation(), getImageNeoBoot()))
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
if getBoxVuModel() == 'zero4k':
if fileExists('/.multinfo') and getCPUtype() == 'ARMv7':
if getBoxVuModel() == 'zero4k':
os.system('mkdir -p /media/InternalFlash; mount /dev/mmcblk0p7 /media/InternalFlash')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
system('chmod 755 ' + LinkNeoBoot + '/files/kernel.sh')
self.sel = self['list'].getCurrent()
if self.sel:
self.sel = self.sel[2]
if self.sel == 0:
self.sel = self.sel[2]
if self.sel == 0:
if fileExists('/media/InternalFlash/etc/init.d/neobootmount.sh'):
os.system('rm -f /media/InternalFlash/etc/init.d/neobootmount.sh;')
if not fileExists('/bin/busybox.nosuid'):
os.system('ln -sf "busybox" "/bin/busybox.nosuid" ')
#################_____ARM____##########################
#VUPLUS ARM - Zero4k vu_mmcblk0p4.sh
if getBoxHostName() == 'vuzero4k' or getCPUSoC() == '72604':
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName()) ):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()) )
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
#################_____ARM____##########################
#VUPLUS ARM - Zero4k vu_mmcblk0p4.sh
if getBoxHostName() == 'vuzero4k' or getCPUSoC() == '72604':
if not fileExists('%sImagesUpload/.kernel/flash-kernel-%s.bin' % (getNeoLocation(), getBoxHostName())):
mess = (_('Error - in the location %sImagesUpload/.kernel/ \nkernel file not found flash-kernel-%s.bin') % (getNeoLocation(), getBoxHostName()))
self.session.open(MessageBox, mess, MessageBox.TYPE_INFO)
else:
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "init.sysvinit" "/media/InternalFlash/sbin/init"; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh '
if getImageNeoBoot() == 'Flash':
if fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "init.sysvinit" "/media/InternalFlash/sbin/init"; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh '
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif not fileExists('/.multinfo'):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sf "init.sysvinit" "/sbin/init"; reboot -dfhi'
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
elif getImageNeoBoot() != 'Flash':
if not fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'sleep 5; ln -sfn /sbin/neoinitarm /sbin/init; /etc/init.d/reboot'
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh '
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p1; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % ( getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'ln -sfn /sbin/neoinitarmvu /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh '
elif fileExists('/.multinfo'):
if not fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'dd if=' + getNeoLocation() + 'ImagesUpload/.kernel/flash-kernel-' + getBoxHostName() + '.bin of=/dev/mmcblk0p1; cd /media/InternalFlash; ln -sf "neoinitarm" "/media/InternalFlash/sbin/init" ; sleep 2; reboot -dfhi '
elif fileExists('%sImageBoot/%s/boot/zImage.%s' % (getNeoLocation(), getImageNeoBoot(), getBoxHostName())):
cmd = "echo -e '\n\n%s '" % _('...............NEOBOOT - REBOOT...............\nPlease wait, in a moment the decoder will be restarted...')
cmd1 = 'cd /media/InternalFlash; ln -sf "neoinitarmvu" "/media/InternalFlash/sbin/init"; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/kernel.sh '
self.session.open(Console, _('NeoBoot ARM VU'), [cmd, cmd1])
self.close()
self.close()
else:
os.system('echo "Flash " >> ' + getNeoLocation() + 'ImageBoot/.neonextboot')
self.messagebox = self.session.open(MessageBox, _('It looks like it that multiboot does not support this STB.'), MessageBox.TYPE_INFO, 8)

View File

@@ -24,6 +24,7 @@ import sys as _sys
import textwrap as _textwrap
from gettext import gettext as _
def _callable(obj):
return hasattr(obj, '__call__') or hasattr(obj, '__bases__')
@@ -36,6 +37,7 @@ PARSER = 'A...'
REMAINDER = '...'
_UNRECOGNIZED_ARGS_ATTR = '_unrecognized_args'
class _AttributeHolder(object):
def __repr__(self):
@@ -64,7 +66,7 @@ def _ensure_value(namespace, name, value):
class HelpFormatter(object):
def __init__(self, prog, indent_increment = 2, max_help_position = 24, width = None):
def __init__(self, prog, indent_increment=2, max_help_position=24, width=None):
if width is None:
try:
width = int(_os.environ['COLUMNS'])
@@ -95,7 +97,7 @@ class HelpFormatter(object):
class _Section(object):
def __init__(self, formatter, parent, heading = None):
def __init__(self, formatter, parent, heading=None):
self.formatter = formatter
self.parent = parent
self.heading = heading
@@ -108,7 +110,7 @@ class HelpFormatter(object):
for func, args in self.items:
func(*args)
item_help = join([ func(*args) for func, args in self.items ])
item_help = join([func(*args) for func, args in self.items])
if self.parent is not None:
self.formatter._dedent()
if not item_help:
@@ -143,7 +145,7 @@ class HelpFormatter(object):
self._add_item(self._format_text, [text])
return
def add_usage(self, usage, actions, groups, prefix = None):
def add_usage(self, usage, actions, groups, prefix=None):
if usage is not SUPPRESS:
args = (usage,
actions,
@@ -158,7 +160,7 @@ class HelpFormatter(object):
for subaction in self._iter_indented_subactions(action):
invocations.append(get_invocation(subaction))
invocation_length = max([ len(s) for s in invocations ])
invocation_length = max([len(s) for s in invocations])
action_length = invocation_length + self._current_indent
self._action_max_length = max(self._action_max_length, action_length)
self._add_item(self._format_action, [action])
@@ -175,7 +177,7 @@ class HelpFormatter(object):
return help
def _join_parts(self, part_strings):
return ''.join([ part for part in part_strings if part and part is not SUPPRESS ])
return ''.join([part for part in part_strings if part and part is not SUPPRESS])
def _format_usage(self, usage, actions, groups, prefix):
if prefix is None:
@@ -196,7 +198,7 @@ class HelpFormatter(object):
format = self._format_actions_usage
action_usage = format(optionals + positionals, groups)
usage = ' '.join([ s for s in [prog, action_usage] if s ])
usage = ' '.join([s for s in [prog, action_usage] if s])
text_width = self._width - self._current_indent
if len(prefix) + len(usage) > text_width:
part_regexp = '\\(.*?\\)+|\\[.*?\\]+|\\S+'
@@ -205,7 +207,7 @@ class HelpFormatter(object):
opt_parts = _re.findall(part_regexp, opt_usage)
pos_parts = _re.findall(part_regexp, pos_usage)
def get_lines(parts, indent, prefix = None):
def get_lines(parts, indent, prefix=None):
lines = []
line = []
if prefix is not None:
@@ -305,7 +307,7 @@ class HelpFormatter(object):
for i in sorted(inserts, reverse=True):
parts[i:i] = [inserts[i]]
text = ' '.join([ item for item in parts if item is not None ])
text = ' '.join([item for item in parts if item is not None])
open = '[\\[(]'
close = '[\\])]'
text = _re.sub('(%s) ' % open, '\\1', text)
@@ -376,7 +378,7 @@ class HelpFormatter(object):
if action.metavar is not None:
result = action.metavar
elif action.choices is not None:
choice_strs = [ str(choice) for choice in action.choices ]
choice_strs = [str(choice) for choice in action.choices]
result = '{%s}' % ','.join(choice_strs)
else:
result = default_metavar
@@ -404,7 +406,7 @@ class HelpFormatter(object):
elif action.nargs == PARSER:
result = '%s ...' % get_metavar(1)
else:
formats = [ '%s' for _ in range(action.nargs) ]
formats = ['%s' for _ in range(action.nargs)]
result = ' '.join(formats) % get_metavar(action.nargs)
return result
@@ -419,7 +421,7 @@ class HelpFormatter(object):
params[name] = params[name].__name__
if params.get('choices') is not None:
choices_str = ', '.join([ str(c) for c in params['choices'] ])
choices_str = ', '.join([str(c) for c in params['choices']])
params['choices'] = choices_str
return self._get_help_string(action) % params
@@ -450,7 +452,7 @@ class HelpFormatter(object):
class RawDescriptionHelpFormatter(HelpFormatter):
def _fill_text(self, text, width, indent):
return ''.join([ indent + line for line in text.splitlines(True) ])
return ''.join([indent + line for line in text.splitlines(True)])
class RawTextHelpFormatter(RawDescriptionHelpFormatter):
@@ -505,7 +507,7 @@ class ArgumentTypeError(Exception):
class Action(_AttributeHolder):
def __init__(self, option_strings, dest, nargs = None, const = None, default = None, type = None, choices = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, nargs=None, const=None, default=None, type=None, choices=None, required=False, help=None, metavar=None):
self.option_strings = option_strings
self.dest = dest
self.nargs = nargs
@@ -527,15 +529,15 @@ class Action(_AttributeHolder):
'choices',
'help',
'metavar']
return [ (name, getattr(self, name)) for name in names ]
return [(name, getattr(self, name)) for name in names]
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
raise NotImplementedError(_('.__call__() not defined'))
class _StoreAction(Action):
def __init__(self, option_strings, dest, nargs = None, const = None, default = None, type = None, choices = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, nargs=None, const=None, default=None, type=None, choices=None, required=False, help=None, metavar=None):
if nargs == 0:
raise ValueError('nargs for store actions must be > 0; if you have nothing to store, actions such as store true or store const may be more appropriate')
if const is not None and nargs != OPTIONAL:
@@ -543,34 +545,34 @@ class _StoreAction(Action):
super(_StoreAction, self).__init__(option_strings=option_strings, dest=dest, nargs=nargs, const=const, default=default, type=type, choices=choices, required=required, help=help, metavar=metavar)
return
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
setattr(namespace, self.dest, values)
class _StoreConstAction(Action):
def __init__(self, option_strings, dest, const, default = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, const, default=None, required=False, help=None, metavar=None):
super(_StoreConstAction, self).__init__(option_strings=option_strings, dest=dest, nargs=0, const=const, default=default, required=required, help=help)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
setattr(namespace, self.dest, self.const)
class _StoreTrueAction(_StoreConstAction):
def __init__(self, option_strings, dest, default = False, required = False, help = None):
def __init__(self, option_strings, dest, default=False, required=False, help=None):
super(_StoreTrueAction, self).__init__(option_strings=option_strings, dest=dest, const=True, default=default, required=required, help=help)
class _StoreFalseAction(_StoreConstAction):
def __init__(self, option_strings, dest, default = True, required = False, help = None):
def __init__(self, option_strings, dest, default=True, required=False, help=None):
super(_StoreFalseAction, self).__init__(option_strings=option_strings, dest=dest, const=False, default=default, required=required, help=help)
class _AppendAction(Action):
def __init__(self, option_strings, dest, nargs = None, const = None, default = None, type = None, choices = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, nargs=None, const=None, default=None, type=None, choices=None, required=False, help=None, metavar=None):
if nargs == 0:
raise ValueError('nargs for append actions must be > 0; if arg strings are not supplying the value to append, the append const action may be more appropriate')
if const is not None and nargs != OPTIONAL:
@@ -578,7 +580,7 @@ class _AppendAction(Action):
super(_AppendAction, self).__init__(option_strings=option_strings, dest=dest, nargs=nargs, const=const, default=default, type=type, choices=choices, required=required, help=help, metavar=metavar)
return
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
items = _copy.copy(_ensure_value(namespace, self.dest, []))
items.append(values)
setattr(namespace, self.dest, items)
@@ -586,10 +588,10 @@ class _AppendAction(Action):
class _AppendConstAction(Action):
def __init__(self, option_strings, dest, const, default = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, const, default=None, required=False, help=None, metavar=None):
super(_AppendConstAction, self).__init__(option_strings=option_strings, dest=dest, nargs=0, const=const, default=default, required=required, help=help, metavar=metavar)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
items = _copy.copy(_ensure_value(namespace, self.dest, []))
items.append(self.const)
setattr(namespace, self.dest, items)
@@ -597,31 +599,31 @@ class _AppendConstAction(Action):
class _CountAction(Action):
def __init__(self, option_strings, dest, default = None, required = False, help = None):
def __init__(self, option_strings, dest, default=None, required=False, help=None):
super(_CountAction, self).__init__(option_strings=option_strings, dest=dest, nargs=0, default=default, required=required, help=help)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
new_count = _ensure_value(namespace, self.dest, 0) + 1
setattr(namespace, self.dest, new_count)
class _HelpAction(Action):
def __init__(self, option_strings, dest = SUPPRESS, default = SUPPRESS, help = None):
def __init__(self, option_strings, dest=SUPPRESS, default=SUPPRESS, help=None):
super(_HelpAction, self).__init__(option_strings=option_strings, dest=dest, default=default, nargs=0, help=help)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
parser.print_help()
parser.exit()
class _VersionAction(Action):
def __init__(self, option_strings, version = None, dest = SUPPRESS, default = SUPPRESS, help = "show program's version number and exit"):
def __init__(self, option_strings, version=None, dest=SUPPRESS, default=SUPPRESS, help="show program's version number and exit"):
super(_VersionAction, self).__init__(option_strings=option_strings, dest=dest, default=default, nargs=0, help=help)
self.version = version
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
version = self.version
if version is None:
version = parser.version
@@ -639,7 +641,7 @@ class _SubParsersAction(Action):
sup = super(_SubParsersAction._ChoicesPseudoAction, self)
sup.__init__(option_strings=[], dest=name, help=help)
def __init__(self, option_strings, prog, parser_class, dest = SUPPRESS, help = None, metavar = None):
def __init__(self, option_strings, prog, parser_class, dest=SUPPRESS, help=None, metavar=None):
self._prog_prefix = prog
self._parser_class = parser_class
self._name_parser_map = _collections.OrderedDict()
@@ -660,7 +662,7 @@ class _SubParsersAction(Action):
def _get_subactions(self):
return self._choices_actions
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
parser_name = values[0]
arg_strings = values[1:]
if self.dest is not SUPPRESS:
@@ -680,7 +682,7 @@ class _SubParsersAction(Action):
class FileType(object):
def __init__(self, mode = 'r', bufsize = -1):
def __init__(self, mode='r', bufsize=-1):
self._mode = mode
self._bufsize = bufsize
@@ -756,7 +758,7 @@ class _ActionsContainer(object):
registry = self._registries.setdefault(registry_name, {})
registry[value] = object
def _registry_get(self, registry_name, value, default = None):
def _registry_get(self, registry_name, value, default=None):
return self._registries[registry_name].get(value, default)
def set_defaults(self, **kwargs):
@@ -888,7 +890,7 @@ class _ActionsContainer(object):
dest = dest.replace('-', '_')
return dict(kwargs, dest=dest, option_strings=option_strings)
def _pop_action_class(self, kwargs, default = None):
def _pop_action_class(self, kwargs, default=None):
action = kwargs.pop('action', default)
return self._registry_get('action', action, action)
@@ -913,7 +915,7 @@ class _ActionsContainer(object):
def _handle_conflict_error(self, action, conflicting_actions):
message = _('conflicting option string(s): %s')
conflict_string = ', '.join([ option_string for option_string, action in conflicting_actions ])
conflict_string = ', '.join([option_string for option_string, action in conflicting_actions])
raise ArgumentError(action, message % conflict_string)
def _handle_conflict_resolve(self, action, conflicting_actions):
@@ -928,7 +930,7 @@ class _ActionsContainer(object):
class _ArgumentGroup(_ActionsContainer):
def __init__(self, container, title = None, description = None, **kwargs):
def __init__(self, container, title=None, description=None, **kwargs):
update = kwargs.setdefault
update('conflict_handler', container.conflict_handler)
update('prefix_chars', container.prefix_chars)
@@ -956,7 +958,7 @@ class _ArgumentGroup(_ActionsContainer):
class _MutuallyExclusiveGroup(_ArgumentGroup):
def __init__(self, container, required = False):
def __init__(self, container, required=False):
super(_MutuallyExclusiveGroup, self).__init__(container)
self.required = required
self._container = container
@@ -976,7 +978,7 @@ class _MutuallyExclusiveGroup(_ArgumentGroup):
class ArgumentParser(_AttributeHolder, _ActionsContainer):
def __init__(self, prog = None, usage = None, description = None, epilog = None, version = None, parents = [], formatter_class = HelpFormatter, prefix_chars = '-', fromfile_prefix_chars = None, argument_default = None, conflict_handler = 'error', add_help = True):
def __init__(self, prog=None, usage=None, description=None, epilog=None, version=None, parents=[], formatter_class=HelpFormatter, prefix_chars='-', fromfile_prefix_chars=None, argument_default=None, conflict_handler='error', add_help=True):
if version is not None:
import warnings
warnings.warn('The "version" argument to ArgumentParser is deprecated. Please use "add_argument(..., action=\'version\', version="N", ...)" instead', DeprecationWarning)
@@ -1024,7 +1026,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
'formatter_class',
'conflict_handler',
'add_help']
return [ (name, getattr(self, name)) for name in names ]
return [(name, getattr(self, name)) for name in names]
def add_subparsers(self, **kwargs):
if self._subparsers is not None:
@@ -1055,19 +1057,19 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
return action
def _get_optional_actions(self):
return [ action for action in self._actions if action.option_strings ]
return [action for action in self._actions if action.option_strings]
def _get_positional_actions(self):
return [ action for action in self._actions if not action.option_strings ]
return [action for action in self._actions if not action.option_strings]
def parse_args(self, args = None, namespace = None):
def parse_args(self, args=None, namespace=None):
args, argv = self.parse_known_args(args, namespace)
if argv:
msg = _('unrecognized arguments: %s')
self.error(msg % ' '.join(argv))
return args
def parse_known_args(self, args = None, namespace = None):
def parse_known_args(self, args=None, namespace=None):
if args is None:
args = _sys.argv[1:]
if namespace is None:
@@ -1130,7 +1132,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
seen_actions = set()
seen_non_default_actions = set()
def take_action(action, argument_strings, option_string = None):
def take_action(action, argument_strings, option_string=None):
seen_actions.add(action)
argument_values = self._get_values(action, argument_strings)
if argument_values is not action.default:
@@ -1211,7 +1213,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
else:
max_option_string_index = -1
while start_index <= max_option_string_index:
next_option_string_index = min([ index for index in option_string_indices if index >= start_index ])
next_option_string_index = min([index for index in option_string_indices if index >= start_index])
if start_index != next_option_string_index:
positionals_end_index = consume_positionals(start_index)
if positionals_end_index > start_index:
@@ -1241,7 +1243,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
if action in seen_non_default_actions:
break
else:
names = [ _get_action_name(action) for action in group._group_actions if action.help is not SUPPRESS ]
names = [_get_action_name(action) for action in group._group_actions if action.help is not SUPPRESS]
msg = _('one of the arguments %s is required')
self.error(msg % ' '.join(names))
@@ -1291,10 +1293,10 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
result = []
for i in range(len(actions), 0, -1):
actions_slice = actions[:i]
pattern = ''.join([ self._get_nargs_pattern(action) for action in actions_slice ])
pattern = ''.join([self._get_nargs_pattern(action) for action in actions_slice])
match = _re.match(pattern, arg_strings_pattern)
if match is not None:
result.extend([ len(string) for string in match.groups() ])
result.extend([len(string) for string in match.groups()])
break
return result
@@ -1317,7 +1319,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
return (action, option_string, explicit_arg)
option_tuples = self._get_option_tuples(arg_string)
if len(option_tuples) > 1:
options = ', '.join([ option_string for action, option_string, explicit_arg in option_tuples ])
options = ', '.join([option_string for action, option_string, explicit_arg in option_tuples])
tup = (arg_string, options)
self.error(_('ambiguous option: %s could match %s') % tup)
elif len(option_tuples) == 1:
@@ -1388,7 +1390,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
def _get_values(self, action, arg_strings):
if action.nargs not in [PARSER, REMAINDER]:
arg_strings = [ s for s in arg_strings if s != '--' ]
arg_strings = [s for s in arg_strings if s != '--']
if not arg_strings and action.nargs == OPTIONAL:
if action.option_strings:
value = action.const
@@ -1408,12 +1410,12 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
value = self._get_value(action, arg_string)
self._check_value(action, value)
elif action.nargs == REMAINDER:
value = [ self._get_value(action, v) for v in arg_strings ]
value = [self._get_value(action, v) for v in arg_strings]
elif action.nargs == PARSER:
value = [ self._get_value(action, v) for v in arg_strings ]
value = [self._get_value(action, v) for v in arg_strings]
self._check_value(action, value[0])
else:
value = [ self._get_value(action, v) for v in arg_strings ]
value = [self._get_value(action, v) for v in arg_strings]
for v in value:
self._check_value(action, v)
@@ -1472,35 +1474,35 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
def _get_formatter(self):
return self.formatter_class(prog=self.prog)
def print_usage(self, file = None):
def print_usage(self, file=None):
if file is None:
file = _sys.stdout
self._print_message(self.format_usage(), file)
return
def print_help(self, file = None):
def print_help(self, file=None):
if file is None:
file = _sys.stdout
self._print_message(self.format_help(), file)
return
def print_version(self, file = None):
def print_version(self, file=None):
import warnings
warnings.warn('The print_version method is deprecated -- the "version" argument to ArgumentParser is no longer supported.', DeprecationWarning)
self._print_message(self.format_version(), file)
def _print_message(self, message, file = None):
def _print_message(self, message, file=None):
if message:
if file is None:
file = _sys.stderr
file.write(message)
return
def exit(self, status = 0, message = None):
def exit(self, status=0, message=None):
if message:
self._print_message(message, _sys.stderr)
_sys.exit(status)
def error(self, message):
self.print_usage(_sys.stderr)
self.exit(2, _('%s: error: %s\n') % (self.prog, message))
self.exit(2, _('%s: error: %s\n') % (self.prog, message))

View File

@@ -7,6 +7,7 @@ from ubi import display
from ubi.image import description as image
from ubi.block import layout
class ubi:
def __init__(self, ubi_file):
@@ -93,7 +94,7 @@ class ubi:
blocks = property(_get_blocks)
def display(self, tab = ''):
def display(self, tab=''):
display.ubi(self, tab)
@@ -136,4 +137,4 @@ def get_peb_size(path):
most_frequent = occurances[offset]
block_size = offset
return block_size
return block_size

View File

@@ -4,6 +4,7 @@ from ubi import display
from ubi.defines import *
from ubi.headers import *
class description(object):
def __init__(self, block_buf):
@@ -28,12 +29,12 @@ class description(object):
def __repr__(self):
return 'Block: PEB# %s: LEB# %s' % (self.peb_num, self.leb_num)
def display(self, tab = ''):
def display(self, tab=''):
display.block(self, tab)
def get_blocks_in_list(blocks, idx_list):
return {i:blocks[i] for i in idx_list}
return {i: blocks[i] for i in idx_list}
def extract_blocks(ubi):
@@ -56,4 +57,4 @@ def extract_blocks(ubi):
ubi.first_peb_num = cur_offset / ubi.file.block_size
ubi.file.start_offset = cur_offset
return blocks
return blocks

View File

@@ -1,6 +1,7 @@
#!/usr/bin/python
from ubi.block import sort
def group_pairs(blocks, layout_blocks_list):
layouts_grouped = [[blocks[layout_blocks_list[0]].peb_num]]
for l in layout_blocks_list[1:]:
@@ -20,4 +21,4 @@ def associate_blocks(blocks, layout_pairs, start_peb_num):
seq_blocks = sort.by_image_seq(blocks, blocks[layout_pair[0]].ec_hdr.image_seq)
layout_pair.append(seq_blocks)
return layout_pairs
return layout_pairs

View File

@@ -19,7 +19,7 @@ def by_image_seq(blocks, image_seq):
def by_range(blocks, block_range):
peb_range = range(block_range[0], block_range[1])
return [ i for i in blocks if i in peb_range ]
return [i for i in blocks if i in peb_range]
def by_leb(blocks):
@@ -36,7 +36,7 @@ def by_leb(blocks):
return sorted(blocks.iterkeys(), key=lambda x: blocks[x].leb_num)
def by_vol_id(blocks, slist = None):
def by_vol_id(blocks, slist=None):
vol_blocks = {}
for i in blocks:
if slist and i not in slist:
@@ -50,7 +50,7 @@ def by_vol_id(blocks, slist = None):
return vol_blocks
def clean_bad(blocks, slist = None):
def clean_bad(blocks, slist=None):
clean_blocks = []
for i in range(0, len(blocks)):
if slist and i not in slist:
@@ -61,7 +61,7 @@ def clean_bad(blocks, slist = None):
return clean_blocks
def by_type(blocks, slist = None):
def by_type(blocks, slist=None):
layout = []
data = []
int_vol = []
@@ -81,4 +81,4 @@ def by_type(blocks, slist = None):
return (layout,
data,
int_vol,
unknown)
unknown)

View File

@@ -1,7 +1,8 @@
#!/usr/bin/python
from ubi.defines import PRINT_COMPAT_LIST, PRINT_VOL_TYPE_LIST, UBI_VTBL_AUTORESIZE_FLG
def ubi(ubi, tab = ''):
def ubi(ubi, tab=''):
print '%sUBI File' % tab
print '%s---------------------' % tab
print '\t%sMin I/O: %s' % (tab, ubi.min_io_size)
@@ -15,7 +16,7 @@ def ubi(ubi, tab = ''):
print '\t%sFirst UBI PEB Number: %s' % (tab, ubi.first_peb_num)
def image(image, tab = ''):
def image(image, tab=''):
print '%s%s' % (tab, image)
print '%s---------------------' % tab
print '\t%sImage Sequence Num: %s' % (tab, image.image_seq)
@@ -25,7 +26,7 @@ def image(image, tab = ''):
print '\t%sPEB Range: %s - %s' % (tab, image.peb_range[0], image.peb_range[1])
def volume(volume, tab = ''):
def volume(volume, tab=''):
print '%s%s' % (tab, volume)
print '%s---------------------' % tab
print '\t%sVol ID: %s' % (tab, volume.vol_id)
@@ -38,7 +39,7 @@ def volume(volume, tab = ''):
print '\n'
def block(block, tab = '\t'):
def block(block, tab='\t'):
print '%s%s' % (tab, block)
print '%s---------------------' % tab
print '\t%sFile Offset: %s' % (tab, block.file_offset)
@@ -68,14 +69,14 @@ def block(block, tab = '\t'):
print '\n'
def ec_hdr(ec_hdr, tab = ''):
def ec_hdr(ec_hdr, tab=''):
for key, value in ec_hdr:
if key == 'errors':
value = ','.join(value)
print '%s%s: %r' % (tab, key, value)
def vid_hdr(vid_hdr, tab = ''):
def vid_hdr(vid_hdr, tab=''):
for key, value in vid_hdr:
if key == 'errors':
value = ','.join(value)
@@ -92,7 +93,7 @@ def vid_hdr(vid_hdr, tab = ''):
print '%s%s: %s' % (tab, key, value)
def vol_rec(vol_rec, tab = ''):
def vol_rec(vol_rec, tab=''):
for key, value in vol_rec:
if key == 'errors':
value = ','.join(value)
@@ -105,4 +106,4 @@ def vol_rec(vol_rec, tab = ''):
value = 'autoresize'
elif key == 'name':
value = value.strip('\x00')
print '%s%s: %s' % (tab, key, value)
print '%s%s: %s' % (tab, key, value)

View File

@@ -3,6 +3,7 @@ import struct
from ubi.defines import *
from ubi.headers import errors
class ec_hdr(object):
def __init__(self, buf):
@@ -86,4 +87,4 @@ def extract_vtbl_rec(buf):
vtbl_rec_ret.rec_index = i
vtbl_recs.append(vtbl_rec_ret)
return vtbl_recs
return vtbl_recs

View File

@@ -2,6 +2,7 @@
from zlib import crc32
from ubi.defines import *
def ec_hdr(ec_hdr, buf):
if ec_hdr.hdr_crc != ~crc32(buf[:-4]) & 4294967295L:
ec_hdr.errors.append('crc')
@@ -25,4 +26,4 @@ def vtbl_rec(vtbl_rec, buf):
vtbl_rec.errors.append('crc')
if not likely_vtbl:
vtbl_rec.errors = ['False']
return vtbl_rec
return vtbl_rec

View File

@@ -3,6 +3,7 @@ from ubi import display
from ubi.volume import get_volumes
from ubi.block import get_blocks_in_list
class description(object):
def __init__(self, blocks, layout_info):
@@ -34,5 +35,5 @@ class description(object):
volumes = property(_get_volumes)
def display(self, tab = ''):
display.image(self, tab)
def display(self, tab=''):
display.image(self, tab)

View File

@@ -2,6 +2,7 @@
from ubi import display
from ubi.block import sort, get_blocks_in_list
class description(object):
def __init__(self, vol_id, vol_rec, block_list):
@@ -41,7 +42,7 @@ class description(object):
def get_blocks(self, blocks):
return get_blocks_in_list(blocks, self._block_list)
def display(self, tab = ''):
def display(self, tab=''):
display.volume(self, tab)
def reader(self, ubi):
@@ -64,4 +65,4 @@ def get_volumes(blocks, layout_info):
vol_blocks_lists[vol_rec.rec_index] = []
volumes[vol_name] = description(vol_rec.rec_index, vol_rec, vol_blocks_lists[vol_rec.rec_index])
return volumes
return volumes

View File

@@ -5,7 +5,7 @@ import sys
#import argparse_neo
try:
import argparse
except:
except:
import argparse_neo
from ubi import ubi, get_peb_size
from ubifs import ubifs
@@ -18,7 +18,7 @@ if __name__ == '__main__':
# parser = argparse_neo.ArgumentParser(usage=usage, description=description)
try:
parser = argparse.ArgumentParser(usage=usage, description=description)
except:
except:
parser = argparse_neo.ArgumentParser(usage=usage, description=description)
parser.add_argument('-l', '--log-file', dest='logpath', help='Log output to file output/LOGPATH. (default: ubifs_output.log)')
parser.add_argument('-k', '--keep-permissions', action='store_true', dest='permissions', help='Maintain file permissions, requires running as root. (default: False)')
@@ -70,4 +70,4 @@ if __name__ == '__main__':
print 'Wait almost over ...\nLoading the image to: %s' % vol_out_path
extract_files(uubifs, vol_out_path, perms)
sys.exit(0)
sys.exit(0)

View File

@@ -1,9 +1,10 @@
#!/usr/bin/python
from ubi.block import sort
class ubi_file(object):
def __init__(self, path, block_size, start_offset = 0, end_offset = None):
def __init__(self, path, block_size, start_offset=0, end_offset=None):
self._fhandle = open(path, 'rb')
self._start_offset = start_offset
if end_offset:
@@ -113,4 +114,4 @@ class leb_virtual_file:
yield '\xff' * self._ubi.leb_size
last_leb += 1
yield self._ubi.file.read_block_data(self._ubi.blocks[block])
yield self._ubi.file.read_block_data(self._ubi.blocks[block])

View File

@@ -6,6 +6,7 @@ from ubifs import nodes
from ubifs.nodes import extract
from ubifs.log import log
class ubifs:
def __init__(self, ubifs_file):
@@ -73,4 +74,4 @@ def get_leb_size(path):
return block_size
f.close()
return block_size
return block_size

View File

@@ -3,6 +3,7 @@ import os
import sys
import ui
class log:
def __init__(self):
@@ -30,4 +31,4 @@ class log:
for key, value in n:
buf += '\t%s: %s\n' % (key, value)
self._out(buf)
self._out(buf)

View File

@@ -27,6 +27,7 @@ key_types = ['ino',
'dent',
'xent']
def parse_key(key):
hkey, lkey = struct.unpack('<II', key[0:UBIFS_SK_LEN])
ino_num = hkey & UBIFS_S_KEY_HASH_MASK
@@ -43,4 +44,4 @@ def decompress(ctype, unc_len, data):
if ctype == UBIFS_COMPR_ZLIB:
return zlib.decompress(data, -11)
else:
return data
return data

View File

@@ -3,6 +3,7 @@ import struct
from ubifs.defines import *
from ubifs.misc import parse_key
class common_hdr(object):
def __init__(self, buf):
@@ -148,4 +149,4 @@ class branch(object):
def __iter__(self):
for key in dir(self):
if not key.startswith('_'):
yield (key, getattr(self, key))
yield (key, getattr(self, key))

View File

@@ -2,36 +2,37 @@
from ubifs import nodes
from ubifs.defines import *
def common_hdr(ubifs, lnum, offset = 0):
def common_hdr(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
return nodes.common_hdr(ubifs.file.read(UBIFS_COMMON_HDR_SZ))
def ino_node(ubifs, lnum, offset = 0):
def ino_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
inon = nodes.ino_node(ubifs.file.read(UBIFS_INO_NODE_SZ))
inon.data = ubifs.file.read(inon.data_len)
return inon
def mst_node(ubifs, lnum, offset = 0):
def mst_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
return nodes.mst_node(ubifs.file.read(UBIFS_MST_NODE_SZ))
def sb_node(ubifs, offset = 0):
def sb_node(ubifs, offset=0):
ubifs.file.seek(offset)
return nodes.sb_node(ubifs.file.read(UBIFS_SB_NODE_SZ))
def dent_node(ubifs, lnum, offset = 0):
def dent_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
den = nodes.dent_node(ubifs.file.read(UBIFS_DENT_NODE_SZ))
den.name = '%s' % ubifs.file.read(den.nlen)
return den
def data_node(ubifs, lnum, offset = 0, node_len = 0):
def data_node(ubifs, lnum, offset=0, node_len=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
datn = nodes.data_node(ubifs.file.read(UBIFS_DATA_NODE_SZ))
datn.offset = ubifs.leb_size * lnum + offset + UBIFS_DATA_NODE_SZ
@@ -39,10 +40,10 @@ def data_node(ubifs, lnum, offset = 0, node_len = 0):
return datn
def idx_node(ubifs, lnum, offset = 0):
def idx_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
idxn = nodes.idx_node(ubifs.file.read(UBIFS_IDX_NODE_SZ))
for i in range(0, idxn.child_cnt):
idxn.branches.append(nodes.branch(ubifs.file.read(UBIFS_BRANCH_SZ)))
return idxn
return idxn

View File

@@ -4,7 +4,8 @@ import struct
from ubifs.defines import *
from ubifs.misc import decompress
def dents(ubifs, inodes, dent_node, path = '', perms = False):
def dents(ubifs, inodes, dent_node, path='', perms=False):
inode = inodes[dent_node.inum]
dent_path = os.path.join(path, dent_node.name)
if dent_node.type == UBIFS_ITYPE_DIR:
@@ -111,4 +112,4 @@ def process_reg_file(ubifs, inode, path):
if inode['ino'].size > len(buf):
buf += '\x00' * (inode['ino'].size - len(buf))
return buf
return buf

View File

@@ -2,7 +2,8 @@
from ubifs import extract
from ubifs.defines import *
def index(ubifs, lnum, offset, inodes = {}):
def index(ubifs, lnum, offset, inodes={}):
chdr = extract.common_hdr(ubifs, lnum, offset)
if chdr.node_type == UBIFS_IDX_NODE:
idxn = extract.idx_node(ubifs, lnum, offset + UBIFS_COMMON_HDR_SZ)
@@ -30,4 +31,4 @@ def index(ubifs, lnum, offset, inodes = {}):
inodes[ino_num] = {}
if 'dent' not in inodes[ino_num]:
inodes[ino_num]['dent'] = []
inodes[ino_num]['dent'].append(dn)
inodes[ino_num]['dent'].append(dn)

View File

@@ -6,7 +6,8 @@ from ubifs.defines import PRINT_UBIFS_KEY_HASH, PRINT_UBIFS_COMPR
from ubi.defines import PRINT_VOL_TYPE_LIST, UBI_VTBL_AUTORESIZE_FLG
output_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'output')
def extract_files(ubifs, out_path, perms = False):
def extract_files(ubifs, out_path, perms=False):
try:
inodes = {}
walk.index(ubifs, ubifs.master_node.root_lnum, ubifs.master_node.root_offs, inodes)
@@ -85,4 +86,4 @@ def get_ubi_params(ubi):
'args': ubi_args[img_seq][volume],
'ini': ini_params[img_seq][volume]}
return ubi_params
return ubi_params

View File

@@ -24,6 +24,7 @@ import sys as _sys
import textwrap as _textwrap
from gettext import gettext as _
def _callable(obj):
return hasattr(obj, '__call__') or hasattr(obj, '__bases__')
@@ -36,6 +37,7 @@ PARSER = 'A...'
REMAINDER = '...'
_UNRECOGNIZED_ARGS_ATTR = '_unrecognized_args'
class _AttributeHolder(object):
def __repr__(self):
@@ -64,7 +66,7 @@ def _ensure_value(namespace, name, value):
class HelpFormatter(object):
def __init__(self, prog, indent_increment = 2, max_help_position = 24, width = None):
def __init__(self, prog, indent_increment=2, max_help_position=24, width=None):
if width is None:
try:
width = int(_os.environ['COLUMNS'])
@@ -95,7 +97,7 @@ class HelpFormatter(object):
class _Section(object):
def __init__(self, formatter, parent, heading = None):
def __init__(self, formatter, parent, heading=None):
self.formatter = formatter
self.parent = parent
self.heading = heading
@@ -108,7 +110,7 @@ class HelpFormatter(object):
for func, args in self.items:
func(*args)
item_help = join([ func(*args) for func, args in self.items ])
item_help = join([func(*args) for func, args in self.items])
if self.parent is not None:
self.formatter._dedent()
if not item_help:
@@ -143,7 +145,7 @@ class HelpFormatter(object):
self._add_item(self._format_text, [text])
return
def add_usage(self, usage, actions, groups, prefix = None):
def add_usage(self, usage, actions, groups, prefix=None):
if usage is not SUPPRESS:
args = (usage,
actions,
@@ -158,7 +160,7 @@ class HelpFormatter(object):
for subaction in self._iter_indented_subactions(action):
invocations.append(get_invocation(subaction))
invocation_length = max([ len(s) for s in invocations ])
invocation_length = max([len(s) for s in invocations])
action_length = invocation_length + self._current_indent
self._action_max_length = max(self._action_max_length, action_length)
self._add_item(self._format_action, [action])
@@ -175,7 +177,7 @@ class HelpFormatter(object):
return help
def _join_parts(self, part_strings):
return ''.join([ part for part in part_strings if part and part is not SUPPRESS ])
return ''.join([part for part in part_strings if part and part is not SUPPRESS])
def _format_usage(self, usage, actions, groups, prefix):
if prefix is None:
@@ -196,7 +198,7 @@ class HelpFormatter(object):
format = self._format_actions_usage
action_usage = format(optionals + positionals, groups)
usage = ' '.join([ s for s in [prog, action_usage] if s ])
usage = ' '.join([s for s in [prog, action_usage] if s])
text_width = self._width - self._current_indent
if len(prefix) + len(usage) > text_width:
part_regexp = '\\(.*?\\)+|\\[.*?\\]+|\\S+'
@@ -205,7 +207,7 @@ class HelpFormatter(object):
opt_parts = _re.findall(part_regexp, opt_usage)
pos_parts = _re.findall(part_regexp, pos_usage)
def get_lines(parts, indent, prefix = None):
def get_lines(parts, indent, prefix=None):
lines = []
line = []
if prefix is not None:
@@ -305,7 +307,7 @@ class HelpFormatter(object):
for i in sorted(inserts, reverse=True):
parts[i:i] = [inserts[i]]
text = ' '.join([ item for item in parts if item is not None ])
text = ' '.join([item for item in parts if item is not None])
open = '[\\[(]'
close = '[\\])]'
text = _re.sub('(%s) ' % open, '\\1', text)
@@ -376,7 +378,7 @@ class HelpFormatter(object):
if action.metavar is not None:
result = action.metavar
elif action.choices is not None:
choice_strs = [ str(choice) for choice in action.choices ]
choice_strs = [str(choice) for choice in action.choices]
result = '{%s}' % ','.join(choice_strs)
else:
result = default_metavar
@@ -404,7 +406,7 @@ class HelpFormatter(object):
elif action.nargs == PARSER:
result = '%s ...' % get_metavar(1)
else:
formats = [ '%s' for _ in range(action.nargs) ]
formats = ['%s' for _ in range(action.nargs)]
result = ' '.join(formats) % get_metavar(action.nargs)
return result
@@ -419,7 +421,7 @@ class HelpFormatter(object):
params[name] = params[name].__name__
if params.get('choices') is not None:
choices_str = ', '.join([ str(c) for c in params['choices'] ])
choices_str = ', '.join([str(c) for c in params['choices']])
params['choices'] = choices_str
return self._get_help_string(action) % params
@@ -450,7 +452,7 @@ class HelpFormatter(object):
class RawDescriptionHelpFormatter(HelpFormatter):
def _fill_text(self, text, width, indent):
return ''.join([ indent + line for line in text.splitlines(True) ])
return ''.join([indent + line for line in text.splitlines(True)])
class RawTextHelpFormatter(RawDescriptionHelpFormatter):
@@ -505,7 +507,7 @@ class ArgumentTypeError(Exception):
class Action(_AttributeHolder):
def __init__(self, option_strings, dest, nargs = None, const = None, default = None, type = None, choices = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, nargs=None, const=None, default=None, type=None, choices=None, required=False, help=None, metavar=None):
self.option_strings = option_strings
self.dest = dest
self.nargs = nargs
@@ -527,15 +529,15 @@ class Action(_AttributeHolder):
'choices',
'help',
'metavar']
return [ (name, getattr(self, name)) for name in names ]
return [(name, getattr(self, name)) for name in names]
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
raise NotImplementedError(_('.__call__() not defined'))
class _StoreAction(Action):
def __init__(self, option_strings, dest, nargs = None, const = None, default = None, type = None, choices = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, nargs=None, const=None, default=None, type=None, choices=None, required=False, help=None, metavar=None):
if nargs == 0:
raise ValueError('nargs for store actions must be > 0; if you have nothing to store, actions such as store true or store const may be more appropriate')
if const is not None and nargs != OPTIONAL:
@@ -543,34 +545,34 @@ class _StoreAction(Action):
super(_StoreAction, self).__init__(option_strings=option_strings, dest=dest, nargs=nargs, const=const, default=default, type=type, choices=choices, required=required, help=help, metavar=metavar)
return
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
setattr(namespace, self.dest, values)
class _StoreConstAction(Action):
def __init__(self, option_strings, dest, const, default = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, const, default=None, required=False, help=None, metavar=None):
super(_StoreConstAction, self).__init__(option_strings=option_strings, dest=dest, nargs=0, const=const, default=default, required=required, help=help)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
setattr(namespace, self.dest, self.const)
class _StoreTrueAction(_StoreConstAction):
def __init__(self, option_strings, dest, default = False, required = False, help = None):
def __init__(self, option_strings, dest, default=False, required=False, help=None):
super(_StoreTrueAction, self).__init__(option_strings=option_strings, dest=dest, const=True, default=default, required=required, help=help)
class _StoreFalseAction(_StoreConstAction):
def __init__(self, option_strings, dest, default = True, required = False, help = None):
def __init__(self, option_strings, dest, default=True, required=False, help=None):
super(_StoreFalseAction, self).__init__(option_strings=option_strings, dest=dest, const=False, default=default, required=required, help=help)
class _AppendAction(Action):
def __init__(self, option_strings, dest, nargs = None, const = None, default = None, type = None, choices = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, nargs=None, const=None, default=None, type=None, choices=None, required=False, help=None, metavar=None):
if nargs == 0:
raise ValueError('nargs for append actions must be > 0; if arg strings are not supplying the value to append, the append const action may be more appropriate')
if const is not None and nargs != OPTIONAL:
@@ -578,7 +580,7 @@ class _AppendAction(Action):
super(_AppendAction, self).__init__(option_strings=option_strings, dest=dest, nargs=nargs, const=const, default=default, type=type, choices=choices, required=required, help=help, metavar=metavar)
return
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
items = _copy.copy(_ensure_value(namespace, self.dest, []))
items.append(values)
setattr(namespace, self.dest, items)
@@ -586,10 +588,10 @@ class _AppendAction(Action):
class _AppendConstAction(Action):
def __init__(self, option_strings, dest, const, default = None, required = False, help = None, metavar = None):
def __init__(self, option_strings, dest, const, default=None, required=False, help=None, metavar=None):
super(_AppendConstAction, self).__init__(option_strings=option_strings, dest=dest, nargs=0, const=const, default=default, required=required, help=help, metavar=metavar)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
items = _copy.copy(_ensure_value(namespace, self.dest, []))
items.append(self.const)
setattr(namespace, self.dest, items)
@@ -597,31 +599,31 @@ class _AppendConstAction(Action):
class _CountAction(Action):
def __init__(self, option_strings, dest, default = None, required = False, help = None):
def __init__(self, option_strings, dest, default=None, required=False, help=None):
super(_CountAction, self).__init__(option_strings=option_strings, dest=dest, nargs=0, default=default, required=required, help=help)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
new_count = _ensure_value(namespace, self.dest, 0) + 1
setattr(namespace, self.dest, new_count)
class _HelpAction(Action):
def __init__(self, option_strings, dest = SUPPRESS, default = SUPPRESS, help = None):
def __init__(self, option_strings, dest=SUPPRESS, default=SUPPRESS, help=None):
super(_HelpAction, self).__init__(option_strings=option_strings, dest=dest, default=default, nargs=0, help=help)
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
parser.print_help()
parser.exit()
class _VersionAction(Action):
def __init__(self, option_strings, version = None, dest = SUPPRESS, default = SUPPRESS, help = "show program's version number and exit"):
def __init__(self, option_strings, version=None, dest=SUPPRESS, default=SUPPRESS, help="show program's version number and exit"):
super(_VersionAction, self).__init__(option_strings=option_strings, dest=dest, default=default, nargs=0, help=help)
self.version = version
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
version = self.version
if version is None:
version = parser.version
@@ -639,7 +641,7 @@ class _SubParsersAction(Action):
sup = super(_SubParsersAction._ChoicesPseudoAction, self)
sup.__init__(option_strings=[], dest=name, help=help)
def __init__(self, option_strings, prog, parser_class, dest = SUPPRESS, help = None, metavar = None):
def __init__(self, option_strings, prog, parser_class, dest=SUPPRESS, help=None, metavar=None):
self._prog_prefix = prog
self._parser_class = parser_class
self._name_parser_map = _collections.OrderedDict()
@@ -660,7 +662,7 @@ class _SubParsersAction(Action):
def _get_subactions(self):
return self._choices_actions
def __call__(self, parser, namespace, values, option_string = None):
def __call__(self, parser, namespace, values, option_string=None):
parser_name = values[0]
arg_strings = values[1:]
if self.dest is not SUPPRESS:
@@ -680,7 +682,7 @@ class _SubParsersAction(Action):
class FileType(object):
def __init__(self, mode = 'r', bufsize = -1):
def __init__(self, mode='r', bufsize=-1):
self._mode = mode
self._bufsize = bufsize
@@ -756,7 +758,7 @@ class _ActionsContainer(object):
registry = self._registries.setdefault(registry_name, {})
registry[value] = object
def _registry_get(self, registry_name, value, default = None):
def _registry_get(self, registry_name, value, default=None):
return self._registries[registry_name].get(value, default)
def set_defaults(self, **kwargs):
@@ -888,7 +890,7 @@ class _ActionsContainer(object):
dest = dest.replace('-', '_')
return dict(kwargs, dest=dest, option_strings=option_strings)
def _pop_action_class(self, kwargs, default = None):
def _pop_action_class(self, kwargs, default=None):
action = kwargs.pop('action', default)
return self._registry_get('action', action, action)
@@ -913,7 +915,7 @@ class _ActionsContainer(object):
def _handle_conflict_error(self, action, conflicting_actions):
message = _('conflicting option string(s): %s')
conflict_string = ', '.join([ option_string for option_string, action in conflicting_actions ])
conflict_string = ', '.join([option_string for option_string, action in conflicting_actions])
raise ArgumentError(action, message % conflict_string)
def _handle_conflict_resolve(self, action, conflicting_actions):
@@ -928,7 +930,7 @@ class _ActionsContainer(object):
class _ArgumentGroup(_ActionsContainer):
def __init__(self, container, title = None, description = None, **kwargs):
def __init__(self, container, title=None, description=None, **kwargs):
update = kwargs.setdefault
update('conflict_handler', container.conflict_handler)
update('prefix_chars', container.prefix_chars)
@@ -956,7 +958,7 @@ class _ArgumentGroup(_ActionsContainer):
class _MutuallyExclusiveGroup(_ArgumentGroup):
def __init__(self, container, required = False):
def __init__(self, container, required=False):
super(_MutuallyExclusiveGroup, self).__init__(container)
self.required = required
self._container = container
@@ -976,7 +978,7 @@ class _MutuallyExclusiveGroup(_ArgumentGroup):
class ArgumentParser(_AttributeHolder, _ActionsContainer):
def __init__(self, prog = None, usage = None, description = None, epilog = None, version = None, parents = [], formatter_class = HelpFormatter, prefix_chars = '-', fromfile_prefix_chars = None, argument_default = None, conflict_handler = 'error', add_help = True):
def __init__(self, prog=None, usage=None, description=None, epilog=None, version=None, parents=[], formatter_class=HelpFormatter, prefix_chars='-', fromfile_prefix_chars=None, argument_default=None, conflict_handler='error', add_help=True):
if version is not None:
import warnings
warnings.warn('The "version" argument to ArgumentParser is deprecated. Please use "add_argument(..., action=\'version\', version="N", ...)" instead', DeprecationWarning)
@@ -1024,7 +1026,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
'formatter_class',
'conflict_handler',
'add_help']
return [ (name, getattr(self, name)) for name in names ]
return [(name, getattr(self, name)) for name in names]
def add_subparsers(self, **kwargs):
if self._subparsers is not None:
@@ -1055,19 +1057,19 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
return action
def _get_optional_actions(self):
return [ action for action in self._actions if action.option_strings ]
return [action for action in self._actions if action.option_strings]
def _get_positional_actions(self):
return [ action for action in self._actions if not action.option_strings ]
return [action for action in self._actions if not action.option_strings]
def parse_args(self, args = None, namespace = None):
def parse_args(self, args=None, namespace=None):
args, argv = self.parse_known_args(args, namespace)
if argv:
msg = _('unrecognized arguments: %s')
self.error(msg % ' '.join(argv))
return args
def parse_known_args(self, args = None, namespace = None):
def parse_known_args(self, args=None, namespace=None):
if args is None:
args = _sys.argv[1:]
if namespace is None:
@@ -1130,7 +1132,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
seen_actions = set()
seen_non_default_actions = set()
def take_action(action, argument_strings, option_string = None):
def take_action(action, argument_strings, option_string=None):
seen_actions.add(action)
argument_values = self._get_values(action, argument_strings)
if argument_values is not action.default:
@@ -1211,7 +1213,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
else:
max_option_string_index = -1
while start_index <= max_option_string_index:
next_option_string_index = min([ index for index in option_string_indices if index >= start_index ])
next_option_string_index = min([index for index in option_string_indices if index >= start_index])
if start_index != next_option_string_index:
positionals_end_index = consume_positionals(start_index)
if positionals_end_index > start_index:
@@ -1241,7 +1243,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
if action in seen_non_default_actions:
break
else:
names = [ _get_action_name(action) for action in group._group_actions if action.help is not SUPPRESS ]
names = [_get_action_name(action) for action in group._group_actions if action.help is not SUPPRESS]
msg = _('one of the arguments %s is required')
self.error(msg % ' '.join(names))
@@ -1291,10 +1293,10 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
result = []
for i in range(len(actions), 0, -1):
actions_slice = actions[:i]
pattern = ''.join([ self._get_nargs_pattern(action) for action in actions_slice ])
pattern = ''.join([self._get_nargs_pattern(action) for action in actions_slice])
match = _re.match(pattern, arg_strings_pattern)
if match is not None:
result.extend([ len(string) for string in match.groups() ])
result.extend([len(string) for string in match.groups()])
break
return result
@@ -1317,7 +1319,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
return (action, option_string, explicit_arg)
option_tuples = self._get_option_tuples(arg_string)
if len(option_tuples) > 1:
options = ', '.join([ option_string for action, option_string, explicit_arg in option_tuples ])
options = ', '.join([option_string for action, option_string, explicit_arg in option_tuples])
tup = (arg_string, options)
self.error(_('ambiguous option: %s could match %s') % tup)
elif len(option_tuples) == 1:
@@ -1388,7 +1390,7 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
def _get_values(self, action, arg_strings):
if action.nargs not in [PARSER, REMAINDER]:
arg_strings = [ s for s in arg_strings if s != '--' ]
arg_strings = [s for s in arg_strings if s != '--']
if not arg_strings and action.nargs == OPTIONAL:
if action.option_strings:
value = action.const
@@ -1408,12 +1410,12 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
value = self._get_value(action, arg_string)
self._check_value(action, value)
elif action.nargs == REMAINDER:
value = [ self._get_value(action, v) for v in arg_strings ]
value = [self._get_value(action, v) for v in arg_strings]
elif action.nargs == PARSER:
value = [ self._get_value(action, v) for v in arg_strings ]
value = [self._get_value(action, v) for v in arg_strings]
self._check_value(action, value[0])
else:
value = [ self._get_value(action, v) for v in arg_strings ]
value = [self._get_value(action, v) for v in arg_strings]
for v in value:
self._check_value(action, v)
@@ -1472,35 +1474,35 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
def _get_formatter(self):
return self.formatter_class(prog=self.prog)
def print_usage(self, file = None):
def print_usage(self, file=None):
if file is None:
file = _sys.stdout
self._print_message(self.format_usage(), file)
return
def print_help(self, file = None):
def print_help(self, file=None):
if file is None:
file = _sys.stdout
self._print_message(self.format_help(), file)
return
def print_version(self, file = None):
def print_version(self, file=None):
import warnings
warnings.warn('The print_version method is deprecated -- the "version" argument to ArgumentParser is no longer supported.', DeprecationWarning)
self._print_message(self.format_version(), file)
def _print_message(self, message, file = None):
def _print_message(self, message, file=None):
if message:
if file is None:
file = _sys.stderr
file.write(message)
return
def exit(self, status = 0, message = None):
def exit(self, status=0, message=None):
if message:
self._print_message(message, _sys.stderr)
_sys.exit(status)
def error(self, message):
self.print_usage(_sys.stderr)
self.exit(2, _('%s: error: %s\n') % (self.prog, message))
self.exit(2, _('%s: error: %s\n') % (self.prog, message))

View File

@@ -7,6 +7,7 @@ from ubi import display
from ubi.image import description as image
from ubi.block import layout
class ubi:
def __init__(self, ubi_file):
@@ -93,7 +94,7 @@ class ubi:
blocks = property(_get_blocks)
def display(self, tab = ''):
def display(self, tab=''):
display.ubi(self, tab)
@@ -136,4 +137,4 @@ def get_peb_size(path):
most_frequent = occurances[offset]
block_size = offset
return block_size
return block_size

View File

@@ -4,6 +4,7 @@ from ubi import display
from ubi.defines import *
from ubi.headers import *
class description(object):
def __init__(self, block_buf):
@@ -28,12 +29,12 @@ class description(object):
def __repr__(self):
return 'Block: PEB# %s: LEB# %s' % (self.peb_num, self.leb_num)
def display(self, tab = ''):
def display(self, tab=''):
display.block(self, tab)
def get_blocks_in_list(blocks, idx_list):
return {i:blocks[i] for i in idx_list}
return {i: blocks[i] for i in idx_list}
def extract_blocks(ubi):
@@ -56,4 +57,4 @@ def extract_blocks(ubi):
ubi.first_peb_num = cur_offset / ubi.file.block_size
ubi.file.start_offset = cur_offset
return blocks
return blocks

View File

@@ -1,6 +1,7 @@
#!/usr/bin/python
from ubi.block import sort
def group_pairs(blocks, layout_blocks_list):
layouts_grouped = [[blocks[layout_blocks_list[0]].peb_num]]
for l in layout_blocks_list[1:]:
@@ -20,4 +21,4 @@ def associate_blocks(blocks, layout_pairs, start_peb_num):
seq_blocks = sort.by_image_seq(blocks, blocks[layout_pair[0]].ec_hdr.image_seq)
layout_pair.append(seq_blocks)
return layout_pairs
return layout_pairs

View File

@@ -19,7 +19,7 @@ def by_image_seq(blocks, image_seq):
def by_range(blocks, block_range):
peb_range = range(block_range[0], block_range[1])
return [ i for i in blocks if i in peb_range ]
return [i for i in blocks if i in peb_range]
def by_leb(blocks):
@@ -36,7 +36,7 @@ def by_leb(blocks):
return sorted(blocks.iterkeys(), key=lambda x: blocks[x].leb_num)
def by_vol_id(blocks, slist = None):
def by_vol_id(blocks, slist=None):
vol_blocks = {}
for i in blocks:
if slist and i not in slist:
@@ -50,7 +50,7 @@ def by_vol_id(blocks, slist = None):
return vol_blocks
def clean_bad(blocks, slist = None):
def clean_bad(blocks, slist=None):
clean_blocks = []
for i in range(0, len(blocks)):
if slist and i not in slist:
@@ -61,7 +61,7 @@ def clean_bad(blocks, slist = None):
return clean_blocks
def by_type(blocks, slist = None):
def by_type(blocks, slist=None):
layout = []
data = []
int_vol = []
@@ -81,4 +81,4 @@ def by_type(blocks, slist = None):
return (layout,
data,
int_vol,
unknown)
unknown)

View File

@@ -1,7 +1,8 @@
#!/usr/bin/python
from ubi.defines import PRINT_COMPAT_LIST, PRINT_VOL_TYPE_LIST, UBI_VTBL_AUTORESIZE_FLG
def ubi(ubi, tab = ''):
def ubi(ubi, tab=''):
print '%sUBI File' % tab
print '%s---------------------' % tab
print '\t%sMin I/O: %s' % (tab, ubi.min_io_size)
@@ -15,7 +16,7 @@ def ubi(ubi, tab = ''):
print '\t%sFirst UBI PEB Number: %s' % (tab, ubi.first_peb_num)
def image(image, tab = ''):
def image(image, tab=''):
print '%s%s' % (tab, image)
print '%s---------------------' % tab
print '\t%sImage Sequence Num: %s' % (tab, image.image_seq)
@@ -25,7 +26,7 @@ def image(image, tab = ''):
print '\t%sPEB Range: %s - %s' % (tab, image.peb_range[0], image.peb_range[1])
def volume(volume, tab = ''):
def volume(volume, tab=''):
print '%s%s' % (tab, volume)
print '%s---------------------' % tab
print '\t%sVol ID: %s' % (tab, volume.vol_id)
@@ -38,7 +39,7 @@ def volume(volume, tab = ''):
print '\n'
def block(block, tab = '\t'):
def block(block, tab='\t'):
print '%s%s' % (tab, block)
print '%s---------------------' % tab
print '\t%sFile Offset: %s' % (tab, block.file_offset)
@@ -68,14 +69,14 @@ def block(block, tab = '\t'):
print '\n'
def ec_hdr(ec_hdr, tab = ''):
def ec_hdr(ec_hdr, tab=''):
for key, value in ec_hdr:
if key == 'errors':
value = ','.join(value)
print '%s%s: %r' % (tab, key, value)
def vid_hdr(vid_hdr, tab = ''):
def vid_hdr(vid_hdr, tab=''):
for key, value in vid_hdr:
if key == 'errors':
value = ','.join(value)
@@ -92,7 +93,7 @@ def vid_hdr(vid_hdr, tab = ''):
print '%s%s: %s' % (tab, key, value)
def vol_rec(vol_rec, tab = ''):
def vol_rec(vol_rec, tab=''):
for key, value in vol_rec:
if key == 'errors':
value = ','.join(value)
@@ -105,4 +106,4 @@ def vol_rec(vol_rec, tab = ''):
value = 'autoresize'
elif key == 'name':
value = value.strip('\x00')
print '%s%s: %s' % (tab, key, value)
print '%s%s: %s' % (tab, key, value)

View File

@@ -3,6 +3,7 @@ import struct
from ubi.defines import *
from ubi.headers import errors
class ec_hdr(object):
def __init__(self, buf):
@@ -86,4 +87,4 @@ def extract_vtbl_rec(buf):
vtbl_rec_ret.rec_index = i
vtbl_recs.append(vtbl_rec_ret)
return vtbl_recs
return vtbl_recs

View File

@@ -2,6 +2,7 @@
from zlib import crc32
from ubi.defines import *
def ec_hdr(ec_hdr, buf):
if ec_hdr.hdr_crc != ~crc32(buf[:-4]) & 4294967295L:
ec_hdr.errors.append('crc')
@@ -25,4 +26,4 @@ def vtbl_rec(vtbl_rec, buf):
vtbl_rec.errors.append('crc')
if not likely_vtbl:
vtbl_rec.errors = ['False']
return vtbl_rec
return vtbl_rec

View File

@@ -3,6 +3,7 @@ from ubi import display
from ubi.volume import get_volumes
from ubi.block import get_blocks_in_list
class description(object):
def __init__(self, blocks, layout_info):
@@ -34,5 +35,5 @@ class description(object):
volumes = property(_get_volumes)
def display(self, tab = ''):
display.image(self, tab)
def display(self, tab=''):
display.image(self, tab)

View File

@@ -2,6 +2,7 @@
from ubi import display
from ubi.block import sort, get_blocks_in_list
class description(object):
def __init__(self, vol_id, vol_rec, block_list):
@@ -41,7 +42,7 @@ class description(object):
def get_blocks(self, blocks):
return get_blocks_in_list(blocks, self._block_list)
def display(self, tab = ''):
def display(self, tab=''):
display.volume(self, tab)
def reader(self, ubi):
@@ -64,4 +65,4 @@ def get_volumes(blocks, layout_info):
vol_blocks_lists[vol_rec.rec_index] = []
volumes[vol_name] = description(vol_rec.rec_index, vol_rec, vol_blocks_lists[vol_rec.rec_index])
return volumes
return volumes

View File

@@ -4,18 +4,18 @@ import os
import sys
try:
import argparse
except:
import argparse_neo
except:
import argparse_neo
from ubi import ubi, get_peb_size
from ubifs import ubifs
from ubi_io import ubi_file, leb_virtual_file
from ui.common import extract_files, output_dir
if __name__ == '__main__':
if __name__ == '__main__':
description = 'Extract contents of UBI image.'
usage = 'ubi_extract_files.py [options] filepath'
try:
parser = argparse.ArgumentParser(usage=usage, description=description)
except:
except:
parser = argparse_neo.ArgumentParser(usage=usage, description=description)
parser.add_argument('-l', '--log-file', dest='logpath', help='Log output to file output/LOGPATH. (default: ubifs_output.log)')
parser.add_argument('-k', '--keep-permissions', action='store_true', dest='permissions', help='Maintain file permissions, requires running as root. (default: False)')
@@ -67,4 +67,4 @@ if __name__ == '__main__':
print 'Writing to: %s' % vol_out_path
extract_files(uubifs, vol_out_path, perms)
sys.exit(0)
sys.exit(0)

View File

@@ -1,9 +1,10 @@
#!/usr/bin/python
from ubi.block import sort
class ubi_file(object):
def __init__(self, path, block_size, start_offset = 0, end_offset = None):
def __init__(self, path, block_size, start_offset=0, end_offset=None):
self._fhandle = open(path, 'rb')
self._start_offset = start_offset
if end_offset:
@@ -113,4 +114,4 @@ class leb_virtual_file:
yield '\xff' * self._ubi.leb_size
last_leb += 1
yield self._ubi.file.read_block_data(self._ubi.blocks[block])
yield self._ubi.file.read_block_data(self._ubi.blocks[block])

View File

@@ -6,6 +6,7 @@ from ubifs import nodes
from ubifs.nodes import extract
from ubifs.log import log
class ubifs:
def __init__(self, ubifs_file):
@@ -73,4 +74,4 @@ def get_leb_size(path):
return block_size
f.close()
return block_size
return block_size

View File

@@ -3,6 +3,7 @@ import os
import sys
import ui
class log:
def __init__(self):
@@ -30,4 +31,4 @@ class log:
for key, value in n:
buf += '\t%s: %s\n' % (key, value)
self._out(buf)
self._out(buf)

View File

@@ -27,6 +27,7 @@ key_types = ['ino',
'dent',
'xent']
def parse_key(key):
hkey, lkey = struct.unpack('<II', key[0:UBIFS_SK_LEN])
ino_num = hkey & UBIFS_S_KEY_HASH_MASK
@@ -43,4 +44,4 @@ def decompress(ctype, unc_len, data):
elif ctype == UBIFS_COMPR_ZLIB:
return zlib.decompress(data, -11)
else:
return data
return data

View File

@@ -3,6 +3,7 @@ import struct
from ubifs.defines import *
from ubifs.misc import parse_key
class common_hdr(object):
def __init__(self, buf):
@@ -148,4 +149,4 @@ class branch(object):
def __iter__(self):
for key in dir(self):
if not key.startswith('_'):
yield (key, getattr(self, key))
yield (key, getattr(self, key))

View File

@@ -2,36 +2,37 @@
from ubifs import nodes
from ubifs.defines import *
def common_hdr(ubifs, lnum, offset = 0):
def common_hdr(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
return nodes.common_hdr(ubifs.file.read(UBIFS_COMMON_HDR_SZ))
def ino_node(ubifs, lnum, offset = 0):
def ino_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
inon = nodes.ino_node(ubifs.file.read(UBIFS_INO_NODE_SZ))
inon.data = ubifs.file.read(inon.data_len)
return inon
def mst_node(ubifs, lnum, offset = 0):
def mst_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
return nodes.mst_node(ubifs.file.read(UBIFS_MST_NODE_SZ))
def sb_node(ubifs, offset = 0):
def sb_node(ubifs, offset=0):
ubifs.file.seek(offset)
return nodes.sb_node(ubifs.file.read(UBIFS_SB_NODE_SZ))
def dent_node(ubifs, lnum, offset = 0):
def dent_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
den = nodes.dent_node(ubifs.file.read(UBIFS_DENT_NODE_SZ))
den.name = '%s' % ubifs.file.read(den.nlen)
return den
def data_node(ubifs, lnum, offset = 0, node_len = 0):
def data_node(ubifs, lnum, offset=0, node_len=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
datn = nodes.data_node(ubifs.file.read(UBIFS_DATA_NODE_SZ))
datn.offset = ubifs.leb_size * lnum + offset + UBIFS_DATA_NODE_SZ
@@ -39,10 +40,10 @@ def data_node(ubifs, lnum, offset = 0, node_len = 0):
return datn
def idx_node(ubifs, lnum, offset = 0):
def idx_node(ubifs, lnum, offset=0):
ubifs.file.seek(ubifs.leb_size * lnum + offset)
idxn = nodes.idx_node(ubifs.file.read(UBIFS_IDX_NODE_SZ))
for i in range(0, idxn.child_cnt):
idxn.branches.append(nodes.branch(ubifs.file.read(UBIFS_BRANCH_SZ)))
return idxn
return idxn

View File

@@ -4,7 +4,8 @@ import struct
from ubifs.defines import *
from ubifs.misc import decompress
def dents(ubifs, inodes, dent_node, path = '', perms = False):
def dents(ubifs, inodes, dent_node, path='', perms=False):
inode = inodes[dent_node.inum]
dent_path = os.path.join(path, dent_node.name)
if dent_node.type == UBIFS_ITYPE_DIR:
@@ -111,4 +112,4 @@ def process_reg_file(ubifs, inode, path):
if inode['ino'].size > len(buf):
buf += '\x00' * (inode['ino'].size - len(buf))
return buf
return buf

View File

@@ -2,7 +2,8 @@
from ubifs import extract
from ubifs.defines import *
def index(ubifs, lnum, offset, inodes = {}):
def index(ubifs, lnum, offset, inodes={}):
chdr = extract.common_hdr(ubifs, lnum, offset)
if chdr.node_type == UBIFS_IDX_NODE:
idxn = extract.idx_node(ubifs, lnum, offset + UBIFS_COMMON_HDR_SZ)
@@ -30,4 +31,4 @@ def index(ubifs, lnum, offset, inodes = {}):
inodes[ino_num] = {}
if 'dent' not in inodes[ino_num]:
inodes[ino_num]['dent'] = []
inodes[ino_num]['dent'].append(dn)
inodes[ino_num]['dent'].append(dn)

View File

@@ -1 +0,0 @@

View File

@@ -6,7 +6,8 @@ from ubifs.defines import PRINT_UBIFS_KEY_HASH, PRINT_UBIFS_COMPR
from ubi.defines import PRINT_VOL_TYPE_LIST, UBI_VTBL_AUTORESIZE_FLG
output_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'output')
def extract_files(ubifs, out_path, perms = False):
def extract_files(ubifs, out_path, perms=False):
try:
inodes = {}
walk.index(ubifs, ubifs.master_node.root_lnum, ubifs.master_node.root_offs, inodes)
@@ -85,4 +86,4 @@ def get_ubi_params(ubi):
'args': ubi_args[img_seq][volume],
'ini': ini_params[img_seq][volume]}
return ubi_params
return ubi_params

View File

@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getKernelVersionString, getKernelImageVersion, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getTunerModel
# -*- coding: utf-8 -*-
#from __init__ import _
from Plugins.Extensions.NeoBoot.__init__ import _
from Plugins.Extensions.NeoBoot.files.stbbranding import getNeoLocation, getKernelVersionString, getKernelImageVersion, getCPUtype, getCPUSoC, getImageNeoBoot, getBoxVuModel, getBoxHostName, getTunerModel
from enigma import getDesktop
from enigma import eTimer
from Screens.Screen import Screen
from Screens.Screen import Screen
from Screens.Console import Console
from Screens.MessageBox import MessageBox
from Screens.ChoiceBox import ChoiceBox
@@ -29,34 +29,39 @@ from Tools.Directories import fileExists, pathExists, createDir, resolveFilename
from os import system, listdir, mkdir, chdir, getcwd, rename as os_rename, remove as os_remove, popen
from os.path import dirname, isdir, isdir as os_isdir
import os
import time
if fileExists('/etc/vtiversion.info') or fileExists('/etc/bhversion') or fileExists('/usr/lib/python3.8') and fileExists('/.multinfo'):
from Screens.Console import Console
import time
if fileExists('/etc/vtiversion.info') or fileExists('/etc/bhversion') or fileExists('/usr/lib/python3.8') and fileExists('/.multinfo'):
from Screens.Console import Console
else:
try:
from Plugins.Extensions.NeoBoot.files.neoconsole import Console
from Plugins.Extensions.NeoBoot.files.neoconsole import Console
except:
from Screens.Console import Console
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
def getDS():
s = getDesktop(0).size()
return (s.width(), s.height())
def isFHD():
desktopSize = getDS()
return desktopSize[0] == 1920
def isHD():
desktopSize = getDS()
return desktopSize[0] >= 1280 and desktopSize[0] < 1920
def isUHD():
desktopSize = getDS()
return desktopSize[0] >= 1920 and desktopSize[0] < 3840
class InstallImage(Screen, ConfigListScreen):
if isFHD():
if isFHD():
skin = """<screen position="130,120" size="1650,875" title="NeoBoot - Installation">
<eLabel position="41,107" size="1541,2" backgroundColor="blue" foregroundColor="blue" name="linia" />
<eLabel position="40,744" size="1545,2" backgroundColor="blue" foregroundColor="blue" name="linia" />
@@ -93,8 +98,8 @@ class InstallImage(Screen, ConfigListScreen):
def __init__(self, session):
Screen.__init__(self, session)
fn = 'NewImage'
sourcelist = []
for fn in os.listdir('%sImagesUpload' % getNeoLocation() ):
sourcelist = []
for fn in os.listdir('%sImagesUpload' % getNeoLocation()):
if fn.find('.zip') != -1:
fn = fn.replace('.zip', '')
sourcelist.append((fn, fn))
@@ -102,15 +107,15 @@ class InstallImage(Screen, ConfigListScreen):
if fn.find('.rar') != -1:
fn = fn.replace('.rar', '')
sourcelist.append((fn, fn))
continue
continue
if fn.find('.tar.xz') != -1:
fn = fn.replace('.tar.xz', '')
sourcelist.append((fn, fn))
sourcelist.append((fn, fn))
continue
if fn.find('.tar.gz') != -1:
fn = fn.replace('.tar.gz', '')
sourcelist.append((fn, fn))
continue
continue
if fn.find('.tar.bz2') != -1:
fn = fn.replace('.tar.bz2', '')
sourcelist.append((fn, fn))
@@ -118,7 +123,7 @@ class InstallImage(Screen, ConfigListScreen):
if fn.find('.mb') != -1:
fn = fn.replace('.mb', '')
sourcelist.append((fn, fn))
continue
continue
if fn.find('.nfi') != -1:
fn = fn.replace('.nfi', '')
sourcelist.append((fn, fn))
@@ -127,25 +132,25 @@ class InstallImage(Screen, ConfigListScreen):
sourcelist = [('None', 'None')]
self.source = ConfigSelection(choices=sourcelist)
self.target = ConfigText(fixed_size=False)
self.stopenigma = ConfigYesNo(default=False)
self.stopenigma = ConfigYesNo(default=False)
self.CopyFiles = ConfigYesNo(default=True)
if fileExists('/proc/stb/info/vumodel') and not fileExists('/proc/stb/info/boxtype'):
if fileExists('/proc/stb/info/vumodel') and not fileExists('/proc/stb/info/boxtype'):
self.CopyKernel = ConfigYesNo(default=True)
else:
self.CopyKernel = ConfigYesNo(default=False)
self.TvList = ConfigYesNo(default=False)
else:
self.CopyKernel = ConfigYesNo(default=False)
self.TvList = ConfigYesNo(default=False)
self.LanWlan = ConfigYesNo(default=False)
if fileExists('/proc/stb/info/vumodel') and not fileExists('/proc/stb/info/boxtype'):
self.Sterowniki = ConfigYesNo(default=False)
self.Sterowniki = ConfigYesNo(default=False)
else:
self.Sterowniki = ConfigYesNo(default=True)
self.InstallSettings = ConfigYesNo(default=False)
self.ZipDelete = ConfigYesNo(default=False)
self.Sterowniki = ConfigYesNo(default=True)
self.InstallSettings = ConfigYesNo(default=False)
self.ZipDelete = ConfigYesNo(default=False)
self.RepairFTP = ConfigYesNo(default=False)
self.SoftCam = ConfigYesNo(default=False)
self.MediaPortal = ConfigYesNo(default=False)
self.MediaPortal = ConfigYesNo(default=False)
self.PiconR = ConfigYesNo(default=False)
self.Kodi = ConfigYesNo(default=False)
self.Kodi = ConfigYesNo(default=False)
self.BlackHole = ConfigYesNo(default=False)
self.target.value = ''
self.curselimage = ''
@@ -166,36 +171,36 @@ class InstallImage(Screen, ConfigListScreen):
'red': self.cancel,
'green': self.imageInstall,
'yellow': self.HelpInstall,
'blue': self.openKeyboard}, -2)
'blue': self.openKeyboard}, -2)
self['key_green'] = Label(_('Install'))
self['key_red'] = Label(_('Cancel'))
self['key_yellow'] = Label(_('Help'))
self['key_blue'] = Label(_('Keyboard'))
self['key_blue'] = Label(_('Keyboard'))
self['HelpWindow'] = Pixmap()
self['HelpWindow'].hide()
def createSetup(self):
self.list = []
self.list.append(getConfigListEntry(_('Source Image file'), self.source))
self.list.append(getConfigListEntry(_('Image Name'), self.target))
self.list.append(getConfigListEntry(_('Stop E2 processes during installation?'), self.stopenigma))
self.list.append(getConfigListEntry(_('Copy files from Flash to the installed image ?'), self.CopyFiles ))
self.list.append(getConfigListEntry(_('Copy the kernel of the installed system (recommended ?'), self.CopyKernel ))
self.list.append(getConfigListEntry(_('Copy the channel list ?'), self.TvList))
self.list.append(getConfigListEntry(_('Copy network settings LAN-WLAN ?'), self.LanWlan))
self.list.append(getConfigListEntry(_('Copy the drivers ? (Recommended only other image.)'), self.Sterowniki))
self.list.append(getConfigListEntry(_('Copy Settings to the new Image'), self.InstallSettings))
self.list.append(getConfigListEntry(_('Delete Image zip after Install ?'), self.ZipDelete))
self.list.append(getConfigListEntry(_('Image Name'), self.target))
self.list.append(getConfigListEntry(_('Stop E2 processes during installation?'), self.stopenigma))
self.list.append(getConfigListEntry(_('Copy files from Flash to the installed image ?'), self.CopyFiles))
self.list.append(getConfigListEntry(_('Copy the kernel of the installed system (recommended ?'), self.CopyKernel))
self.list.append(getConfigListEntry(_('Copy the channel list ?'), self.TvList))
self.list.append(getConfigListEntry(_('Copy network settings LAN-WLAN ?'), self.LanWlan))
self.list.append(getConfigListEntry(_('Copy the drivers ? (Recommended only other image.)'), self.Sterowniki))
self.list.append(getConfigListEntry(_('Copy Settings to the new Image'), self.InstallSettings))
self.list.append(getConfigListEntry(_('Delete Image zip after Install ?'), self.ZipDelete))
self.list.append(getConfigListEntry(_('Repair FTP ? (Recommended only other image if it does not work.)'), self.RepairFTP))
self.list.append(getConfigListEntry(_('Copy config SoftCam ?'), self.SoftCam))
self.list.append(getConfigListEntry(_('Copy MediaPortal ?'), self.MediaPortal))
self.list.append(getConfigListEntry(_('Copy picon flash to image install ?'), self.PiconR))
self.list.append(getConfigListEntry(_('Copy config SoftCam ?'), self.SoftCam))
self.list.append(getConfigListEntry(_('Copy MediaPortal ?'), self.MediaPortal))
self.list.append(getConfigListEntry(_('Copy picon flash to image install ?'), self.PiconR))
self.list.append(getConfigListEntry(_('Transfer kodi settings ?'), self.Kodi))
self.list.append(getConfigListEntry(_('Path BlackHole ? (Not recommended for VuPlus)'), self.BlackHole))
def HelpInstall(self):
self.session.open(HelpInstall)
def typeChange(self, value):
self.createSetup()
self['config'].l.setList(self.list)
@@ -214,7 +219,7 @@ class InstallImage(Screen, ConfigListScreen):
self.session.openWithCallback(self.VirtualKeyBoardCallback, VirtualKeyBoard, title=self['config'].getCurrent()[0], text=self['config'].getCurrent()[1].value)
return
def VirtualKeyBoardCallback(self, callback = None):
def VirtualKeyBoardCallback(self, callback=None):
if callback is not None and len(callback):
self['config'].getCurrent()[1].setValue(callback)
self['config'].invalidate(self['config'].getCurrent())
@@ -247,27 +252,27 @@ class InstallImage(Screen, ConfigListScreen):
message += _('NeoBot started installing new image.\n')
message += _('The installation process may take a few minutes.\n')
message += _('Please: DO NOT reboot your STB and turn off the power.\n')
message += _('Please, wait...\n')
message += _('Please, wait...\n')
message += "'"
cmd1 = 'python ' + pluginpath + '/ex_init.py'
cmd = '%s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s %s ' % (cmd1,
source,
target.replace(' ', '.'),
str(self.stopenigma.value),
str(self.CopyFiles.value),
str(self.CopyKernel.value),
str(self.TvList.value),
str(self.LanWlan.value),
str(self.Sterowniki.value),
str(self.InstallSettings.value),
str(self.ZipDelete.value),
str(self.RepairFTP.value),
str(self.SoftCam.value),
str(self.MediaPortal.value),
str(self.PiconR.value),
str(self.Kodi.value),
str(self.BlackHole.value))
print ("[MULTI-BOOT]: "), cmd
str(self.stopenigma.value),
str(self.CopyFiles.value),
str(self.CopyKernel.value),
str(self.TvList.value),
str(self.LanWlan.value),
str(self.Sterowniki.value),
str(self.InstallSettings.value),
str(self.ZipDelete.value),
str(self.RepairFTP.value),
str(self.SoftCam.value),
str(self.MediaPortal.value),
str(self.PiconR.value),
str(self.Kodi.value),
str(self.BlackHole.value))
print("[MULTI-BOOT]: "), cmd
from Plugins.Extensions.NeoBoot.plugin import PLUGINVERSION
self.session.open(Console, _('NeoBoot v.%s - Install new image') % PLUGINVERSION, [message, cmd])
@@ -301,49 +306,48 @@ class HelpInstall(Screen):
self.updatetext()
def updatetext(self):
message = _('Source Image file')
message += _(' - Select the software to be installed with the cursor (left or right).\n\n')
message += _(' - Select the software to be installed with the cursor (left or right).\n\n')
message += _('Image Name')
message += _(' - to change, press blue on the remote control.\n\n')
message += _(' - to change, press blue on the remote control.\n\n')
message += _('Copy files from Flash to the installed image ?')
message += _(' - this checking this option on it nothing will be copied from the image flash to the installed image in neoboot.\n\n')
message += _(' - this checking this option on it nothing will be copied from the image flash to the installed image in neoboot.\n\n')
message += _('Copy the kernel of the installed system (recommended ?')
message += _('- after selecting this option, the kernel of the installed image will be copied to neoboot, only recommended for STB vuplus\n\n')
message += _('Copy the channel list ?')
message += _(' - Option to copy channel list from flash to image installed in neoboot.\n\n')
message += _('Copy mounting disks ? (Recommended)')
message += _(' - the option transfers mounts to the image installed in neoboot from the flashlight, recommended only if you are installing an image from a different model than you have.\n\n')
message += _('Copy network settings LAN-WLAN ?')
message += _(' - the option moves files with the settings for lan and wlan.\n\n')
message += _('Copy the drivers ? (Recommended only other image.)')
message += _(' - Option to copy drivers to the image installed in neoboot from the flashlight, recommended only if you are installing an image from a different model than you have.\n\n')
message += _('Copy the drivers ? (Recommended only other image.)')
message += _(' - Option to copy drivers to the image installed in neoboot from the flashlight, recommended only if you are installing an image from a different model than you have.\n\n')
message += _('Copy Settings to the new Image')
message += _(' - the option copies the software settings from the flashlight to the system being installed in the neobot.\n\n')
message += _('Delete Image zip after Install ?')
message += _(' - po instalacji, opcja kasuje plik zip image z katalogu ImagesUpload.\n\n')
message += _('Repair FTP ? (Recommended only other image if it does not work.)')
message += _(' - the option in some cases repairs the File Transfer Protocol connection in the installed image.\n\n')
message += _('Copy config SoftCam ?')
message += _(' - the option copies oscam configi and cccam, openpli default.\n\n')
message += _('Copy picon flash to image install ?')
message += _('Copy picon flash to image install ?')
message += _(' - cpuy picon from flash to image install in neoboot\n\n')
message += _('Path BlackHole ? (Not recommended for VuPlus)')
message += _('Path BlackHole ? (Not recommended for VuPlus)')
message += _(' - option for image blackhole, helps to run BH in neoboot\n\n')
self['lab1'].show()
self['lab1'].setText(message)

View File

@@ -4,23 +4,23 @@ from Screens.Screen import Screen
from Components.Pixmap import Pixmap
import os
#Colors (#AARRGGBB)
#Colors (#AARRGGBB)
#____Recommended colors - Zalecane kolory :
#color name="white" value="#ffffff"
#color name="darkwhite" value="#00dddddd"
#color name="red" value="#f23d21"
#color name="green" value="#389416"
#color name="blue" value="#0064c7"
#color name="yellow" value="#bab329"
#color name="orange" value="#00ffa500"
#color name="gray" value="#808080"
#color name="lightgrey" value="#009b9b9b"
#color name="white" value="#ffffff"
#color name="darkwhite" value="#00dddddd"
#color name="red" value="#f23d21"
#color name="green" value="#389416"
#color name="blue" value="#0064c7"
#color name="yellow" value="#bab329"
#color name="orange" value="#00ffa500"
#color name="gray" value="#808080"
#color name="lightgrey" value="#009b9b9b"
# green = '#00389416' lub #00389416
# red = '#00ff2525'
# yellow = '#00ffe875'
# orange = '#00ff7f50'
# seledynowy = #00FF00
# jasny-blue = #99FFFF
# jasny-blue = #99FFFF
# Zamiast font=Regular ktory nie rozpoznaje polskich znakow np. na VTi, mozesz zmienic na ponizsze font="*:
# font - genel
@@ -28,15 +28,15 @@ import os
# font - tasat
# font - dugme
# <widget name="config" position="1177,256" size="703,717" itemHeight="43" font="genel;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
# <widget name="config" position="1177,256" size="703,717" itemHeight="43" font="genel;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
###____ Skin Ultra HD - ImageChooseFULLHD ___ mod. gutosie___
ImageChooseFULLHD ="""
ImageChooseFULLHD = """
<screen name="ImageChooseFULLHD" position="center,center" size="1920,1080" title=" " flags="wfNoBorder" backgroundColor="transparent">
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#99FFFF" position="70,50" size="298,55" valign="center" text="NEOBoot Multi-image" transparent="1" />
<widget name="config" position="1177,250" size="668,715" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" itemHeight="45" font="dugme;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="progreso" position="590,600" size="542,10" borderWidth="1" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/skin.png" position="center,center" zPosition="-7" size="1920,1080" />
<widget name="config" position="1177,250" size="668,715" selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/selektor.png" itemHeight="45" font="dugme;30" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#99FFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<widget name="progreso" position="590,600" size="542,10" borderWidth="1" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/skin.png" position="center,center" zPosition="-7" size="1920,1080" />
<ePixmap position="54,981" zPosition="-7" size="1809,55" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek.png" />
<ePixmap position="71,903" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
<ePixmap position="71,820" zPosition="-7" size="509,54" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/pasek2.png" />
@@ -55,10 +55,10 @@ ImageChooseFULLHD ="""
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/red.png" position="80,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/green.png" position="640,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellow.png" position="1035,990" size="34,38" zPosition="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="1570,990" size="34,38" zPosition="1" alphatest="blend" />
<widget name="key_menu" position="230,425" zPosition="1" size="300,30" font="dugme;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ffe875" />
<ePixmap position="80,426" size="75,31" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/menu.png" transparent="1" alphatest="blend" />
<ePixmap position="158,427" size="70,31" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/arrowleft.png" alphatest="blend" zPosition="3" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/blue.png" position="1570,990" size="34,38" zPosition="1" alphatest="blend" />
<widget name="key_menu" position="230,425" zPosition="1" size="300,30" font="dugme;30" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="#00ffe875" />
<ePixmap position="80,426" size="75,31" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/menu.png" transparent="1" alphatest="blend" />
<ePixmap position="158,427" size="70,31" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/arrowleft.png" alphatest="blend" zPosition="3" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#00dddddd" position="85,660" size="59,45" valign="center" text="1 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#00dddddd" position="85,742" size="59,45" valign="center" text="2 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="#00dddddd" position="85,826" size="61,45" valign="center" text="3 &gt;" transparent="1" />
@@ -89,61 +89,61 @@ ImageChooseFULLHD ="""
###____ Skin Ultra HD - ImageChooseULTRAHD ___ mod. gutosie___
ImageChooseULTRAHD ="""
<screen name="NeoBootImageChoose" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="config" position="210,480" size="2100,510" itemHeight="102" font="genel;60" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1020" size="2100,3" backgroundColor="#0027408B" />
<widget name="label2" position="252,1050" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label4" position="252,1140" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label8" position="252,1230" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label5" position="1062,1050" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label6" position="1062,1140" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label7" position="1062,1230" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<eLabel position="210,1350" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="210,1410" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_1_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1512" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_2_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1614" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_3_UHD.png" zPosition="1" alphatest="blend" />
<widget position="330,1410" size="660,78" name="key_1" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1512" size="660,78" name="key_2" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1614" size="660,78" name="key_3" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="device_icon" position="1110,1428" size="216,252" zPosition="1" transparent="1" alphatest="blend" />
<widget name="label3" position="1410,1428" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="progreso" position="1416,1536" size="660,33" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />
<eLabel position="1416,1551" size="660,3" backgroundColor="#00FFFFFF" zPosition="1" />
<widget name="label11" position="1410,1578" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<ePixmap position="2850,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_menu_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3135,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_ok_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
ImageChooseULTRAHD = """
<screen name="NeoBootImageChoose" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="config" position="210,480" size="2100,510" itemHeight="102" font="genel;60" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1020" size="2100,3" backgroundColor="#0027408B" />
<widget name="label2" position="252,1050" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label4" position="252,1140" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label8" position="252,1230" size="780,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="right" valign="center" zPosition="1" transparent="1" />
<widget name="label5" position="1062,1050" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label6" position="1062,1140" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="label7" position="1062,1230" size="1230,90" font="genel;60" foregroundColor="#0058CCFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<eLabel position="210,1350" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="210,1410" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_1_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1512" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_2_UHD.png" zPosition="1" alphatest="blend" />
<ePixmap position="210,1614" size="90,90" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/key_3_UHD.png" zPosition="1" alphatest="blend" />
<widget position="330,1410" size="660,78" name="key_1" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1512" size="660,78" name="key_2" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget position="330,1614" size="660,78" name="key_3" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="device_icon" position="1110,1428" size="216,252" zPosition="1" transparent="1" alphatest="blend" />
<widget name="label3" position="1410,1428" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<widget name="progreso" position="1416,1536" size="660,33" borderWidth="0" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="2" transparent="1" />
<eLabel position="1416,1551" size="660,3" backgroundColor="#00FFFFFF" zPosition="1" />
<widget name="label11" position="1410,1578" size="900,90" font="genel;60" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" halign="left" valign="center" zPosition="1" transparent="1" />
<ePixmap position="2850,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_menu_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3135,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_ok_UHD.png" transparent="1" alphatest="blend" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<widget source="global.CurrentTime" render="Label" position="1956,90" size="420,180" font="tasat;150" noWrap="1" halign="center" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Default</convert></widget>
<convert type="ClockToText">Default</convert></widget>
<widget source="global.CurrentTime" render="Label" position="1536,90" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%A</convert></widget>
<convert type="ClockToText">Format:%A</convert></widget>
<widget source="global.CurrentTime" render="Label" position="1536,162" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%e. %b.</convert>
</widget>
</widget>
</screen>"""
###____ Skin HD - ImageChoose ___mod. gutosie ___
ImageChooseHD ="""
<screen name="NeoBootImageChoose" position="center,center" size="1280, 720" backgroundColor="transpBlack">
<ePixmap position="0,0" zPosition="-1" size="1274,720" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1frame_base-fs8.png" />
<widget source="session.VideoPicture" render="Pig" position=" 836,89" size="370,208" zPosition="3" backgroundColor="#ff000000" />
<ePixmap position="870,304" zPosition="-1" size="300,14" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1chan_p1_bar.png" alphatest="on" />
<widget source="Title" render="Label" position="12,5" size="788,30" font="Regular;28" halign="left" foregroundColor="#58bcff" backgroundColor="transpBlack" transparent="1" />
ImageChooseHD = """
<screen name="NeoBootImageChoose" position="center,center" size="1280, 720" backgroundColor="transpBlack">
<ePixmap position="0,0" zPosition="-1" size="1274,720" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1frame_base-fs8.png" />
<widget source="session.VideoPicture" render="Pig" position=" 836,89" size="370,208" zPosition="3" backgroundColor="#ff000000" />
<ePixmap position="870,304" zPosition="-1" size="300,14" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/1chan_p1_bar.png" alphatest="on" />
<widget source="Title" render="Label" position="12,5" size="788,30" font="Regular;28" halign="left" foregroundColor="#58bcff" backgroundColor="transpBlack" transparent="1" />
<widget name="label9" position="818,4" zPosition="10" size="385,30" font="Regular;24" foregroundColor="#58bcff" backgroundColor="black" halign="left" transparent="1" />
<widget selectionPixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/slekvti.png" name="config" enableWrapAround="1" position="30,150" size="270,370" itemHeight="25" font="Regular;18" zPosition="2" foregroundColor="#00cc99" scrollbarMode="showNever" transparent="1" />
<widget name="device_icon" position="470,71" size="177,132" alphatest="on" zPosition="2" />
@@ -161,7 +161,7 @@ ImageChooseHD ="""
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="319,450" size="51,25" text="1 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="318,480" size="52,25" text="2 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="318,510" size="52,25" text="3 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="317,540" size="53,25" text="4 &gt;" transparent="1" />
<eLabel backgroundColor="black" font="Regular; 20" foregroundColor="#58ccff" position="317,540" size="53,25" text="4 &gt;" transparent="1" />
<widget name="key_1" position="375,450" zPosition="1" size="349,25" font="Regular;18" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
<widget name="key_2" position="374,480" zPosition="1" size="350,25" font="Regular;20" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
<widget name="key_3" position="373,510" zPosition="1" size="350,25" font="Regular;20" halign="left" valign="center" backgroundColor="black" transparent="1" foregroundColor="white" />
@@ -179,13 +179,13 @@ ImageChooseHD ="""
<eLabel backgroundColor="black" font="Regular; 24" foregroundColor="white" position="950,651" size="102,45" halign="left" valign="center" text="MENU &gt;" transparent="1" />
<widget source="global.CurrentTime" render="Label" position="1052,39" size="152,41" backgroundColor="black" transparent="1" zPosition="1" font="Regular;25" valign="center" halign="right">
<convert type="ClockToText">Format:%-H:%M</convert>
</widget>
</widget>
</screen>
"""
###____ Skin FULLHD - MyUpgradeFULLHD ___mod. gutosie ___
MyUpgradeFULLHD ="""
MyUpgradeFULLHD = """
<screen name="MyUpgradeFULLHD" position="center,center" size="1380,570" title="Tools Neoboot">
<ePixmap position="594,255" zPosition="-2" size="623,313" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrix.png" />
<widget source="list" render="Listbox" position="33,101" size="1328,124" scrollbarMode="showOnDemand">
@@ -204,24 +204,24 @@ MyUpgradeFULLHD ="""
###____ Skin UltraHD - MyUpgradeUltraHD ___mod. gutosie ___
MyUpgradeUltraHD ="""
<screen name="MyUpgradeUltraHD" position="center,center" size="2100,1020" flags="wfNoBorder" backgroundColor="#ff111111">
<widget name="label1" position="180,210" size="1740,78" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget source="list" render="Listbox" position="210,390" size="1680,252" itemHeight="132" font="genel;66" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1">
<convert type="TemplatedMultiContent">
MyUpgradeUltraHD = """
<screen name="MyUpgradeUltraHD" position="center,center" size="2100,1020" flags="wfNoBorder" backgroundColor="#ff111111">
<widget name="label1" position="180,210" size="1740,78" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget source="list" render="Listbox" position="210,390" size="1680,252" itemHeight="132" font="genel;66" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1">
<convert type="TemplatedMultiContent">
{"template": [MultiContentEntryText(pos=(0,0), size=(1680,132), flags=RT_HALIGN_CENTER|RT_VALIGN_CENTER, text=0)], "fonts": [gFont("Regular",66)], "itemHeight":132}\n </convert>
</widget>
<widget name="label2" position="180,600" size="1740,78" font="genel;60" halign="center" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<ePixmap position="774,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<ePixmap position="1083,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<eLabel position="120,0" zPosition="-2" size="1890,60" backgroundColor="#1A27408B" name="popupUst" />
<eLabel position="0,60" zPosition="-2" size="2100,900" backgroundColor="#1A0F0F0F" name="popupOrt" />
</widget>
<widget name="label2" position="180,600" size="1740,78" font="genel;60" halign="center" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<ePixmap position="774,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<ePixmap position="1083,840" size="243,120" zPosition="2" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<eLabel position="120,0" zPosition="-2" size="1890,60" backgroundColor="#1A27408B" name="popupUst" />
<eLabel position="0,60" zPosition="-2" size="2100,900" backgroundColor="#1A0F0F0F" name="popupOrt" />
<eLabel position="90,900" zPosition="-1" size="1920,120" backgroundColor="#1A27408B" name="popupAlt" />
</screen>"""
###____ Skin MyUpgradeHD - MyUpgradeHD ___mod. gutosie ___
MyUpgradeHD ="""
MyUpgradeHD = """
<screen name="MyUpgradeHD" position="center,center" size="1127,569" title="Tools NeoBoot">
<ePixmap position="492,223" zPosition="-2" size="589,298" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrix.png" />
<widget source="list" render="Listbox" position="18,122" size="1085,82" scrollbarMode="showOnDemand">
@@ -236,11 +236,11 @@ MyUpgradeHD ="""
</widget>
<eLabel text="NeoBoot wykry\xc5\x82 nowsz\xc4\x85 wersj\xc4\x99 wtyczki. " font="Regular; 40" position="27,40" size="1042,70" halign="center" foregroundColor="red" backgroundColor="black" transparent="1" />
<eLabel text="EXIT - Zrezygnuj" font="Regular; 40" position="27,441" size="389,80" halign="center" foregroundColor="yellow" backgroundColor="black" transparent="1" />
</screen>"""
</screen>"""
###____ Skin NeoBootInstallationFULLHD - NeoBootInstallationFULLHD ___mod. gutosie ___
NeoBootInstallationFULLHD ="""
NeoBootInstallationFULLHD = """
<screen name="NeoBootInstallationFULLHD" position="410,138" size="1200,850" title="NeoBoot">
<widget name="label3" position="10,632" size="1178,114" zPosition="1" halign="center" font="dugme;28" backgroundColor="black" transparent="1" foregroundColor="#ffffff" />
<ePixmap position="643,282" zPosition="-2" size="531,331" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/matrix.png" />
@@ -262,58 +262,51 @@ NeoBootInstallationFULLHD ="""
</screen>"""
###____ Skin NeoBootInstallationUltraHD - NeoBootInstallationUltraHD ___mod. gutosie ___
NeoBootInstallationUltraHD ="""
<screen name="NeoBootInstallationUltraHD" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;72" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="label2" position="210,480" size="2100,570" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="config" position="210,690" size="2100,540" itemHeight="108" font="genel;60" zPosition="2" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1470" size="2100,3" backgroundColor="#0027408B" />
<widget name="label3" position="150,1500" size="2100,90" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<eLabel position="210,1620" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
NeoBootInstallationUltraHD = """
<screen name="NeoBootInstallationUltraHD" position="0,0" size="3840,2160" flags="wfNoBorder" backgroundColor="#ff111111">
<widget source="Title" render="Label" position="174,108" size="1575,150" font="baslk;102" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" noWrap="1" transparent="1" />
<widget name="label1" position="210,360" size="2100,90" font="genel;72" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="label2" position="210,480" size="2100,570" font="genel;60" foregroundColor="#00DAA520" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<widget name="config" position="210,690" size="2100,540" itemHeight="108" font="genel;60" zPosition="2" scrollbarMode="showOnDemand" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" foregroundColorSelected="#00FFFFF" backgroundColorSelected="#1A27408B" scrollbarSliderBorderWidth="1" scrollbarWidth="8" scrollbarSliderForegroundColor="#00FFFFFF" scrollbarSliderBorderColor="#0027408B" enableWrapAround="1" transparent="1" />
<eLabel position="210,1470" size="2100,3" backgroundColor="#0027408B" />
<widget name="label3" position="150,1500" size="2100,90" font="genel;60" halign="center" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" zPosition="1" transparent="1" />
<eLabel position="210,1620" size="2100,3" backgroundColor="#0027408B" />
<ePixmap position="3420,1800" size="243,120" zPosition="10" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/bt_exit_UHD.png" transparent="1" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_red_UHD.png" position="105,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_green_UHD.png" position="654,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_yellow_UHD.png" position="1203,1905" size="90,120" alphatest="blend" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/btc_blue_UHD.png" position="1752,1905" size="90,120" alphatest="blend" />
<widget name="key_red" position="210,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_green" position="759,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_yellow" position="1308,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<widget name="key_blue" position="1857,1914" size="510,90" noWrap="1" zPosition="1" valign="center" font="dugme;60" halign="left" backgroundColor="#1A0F0F0F" foregroundColor="#00FFFFFF" transparent="1" />
<eLabel position="120,75" zPosition="-10" size="2265,1950" backgroundColor="#1A0F0F0F" name="layer1" />
<eLabel position="2385,180" zPosition="-10" size="1335,1740" backgroundColor="#1A27408B" name="layer2" />
<ePixmap position="2700,600" size="768,258" zPosition="5" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neoskins/metrix/skin/logo.png" transparent="1" alphatest="blend" />
<widget source="global.CurrentTime" render="Label" position="1956,90" size="420,180" font="tasat;150" noWrap="1" halign="center" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1"><convert type="ClockToText">Default</convert>
</widget>
</widget>
<widget source="global.CurrentTime" render="Label" position="1536,90" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1">
<convert type="ClockToText">Format:%A</convert>
</widget>
</widget>
<widget source="global.CurrentTime" render="Label" position="1536,162" size="420,81" font="tasat;48" noWrap="1" halign="right" valign="bottom" foregroundColor="#00FFFFFF" backgroundColor="#1A0F0F0F" transparent="1"><convert type="ClockToText">Format:%e. %b.</convert>
</widget>
</screen>"""
###____ Skin NeoBootInstallationHD - NeoBootInstallationHD ___mod. gutosie ___
NeoBootInstallationHD ="""
NeoBootInstallationHD = """
<screen position="center, center" size="835, 500" title="NeoBoot">
<ePixmap position="0,0" zPosition="-1" size="835,500" pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/frame835x500.png" />
<widget name="label1" position="10,15" size="840,30" zPosition="1" halign="center" font="Regular;25" foregroundColor="red" backgroundColor="black" transparent="1" />
<widget name="label2" position="7,100" size="840,296" zPosition="1" halign="center" font="Regular;20" backgroundColor="black" foregroundColor="#58ccff" transparent="1"/>
<widget name="config" position="220,200" size="440,207" backgroundColor="black" scrollbarMode="showOnDemand" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/redcor.png" position="48,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/greencor.png" position="246,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellowcor.png" position="474,406" size="150,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/bluecor.png" position="675,406" size="140,40" alphatest="on" />
<widget name="key_red" position="48,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="red" transparent="1" />
<widget name="key_green" position="248,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="green" transparent="1" />
<widget name="key_yellow" position="474,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" />
<widget name="key_blue" position="672,415" zPosition="1" size="145,45" font="Regular;20" halign="center" valign="center" backgroundColor="blue" transparent="1" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/redcor.png" position="48,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/greencor.png" position="246,406" size="140,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/yellowcor.png" position="474,406" size="150,40" alphatest="on" />
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/bluecor.png" position="675,406" size="140,40" alphatest="on" />
<widget name="key_red" position="48,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="red" transparent="1" />
<widget name="key_green" position="248,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="green" transparent="1" />
<widget name="key_yellow" position="474,406" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" />
<widget name="key_blue" position="672,415" zPosition="1" size="145,45" font="Regular;20" halign="center" valign="center" backgroundColor="blue" transparent="1" />
<widget name="label3" position="20,339" size="816,61" zPosition="1" halign="center" font="Regular;24" backgroundColor="black" transparent="1" foregroundColor="#58ccff" />
</screen>"""