Ändern Sie das Symbol der Weinanwendung in Unity Launcher

21

Ich starte häufig ein Windows-Programm mit Wein. Wenn ich dieses Programm öffne, wird es im Unity Launcher als Wein anstatt als aktuell geöffnetes Programm angezeigt.

Ich habe einen Desktop-Launcher mit dem richtigen Symbol erstellt. Wenn Sie diesen auf den Unity-Launcher ziehen, wird das Symbol wieder auf das Weinglas-Symbol zurückgesetzt. Beim Starten der Anwendung wird sie als Wine Windows Program Loader anstelle des tatsächlichen Namens bezeichnet.

Bildschirmfoto:

Bildbeschreibung hier eingeben

Zorkerz
quelle

Antworten:

26

Problemumgehung für Ubuntu 12.04 LTS und höher


Hinweis

Diese Problemumgehung erfordert einen funktionierenden Launcher für Ihre Wine-Anwendung. Hier ist ein Tutorial, wie man eines erstellt . Die Problemumgehung gilt auch für Anwendungen, die mit PlayOnLinux-Skripten installiert wurden. Neuere Versionen von PlayOnLinux fügen die StartupWMClassZeile automatisch ihrem Launcher hinzu.

Anleitung

Öffnen Sie Ihren .desktopLauncher in Ihrem bevorzugten Texteditor und hängen Sie diese Zeile an die Datei an:

StartupWMClass=application.exe

Wo application.exeist der Basisname der ausführbaren Datei, die Sie in Wine starten möchten?

Verwenden Sie nicht den vollständigen Pfad, sondern nur den Basisnamen. Und stellen Sie sicher, dass keine Anführungszeichen gesetzt sind (eine allgemeine Regel, die Sie bei Desktop-Dateien beachten sollten).

Ergebnis

Anwendungssymbole und -beschreibungen sollten jetzt korrekt wiedergegeben werden:

Bildbeschreibung hier eingeben


Quelle: https://bugs.launchpad.net/unity-2d/+bug/702452

Glutanimate
quelle
Ich kann bestätigen, dass dies auch mit PlayOnLinux-Anwendungen unter Ubuntu 12.04
TIIUNDER
3
Ich sollte klarstellen, dass es sich nur um den Namen der ausführbaren Datei handeln sollte , nicht um den vollständigen Pfad, keine Anführungszeichen oder ähnliches.
Jonah
1
Ich kann bestätigen, dass dies mit Ubuntu 13.10 funktioniert hat. @Jonah Kannst du bitte deine Antwort bearbeiten und dieses kleine Detail hinzufügen, weil es wirklich wichtig ist :)
thelinuxer
1
@ thelinuxer Froh, dass dir die Antwort geholfen hat. Ich habe den Teil bearbeitet, auf den Jonah hingewiesen hat.
Glutanimate
3
Hier ist meine Variante für 14.04: Wenn sie verfügbar ist, wählen Sie im Installationsprogramm der App "Desktop-Verknüpfung erstellen". Verschieben Sie dann diese Verknüpfung nach / usr / share / applications und fügen Sie die Zeile StartupWMClass = XXX.exe hinzu (z. B. mit gksudo gedit XXX.desktop)
Dominic Comtois
7
  1. Hier finden Sie Ihre Symbole oder platzieren Sie Ihre benutzerdefinierten Symbole:

    $ cd ~/.local/share/icons/hicolor/256x256/apps/
    $ ls
    1DF1_PicasaPhotoViewer.0.png
    .
    .
    .
    29F5_WINWORD.0.png
    850A_EXCEL.0.png
    AA79_POWERPNT.0.png
    
  2. Wechseln Sie in das folgende Verzeichnis:

    $ cd ~/.local/share/applications/wine/Programs/Microsoft\ Office
    $ ls
    Microsoft Excel 2010.desktop\
    Microsoft Office 2010 Tools\
    Microsoft PowerPoint 2010.desktop\
    Microsoft Word 2010.desktop\
    
  3. Bearbeiten Sie .desktop-Dateien:

    $ sudo nano Microsoft\ Word\ 2010.desktop
    [Desktop Entry]
    Name=Microsoft Word 2010
    .
    .
    .
    Icon=29F5_WINWORD.0.png (or name of icon as in above folder)
    
  4. Du bist fertig!

Deepak
quelle
Haben Sie eine Idee, warum ich das vorhandene Word-Symbol im IconOrdner verwenden kann, aber nicht etwas, das ich selbst in diesen Ordner gestellt habe, um es in meiner .desktop-Datei zu verwenden?
Heisenberg
Keine Ursache. Es scheint, als müsste das Icon .png statt jpg sein?
Heisenberg
2

Zu diesem Problem gibt es mehrere gemeldete Fehler .

In einem der Fehler (nach 3) hat jemand eine mögliche Problemumgehung gemeldet. Jedoch zwei weitere Beiträge unter diesem Hinweis, dass es nicht immer funktioniert.

fossfreedom
quelle
1

Ich benutze Unity nicht, also weiß ich wirklich nicht, ob es funktionieren wird.

Ihr Problem könnte am Programmstarter liegen. Ich nehme an, Ihre .desktop- Datei enthält Exec=wine '/home/user/.wine/dosdevices/c:/Program...'und so weiter. Versuchen Sie, eine Bash-Binärdatei zu erstellen, die Folgendes enthält:

