Computer >> 컴퓨터 >  >> 시스템 >> Linux

Arch Linux에서 Snap(스냅) 애플리케이션 설치하는 완벽 가이드

Arch Linux에서 Snap(스냅) 애플리케이션 설치하는 완벽 가이드

오랫동안 리눅스를 사용해 온 사용자라면 새로운 애플리케이션을 설치하는 것이 얼마나 번거로웠는지 기억할 것입니다. 인스톨러에 포함되어 있지 않은 경우, 보통 configure → make → make install 과정을 직접 거쳐야 했고, 그 과정에서 빠진 의존성 패키지를 일일이 찾아 헤매곤 했습니다. apt나 yum 같은 패키지 관리자가 등장하면서 상황은 한결 나아졌지만, 여전히 의존성 문제는 골칫거리였습니다.

바로 이런 문제들을 해결해 준다고 알려진 것이 Snap입니다. 흔히 Snap은 우분투 전용 기술이라고 오해하기 쉬운데, 다행히도 그렇지 않습니다.

Snap 애플리케이션이란?

Snap 애플리케이션, 이른바 '스냅(snaps)'은 배포판에 종속되지 않도록 설계되었습니다. 따라서 어떤 시스템에서 실행하더라도 동일하게 동작하는 것이 이상적인 목표입니다. 이를 위해 애플리케이션 실행에 필요한 대부분의 의존성과 런타임이 스냅 패키지 안에 함께 번들됩니다. 즉, 시스템에 Snap이 한 번 설정되어 있으면, 여러 의존성 패키지를 필요로 하는 앱도 훨씬 간편하게 설치할 수 있습니다.

Arch Linux에서 Snap(스냅) 애플리케이션 설치하는 완벽 가이드

Snap은 캐노니컬(Canonical)이 지원하는 기술이기 때문에 우분투와 함께 자주 언급되지만, 사실 모든 주요 리눅스 배포판에서 실행할 수 있도록 만들어졌습니다. Arch 역시 공식적으로 지원되는 배포판 중 하나이므로, Arch용으로 패키징되지 않은 앱을 실행하는 좋은 방법이 됩니다.

snapd 데몬 설치하기

시스템에 스냅 패키지를 설치하려면 먼저 snapd 데몬이 필요합니다. Snap이 Arch를 공식 지원하지만, Arch 공식 저장소가 아닌 AUR(Arch User Repository)를 통해 설치해야 합니다. 다행히 yaourt 같은 AUR 헬퍼 도구를 사용하면 어렵지 않게 설치할 수 있습니다.

Arch Linux에서 Snap(스냅) 애플리케이션 설치하는 완벽 가이드

먼저 아래 명령어로 snapd를 설치합니다.

yaourt -S snapd

다음으로 서비스를 활성화해야 합니다. 아래 명령어 한 줄이면 충분합니다.

systemctl enable --now snapd.socket

참고로 yaourt는 현재 개발이 중단된 프로젝트이므로, 최신 환경에서는 yay나 paru 같은 유지보수 중인 AUR 헬퍼를 사용하는 것이 좋습니다. 이 경우 yay -S snapd처럼 동일한 방식으로 설치할 수 있습니다.

Snap 애플리케이션 설치하기

Snap 설치가 끝났다면, 다른 패키지 관리자를 사용하듯 손쉽게 패키지를 관리할 수 있습니다. 예를 들어 특정 애플리케이션을 설치하려면 다음 명령어를 실행합니다.

snap install application-name

현재 시스템에 설치된 스냅 목록을 확인하려면 다음을 입력합니다.

snap list

패키지를 검색하고 싶다면 아래 명령어로 해당 패키지의 존재 여부를 확인할 수 있습니다.

snap find searchterm
Arch Linux에서 Snap(스냅) 애플리케이션 설치하는 완벽 가이드

마지막으로 패키지를 제거할 때는 다음 명령어를 사용합니다.

snap remove application-name

알아두면 좋은 Snap 활용 팁

Snap 애플리케이션은 기본적으로 자동 업데이트되지만, 수동으로 모든 앱을 업데이트하고 싶다면 다음 명령어를 실행하세요.

snap refresh

일부 스냅은 기본 경로인 '/var/lib/snapd/snap' 대신 '/snap' 경로에 설치됩니다. 이런 '클래식 스냅(classic snaps)'을 지원하려면 아래 명령어로 심볼릭 링크를 생성하면 됩니다.

ln -s /var/lib/snapd/snap /snap

이제 해당 애플리케이션들도 정상적으로 설치하고 실행할 수 있으며, 다른 스냅 패키지들과 함께 관리됩니다. 두 가지 장점을 모두 누릴 수 있을 뿐만 아니라, 파일시스템 계층 표준(Filesystem Hierarchy Standard)에도 부합합니다.

마무리

Snap이 이런 종류의 유일한 기술은 아닙니다. Flatpak과 AppImage도 비슷한 문제를 해결하기 위해 등장한 패키지 시스템입니다. 다만 우분투라는 든든한 후원 덕분에 Snap이 현재까지는 이 형식들 중 가장 널리 쓰이는 편입니다.

그렇다면 Snap이 가장 뛰어난 선택일까요? 저희는 지난번에 Snap과 Flatpak을 직접 비교해 보며 어느 쪽이 더 나은지 살펴본 바 있습니다. 관심이 있다면 해당 비교 글도 함께 확인해 보시길 권합니다.