Das Xmonad-Terminal erstellt drei Prozesse

365
Zhen

Ich konfiguriere xmonad. Ich habe das Terminal geändert, terminal="urxvt"aber es gefällt mir nicht, dass es drei Prozesse pro geöffnetem Terminal erzeugt:

~$ ps -fea --forest fake 16042 12136 0 11:22 ? 00:00:00 \_ /bin/sh -c urxvt fake 16043 16042 0 11:22 ? 00:00:00 | \_ urxvt fake 16044 16043 0 11:22 pts/2 00:00:00 | \_ bash 

Wie kann ich das beheben? Kann ich den /bin/sh -c urxvtProzess entfernen ?

0

1 Antwort auf die Frage

1
Dan D.

Intern verwendet XMonad spawnin XMonad.Core :

spawn :: MonadIO m => String -> m ()

laichen. Starten Sie eine externe Anwendung. Insbesondere doppelt gabelt es sich und führt den String aus, an den Sie als Befehl übergeben werden /bin/sh.

Wenn Sie also nur den terminalWert ändern executeFilemöchten, anstatt direkt say zu verwenden, müsste execder Shell-Befehl verwendet werden terminal="exec urxvt", der das Extra entfernt, /bin/shindem er execden Befehl veranlasst und nicht die Shell als übergeordnetes Element des Prozesses.