업무 중 하루에도 여러 번 특정 웹사이트를 방문하게 되는 경우가 많습니다. 브라우저를 열고 URL을 입력한 뒤 사이트가 로드되기를 기다려야 하죠. 그런데 이 웹사이트를 더블클릭 한 번으로 실행할 수 있는 데스크톱 앱으로 바꿀 수 있다면 어떨까요?
실제로 Nativefier라는 명령줄 유틸리티를 사용하면 원하는 웹사이트를 독립형 리눅스 앱으로 손쉽게 만들 수 있습니다. 지금부터 그 방법을 단계별로 알아보겠습니다.
리눅스에 Nativefier 설치하기
먼저 시스템에 NPM과 Nativefier를 설치해야 합니다. NPM이 아직 설치되어 있지 않다면, 리눅스에 NPM을 설치하는 상세 가이드를 먼저 참고하세요.
NPM 설정이 완료되었다면 이제 Nativefier를 설치할 차례입니다. 터미널을 열고 다음 명령어를 입력합니다:
npm install -g nativefier
-g 플래그는 global(전역)의 약자로, NPM에게 해당 패키지를 시스템 전체에 설치하도록 지시하는 옵션입니다.
사용 중인 리눅스 배포판이 snap을 지원한다면 Snap Store에서 Nativefier 스냅 패키지를 설치할 수도 있습니다:
sudo snap install nativefier
위 명령어를 실행하기 전에 시스템에 snap이 설치되어 있는지 먼저 확인하세요. 설치되어 있지 않다면 snap 설치 가이드를 참고해 준비해 두는 것이 좋습니다.
Arch 사용자라면 Yay를 통해 AUR(Arch User Repository)에서 Nativefier를 받을 수 있습니다:
yay -S nodejs-nativefier
다만 snap과 AUR 저장소는 꾸준히 관리되지 않는 경우가 많으므로, 가장 안정적인 NPM을 통한 설치를 권장합니다.
웹사이트를 데스크톱 앱으로 변환하기
Nativefier 사용법은 매우 간단합니다. 웹사이트용 데스크톱 앱을 만들려면 다음 명령어 형식을 사용하세요:
nativefier "https://www.example.com"
기본적으로 Nativefier는 웹사이트에 앱 이름을 자동으로 지정합니다. 원하는 이름을 직접 정하고 싶다면 --name 플래그를 사용하면 됩니다.
nativefier --name "Example Linux App" "www.example.com"
명령어를 실행하면 Nativefier가 앱 실행에 필요한 모든 파일이 담긴 폴더를 생성합니다. 해당 폴더로 이동하려면 cd 명령어를 사용하세요:
cd appdirname/
앱 폴더 이름을 잘 모르겠다면 ls 명령어로 상위 디렉터리의 내용을 확인해 보세요.
Nativefier는 생성된 앱 파일에 실행 권한을 자동으로 부여하므로 별도로 chmod를 할 필요가 없습니다. 다음 명령어 형식으로 바로 실행할 수 있습니다:
./appname
유틸리티와 관련된 명령줄 도움말이 필요하다면 다음을 입력하세요:
nativefier --help
웹사이트를 데스크톱 앱으로 만들면 좋은 이유
모든 사람이 자주 방문하는 웹사이트를 굳이 앱으로 만들 필요는 없습니다. 하지만 특정 사이트를 매일 반복해서 방문해야 하는 사용자라면, 몇 번의 클릭조차 업무 흐름을 방해하는 요소가 될 수 있습니다. 같은 동작을 계속 반복하지 않고 생산성을 유지하려면 웹사이트를 데스크톱 앱으로 만들어 두는 것이 큰 도움이 됩니다.
이는 리눅스에서 특정 작업에 단축키를 지정하거나 긴 명령어에 셸 별칭(alias)을 만드는 것과 같은 원리입니다. 결국 바탕화면에서 바로 실행할 수 있는 앱이 있다면 훨씬 편리하고, 클릭 몇 번을 아낄 수 있으며, 장기적으로는 상당한 시간 절약으로 이어집니다.
리눅스는 다른 운영체제보다 자유롭습니다
리눅스의 큰 장점 중 하나는 시스템의 마음에 들지 않는 부분이 있다면 언제든 다른 방식으로 바꿀 수 있다는 점입니다. 브라우저를 열고 웹사이트를 검색하는 일이 번거롭게 느껴진다면, 더 쉬운 방법인 키보드 단축키를 만들거나, 아니면 Nativefier로 완전한 데스크톱 앱을 만들어 해결할 수 있습니다.
리눅스에서 할 수 있는 일은 이것뿐이 아닙니다. 예를 들어 crontab으로 앱 실행 시간을 예약하거나, 시간대에 따라 배경화면을 자동으로 변경하는 스크립트를 만들거나, 하나의 시스템에 여러 데스크톱 환경을 설치하는 것도 가능합니다. 일부 작업은 Windows 같은 다른 운영체제에서도 쉽게 할 수 있지만, 나머지는 리눅스 생태계에서만 누릴 수 있는 고유한 기능입니다.