linux app icon

Verschiedenes zu Qt
Antworten
PiCiJi
Beiträge: 9
Registriert: 30. Juli 2009 19:53

linux app icon

Beitrag von PiCiJi »

Ich versuche mein app ico in Linux anzuzeigen, jedoch ohne Erfolg. In Windows und Mac geht das problemlos mit setwindowicon. Ich meine jetzt aber nicht das Programm icon im file explorer, sondern bei ubuntu das icon in der linken Leiste. Dort erscheint bei mir nur ein Fragezeichen. Kann mir da jemand weiterhelfen?
-=Freaky=-
Beiträge: 503
Registriert: 29. Dezember 2006 22:54
Wohnort: HL

Re: linux app icon

Beitrag von -=Freaky=- »

hast du ein desktop file fuer deine anwendung angelegt? das ist der uebliche weg unter linux, d.h. das icon wird nicht einfach als resource in die datei gelegt.
(http://linuxcritic.wordpress.com/2010/0 ... ktop-file/)
PiCiJi
Beiträge: 9
Registriert: 30. Juli 2009 19:53

Re: linux app icon

Beitrag von PiCiJi »

ja ich habe über das desktop file gelesen. Es wurde erwähnt das der Ablauf von Linux Distribution zur nächsten geringfügig anders ist. Ist ja ein ziemlicher Aufwand. Geht das dann nur über einen installer oder läßt sich das aus der Programmierung heraus tun? Ich hatte da neulich eine ausführbare Datei, welches ein launcher icon angezeigt hat aber kein desktop file abgelegt hat. Wie funktioniert das?
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Re: linux app icon

Beitrag von RHBaum »

2 Dinge:

Linux != Linux ^^ zumindest was den Desktop angeht.
Fuers anzeigen von Icons ist der "Desktop" zustaendig ...
Der wiederum ist eine Sammlung aus diversen Tools ... Windows-Manager's und co.
weiterhin mixxen die Distributoren da noch scripte rein, die das verhalten durchaus ändern können ...

Also es kann sein, das sich nen Suse komplett anders verhält wie nen Ubuntu z.b.

Wie Freaky angedeutet, gibt es keine Möglichkeit unter Linux, Icons als ressourcen einzubinden und automatisch anzeigen zu lassen.
Das heisst dein Icon wird irgendwie immer ueber den Installer angegeben, sonst bekommst das Fragezeichen ...
Bzw hab ich auch mal einen Mechanismus gesehen, wenn du ein Binary aufn desktop gezogen hasst, und es im Icon Verzeichniss eine Datei mit den Selben Namen + Endung .ico gegeben hat, hat er automatisch das item verwendet fuer den "link".
Wobei link irgend eine Beschreibungsdatei fuer nen Starter meist war -> .desktop

Also Standard ist, fuer deine Anwendung ein .desktop file zu erstellen ....
Fuer die Desktop files gibts auch ein "Standard-Verzeichniss", da werden auch alle ! reingespult. /usr/share irgendwo ... meistens.
Wenn Du als User eine Verknupfung dann aufm Desktop sehen willst, wird das .desktop file meist nach ~/.Desktop/ kopiert.
Menus greifen meist auf ne eigene verzeichnis Struktur zu wo in Unterverzeichnissen (Menues) auch nur diese .desktop Files liegen ...

Deine Desktop datei musst/Solltest du also beim installieren auf dem Rechner erzeugen ...
Installieren kann in dem Falle ein packet des Verwendeten Packetmanagers sein (.rpm . deb) oder auch nen Makescript, wenns aus den sourcen gebaut wird.
Die Verzeichnisse wo die .desktop files bei der Installation abgelegt werden sollen (Kategorisiert ... ) ist auch "quasi" standardsisiert mittlerweile. (früher wars das nicht)

Das ist halt die Crux beim Programmieren unter Linux. Es gibt nicht ein linux sondern zig Varianten, und alle haben Ihre besonderheiten ...
Und wenn due generisch sein willst, musst du alle beachten ^^
Für grosse Standard-Packete machen das Die Distributoren, fuer kleine Projecte oder wenn den Suorce-Code nicht rausruecken willst, bist am A.... und musst alles selber machen/beruecksichtigen ^^

Ciao ...
chom
Beiträge: 24
Registriert: 13. Januar 2012 20:02

Re: linux app icon

Beitrag von chom »

Hä es geht doch gar nicht um die .desktop Datei (übrigens die Ubuntu geht auch unter SUSE).
Er hat doch geschrieben es geht um das Icon oben links im Fenster.
Und das geht bei mir auch unter allen getesteten Linux Distros und unter Ubuntu (aus meiner Sicht nicht linux ;))
Aber ich benutze immer png Dateien (ist auch der Standard für desktop-Dateien):

Code: Alles auswählen

    this->setWindowIcon(QPixmap("gyd.png"));
Herzogswalder
Beiträge: 79
Registriert: 11. Oktober 2009 00:37
Wohnort: Dresden

Re: linux app icon

Beitrag von Herzogswalder »

Nein, er meint das Icon in der Leiste am linken Desktop-Rand, und dazu muss eine .desktop-Datei existieren.
Gruß, Herzogswalder
Qt 4.8, OS X Mountain Lion
Antworten