From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.bugs Subject: bug#9779: No usable browser found on Lubuntu Date: Tue, 18 Oct 2011 09:55:03 +0300 Organization: JURTA Message-ID: <87y5wi3i0s.fsf@mail.jurta.org> References: <87mxczb480.fsf@mail.jurta.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1318922122 21091 80.91.229.12 (18 Oct 2011 07:15:22 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 18 Oct 2011 07:15:22 +0000 (UTC) Cc: 9779@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Oct 18 09:15:17 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RG3tI-0002CJ-DD for geb-bug-gnu-emacs@m.gmane.org; Tue, 18 Oct 2011 09:15:12 +0200 Original-Received: from localhost ([::1]:56596 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RG3tH-0001ss-5J for geb-bug-gnu-emacs@m.gmane.org; Tue, 18 Oct 2011 03:15:11 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:52886) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RG3tE-0001rD-Lr for bug-gnu-emacs@gnu.org; Tue, 18 Oct 2011 03:15:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RG3tD-0000Gu-GD for bug-gnu-emacs@gnu.org; Tue, 18 Oct 2011 03:15:08 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:50107) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RG3tD-0000Gc-C3 for bug-gnu-emacs@gnu.org; Tue, 18 Oct 2011 03:15:07 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1RG3u6-0004VU-9F for bug-gnu-emacs@gnu.org; Tue, 18 Oct 2011 03:16:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Juri Linkov Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 18 Oct 2011 07:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 9779 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 9779-submit@debbugs.gnu.org id=B9779.131892212216510 (code B ref 9779); Tue, 18 Oct 2011 07:16:02 +0000 Original-Received: (at 9779) by debbugs.gnu.org; 18 Oct 2011 07:15:22 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1RG3tR-0004Hk-Qo for submit@debbugs.gnu.org; Tue, 18 Oct 2011 03:15:22 -0400 Original-Received: from smarty.dreamhost.com ([208.113.175.8]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1RG3tN-0004Ba-3f for 9779@debbugs.gnu.org; Tue, 18 Oct 2011 03:15:19 -0400 Original-Received: from ps18281.dreamhostps.com (ps18281.dreamhost.com [69.163.218.105]) by smarty.dreamhost.com (Postfix) with ESMTP id 86DA26E806A; Tue, 18 Oct 2011 00:14:20 -0700 (PDT) Original-Received: from localhost (ps18281.dreamhostps.com [69.163.218.105]) by ps18281.dreamhostps.com (Postfix) with ESMTP id 763FFAAB4B63; Tue, 18 Oct 2011 00:14:19 -0700 (PDT) In-Reply-To: (Stefan Monnier's message of "Mon, 17 Oct 2011 21:53:39 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.90 (x86_64-pc-linux-gnu) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Tue, 18 Oct 2011 03:16:02 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:52768 Archived-At: > Better would be if we can use xdg-open. Could you check if xdg-open > works, and if so, how to adjust browse-url-can-use-xdg-open accordingly? `browse-url-can-use-xdg-open' returns nil. Below are expressions from this function and results of their evaluation: (getenv "DISPLAY") => ":0" (executable-find "xdg-open") => "/usr/bin/xdg-open" (executable-find "nohup") => "/usr/bin/nohup" (getenv "GNOME_DESKTOP_SESSION_ID") => nil (call-process "dbus-send" nil nil nil "--dest=org.gnome.SessionManager" "--print-reply" "/org/gnome/SessionManager" "org.gnome.SessionManager.CanShutdown") => 1 (getenv "KDE_FULL_SESSION") => nil (call-process "/bin/sh" nil nil nil "-c" "xprop -root _DT_SAVE_MODE|grep xfce4") => 1 The latest is used to check for Xfce4, but it doesn't work for LXDE, and I can't find a reliable value specific to LXDE or Lubuntu in the output of `xprop -root' or among environment variables. There are two desktop session modes: "Lubuntu" (with look&feel of Ubuntu) and "LXDE" (pure LXDE desktop). Some relevant environment variables when logged in as "Lubuntu": DEFAULTS_PATH=/usr/share/gconf/Lubuntu.default.path DESKTOP_SESSION=Lubuntu GTK_MODULES=canberra-gtk-module:canberra-gtk-module SAL_USE_VCLPLUGIN=gtk UPSTART_JOB=lxdm XDG_CONFIG_DIRS=/etc/xdg/lubuntu/:/etc/xdg/xdg-Lubuntu:/etc/xdg:/etc/xdg XDG_CURRENT_DESKTOP=LXDE XDG_MENU_PREFIX=lxde- Some relevant environment variables when logged in as "LXDE": DEFAULTS_PATH=/usr/share/gconf/LXDE.default.path DESKTOP_SESSION=LXDE GTK_MODULES=canberra-gtk-module:canberra-gtk-module SAL_USE_VCLPLUGIN=gtk UPSTART_JOB=lxdm XDG_CONFIG_DIRS=/etc/xdg/xdg-LXDE:/etc/xdg XDG_CURRENT_DESKTOP=LXDE XDG_MENU_PREFIX=lxde- The value of "DESKTOP_SESSION" looks like an arbitrary name of the current session (the same string as displayed on the Login menu). It seems that "XDG_CURRENT_DESKTOP" is the most reliable variable to determine whether the current desktop is LXDE. So I propose the following patch (that also adds a missing customizable option for `browse-url-xdg-open' in `browse-url-browser-function'): === modified file 'lisp/net/browse-url.el' --- lisp/net/browse-url.el 2011-08-21 01:01:12 +0000 +++ lisp/net/browse-url.el 2011-10-18 06:54:01 +0000 @@ -247,6 +249,8 @@ (defcustom browse-url-browser-function :value browse-url-default-windows-browser) (function-item :tag "Default Mac OS X browser" :value browse-url-default-macosx-browser) + (function-item :tag "Preferred by xdg-open from Free Desktop" + :value browse-url-xdg-open) (function-item :tag "GNOME invoking Mozilla" :value browse-url-gnome-moz) (function-item :tag "Default browser" @@ -924,7 +946,7 @@ (defun browse-url-default-browser (url & url args)) (defun browse-url-can-use-xdg-open () - "Check if xdg-open can be used, i.e. we are on Gnome, KDE or xfce4." + "Check if xdg-open can be used, i.e. we are on Gnome, KDE, Xfce4 or LXDE." (and (getenv "DISPLAY") (executable-find "xdg-open") ;; xdg-open may call gnome-open and that does not wait for its child @@ -947,7 +969,8 @@ (defun browse-url-can-use-xdg-open () "/bin/sh" nil nil nil "-c" "xprop -root _DT_SAVE_MODE|grep xfce4")) - (error nil))))) + (error nil)) + (equal (getenv "XDG_CURRENT_DESKTOP") "LXDE"))))