LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Change KDE's default browser (https://www.linuxquestions.org/questions/linux-software-2/change-kdes-default-browser-166338/)

objorkum 04-05-2004 03:15 AM

Change KDE's default browser
 
What is the best way to replace KDE's default browser settings (which is Konqueror) to Opera?

Apps like KMail and other QT apps always uses KDE's default...

objorkum 04-05-2004 10:47 AM

Someone MUST know this!

How to change KDE's default webbrowser?

jib2 04-05-2004 11:20 AM

change file associations in kde control :
find text/html then move opera on top of the list

objorkum 04-05-2004 12:15 PM

Quote:

Originally posted by jib2
change file associations in kde control :
find text/html then move opera on top of the list

Thanks!

It's a bit strange, that text/html is for .htm and .html files, but it decides the default browser, when just clicking an URL like www.linuxquestions.org, without any .html

deloptes 04-06-2004 06:50 PM

i was wondoring recently too - and no body tells how to do it?!

well I found out it's very simple

go

1. Settings => Control Center

2. KDE Components => File Associations

3. (at the rigth side) Known FileTypes => text => html

4. move mozilla up (1.st place)

5. click on the name (EDIT lights)

6. click edit

7. properties of mozilla => execute
Under command enter
/usr/local/bin/mozilla %u
or whatever your mozilla is installed under

8. click "Apply"

now it's the default

N.B. when you click on a link and you have mozilla opened it prompts that mozilla is running and asks to start under different user

you can say "work offline" + "don't ask again" and it works fine

regards

DaveQB 04-07-2004 04:16 AM

I have a few systems where i use KDE i have never been able to change the default browser to something other then konqueror.

Followed instructions above (i previously never added %u part)

but still konqueror gets openning upon links being accessed.

It doesnt make sense if konqueror isnt in the 1st position (of prority)
firefox doesnt even appear to get a look in, just straight to konqueror we go.

Do i need to restart KDE for these changes to take an effect ??

thanx

deloptes 04-07-2004 12:36 PM

You have to register mozilla in your file type registry first - how?

1. rigth click on some html document
2. second option from below "Edit File Type ..."
3. "Add ..."
than choose the path to mozilla (my one is under /usr/local/bin/mozilla)
4. optionally select an associated icon to the program, by clicking on the icon space
5. you can use this menu to place mozilla on top
6. don't forget the %u (it say url)

you should probably restart the file-browser so the settings take effect. I'm not quite sure, but at least with kde-3.1 I had to do this.

Now it should work.

unfortunately if you have mozilla open you are prompted to use another profile...

I will write a script but first I'll test the debian wrapper, as there is an option to open the link in the already started mozilla ;-)

stay online

deloptes 04-07-2004 01:18 PM

I found out that this script works for me

change the variables as I did

1 the original
2 my one

it's perfect, now I am really satisfied!

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Mozilla shell wrapper otiginal

Code:


#!/bin/sh
#
# The contents of this file are subject to the Netscape Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/NPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is Netscape
# Communications Corporation.  Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#

##
## Usage:
##
## $ mozilla
##
## This script is meant to run a mozilla program from the mozilla
## rpm installation.
##
## The script will setup all the environment voodoo needed to make
## mozilla work.

VERSION=1.5

# Bug#122990
TERM=xterm
export TERM

cmdname=`basename $0`

## don't leave any core files around
ulimit -c 0

##
## Variables
##
MOZ_DIST_BIN="/usr/lib/mozilla"
MOZ_PROGRAM="/usr/lib/mozilla/mozilla-bin"
MOZ_CLIENT_PROGRAM="/usr/lib/mozilla/mozilla-xremote-client"

##
## find /dev/dsp handler
##
if [ -f $HOME/.mozillarc ]; then
    . $HOME/.mozillarc
elif [ -f /etc/mozilla/mozillarc ]; then
    . /etc/mozilla/mozillarc
fi

if [ -z  $MOZILLA_DSP ]; then
    MOZILLA_DSP="auto"
fi

if [ "$MOZILLA_DSP" = "auto" ]; then
        MOZILLA_DSP=""
        P=`fuser /dev/dsp  | sed -e 's#^/dev/dsp:##' `
        if [ -n "$P" ]; then
                if echo $P | xargs ps -p | grep esd >/dev/null 2>&1; then MOZILLA_DSP=esddsp;
                elif echo $P | xargs ps -p | grep arts >/dev/null 2>&1; then MOZILLA_DSP=artsdsp; fi
        fi
elif [ "$MOZILLA_DSP" = "none" ];then
        MOZILLA_DSP=""
