Linux anchor 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64
Apache/2.4.18 (Ubuntu)
Server IP : 10.10.100.4 & Your IP : 216.73.217.150
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
python3 /
dist-packages /
LanguageSelector /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2016-11-15 15:19
ImConfig.py
2.24
KB
-rw-r--r--
2016-07-22 15:14
LangCache.py
6.06
KB
-rw-r--r--
2013-11-04 22:47
LanguageSelector.py
4.18
KB
-rw-r--r--
2013-11-04 22:47
LocaleInfo.py
12.55
KB
-rw-r--r--
2013-11-05 02:07
__init__.py
3
B
-rw-r--r--
2013-11-04 22:47
macros.py
5.24
KB
-rw-r--r--
2013-11-04 22:47
utils.py
1.63
KB
-rw-r--r--
2013-11-04 22:47
xkb.py
3.25
KB
-rw-r--r--
2013-11-04 22:47
Save
Rename
# (c) 2006 Canonical # Author: Michael Vogt <michael.vogt@ubuntu.com> # # Released under the GPL # from __future__ import print_function from __future__ import absolute_import import warnings warnings.filterwarnings("ignore", "apt API not stable yet", FutureWarning) import apt import dbus import os import language_support_pkgs from LanguageSelector.LocaleInfo import LocaleInfo import LanguageSelector.LangCache from LanguageSelector.utils import * from LanguageSelector import macros # the language-selector abstraction class LanguageSelectorBase(object): """ base class for language-selector code """ def __init__(self, datadir=""): self._datadir = datadir # load the localeinfo "database" self._localeinfo = LocaleInfo("languagelist", self._datadir) self._cache = None def openCache(self, progress): self._cache = LanguageSelector.LangCache.LanguageSelectorPkgCache(self._localeinfo, progress) def getMissingLangPacks(self): """ return a list of language packs that are not installed but should be installed """ if self._datadir: ls = language_support_pkgs.LanguageSupport(self._cache, os.path.join(self._datadir, "data", "pkg_depends")) else: ls = language_support_pkgs.LanguageSupport(self._cache) missing = [] for pack in ls.missing(): # ls.missing() returns a set; we need a list missing.append(pack) return missing def writeSysFormatsSetting(self, sysFormats): """ write various LC_* variables (e.g. de_DE.UTF-8) """ bus = dbus.SystemBus() obj = bus.get_object('com.ubuntu.LanguageSelector','/') iface = dbus.Interface(obj,dbus_interface="com.ubuntu.LanguageSelector") iface.SetSystemDefaultFormatsEnv(sysFormats) def writeSysLanguageSetting(self, sysLanguage): """ write the system "LANGUAGE" and "LANG" variables """ bus = dbus.SystemBus() obj = bus.get_object('com.ubuntu.LanguageSelector','/') iface = dbus.Interface(obj,dbus_interface="com.ubuntu.LanguageSelector") iface.SetSystemDefaultLanguageEnv(sysLanguage) def writeUserFormatsSetting(self, userFormats): """ write various LC_* variables (e.g. de_DE.UTF-8) """ uid = os.getuid() if uid == 0: warnings.warn("No formats locale saved for user '%s'." % os.getenv('USER')) return bus = dbus.SystemBus() obj = bus.get_object('org.freedesktop.Accounts', '/org/freedesktop/Accounts/User%i' % uid) iface = dbus.Interface(obj, dbus_interface='org.freedesktop.Accounts.User') macr = macros.LangpackMacros(self._datadir, userFormats) iface.SetFormatsLocale(macr['SYSLOCALE']) def writeUserLanguageSetting(self, userLanguage): """ write the user "LANGUAGE" and "LANG" variables """ uid = os.getuid() if uid == 0: warnings.warn("No language saved for user '%s'." % os.getenv('USER')) return bus = dbus.SystemBus() obj = bus.get_object('org.freedesktop.Accounts', '/org/freedesktop/Accounts/User%i' % uid) iface = dbus.Interface(obj, dbus_interface='org.freedesktop.Accounts.User') iface.SetLanguage(self.validateLangList(userLanguage)) def validateLangList(self, userLanguage): """ remove possible non-English elements after the first English element """ tmp = [] is_eng = False for lang in userLanguage.split(':'): if lang.startswith('en_') or lang == 'en': tmp.append(lang) is_eng = True elif not is_eng: tmp.append(lang) validatedLangList = ':'.join(tmp) if validatedLangList != userLanguage: warnings.warn('The language list was modified by the program, since there ' + 'should not be any non-English items after an English item.') return validatedLangList if __name__ == "__main__": lsb = LanguageSelectorBase(datadir="..") lsb.openCache(apt.progress.OpProgress()) print(lsb.verifyPackageLists())