summaryrefslogtreecommitdiff
path: root/src/leap/bitmask/pix.py
diff options
context:
space:
mode:
authorKali Kaneko <kali@leap.se>2016-04-04 21:55:06 -0400
committerKali Kaneko <kali@leap.se>2016-04-04 21:55:06 -0400
commit0ce1c02dd59df3e4f23ba0b90e67644258412533 (patch)
treecd7ac64b812d3009c8ca20db97a4e4dca6394431 /src/leap/bitmask/pix.py
parentfe96e2eef29a538b856f0d8b4bbf3940e42364c1 (diff)
[bug] fail gracefully if no pixelated modules present
currently, we're distributing the wheels for the pixelated modules under downloads.leap.se. bootstrap script tried to download the pixelated modules, but it fails on python versions < 2.7.9, apparently. as a workaround, I make the import of the pixelated modules a non-fatal error by setting a flag, and doing the launching of the pix UA conditional on a successful import. - Related: #8009
Diffstat (limited to 'src/leap/bitmask/pix.py')
-rw-r--r--src/leap/bitmask/pix.py26
1 files changed, 15 insertions, 11 deletions
diff --git a/src/leap/bitmask/pix.py b/src/leap/bitmask/pix.py
index 8242255c..a05a1d9c 100644
--- a/src/leap/bitmask/pix.py
+++ b/src/leap/bitmask/pix.py
@@ -27,17 +27,21 @@ from twisted.python import log
from leap.bitmask.util import get_path_prefix
from leap.mail.imap.account import IMAPAccount
-import pixelated_www
-
-from pixelated.adapter.mailstore import LeapMailStore
-from pixelated.adapter.welcome_mail import add_welcome_mail
-from pixelated.application import SingleUserServicesFactory
-from pixelated.application import UserAgentMode
-from pixelated.application import start_site
-from pixelated.bitmask_libraries.smtp import LeapSMTPConfig
-from pixelated.bitmask_libraries.session import SessionCache
-from pixelated.config import services
-from pixelated.resources.root_resource import RootResource
+try:
+ import pixelated_www
+
+ from pixelated.adapter.mailstore import LeapMailStore
+ from pixelated.adapter.welcome_mail import add_welcome_mail
+ from pixelated.application import SingleUserServicesFactory
+ from pixelated.application import UserAgentMode
+ from pixelated.application import start_site
+ from pixelated.bitmask_libraries.smtp import LeapSMTPConfig
+ from pixelated.bitmask_libraries.session import SessionCache
+ from pixelated.config import services
+ from pixelated.resources.root_resource import RootResource
+ HAS_PIXELATED = True
+except ImportError:
+ HAS_PIXELATED = False
def start_pixelated_user_agent(userid, soledad, keymanager):