fi

if type $MOZILLA_DSP > /dev/null 2>&1; then
        # echo "Using $MOZILLA_DSP."
        MOZ_PROGRAM="$MOZILLA_DSP $MOZ_PROGRAM"
fi

##
## Set MOZILLA_FIVE_HOME
##
MOZILLA_FIVE_HOME="/usr/lib/mozilla"

export MOZILLA_FIVE_HOME

##
## Set LD_LIBRARY_PATH
##
if [ "$LD_LIBRARY_PATH" ]
then
  LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib:$LD_LIBRARY_PATH
else
  LD_LIBRARY_PATH=/usr/lib/mozilla:/usr/lib/mozilla/plugins:/usr/lib
fi

export LD_LIBRARY_PATH

##
## Set FONTCONFIG_PATH for Xft/fontconfig
##
# disabled on debian
#FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft"
#export FONTCONFIG_PATH

# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.

set_jvm_vars () {

    if [ ! -L /usr/lib/mozilla/plugins/libjavaplugin_oji.so ]; then
        return;
    fi

    JVM_LINK=`perl -e 'print readlink("/usr/lib/mozilla/plugins/libjavaplugin_oji.so")'`

    # is it relative?  if so append the full path

    echo "${JVM_LINK}" | grep -e "^/" 2>&1 > /dev/null

    if [ "$?" -ne "0" ]; then
        JVM_LINK=/usr/lib/mozilla/plugins/${JVM_LINK}
    fi

    JVM_BASE=`basename $JVM_LINK`
    JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g`
    JVM_COMMAND=$JVM_DIR/java
    if [ ! -r $JVM_COMMAND ]; then
      JVM_DIR=${JVM_DIR}../../../bin/
      JVM_COMMAND=$JVM_DIR/java
      # does the command exist?
      if [ ! -r "$JVM_COMMAND" ]; then
          return
      fi
    fi

    # export this temporarily - it seems to work with old and new
    # versions of the JVM.
    export LD_ASSUME_KERNEL=2.2.5

    # get the version
    JVM_VERSION=`$JVM_COMMAND -version 2>&1 | grep version | cut -f 3 -d " " | sed -e 's/\"//g'`

    unset LD_ASSUME_KERNEL

    case "$JVM_VERSION" in
        (1.3.0*)
        # bad JVM
        export LD_ASSUME_KERNEL=2.2.5
        ;;
    esac
}

check_running () {
    $MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null
    RETURN_VAL=$?
    if [ "$RETURN_VAL" -eq "2" ]; then
      echo 0
      return 0
    else
      echo 1
      return 1
    fi
}

open_mail () {
    if [ "${ALREADY_RUNNING}" -eq "1" ]; then
      exec $MOZ_CLIENT_PROGRAM 'xfeDoCommand(openInbox)' \
        2>/dev/null >/dev/null
    else
      exec $MOZ_PROGRAM $*
    fi
}

open_compose () {
    if [ "${ALREADY_RUNNING}" -eq "1" ]; then
      exec $MOZ_CLIENT_PROGRAM 'xfeDoCommand(composeMessage)' \
        2>/dev/null >/dev/null
    else
      exec $MOZ_PROGRAM $*
    fi
}

# OK, here's where all the real work gets done

# set our JVM vars
set_jvm_vars

# check to see if there's an already running instance or not
ALREADY_RUNNING=`check_running`

# If there is no command line argument at all then try to open a new
# window in an already running instance.
if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then
  exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null
fi

# if there's no command line argument and there's not a running
# instance then just fire up a new copy of the browser
if [ -z "$1" ]; then
  exec $MOZ_PROGRAM 2>/dev/null >/dev/null
fi

unset RETURN_VAL

# If there's a command line argument but it doesn't begin with a -
# it's probably a url.  Try to send it to a running instance.

USE_EXIST=0
opt="$1"
case "$opt" in
  -mail)
      open_mail ${1+"$@"}
      ;;
  -compose)
      open_compose ${1+"$@"}
      ;;
  -*) ;;
  *) USE_EXIST=1 ;;
esac

if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then
  # check to make sure that the command contains at least a :/ in it.
  echo $opt | grep -e ':/' 2>/dev/null > /dev/null
  RETURN_VAL=$?
  if [ "$RETURN_VAL" -eq "1" ]; then
    # if it doesn't begin with a '/' and it exists when the pwd is
    # prepended to it then append the full path
    echo $opt | grep -e '^/' 2>/dev/null > /dev/null
    RETURN_VAL=$?
    if [ "${RETURN_VAL}" -ne "0" ] && [ -e `pwd`/$opt ]; then
      opt="`pwd`/$opt"
    fi
    exec $MOZ_CLIENT_PROGRAM "openurl($opt,new-window)" 2>/dev/null >/dev/null
  fi
  # just pass it off if it looks like a url
  exec $MOZ_CLIENT_PROGRAM "openurl($opt,new-window)" 2>/dev/null >/dev/null
fi

exec $MOZ_PROGRAM ${1+"$@"}



NOw this is my one

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Mozilla shell wraper for me


Code:


#!/bin/sh
#
# The contents of this file are subject to the Netscape Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/NPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is Netscape
# Communications Corporation.  Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#

##
## Usage:
##
## $ mozilla
##
## This script is meant to run a mozilla program from the mozilla
## rpm installation.
##
## The script will setup all the environment voodoo needed to make
## mozilla work.

MOZ_PROGRAM="/usr/local/mozilla/mozilla-bin"
VERSION=`$MOZ_PROGRAM --version | awk '{print $2}' | sed -e 's/,$//' `

# Bug#122990
TERM=xterm
export TERM

cmdname=`basename $0`

## don't leave any core files around
ulimit -c 0

##
## Variables
##
MOZ_DIST_BIN="/usr/local/mozilla"
MOZ_CLIENT_PROGRAM="/usr/local/mozilla/mozilla-xremote-client"

##
## find /dev/dsp handler
##
if [ -f $HOME/.mozillarc ]; then
    . $HOME/.mozillarc
elif [ -f /etc/mozilla/mozillarc ]; then
    . /etc/mozilla/mozillarc
fi

if [ -z  $MOZILLA_DSP ]; then
    MOZILLA_DSP="auto"
fi

if [ "$MOZILLA_DSP" = "auto" ]; then
        MOZILLA_DSP=""
        P=`fuser /dev/dsp  | sed -e 's#^/dev/dsp:##' `
        if [ -n "$P" ]; then
                if echo $P | xargs ps -p | grep esd >/dev/null 2>&1; then MOZILLA_DSP=esddsp;
                elif echo $P | xargs ps -p | grep arts >/dev/null 2>&1; then MOZILLA_DSP=artsdsp; fi
        fi
elif [ "$MOZILLA_DSP" = "none" ];then
        MOZILLA_DSP=""
fi

if type $MOZILLA_DSP > /dev/null 2>&1; then
        # echo "Using $MOZILLA_DSP."
        MOZ_PROGRAM="$MOZILLA_DSP $MOZ_PROGRAM"
fi

##
## Set MOZILLA_FIVE_HOME
##
MOZILLA_FIVE_HOME="$MOZ_DIST_BIN"

export MOZILLA_FIVE_HOME

##
## Set LD_LIBRARY_PATH
##
if [ "$LD_LIBRARY_PATH" ]
then
  LD_LIBRARY_PATH=$MOZ_DIST_BIN:$MOZ_DIST_BIN/plugins:/usr/lib:$LD_LIBRARY_PATH
else
  LD_LIBRARY_PATH=$MOZ_DIST_BIN:$MOZ_DIST_BIN/plugins:/usr/lib
fi

export LD_LIBRARY_PATH

##
## Set FONTCONFIG_PATH for Xft/fontconfig
##
# disabled on debian
#FONTCONFIG_PATH="/etc/fonts:${MOZILLA_FIVE_HOME}/res/Xft"
#export FONTCONFIG_PATH

# Figure out if we need to ser LD_ASSUME_KERNEL for older versions of the JVM.

set_jvm_vars () {

    if [ ! -L $MOZ_DIST_BIN/plugins/libjavaplugin_oji.so ]; then
        return;
    fi

    JVM_LINK=`perl -e 'print readlink("$MOZ_DIST_BIN/plugins/libjavaplugin_oji.so")'`

    # is it relative?  if so append the full path

    echo "${JVM_LINK}" | grep -e "^/" 2>&1 > /dev/null

    if [ "$?" -ne "0" ]; then
        JVM_LINK=$MOZ_DIST_BIN/plugins/${JVM_LINK}
    fi

    JVM_BASE=`basename $JVM_LINK`
    JVM_DIR=`echo $JVM_LINK | sed -e s/$JVM_BASE//g`
    JVM_COMMAND=$JVM_DIR/java
    if [ ! -r $JVM_COMMAND ]; then
      JVM_DIR=${JVM_DIR}../../../bin/
      JVM_COMMAND=$JVM_DIR/java
      # does the command exist?
      if [ ! -r "$JVM_COMMAND" ]; then
          return
      fi
    fi

    # export this temporarily - it seems to work with old and new
    # versions of the JVM.
    export LD_ASSUME_KERNEL=2.2.5

    # get the version
    JVM_VERSION=`$JVM_COMMAND -version 2>&1 | grep version | cut -f 3 -d " " | sed -e 's/\"//g'`

    unset LD_ASSUME_KERNEL

    case "$JVM_VERSION" in
        (1.3.0*)
        # bad JVM
        export LD_ASSUME_KERNEL=2.2.5
        ;;
    esac
}

