아치리눅스 설치 과정 26 - AUR Helper 선택, pamac 구글크롬 설치
이전 글(아치리눅스 설치 과정 25 - AUR 개념, 구글크롬 수동 설치 방법(연습))에 이어...
사실, AUR 패키지를 "수동 관리"했을 때 진짜로 불편한 점은... 설치할 AUR 패키지의 의존성 패키지들까지 AUR에서 받아야 되는 경우입니다. 아래 스크린샷에서 확인할 수 있습니다.
▲ pacman 저장소에 의존성패키지가 없으면 의존성 패키지를 AUR에서 수동으로 받아 설치해야만 메인패키지 설치로 넘어갈 수 있는데, 이것이 꼬리에 꼬리를 물고 늘어지면 에너지 소모가 상당하겠지요? 그래서 우리는 AUR 패키지 설치/업그레이드를 "자동 처리"하는 도구를 설치할 필요가 있습니다.
AUR 패키지 컴파일 설치/업그레이드를 자동으로 처리해주는 도구를 AUR Helper라고 하더군요.
https://wiki.archlinux.org/title/AUR_helpers
종류들이 많고, 그래서 분류가 나뉘어 있었습니다. 검색과 다운로드만 수행하는 도구(Search and download) / 검색과 빌드만 수행하는 도구(Search and build) / pacman처럼 명령어 입력만으로 설치까지 해주는 도구(Pacman wrappers) 등으로 구분되어 있더군요. 아치리눅스 AUR에 대해서 검색하다 보면 yay, yourt 같은 명령어들이 언급될 텐데요, 이것들이 바로 Pacman wrappers에 속하는 겁니다.
Pacman wrappers를 쓰면 불안전(unsafe) 버전 유입으로 인한 결함을 야기할 수 있는 단점이 있으나(Pacman wrappers의 Warning 부분 참고), 편의성이 너무 좋기 때문에 감수하고 사용하는 경향이 있습니다. 이전 글을 읽고 넘어온 분이라면 AUR 패키지 수동설치/제거 방법을 익히셨을 테니, 팩맨 랩퍼의 한계점 때문에 팩맨 랩퍼 도입을 망설이진 않을 것이라 생각합니다.
AUR Helper 선택 + CLI 기반 yay 설치
▼ 그런데... 커맨드라인 기반에서 돌아가는 Pacman wrappers의 종류가 너무 많더군요. ㅠㅠ
https://www.maketecheasier.com/aur-helpers-for-arch-linux
https://www.youtube.com/watch?v=CpOZ71KouuE
▲ 저는 yay만 들어봤는데, Paru / Yay / Pikaur 정도가 인기 있는 것 같습니다. Rust / GO / Python 등 많이 알려진 언어로 작성된 도구여서 그런 듯한데.. yay는 pacman과 옵션 사용법이 같아서, paru는 컴파일 속도가 빨라서 지지를 얻고 있는 것 같습니다.
▲ Votes, Popularity를 기준으로 보면 yay가 안정적인 선택일 것 같더군요.
아치리눅스는 커맨드라인 인터페이스에서 출발하여 단계적으로 쌓아 올리는 배포판인만큼, CLI 기반의 AUR Helper를 하나쯤은 설치해 두는 것이 좋다고 봅니다. 저는 안정성을 추구하기 때문에 yay를 선택할게요.
설치 과정을 대략적으로 적으면 이렇습니다(개념 파악).
- AUR 소스 주소 확보
- AUR 소스 다운로드할 디렉토리로 이동
- AUR 소스 다운로드
- 빌드 & 설치
권한 확인 & 권한 설정 같은 것은 중간중간 알아서 확인해 가면서 처리하면 됩니다. 기법은 이전 글에 전부 적어 뒀으니 필요시 참고하시고, 이제부터 본격적으로 yay 설치를 진행하겠습니다.
https://aur.archlinux.org/packages/yay
▲ 들어갑니다.
▲ Git Clone URL을 복사합니다.
▼ AUR 소스 다운로드할 디렉토리를 만들고 이동합니다.
▲ cd /usr/local/src
sudo mkdir aur
cd aur
해당 디렉토리 권한은 현재 로그인한 계정/그룹과 일치시키면 좋은데,
여건이 안되면 AUR 소스 다운로드 후에 확인/처리하면 됩니다.
▼ AUR 소스를 다운로드 합니다.
▲ sudo git clone https://aur.archlinux.org/yay.git
▼ 생성된 pacmac-all 디렉토리의 소유자/소유그룹을 확인하고, 내부 파일들까지 현재 로그인한 소유자/소유그룹으로 바꿉니다.
▲ ls -al
sudo chown -R aaa:aaa yay
▼ yay 디렉토리 진입 후, 빌드&설치합니다.
▲ cd yay
makepkg -si
(go는 의존성 패키지입니다. 당황하지 말고 y 눌러서 진행하세요.
go 설치가 끝나면 이어서 yay가 설치됩니다.)
yay 설치가 끝났습니다.
▲ yay 작동 테스트. pacman에서 추가되는 옵션들이 있긴 하겠지만 기본적인 옵션 사용법은 pacman과 100% 동일합니다. pacman에는 sudo를 붙여야 하지만, yay는 붙이지 않습니다.
GUI 기반 pamac-all 설치
커맨드라인 인터페이스에 익숙하면 yay를 설치하고 끝냈을 테지만, 저는 GUI가 더 익숙해서 GUI 기반 AUR Helper(중에서도 Pacman Wrapper)를 추가로 설치할 것입니다.
▲ ① GUI 기반 AUR Helper도 종류가 많습니다. Octopi는 전통적으로 지지를 받아 왔던 도구입니다. 지금도 굉장히 안정적이고, 아치리눅스 저장소와 AUR(via yay)만 지원합니다.
② Pamac은 만자로 리눅스 개발팀에서 밀고 있는 도구인데, 아치리눅스 저장소와 AUR만 지원합니다. 하지만 파생 상품 중에서 snap / flatpak까지 지원하는 것이 있습니다.
③
https://itsfoss.com/arch-linux-gui-package-managers
위 기사의 댓글에 Bauh라는 것도 언급이 되었더군요.
https://github.com/vinifmor/bauh
(currently supports the following formats: AppImage, Debian and Arch Linux packages (including AUR), Flatpak, Snap and Web applications.) => 와... 좋네요!
octopi, Bauh는 yay와 연계해서 AUR을 처리하는 것 같고, Pamac은 yay 없이 스스로 AUR을 처리하는 것 같습니다.
저는 AUR, Flatpak, Snap을 모두 지원하는 Pamac 파생상품으로 가겠습니다. Bauh는 좋은 평가가 누적되면 전환을 고려할 계획입니다.
▲ 이미지 출처 : https://aur.archlinux.org/packages?O=0&SeB=nd&K=pamac&SB=v&SO=d
위 스샷에서 보듯이, pamac 검색 후 Votes 순으로 정렬하면 상위에 pamac-aur, pamac-all이 나오는 것을 확인할 수 있는데... pamac-aur은 pacman/aur만 지원하지만 투표 수가 많고, pamac-all은 snap, flatpak까지 지원하지만 투표수가 적습니다. pamac-all이 바로 pamac 파생상품입니다.
Votes/Popularity를 봤을 때 pamac-aur이 오래 살아남을 가능성이 커보이나, 저는 pamac-all이 더 좋습니다. 문제 생기면 수동으로 pamac-all 패키지 제거하고 다른 것으로 바꾸지요 뭐.ㅠㅠ
yay 깔려 있으니, 기분 좋게 yay로 pamac-all 설치해 볼까요?
설치/빌드되는 패키지들이 많아서 시간이 많이 걸리는 작업입니다. 느긋한 마음으로 진행하시길.
▼ yay -S pamac-all
▲ cleanBuild할 패키지는 무엇인가요? | 1,2,3은 AUR에서 끌어 오는 의존성 패키지들입니다. A 입력해서 전부 설치해야 되는데, 입력값이 안 먹힐 수 있습니다. 엔터 치세요. 그러면 A 입력한 것과 같은 효과가 납니다.
변경사항(Diff)을 표시할까요? | 이것은 크게 중요치 않습니다. n(안함)을 선택하든 엔터를 치든 마음대로 하세요. 저는 n 눌렀습니다.
https://forum.endeavouros.com/t/make-dependencies-clarify-confusion/16019
▼ 설치 후 make 종속성을 제거하시겠습니까? | 기본값 n을 넣으면 무난할 겁니다. make dependencies를 remove했을 때 얻는 이점이 무엇인지 저는 잘 모르겠어요. 위 링크를 참고해 보시길 바랍니다.
▲ 폰트는 2번 noto-fonts가 구글에서 밀고 있는 거라 CJK(중일한) 아시아 언어 제대로 지원될 겁니다.
▲ 아치리눅스 기본 저장소(pacman)에서 끌어올 수 있는 의존성 패키지들의 설치를 물어올 것입니다. y를 눌러야 하겠죠?
▲ 꼬리에 꼬리를 무는... 의존성패키지의 의존성패키지 설치. archlinux-appstream-data, asciidoc, itstool, ninja 등. y를 눌러 진행합니다.
▲ 이제야 AUR에서 끌어 오는 의존성 패키지들의 설치를 묻습니다. snapd, sndpd-glib 설치. y 누릅니다.
▲ libpamac-full도 AUR에서 끌어 오는 의존성 패키지입니다. y를 눌러 진행합니다.
▲ 드디어 pamac-all 패키지 설치. y 누릅니다.
설치 완료!
▲ yay -Scc
당분간 yay 쓸 일 없으니, 캐시 삭제해 주면 좋겠지요.
▲ 터미널 창에서 pamac-manager라고 입력하거나, GUI에서 "소프트웨어 추가/제거"를 찾아 실행하면 PAMAC을 이용할 수 있습니다.
Pamac 이용하여 Google Chrome 설치해보기
Pamac도 환경설정을 만져서 AUR 이용할 수 있게 뚫어줘야 됩니다.
▲ 햄버거버튼 누르고 "환경 설정" 클릭.
▼ 일반 탭에서 아치리눅스 기본 패키지 저장소의 업데이트를 설정해 주고요...
▼ 고급 탭도 점검 한 번 해주세요.
▼ "서드 파티" 탭이 중요합니다. "AUR 지원 사용 가능" 옵션을 켜고 빠져나오세요.
▲ Flatpak / Snap 지원은 어째서 껐냐교 물으신다면... 롤링업데이트 끝판왕 아치리눅스에서 굳이 Flatpak / Snap 사용할 일이 있나 싶어서 그랬습니다. (그럴 거면 pamac-aur 설치하지 왜 pamac-all 고생스럽게 설치했냐고 물으시면... 죄송합니다. 취향입니다.ㅠ)
이제 pamac에서 구글 크롬을 설치해 볼까요?
▼ 검색 창에 google chrome 키워드 넣어 보세요.
▲ google-chrome 패키지가 보이죠? AUR 표시도 되어 있고. 제대로 찾은 것 같습니다.
우측 파란 버튼을 누르고, 적용(A) 버튼을 누르세요.
▲ 팝업 창에서 "적용(A)" 버튼을 누르면 알아서 다운로드&빌드&설치 진행됩니다.
▲ 휴지통 버튼이 나오면 설치 완료된 겁니다.
▲ pamac 종료 후 모든프로그램에서 찾아보면 Google Chrome 설치된 것이 나올 겁니다. 실행해서 써보세요.
구글크롬에서는 한글 입출력을 자체적으로 구현하기 때문에, 적어도 크롬 사용 중에는 관련 버그에 대한 걱정을 안해도 됩니다.
하지만 아치리눅스는 한글 입출력 상황에서 언제든 문제 발생할 가능성이 있기 때문에, Web IME 사이트 하나 정도는 크롬에 즐겨찾기 등록해 두는 것을 추천합니다. 굳이 웹브라우저를 특정해서 권하는 이유는... 호환성 문제 생길 가능성이 가장 낮기 때문입니다.