Les «applications de démarrage» ne fonctionnent pas

8

J'ai une simple commande d'une ligne qui fonctionne parfaitement dans le terminal, mais ne fonctionne pas dans l'application "Startup Applications".

La ligne de code est: xmodmap /home/seph/Code/Ubuntu\ Scripts/Xmodmap

Ce n'est pas si compliqué de le copier à partir de "Applications de démarrage" et de le coller dans le terminal, mais je ne comprends pas vraiment pourquoi cela ne fonctionne pas. J'ai suivi les instructions de quelqu'un d'autre pour le faire en premier lieu, alors peut-être que j'ai fait quelque chose de mal? En tout cas, ne serait-ce pas l'hypothèse évidente et logique qu'il ne fait que taper tout ce que vous y mettez dans Terminal?

Seph Reed
la source
C'est exactement le même problème que j'ai eu! +1
jedi

Réponses:

13

Les commandes, en particulier celles liées aux paramètres du clavier, de la souris et du pavé tactile, ou les commandes xrandr, nécessitent souvent que le bureau soit entièrement chargé. Si vous les exécutez simplement lors de la connexion (à l'aide des applications de démarrage), elles s'exécutent souvent trop tôt et se cassent.

Par conséquent, vous devez intégrer une petite pause avant l'exécution de la commande. Utilisez plutôt la commande suivante pour ajouter aux applications de démarrage:

/bin/bash -c "sleep 15 && xmodmap /home/seph/Code/Ubuntu\ Scripts/Xmodmap"

Chooes Dash> Applications de démarrage> Ajouter et ajoutez la commande.

Cela devrait faire l'affaire.

Jacob Vlijm
la source
C'est ce que je pensais. Je me demande cependant pourquoi ce délai est nécessaire. X doit être entièrement opérationnel et opérationnel à la connexion. Je veux dire, je sais qu'il y a ce problème, ce n'est pas la première fois que je le lis, je me demande simplement pourquoi.
kos
1
@kos Je soupçonne qu'à un certain point, les paramètres locaux sont appliqués, annulant la commande au démarrage (car ils apparaissent plus tard).
Jacob Vlijm
1
Logique. J'essaierai de faire des recherches un peu, je suis un peu curieux à ce sujet.
kos
1
@kos ... Dans d' autres cas, il est le bureau, étant pas encore prêt. Je me souviens d'un bug dans Dropbox, où l'icône apparaissait sur le côté gauche (Unity) du panneau, pouvait être corrigé avec la même astuce.
Jacob Vlijm
1
cela explique beaucoup. Presque tous les scripts de démarrage dont j'avais vraiment besoin ont quelque chose à voir avec la réparation du clavier ou de la souris. Je trouve étrange que ce ne soit pas un cas d'utilisation qui était prévu autour.
Seph Reed
0

Ajoutez cet extrait de code dans un .conffichier dans ~/.config/upstart/:

start on startup
task
exec xmodmap /home/seph/Code/Ubuntu\ Scripts/Xmodmap
Tung Tran
la source
l'ajouter où? upstart est un dossier. Dois-je créer un nouveau fichier? Quel type d'extension devrait-il avoir?
Seph Reed
dans un fichier conf dans le dossier. J'ai mis à jour ma réponse.
Tung Tran
J'ai essayé avec exec xrandr --output DP-1 --brightness 0.85mais ça n'a eu aucun effet. se pourrait-il que ce on startupsoit trop tôt? quel événement signifie que le bureau de l'unité est prêt?
Superole