한동안 맥용 패키지 프로그램에 대한 불신에 빠져서 오로지 맥용 앱스토어에 올라온 것이 아니면 설치도 하지 않았다.
불신을 했던 이유를 설명하자면
- 관리자 권한을 요구하기 때문에 백도어를 통한 침입 가능성
- 시스템 파일을 건드리기 때문에 충돌 시 돌이킬 수 없는 오류 가능성
- 필요한 프로그램은 한정적인데 굳이 설치를?
자체 서버로 홈페이지를 운영하는 입장에서 보안에는 정말 병적으로 신경쓰는 편이다.
그런데 맥용 패키지 프로그램을 안쓰면 앱스토어에 올라온 것으로만 설치해야 하는데, 이게 개발하는 환경에 있어서는 아주 뭐같다... 프로그램 업데이트 때마다 남이있는 임시파일때문에 깨끗한 시스템 상태를 유지하지 못하는 느낌?
이런 불안감을 최근에 돌리게 된 이유를 꼽자면 내가 가지고 있는 구형 맥미니때문이라고 할 수 있다. 애플은 구매연도에 따라 설치할 수 있는 OS에 제한을 두고 있는데, 12년 전 구매한 맥미니의 지원기간이 종료된 것. 오래된 OS는 취약점이 노출돼 언젠간 공격을 받을 수 있는데, 찾아보니 오래된 맥에도 최신 OS를 설치할 수 있는 프로젝트가 있었다.
물론 이 역시 제조사에서 나온 것이 아니기 때문에 백도어 가능성은 얼마든지 열려있었지만, 사실 그렇게 따지고 들면 내가 만든 것 외에는 아무 것도 믿을 수가 없다. 비유하자면 식중독 무서워서 배달음식 못시켜먹는 셈인데, 그런 걸로 굳이 스트레스를 받느니 조금 더 유연하게 서버를 운영해보고자 패키지 프로그램을 다시 설치하기로 마음 먹었다.
패키지 프로그램이 뭔지 모르는 사람들이 많은데, 쉽게 말하면 윈도우의 '프로그램 추가/제거' 같은 기능이다. 맥은 각각의 프로그램이 독립 실행 방식이긴 하지만 그렇다고 응용프로그램에 모든 파일이 있는 것은 아니다. 어떻게든 시스템에 영향을 줘야 하는 상황이 생길 수 밖에 없고, 이 때문에 프로그램을 삭제하더라도 어딘가에는 쓰레기 파일이 남아있다. 이런 것을 쉽게 설치하고, 삭제하기 위해 설치하는 것이 패키지 프로그램이다.
다양한 맥용 패키지 프로그램이 등장했다가 사라졌는데, 최근에는 3가지로 압축되는 듯 하다. 이에 대해 비교해봤다.
- 홈브루(Homebrew)
현재 가장 대표적인 패키지 프로그램이다.
터미널에서 간단한 조작으로 설치할 수 있고, 간단한 명령어로 삭제할 수 있다. 느낌으로는 패키지에 큰 차이가 없어서 통일적이라는 느낌.
GUI 기능을 갖춘 Homebrew cask라는 프로그램도 있다.
Podman 같이 아예 Homebrew 명령어로 설치하라는 회사도 있을 정도로, 대표적이다.
설치할 수 있는 프로그램도 많고, 지속해서 관리되고 있다. 샌드박스 처리되기 때문에 의존성 있는 파일도 깔끔하게 설치, 삭제할 수 있다.
다만 설치는 쉽지만, 관리는 별로라서... - 맥포트(Macports)
홈브루와 양대산맥을 이루는 패키지 매니지 프로그램.
애플에 있던 개발자들이 개발한 것으로 유명하다.
장점은 신뢰성과 커스터마이징. 컴파일된 앱은 홈브루보다 맥포트가 낫다는 이야기도 있다. 홈브루처럼 MacOS 라이브러리에 의존하지 않는데, 개발자 입장에서는 시스템 충돌 가능성을 많이 낮출 수 있다. 또 오랜 기간 운영을 해온만큼 지원되는 MacOS도 많다.
홈브루와 달리 설치 패키지 프로그램을 제공하고 있는데, 맥 버전마다 내용이 다른 듯 하다. 최근 설치되는 앱에서는 홈브루에 밀리는 경향도 있다. - 핑크(Fink)
현재 남아있는 맥용 패키지 매니저 프로그램 중 가장 오래된 것 같다.
장점은 데비안 기반이기 때문에 apt 스크립트에 익숙한 사람이라면 쉽게 이용할 수 있다. 지금도 개발은 되고있는 듯 한데, 사용하는 사람은 많지 않은 듯 하다.
댓글
댓글 쓰기