Jak uruchomić program po uruchomieniu X?


18

Jest mała aplikacja o nazwie F.Lux, która ustawia temperaturę ekranu na podstawie pory dnia. Wersja Linuksa jest trochę spartańska z tylko interfejsem konsoli, ale działa idealnie dobrze.

Gdzie mogę je wywołać, aby uruchomiło się po uruchomieniu X?


1
Ja kocham F.lux! Prawdopodobnie uratowało mi to oczy w ciągu ostatnich kilku lat, nie mogę już bez nich wytrzymać.
Phoshi

Ciekawe oprogramowanie,
pobieram

To niesamowite, dzięki temu nie będę skarżyć się na jasność ekranu w nocy.
Corey,

Rzeczywiście, niesamowita aplikacja.
Apache

Odpowiedzi:


7

.xinitrc jest tym, którego można użyć, jeśli uruchomisz z niego menedżera okien. Jeśli używasz KDE lub GNOME, musisz dodać program do usług, które uruchamiają się automatycznie po zalogowaniu.


6

przede wszystkim przeczytaj „człowiek X”:

 STARTING UP

   There are two main ways of getting the X server and an initial  set  of
   client  applications  started.   The  particular method used depends on
   what operating system you are running and whether or not you use  other
   window systems in addition to X.

dowiesz się, że w zależności od tego, jak wywołujesz Xserver, po uruchomieniu Xservera używane są 2 skrypty:

  • .xinitrc (dla kiedy uruchomiłeś sesję przez startx(który uruchamia się xinit))
  • .xsession (na wypadek zalogowania się do systemu za pomocą menedżera wyświetlania (xdm))

(ja osobiście ln -s .xinitrc .xsession, więc nie ma znaczenia, jak wywołuję Xserver).

w zależności od tego, czego używasz do logowania się do systemu (i myślę, że obecnie jest to albo gdm, albo kdm), sprawy wyglądają nieco inaczej. zwykle gdm i kdm (oraz inne menedżery wyświetlania) oferują użytkownikowi wybranie „sesji użytkownika” lub czegoś podobnego. jeśli wybierzesz tę „sesję użytkownika”, uruchomią się głównie te menedżery wyświetlania ~/.xsession. będziesz odpowiedzialny za uruchomienie aplikacji ORAZ środowisko pulpitu / menedżera okien.

innym możliwym rozwiązaniem jest sprawdzenie, w jaki sposób różne środowiska pulpitu / menedżery okien obsługują koncepcję „autostartu”. osobiście unikam tych mechanizmów i trzymam się starej, dobrej .xinitrc / .xsessiondrogi.

przykład .xinitrc wyglądałby tak:

xmodmap ~/.Xmodmap
xsetxkbmap de
autocutsel &
xflux -l 52
exec /usr/bin/fluxbox

3

Spróbuj umieścić skrypt o nazwie .xinitrcw katalogu domowym. KDE i Gnome mają również możliwość uruchamiania skryptów / aplikacji podczas logowania, jeśli używasz jednego z nich. Wierzę .Xstartuplub .xstartupteż mogę robić, co chcesz, jeśli .xinitrcnie. Mój linux wydaje się trochę zardzewiały. >.>


Hmm, nie jestem pewien, czy to zadziałało, czy jest gdzieś dziennik?
cyborg

Nie, chyba że F.Lux gdzieś się zaloguje. Zawsze możesz dodać echo "hello!" >> ~/.launchlogdo swojego konta, .xinitrcdopóki się nie dowiesz, a następnie usunąć dziennik testu.
Darth Android

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.