xdg-open url-handler를 Firefox로 변경할 수 없습니다

xdg-open url-handler를 Firefox로 변경할 수 없습니다

내 문제는 많은 프로그램이 xdg-open을 호출하여 웹 사이트를 열지만 내 Manjaro 시스템(Arch Linux 기반)에서는 이것이 어떻게든 컵과 연결되어 있다는 것입니다.

이런 xdg-open 호출이 발생하면 CPU 사용량이 많이 올라가는데 아무 일도 일어나지 않습니다. 노트북이 너무 빨리 뜨거워져서 재부팅했어요.

~ $ xdg-settings get default-web-browser
cups.desktop

변경하고 싶을 때 다음과 같은 응답을 받습니다.

~ $ xdg-settings set default-web-browser firefox.desktop
xdg-settings: $BROWSER is set and can't be changed with xdg-settings

브라우저의 환경 변수를 계속 변경할 수 있고 문제가 해결되었지만 이 터미널에만 해당됩니다. 이 변경 사항을 영구적으로 적용하거나 자동 시작에 추가하려면 어떻게 해야 합니까?

나는 사용하고 있습니다 : i3 4.12, fish shell

답변1

Chromium을 설치할 때마다 기본 브라우저로 설정되기 때문에 이 문제가 발생했습니다.

사용xdg-mime수리하다:

xdg-mime default firefox.desktop x-scheme-handler/https x-scheme-handler/http

내 Arch Linux 시스템에서는 ~/.config/mimeapps.listHTTP와 HTTPS를 Firefox와 연결하는 두 줄이 추가됩니다.

이제 Firefox와 Chromium을 모두 설치하고 Firefox를 기본 브라우저로 사용할 수 있습니다.

답변2

/etc/profile합계에서 BROWSER 변수를 확인하고 /etc/environment, 최종 확인은 ~/.bashrc이미 로 설정되어 있을 수 있으므로 /usr/bin/xdg-open재귀 호출을 피하기 위해 변경하는 것을 고려해야 합니다.

답변3

분명히 현재 쉘에서 이 변수를 설정하는 것을 xdg-settings좋아하지 않을 것입니다 . BROWSER그것을 제거하면 행복해질 것입니다:

~ $ unset BROWSER
~ $ xdg-settings set default-web-browser firefox.desktop

위의 첫 번째 명령은 해당 터미널의 변수만 변경하지만 두 번째 명령(대상)은 터미널 전체에 적용됩니다.

내 컴퓨터에서는 다음과 같이 보입니다.

~ $ grep -sch BROWSER /etc/* ~/.*rc | uniq
0

~ $ xdg-settings get default-web-browser
cups.desktop

~ $ xdg-settings set default-web-browser firefox.desktop

xdg-settings: $BROWSER is set and can't be changed with xdg-settings

~ $ (
  unset BROWSER
  xdg-settings set default-web-browser firefox.desktop
)

~ $ xdg-settings get default-web-browser
firefox.desktop

답변4

나에게 도움이 된 것은 파일을 편집하는 것이었습니다 ~/.config/mimeapps.list. 이는 앞서 언급한 xdg-mime 명령을 사용하여 뒤에서 수행하는 작업입니다. 장점은 어떤 것이 기본값이고 어떤 파일인지 쉽게 확인할 수 있다는 것입니다. 자세한 내용은:

  • 이 디렉토리에는 ~/.local/share/applicationsxdg-open에 "링크"할 수 있는 각 사용자 응용 프로그램에 대한 .desktop 파일이 포함되어 있습니다.
  • 앞서 언급했듯이 이러한 앱 중 하나를 원하는 파일 형식의 기본값으로 설정하려면 파일을 편집하세요.~/.config/mimeapps.list
  • 팁: 더 이상 사용되지 않지만 일부 애플리케이션은 여전히 ​​읽기/쓰기가 가능합니다 ~/.local/share/applications/mimeapps.list. 유지 관리를 단순화하려면 심볼릭 링크를 사용하세요.~/.config/mimeapps.list
  • 추가 정보 및 참고 자료

관련 정보