check_running () {
    $MOZ_CLIENT_PROGRAM 'ping()' 2>/dev/null >/dev/null
    RETURN_VAL=$?
    if [ "$RETURN_VAL" -eq "2" ]; then
      echo 0
      return 0
    else
      echo 1
      return 1
    fi
}

open_mail () {
    if [ "${ALREADY_RUNNING}" -eq "1" ]; then
      exec $MOZ_CLIENT_PROGRAM 'xfeDoCommand(openInbox)' \
        2>/dev/null >/dev/null
    else
      exec $MOZ_PROGRAM $*
    fi
}

open_compose () {
    if [ "${ALREADY_RUNNING}" -eq "1" ]; then
      exec $MOZ_CLIENT_PROGRAM 'xfeDoCommand(composeMessage)' \
        2>/dev/null >/dev/null
    else
      exec $MOZ_PROGRAM $*
    fi
}

# OK, here's where all the real work gets done

# set our JVM vars
set_jvm_vars

# check to see if there's an already running instance or not
ALREADY_RUNNING=`check_running`

# If there is no command line argument at all then try to open a new
# window in an already running instance.
if [ "${ALREADY_RUNNING}" -eq "1" ] && [ -z "$1" ]; then
  exec $MOZ_CLIENT_PROGRAM "xfeDoCommand(openBrowser)" 2>/dev/null >/dev/null
