def main(): if datetime.datetime.now() - datetime.datetime.strptime(REL_DATE, "%Y-%m-%d") > datetime.timedelta( days=180): print VarietyWindow.OUTDATED_MSG return # Ctrl-C signal.signal(signal.SIGINT, sigint_handler) signal.signal(signal.SIGTERM, sigint_handler) signal.signal(signal.SIGQUIT, sigint_handler) Util.makedirs(os.path.expanduser(u"~/.config/variety/")) arguments = map(_u, sys.argv[1:]) # validate arguments and set up logging options, args = VarietyWindow.VarietyWindow.parse_options(arguments) set_up_logging(options.verbose) monkeypatch_ssl() if options.verbose > 2: Util.log_all(VarietyWindow.VarietyWindow) if options.verbose > 3: Util.log_all(ThumbsManager.ThumbsManager) Util.log_all(ThumbsWindow.ThumbsWindow) bus = dbus.SessionBus() # ensure singleton if bus.request_name(DBUS_KEY) != dbus.bus.REQUEST_NAME_REPLY_PRIMARY_OWNER: if not arguments: arguments = ["--preferences"] safe_print(_("Variety is already running. Sending the command to the running instance."), "Variety is already running. Sending the command to the running instance.") method = bus.get_object(DBUS_KEY, DBUS_PATH).get_dbus_method("process_command") result = method(arguments) if result: safe_print(result) return # Run the application. window = VarietyWindow.VarietyWindow() global VARIETY_WINDOW VARIETY_WINDOW = window service = VarietyService(window) bus.call_on_disconnection(window.on_quit) window.start(arguments) GObject.timeout_add(2000, check_quit) GObject.threads_init() Gdk.threads_init() Gdk.threads_enter() Gtk.main() Gdk.threads_leave()
def main(): # Ctrl-C signal.signal(signal.SIGINT, sigint_handler) signal.signal(signal.SIGTERM, sigint_handler) signal.signal(signal.SIGQUIT, sigint_handler) Util.makedirs(os.path.expanduser(u"~/.config/variety/")) arguments = map(_u, sys.argv[1:]) # validate arguments and set up logging options, args = VarietyWindow.VarietyWindow.parse_options(arguments) set_up_logging(options.verbose) monkeypatch_ssl() if options.verbose >= 2: Util.log_all(VarietyWindow.VarietyWindow) if options.verbose >= 3: Util.log_all(ThumbsManager.ThumbsManager) Util.log_all(ThumbsWindow.ThumbsWindow) bus = dbus.SessionBus() # ensure singleton if bus.request_name(DBUS_KEY) != dbus.bus.REQUEST_NAME_REPLY_PRIMARY_OWNER: if not arguments: arguments = ["--preferences"] safe_print( _("Variety is already running. Sending the command to the running instance." ), "Variety is already running. Sending the command to the running instance." ) method = bus.get_object(DBUS_KEY, DBUS_PATH).get_dbus_method("process_command") result = method(arguments) if result: safe_print(result) return # Run the application. window = VarietyWindow.VarietyWindow() global VARIETY_WINDOW VARIETY_WINDOW = window service = VarietyService(window) bus.call_on_disconnection(window.on_quit) window.start(arguments) GObject.timeout_add(2000, check_quit) GObject.threads_init() Gdk.threads_init() Gdk.threads_enter() Gtk.main() Gdk.threads_leave()
def main(): # Ctrl-C signal.signal(signal.SIGINT, sigint_handler) signal.signal(signal.SIGTERM, sigint_handler) signal.signal(signal.SIGQUIT, sigint_handler) Util.makedirs(os.path.expanduser("~/.config/variety/")) arguments = sys.argv[1:] # validate arguments options, args = VarietyWindow.VarietyWindow.parse_options(arguments) bus = dbus.SessionBus() # ensure singleton if bus.request_name(DBUS_KEY) != dbus.bus.REQUEST_NAME_REPLY_PRIMARY_OWNER: if not arguments: arguments = ["--preferences"] safe_print( _("Variety is already running. Sending the command to the running instance." ), "Variety is already running. Sending the command to the running instance." ) method = bus.get_object(DBUS_KEY, DBUS_PATH).get_dbus_method("process_command") result = method(arguments) if result: safe_print(result) return # set up logging # set_up_logging must be called after the DBus checks, only by one running instance, # or the log file can be corrupted set_up_logging(options.verbose) if options.verbose >= 3: profiler = ModuleProfiler() if options.verbose >= 5: # The main variety package pkgname = os.path.dirname(__file__) profiler.log_path(pkgname) if options.verbose >= 6: # Track variety_lib profiler.log_path(pkgname + "_lib") else: # Cherry-picked log items carried over from variety 0.6.x profiler.log_class(VarietyWindow.VarietyWindow) if options.verbose >= 4: profiler.log_class(ThumbsManager.ThumbsManager) profiler.log_class(ThumbsWindow.ThumbsWindow) profiler.start() # Run the application. window = VarietyWindow.VarietyWindow() global VARIETY_WINDOW VARIETY_WINDOW = window service = VarietyService(window) bus.call_on_disconnection(window.on_quit) window.start(arguments) GObject.timeout_add(2000, check_quit) GObject.threads_init() Gdk.threads_init() Gdk.threads_enter() Gtk.main() Gdk.threads_leave()
def activate(self): super(IVarietyPlugin, self).activate() self.config_folder = os.path.join( self.jumble.parent.config_folder, "pluginconfig/" + os.path.basename(self.folder)) Util.makedirs(self.config_folder)
def main(): # Ctrl-C signal.signal(signal.SIGINT, _sigint_handler) signal.signal(signal.SIGTERM, _sigint_handler) #signal.signal(signal.SIGQUIT, _sigint_handler) arguments = sys.argv[1:] # validate arguments from variety import VarietyOptionParser options, args = VarietyOptionParser.parse_options(arguments) set_profile_path(options.profile) Util.makedirs(get_profile_path()) # ensure singleton per profile bus = dbus.SessionBus() dbus_key = _get_dbus_key() if bus.request_name(dbus_key) != dbus.bus.REQUEST_NAME_REPLY_PRIMARY_OWNER: if not arguments or (options.profile and len(arguments) <= 2): arguments = ["--preferences"] safe_print( _("Variety is already running. Sending the command to the running instance."), "Variety is already running. Sending the command to the running instance.", file=sys.stderr, ) method = bus.get_object(dbus_key, DBUS_PATH).get_dbus_method("process_command") result = method(arguments) if result: safe_print(result) return # set up logging # set_up_logging must be called after the DBus checks, only by one running instance, # or the log file can be corrupted _set_up_logging(options.verbose) logging.getLogger("variety").info(lambda: "Using profile folder {}".format(get_profile_path())) if options.verbose >= 3: profiler = ModuleProfiler() if options.verbose >= 5: # The main variety package pkgname = os.path.dirname(__file__) profiler.log_path(pkgname) if options.verbose >= 6: # Track variety_lib profiler.log_path(pkgname + "_lib") else: # Cherry-picked log items carried over from variety 0.6.x profiler.log_class(VarietyWindow.VarietyWindow) if options.verbose >= 4: profiler.log_class(ThumbsManager.ThumbsManager) profiler.log_class(ThumbsWindow.ThumbsWindow) profiler.start() # Run the application. window = VarietyWindow.VarietyWindow() global VARIETY_WINDOW VARIETY_WINDOW = window service = VarietyService(window) bus.call_on_disconnection(window.on_quit) window.start(arguments) GObject.timeout_add(2000, _check_quit) Gtk.main()
def activate(self): super(IVarietyPlugin, self).activate() self.config_folder = os.path.join(self.jumble.parent.config_folder, "pluginconfig/" + os.path.basename(self.folder)) Util.makedirs(self.config_folder)