Запуск программных источников приводит к ошибке Python (LMDE 3) - PullRequest
1 голос
/ 14 апреля 2019

Мне нужно запустить графический интерфейс Software Sources (нет, моя работа не может быть выполнена через apt или aptitude).Так как окно никогда не загрузится, если я перейду с панели запуска, я решил посмотреть, что произойдет, если я запусту его из командной строки:

jason@jason-mint:~$ software-sources 
  File "/usr/lib/linuxmint/mintSources/mintSources.py", line 48
    def async(func):
            ^
SyntaxError: invalid syntax

Функция в файле mintSources.py выглядит следующим образом:

# Used as a decorator to run things in the background
def async(func):
    def wrapper(*args, **kwargs):
        thread = threading.Thread(target=func, args=args, kwargs=kwargs)
        thread.daemon = True
        thread.start()
        return thread
    return wrapper

В самом верху шебанг говорит: #!/usr/bin/python3.Так как мой Python по умолчанию - Python 2.7, я изменил shebang на #!/usr/bin/python, чтобы посмотреть, что произойдет, только для того, чтобы на этот раз появилась новая ошибка:

jason@jason-mint:/etc/apt$ software-sources 
Traceback (most recent call last):
  File "/usr/lib/linuxmint/mintSources/mintSources.py", line 6, in <module>
    import configparser
ImportError: No module named configparser

Что означает, что он завершается ошибкой в ​​import configparser, явноуказание на то, что python2.7 (по умолчанию) не будет работать.Чтобы уточнить, у меня есть оба Python2 и Python3:

jason@jason-mint:~$ python --version
Python 2.7.16
jason@jason-mint:~$ python2
Python 2.7.16 (default, Apr  6 2019, 01:42:57) 
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()
jason@jason-mint:~$ python3
Python 3.7.3rc1 (default, Mar 13 2019, 11:01:15) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()
jason@jason-mint:~$ python
Python 2.7.16 (default, Apr  6 2019, 01:42:57) 
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.

Некоторая информация о системе, если она помогает:

jason@jason-mint:~$ cat /etc/debian_version 
buster/sid
jason@jason-mint:~$ uname -r
4.19.0-4-amd64
...