
단일 프로세스에 대한 기본 브라우저를 재정의해야 합니다. 이 프로세스는 npm 스크립트에서 수동으로 시작됩니다. 이를 프로그래밍 방식으로 달성하기 위해 BROWSER
스크립트 직전에 환경 변수를 재정의하기로 결정했습니다 . 그러나 그것은 작동하지 않습니다. 그것은 시스템 전체의 기본 브라우저를 훔칩니다. 으로 시도했지만 xdg-open
작동하지 않습니다.
간단히 말해서, 기본 브라우저가 아닌 제공된 브라우저에서 주어진 URL을 열고 다음 명령을 실행하고 싶습니다.
BROWSER='path to desired browser' xdg-open 'any url'
추신: 내 문제에 대해 조금 더 말씀드리고자 합니다. 나는 내 모든 컴퓨터의 기본 브라우저로 Firefox를 사용하고 있으며 꽤 익숙해졌습니다. 그러나 최근 한 웹 애플리케이션을 디버깅하면서 일부 중단 문자가 Firefox 개발 도구에서 사용되지 않는다는 것을 깨달았습니다. Chromium을 설치했는데 디버거가 예상대로 작동했습니다. 저는 개발을 위해 스토리북을 사용하고 있으며 일상적인 사용을 위해 Firefox를 기본 변수로 사용하면서 Chromium에서 열고 싶습니다.
답변1
비슷한 것이 필요했지만 잘못된 브라우저 프로필을 자주 사용하는 $BROWSER
상황 에 국한되지는 않았습니다.xdg-open
다음 구성 요소를 사용한 해결 방법은 다음과 같습니다.
BROWSER
변수를 로드하고 올바른 브라우저를 시작하는 스크립트입니다 ..desktop
현재 기본 프로필을 디렉터리에 복사하여 재정의합니다~/.local/share/applications
.- 사용자 정의 스크립트를 사용하도록 파일
Exec
의 명령문을 변경하십시오 ..desktop
BROWSER
대체 기능을 사용하려면 로그인 셸에서 변수를 정상적인 기본값으로 설정하세요 .
단계별
~/bin
내 디렉토리 에 custom-browser
다음과 같은 스크립트를 추가했습니다 .
$BROWSER "$@"
둘째, 다음을 사용하여 현재 .desktop
프로필을 찾습니다.
xdg-settings get default-web-browser
firefox.desktop
그러면 내 사용자 홈 디렉터리에 복사된 가 제공됩니다 .
cp /usr/share/applications/firefox.desktop ~/.local/share/applications/firefox.desktop
launch 에 Exec
대한 설명을 수정했습니다 .~/.local/share/applications/firefox.desktop
/home/{user}/bin/custom-browser
이제 다음을 사용할 수 있습니다.
BROWSER='chromium' xdg-open 'https://startpage.com'
BROWSER='firefox' xdg-open 'https://startpage.com'
변수 에 따라 다른 브라우저를 엽니다 BROWSER
. 이것이 어떤 식으로든 도움이 되기를 바랍니다.
나의 사용법
나는 사용한다direnv
BROWSER
[1] 디렉터리를 기반으로 변수를 설정합니다 . 예를 들어 작업 디렉터리는 내 브라우저의 작업 프로필을 사용합니다.
BROWSER=hardened-firefox signal-desktop
또 다른 방법은 앱이 특정 브라우저로 링크를 열도록 강제 로 앱을 실행하는 것입니다 .
노트
.desktop
파일이 환경변수를 불러오지 않기 때문에 스크립트가 필요하므로Exec=$BROWSER %u
직접 추가하는 것은 불가능합니다.BROWSER
로그인 셸 대신 스크립트에서 대체를 설정할 수 있습니다 .- 기본값을 재정의하는 대신 사용자 정의 파일을 작성하고 /를
.desktop
사용하여 기본값을 변경할 수 있습니다 . 나는 재정의를 통해 "올바른" 것을 얻는 것이 더 쉽다는 것을 알았습니다.xdg-settings
xdg-mime
- URL을 첫 번째 위치 매개변수로 사용하지 않는 브라우저를 사용하는 경우
.desktop
스크립트에서 이를 처리하고 사용자 정의하는 것이 더 쉬울 수 있습니다. .desktop
프로필이 에 없거나/usr/share/applications
재정의가$HOME/.local/share/applications
작동하지 않는 경우대체 경로[2] 또는 배포판 설명서를 참조하세요.
연결
답변2
export BROWSER='path to desired browser' && xdg-open 'any url'
트릭을해야합니다.