몇 가지 예외를 제외하면 리눅스 배포판을 설치하는 것은 올인클루시브 리조트에 체크인하는 것과 비슷합니다. 하드웨어는 별도 설정 없이 바로 작동하고, 사진 편집 도구와 멀티미디어 플레이어부터 이메일·채팅 클라이언트, 그리고 본격적인 오피스 스위트까지 인상적인 수준의 기본 프로그램이 미리 깔려 있죠.
하지만 기본으로 제공되는 애플리케이션 중 하나를 다른 프로그램으로 교체하고 싶거나, 새로운 리눅스 소프트웨어를 시도해 보고 싶다면 어떻게 해야 할까요?
물론 구글에 검색해 볼 수도 있습니다. 하지만 쓸 만한 결과를 찾으려면 검색 페이지 열 페이지 넘게 뒤져야 할지도 모르는 불안감과 함께 말이죠. 아니면 신뢰할 수 있는 리소스 목록을 직접 만들어 두고, 그곳에서 앱을 빠르게 둘러보고, 다양한 기준으로 검색·정렬한 뒤 마음에 드는 프로그램을 손쉽게 내려받는 방법도 있습니다.
후자의 방법이 더 합리적으로 들린다면 잘 찾아오셨습니다. 오늘은 새로운 리눅스 애플리케이션을 어떻게, 어디서 찾을 수 있는지 유용한 팁을 소개해 드리겠습니다.
복습: 리눅스 앱 설치 방법
리눅스를 처음 접하는 사용자들은 소프트웨어 설치 과정 때문에 종종 혼란스러워하지만, 실제로는 윈도우나 macOS(OS X)에서 보던 방식과 크게 다르지 않습니다.
일반적으로 리눅스에서 소프트웨어를 설치하는 방법은 두 가지입니다. 바이너리 패키지(미리 컴파일된 형태)를 이용하거나, 소스 코드를 직접 받아 컴파일하는 방식입니다. 패키지는 개발자 웹사이트에서 독립 실행형 파일로 수동 내려받을 수도 있고, 패키지 관리 도구를 통해 소프트웨어 저장소(리포지토리)에서 가져올 수도 있습니다.
이런 일반적인 설치 방법 외에도 포터블 앱이나 자동 압축 해제형 설치 스크립트가 함께 번들된 애플리케이션도 있습니다. 포터블 앱은 설치가 필요 없습니다. 폴더에 압축을 풀고 실행 파일을 더블클릭하거나 터미널에 명령어를 입력하기만 하면 됩니다. 윈도우 사용자라면 이 개념이 익숙할 겁니다.
패키지를 수동으로 설치하기로 했다면 윈도우와의 또 다른 유사점을 발견하게 됩니다. GDebi 같은 도구를 사용하면 .exe 파일처럼 .deb 패키지를 더블클릭만으로 간단한 대화상자를 통해 설치할 수 있습니다. 반대로 패키지 관리자를 통해 접근하는 저장소 개념은 macOS, 안드로이드, 그리고 최근에는 윈도우까지 등장한 앱 스토어와 비슷합니다.
가장 권장되는 설치 방법은 패키지 관리자를 통한 저장소 설치입니다. 의존성 문제를 걱정할 필요가 없고, 저장소가 유지 관리되는 한 자동 업데이트도 받을 수 있기 때문입니다. 다만 저장소에 최신 버전이 없거나, 사용 중인 배포판용 저장소가 아예 없는 경우도 있습니다. 이럴 때는 비공식 바이너리 패키지를 찾아보거나, 그것마저 안 되면 직접 소스 코드를 컴파일하는 방법을 시도해 볼 수 있습니다.
패키지와 패키지 관리자 살펴보기
아시다시피 리눅스 배포판 간의 가장 큰 차이점 중 하나는 사용하는 패키지 관리 시스템입니다. 예를 들어 데비안, 우분투 및 그 파생 배포판은 .deb 패키지를 사용하고, 페도라(Fedora), CentOS, openSUSE, 마제야(Mageia)는 .rpm 패키지를 사용합니다. 아치 리눅스, 젠투(Gentoo), 슬랙웨어(Slackware)는 각자의 방식을 따르지만 전반적인 개념은 비슷합니다. 패키지 형식 간 변환도 가능하지만, 요즘은 대부분의 애플리케이션이 여러 배포판을 공식 지원하는 패키지를 제공하기 때문에 굳이 필요한 경우는 드뭅니다.
본질적으로 패키지는 애플리케이션을 시스템의 어디에, 어떻게 설치해야 하는지에 대한 지침을 담고 있는 아카이브 파일입니다. 패키지 관리자는 이 지침을 읽고 실행하며 패키지 처리를 도와주는 도구입니다. 설치된 앱의 버전을 관리하고, 업데이트 가능한 항목을 알려주며, 보통 의존성 문제를 자동으로 해결하고 누락된 패키지를 설치하라고 제안해 주기도 합니다. 서드파티 출처를 뒤지기 전에 항상 먼저 확인해야 할 곳이 바로 여러분의 패키지 관리자입니다.
패키지 관리자와 친해지기
모든 리눅스 배포판에는 패키지 관리자가 기본 탑재되어 있습니다. 이것이 없으면 새 애플리케이션 설치나 현재 설치된 프로그램 확인이 매우 어렵습니다. 일부 배포판은 기본 패키지 관리자를 '소프트웨어 관리자' 또는 '소프트웨어 센터'라고 부르기도 합니다. 패키지 관리자의 형태는 다양합니다. 명령줄 전용인 것도 있고, 일반 GUI 도구인 것도 있습니다. 대체로 두 가지 화면 스타일이 있는데, 하나는 우측에 패키지 목록을 두고 좌측 사이드바에 카테고리를 배치한 전통적 방식이고, 다른 하나는 앱 평점과 스크린샷을 강조하는 앱 스토어 스타일입니다.
여러분의 패키지 관리자 인터페이스에 익숙해지고, 설정을 조정하면서 어떤 기능을 제공하는지 살펴보세요. 배포판과 패키지 관리자에 따라 자동 업그레이드 설정, 손상된 패키지 복구, 특정 버전으로의 다운그레이드 또는 버전 고정, 패키지 캐시 삭제 또는 보관, 상태별 색상 구분 등 다양한 작업이 가능할 수 있습니다.
저장소(Repository) 이해하기
탐색할 저장소가 없다면 패키지 관리자는 사실상 무용지물입니다. 기본적으로 여러분의 배포판은 몇 가지 공식 저장소를 활성화해 두었을 것이며, 패키지 관리자를 처음 실행하면 현재 이용 가능한 소프트웨어 정보를 가져와 이후에 둘러볼 수 있습니다. 대부분의 현대적인 패키지 관리자는 저장소를 추가·제거할 수 있는 모듈을 포함하고 있습니다. 만약 없다면 보통 관리자 권한으로 텍스트 파일을 편집해야 합니다.
공식 저장소 외에도 비공식 저장소에서 앱을 찾아볼 수 있습니다. 아치 리눅스에는 AUR(Arch User Repository)이라 불리는 방대한 앱 컬렉션이 있으며, 데비안 역시 다양한 비공식 저장소 링크를 제공합니다.
우분투 사용자라면 PPA(Personal Package Archives)에 대해 분명 들어보셨을 겁니다. PPA는 Launchpad에서 호스팅되는 비공식 저장소로, 업로드된 소스 코드로부터 .deb 패키지를 자동으로 빌드해 줍니다. PPA는 우분투 파생 배포판에서도 사용할 수 있고(필요하다면 데비안에서도 가능), 주의할 점은 PPA는 누구나 생성할 수 있기 때문에 근본적으로 안전하지 않다는 것입니다. 시스템에 PPA를 추가하면 위험을 감수하는 것이며, 해당 패키지 설치 후 문제가 발생했을 때 책임도 본인에게 있습니다. 무섭게 들릴 수 있지만, 실제로는 수상한 PPA를 쉽게 식별하고 피할 수 있습니다. 많은 사람이 사용하는 PPA, 자주 업데이트되는 PPA, 또는 앱 개발자가 직접 운영하는 PPA라면 과도하게 불안해할 필요는 없습니다.
패키지 관리자와 결별하기
패키지 관리자를 사랑하려 노력했지만 잘 맞지 않았다면, 그건 당신 탓이 아니라 도구의 문제입니다. 어차피 모든 패키지 관리자가 동등하게 강력한 것은 아니므로 교체가 가능하다는 점을 알아두면 좋습니다. 필요한 기능이 부족하거나, 인터페이스가 직관적이지 않거나, 우분투 소프트웨어 센터처럼 독점 소프트웨어에 대한 정보를 충분히 공개하지 않는 경우도 있습니다. 새 패키지 관리자를 설치할 때는 반드시 자신의 배포판 패키지 형식을 지원하는지 확인하세요.
Synaptic은 훌륭한 선택입니다. DEB와 RPM 시스템을 모두 지원하며, 초보자에게 지나치게 복잡하지 않으면서도 풍부한 기능을 갖추고 있습니다. PackageKit은 배포판에 종속되지 않는 프로젝트로, 인기 있는 모든 패키지 관리 시스템의 프론트엔드 역할을 할 수 있으며 Apper(Qt 기반)와 GNOME Software(GTK 기반) 두 가지 에디션으로 제공됩니다.
아치 리눅스 사용자라면 Pamac 같은 도구를 설치하면 편리합니다. AUR과 공식 저장소 양쪽에서 앱을 설치할 수 있어 pacman과 yaourt(또는 다른 AUR 헬퍼)라는 두 가지 도구를 따로 쓸 필요가 없어집니다.
궁극적인 목표가 리눅스 앱 발견이라면 새 패키지 관리자를 고를 때 가장 중요한 기준은 검색 기능입니다. 이상적으로는 패키지 이름과 설명 모두로 검색하고, 키워드에 와일드카드를 허용하며, 패키지 상태로 결과를 필터링하고, 어떤 애플리케이션의 어떤 버전이 어느 저장소에 있는지 보여줄 수 있어야 합니다. 애용하는 패키지 관리자의 검색 기능이 약하다면 웹 기반 도구를 활용하는 것이 좋습니다.
온라인에서 리눅스 패키지 찾기
Linux Packages Search(Pkgs.org)는 여러 리눅스 배포판의 공식 및 비공식 저장소를 색인합니다. "music" 같은 일반 키워드로 검색할 수도 있지만, 이 도구는 정확한 패키지 이름을 알고 있고 자신의 배포판에서 이용 가능한지, 어떤 버전인지 확인하고 싶을 때 가장 유용합니다. 색인된 모든 패키지는 개별 페이지를 가지고 있어 다운로드는 물론 의존성과 속성 정보도 확인할 수 있습니다.
다른 배포판의 정보는 필요 없고 현재 사용 중인 배포판의 패키지만 확인하고 싶다면, 대부분의 배포판이 필요한 모든 정보와 각 패키지 버전별 직접 다운로드 링크를 제공하는 검색 가능한 온라인 데이터베이스를 운영하고 있습니다:
- Debian Packages — 데비안 공식 패키지 검색
- Fedora Packages Search — 페도라 패키지 검색
- AUR(Arch User Repository) 및 Arch Linux Packages — 아치 리눅스 패키지
- Ubuntu Packages Search — 우분투 패키지 검색
- Mageia Application Database — 마제야 애플리케이션 데이터베이스
- Find openSUSE Software — openSUSE 소프트웨어 검색
윈도우 앱의 리눅스 대체품 찾기
흔히 있는 경우가 (전직) 윈도우 사용자가 자신이 즐겨 쓰던 앱의 리눅스 상응 프로그램을 찾거나, 익숙한 기능과 비슷한 앱을 검색하는 것입니다.
이 경우 무엇을 찾고 싶은지는 알지만 앱 이름은 모릅니다. 따라서 태그와 설명, 그리고 가능하다면 유사도까지 기준으로 앱을 탐색·검색할 수 있는 사이트가 이상적입니다.
가장 좋은 선택은 AlternativeTo입니다. 신중하게 평가되고 분류된 방대한 애플리케이션 데이터베이스를 갖춘 실용적인 도구로, 저희가 이미 상세히 소개한 적이 있습니다.
또 하나의 확실한 선택지는 The Linux Alternative Project입니다. 단순함을 선호하는 사용자에게 어울리는 사이트로, 인기 윈도우 애플리케이션 목록과 각각에 대한 추천 리눅스 대체 프로그램을 나열해 놓았습니다.
새로운 리눅스 앱 발견하기
항상 급한 필요에 의해서만 새 리눅스 앱을 찾는 것은 아닙니다. 어떤 앱들이 세상에 나와 있는지 단순히 궁금할 때도 있죠. 새로운 소프트웨어 개발 동향을 따라가고 싶거나, 오픈소스 커뮤니티에 보답하기 위해 베타 테스터로 프로젝트에 참여하고 싶을 수도 있습니다. 아니면 리뷰할 거리를 찾는 작가일지도 모르죠.
언제나처럼 인터넷이 해결책을 제공합니다. SourceForge가 최근 애드웨어 배포와 프로젝트 소유권 탈취로 물의를 빚었지만, 여전히 평판 좋은 다른 출처가 많습니다. 실제로 SourceForge 대안으로 삼을 만한 곳들입니다.
패키지 관리자처럼 이런 웹사이트들도 대체로 두 가지 유형으로 나뉩니다. 대부분 링크 목록에 불과한 낡고 '매력 없는' 사이트와, 디자인·스크린샷·사용자 리뷰에 더 신경 쓴 새로운 사이트가 그것입니다. 무엇을 좋아할지는 여러분의 선택이지만, 오래된 사이트가 보통 더 방대한 컬렉션을 갖고 있다는 점은 참고하세요. 일부 신생 사이트는 아직 개발 중입니다. 반대로 오래된 프로젝트 중에는 방치되었거나 구버전 소프트웨어를 가리키는 경우도 있지만, 앱에 대한 다른 정보는 여전히 유용할 수 있습니다.
Free Software Directory는 키워드 검색 기능과 더불어 앱을 다양한 카테고리로 정리해 제공합니다. 위키처럼 작동하고 생김새도 비슷하며, 각 앱은 짧은 설명, 다운로드 링크, 관련 프로젝트 목록이 담긴 개별 페이지를 가집니다.
Linux Links는 시간이 멈춘 듯한 디자인의 사이트지만, 방대한 앱 컬렉션 덕분에 모든 리눅스 사용자에게 귀중한 자원입니다. 카테고리와 하위 카테고리를 둘러보다 보면 몇 시간도 순삭됩니다. 용도별 최고의 리눅스 앱을 엄선한 목록도 제공하며, 일부 앱은 스크린샷과 기능 상세 정보가 담긴 미니 리뷰 페이지를 갖고 있습니다.
openDesktop은 GNOME-Look.org나 KDE-Look.org에서 리눅스 데스크톱 테마를 내려받아 본 적이 있다면 낯설지 않을 겁니다. 이 사이트들은 같은 프로젝트에 속해 있기 때문입니다. 사용하기 쉽고, 특히 예쁘지는 않지만 스크린샷, 앱 정보, 다운로드 링크 등 필요한 모든 것을 갖추고 있습니다. 홈페이지에 새 앱이 소개되어 쉽게 발견할 수 있습니다.
Linux App Finder는 다양한 방식으로 탐색할 수 있는 풍부한 리눅스 소프트웨어 모음입니다. 예를 들어 상단 메뉴의 'Alternatives'를 클릭하면 윈도우 및 macOS 소프트웨어의 리눅스 대체 프로그램을 볼 수 있습니다. 물론 앱 검색도 가능하고, 여러 카테고리와 하위 카테고리를 넘나들며 흥미로운 것을 찾을 수도 있습니다. 각 카테고리에서 가장 많이 조회된 앱은 눈에 잘 띄도록 강조 표시됩니다. 모든 앱은 기본 정보와 다운로드 링크가 담긴 페이지를 가지며, 회원가입 후 커뮤니티에 가입하면 앱 페이지를 편집하고 스크린샷이나 해당 앱이 포함된 저장소 링크 같은 추가 정보를 기여할 수 있습니다.
Open Source Software Directory는 조금 다른 접근 방식을 취합니다. 사용자 유형(개발자, 가정용 사용자, 관리자, 비즈니스 사용자)을 먼저 정의하도록 요청한 뒤, 용도별로 분류된 앱을 보여줍니다. 신생 프로젝트라 아직 앱 수는 많지 않지만 각 앱에 대한 간단한 소개 문단을 제공합니다. 각 카테고리에 최근 추가된 앱도 확인할 수 있습니다.
Freshcode는 freecode(구 freshmeat) 프로젝트를 되살리려는 시도입니다. 원래 프로젝트는 중단되었지만 아직 접근은 가능합니다(다만 종료 이후 업데이트는 없습니다). Freshcode는 freecode와 거의 똑같이 생겼지만 앱 수는 적습니다. 모든 앱은 과거 릴리스에 대한 상세 정보와 관련 웹사이트 링크가 담긴 페이지를 갖습니다. 태그별로 앱을 탐색하고, 설명에서 키워드를 검색하고, 결과를 소프트웨어 라이선스별로 정렬할 수 있습니다.
Open Hub는 목록의 다른 사이트보다 개발자에게 더 맞춰진 느낌을 줍니다. 코드 줄 수, 기여자 수, 커밋 수 같은 정보를 제공하는데, 평범한 리눅스 사용자에게는 큰 관심사가 아닐 수 있습니다. 그래도 태그별 프로젝트 탐색, 유사 앱 표시, 사용자 평점·리뷰 기능을 깔끔하고 현대적인 인터페이스에서 제공하므로 유용한 자원입니다. 통계에 관심이 있다면 두 개 이상의 앱을 비교해 어느 쪽이 더 활발히 개발되고 있는지 확인할 수도 있습니다.
커뮤니티의 추천 활용하기
대부분의 경우 새 리눅스 앱을 찾으려고 의도적으로 나서기보다는, 자주 쓰는 소셜 네트워크에서 우연히 링크나 추천을 접하게 됩니다. 다른 사용자들과 앱에 대한 경험과 조언을 나누는 것을 좋아하는 수다스러운 성향이라면 리눅스 지향 커뮤니티나 토론 게시판에 가입해 보세요. 앱에 무엇을 기대하는지 자세히 설명하고, 다른 사람들의 제안을 받아 완벽한 앱을 찾을 수 있습니다.
레딧(Reddit) 사용자라면 일반적인 소프트웨어 추천은 /r/Software에서, 리눅스 관련 질문은 /r/linuxquestions에 올릴 수 있습니다. CoolGitHubProjects 서브레딧은 GitHub에서 호스팅되는 새로운 오픈소스 앱을 우연히 발견하기 좋은 곳입니다. 다른 대화 형식을 원한다면 StackExchange의 Software Recommendations 채널을 확인해 보세요. 태그로 토론을 필터링해 검색 범위를 좁힐 수 있습니다.
게임도 잊지 마세요
저장소에서도 모든 장르의 게임을 상당수 찾을 수 있지만, 전문적인 리눅스 게임 소스를 추가해 두면 더 좋습니다. 앱, 웹사이트 또는 자체 클라이언트를 가진 서비스—Steam, Desura, GOG Galaxy 같은 것들이죠. 후자는 일종의 게임 전용 패키지 관리자로, 해당 서비스에서 구매한 게임을 설치하고 업데이트할 수 있게 해줍니다.
간단한 위키 스타일의 개요를 선호하고 최신 프로젝트로 활발히 업데이트되는 곳을 원한다면 LibreGameWiki를 확인해 보세요. 장르별로 게임을 탐색할 수 있고 각 게임에 대한 짧은 리뷰도 읽을 수 있습니다.
여러분은 어떠신가요? 새로운 리눅스 앱과 게임은 어디서 찾으시나요? 소개해 드린 출처 중 활용하고 계신 곳이 있나요? 목록에 추가하면 좋을 다른 웹사이트를 공유해 주실 수 있나요? 댓글로 이야기를 나눠주세요.
이미지 출처: 대표 이미지: Freepik의 Businessman with binoculars, Flickr의 Vincent 제공 Xubuntu Feisty just installed - Add/Remove, Pamac 스크린샷, Desura 스크린샷, GNOME Software 스크린샷.