| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | 
| tutoriel:application_demarrage [Le 30/07/2016, 10:20]  –  TravellingFroggy | tutoriel:application_demarrage [Le 18/12/2020, 13:40] (Version actuelle)  – [XFCE] style christophe c | 
|---|
|   | {{tag>tutoriel administration système}} | 
 |  | 
|   | ---- | 
|   |  | 
|   | ====== Lancement des applications en fin du lancement de l’environnement de bureau ====== | 
|   | Ce tutoriel présente les méthodes pour  **lancer automatiquement des applications au démarrage** d'une [[:sessions|session]] graphique. | 
|   |  | 
|   | La procédure s'applique seulement à l'[[:utilisateur]] courant. | 
|   |  | 
|   | Une procédure différente est nécessaire selon l'[[:environnements|environnements de bureau]] (classé ici par ordre alphabétique) : | 
|   |  | 
|   |  | 
|   | ===== Lancement en mode "normal", en mode utilisateur ===== | 
|   | ==== GNOME Shell ==== | 
|   |  | 
|   | Dans l'outil [[:gnome-tweak-tool|Ajustements]], rendez-vous à la section "//Applications au démarrage//" et ajoutez une application. | 
|   |  | 
|   | <note>Les applications proposées sont bien celles qui apparaissent dans la vue des applications (ou dans les menus, si vous en avez installé). | 
|   |  | 
|   | Pour lancer une ligne de commande spécifique au démarrage, il faudra créer [[:raccourci-lanceur|un lanceur dédié]] ([[#Méthode par ajout d'un lanceur|voir plus bas]]).</note> | 
|   | Les informations pour [[#Unity]] sont également valables pour Gnome, en particulier la commande qui permet de lancer l'application. | 
|   | ====KDE Plasma ==== | 
|   |  | 
|   | Allez dans **Configuration du système** → **Administration du système** (Plasma 4.x) ou **Espace de travail** (Plasma 5.x) → **Démarrage et arrêt** → **Gestionnaire de services**. | 
|   |  | 
|   |  | 
|   | ==== MATE ==== | 
|   | Rechercher dans le menu **Applications au démarrage**, ou dans un [[:terminal]] la commande suivante : <code>mate-session-properties</code> | 
|   | La suite est sensiblement identique à la partie [[#Unity]]. | 
|   |  | 
|   | ==== LXDE / LXQT ==== | 
|   | Pour LXDE, voir [[:lubuntu#applications_au_demarrage|cette page]]. | 
|   |  | 
|   | ====XFCE==== | 
|   |  | 
|   | [[:tutoriel:comment_lancer_application|Lancez]] le **Gestionnaire de paramètres ** et ouvrez ** Session et démarrage ** (ou bien entrez la commande ''xfce4-session-settings'' dans un terminal). | 
|   |  | 
|   | Sélectionnez l'onglet "**Démarrage automatique**" et cliquez sous le bouton **+Ajouter**, en bas à gauche. Dans la fenêtre qui s'ouvre, vous avez 3 zones. "Nom" et "description" sont libres, mais dans la zone "commande", vous devez saisir votre script ou votre application : | 
|   |   * Pour lancer une application, tapez simplement son nom (éventuellement avec une option, s'il y en a une qui vous intéresse). | 
|   |   * pour lancer un script : **sh -c "/chemin-du-script/nom-du-script"** | 
|   |   * Pour lancer un script __dans une fenêtre du terminal__ : **xfce4-terminal -x "/chemin-du-script/nom-du-script"** | 
|   |  | 
|   | ==== Unity ==== | 
|   |  | 
|   | Recherchez l'utilitaire "Applications au démarrage" dans le //tableau de bord// ou entrez dans un [[:terminal]] la commande suivante : <code>gnome-session-properties</code> | 
|   | {{ tutoriel:application_demarrage_01.png?300}} | 
|   |  | 
|   | Pour ajouter une application, cliquez sur le bouton //Ajouter//. | 
|   |  | 
|   | ~CB~ | 
|   |  | 
|   | {{ tutoriel:application_demarrage_02.png}} | 
|   | La fenêtre qui s'ouvre comporte 3 champs : //Nom//, //Commande// et //Commentaire//. | 
|   |  | 
|   |   * Dans le champ //nom// entrez le nom de l'application, par exemple : "//LibreOffice Writer//". | 
|   |  | 
|   |   * Le second champ //Commande// est le seul réellement important, c'est lui qui indiquera à votre système l'application à lancer au démarrage. Entrez-y la commande exacte nécessaire pour lancer l'application (rendez-vous sur la page de la documentation en question pour connaître la commande adéquate, il s'agit souvent du nom de l'application **sans majuscule** et **tout attaché**, par exemple : **libreoffice-writer**). | 
|   |  | 
|   |   * Le troisième champ //Commentaire// sert à ajouter un commentaire, par exemple : "//Traitement de texte de LibreOffice//". | 
|   |  | 
|   | <note tip> | 
|   | Si vous n'êtes pas sûr de la **commande** qui lance un logiciel, vous pouvez utiliser le [[:terminal]] où vous entrerez simplement le début du nom probable de ce logiciel, puis tapez 2 fois sur //Tab//. La bonne **commande** sera proposée. | 
|   |  | 
|   | Le nom de la **commande** est en général similaire au paquet installé (par exemple pour le paquet //vlc//, la commande est : **vlc**) et si besoin, vous pouvez vous aider de la [[:raccourci-lanceur#cas_general|commande which]].\\ | 
|   | Si vous désirez lancer un script, utilisez **sh -c "/chemin/complet/du/script"**</note> | 
|   |  | 
|   | ==== Méthode par ajout d'un lanceur ==== | 
|   |  | 
|   | <note help>Cette méthode est plus technique, mais devrait fonctionner pour presque tous les environnements.</note> | 
|   |  | 
|   | Pour chaque programme à ajouter, il suffit de lui créer son **[[:raccourci-lanceur|lanceur (page dédiée)]]** ([[http://standards.freedesktop.org/desktop-entry-spec/latest/|*.desktop]]) dans le dossier ''~/.config/autostart/'' | 
|   |  | 
|   | Exemple minimal de fichier lanceur pour [[:chromium-browser|le navigateur Chromium]] (préchargement par l'option ''--no-startup-window'') :  | 
|   | <file> | 
|   | [Desktop Entry] | 
|   | Type=Application | 
|   | Exec=/usr/bin/chromium-browser --no-startup-window | 
|   | X-GNOME-Autostart-enabled=true #Si cette ligne est sur true, alors l'application se lancera automatiquement | 
|   | Name=Chromium | 
|   | </file> | 
|   | <note>Les fichiers des lanceurs peuvent aussi indiquer une icône et plein d'autres choses, mais ce ne sont pas forcément des informations pertinentes pour l'usage qu'on en fait ici.</note> | 
|   |  | 
|   | Exemple de code pour générer le lanceur (à inclure dans un [[script_shell|script exécutable]] ) : | 
|   | <code> | 
|   | cat << EOF >> ~/.config/autostart/nom_du_lanceur.desktop | 
|   | [Desktop Entry] | 
|   | Type=Application | 
|   | Exec=nom_du_programme_à_lancer | 
|   | Name=nom_qui_apparaîtra_dans_le_gestionnaire_de_démarrage | 
|   | X-GNOME-Autostart-enabled=true #Si cette ligne est sur true, alors l'application se lancera automatiquement | 
|   | Icon=nom_de_l_icône_qui_apparaîtra_dans_le_gestionnaire_de_démarrage   #recherchez à l'intérieur de /usr/share/icons/ pour trouver le nom exact adapté | 
|   | Comment=commentaire_au_choix | 
|   | EOF | 
|   | </code> | 
|   |  | 
|   | === En ligne de commande === | 
|   |  | 
|   | La même chose, en une seule ligne de commande : | 
|   |  | 
|   | <code> | 
|   | Nom="Le nom de l'application à lancer" ; Cde="ligne de commande à lancer" ; Rep="si nécessaire, répertoire de la commande à lancer" ; Commentaire="le commentaire à votre convenance" ; Icone="chemin complet vers l'icône"; printf "[Desktop Entry]\nType=Application\nExec=%s%s\nHidden=false\nNoDisplay=false\nX-GNOME-Autostart-enabled=true\nName[fr_FR]=%s\nName=%s\nComment[fr_FR]=%s\nComment=%s\nIcon=%s" "$Rep" "$Cde" "$Nom" "$Nom" "$Commentaire" "$Commentaire" "$Icone" > "$HOME/.config/autostart/""$Cde"".desktop" | 
|   | </code> | 
|   |  | 
|   | ou alors (sans icône) :  | 
|   | <code> | 
|   | Nom="Le nom de l'application à lancer" ; Cde="ligne de commande à lancer" ; Rep="si nécessaire, répertoire de la commande à lancer" ; Commentaire="le commentaire à votre convenance" ; printf "[Desktop Entry]\nType=Application\nExec=%s%s\nHidden=false\nNoDisplay=false\nX-GNOME-Autostart-enabled=true\nName[fr_FR]=%s\nName=%s\nComment[fr_FR]=%s\nComment=%s\nIcon=%s" "$Rep" "$Cde" "$Nom" "$Nom" "$Commentaire" "$Commentaire" > "$HOME/.config/autostart/""$Cde"".desktop" | 
|   | </code> | 
|   |  | 
|   |  | 
|   | ===== Lancement en mode administrateur, en mode root===== | 
|   | <note important>La section qui suit est destinée aux utilisateurs et utilisatrices avancé(e)s, prenez toutes les précautions qui s'imposent avant d'aller plus loin.</note> | 
|   | ==== Méthode rc.local ==== | 
|   | Une méthode simple est d'ajouter les commandes dans le fichier **/etc/rc.local** | 
|   |  | 
|   | Le script /etc/rc.local est destiné à être utilisé par l'administrateur système. Il est généralement exécuté après le démarrage de tous les services système normaux, à la fin du processus de basculement vers un [[https://fr.wikipedia.org/wiki/Run_level|niveau d'exécution]] multi-utilisateur. Vous pouvez l’utiliser pour démarrer un service personnalisé, par exemple un serveur installé dans /usr/local. La plupart des installations n'en ont pas besoin /etc/rc.local, elles sont fournies pour la minorité des cas où cela est nécessaire. | 
|   |  | 
|   |  | 
|   | ==== Méthode crontab ==== | 
|   | Le principe ici est d'utiliser le démon [[:cron|cron]] qui sert normalement à lancer des commandes / scripts sur évenements (principalement basée sur le temps). | 
|   |  | 
|   | Le paramètre **@reboot** permet de lancer une commande au démarrage. | 
|   |  | 
|   |  | 
|   |  | 
|   | On va donc simplement editer la configuration cron et lancer la commande /script : | 
|   |  | 
|   | 1. Ouvrir la configuration de l'administrateur : | 
|   |   sudo crontab -e | 
|   |    | 
|   |  | 
|   | 2. Ajouter à la fin du fichier la commande / script "//maCommande//" que vous souhaitiez executer : | 
|   |   @reboot maCommande | 
|   | ==== Méthode system D==== | 
|   | <note important>A vérifier puis suoprimer ce commentaire</note> | 
|   | Systemd est le gestionnaire de système qui remplace [[:upstart]] et son prédécesseur ([[:script_sysV|les scripts system V]]) depuis [[:xenial|Ubuntu 16.04 LTS Xenial]]. | 
|   |  | 
|   |  | 
|   | 1. Créer un fichier monService dans /etc/systemd/system/   | 
|   |   [Unit] | 
|   |   Description=<Mettre une description> | 
|   |   [Service] | 
|   |   Type=oneshot  | 
|   |   ExecStart=<Ma commande> | 
|   |   [Install] | 
|   |   WantedBy=multi-user.target | 
|   |  | 
|   | 2. Activer le fichier : | 
|   |   sudo systemctl enable monService | 
|   |   sudo systemctl start monService | 
|   |  | 
|   |  | 
|   |  | 
|   |  | 
|   | ==== Méthode spécifique pour assigner un paramètre==== | 
|   | <note important>Cette méthode mérite d’être détaillée d'un point de vue clarification en pédagogie</note> | 
|   |  | 
|   | Si vous voulez juste changer un paramètre au démarrage, vous pouvez créer un fichier de configuration. | 
|   |  | 
|   | Dans cet exemple, on veut mettre fnmode=2 au module qui s'appelle **hid_apple**. Ça sert à désactiver la touche fn de certains claviers au démarrage. | 
|   | Pour le faire automatiquement, on peut lancer cette commande : | 
|   |  | 
|   |   sudo bash -c "echo 2 > /sys/module/hid_apple/parameters/fnmode" | 
|   |    | 
|   | Si on la veut automatiquement configurée à chaque démarrage : | 
|   |   echo options hid_apple fnmode=2 | sudo tee -a /etc/modprobe.d/hid_apple.conf | 
|   |   sudo update-initramfs -u -k all | 
|   |  | 
|   |  | 
|   | ===== Utilisation avancée du gestionnaire de démarrage===== | 
|   |  | 
|   | <note important>La section qui suit est destinée aux utilisateurs et utilisatrices avancé(e)s, prenez toutes les précautions qui s'imposent avant d'aller plus loin.</note> | 
|   |  | 
|   | ==== Afficher l'ensemble des tâches au démarrage ==== | 
|   |  | 
|   | Les tâches présentes dans le gestionnaire de démarrage ne s'affichent pas toutes par défaut. | 
|   | <note important>Ne faites pas ces modifs par simple curiosité, parce que lors d'une mise à niveau, vous serez interrogés sur remplacer ou conserver le fichier de configuration pour chacune des applications (c'est pénible).  Ou alors, n'oubliez pas de revenir à la configuration par défaut comme indiqué. </note> | 
|   |  | 
|   | Il existe une manipulation pour faire apparaître l'ensemble des tâches, dans un terminal entrez : | 
|   | <code>sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop</code> | 
|   | Au prochain lancement, le gestionnaire de démarrage affichera toutes les tâches lancées.\\ | 
|   | Pour revenir à la configuration par défaut, suivez le chemin inverse : | 
|   | <code>sudo sed -i 's/NoDisplay=false/NoDisplay=true/g' /etc/xdg/autostart/*.desktop</code> | 
|   |  | 
|   | ==== Lancer une application au démarrage avec une temporisation ==== | 
|   |  | 
|   | Vous pouvez avoir besoin de démarrer une application avec un délai d'attente. Si tel est votre cas, en lieu et place d'une simple commande (par exemple : firefox), il vous faudra ajouter dans le champ //commande// (voir image ci-dessus) l'entrée suivante : | 
|   | <code>sh -c "sleep 10 && (firefox &)"</code> | 
|   | Dans cet exemple le //10// après //sleep// est le nombre de secondes à attendre avant que la commande se lance, //firefox// est un exemple de commande, bien sûr remplacez ce mot par le nom de votre logiciel. | 
|   |  | 
|   | ==== Lancer sa propre séquence grâce à un script ==== | 
|   |  | 
|   | Voici un exemple de [[script_shell|script]] de démarrage pour lancer une séquence de programmes.  | 
|   | <code> | 
|   |   #!/bin/bash | 
|   |   clipit     #se lance dès l'ouverture de session | 
|   |   sleep 10     #attend 10 secondes | 
|   |   libreoffice-writer      | 
|   |   sleep 2     #attend 2 secondes | 
|   |   vlc | 
|   |   exit 0 | 
|   | </code> | 
|   |  | 
|   | Une autre méthode est de lancer un fichier .desktop existant via l'une des méthodes de cette page : [[https://ubuntuplace.info/questions/290/executer-un-fichier-desktop-dans-le-terminal|Exécution d'un fichier .desktop dans le terminal]] | 
|   | ===== Liste des applications démarrées par défaut (Unity) ===== | 
|   |  | 
|   | Cette liste permet de savoir à quoi sert chaque application. Vous pourrez ainsi désactiver celles qui vous sont inutiles. | 
|   |  | 
|   | ^ Programme ^ Description ^ Statut ^ | 
|   | | AT SPI D-Bus Bus | "Assistive Technology Service Provider Interface" pour les fonctions d'accessibilité intégrée aux applications | Désactivable si vous n'avez pas besoin des fonctionnalités d'accessibilité | | 
|   | | Backup Monitor (**Moniteur de sauvegarde**) | Sauvegarde planifiée du système à intervalle régulier | | | 
|   | | Bluetooth manager | Gestionnaire de connexions aux périphériques Bluetooth | | | 
|   | | Certificate and key storage (**Stockage de certificats et de clés**) | Utilisé par le trousseau GNOME pour les applications nécessitant un certificat ou une clé de cryptage | Désactivable si vous n'utilisez pas de certificats de chiffrement | | 
|   | | Chat (**Discussion**) | Affichage les notifications du logiciel Telepathy | | | 
|   | | Check for new hardware drivers | Vérifie s'il y a un nouveau composant matériel installé (autre qu'une clé/disque USB) | | | 
|   | | Disk Notifications | Vous alerte de l'état de santé de votre disque dur (utile si votre disque dur est compatible avec la technologie SMART) | | | 
|   | | Evolution Alarm Notify | Notifications du calendrier et courriel | Inutile si vous n'utilisez pas les alarmes du calendrier d'[[:Evolution]] | | 
|   | | Files (**Fichiers**) | Permet à [[:Nautilus]] (GNOME) d'afficher des fichiers sur le bureau (inutile avec Unity) | | | 
|   | | GNOME Login Sound | Son joué après la connexion d'un utilisateur | | | 
|   | | GNOME Settings Daemon (**Service de paramètres GNOME**) | Prend en compte les réglages dans GNOME (thèmes, icônes, etc...) | Recommandé pour tous | | 
|   | | GPG Password Agent (**Agent de mot de passe GPG**) | [[:gnupg|Trousseau de clés GNOME : agent PGP]] | Inutile si vous n'utilisez pas de clés GPG pour signer ou chiffrer des données | | 
|   | | GSettings Data Conversion (**Conversion des données GSettings**) | Permet de convertir les anciens fichiers de configuration gnome  | | | 
|   | | Gwibber | [[:Gwibber]] est un client libre de micro blogging en GTK. Il permet aux utilisateurs de mettre à jour un statut public spontanément et de récupérer automatiquement les informations de contacts, mais aussi de voir les réponses  et d'aller voir directement des flux en particulier. | | | 
|   | | Mount Helper (**Assistant de montage**)| Après avoir branché un périphérique USB l'ouvre automatiquement (sinon vous devrez l'ouvrir vous même en cliquant sur le disque externe qui apparaît dans Nautilus). | | | 
|   | | Network (**Réseau**) | Gestion des interfaces réseaux (Wifi, ethernet, etc..) | | | 
|   | | NVDIA X Server Settings | pour les cartes graphiques [[:Nvidia]] | | | 
|   | | Onboard | [[:onboard|OnBoard]] est un clavier virtuel | | | 
|   | | Orca Screen Reader (**Orca screen reader**) | [[:orca|Orca]] permet aux utilisateurs non/mal-voyants d'utiliser Ubuntu | Désactivable si vous n'avez pas besoin des fonctionnalités d'accessibilité pour la vocalisation ou le braille | | 
|   | | Personal File Sharing (**Partage de fichiers personnels**)| [[:Partage]] de fichiers personnels en réseau | | | 
|   | | PolicyKit Authentication Agent | Permet aux applications de vous demander le mot de passe de l'administrateur si besoin | | | 
|   | | Power Manager | Gère la mise en veille du PC | | | 
|   | | Print Queue Applet |  |  | | 
|   | | PulseAudio Sound System (**Système de son PulseAudio**) | pour avoir du [[:audio|son]] | | | 
|   | | Remote Desktop (**Partage de bureau**) | Permet de prendre le contrôle à distance au PC | | | 
|   | | Screensaver (**Économiseur d'écran**)| Effet dégradé progressif de la luminosité puis affichage de l'écran de veille | | | 
|   | | Secret Storage Service (**Service de stockage secret**)| [[:gnupg|Trousseau de clés GNOME : service secret]] | | | 
|   | | SSH Key Agent (**Agent de clés SSH**) | Agent GNOME qui charge vos clés [[wpfr>SSH]] pour permettre aux applications l'accès à ces clés  | Désactivable si vous n'utilisez pas de clés SSH | | 
|   | | Update Notifier (**Notificateur de mises à jour**)| Vérifie automatiquement la disponibilité de mises à jour | | | 
|   | | User folders update |  | | | 
|   | | Visual Assistance |  | | | 
|   | | Volume Control |  | | | 
|   | | [[:zeitgeist|Zeitgeist]] (**Zeitgeist Datahub**) | Enregistre dans un journal les activités de l'utilisateur et les événements de Gnome | | | 
|   |  | 
|   | Sources : [[http://askubuntu.com/questions/11415/which-startup-applications-can-i-safely-turn-off|ici]] et [[http://gnomeshell.wordpress.com/2011/08/28/manage-the-startup-applications/|là]]. | 
|   | ===== Voir aussi ===== | 
|   |    * [[:demarrage|Comment Ubuntu démarre / le startup / le démarrage]] | 
|   |    * Discussion [[http://forum.ubuntu-fr.org/viewtopic.php?id=820|Lancer un programme au démarrage d'Ubuntu]] sur le forum ubuntu-fr. | 
|   |    * La page de documentation sur les [[:services]] qui permet d'aller beaucoup plus loin et de gérer les services lancés avant même l'ouverture d'une session (utilisateurs avancés seulement). | 
|   |    * [[http://forum.ubuntu-fr.org/viewtopic.php?id=415701|Lancer application au démarrage avec une temporisation]] | 
|   |  | 
|   | ---- | 
|   | //Contributeurs principaux : [[utilisateurs:mydjey]], [[utilisateurs:Vincent85]]// |