def InitConfig(): config.plugins.configurationbackup = ConfigSubsection() if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6') and not path.exists( "/media/hdd/backup_%s" % boxtype): config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/backup/', visible_width=50, fixed_size=False) else: config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs_default = NoSave(ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/CCcam.cfg', '/usr/keys/', '/usr/lib/enigma2/python/Plugins/Extensions/MyMetrixLite/MyMetrixLiteBackup.dat', '/etc/tuxbox/config/', '/etc/auto.network', '/etc/enigma2/automounts.xml', '/etc/passwd', '/etc/shadow', '/etc/dropbear/', '/etc/default/dropbear', '/home/root/.ssh/', '/etc/samba/', '/etc/fstab', '/etc/inadyn.conf', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/opkg/secret-feed.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname', '/etc/epgimport/', '/etc/exports', '/etc/cron/crontabs/root', '/etc/cron/root', '/etc/enigmalight.conf', '/etc/volume.xml', '/etc/enigma2/ci_auth_slot_0.bin', '/etc/enigma2/ci_auth_slot_1.bin', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/DB/', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/youtv.pwd', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/vod.config', '/usr/share/enigma2/MetrixHD/skinparts/', '/usr/lib/enigma2/python/Plugins/Extensions/SpecialJump/keymap_user.xml', '/usr/lib/enigma2/python/Plugins/Extensions/MP3Browser/db', '/usr/lib/enigma2/python/Plugins/Extensions/MovieBrowser/db', '/usr/lib/enigma2/python/Plugins/Extensions/TVSpielfilm/db', '/etc/ConfFS', eEnv.resolve("${datadir}/enigma2/keymap.usr")]\ +eEnv_resolve_multi('/usr/bin/*cam*')\ +eEnv_resolve_multi('/etc/*.emu')\ +eEnv_resolve_multi('/etc/init.d/softcam*'))) config.plugins.configurationbackup.backupdirs = ConfigLocations( default=[] ) # 'backupdirs_addon' is called 'backupdirs' for backwards compatibility, holding the user's old selection, duplicates are removed during backup config.plugins.configurationbackup.backupdirs_exclude = ConfigLocations( default=[]) return config.plugins.configurationbackup
def InitConfig(): config.plugins.configurationbackup = ConfigSubsection() if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6') and not path.exists( "/media/hdd/backup_%s" % boxtype): config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/backup/', visible_width=50, fixed_size=False) else: config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs_default = NoSave(ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/CCcam.cfg', '/usr/keys', '/etc/tuxbox/config/', '/etc/auto.network', '/etc/machine-id', '/etc/openvpn/', '/etc/dropbear/', '/etc/default/dropbear', '/home/root/', '/etc/samba/', '/etc/fstab', '/etc/inadyn.conf', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/opkg/secret-feed.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/hostname', '/etc/epgimport/', eEnv.resolve("${datadir}/enigma2/keymap.usr")]\ +eEnv_resolve_multi('/usr/bin/*cam*')\ +eEnv_resolve_multi('/etc/cron*')\ +eEnv_resolve_multi('/etc/*.emu')\ +eEnv_resolve_multi('/etc/init.d/softcam*'))) config.plugins.configurationbackup.backupdirs = ConfigLocations( default=[] ) # 'backupdirs_addon' is called 'backupdirs' for backwards compatibility, holding the user's old selection, duplicates are removed during backup config.plugins.configurationbackup.backupdirs_exclude = ConfigLocations( default=[]) return config.plugins.configurationbackup
def InitConfig(): # BACKUPFILES contains all files and folders to back up, for wildcard entries ALWAYS use eEnv_resolve_multi! BACKUPFILES = ['/etc/enigma2/', '/etc/CCcam.cfg', '/usr/keys/', '/etc/davfs2/', '/etc/tuxbox/config/', '/etc/auto.network', '/etc/feeds.xml', '/etc/machine-id', '/etc/rc.local', '/etc/openvpn/', '/etc/ipsec.conf', '/etc/ipsec.secrets', '/etc/ipsec.user', '/etc/strongswan.conf', '/etc/vtuner.conf', '/etc/default/crond', '/etc/dropbear/', '/etc/default/dropbear', '/home/', '/etc/samba/', '/etc/fstab', '/etc/inadyn.conf', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/wpa_supplicant.wlan1.conf', '/etc/resolv.conf', '/etc/enigma2/nameserversdns.conf', '/etc/default_gw', '/etc/hostname', '/etc/epgimport/', '/etc/exports', '/etc/enigmalight.conf', '/etc/volume.xml', '/etc/enigma2/ci_auth_slot_0.bin', '/etc/enigma2/ci_auth_slot_1.bin', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/DB/', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/youtv.pwd', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/vod.config', '/usr/share/enigma2/MetrixHD/skinparts/', '/usr/share/enigma2/display/skin_display_usr.xml', '/usr/share/enigma2/display/userskin.png', '/usr/lib/enigma2/python/Plugins/Extensions/SpecialJump/keymap_user.xml', '/usr/lib/enigma2/python/Plugins/Extensions/MP3Browser/db', '/usr/lib/enigma2/python/Plugins/Extensions/MovieBrowser/db', '/usr/lib/enigma2/python/Plugins/Extensions/TVSpielfilm/db', '/etc/ConfFS', '/etc/rc3.d/S99tuner.sh', '/usr/bin/enigma2_pre_start.sh', eEnv.resolve("${datadir}/enigma2/keymap.usr"), eEnv.resolve("${datadir}/enigma2/keymap_usermod.xml")]\ + eEnv_resolve_multi("${sysconfdir}/opkg/*-secret-feed.conf")\ + eEnv_resolve_multi("${datadir}/enigma2/*/mySkin_off")\ + eEnv_resolve_multi("${datadir}/enigma2/*/mySkin")\ + eEnv_resolve_multi("${datadir}/enigma2/*/skin_user_*.xml")\ + eEnv_resolve_multi("/etc/*.emu")\ + eEnv_resolve_multi("${sysconfdir}/cron*")\ + eEnv_resolve_multi("${sysconfdir}/init.d/softcam*")\ + eEnv_resolve_multi("${sysconfdir}/init.d/cardserver*")\ + eEnv_resolve_multi("${sysconfdir}/sundtek.*")\ + eEnv_resolve_multi("/usr/sundtek/*")\ + eEnv_resolve_multi("/opt/bin/*")\ + eEnv_resolve_multi("/usr/script/*") # Drop non existant paths from list tmpfiles = [] for f in BACKUPFILES: if pathexists(f): tmpfiles.append(f) backupset = tmpfiles config.plugins.configurationbackup = ConfigSubsection() if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6') and not pathexists( "/media/hdd/backup_%s" % boxtype): config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/backup/', visible_width=50, fixed_size=False) else: config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs_default = NoSave( ConfigLocations(default=backupset)) config.plugins.configurationbackup.backupdirs = ConfigLocations( default=[] ) # 'backupdirs_addon' is called 'backupdirs' for backwards compatibility, holding the user's old selection, duplicates are removed during backup config.plugins.configurationbackup.backupdirs_exclude = ConfigLocations( default=[]) return config.plugins.configurationbackup
def InitConfig(): config.plugins.configurationbackup = ConfigSubsection() if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6') and not path.exists( "/media/hdd/backup_%s" % boxtype): config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/backup/', visible_width=50, fixed_size=False) else: config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs_default = NoSave( ConfigLocations(default=BACKUPFILES)) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[]) config.plugins.configurationbackup.backupdirs_exclude = ConfigLocations( default=[]) return config.plugins.configurationbackup
from Screens.MessageBox import MessageBox from Screens.Console import Console from Components.ActionMap import ActionMap, NumberActionMap from Components.Sources.StaticText import StaticText from Components.MenuList import MenuList from Components.config import config, configfile, ConfigSubsection, ConfigText, ConfigLocations from Components.ConfigList import ConfigListScreen from Components.FileList import MultiFileSelectList from enigma import eEnv from os import path, makedirs, listdir, stat, rename, remove from datetime import date config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs = ConfigLocations( default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/hostname']) def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup' else: return backuppath + '/backup' def getBackupFilename(): return "enigma2settingsbackup.tar.gz" class BackupScreen(Screen, ConfigListScreen):
from Screens.LocationBox import LocationBox from Plugins.Plugin import PluginDescriptor from Screens.Standby import TryQuitMainloop from QuickButtonList import QuickButtonList, QuickButtonListEntry from QuickButtonXML import QuickButtonXML from enigma import getDesktop from Tools.Directories import * import xml.sax.xmlreader import os.path config.plugins.QuickButton = ConfigSubsection() config.plugins.QuickButton.enable = ConfigYesNo(default=True) config.plugins.QuickButton.mainmenu = ConfigYesNo(default=True) config.plugins.QuickButton.last_backupdir = ConfigText( default=resolveFilename(SCOPE_SYSETC)) config.plugins.QuickButton.backupdirs = ConfigLocations( default=[resolveFilename(SCOPE_SYSETC)]) MultiQuickButton_version = "2.4" autostart = _("Autostart") + ": " menuentry = _("Main menu") + ": " class MultiQuickButton(Screen): global HD_Res try: sz_w = getDesktop(0).size().width() except: sz_w = 720 if sz_w == 1280:
config.AdvancedMovieSelection.epg_extension = ConfigYesNo(default=False) config.AdvancedMovieSelection.show_set_vsr = ConfigYesNo(default=False) config.AdvancedMovieSelection.keyboard = ConfigSelection( default="virtual_numerical", choices=[("virtual_numerical", _("Virtual and Numerical")), ("virtual", _("Virtual")), ("numerical", _("Numerical"))]) config.AdvancedMovieSelection.show_filter_by_description = ConfigYesNo( default=True) config.AdvancedMovieSelection.show_backup_restore = ConfigYesNo(default=True) config.AdvancedMovieSelection.cover_auto_download = ConfigYesNo(default=True) config.AdvancedMovieSelection.version = ConfigText() config.AdvancedMovieSelection.backup_path = ConfigText() config.AdvancedMovieSelection.sort_functions = ConfigText() config.AdvancedMovieSelection.show_move_copy_progress = ConfigYesNo( default=True) config.AdvancedMovieSelection.videodirs = ConfigLocations() config.AdvancedMovieSelection.show_location_indexing = ConfigYesNo( default=True) config.AdvancedMovieSelection.show_videodirslocation = ConfigYesNo( default=True) config.AdvancedMovieSelection.show_movielibrary = ConfigYesNo(default=True) config.AdvancedMovieSelection.movielibrary_sort = ConfigInteger(default=1) config.AdvancedMovieSelection.movielibrary_show = ConfigBoolean() config.AdvancedMovieSelection.movielibrary_mark = ConfigYesNo(default=True) config.AdvancedMovieSelection.movielibrary_show_mark_cnt = ConfigInteger( default=2, limits=(1, 10)) config.AdvancedMovieSelection.hide_seen_movies = ConfigYesNo(default=False) config.AdvancedMovieSelection.show_backdrop = ConfigYesNo(default=False) config.AdvancedMovieSelection.show_directory_info = ConfigSelection( default="", choices=[("", _("no")), ("qty", _("(quantity)")), ("new", _("(new)")),
config.plugins.epgrefresh_extra.cacheloadsched = ConfigYesNo(default = False) config.plugins.epgrefresh_extra.cachesavesched = ConfigYesNo(default = False) def EpgCacheLoadSchedChanged(configElement): EpgLoadSaveRefresh.EpgCacheLoadCheck() def EpgCacheSaveSchedChanged(configElement): EpgLoadSaveRefresh.EpgCacheSaveCheck() config.plugins.epgrefresh_extra.cacheloadsched.addNotifier(EpgCacheLoadSchedChanged) config.plugins.epgrefresh_extra.cachesavesched.addNotifier(EpgCacheSaveSchedChanged) config.plugins.epgrefresh_extra.cacheloadtimer = ConfigSelectionNumber(default = 24, stepwidth = 1, min = 1, max = 24, wraparound = True) config.plugins.epgrefresh_extra.cachesavetimer = ConfigSelectionNumber(default = 24, stepwidth = 1, min = 1, max = 24, wraparound = True) config.plugins.epgrefresh_extra.manual_save = ConfigSelection(choices = [("1", _("Press OK"))], default = "1") config.plugins.epgrefresh_extra.manual_load = ConfigSelection(choices = [("1", _("Press OK"))], default = "1") config.plugins.epgrefresh_extra.manual_reload = ConfigSelection(choices = [("1", _("Press OK"))], default = "1") config.plugins.epgrefresh_extra.main_menu = ConfigYesNo(default = False) config.plugins.epgrefresh_extra.epgcachepath = ConfigDirectory('/media/hdd/') config.plugins.epgrefresh_extra.bookmarks = ConfigLocations(default=['/media/hdd/']) config.plugins.epgrefresh_extra.epgcachefilename = ConfigText(default="epg", fixed_size=False) config.plugins.epgrefresh_extra.save_backup = ConfigYesNo(default = False) config.plugins.epgrefresh_extra.delete_backup = ConfigSelection(choices = [("1", _("Press OK"))], default = "1") config.plugins.epgrefresh_extra.restore_backup = ConfigSelection(choices = [("1", _("Press OK"))], default = "1") config.plugins.epgrefresh_extra.autorestore_backup = ConfigYesNo(default = False) config.plugins.epgrefresh_extra.show_autozap = ConfigYesNo(default = False) config.plugins.epgrefresh_extra.timeout_autozap = ConfigInteger(default = 15, limits= (10, 90)) config.plugins.epgrefresh_extra.day_refresh = ConfigSubDict() for i in range(7): config.plugins.epgrefresh_extra.day_refresh[i] = ConfigEnableDisable(default = True) #pragma mark - Workaround for unset clock from enigma import eDVBLocalTimeHandler def timeCallback(isCallback=True):
def __init__(self, session, args=0): self.session = session self.setup_title = _("AutoBackup Configuration") config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.enabled = ConfigEnableDisable( default=False) config.plugins.configurationbackup.maxbackup = ConfigInteger( default=99, limits=(0, 99)) config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.wakeup = ConfigClock( default=((3 * 60) + 0) * 60) # 3:00 config.plugins.configurationbackup.backupdirs = ConfigLocations( default=[ eEnv.resolve( '${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname' ]) Screen.__init__(self, session) cfg = config.plugins.configurationbackup choices = getLocationChoices() self.setTitle(_("AutoBackup Configuration")) if choices: currentwhere = cfg.backuplocation.value defaultchoice = choices[0][0] for k, v in choices: if k == currentwhere: defaultchoice = k break else: defaultchoice = "" choices = [("", _("Nowhere"))] self.cfgwhere = ConfigSelection(default=defaultchoice, choices=choices) configList = [ getConfigListEntry(_("Backup location"), self.cfgwhere), getConfigListEntry(_("Daily automatic backup"), config.plugins.configurationbackup.enabled), getConfigListEntry(_("Automatic start time"), config.plugins.configurationbackup.wakeup), getConfigListEntry(_("Max. saved backup"), config.plugins.configurationbackup.maxbackup), ] ConfigListScreen.__init__(self, configList, session=session, on_change=self.changedEntry) self["key_red"] = Button(_("Cancel")) self["key_green"] = Button(_("Ok")) self["key_blue"] = Button("") self["statusbar"] = Label() self["status"] = Label() self["setupActions"] = ActionMap( ["SetupActions", "ColorActions", "MenuActions"], { "red": self.cancel, "green": self.save, "blue": self.disable, "save": self.save, "cancel": self.cancel, "ok": self.save, }, -2) self.onChangedEntry = [] self.data = '' self.container = enigma.eConsoleAppContainer() self.container.appClosed.append(self.appClosed) self.container.dataAvail.append(self.dataAvail) self.cfgwhere.addNotifier(self.changedWhere) self.onClose.append(self.__onClose)
default = "streamrequest") config.hdmicec.fixed_physical_address = ConfigText(default = "0.0.0.0") config.hdmicec.volume_forwarding = ConfigYesNo(default = False) config.hdmicec.control_receiver_wakeup = ConfigYesNo(default = False) config.hdmicec.control_receiver_standby = ConfigYesNo(default = False) config.hdmicec.handle_deepstandby_events = ConfigYesNo(default = False) choicelist = [] for i in (10, 50, 100, 150, 250, 500, 750, 1000): choicelist.append(("%d" % i, _("%d ms") % i)) config.hdmicec.minimum_send_interval = ConfigSelection(default = "0", choices = [("0", _("Disabled"))] + choicelist) choicelist = [] for i in [3] + list(range(5, 65, 5)): choicelist.append(("%d" % i, _("%d sec") % i)) config.hdmicec.repeat_wakeup_timer = ConfigSelection(default = "3", choices = [("0", _("Disabled"))] + choicelist) config.hdmicec.debug = ConfigSelection(default = "0", choices = [("0", _("Disabled")), ("1",_("Messages")), ("2",_("Key Events")), ("3",_("All"))]) config.hdmicec.bookmarks = ConfigLocations(default=[LOGPATH]) config.hdmicec.log_path = ConfigDirectory(LOGPATH) config.hdmicec.next_boxes_detect = ConfigYesNo(default=False) config.hdmicec.sourceactive_zaptimers = ConfigYesNo(default=False) class HdmiCec: def __init__(self): try: if HdmiCec.instance: raise AssertionError("only one HdmiCec instance is allowed!") except: pass HdmiCec.instance = self
#!/usr/bin/python # -*- coding: utf-8 -*- # # To be used as simple Downloading Application by other Plugins # # for localized messages from . import _ from Components.config import config, ConfigSubsection, ConfigLocations from Tools.Directories import resolveFilename, SCOPE_HDD # SCOPE_HDD is not really what we want but the best we can get :-) config.plugins.mediadownloader = ConfigSubsection() config.plugins.mediadownloader.bookmarks = ConfigLocations( default=[resolveFilename(SCOPE_HDD)]) # TODO: support custom bookmark element? # Download a single File def download_file(session, url, to = None, askOpen = False, callback = None, \ **kwargs): """Provides a simple downloader Application""" from Components.Scanner import ScanFile file = ScanFile(url, autodetect=False) from MediaDownloader import MediaDownloader session.open(MediaDownloader, file, askOpen, to, callback)
from Components.config import config from Components.ConfigList import ConfigListScreen from Components.FileList import MultiFileSelectList from Tools.Directories import * config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[ eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname', '/etc/samba/', '/etc/auto.network', '/etc/fstab', '/etc/minidlna.conf', '/etc/vsftpd.conf', '/etc/dropbear', ]) def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup' else: return backuppath + '/backup'
from os import popen, path, makedirs, listdir, access, stat, rename, remove, W_OK, R_OK from enigma import eEnv from boxbranding import getBoxType from Components.config import config, getConfigListEntry, ConfigSubsection, ConfigText, ConfigLocations, ConfigBoolean from Components.Harddisk import harddiskmanager boxtype = getBoxType() config.misc.firstrun = ConfigBoolean(default = True) config.plugins.configurationbackup = ConfigSubsection() if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6') and not path.exists("/media/hdd/backup_%s" %boxtype): config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/backup/', visible_width = 50, fixed_size = False) else: config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/CCcam.cfg', '/usr/keys/', '/var/tuxbox/config/', '/usr/camscript/', '/etc/auto.network', '/etc/enigma2/automounts.xml', '/etc/passwd', '/etc/dropbear/', '/etc/default/dropbear', '/home/root/.ssh/', '/etc/samba/', '/etc/fstab', '/etc/inadyn.conf', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname', eEnv.resolve("${datadir}/enigma2/keymap.usr")]) backupfile = "enigma2settingsbackup.tar.gz" def checkConfigBackup(): parts = [ (r.description, r.mountpoint) for r in harddiskmanager.getMountedPartitions(onlyhotplug = False)] if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6'): parts.append(('mtd backup','/media/backup')) for x in parts: if x[1] == '/': parts.remove(x) if len(parts): for x in parts: if x[1].endswith('/'): fullbackupfile = x[1] + 'backup_' + boxtype + '/' + backupfile if fileExists(fullbackupfile):
from Components.ConfigList import ConfigListScreen from Components.FileList import MultiFileSelectList from enigma import eTimer, eEnv, eEPGCache config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText(default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[ eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/localtime', '/etc/hostname', '/etc/default_gw', '/etc/resolv.conf', '/etc/network/interfaces', '/etc/wpa_supplicant*.conf', '/etc/samba/smb_host.conf', '/etc/samba/smb_user.conf', '/etc/samba/smb-user.conf', '/etc/inadyn.conf', '/etc/ushare.conf', '/etc/minidlna.conf', '/etc/auto.network', '/etc/fstab', '/etc/ssh/ssh_host_*', '/home/root/.ssh', ], keep_nonexistent_files=True) def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value return path.join(backuppath, getBackupDirectory()) def getBackupDirectory():
config.plugins.configurationbackup = ConfigSubsection() if boxtype in ('maram9', 'classm', 'axodin', 'axodinc', 'starsatlx', 'genius', 'evo', 'galaxym6') and not path.exists( "/media/hdd/backup_%s" % boxtype): config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/backup/', visible_width=50, fixed_size=False) else: config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[ eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/CCcam.cfg', '/usr/keys/', '/etc/opkg/external-extra-feed.conf', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/wpa_supplicant.wlan1.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname', '/etc/epgimport/', '/etc/exports', '/etc/volume.xml', '/etc/enigma2/ci_auth_slot_0.bin', '/etc/enigma2/ci_auth_slot_1.bin', '/etc/davfs2/', '/etc/tuxbox/config/', '/etc/auto.network', '/etc/enigma2/automounts.xml', '/etc/rc.local', '/usr/bin/cam/*', '/usr/script/*', eEnv.resolve("${datadir}/enigma2/keymap_usermod.xml"), eEnv.resolve("${datadir}/enigma2/keymap.usr") ]) def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup_' + boxtype else: return backuppath + '/backup_' + boxtype
gettext.bindtextdomain("enigma2", resolveFilename(SCOPE_LANGUAGE)) gettext.textdomain("enigma2") gettext.bindtextdomain( "UpdatePreview", "%s%s" % (resolveFilename(SCOPE_PLUGINS), "Extensions/UpdatePreview/locale")) def _(txt): t = gettext.dgettext("UpdatePreview", txt) if t == txt: t = gettext.gettext(txt) return t config.plugins.upw = ConfigSubsection() config.plugins.upw.userfiles = ConfigLocations(default=[]) SKIN_INFO = """ <screen name="get_opkg_data" position="center,140" size="625,35" title="Please wait"> <widget source="status" render="Label" position="10,5" size="605,22" zPosition="2" font="Regular; 20" halign="center" transparent="2" /> </screen>""" class get_opkg_data(Screen): def __init__(self, session, args=None): Screen.__init__(self, session) self.session = session self.skin = SKIN_INFO self.setTitle(_("Please wait")) self["status"] = StaticText() self.iConsole = iConsole()
if not pathExists(STARTDIR): STARTDIR = TEMP SOURCE = STARTDIR TARGET = STARTDIR BACKUP = STARTDIR LAMEDB = eEnv.resolve('${sysconfdir}/enigma2/lamedb') config.plugins.setpicon = ConfigSubsection() config.plugins.setpicon.type = ConfigSelection(default = "0", choices = [("0",_("service reference")),("1",_("name"))]) config.plugins.setpicon.source = ConfigDirectory(SOURCE) config.plugins.setpicon.target = ConfigDirectory(TARGET) config.plugins.setpicon.allpicons = ConfigSelection(default = "0", choices = [("0",_("all picon's directories")),("1",_("input directory only"))]) config.plugins.setpicon.name_orbitpos = ConfigYesNo(default=False) config.plugins.setpicon.filename = ConfigSelection(default = "0", choices = [("0",_("no")),("1",_("filename")),("2",_("full path"))]) config.plugins.setpicon.bookmarks = ConfigLocations(default=[SOURCE]) config.plugins.setpicon.extmenu = ConfigYesNo(default=True) config.plugins.setpicon.save2backtoo = ConfigYesNo(default=False) config.plugins.setpicon.backup = ConfigDirectory(BACKUP) config.plugins.setpicon.backupsort = ConfigSelection(default = "0", choices = [("0",_("no")),("1",_("by providers")),("2",_("by orbital position"))]) config.plugins.setpicon.zap = ConfigYesNo(default=False) config.plugins.setpicon.reverse = ConfigYesNo(default=False) cfg = config.plugins.setpicon if not pathExists(cfg.source.value): cfg.source.value = TEMP if not pathExists(cfg.target.value): cfg.target.value = TEMP if not pathExists(cfg.backup.value): cfg.backup.value = TEMP
def FinalInitUsageConfig(): try: usage_old = config.usage.dict().copy() except AttributeError: usage_old = { } try: seek_old = config.seek.dict().copy() except AttributeError: seek_old = { } #We have do it again to ensure tranlsations are applied after language load has finished config.usage.setup_level.setChoices([ ("simple", _("Simple")), ("intermediate", _("Intermediate")), ("expert", _("Expert")) ], default = "intermediate") config.seek.on_pause = ConfigSelection(default = "play", choices = [ ("play", _("Play")), ("step", _("Singlestep (GOP)")), ("last", _("Last speed")) ]) inactivity_shutdown_choices = [ ("never", _("disabled")) ] for i in range(1,6): inactivity_shutdown_choices.extend([("%d" % i, ngettext("%(num)d hour", "%(num)d hours",i) % {"num" : i})]) config.usage.inactivity_shutdown = ConfigSelection(default = "3", choices = inactivity_shutdown_choices) config.usage.inactivity_shutdown_initialized = ConfigYesNo(default = False) config.usage.showdish = ConfigYesNo(default = True) config.usage.multibouquet = ConfigYesNo(default = False) config.usage.multiepg_ask_bouquet = ConfigYesNo(default = False) config.usage.quickzap_bouquet_change = ConfigYesNo(default = False) config.usage.e1like_radio_mode = ConfigYesNo(default = False) config.usage.infobar_timeout = ConfigSelection(default = "5", choices = [ ("0", _("no timeout")), ("1", "1 " + _("second")), ("2", "2 " + _("seconds")), ("3", "3 " + _("seconds")), ("4", "4 " + _("seconds")), ("5", "5 " + _("seconds")), ("6", "6 " + _("seconds")), ("7", "7 " + _("seconds")), ("8", "8 " + _("seconds")), ("9", "9 " + _("seconds")), ("10", "10 " + _("seconds"))]) config.usage.show_infobar_on_zap = ConfigYesNo(default = True) config.usage.show_infobar_on_skip = ConfigYesNo(default = True) config.usage.show_infobar_on_event_change = ConfigYesNo(default = True) config.usage.hdd_standby = ConfigSelection(default = "600", choices = [ ("0", _("no standby")), ("10", "10 " + _("seconds")), ("30", "30 " + _("seconds")), ("60", "1 " + _("minute")), ("120", "2 " + _("minutes")), ("300", "5 " + _("minutes")), ("600", "10 " + _("minutes")), ("1200", "20 " + _("minutes")), ("1800", "30 " + _("minutes")), ("3600", "1 " + _("hour")), ("7200", "2 " + _("hours")), ("14400", "4 " + _("hours")) ]) config.usage.pip_zero_button = ConfigSelection(default = "standard", choices = [ ("standard", _("standard")), ("swap", _("swap PiP and main picture")), ("swapstop", _("move PiP to main picture")), ("stop", _("stop PiP")) ]) config.usage.default_path = ConfigText(default = resolveFilename(SCOPE_HDD)) config.usage.timer_path = ConfigText(default = "<default>") config.usage.instantrec_path = ConfigText(default = "<default>") config.usage.timeshift_path = ConfigText(default = "/media/hdd/") config.usage.allowed_timeshift_paths = ConfigLocations(default = ["/media/hdd/"]) config.usage.on_movie_start = ConfigSelection(default = "ask", choices = [ ("ask", _("Ask user")), ("resume", _("Resume from last position")), ("beginning", _("Start from the beginning")) ]) config.usage.on_movie_stop = ConfigSelection(default = "ask", choices = [ ("ask", _("Ask user")), ("movielist", _("Return to movie list")), ("quit", _("Return to previous service")) ]) config.usage.on_movie_eof = ConfigSelection(default = "ask", choices = [ ("ask", _("Ask user")), ("movielist", _("Return to movie list")), ("quit", _("Return to previous service")), ("pause", _("Pause movie at end")) ]) config.usage.resume_treshold = ConfigInteger(default=30, limits=[0,300]) config.usage.on_long_powerpress = ConfigSelection(default = "show_menu", choices = [ ("show_menu", _("show shutdown menu")), ("shutdown", _("immediate shutdown")), ("standby", _("Idle Mode")) ] ) config.usage.on_short_powerpress = ConfigSelection(default = "standby", choices = [ ("show_menu", _("show shutdown menu")), ("shutdown", _("immediate shutdown")), ("standby", _("Idle Mode")) ] ) config.usage.alternatives_priority = ConfigSelection(default = "0", choices = [ ("0", "DVB-S/-C/-T"), ("1", "DVB-S/-T/-C"), ("2", "DVB-C/-S/-T"), ("3", "DVB-C/-T/-S"), ("4", "DVB-T/-C/-S"), ("5", "DVB-T/-S/-C") ]) config.usage.show_event_progress_in_servicelist = ConfigYesNo(default = False) config.usage.blinking_display_clock_during_recording = ConfigYesNo(default = False) config.usage.show_message_when_recording_starts = ConfigYesNo(default = True) config.usage.load_length_of_movies_in_moviellist = ConfigYesNo(default = True) config.usage.timerlist_finished_timer_position = ConfigSelection(default = "beginning", choices = [("beginning", _("at beginning")), ("end", _("at end"))]) config.usage.text_subtitle_presentation = ConfigSelection(default = "black box", choices = [("black box", _("black box")), ("drop-shadow", _("drop-shadow"))]) config.usage.text_subtitle_black_box_transparency = ConfigSlider(default = 0x64, increment = 5, limits = (0, 0xff)) config.usage.ttx_subtitle_prefer_pmt_language_code = ConfigYesNo(default=True) # Channelselection settings config.usage.configselection_showsettingsincontextmenu = ConfigYesNo(default=True) config.usage.configselection_showlistnumbers = ConfigYesNo(default=True) config.usage.configselection_showservicename = ConfigYesNo(default=True) config.usage.configselection_progressbarposition = ConfigSelection(default = "0", choices = [("0",_("After servicenumber")),("1",_("After servicename")), ("2",_("After servicedescription"))]) config.usage.configselection_servicenamecolwidth = ConfigInteger(200, limits =(100,400)) config.usage.configselection_columnstyle = ConfigYesNo(default=False) config.usage.configselection_additionaltimedisplayposition = ConfigSelection(default = "1", choices = [("0",_("ahead")),("1",_("behind"))]) config.usage.configselection_showadditionaltimedisplay = ConfigSelection(default = "0",choices = [("0", _("Off")), ("1", _("Percent")), ("2", _("Remain")),("3", _("Remain / duration")), ("4", _("Elapsed")), ("5", _("Elapsed / duration")), ("6", _("Elapsed / remain / duration")),("7", _("Time"))]) config.usage.configselection_showpicons = ConfigYesNo(default=False) config.usage.configselection_bigpicons = ConfigYesNo(default=False) config.usage.configselection_secondlineinfo = ConfigSelection(default = "0", choices = [("0",_("nothing")),("1",_("short description")), ("2",_("upcoming event"))]) config.usage.configselection_piconspath = ConfigSelection(default = eEnv.resolve('${datadir}/enigma2/picon_50x30/'), choices = [ (eEnv.resolve('${datadir}/enigma2/picon_50x30/'), eEnv.resolve('${datadir}/enigma2/picon_50x30')), (eEnv.resolve('${datadir}/enigma2/picon/'), eEnv.resolve('${datadir}/enigma2/picon')), (eEnv.resolve('/data/picon_50x30/'), eEnv.resolve('/data/picon_50x30')), (eEnv.resolve('/data/picon/'), eEnv.resolve('/data/picon')), ]) config.usage.configselection_showrecordings = ConfigYesNo(default=False) config.usage.standby_zaptimer_wakeup = ConfigYesNo(default=True) seek = config.seek.dict() for (key, value) in seek_old.items(): value_old = value.value configEntry = seek[key] value_new = configEntry.value if value_old != value_new: configEntry.value = value_old configEntry._ConfigElement__notifiers = value._ConfigElement__notifiers configEntry._ConfigElement__notifiers_final = value._ConfigElement__notifiers_final usage = config.usage.dict() for (key, value) in usage_old.items(): value_old = value.value configEntry = usage[key] value_new = configEntry.value if value_old != value_new: configEntry.value = value_old configEntry._ConfigElement__notifiers = value._ConfigElement__notifiers configEntry._ConfigElement__notifiers_final = value._ConfigElement__notifiers_final if usage_old.get("alternatives_priority", None) == None: def TunerTypePriorityOrderChanged(configElement): setTunerTypePriorityOrder(int(configElement.value)) config.usage.alternatives_priority.addNotifier(TunerTypePriorityOrderChanged, immediate_feedback=False) if usage_old.get("hdd_standby", None) == None: def setHDDStandby(configElement): for hdd in harddiskmanager.HDDList(): hdd[1].setIdleTime(int(configElement.value)) config.usage.hdd_standby.addNotifier(setHDDStandby, immediate_feedback=False) config.usage.record_mode = ConfigSelection(default = "direct_io", choices = [ ("direct_io", _("Direct IO (default)")), ("cached_io", _("Cached IO")) ] ) config.usage.max_stream_resolution = ConfigSelection(default = "1080", choices = ["480", "720", "1080", "1440", "2160"]) config.usage.ts_streaming_buffer = ConfigInteger(default = 500, limits=(0,10000)) config.usage.non_ts_streaming_buffer = ConfigInteger(default = 500, limits=(0,10000)) config.media_database = ConfigSubsection() config.media_database.readmeta = ConfigYesNo(default=False)
import RecordTimer from enigma import eServiceReference, eServiceCenter, eTimer, eSize, iPlayableService import os import time import cPickle as pickle config.movielist = ConfigSubsection() config.movielist.moviesort = ConfigInteger(default=MovieList.SORT_RECORDED) config.movielist.listtype = ConfigInteger(default=MovieList.LISTTYPE_MINIMAL) config.movielist.description = ConfigInteger( default=MovieList.SHOW_DESCRIPTION) config.movielist.last_videodir = ConfigText(default=resolveFilename(SCOPE_HDD)) config.movielist.last_timer_videodir = ConfigText( default=resolveFilename(SCOPE_HDD)) config.movielist.videodirs = ConfigLocations( default=[resolveFilename(SCOPE_HDD)]) config.movielist.last_selected_tags = ConfigSet([], default=[]) config.movielist.play_audio_internal = ConfigYesNo(default=True) last_selected_dest = [] AUDIO_EXTENSIONS = frozenset( (".mp3", ".wav", ".ogg", ".flac", ".m4a", ".mp2", ".m2a")) DVD_EXTENSIONS = ('.iso', '.img') preferredTagEditor = None def defaultMoviePath(): result = config.usage.default_path.value if not os.path.isdir(result): for mount in Components.Harddisk.getProcMounts(): if mount[1].startswith('/media/'):
# -*- coding: utf-8 -*- #pragma mark - Config from Components.config import config, ConfigSubsection, ConfigText, \ ConfigPassword, ConfigLocations, ConfigSet, ConfigNumber, \ ConfigSelection from Tools.Directories import resolveFilename, SCOPE_HDD config.plugins.ecasa = ConfigSubsection() config.plugins.ecasa.google_username = ConfigText(default="", fixed_size=False) config.plugins.ecasa.google_password = ConfigPassword(default="") config.plugins.ecasa.cachedirs = ConfigLocations(default=[resolveFilename(SCOPE_HDD, "ecasa")]) config.plugins.ecasa.cache = ConfigText(default="/media/hdd/ecasa") config.plugins.ecasa.user = ConfigText(default='default') config.plugins.ecasa.searchhistory = ConfigSet(choices=[]) config.plugins.ecasa.userhistory = ConfigSet(choices=[]) config.plugins.ecasa.searchlimit = ConfigNumber(default=15) config.plugins.ecasa.cachesize = ConfigNumber(default=15) config.plugins.ecasa.slideshow_interval = ConfigNumber(default=30) config.plugins.ecasa.flickr_api_key = ConfigText(default="", fixed_size=False) config.plugins.ecasa.last_backend = ConfigSelection(default='picasa', choices=['picasa', 'flickr'])
from Components.config import configfile, config, ConfigSubsection, ConfigYesNo, ConfigNumber, ConfigLocations from Components.Console import Console from Components.FileList import MultiFileSelectList from Components.Label import Label from Components.Pixmap import MultiPixmap from Components.PluginComponent import plugins from Components.ScrollLabel import ScrollLabel from Components.Sources.StaticText import StaticText from Components.SystemInfo import SystemInfo import Components.Task from Screens.Screen import Screen from Screens.MessageBox import MessageBox from Tools.Directories import resolveFilename, SCOPE_PLUGINS config.softcammanager = ConfigSubsection() config.softcammanager.softcams_autostart = ConfigLocations(default="") config.softcammanager.softcamtimerenabled = ConfigYesNo(default=True) config.softcammanager.softcamtimer = ConfigNumber(default=6) config.softcammanager.showinextensions = ConfigYesNo(default=True) softcamautopoller = None def updateExtensions(configElement): plugins.clearPluginList() plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) config.softcammanager.showinextensions.addNotifier(updateExtensions, initial_call=False)
from Screens.Rc import Rc from Components.Label import Label from Components.MenuList import MenuList from Components.PluginComponent import plugins from Plugins.Plugin import PluginDescriptor from Tools.Directories import fileExists, resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE from Components.Pixmap import Pixmap, MovingPixmap, MultiPixmap from os import popen, path, makedirs, listdir, access, stat, rename, remove, W_OK, R_OK from enigma import eEnv from Components.config import config, getConfigListEntry, ConfigSubsection, ConfigText, ConfigLocations, ConfigBoolean from Components.Harddisk import harddiskmanager config.misc.firstrun = ConfigBoolean(default = True) config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf']) backupfile = "enigma2settingsbackup.tar.gz" def checkConfigBackup(): parts = [ (r.description, r.mountpoint) for r in harddiskmanager.getMountedPartitions(onlyhotplug = False)] for x in parts: if x[1] == '/': parts.remove(x) if len(parts): for x in parts: if x[1].endswith('/'): fullbackupfile = x[1] + 'backup/' + backupfile if fileExists(fullbackupfile): config.plugins.configurationbackup.backuplocation.value = str(x[1])
config.plugins.filecommander.add_mainmenu_entry = ConfigYesNo(default=False) config.plugins.filecommander.add_extensionmenu_entry = ConfigYesNo(default=False) config.plugins.filecommander.path_default = ConfigDirectory(default="") config.plugins.filecommander.path_left = ConfigText(default="") config.plugins.filecommander.path_right = ConfigText(default="") config.plugins.filecommander.my_extension = ConfigText(default="", visible_width=15, fixed_size=False) config.plugins.filecommander.extension = ConfigSelection(default="^.*", choices=[("^.*", _("without")), ("myfilter", _("My Extension")), (records, _("Records")), (movie, _("Movie")), (music, _("Music")), (pictures, _("Pictures"))]) config.plugins.filecommander.input_length = ConfigInteger(default=0, limits=(0, 100)) config.plugins.filecommander.diashow = ConfigInteger(default=5000, limits=(1000, 10000)) config.plugins.filecommander.fake_entry = NoSave(ConfigNothing()) config.plugins.filecommander.path_left_tmp = ConfigText(default=config.plugins.filecommander.path_left.value) config.plugins.filecommander.path_right_tmp = ConfigText(default=config.plugins.filecommander.path_right.value) config.plugins.filecommander.path_left_selected = ConfigYesNo(default=True) config.plugins.filecommander.hashes = ConfigSet(key_actions.hashes.keys(), default=["MD5"]) config.plugins.filecommander.bookmarks = ConfigLocations() # #################### # ## Config Screen ### # #################### class FileCommanderConfigScreen(Setup): def __init__(self, session): Setup.__init__(self, session, "filecommander", plugin="Extensions/FileCommander") def keyOK(self): if self["config"].getCurrent()[1] is config.plugins.filecommander.path_default: self.session.openWithCallback(self.pathSelected, LocationBox, text=_("Default Folder"), currDir=config.plugins.filecommander.path_default.getValue(), minFree=100) else: Setup.keyOK(self) def pathSelected(self, res):
config.plugins.configurationbackup.backupdirs = ConfigLocations( default=[ eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/CCcam.cfg', '/etc/CCcam.prio', '/usr/keys/', '/usr/scripts/', '/etc/tuxbox/config/', '/var/tuxbox/config/', '/etc/model', '/etc/auto.network', '/etc/default/dropbear', '/home/root/', '/etc/samba/', '/etc/fstab', '/etc/inadyn.conf', '/etc/ConfFS/', '/etc/enigma2/ci_auth_slot_0.bin', '/etc/enigma2/ci_auth_slot_1.bin', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/default_gw', '/etc/wpa_supplicant.ath0.conf', '/etc/dropbear/', '/etc/volume.xml', '/etc/cron/crontabs/root', '/etc/vtuner.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/wpa_supplicant.wlan1.conf', '/etc/resolv.conf', '/etc/enigma2/nameserversdns.conf', '/etc/hostname', '/usr/share/enigma2/XionHDF/skin.xml', '/etc/xmltvimport', '/etc/ava_volume.cfg', '/etc/ava_setup.cfg', '/etc/openvpn/', '/etc/ipsec.conf', '/etc/ipsec.secrets', '/etc/ipsec.user', '/etc/strongswan.conf', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/DB/', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/youtv.pwd', '/usr/bin/enigma2_pre_start.sh', '/usr/lib/enigma2/python/Plugins/Extensions/VMC/vod.config', '/usr/lib/enigma2/python/Plugins/Extensions/MP3Browser/db', '/usr/lib/enigma2/python/Plugins/Extensions/MovieBrowser/db', '/usr/lib/enigma2/python/Plugins/Extensions/TVSpielfilm/db', eEnv.resolve("${datadir}/enigma2/keymap.usr"), eEnv.resolve("${datadir}/enigma2/keymap.ntr"), eEnv.resolve("${datadir}/enigma2/keymap_usermod.xml") ] + eEnv_resolve_multi('/usr/bin/*cam*') + eEnv_resolve_multi('/usr/bin/gbox') + eEnv_resolve_multi('/etc/*.emu') + eEnv_resolve_multi('/etc/init.d/softcam*') + eEnv_resolve_multi('/etc/init.d/cardserver*'))
from Components.FileList import MultiFileSelectList from Components.Network import iNetwork from enigma import eEnv, eConsoleAppContainer, eEPGCache from Tools.Directories import * from os import popen, path, makedirs, listdir, stat, rename, remove from time import strftime from datetime import datetime from boxbranding import getBoxType, getMachineBrand, getMachineName, getImageVersion, getImageDistro boxtype = getBoxType() imagename = getImageDistro() imageversion = getImageVersion() config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname', eEnv.resolve("${datadir}/enigma2/keymap.usr"), '/etc/CCcam.cfg', '/usr/keys/']) def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup_' + imagename + '_' + imageversion + '_' + boxtype else: return backuppath + '/backup_' + imagename + '_' + imageversion + '_' + boxtype def getOldBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup' else: return backuppath + '/backup'
from Components.config import getConfigListEntry, configfile, ConfigSelection, ConfigSubsection, ConfigText, ConfigLocations from Components.config import config from Components.ConfigList import ConfigList, ConfigListScreen from Components.FileList import MultiFileSelectList from Plugins.Plugin import PluginDescriptor from enigma import eTimer from Tools.Directories import * from os import popen, path, makedirs, listdir, access, stat, rename, remove, W_OK, R_OK from time import gmtime, strftime, localtime from datetime import date config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText( default='/media/hdd/', visible_width=50, fixed_size=False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[ '/etc/enigma2/', '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname' ]) def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup' else: return backuppath + '/backup' def getBackupFilename(): return "enigma2settingsbackup.tar.gz"
from Plugins.Plugin import PluginDescriptor from enigma import eTimer, eEnv, eConsoleAppContainer from Tools.Directories import * from os import system, popen, path, makedirs, listdir, access, stat, rename, remove, W_OK, R_OK from time import gmtime, strftime, localtime, sleep from datetime import date from boxbranding import getBoxType, getMachineBrand, getMachineName, getImageDistro import shutil boxtype = getBoxType() distro = getImageDistro() START = time() dt1 = strftime("%Y%m%d_%H%M", localtime(START)) config.plugins.configurationbackup = ConfigSubsection() config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname']) dirsbackup = config.plugins.configurationbackup.backuplocation.value + 'channellist_' + dt1 def getBackupPathChannel(): backuppath = config.plugins.configurationbackup.backuplocation.value if backuppath.endswith('/'): return backuppath + 'backup_channellist' else: return backuppath + '/backup_channellist' def getBackupFilenameChannel(): return "enigma2_backup_channellist" + dt1 + ".tar.gz" def getBackupPath(): backuppath = config.plugins.configurationbackup.backuplocation.value
#pragma mark - Config from Components.config import config, ConfigSubsection, ConfigText, \ ConfigPassword, ConfigLocations, ConfigSet, ConfigNumber, \ ConfigSelection from Tools.Directories import resolveFilename, SCOPE_HDD config.plugins.ecasa = ConfigSubsection() config.plugins.ecasa.google_username = ConfigText(default="", fixed_size=False) config.plugins.ecasa.google_password = ConfigPassword(default="") config.plugins.ecasa.cachedirs = ConfigLocations(default="/tmp/ecasa") config.plugins.ecasa.cache = ConfigText(default="/tmp/ecasa") config.plugins.ecasa.user = ConfigText(default='default') config.plugins.ecasa.searchhistory = ConfigSet(choices=[]) config.plugins.ecasa.userhistory = ConfigSet(choices=[]) config.plugins.ecasa.searchlimit = ConfigNumber(default=30) config.plugins.ecasa.cachesize = ConfigNumber(default=30) config.plugins.ecasa.slideshow_interval = ConfigNumber(default=30) config.plugins.ecasa.flickr_api_key = ConfigText(default="", fixed_size=False) config.plugins.ecasa.last_backend = ConfigSelection( default='picasa', choices=['picasa', 'flickr'])