Dans Ubuntu, où voir tous les programmes, comme les "fichiers de programme" de Windows, à partir desquels je peux lancer un programme à partir de la liste de tous les programmes installés?
Si vous souhaitez lancer des applications à partir de la liste, l’option Nice est l’indicateur Classic Gnome.
Sudo apt-get install classicmenu-indicator
Voir ici: http://www.howtogeek.com/189929/how-to-install-and-launch-the-classic-gnome-menu-in-ubuntu-14.04/
Comme OP a mentionné: à partir duquel puis-je lancer un programme à partir de la liste de tous les programmes installés?
Ci-dessous un petit script qui répertorie toutes les applications (globalement) installées. Choisissez-en un pour le lancer ou tapez quelques-uns de ses caractères et appuyez sur Return pour exécuter l'application:
list_apps.py
Testez-le avec la commande (ouvrez une fenêtre de terminal, tapez la commande et appuyez sur Return):
python3 /path/to/list_apps.py
Si tout fonctionne correctement, ajoutez-le à une touche de raccourci: choisissez: Paramètres système> "Clavier"> "Raccourcis"> "Raccourcis personnalisés". Cliquez sur le "+" et ajoutez la commande:
python3 /pat/to/list_apps.py
à une combinaison de touches de raccourci que vous aimez.
#!/usr/bin/env python3
import subprocess
import os
dr = "/usr/share/applications"
apps = []
for f in [f for f in os.listdir(dr) if f.endswith(".desktop")]:
try:
content = open(dr+"/"+f).read()
if not "NoDisplay=true" in content:
lines = content.splitlines()
name = [l for l in lines if l.startswith("Name=")][0].replace("Name=", "")
command = [l for l in lines if l.startswith("Exec=")][0].replace("Exec=", "")
apps.append([name, command])
except:
pass
apps.sort(key=lambda x: x[0]); apps = sum(apps, [])
displ_list = '"'+'" "'.join(apps)+'"'
try:
chosen = subprocess.check_output([
"/bin/bash",
"-c",
'zenity --list '+\
'--column="Applications" '+\
'--column="commands" '+\
'--hide-column=2 --height 450 '+\
'--width 300 '+\
'--print-column=2 '+displ_list
]).decode("utf-8").split("|")[-1].strip()
chosen = chosen[:chosen.rfind(" ")] if "%" in chosen else chosen
subprocess.Popen([
"/bin/bash", "-c", chosen
])
except subprocess.CalledProcessError:
pass
Le script répertorie tous les fichiers .desktop
dans /usr/share/applications
et vérifie si la ligne NoDisplay=true
est dans le fichier (ce qui signifie qu'elle n'est pas destinée à être utilisée comme interface graphique). Ensuite, il examine les fichiers, recherche le nom de l'application et la commande permettant de l'exécuter.
Le résultat est répertorié dans une liste zenity
, à choisir. Si vous en choisissez un, la commande correspondante est exécutée.
C'est tout.
Si vous souhaitez également avoir une brève description de l'application, comme indiqué dans la ligne Comment=
de son fichier .desktop
, utilisez la version ci-dessous:
#!/usr/bin/env python3
import subprocess
import os
dr = "/usr/share/applications"
apps = []
for f in [f for f in os.listdir(dr) if f.endswith(".desktop")]:
try:
content = open(dr+"/"+f).read()
if not "NoDisplay=true" in content:
lines = content.splitlines()
name = [l for l in lines if l.startswith("Name=")][0].replace("Name=", "")
command = [l for l in lines if l.startswith("Exec=")][0].replace("Exec=", "")
comment = [l for l in lines if l.startswith("Comment=")]
comment = comment[0].replace("Comment=", "") if comment else "No description"
apps.append([name, command, comment])
except:
pass
apps.sort(key=lambda x: x[0]); apps = sum(apps, [])
displ_list = '"'+'" "'.join(apps)+'"'
try:
chosen = subprocess.check_output([
"/bin/bash",
"-c",
'zenity --list '+\
'--column="Applications" '+\
'--column="commands" '+\
'--column="Description" '+\
'--hide-column=2 --height 450 '+\
'--width 500 '+\
'--print-column=2 '+displ_list
]).decode("utf-8").split("|")[-1].strip()
chosen = chosen[:chosen.rfind(" ")] if "%" in chosen else chosen
subprocess.Popen([
"/bin/bash", "-c", chosen
])
except subprocess.CalledProcessError:
pass
Sur Ubuntu pas tous les programmes sont répertoriés dans le menu de l'application.
Pour les voir tous, vous devrez ouvrir une console et taper
dpkg -l
Ceci affichera toutes les applications (celles qui s'exécutent dans l'interface utilisateur et celles qui s'exécutent dans la console).