Como posso configurar a sessão do OpenBox para abrir arquivos pelo tipo MIME?

5

Eu comecei a usar o OpenBox e realmente gostei.

Mas meu cromo abre tudo com o Firefox .

Existe alguma correção para isso? Estou procurando a solução mais leve, mas também com configuração fácil e rápida.

    
por kravemir 11.04.2012 / 21:32

1 resposta

1

O Chrome usa xdg-open para abrir arquivos desconhecidos. O problema com o script xdg-open é que tenta descobrir qual ambiente de área de trabalho você possui. Ele faz isso verificando

detectDE()
{
    if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde;
    elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome;
    elif xprop -root _DT_SAVE_MODE | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce;
    fi  
}

Como o Openbox não define nenhuma dessas variáveis $DE está vazio e uma abordagem genérica é usada.

Na versão 1.0 do xdg-utils , o comportamento padrão é semelhante a este

open_generic()
{
    IFS=":"
    for browser in $BROWSER; do
        if [ x"$browser" != x"" ]; then

            browser_with_arg='echo "$browser" | sed s#%s#"$1"#'

            if [ x"$browser_with_arg" = x"$browser" ]; then "$browser" "$1";
            else $browser_with_arg;
            fi  

            if [ $? -eq 0 ]; then exit_success;
            fi  
        fi  
    done

    exit_failure_operation_impossible "no method available for opening '$1'"
}

Você pode ver que ele tenta abrir tudo com $BROWSER . Quando $BROWSER não estiver definido, será definido como firefox:mozilla:netscape .

Portanto, o problema é que éter você precisa definir um DE, o que leva a novos problemas (como programas que tentam se conectar à sessão DE) ou você define seu $BROWSER para algo como exo-open , gnome-open ou kfmclient exec .

Um novo lançamento de xdg-open parece corrigir isso, mas parece leve para sempre.

Espero que isso ajude depois de tanto tempo.

    
por 09.07.2013 / 12:26