You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
159 lines
5.8 KiB
159 lines
5.8 KiB
From 451de58797ef3e270314d07da7170065d787e3e1 Mon Sep 17 00:00:00 2001 |
|
From: Sam Burgos <sam.burgos1089@gmail.com> |
|
Date: Tue, 15 May 2018 16:04:11 -0600 |
|
Subject: [PATCH] added checking of APT so application can show proper |
|
configuration |
|
|
|
--- |
|
usr/lib/linuxmint/mintlocale/install_remove.py | 53 ++++++++++++++++---------- |
|
usr/lib/linuxmint/mintlocale/mintlocale.py | 20 +++++----- |
|
2 files changed, 43 insertions(+), 30 deletions(-) |
|
|
|
diff --git a/usr/lib/linuxmint/mintlocale/install_remove.py b/usr/lib/linuxmint/mintlocale/install_remove.py |
|
index 205bd5b..00e2e2d 100755 |
|
--- a/usr/lib/linuxmint/mintlocale/install_remove.py |
|
+++ b/usr/lib/linuxmint/mintlocale/install_remove.py |
|
@@ -2,12 +2,10 @@ |
|
|
|
import os |
|
import gettext |
|
-import apt_pkg |
|
import subprocess |
|
import tempfile |
|
import locale |
|
import codecs |
|
-import mintcommon |
|
|
|
import gi |
|
gi.require_version('Gtk', '3.0') |
|
@@ -15,6 +13,13 @@ |
|
from gi.repository import GdkX11 |
|
from gi.repository import Gtk, GdkPixbuf, XApp |
|
|
|
+# Used to detect Debian derivatives (we don't want to show APT features in other distros) |
|
+IS_DEBIAN = os.path.exists("/etc/debian_version") |
|
+ |
|
+if IS_DEBIAN: |
|
+ import apt_pkg |
|
+ import mintcommon |
|
+ |
|
# i18n |
|
APP = 'mintlocale' |
|
LOCALE_DIR = "/usr/share/linuxmint/locale" |
|
@@ -98,7 +103,9 @@ def __init__(self): |
|
|
|
self.build_lang_list() |
|
|
|
- self.apt = mintcommon.APT(self.window) |
|
+ |
|
+ if IS_DEBIAN: |
|
+ self.apt = mintcommon.APT(self.window) |
|
|
|
def split_locale(self, locale_code): |
|
if "_" in locale_code: |
|
@@ -244,22 +251,25 @@ def select_language(self, treeview, data=None): |
|
|
|
def button_install_clicked(self, button): |
|
if self.selected_language_packs is not None: |
|
- if self.cache_updated: |
|
- self.apt.set_finished_callback(self.on_install_finished) |
|
- self.apt.set_cancelled_callback(self.on_install_finished) |
|
- self.apt.install_packages(self.selected_language_packs) |
|
- else: |
|
- self.apt.set_finished_callback(self.on_update_finished) |
|
- self.apt.update_cache() |
|
- |
|
- def on_update_finished(self, transaction=None, exit_state=None): |
|
- self.cache_updated = True |
|
- self.apt.set_finished_callback(self.on_install_finished) |
|
- self.apt.set_cancelled_callback(self.on_install_finished) |
|
- self.apt.install_packages(self.selected_language_packs) |
|
- |
|
- def on_install_finished(self, transaction=None, exit_state=None): |
|
- self.build_lang_list() |
|
+ if IS_DEBIAN: |
|
+ if self.cache_updated: |
|
+ self.apt.set_finished_callback(self.on_install_finished) |
|
+ self.apt.set_cancelled_callback(self.on_install_finished) |
|
+ self.apt.install_packages(self.selected_language_packs) |
|
+ else: |
|
+ self.apt.set_finished_callback(self.on_update_finished) |
|
+ self.apt.update_cache() |
|
+ |
|
+ if IS_DEBIAN: |
|
+ def on_update_finished(self, transaction=None, exit_state=None): |
|
+ self.cache_updated = True |
|
+ self.apt.set_finished_callback(self.on_install_finished) |
|
+ self.apt.set_cancelled_callback(self.on_install_finished) |
|
+ self.apt.install_packages(self.selected_language_packs) |
|
+ |
|
+ if IS_DEBIAN: |
|
+ def on_install_finished(self, transaction=None, exit_state=None): |
|
+ self.build_lang_list() |
|
|
|
def button_add_clicked(self, button): |
|
os.system("/usr/lib/linuxmint/mintlocale/add.py") |
|
@@ -284,8 +294,9 @@ def button_remove_clicked(self, button): |
|
print(pkgname) |
|
|
|
if len(installed_packs) > 0: |
|
- self.apt.set_finished_callback(self.on_install_finished) |
|
- self.apt.remove_packages(installed_packs) |
|
+ if IS_DEBIAN: |
|
+ self.apt.set_finished_callback(self.on_install_finished) |
|
+ self.apt.remove_packages(installed_packs) |
|
|
|
self.build_lang_list() |
|
|
|
diff --git a/usr/lib/linuxmint/mintlocale/mintlocale.py b/usr/lib/linuxmint/mintlocale/mintlocale.py |
|
index cd75f75..87e0c47 100755 |
|
--- a/usr/lib/linuxmint/mintlocale/mintlocale.py |
|
+++ b/usr/lib/linuxmint/mintlocale/mintlocale.py |
|
@@ -8,7 +8,6 @@ |
|
import tempfile |
|
import subprocess |
|
import codecs |
|
-import mintcommon |
|
|
|
try: |
|
import _thread as thread |
|
@@ -33,6 +32,7 @@ |
|
|
|
if IS_DEBIAN: |
|
import apt |
|
+ import mintcommon |
|
|
|
# i18n |
|
APP = 'mintlocale' |
|
@@ -64,7 +64,8 @@ def __init__(self, codename, name, methods, app): |
|
self.app = app |
|
self.packages = [] |
|
self.missing_packages = [] |
|
- self.apt = mintcommon.APT(self.app.window) |
|
+ if IS_DEBIAN: |
|
+ self.apt = mintcommon.APT(self.app.window) |
|
|
|
self.label = Gtk.Label() |
|
self.label.set_markup(name) |
|
@@ -107,13 +108,14 @@ def __init__(self, codename, name, methods, app): |
|
def install(self, widget): |
|
if len(self.missing_packages) > 0: |
|
self.app.lock_input_methods() |
|
- if self.app.cache_updated: |
|
- self.apt.set_finished_callback(self.on_install_finished) |
|
- self.apt.set_cancelled_callback(self.on_install_finished) |
|
- self.apt.install_packages(self.missing_packages) |
|
- else: |
|
- self.apt.set_finished_callback(self.on_update_finished) |
|
- self.apt.update_cache() |
|
+ if IS_DEBIAN: |
|
+ if self.app.cache_updated: |
|
+ self.apt.set_finished_callback(self.on_install_finished) |
|
+ self.apt.set_cancelled_callback(self.on_install_finished) |
|
+ self.apt.install_packages(self.missing_packages) |
|
+ else: |
|
+ self.apt.set_finished_callback(self.on_update_finished) |
|
+ self.apt.update_cache() |
|
|
|
def on_update_finished(self, transaction=None, exit_state=None): |
|
self.app.cache_updated = True
|
|
|