Das E-Mail Programm in der jeweils aktuellen Version Thunderbird-Stable wird von Mozilla (MZLA Technologies Corporation) als Fertigbinary für Linux bereitgestellt. Jedoch leider nicht als DEB-Paket.
Möchte man Snap vermeiden, aber möchte dennoch einen aktuellen Thunderbird-Stable mit jeweils allen verfügbaren Sicherheitspatches erhalten, so kann man unter:
...den jeweils aktuellen Thunderbird-Stable herunterladen, auspacken und den Inhalt vom thunderbird-$(VERSIONSNUMMER).tar.xz im System plazieren. Dies wird dort beschrieben:
Installiert man im System, wo root Rechte benötigt werden, ist die Installation zwar sicher, aber updaten funktioniert dann nicht. Installiert man im User $HOME Verzeichnis, ist die Installation unsicher, da dann die Bibliotheken (Libs) wie etwa auch die Network Security Services und das Thunderbird Binary nur allzu leicht manipuliert werden könnten.
Die Lösung ist, Thunderbird ins System zu installieren, so, dass normale User mit User Rechten nichts daran manipulieren können und Systemd für Updates zu nutzen. Das kann man manuell machen. Man braucht eine Systemd Timer Unit, eine Systemd Service Unit, und ein thunderbird-updater Skript. Das ist Arbeit, gegebenenfalls muss man sich auch erst etwas einlesen und verstehen lernen. Das Wiki ist ein guter Beginn:
Schneller und bequemer geht die Thunderbird-Stable Installation, und aktuell halten, aber mit diesem Skript:
thunderbird-mozilla-binary-install-helper.sh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 | #!/usr/bin/env bash #------------------------------------------------------------------------------- # Ubuntu 24.04, 25.04 and 25.10 Thunderbird Binary Install little helper script. # https://www.thunderbird.net/de/thunderbird/all/ # https://archive.mozilla.org/pub/thunderbird/releases/latest/README.txt #------------------------------------------------------------------------------- USER_NAME=$(id -un) && \ USER_UID=$(id -u) && \ OS=linux64 && \ #------------------------------------------------------------------------------- # You can set your preferred language here. # For example, “LANGUAGE=de” for German 🇩🇪without quotation marks. # The default language is the one that give "echo $LANGUAGE". #------------------------------------------------------------------------------- LANGUAGE=$LANGUAGE PREFIX=/usr && \ RELEASE_VERSION=$(lsb_release -cs 2>/dev/null) DISTRIBUTION=$(lsb_release -id | awk '/Distributor/{ print $NF }') printf "\n \033[45m\033[1;36m==> Running on $DISTRIBUTION $RELEASE_VERSION \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ [ $DISTRIBUTION = Ubuntu ] && \ [ $RELEASE_VERSION = noble ] || \ [ $RELEASE_VERSION = plucky ] || \ [ $RELEASE_VERSION = questing ] && \ echo "$RELEASE_VERSION good". || \ printf "\n \033[41m\033[1;36m==> Sorry, not for $DISTRIBUTION $RELEASE_VERSION.\033[0m \n \n" && \ [ $DISTRIBUTION = Ubuntu ] && \ [ $RELEASE_VERSION = noble ] || \ [ $RELEASE_VERSION = plucky ] || \ [ $RELEASE_VERSION = questing ] || \ (printf "\n \033[41m\033[1;36m==> If you want to install Thunderbird despite the negative release version test, type \"Yes\". \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" read -e -p " [y/N] " YN [[ $YN == "Yes" ]] && \ (echo "try it.")) || exit printf "\n \033[45m\033[1;36m==> Test sudo. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ sudo echo "sudo Test, OK." && \ printf "\n \033[45m\033[1;36m==> Please deinstall other Thunderbirds on your System and \033[41m\033[1;36m make a Thunderbird Profile Backup before install this one. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ printf "\n \033[45m\033[1;36m==> If you would like to proceed, please do the following: type \"Yes\". \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ read -e -p " [y/N] " YN [[ $YN == "Yes" ]] && \ (echo "Install some requirements ..." && \ echo ". " sudo apt-get -qq install curl bzip2 xz-utils libnotify-bin && \ echo ".." && \ [ $XDG_SESSION_DESKTOP = KDE ] && [ ! -z $(dpkg -l | awk '/libkf6/{ print $2}' | head -n1) ] && sudo apt-get -qq install libkf5service-bin || echo "No libkf5. Ok" && \ echo "..." && \ [ $XDG_SESSION_DESKTOP = KDE ] &&[ ! -z $(dpkg -l | awk '/libkf6/{ print $2}' | head -n1) ] && sudo apt-get -qq install libkf6service-bin || echo "No libkf6. Ok" && \ echo "...." && \ printf "\n \033[45m\033[1;36m==> Download Thunderbird from download.mozilla.org. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ THUNDERBIRD_LATEST_RELEASE=$(curl -H 'Cache-Control: no-cache' -s -i -k --max-time 2 --write-out '%{http_code} %{size_header} %{redirect_url} ' \ "https://download.mozilla.org/?product=thunderbird-latest&os=$OS&lang=$LANGUAGE" | \ grep location | sed 's/.*thunderbird-//g;s/.tar.xz//g;s/^[[:space:]]*//g;s/[[:space:]]*$//g' | xargs) && \ printf "\n \033[45m\033[1;36m==> You will receive Thunderbird version $THUNDERBIRD_LATEST_RELEASE - Language:$LANGUAGE \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ wget -O /tmp/thunderbird-latest-stable.tar.xz "https://download.mozilla.org/?product=thunderbird-latest&os=$OS&lang=$LANGUAGE" && \ printf "\n \033[45m\033[1;36m==> Extract Thunderbird Binary in Place. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ sudo tar -xf /tmp/thunderbird-latest-stable.tar.xz -C $PREFIX/lib && \ rm -fv /tmp/thunderbird-latest-stable.tar.xz && \ sudo update-alternatives --install "$PREFIX/bin/thunderbird" "thunderbird" "$PREFIX/lib/thunderbird/thunderbird" 100 && \ #------------------------------------------------------------------------------- # Create Thunderbird launcher #------------------------------------------------------------------------------- printf "\n \033[45m\033[1;36m==> Make Thunderbird Starter. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ echo "[Desktop Entry] Encoding=UTF-8 Name=Thunderbird Mail Name[fr]=Messagerie Thunderbird Comment=Send and receive mail with Thunderbird Comment[de]=E-Mails lesen und schreiben Comment[fr]=Lire et écrire des courriels GenericName=Mail Client GenericName[fr]=Client de messagerie Keywords=Email;E-mail;Newsgroup;Feed;RSS Keywords[de]=E-Mails; Mails; E-Mails; Emails; Nachrichten; Nachrichten; Newsgroup; Feed; RSS; Poster; Thunderbird; Lesen; Schreiben Keywords[fr]=Mails;Mels;E-Mails;Emails;Courriels;Courriers;Newsgroup;Feed;RSS;Poster;Thunderbird;Lire;Écrire Exec=thunderbird %u Terminal=false X-MultipleArgs=false Type=Application Icon=$PREFIX/lib/thunderbird/chrome/icons/default/default128.png Categories=Application;Network;Email; MimeType=x-scheme-handler/mailto;application/x-xpinstall; StartupNotify=true Actions=Compose;Contacts;Manage_Profiles; [Desktop Action Compose] Name=Compose New Message Name[de]=Neue E-Mail verfassen Name[fr]=Rédiger un nouveau courriel Exec=thunderbird -compose [Desktop Action Contacts] Name=Contacts Name[de]=Adressbuch Name[fr]=Carnet d adresses Exec=thunderbird -addressbook [Desktop Action Manage_Profiles] Name=Manage profiles Name[de]=Profile verwalten Name[fr]=Gérer les profils Exec=thunderbird -p" | sudo tee $PREFIX/share/applications/thunderbird.desktop > /dev/null && \ [ -f $PREFIX/share/applications/thunderbird.desktop ] && \ echo "Thunderbird launcher created." && \ #------------------------------------------------------------------------------- # Thunderbird-updater for systemd use. #------------------------------------------------------------------------------- printf "\n \033[45m\033[1;36m==> Make Thunderbird Updater. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ echo '#!/usr/bin/env bash #------------------------------------------------------------------------------- # Update Thunderbird when newer version available online. # Fetch version info from download.mozilla.org. #------------------------------------------------------------------------------- USER_NAME='$USER_NAME' && \ USER_UID='$USER_UID' && \ OS=linux64 && \ LANGUAGE=de && \ PREFIX=/usr && \ THUNDERBIRD_LATEST_RELEASE=$(curl -H '\''Cache-Control: no-cache'\'' -s -i -k --max-time 2 --write-out '\''%{http_code} %{size_header} %{redirect_url} '\'' \ "https://download.mozilla.org/?product=thunderbird-latest&os=$OS&lang=$LANGUAGE" | \ grep location | sed '\''s/.*thunderbird-//g;s/.tar.xz//g;s/^[[:space:]]*//g;s/[[:space:]]*$//g'\'' | xargs) && \ MY_THUNDERBIRD_VERSION=$(thunderbird -v | awk '\''{ print $3 }'\'' 2>/dev/null) && \ [ $THUNDERBIRD_LATEST_RELEASE = $MY_THUNDERBIRD_VERSION ] 2>/dev/null && \ sudo -u $USER_NAME DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$USER_UID/bus $PREFIX/bin/notify-send -i $PREFIX/lib/thunderbird/chrome/icons/default/default128.png "$($PREFIX/lib/thunderbird/thunderbird -v) is up to date." && exit || \ sudo -u $USER_NAME DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$USER_UID/bus $PREFIX/bin/notify-send -i $PREFIX/lib/thunderbird/chrome/icons/default/default128.png "Thunderbird Update.... " && \ wget -O /tmp/thunderbird-latest-stable.tar.xz "https://download.mozilla.org/?product=thunderbird-latest&os=$OS&lang=$LANGUAGE" && \ sudo -u $USER_NAME DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$USER_UID/bus /usr/bin/notify-send -i $PREFIX/lib/thunderbird/chrome/icons/default/default128.png "Extract new Thunderbird Binary in Place.... " && \ rm -rf $PREFIX/lib/thunderbird && \ tar -xf /tmp/thunderbird-latest-stable.tar.xz -C $PREFIX/lib && \ rm -fv /tmp/thunderbird-latest-stable.tar.xz && \ ln -sf $PREFIX/lib/thunderbird/thunderbird $PREFIX/bin/thunderbird && \ sudo -u $USER_NAME DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$USER_UID/bus $PREFIX/bin/notify-send -i $PREFIX/lib/thunderbird/chrome/icons/default/default128.png "$($PREFIX/lib/thunderbird/thunderbird -v) update successful." || \ sudo -u $USER_NAME DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/$USER_UID/bus $PREFIX/bin/notify-send -i dialog-error "Update Thunderbird failed."' | \ sudo tee $PREFIX/bin/thunderbird-updater.sh > /dev/null && \ sudo chmod 755 $PREFIX/bin/thunderbird-updater.sh && \ [ -f $PREFIX/bin/thunderbird-updater.sh ] && \ echo "Thunderbird Updater created." && \ #------------------------------------------------------------------------------- # Thunderbird systemd timer and service units. #------------------------------------------------------------------------------- printf "\n \033[45m\033[1;36m==> Make thunderbird-updater systemd timer and service. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ echo '[Unit] Description=Thunderbird Updater on boot [Timer] OnStartupSec=310 OnUnitActiveSec=24h [Install] WantedBy=timers.target' | sudo tee /etc/systemd/system/thunderbird-updater.timer > /dev/null && \ [ -f /etc/systemd/system/thunderbird-updater.timer ] && \ echo "Systemd thunderbird-updater.timer created." && \ echo '[Unit] Description=Thunderbird Updater Requires=graphical.target [Service] Type=oneshot Environment=DISPLAY=:0 ExecStart='$PREFIX'/bin/thunderbird-updater.sh' | \ sudo tee /etc/systemd/system/thunderbird-updater.service > /dev/null && \ [ -f //etc/systemd/system/thunderbird-updater.service ] && \ echo "Systemd thunderbird-updater.service created." && \ sudo systemctl enable --quiet thunderbird-updater.timer && \ sudo systemctl enable --quiet thunderbird-updater.service && \ sudo systemctl daemon-reload > /dev/null && \ [ $XDG_SESSION_DESKTOP = KDE ] && \ echo "KDE Desktop found." && \ [ -f $PREFIX/bin/kbuildsycoca5 ] && kbuildsycoca5 --noincremental || echo "No kbuildsycoca5. Ok" && \ [ -f $PREFIX/bin/kbuildsycoca6 ] && kbuildsycoca6 --noincremental || echo "No kbuildsycoca6. Ok" && \ sudo update-desktop-database &> /dev/null && \ MY_THUNDERBIRD_VERSION=$(thunderbird -v | awk '{ print $3 }' 2>/dev/null) && \ printf "\n \033[45m\033[1;36m==> Install Thunderbird version $MY_THUNDERBIRD_VERSION - Language=$LANGUAGE successful. \033[0m\033[42m\033[1;36m ==> Done.\033[0m \n \n" || \ printf "\n \033[41m\033[1;36m==> Install Thunderbird failed.\033[0m \n \n") #------------------------------------------------------------------------------- # If needed, Thunderbird deinstall. #------------------------------------------------------------------------------- printf "\n \033[43m\033[1;36m==> Thunderbird REMOVE? \033[0m\033[41m\033[1;36m ==> ? \033[0m \n" && \ echo "" && \ echo "Only if you realy like to remove Thunderbird, type ==> Yes <== for confirmation." && \ read -e -p " [y/N] " YN [[ $YN == "Yes" ]] && \ (sudo rm -rfv $PREFIX/lib/thunderbird && \ sudo rm -fv $PREFIX/share/applications/thunderbird.desktop && \ sudo update-alternatives --quiet --remove "thunderbird" "$PREFIX/lib/thunderbird/thunderbird" && \ sudo rm -fv $PREFIX/bin/thunderbird-updater.sh && \ sudo rm -fv /etc/systemd/system/thunderbird-updater.timer && \ sudo rm -fv /etc/systemd/system/thunderbird-updater.service && \ sudo find /etc/systemd/system/timers.target.wants -xtype l -print -delete && \ sudo systemctl daemon-reload && \ printf "\n \033[45m\033[1;36m==> Thunderbird removed. \033[0m\033[42m\033[1;36m ==> Done.\033[0m \n \n" || \ echo "" && \ [ -d $PREFIX/lib/thunderbird ] && \ echo "Not removed.") |
Das Skript lädt den jeweils aktuellen Thunderbird-Stable für Linux (zur Zeit 146.0.1) runter,
es installiert den Thunderbird nach
$PREFIX/lib/thunderbird,nutzt das Alternativen-System, um Thunderbird dem System zu Verfügung zu stellen,
installiert das Systemd Timer Unit
/etc/systemd/system/thunderbird-updater.timer,und das Systemd Service Unit
/etc/systemd/system/thunderbird-updater.service,das Thunderbird Updater Skript
$PREFIX/bin/thunderbird-updater.sh,und reloaded den Systemd Daemon.
Fortan wird nach jedem booten auf eine neue Thunderbird Version geprüft, und bei weiter laufendem System alle 24 Stunden.
Das Skript thunderbird-mozilla-binary-install-helper.sh bietet auch die Deinstallation an.
Vor Nutzung des Skripts aber eine Sicherung machen, die Thunderbird Profile in denen sich E-Mails befinden unterscheiden sich je nach Intallationsart, siehe im Wiki:
Vor 13 Jahren wurde um Support für die XDG Base Directory Specification gebeten. Die neusten Thunderbird Versionen werden das wohl irgendwann können. Bei ganz frischen Installationen kann das Thunderbird Profil dann also dort zu finden sein, wo es über XDG spezifiert wurde.
Der Ort, wo ein bereits installierter Thunderbird sein Profil hat, lässt sich über das Thunderbird Menü (das "Hamburger Menü", rechts oben) anzeigen, unter "Hilfe" → "Informationen zu Fehlerbehebung". Im sich öffnenden Thunderbird Tab dann nach "Profilverzeichnis" Auschau halten. Rechts daneben gibt es einen Knopf, der das Profilverzeichnis dann auch im Dateimanager (wie zum Beispiel bei KDE mit dem Dolphin Dateimanager) öffnet.
Der vom thunderbird-mozilla-binary-install-helper.sh Skript erstellte Thunderbird Startknopf ($PREFIX/share/applications/thunderbird.desktop) kann auch per Rechtsklick die Thunderbird-Profilverwaltung öffnen.
Thunderbird Release Notes lassen sich hier nachlesen:
Eine weitere gute Quelle für Informationen rund um Thunderbird (und Firefox) gibt es dort:
Ein Fourm, in dem es um Themen rund um Thunderbird geht, gibt es dort:
Um das Skript thunderbird-mozilla-binary-install-helper.sh zu nutzen, muss es erst einmal gepeichert werden, im Terminal:
nano thunderbird-mozilla-binary-install-helper.sh
Dann das Skript von weiter oben in diesem Posting per copy & paste einfügen. Im Nano speichern Strg + O , und Nano schließen Strg + X . Dann ausführbar machen:
chmod 755 thunderbird-mozilla-binary-install-helper.sh
Skript ausführen:
./thunderbird-mozilla-binary-install-helper.sh
Es erfolgt eine Abfrage, ob man installieren will, die mit "Yes" (ohne die Anführungstriche) bestätigt werden muss, wenn man Thunderbird installieren möchte.
Will man nur einen mit diesem Skrpt zuvor installierten Thunderbird entfernen, dann einfach Enter ⏎ drücken, anschließend kommt die Abfrage, ob man Thunderbird entfernen möchte. Auch das muss mit "Yes" (ohne die Anführungstriche) bestätigt werden, falls man wirklich Thunderbird entfernen will, andernfalls einfach Enter ⏎ drücken, dann bleibt der mit dem Skript installiert Thunderbird erhalten.
Das Skript thunderbird-mozilla-binary-install-helper.sh testet ob es auf Ubuntu Noble Numbat, Plucky Puffin oder Questing Quokka läuft. Das lässt sich aber auch überstimmen. Möglicherweise funktoniert es auch auf Debian oder Linux Mint. Ich habe es aber nicht ausprobiert, ich habe auch weder eine Debian, noch eine Linux Mint Installation.