Apt, Abhängigkeiten und Metapakete
Apt, Abhängigkeiten und Metapakete
Ich habe mal eine Frage zum Verhalten von Apt im Bezug auf Metapakete.
Wenn ich ein Metapaket installiere (z.b. Gnome), zieht es eine ganze Menge Abhängigkeiten mit sich und installiert diese.
Wenn ich nun das Metapaket wieder entferne, bleiben die Abhängigkeiten auf dem System, da sie vom Metapaket als manuell installiert markiert wurden.
Ein ähnlicher Fall ergibt sich bei Paketen die eine Abhängigkeit in der Form (A|B) haben. Sagen wir, Paket Foo hängt von A oder B (A|B) ab. Paket Bar hängt von B ab. Ist Foo und A installiert, und ich installiere Bar nach, ziet es als Abhängigkeit B mit sich. Wenn ich nun Bar wieder entferne, bleibt B auf dem System, weil es als Abhängigkeit von Foo deklariert wurde.
Beide Vorgänge machen es häufig schwierig, installierte Pakete und ihre Abhängigkeiten wieder restlos zu entfernen.
Warum verhält sich Apt so? Ist das eine fehlende Funktionalität (anscheinend haben Arch's Pacman und Fedora's yum diese Probleme nicht) oder steckt da ein Gedanke dahinter, der sich mir nicht erschließt?
Wenn ich ein Metapaket installiere (z.b. Gnome), zieht es eine ganze Menge Abhängigkeiten mit sich und installiert diese.
Wenn ich nun das Metapaket wieder entferne, bleiben die Abhängigkeiten auf dem System, da sie vom Metapaket als manuell installiert markiert wurden.
Ein ähnlicher Fall ergibt sich bei Paketen die eine Abhängigkeit in der Form (A|B) haben. Sagen wir, Paket Foo hängt von A oder B (A|B) ab. Paket Bar hängt von B ab. Ist Foo und A installiert, und ich installiere Bar nach, ziet es als Abhängigkeit B mit sich. Wenn ich nun Bar wieder entferne, bleibt B auf dem System, weil es als Abhängigkeit von Foo deklariert wurde.
Beide Vorgänge machen es häufig schwierig, installierte Pakete und ihre Abhängigkeiten wieder restlos zu entfernen.
Warum verhält sich Apt so? Ist das eine fehlende Funktionalität (anscheinend haben Arch's Pacman und Fedora's yum diese Probleme nicht) oder steckt da ein Gedanke dahinter, der sich mir nicht erschließt?
Re: Apt, Abhängigkeiten und Metapakete
Nein, als Abhängigkeit installierte Pakete werden als "automatisch installiert" markiert und können daher größtenteils per autoremove wieder entfernt werden.superkret hat geschrieben:[…]
Wenn ich ein Metapaket installiere (z.b. Gnome), zieht es eine ganze Menge Abhängigkeiten mit sich und installiert diese.
Wenn ich nun das Metapaket wieder entferne, bleiben die Abhängigkeiten auf dem System, da sie vom Metapaket als manuell installiert markiert wurden.[…]
Eine von den Ausnahmen hast du selbst genannt:
Dagegen gibt's imho kein Mittel. Ähnliches passiert auch mit empfohlenen Paketen, die autoremove nicht erfasst.superkret hat geschrieben:[…]
Ein ähnlicher Fall ergibt sich bei Paketen die eine Abhängigkeit in der Form (A|B) haben. Sagen wir, Paket Foo hängt von A oder B (A|B) ab. Paket Bar hängt von B ab. Ist Foo und A installiert, und ich installiere Bar nach, ziet es als Abhängigkeit B mit sich. Wenn ich nun Bar wieder entferne, bleibt B auf dem System, weil es als Abhängigkeit von Foo deklariert wurde.
[…]
Teilweise kann man unnotwendige Pakete mit deborphan und dessen GUI gtkorphan finden. Vor allem für den Fall verbliebener empfohlener Pakete habe ich mir einmal ein kleines Skript ausgedacht, das allerdings allzu fehlbar ist...
Soviel ich weiß sind yum und pacman viel jünger als apt und werden mit einigen Situationen, die bei apt öfter vorkommen, nie konfrontiert.superkret hat geschrieben:[…]
Warum verhält sich Apt so? Ist das eine fehlende Funktionalität (anscheinend haben Arch's Pacman und Fedora's yum diese Probleme nicht) oder steckt da ein Gedanke dahinter, der sich mir nicht erschließt?
Damit meine ich zB, dass die Pakete in arch nicht so fein aufgedröselt sind wie in debian. In arch führt die Installation vieler Audio- und Multimediapakete/-anwendungen zur Installation von jackd, bei Debian wird nur die Client-Bibliothek installiert, die es noch dazu in zwei Ausführungen gibt (libjack-jackd2-0 und libjack0).
Ich finde es schon richtig wie sich apt verhält und man kann dank der Logs und Ausgaben auch nachvollziehen welche Pakete wann und wieso installiert wurden und daher, wenn man Wert darauf legt, sie auch wieder entfernen, wenn sie überflüssig werden.
Außerdem stören viele Pakete nicht weiter, da sie einfach nur etwas Platz auf dem Dateisystem wegnehmen, wenn sie nicht verwendet werden.
Re: Apt, Abhängigkeiten und Metapakete
Na ja, smutbert im Prinzip bin ich deiner Meinung, aber irgendwie sollten diese Metapakete dem User auch als solche besser deutlich gemacht werden. Mitunter steht man da bei autoremove auf dem Schlauch und rätselt über den Vorschlag.
deborphan (ein Segen!) befasst sich, soweit ich weiß, nur mit libs.
Grüße, Günther
deborphan (ein Segen!) befasst sich, soweit ich weiß, nur mit libs.
Grüße, Günther
Re: Apt, Abhängigkeiten und Metapakete
deborphan „behandelt“ auf Wunsch (Option -a soweit ich mich erinnere) alle Pakete.
Re: Apt, Abhängigkeiten und Metapakete
Leider scheint das - zumindest bei Stretch - nicht zu klappen.
hab das gerade durchexerziert (siehe Punkt 2)
viewtopic.php?f=2&t=162034#p1102788
nach
ertfernte kein einziges weiteres Paket
noch ne Anmerkung, die mir erst jetzt auffällt
bei der NoPaste 39472 hab ich eine Zeile vergessen reinzukopieren, die sich aber aus dem weiteren ergibt (nach Zeile 10) :
hab das gerade durchexerziert (siehe Punkt 2)
viewtopic.php?f=2&t=162034#p1102788
nach
Code: Alles auswählen
apt remove task-lxde-desktop
Code: Alles auswählen
apt autoremove
noch ne Anmerkung, die mir erst jetzt auffällt
bei der NoPaste 39472 hab ich eine Zeile vergessen reinzukopieren, die sich aber aus dem weiteren ergibt (nach Zeile 10) :
Code: Alles auswählen
apt purge lxde lxde-common openbox obconf
Re: Apt, Abhängigkeiten und Metapakete
Du könntest ausprobieren, ob du vielleicht mit dem von dem von Smutbert vorgeschlagenen [1] [2] deborphan mehr Erfolg hast. Siehe auch [3] [4].
[1] viewtopic.php?f=27&t=162083#p1103187
[2] viewtopic.php?f=27&t=162083#p1103198
[3] http://debiananwenderhandbuch.de/deborphan.html
[4] http://debiananwenderhandbuch.de/debfoster.html
[1] viewtopic.php?f=27&t=162083#p1103187
[2] viewtopic.php?f=27&t=162083#p1103198
[3] http://debiananwenderhandbuch.de/deborphan.html
[4] http://debiananwenderhandbuch.de/debfoster.html
Re: Apt, Abhängigkeiten und Metapakete
Im Prinzip ja, so weit ich weiß aber bei Metapaketen eben nicht. Weil es keine "richtigen" Pakete sind, sondern nur eine Art Platzhalter für alles das enthalten ist. Wenn man Apt sagt, "installiere Gnome" ist das dasselbe wie wenn man sagt, "installiere alle Pakete die in Gnome enthalten sind". Also wird der Inhalt auf manuell installiert gesetzt.smutbert hat geschrieben:Nein, als Abhängigkeit installierte Pakete werden als "automatisch installiert" markiert und können daher größtenteils per autoremove wieder entfernt werden.superkret hat geschrieben:[…]
Wenn ich ein Metapaket installiere (z.b. Gnome), zieht es eine ganze Menge Abhängigkeiten mit sich und installiert diese.
Wenn ich nun das Metapaket wieder entferne, bleiben die Abhängigkeiten auf dem System, da sie vom Metapaket als manuell installiert markiert wurden.[…]
Das kannte ich noch nicht. Klingt nach etwas das ich brauchen kann.Es gibt auch noch debfoster.
Edit: Schreibfehler. Ich meinte, Task-Pakete setzen alles was sie enthalten auf manuell installiert, andere Metapakete nicht.
Zuletzt geändert von superkret am 01.09.2016 01:43:25, insgesamt 1-mal geändert.
Re: Apt, Abhängigkeiten und Metapakete
Nein, wird er nicht.superkret hat geschrieben:Also wird der Inhalt auf manuell installiert gesetzt.
Metapakete enthalten Abhängigkeiten. Wenn du das Metapaket gnome-desktop installierst, zieht es halt alle Pakete, die dazugehören als Abhängigkeiten hinterher. Und Abhängigkeiten werden automatisch installiert. Das ist ja der Vorteil von apt, dass man eben nicht alle Abhängigkeiten manuell installieren muss.
https://wiki.ubuntuusers.de/Metapakete/
Re: Apt, Abhängigkeiten und Metapakete
Also ich bin mir so sicher, wie man sich nur sicher sein kann, dass durch Abhängigkeiten mitinstallierte Pakete als automatisch installiert markiert werden, unabhängig davon, ob es sich nun um normale Pakete oder Metapakete handelt. Der einzige Unterschied zwischen normalen Paketen und Metapaketen ist ohnehin der, dass Metapakete selbst fast keine Dateien im System installieren - im Grunde sind es ganz normale Pakete.
Allerdings kann das schon auch schief gehen, so hatte ich beispielsweise mit synaptic ein paar unangenehme Erfahrungen, weil das viele Pakete als manuell installiert markiert hat und wenn ich mich recht erinnere hatte ich ähnliche Erfahrungen mit packagekit (zB gnome-packagekit oder apper).
Ich weiß aber auch (noch? ) nicht was bei dir bei dem Beispiel mit lxde schief gegangen ist.
Allerdings kann das schon auch schief gehen, so hatte ich beispielsweise mit synaptic ein paar unangenehme Erfahrungen, weil das viele Pakete als manuell installiert markiert hat und wenn ich mich recht erinnere hatte ich ähnliche Erfahrungen mit packagekit (zB gnome-packagekit oder apper).
Ich weiß aber auch (noch? ) nicht was bei dir bei dem Beispiel mit lxde schief gegangen ist.
Re: Apt, Abhängigkeiten und Metapakete
Klar werden die automatisch installiert.
Denk an das Problem, wenn man z.B. den gnome-desktop installiert und apt ihn dann per autoremove nahezu komplett wieder entfernen will, wenn man ein einzelnes Paket daraus deinstalliert. Das ist eine bekannte Situation.
Das passiert genau deshalb, weil die Pakete aus dem Metapaket als "automatisch installiert" markiert werden. Setzt man sie von Hand auf "manuell" will apt sie auch nicht mehr entfernen.
Häufiges Thema hier im Forum.
Denk an das Problem, wenn man z.B. den gnome-desktop installiert und apt ihn dann per autoremove nahezu komplett wieder entfernen will, wenn man ein einzelnes Paket daraus deinstalliert. Das ist eine bekannte Situation.
Das passiert genau deshalb, weil die Pakete aus dem Metapaket als "automatisch installiert" markiert werden. Setzt man sie von Hand auf "manuell" will apt sie auch nicht mehr entfernen.
Häufiges Thema hier im Forum.
Re: Apt, Abhängigkeiten und Metapakete
Sag ich ja ☺
Ich hab jetzt kurz geier22 mit dem TE verwechselt, aber ich versteh nun auch nicht ganz was in geiers lxde-Beispiel nicht funktioniert haben soll. Wenn es um die übriggebliebenen Konfigurationsdateien geht - die wird man auf Anhieb mit
los.
Ich hab jetzt kurz geier22 mit dem TE verwechselt, aber ich versteh nun auch nicht ganz was in geiers lxde-Beispiel nicht funktioniert haben soll. Wenn es um die übriggebliebenen Konfigurationsdateien geht - die wird man auf Anhieb mit
Code: Alles auswählen
# apt-get --purge autoremove
Re: Apt, Abhängigkeiten und Metapakete
Es ging ganz einfach darum, daß eine Oberfläche, die während der Installation mit task-xxx installiert wurde sichsmutbert hat geschrieben:aber ich versteh nun auch nicht ganz was in geiers lxde-Beispiel nicht funktioniert haben soll.
eben nicht dadurch entfernen läßt, das man den task deinstalliert . Lediglich der Task - im Beispiel task-lxde-desktop - wird entfernt in kein einzige noch so kleines Paket dazu. apt autoremove entfernt auch nichts weiter.
Wenn man einen Task installiert, werden die meisten Pakete eben doch auf "manuell" gesetzt offensichtlich sowohl während der Installation als auch während des "Betriebs"smutbert hat geschrieben:Nein, als Abhängigkeit installierte Pakete werden als "automatisch installiert" markiert und können daher größtenteils per autoremove wieder entfernt werden.
39478
Das Beispiel ist aus dem oben genannte Thread
:
LXDE mit Netinst installiert
task-xfce-desktop nachinstalliert
Lxde entfernt, wie im Thread beschrieben
Zuletzt geändert von geier22 am 31.08.2016 20:21:18, insgesamt 1-mal geändert.
Re: Apt, Abhängigkeiten und Metapakete
Metapakete an sich setzen tatsächlich nicht alle installierten Pakete auf Manuell. Das hab ich jetzt auch nochmal nachgeprüft.
Tasks aber anscheinend schon.
Tasks aber anscheinend schon.
Re: Apt, Abhängigkeiten und Metapakete
Verschrieben ?superkret hat geschrieben:Metapakete an sich setzen tatsächlich nicht alle installierten Pakete auf Manuell.
Aus meiner Sicht müßte es heißen:
Metapakete an sich setzen tatsächlich nicht alle installierten (oder zumindest die meisten) Pakete auf Manuell
.......zumindest, wenn man von einem Task spricht, der ja zweifellos ein Metapaket ist
Re: Apt, Abhängigkeiten und Metapakete
Tatsächlich
Habe gerade task-lxde-desktop installiert, die hereingezogenen Pakete waren hinterher manuell installiert. Mir ist das bis jetzt wohl noch nicht aufgefallen, weil ich die task-… Pakete nie verwendet habe, aber mir ist bisher weder klar woher dieser Unterschied zu den Abhängigkeiten anderer Pakete kommt, noch wieso dieses Verhalten (von den Debian-Entwicklern) gewünscht sein könnte.
Habe gerade task-lxde-desktop installiert, die hereingezogenen Pakete waren hinterher manuell installiert. Mir ist das bis jetzt wohl noch nicht aufgefallen, weil ich die task-… Pakete nie verwendet habe, aber mir ist bisher weder klar woher dieser Unterschied zu den Abhängigkeiten anderer Pakete kommt, noch wieso dieses Verhalten (von den Debian-Entwicklern) gewünscht sein könnte.
Re: Apt, Abhängigkeiten und Metapakete
Mein unqualifizierter Tipp: weil’s so nicht zu den ganzen „Hilfe, apt* will mein halbes System deinstallieren!!k“-Threads/Mails kommt, die das „gewohnte“ Verhalten provoziert …[…] noch wieso dieses Verhalten (von den Debian-Entwicklern) gewünscht sein könnte.
[scnr]
Re: Apt, Abhängigkeiten und Metapakete
An sich finde ich das gar nicht so schlecht. Man könnte es als eine art "Selbstschutz" betrachten. Da man um eine Oberfläche zu deinstallieren eben ganz bewußt die "Core"-Pakete entfernen muß.
Hab mich allerdings gewundert das selbst apt als manuell markiert ist, da ich das natürlich noch nie explizit installiert habe
erklärt sich - dieser Logik folgend aber aus den Anderen Abhängigkeiten
der Logik folgend würde das Entfernen von tasksel nämlich sonst apt entfernen --> System geschrottet
task-desktop installiere ich z.B. bei jeder Installation mit
Hab mich allerdings gewundert das selbst apt als manuell markiert ist, da ich das natürlich noch nie explizit installiert habe
erklärt sich - dieser Logik folgend aber aus den Anderen Abhängigkeiten
der Logik folgend würde das Entfernen von tasksel nämlich sonst apt entfernen --> System geschrottet
Code: Alles auswählen
# apt remove tasksel
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
bluetooth bluez-cups gir1.2-polkit-1.0 libwildmidi1 powertop python-gobject
Verwenden Sie »apt autoremove«, um sie zu entfernen.
Die folgenden Pakete werden ENTFERNT:
task-desktop task-english task-laptop tasksel tasksel-data
0 aktualisiert, 0 neu installiert, 5 zu entfernen und 0 nicht aktualisiert.
Nach dieser Operation werden 620 kB Plattenplatz freigegeben.
Möchten Sie fortfahren? [J/n] n
Abbruch.
Code: Alles auswählen
~$ apt-cache depends task-xfce-desktop
task-xfce-desktop
Hängt ab von: tasksel
Hängt ab von: task-desktop
Hängt ab von: xfce4
Hängt ab von: lightdm
Hängt ab von: light-locker
Empfiehlt: xfce4-goodies
Empfiehlt: xfce4-power-manager
Empfiehlt: <xfce4-mixer>
Empfiehlt: xfce4-terminal
Empfiehlt: mousepad
Empfiehlt: orage
Empfiehlt: libreoffice-gtk
libreoffice-gtk2
Empfiehlt: dbus-x11
dbus-x11:i386
Empfiehlt: xsane
Empfiehlt: vlc
Empfiehlt: quodlibet
|Empfiehlt: evince-gtk
Empfiehlt: evince
Empfiehlt: tango-icon-theme
Empfiehlt: network-manager-gnome
Empfiehlt: synaptic
|Empfiehlt: firefox-esr
Empfiehlt: firefox
Empfiehlt: libreoffice
Empfiehlt: libreoffice-help-en-us
Empfiehlt: mythes-en-us
Empfiehlt: hunspell-en-us
Empfiehlt: hyphen-en-us
Empfiehlt: system-config-printer
Empfiehlt: gnome-orca
~$ apt-cache depends tasksel
tasksel
|Hängt ab von (vorher): debconf
Hängt ab von (vorher): cdebconf
|Hängt ab von: debconf
Hängt ab von: <debconf-2.0>
cdebconf
debconf
Hängt ab von: liblocale-gettext-perl
Hängt ab von: apt
Hängt ab von: tasksel-data
Hängt ab von: perl-base
Kollidiert mit: <base-config>
Kollidiert mit: debconf
:~$ apt-cache depends task-desktop
task-desktop
Hängt ab von: tasksel
Hängt ab von: xorg
Hängt ab von: xserver-xorg-video-all
Hängt ab von: xserver-xorg-input-all
Hängt ab von: desktop-base
|Empfiehlt: task-gnome-desktop
|Empfiehlt: task-xfce-desktop
|Empfiehlt: task-kde-desktop
|Empfiehlt: task-lxde-desktop
|Empfiehlt: task-cinnamon-desktop
Empfiehlt: task-mate-desktop
Empfiehlt: xdg-utils
Empfiehlt: avahi-daemon
avahi-daemon:i386
Empfiehlt: libnss-mdns
Empfiehlt: anacron
systemd-cron
Empfiehlt: eject
eject:i386
Empfiehlt: iw
iw:i386
Empfiehlt: alsa-utils
alsa-utils:i386
- KBDCALLS
- Moderator
- Beiträge: 22455
- Registriert: 24.12.2003 21:26:55
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Dortmund
-
Kontaktdaten:
Re: Apt, Abhängigkeiten und Metapakete
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
Kaum macht man ein Fenster auf, gehen die Probleme los.
EDV ist die Abkürzung für: Ende der Vernunft
Bevor du einen Beitrag postest:
- Kennst du unsere Verhaltensregeln
- Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.
Re: Apt, Abhängigkeiten und Metapakete
hmmmmmmm
Da gibt es offensichtlich Begrifflichen Klärungsbedarf
Was versteht Debian unter einem Task und was unter einem Meta-Paket ?
Auf meinem Produktiv System sieht das so aus:
Ist das nun das Gleiche oder sind da Unterschiede in der Art und Weise der Installation.
gibt einen endlos lange Liste 39479
ergibt das :39480
Bis auf die Tatsachen, daß das hauptsächlich Sprachpakete sind, aber auch einiges andere beinhaltet kann ich den Unterschied,, wie schon gesagt, nicht sehen
Da gibt es offensichtlich Begrifflichen Klärungsbedarf
Was versteht Debian unter einem Task und was unter einem Meta-Paket ?
Auf meinem Produktiv System sieht das so aus:
Code: Alles auswählen
wajig> list task
ii libgcr-3-common 3.20.0-2 all Library for Crypto UI related tasks - commo
ii libgcr-base-3-1:amd 3.20.0-2 amd64 Library for Crypto related tasks
ii libgcr-ui-3-1:amd64 3.20.0-2 amd64 Library for Crypto UI related tasks
ii libmono-tasklets4.0 4.2.1.102+dfsg all Mono Tasklets library (for CLI 4.0)
ii libmono-xbuild-task 4.2.1.102+dfsg all Mono Mono.XBuild.Tasks library (for CLI 4.0
ii task-desktop 3.35 all Debian desktop environment
ii task-english 3.35 all General English environment
ii task-laptop 3.35 all laptop
ii tasksel 3.35 all tool for selecting tasks for installation o
ii tasksel-data 3.35 all official tasks used for installation of Deb
ii xfce4-taskmanager 1.1.0-1 amd64 process manager for the Xfce4 Desktop Envir
un libmono-tasklets2.0 <keine> <keine> (keine Beschreibung vorhanden)
un libmono-xbuild-task <keine> <keine> (keine Beschreibung vorhanden)
un task-cinnamon-deskt <keine> <keine> (keine Beschreibung vorhanden)
un task-gnome-desktop <keine> <keine> (keine Beschreibung vorhanden)
un task-kde-desktop <keine> <keine> (keine Beschreibung vorhanden)
un task-lxde-desktop <keine> <keine> (keine Beschreibung vorhanden)
un task-mate-desktop <keine> <keine> (keine Beschreibung vorhanden)
un task-xfce-desktop <keine> <keine> (keine Beschreibung vorhanden)
wajig> list metapackage
ii exim4 4.87-3 all metapackage to ease Exim MTA (v4) installat
ii fonts-dejavu 2.37-1 all metapackage to pull in fonts-dejavu-core an
ii init 1.42 amd64 init metapackage
ii libmono-i18n4.0-all 4.2.1.102+dfsg all Mono I18N libraries metapackage (for CLI 4.
ii libreoffice 1:5.2.0-2 amd64 office productivity suite (metapackage)
ii nvidia-driver 352.79-10 amd64 NVIDIA metapackage
ii nvidia-driver-libs: 352.79-10 amd64 NVIDIA metapackage (OpenGL/GLX/EGL/GLES lib
ii nvidia-driver-libs- 352.79-10 i386 NVIDIA metapackage (OpenGL/GLX/EGL/GLES 32-
ii nvidia-driver-libs: 352.79-10 i386 NVIDIA metapackage (OpenGL/GLX/EGL/GLES lib
ii printer-driver-all 0.20140714 all printer drivers metapackage
ii python-pyside 1.2.2-2 all Python bindings for Qt4 (big metapackage)
ii xserver-xorg-input- 1:7.7+16 amd64 X.Org X server -- input driver metapackage
ii xserver-xorg-video- 1:7.7+16 amd64 X.Org X server -- output driver metapackage
wajig>
Code: Alles auswählen
apt-cache search metapackage >meta.txt
Code: Alles auswählen
apt-cache search task |grep task-
Bis auf die Tatsachen, daß das hauptsächlich Sprachpakete sind, aber auch einiges andere beinhaltet kann ich den Unterschied,, wie schon gesagt, nicht sehen