#!/bin/bash
cd '/home/aldomann/.wine/dosdevices/c:/Archivos de programa/Warcraft II BNE'
wine 'Warcraft II BNE.exe'

Nennen Sie es zum Beispiel warcraft2und verschieben Sie es in /usr/bin(oder in eine beliebige PATH-Variable, die Sie durch Eingabe echo $PATHim Terminal kennen).

Dann in deiner .desktop Datei anstatt zu Exec=wine '...'benutzen Exec=warcraft2. Ich denke, Unity wird davon ausgehen, dass dies kein Weinprogramm ist und wird Ihr Symbol verwenden, aber es ist nur eine Vermutung.

Hoffe, es funktioniert ;)

Standardmäßig werden Ihre Wine-Apps .desktopsauf platziert/home/user/.local/share/applications/wine

Anstatt eine vorhandene .desktopDatei zu ändern, können Sie eine neue erstellen und diese dort ablegen /home/user/.local/share/applications. Es sollte ungefähr so ​​aussehen:

[Desktop Entry]
Name=Application
Comment=Comment
Exec=app-binary
Icon=app-icon
Type=Application
Terminal=false
StartupNotify=true
Categories=GTK;Utility

Tipp: Wenn Sie Ihr Icon auf /home/user/.icons/(zB app-icon.png) platzieren, müssen Sie nur noch setzen Icon=app-icon.

Alfredo Hernández
quelle
Ich bin nicht sicher, wie ich die .desktop-Datei finden soll, um dies zu testen.
Zorkerz
Es sollte auf /home/user/.local/share/applications/wine sein
Alfredo Hernández
0

Ich habe ein Skript geschrieben, um dieses und andere Probleme mit MSO in Unity zu beheben. https://ubuntulogia.wordpress.com/2015/01/25/fix_mso_unity/ Es funktioniert für mich, aber alle Vorschläge sind willkommen. Wenn jemand es testet und Verbesserungen findet, teile es mir bitte mit. Um das Skript auszuführen, müssen Sie den Code in eine Textdatei kopieren (z. B. mit gedit) und speichern. Dann müssen Sie es mit "sh" ausführen. Wenn Sie die Datei beispielsweise in Ihrem Basisordner als "fixmso.sh" speichern, lautet der Befehl zum Ausführen des Skripts: sh fixmso.sh

Goghard
quelle
0

Das geht ganz einfach über die GUI mit einem Programm namens alacratz. Hier ist eine ziemlich einfache Anleitung. Im unteren Kapitel suchen Sie nach http://develop.alpdesigns.ch/pages/linux/add_exe_program_to_linux.html

John
quelle
Das einfache Posten eines Links ist nicht so hilfreich wie das Zusammenfassen der Schritte, die in dem Link enthalten sind. Wir möchten unsere Benutzer in der Lage sein , Probleme zu lösen , ohne mit heraus zu klicken.
-1

Verwenden Sie Alacarte (den alten Menüeditor, den Sie möglicherweise installieren müssen), um einen Menüeintrag im alten Stil mit einem Symbol und einer ausführbaren Datei zu erstellen, die Ihr Programm startet. Suchen Sie danach mit Alt + F2 und heften Sie es an den Launcher.

sup
quelle
-1

Sie können jedes installierte Programm in Ihrem Ubuntu einfach über "Hauptmenü" ändern (Paketname ist "alacarte"). Sie können es vom Software Center herunterladen, indem Sie "Hauptmenü" eingeben und dann:

Bildbeschreibung hier eingeben

  1. Führen Sie das Programm "Hauptmenü" aus.
  2. Suchen Sie im rechten Bereich "Menüs" Ihr Programm (in diesem Fall im Knoten "Wein") und wählen Sie es im Bereich "Elemente" aus.
  3. Klicken Sie auf die Schaltfläche Eigenschaften.
  4. Wählen Sie im angezeigten Dialogfeld das Symbol oben links aus.
  5. Schließlich durchsuchen Sie den Speicherort Ihres neuen Symbols in Ihrem Dateisystem.

Nachdem Sie die obigen Schritte ausgeführt haben, wird Ihr neues Symbol im Unity-Startbildschirm und -Panel angezeigt.

Viel Spaß.

Saeed Zarinfam
quelle
Saeed Ich glaube nicht, dass du die Frage wirklich verstehst. Sicher, es ist möglich, das Symbol eines beliebigen Programms zu ändern, wie Sie es beschrieben haben, aber der Punkt ist, dass Wine ein Wrapper für eine Reihe verschiedener Programme ist - daher muss das Symbol abhängig vom tatsächlich ausgeführten Programm geändert werden. Sie beschreiben eine Möglichkeit, das Wine-Symbol zu ändern - nicht das zugrunde liegende Programm.
Alacarte kann jedoch genau dafür verwendet werden (Sie müssen nur wine your_program in das ausführbare Feld einfügen).
sup
-1

Ich hatte das gleiche Problem und fand es heraus, weil ich die Verknüpfungsdateien (die PlayOnLinux auf dem Desktop ablegt) in einem separaten Ordner abgelegt habe. Ich nahm sie aus dem Ordner und legte sie auf den Desktop und es funktioniert gut (das Symbol wird angezeigt). Hoffe das hilft!

user2420837
quelle