Jak oznaczyć plik .desktop jako zaufany w Ubuntu 18.04?

16

W systemie Ubuntu 18.04, gdy użytkownik kliknie niestandardowy plik na pulpicie, program wyświetla komunikat, że aplikacja nie jest zaufana, a jej uruchomienie może być niebezpieczne. Pulpit również nie wyświetla poprawnej ikony pliku pulpitu.

Jak można oznaczyć, że aplikacja uruchamia plik pulpitu jako zaufany, aby komunikat nie był wyświetlany, a ikona wyświetla się również na pulpicie.

Próbowałem użyć

chmod +x *.desktop

jak sugerowano w niektórych zapytaniach, ale wydaje się, że nie działa to w 18.04.

arun nath
źródło
Ja też mam ten sam problem, za każdym razem, gdy klikam plik .desktop, prosi o „zaufanie i uruchamianie” i otwiera się, ale pyta mnie o to samo za każdym razem (w tym samym pliku) i ikonę nigdy nie aktualizuje. Dziwne jest to, że myślę, że zaczęło się mniej więcej w czasie, gdy musiałem zrestartować X11 (startX), ponieważ miałem dziwaka z aplikacji, gdy był na pełnym ekranie. Czy kiedykolwiek znalazłeś rozwiązanie tego problemu?
Jared

Odpowiedzi:

12

Żadna z odpowiedzi udzielonych do tego momentu nie zawierała informacji o tym, jak możesz to zrobić w sposób nieinteraktywny. Co zrobić, jeśli chcę napisać skrypt tworzenia programu uruchamiającego i sprawić, by był zaufany bez konieczności klikania go?

Ten przypadek użycia jest już rozwiązany w tym pytaniu z tą odpowiedzią . Powielam tutaj te informacje, ponieważ to pytanie było o wiele łatwiejsze do znalezienia i nie jest to ściśle duplikat, ponieważ pytanie ma większy zakres.

Aby ustawić program uruchamiający jako zaufany z wiersza polecenia, uruchom:

gio set /path/to/your/launcher.desktop "metadata::trusted" yes

Po zakończeniu naciśnij F5 na pulpicie lub w bieżącym folderze, aby odświeżyć widok. Programowi uruchamiającemu należy teraz zaufać.

Istnieją pewne warunki, które muszą zostać spełnione (własność, uruchamianie programów, uruchamianie gio jako właściwy użytkownik). Zobacz pełną odpowiedź Sandera .

b_laoshi
źródło
Nie zadziałało to dla mnie o 18.04. Plik docelowy .desktoppozostaje z Allow executing file as program
polem
Miałem nowy plik .desktop jako program uruchamiający na pulpicie, z poprawną ścieżką ikony i wszystkim, działał plik wykonywalny i wszystko (więc ufano) - i nie pokazywałby ikony, dopóki nie kliknę F5 na pulpicie; dzięki za tę wskazówkę!
sdaau
11
  • Najpierw ustaw bit wykonywalny pliku .desktop, tak jak już to zrobiłeś. Możesz to również zrobić, klikając plik prawym przyciskiem myszy w menedżerze plików i ustawiając właściwość pliku wykonywalnego na karcie „Uprawnienia” w oknie dialogowym „Właściwości”, jeśli uznasz to za łatwiejsze niż wiersz poleceń.
  • Teraz spróbuj ponownie uruchomić ikonę, klikając ją dwukrotnie. Ponownie pojawia się okno dialogowe, ale uwaga: jest to inne okno dialogowe. Tym razem wybierz przycisk „Uruchom i zaufaj”, a plik na pulpicie zmieni się w funkcjonalny program uruchamiający z odpowiednią ikoną.
wanad
źródło
1
Dzięki za twoją odpowiedź. Mój problem polega na tym, że nie chcę, aby po kliknięciu ikony pojawił się komunikat. Jak domyślnie oznaczyć aplikację jako zaufaną? Ikona musi również zostać wyświetlona.
arun nath
Przeczytaj jeszcze raz dokładnie to, co napisałem, i najpierw wypróbuj. Jest to procedura oznaczania programu uruchamiającego jako „zaufanego”. Po wykonaniu tej czynności program uruchamiający będzie działał zgodnie z oczekiwaniami i natychmiast uruchomi aplikację. Zapytałeś: „Jak można oznaczyć, że aplikacja uruchamia plik pulpitu jako zaufany, aby komunikat nie był wyświetlany, a ikona wyświetla się również na pulpicie”. i to jest odpowiedź na „jak”.
wanad
Jestem w stanie uruchomić aplikację. Wszystko działa dobrze. Ale plik na pulpicie nie zmienia się w ikonę. Również gdy zamykam aplikację i próbuję uruchomić ją ponownie, komunikat pojawia się ponownie. Wydaje się, że nie ma sposobu na usunięcie tego wyskakującego komunikatu raz na zawsze. Cały czas wyskakuje. Mam nadzieję, że niczego mi nie brakuje.
arun nath
Masz na myśli, że możesz uruchomić aplikację ze swojego niezaufanego programu uruchamiającego po odpowiedzi na okna dialogowe, ale wtedy program uruchamiający nie staje się „zaufany”? To nie jest normalne zachowanie. W moim systemie muszę to zrobić raz, a następnie program uruchamiający jest „zaufany” i jest to zapamiętywane.
wanad
Zgadza się, wydaje się, że już tego nie pamięta. Kiedyś działało tak, jak sugerowałeś. Wydaje się, że najnowsza seria aktualizacji Ubuntu 18.04 go zepsuła.
arun nath
10

po wielu godzinach szukania wreszcie znalazłem przyczynę mojego problemu z tym, że pliki .desktop nigdy nie były zaufane i nie wyświetlały ikon:

Zmień właściciela na swoją nazwę użytkownika (mój ustawiono na root, który psuje rzeczy):

sudo chown $USER:$USER ~/.local/share/gvfs-metadata/home*

Podziękowania dla @George Udosen, który pomógł mi to naprawić: GVFS-WARNING **: nie można zainicjować drzewa metadanych /home/user/.local/share/gvfs-metadata/home: open: Odmowa dostępu

Jared
źródło
1
Nie działało dla mnie. Te pliki zostały już ustawione na właściwego właściciela.
Andrew Lamarra,
1

Ustaw prawidłową nazwę użytkownika i nazwę grupy dla konkretnego pliku na pulpicie (Chown). Teraz spróbuj uruchomić ponownie, pojawi się okno dialogowe wybierz przycisk „Uruchom i zaufaj”.

Brad Thompson
źródło
Miałem problem, że był już odpowiedni użytkownik i zestaw grup. Niestety nie do końca, ponieważ ponownie zainstalowałem Ubuntu ontop i ponownie zamontowałem katalog domowy o tej samej nazwie użytkownika. Okazało się, że użytkownik o tej samej nazwie nie jest per se tym samym użytkownikiem. Ze sudo chown -R myuser:myuser ~/wszystko działało bez żadnych problemów i bez konieczności ponownego uruchamiania.
Sebastian Barth
Mam ten sam problem. Ponadto, jeśli kliknę dwukrotnie plik .desktop w /home/${users}/.local/share/applications/EclipseWeb.desktop podczas korzystania z Nautilus, otrzymam komunikat: Błąd uruchamiania aplikacji i nie mogę znaleźć żadnych informacji aby pomóc mi zinterpretować wiadomość.
Jonathan
0

I żeby dodać do odpowiedzi b_laoshi - po aktualizacji z 16.04 do 18.04 miałem pulpit pełen linków Steam, nie chciałem otwierać każdej gry, a potem przestać jej ufać

for i in ~/Desktop/*.desktop; do    gio set "$i" "metadata::trusted" yes ;done

Nigdy nie należy ufać kodowi z przepełnienia stosu bez pewności, co on robi:

  • ustaw "$i"z kolei pełną ścieżkę każdego pliku na pulpicie o nazwie pulpit
  • biegnie

    gio set </home/path/to/your/whatever.desktop> "metadata::trusted" yes
    

    dla każdego

  • done oznacza koniec pętli
Greg
źródło
Miałem ten sam problem i ani gio, ani chown nie zmieniłyby grupy ani właściciela.
Jonathan
gionie zmieni właściciela ani grupy - po prostu mówi gnomowi, żeby mu zaufał. sprawdź właściciela / grupę stat filename, jeśli chown nie działa, sprawdź komunikaty o błędach, możesz uruchomić go tylko jako root (tj. z sudo) i niektóre systemy plików (np. udziały plików, karty SD, dyski Windows) nie będą go obsługiwały
Greg