Как запустить Thunderbird свернутым при запуске?

Я следовал этому уроку , чтобы установить запуск Thunderbird в свернутом режиме при запуске, но это не помогло.

После следования инструкциям я даже не смог запустить Thunderbird. Поэтому я был вынужден запустить TB в безопасном режиме, чтобы удалить «Плагин FireTray» и исправить эту проблему. После этого он начал работать, но удалил все мои учетные записи электронной почты, и мне пришлось снова и снова выполнять эту рутинную работу.

Так есть ли какой-нибудь рабочий способ запустить Thunderbird при запуске?

18
задан 13 July 2014 в 17:55

7 ответов

0
ответ дан 13 July 2014 в 17:55

Позвольте мне прояснить это, по крайней мере, для таких людей, как я.

Чтобы убедиться, что thunderbird автоматически запускается при входе в систему, требуется всего три шага:

  1. Установить дополнение « FireTray » на thunderbird
  2. [ 117] отметьте опцию «запускать приложение, скрытое в трей» в настройках FireTray (Thunderbird -> Tools -> addons -> firetray -> preferences -> under tab "windows")
  3. . Следуйте этому ответу (это быстро), чтобы добавить Thunderbird к запуску ( Примечание: поле команды в нем должно быть: thunderbird или /usr/bin/thunderbird)

Обратите внимание, что аддон FireTray является обязательным. Большинство людей на самом деле не хотят выходить полностью, как это происходит по умолчанию, когда они говорят «закрыть» окну. Они наверняка ожидают, что Thunderbird будет работать в фоновом режиме, и будут уведомлять о новых поступлениях электронной почты. И FireTray решает именно эту проблему.

0
ответ дан 13 July 2014 в 17:55

Я использовал этот аддон для запуска Thunderbird по умолчанию в минимизированном режиме и добавил запись запуска для Thunderbird , следуя этому руководству .

0
ответ дан 13 July 2014 в 17:55

Для Ubuntu 18.04.

1) Установка devilspie пакет:

sudo apt install devilspie

2) Создать ~/.devilspie папка и thunderbird.ds файл в той папке:

mkdir -p ~/.devilspie && touch ~/.devilspie/thunderbird.ds

​3) Вставьте этот код в ~/.devilspie/thunderbird.ds файл:

(if
    (is (window_name) "Mozilla Thunderbird")
    (begin
       (minimize)
    )
)

4) Добавить devilspie запускать приложения

5) Добавить thunderbird запускать приложения

6) Дополнительно установка Сохраняет в Панели задач (дополнение для Thunderbird, который заставляет кнопку Close вести себя точно как Минимизирование одного),

7) Перезагрузка.

Подсказка: Как задержать определенную программу на запуске

devilspie' документы:

https://web.archive.org/web/20160415011438/http://foosel.org/linux/devilspie

https://wiki.gnome.org/Projects/DevilsPie

https://help.ubuntu.com/community/Devilspie

0
ответ дан 13 July 2014 в 17:55
  • Нажмите [Alt] + F2 для запуска команды
  • Выполнить gnome-session-properties
  • Добавить / usr / bin / thunderbird [ 114]
0
ответ дан 13 July 2014 в 17:55

Я на самом деле использую Ubuntu 13.10, но это решение должно работать нормально, по крайней мере, до 12.04. Firetray - это расширение для Firefox, благодаря которому вы можете свернуть лоток при закрытии и свернуть при запуске (вы увидите всплывающее окно Thunderbird на короткую секунду, но это вряд ли проблема). Затем просто добавьте Thunderbird в Startup Applications, и когда вы войдете в систему, Thunderbird будет мигать секунду, а затем свернется в системном трее. Он также полностью поддерживает меню сообщений по умолчанию, поэтому не создает вторичного значка Thunderbird.

Теперь для тех, кто, возможно, пробовал это в прошлом, я знаю, что я пробовал Firetray пару лет назад, и он не работал вообще, у него было много ошибок при использовании с современной Ubuntu, но последняя версия кажется работать безупречно с Ubuntu (по крайней мере, версия 13.10, но я не понимаю, почему он не будет работать с любой другой версией).

0
ответ дан 13 July 2014 в 17:55

Ubuntu 16.04.

Имел ту же проблему и использовал следующее для достижения цели. Запись автоматического запуска добавленный рабочий тандерберд через этот сценарий:

#!/usr/bin/env python3
import subprocess
import sys
import time

#
# Check out command
#
command = sys.argv[1]

#
# Run it as a subservice in own bash
#
subprocess.Popen(["/bin/bash", "-c", command])

#
# If a window name does not match command process name, add here. 
# Check out by running :~$ wmctrl -lp
# Do not forget to enable the feature, seperate new by comma.
#
#windowProcessMatcher = {'CommandName':'WindowName'}
#if command in windowProcessMatcher:
#    command = ''.join(windowProcessMatcher[command])
#print("Command after terminator" + command)

#
# Set some values. t is the iteration counter, maxIter guess what?, and a careCycle to check twice.
#
t = 1
maxIter=30
wellDone=False
careCycle=True
sleepValue=0.1

#
# MaxIter OR if the minimize job is done will stop the script.  
# 
while not wellDone:
    # And iteration count still under limit. Count*Sleep, example: 60*0.2 = 6 seconds should be enough.
    # When we found a program
    if t >= maxIter:
        break
    # Try while it could fail.
    try:
        # Gives us a list with all entries
        w_list = [output.split() for output in subprocess.check_output(["wmctrl", "-lp"]).decode("utf-8").splitlines()]
        # Why not check the list? 
        for entry in w_list:
            # Can we find our command string in one of the lines? Here is the tricky part: 
            # When starting for example terminator is shows yourname@yourmaschine ~. 
            # Maybee some matching is needed here for your purposes. Simply replace the command name
            # But for our purposes it should work out.
            #
            # Go ahead if nothing found!
            if command not in (''.join(entry)).lower():
                continue
            #######
            print("mt### We got a match and minimize the window!!!")
            # First entry is our window pid
            match = entry[0]
            # If something is wrong with the value...try another one :-)
            subprocess.Popen(["xdotool", "windowminimize", match])
            # 
            # Maybee there will be more than one window running with our command name. 
            # Check the list till the end. And go one more iteration!   
            if careCycle:
                # Boolean gives us one more iteration.
                careCycle=False
                break
            else:
                wellDone=True
    except (IndexError, subprocess.CalledProcessError):
        pass
    t += 1
    time.sleep(sleepValue)

if wellDone:
    print(" ")
    print("mt### Well Done!")
    print("mt### Window found and minimize command send.")
    print("mt### ByBy")
else:
    print(" ")
    print("mt### Seems that the window while counter expired or your process command did not start well.")
    print("mt### == Go ahead. What can you do/try out now? ")

Это должно работать на любое приложение также.

Хорошее кодирование

0
ответ дан 13 July 2014 в 17:55

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

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