fi

# if there's no command line argument and there's not a running
# instance then just fire up a new copy of the browser
if [ -z "$1" ]; then
  exec $MOZ_PROGRAM 2>/dev/null >/dev/null
fi

unset RETURN_VAL

# If there's a command line argument but it doesn't begin with a -
# it's probably a url.  Try to send it to a running instance.

USE_EXIST=0
opt="$1"
case "$opt" in
  -mail)
      open_mail ${1+"$@"}
      ;;
  -compose)
      open_compose ${1+"$@"}
      ;;
  -*) ;;
  *) USE_EXIST=1 ;;
esac

if [ "${USE_EXIST}" -eq "1" ] && [ "${ALREADY_RUNNING}" -eq "1" ]; then
  # check to make sure that the command contains at least a :/ in it.
  echo $opt | grep -e ':/' 2>/dev/null > /dev/null
  RETURN_VAL=$?
  if [ "$RETURN_VAL" -eq "1" ]; then
    # if it doesn't begin with a '/' and it exists when the pwd is
    # prepended to it then append the full path
    echo $opt | grep -e '^/' 2>/dev/null > /dev/null
    RETURN_VAL=$?
    if [ "${RETURN_VAL}" -ne "0" ] && [ -e `pwd`/$opt ]; then
      opt="`pwd`/$opt"
    fi
    exec $MOZ_CLIENT_PROGRAM "openurl($opt,new-window)" 2>/dev/null >/dev/null
  fi
  # just pass it off if it looks like a url
  exec $MOZ_CLIENT_PROGRAM "openurl($opt,new-window)" 2>/dev/null >/dev/null
fi

exec $MOZ_PROGRAM ${1+"$@"}


gerryggg 07-04-2007 09:27 PM

Change default browser
 
I was having the same problem. I use Ice Weasel, but even though every time it started I clicked on the dialog to make it the default browser, Konqueror remained the default. Then someone in another thread gave me the tip that allowed me to change it. Log on as root, or as a super user and from the root, run the following:

debian2:/# update-alternatives --config x-www-browser

It should produce an output that gives you all the browsers installed on your computer and allow you to choose which one you want. On my system I got this:

There are 2 alternatives which provide `x-www-browser'.

Selection Alternative
-----------------------------------------------
* 1 /usr/bin/iceweasel
+ 2 /usr/bin/konqueror

Press enter to keep the default[*], or type selection number:

This is the results after I ran the command. You can see that Iceweasel is now the default.

Hope this helps. I'm running Debian 4 with KDE as the default desktop.


All times are GMT -5. The time now is 08:10 AM.