Czy można ustawić moją zmienną PATH we wpisie na pulpicie?

1

Utworzyłem binkatalog $HOMEze skryptami powłoki, z których każdy jest skonfigurowany do ładowania profilu Firefox; w ten sposób mogę użyć prostego polecenia, takiego jak np. facebookotworzyć profil Firefox zarezerwowany dla mojego konta na Facebooku.

Mam jednak problemy z uruchomieniem wpisów na pulpicie do pracy z tą konfiguracją. Mam wpis na pulpicie w $HOME/.local/share/applicationsnastępującym Execwierszu:

Exec=env PATH=${PATH}:${HOME}/bin facebook

Po wybraniu tego programu uruchamiającego nic się nie dzieje. Jeśli kliknę go w samym katalogu, zapytam, jak w przypadku każdego innego wpisu na pulpicie, czy chcę go uruchomić pomimo braku uprawnień do wykonywania. (Już potwierdziłem, że działa to zgodnie z oczekiwaniami z wieloma innymi wpisami na pulpicie, gdzie aplikacje pomyślnie uruchamiają się po wybraniu „Uruchom mimo wszystko”). Jeśli uzyskam dostęp do niego z jednego z menu dostępnych w moim DE (Menu Whisker Xfce i tradycyjne menu aplikacji, jeśli pomaga to wiedzieć), znowu nic się nie dzieje. Potwierdziłem, że skrypt powłoki binjest wykonywalny i mogę pomyślnie uruchomić profil Firefoksa, klikając ikonę skryptu w Thunar lub otwierając go z terminala. Mam również wiele pozycji pulpitu, w których ustawiam inne zmienne środowiskowe, takie jakHOME, jak wyżej, i uruchamiają się bez problemu, bez względu na to, jak mam do nich dostęp.

Zdaję sobie sprawę, że istnieje milion innych sposobów, aby to zrobić; Mógłbym po prostu podać pełną ścieżkę do skryptu w pliku .desktop, mógłbym utworzyć program uruchamiający Firefox z odpowiednimi przełącznikami CL w Execlinii, mógłbym dodać ${HOME}/bindo mojej PATHzmiennej w / etc / profile itp. (Uwaga: dodanie ${HOME}/bindo PATHz .bashrc nie wydaje się tego naprawiać, nawet jeśli jest ustawiony na logowanie i nie jest pozyskiwany tylko w połowie sesji.) Jestem głównie ciekawy, czy można to uruchomić, szczególnie w przypadku dodanego parsimony, które zapewnia pisząc wpisy na pulpicie, a ponieważ nie chcę rozszerzać swojej ścieżki poza pojedyncze instancje takie jak ta, jeśli mogę pomóc.

W przypadku, gdy robi to jakąkolwiek różnicę, w moim katalogu znajduje się również pełny skrypt powłoki bin:

#!/bin/sh
firefox -no-remote -P Facebook
exit 0

EDYCJA: Pomimo licznych ostrzeżeń o błędach składniowych (ponieważ wydaje się, że bash próbuje uruchomić go jak skrypt powłoki), ten wpis pulpitu działa również poprawnie, gdy ustawione jest u + x. To po prostu głupie i zdecydowanie nie chcę mieć wykonywalnego pliku .desktop ~/.local/share/applications.

Marĉjo
źródło

Odpowiedzi:

0

Nie sądzę, aby pliki na pulpicie same rozwiązywały zmienne, ale możesz wypróbować sztuczkę, którą widziałem gdzie indziej, Exec=sh -c "PATH=$HOME/bin:$PATH facebook"i sprawdzić, czy to działa.

Znalezione na https://stackoverflow.com/a/8980518 .

dragon788
źródło