Скопируйте средство запуска Единицы от одного пользователя всем пользователям

Я хотел бы добавить уровень техники средства запуска Единицы как шаблон для создания минимального уровня техники других пользователей. Я был найден методом, как добавить приложения в шаблон, но не метод, как извлечь настройки текущего пользователя.

Я пытаюсь удостовериться, если просто редактирование схемы достаточно к дисплею аппарата настоящего имени зарегистрированного пользователя в индикаторе панели, также.

2
задан 24 September 2014 в 05:38

1 ответ

Можно разделить объекты средства запуска Единицы на средства запуска приложения и другие объекты; сеть связанные, смонтированные объемы и такой. Лучшее должно только скопировать средства запуска приложения в других пользователей, так как другие могут быть конкретным пользователем и / или варьироваться во время процесса.

Также обратите внимание на это при копировании содержания средства запуска в другого пользователя, возможные локальные .desktop файлы (в ~/.local/share/applications) из локально установленных приложений, например, не появится в средстве запуска Единицы другого пользователя.

Чтение содержания текущего средства запуска

Однако можно считать содержание текущего средства запуска командой:

gsettings get com.canonical.Unity.Launcher favorites

Вывод является списком всех объектов от Вашего текущего средства запуска Единицы.

Установка содержания нового средства запуска

Для установки нового содержания для средства запуска следующая команда используется:

gsettings set com.canonical.Unity.Launcher favorites <list_of_items>

Используя сценарий для копирования средства запуска в учетную запись другого пользователя

Если мы используем сценарий для выборки объектов средства запуска первого пользователя, запишите результат в файл, то войдите в учетную запись другого пользователя для запущения скрипта снова (вместе с файлом) для установки содержания в учетную запись другого пользователя, это может быть сделано в мгновение ока. Сценарий ниже сделан сделать обоих, в зависимости от аргумента, который Вы даете ему (см. далее ниже).

Как использовать

  • Скопируйте сценарий ниже в пустой файл, сохраните его как copy_launcher.py
  • Откройте окно терминала в" учетной записи "образцового пользователя и запустите скрипт с командой:

    python3 /path/to/copy_launcher.py get
    

    get - аргумент команды заставляет сценарий создать текстовый файл: saved_launcher.txt, с содержанием Вашего текущего средства запуска Единицы. Файл создается в том же каталоге как, где сценарий расположен.

  • Скопируйте и сценарий и saved_launcher.txt файл на (например), палке usb, но держат оба файла вместе в одном и том же каталоге.
  • Войдите в учетную запись другого пользователя, откройте терминал и запустите скрипт командой:

    python3 /path/to/copy_launcher.py set
    

    (возражайте против аргумента набора),

Сценарий

#!/usr/bin/env python

import subprocess
import os
import sys

command = sys.argv[1]

curr_dir = os.path.dirname(os.path.abspath(__file__))
datafile = curr_dir+"/saved_launcher.txt"

def get_current():
    get_current = subprocess.check_output(["gsettings", "get", "com.canonical.Unity.Launcher", "favorites"]).decode("utf-8")
    return (str([item for item in eval(get_current) if item.startswith("application://")]),
            [item for item in eval(get_current) if not item.startswith("application://")])

def write_saved():
    current_launcher = get_current()[0]
    with open(datafile, "w") as saved:
        saved.write(current_launcher)

def read_saved():
    with open(datafile, "r") as saved:
        return eval(saved.read())

def set_launcher():
    app_section = read_saved(); fixed_section = get_current()[1]
    new_launcher = str(app_section+fixed_section)
    subprocess.Popen(["gsettings", "set", "com.canonical.Unity.Launcher", "favorites", new_launcher ])


if command == "set":
    set_launcher()
elif command == "get":
    write_saved()

Если Вы сделаны, Вы скопировали средство запуска Единицы от одного пользователя другому.

2
ответ дан 2 December 2019 в 03:59

Другие вопросы по тегам:

Похожие вопросы: