Comment changer les priorités de x-www-browser?

26

Je suis sur 15.04 64 bits Lubuntu et j'ai téléchargé du chrome sur leur site Web, car il peut être utile parfois, mais je veux garder Firefox comme navigateur par défaut et malgré l'avoir mis comme navigateur par défaut, il ne fonctionne toujours pas lorsque je exécuter x-www-browser. J'ai ensuite mis manuellement Firefox par défaut en utilisant le update-alternativesscript, mais ce qui m'a fait me demander pourquoi Chrome s'est mis à une priorité de 200. Je ne considère pas le chrome aussi haut qu'eux-mêmes, alors comment pourrais-je changer les priorités ?

C'est ce que j'ai maintenant et firefox est en effet devenu mon application par défaut, mais cela ne devrait pas l'être, quand je l'ai clairement mis par défaut dans l'interface firefox elle-même.

  Selection    Path                           Priority   Status
------------------------------------------------------------
  0            /usr/bin/google-chrome-stable   200       auto mode
  1            /usr/bin/chromium-browser       40        manual mode
* 2            /usr/bin/firefox                40        manual mode
  3            /usr/bin/google-chrome-stable   200       manual mode
Peter Raeves
la source
7
+1 pour le "Je ne considère pas le chrome aussi haut qu'eux-mêmes" ;-)
mirabilos

Réponses:

28

Vous pouvez modifier la priorité avec:

sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser google-chrome-stable <priority_as_integer>

Exemple:

avant

$ sudo update-alternatives --config x-www-browser 
There are 2 choices for the alternative x-www-browser (providing /usr/bin/x-www-browser).

  Selection    Path                         Priority   Status
------------------------------------------------------------
* 0            /usr/bin/google-chrome-beta   150       auto mode
  1            /usr/bin/firefox              150       manual mode
  2            /usr/bin/google-chrome-beta   150       manual mode

après:

$ sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/google-chrome-beta 50
update-alternatives: using /usr/bin/firefox to provide /usr/bin/x-www-browser (x-www-browser) in auto mode

$ sudo update-alternatives --config x-www-browser                                                        
There are 2 choices for the alternative x-www-browser (providing /usr/bin/x-www-browser).

  Selection    Path                         Priority   Status
------------------------------------------------------------
* 0            /usr/bin/firefox              150       auto mode
  1            /usr/bin/firefox              150       manual mode
  2            /usr/bin/google-chrome-beta   50        manual mode
UN B
la source
2
Ce n'est pas de votre faute, car votre réponse est correcte, mais cette "solution" est complètement folle. Quelqu'un doit définitivement inventer quelque chose de mieux que cela.
Tino
@Tino: argumentez-le.
Marco Sulla
3
Seules les choses les plus évidentes: 1) sudo: c'est donc par système mais devrait être par utilisateur ou encore mieux par shell. 2) chemins absolus: il a donc besoin d'une connaissance approfondie du système et juste une petite faute de frappe, complètement. 3) ligne de commande complexe et incompréhensible. 4) API inattendue: Prio 1 est généralement le premier prix. Je ne dis pas que la numérotation est erronée, mais ne l'appelez pas "Priorité". 5) C'est une fonctionnalité bien cachée, etc., etc., etc. Cette fonctionnalité importante sous Linux / Debian doit toujours être conçue avec les gens ordinaires à l'esprit, pour ceux qui ne le savent pas et s'en moquent.
Tino
@Tino La plupart des "gens ordinaires" ne fonctionneront même pas dans x-www-browser, la plupart des applications GUI respecteront les associations de fichiers de votre DE et la plupart des utilitaires de ligne de commande respecteront la variable d'environnement BROWSER.
Jonathan Baldwin
1
@JonathanBaldwin Les gens ordinaires ne savoir x-www-browserni ce Environmentou Variablemoyens. Cependant, ils sont affectés par x-www-browserles coulisses. Comparez avec le scandale des émissions de Volkswagen: les conducteurs de camions diesel sont bouleversés comme ils le savent, ils sont touchés. Mais ils ne savent toujours rien d'AdBlue ni de son fonctionnement. Mais plus important encore: ils ne veulent jamais savoir et ils ne devraient pas avoir besoin de savoir! Les gens ordinaires ne sont pas des ingénieurs en science des fusées, et même la plupart des ingénieurs en science des fusées n'ont pas besoin de connaître AdBlue dans leur voiture également.
Tino
4

En bref: éditez / var / lib / dpkg / alternatives / x-www-browser et changez la priorité à l'intérieur


DÉTAILS

La solution la plus simple et incontournable consiste à modifier les fichiers alternatifs de mise à jour administrative trouvés dans le /var/lib/dpkg/alternatives

Alors éditez le x-www-browserfichier

sudo gedit /var/lib/dpkg/alternatives/x-www-browser

La sortie sera comme ceci:

auto
/usr/bin/x-www-browser

/usr/bin/firefox
40
/usr/bin/google-chrome-stable
200
/usr/bin/vivaldi-stable
200

Modifiez maintenant facilement la priorité de chrome (200) par ce que vous voulez, puis enregistrez. (Je suis passé à 50)

vérifier les nouveaux paramètres

update-alternatives --query x-www-browser 
Link: x-www-browser
Status: auto
Best: /usr/bin/vivaldi-stable
Value: /usr/bin/google-chrome-stable

Alternative: /usr/bin/firefox
Priority: 40

Alternative: /usr/bin/google-chrome-stable
Priority: 50

Alternative: /usr/bin/vivaldi-stable
Priority: 200
Maythux
la source
3
Bien que cela résout mon problème, je trouve la solution d'AB beaucoup plus propre, car il modifie la valeur via l' update-alternativesinterface. Je préfère cette façon, car vous ne savez jamais quoi faire d'autre, sauf pour changer le fichier comme vous l'avez dit. Techniquement parlant, sa solution est plus simple car il n'utilise qu'une seule commande. Vous utilisez 1 commande pour ouvrir le fichier, mais vous devez modifier et enregistrer après cela, tout en faisant update-alternatives --installcela pour vous.
Peter Raeves
0

J'ai installé qutebrowser sur ~/.local/binlequel se trouve mon $PATH. J'avais mis le chemin complet vers l'exécutable, ce qui signifiait que je devais exécuter

sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser $HOME/.local/bin/qutebrowser 200

au lieu de n'utiliser qutebrowserque comme avant-dernier argument (car se update-alternativesplaignait que le chemin n'était pas absolu), puis

update-alternatives --config x-www-browser

EDIT: Je suis sur Debian Buster / Sid, HTH de toute façon. EDIT2: Raisonnement pourquoi j'ai dû spécifier le chemin d'accès complet à qutebrowser.

pylipp
la source
Pourriez-vous préciser en quoi votre réponse diffère de celle acceptée?
Marc Vanhoomissen
1
Essayez-vous de demander pourquoi vous avez dû utiliser le chemin complet pour qutebrowser?
Charles Green