레이블이 홈브루인 게시물을 표시합니다. 모든 게시물 표시
레이블이 홈브루인 게시물을 표시합니다. 모든 게시물 표시

2024-02-11

[오늘은 공부중] 홈브루(Homebrew) 설치 / 삭제 등 기본적인 명령어

홈브루는 기본적으로 CLI(command-line interface) 인터페이스이다. 

일반적으로 맥에서 프로그램을 설치할 때는 마우스로 아이콘을 드래그앤드롭 해서 복사를 하면 설치를 하지만, CLI 인터페이스는 키보드로 명령어를 일일이 입력해 설치하는 것이다.

홈브루를 이용할 때 기본적으로 숙지해야 할 명령어 몇 가지를 정리해봤다.

  1. 설치프로그램 찾기


    패키지 매니저 프로그램을 이용해 설치하기 위해서는 프로그램에 해당 프로그램이 있는지 확인하는 것이다.

    설치프로그램 유무를 확인하는 방법은 

    brew search [프로그램명]

    을 치면 확인이 가능하다.

    위에서는 웹브라우저인 chrome을 설치하기 위해 

    brew search chrome

    을 검색해봤고, chrome과 관련된 프로그램을 확인할 수 있다.

    결과값 중 google-chrome이 우리가 찾는 프로그램임을 알 수 있다.


  2. 프로그램 설치


    프로그램 설치 방법은 

    brew install [설치 프로그램 이름]

    을 입력하면 설치가 곧바로 실행된다.

    크롬브라우저를 설치하기 위해선 

    brew install google-chrome

    을 입력하면 된다

    설치가 끝난 뒤 응용프로그램에 가보면 


    이렇게 브라우저가 설치된 모습을 확인할 수 있다.


  3. 설치된 프로그램 목록


    설치된 프로그램 목록을 확인하는 방법은 

    brew list

    를 입력하면 확인할 수 있다.

    이 맥에는 podman-desktop과 google-chrome 두 가지만 설치를 했지만, 목록에는 여러가지가 나오고 있다. 

    이건 프로그램이 설치시에 필요한 몇가지 프로그램을 함께 설치했기 때문인데, 이를 '종속성'이라고 한다.

    아래에 Casks라고 쓰여져 있는 것은 GUI 프로그램. 우리가 명령어로 실행하는 것이 아닌, 마우스로 아이콘을 더블클릭해서 실행하는 응용프로그램들을 Casks로 별도 관리하고 있는 것이다.
     

  4. 프로그램 삭제


    우리가 홈브루를 사용하는 이유는 프로그램 추가/제거를 간단하게 하기 위해서다.

    홈브루에서 프로그램을 제거하는 방법은

    brew uninstall [제거할 프로그램 이름]

    이다.

    이 명령어를 입력하면 말끔하게 프로그램을 제거할 수 있다.

처음에는 어렵게 느껴질 수 있겠지만, 나중에 가면 홈페이지에 들어가서 파일을 내려받고, 실행한 뒤 설치하는 것보다 명령어 한 번 입력한 것으로 설치하는 것이 더 편하게 느껴지게 된다.

[오늘은 공부중] 맥용 패키지 관리자 프로그램 '홈브루(Homebrew)' 설치하기

맥용 패키지 관리자 프로그램 중 가장 많이 쓰이는 홈브루를 설치해보려 한다.

패키지 관리자 프로그램에 대해 물어보는 분들이 간혹 있을까봐 설명을 하자면 윈도우의 '프로그램 추가/제거' 같은 기능이라고 보면 된다.

대부분 맥은 프로그램을 삭제하면 언인스톨도 같이 삭제되는 줄 알고 있는데, 반은 맞고 반은 틀리다.

프로그램이 삭제되긴 하지만, 임시파일 같은 찌꺼기 파일은 그대로 컴퓨터 안에 남아있기 때문에 나중에 프로그램을 재설치하면 당시 설정이 그대로 되살아난다.

홈브루를 쓴다고해도 100% 다 지워지는 것은 아니지만, 남아있는 파일을 최소화할 수 있다는 점에서 나쁘진 않은 것 같다.

홈브루를 설치하기 위해선 먼저 홈브루 홈페이지에 들어가야 한다.

홈브루 홈페이지 주소는 https://brew.sh/ 이다.


홈브루 홈페이지를 보면 Install Homebrew라고 친절하게 명령어 한 줄이 나와있다.

저 명령에서 맨 앞에 $를 제외한 나머지를 복사하거나, 자동복사 버튼을 눌러준다.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

홈페이지에 나온 명령어를 그대로 복사해 가져왔으니, 위 명령어를 복사해도 된다.

엔터를 친 것이 아니니 영어로 된 명령어 전체를 복사하자!



복사를 했거나, 복사버튼을 눌렀다면 파인더(흔히들 '폴더 보기') 버튼을 누른 다음

[응용프로그램]에서 [유틸리티] 폴더를 들어가면 터미널이 나온다.

만약 복잡하다 싶으면 오른쪽 상단 시계 메뉴 옆에 돋보기 모양을 누른 뒤 [터미널] 또는 [terminal] 을 입력하면 똑같이 앱을 실행할 수 있다.



터미널을 실행했다면 [Command] + [v]를 눌러 붙여넣기 를 해준다.

이후 [Enter]를 치면 설치를 진행한다.

처음에 관리자 비밀번호를 물어보니 입력하자.



관리자 비밀번호를 입력하면 설치 여부를 물어본다. 

그냥 [Enter]를 입력하면 곧바로 설치가 진행된다.


설치가 끝났다고 나왔지만, 100% 끝난 것은 아니다.

명령어 두 가지를 입력해야 설치가 마무리 된다.

위의 스크린샷에 나온 명령어 두 줄을 차례로 한 번씩 입력하자.

(echo; echo 'eval "$(/usr/local/bin/brew shellenv)"') >> /Users/macos/.zprofile 

eval "$(/usr/local/bin/brew shellenv)"

출력된 명령어를 똑같이 가져왔다.

두 명령어를 입력하면 최종적으로 홈브루 설치가 완료된다.


홈브루가 잘 설치됐는지 확인하는 방법은 버전 확인이다.

홈브루 버전확인 명령어는

brew -v

를 입력하면 된다.

정상적이라면 버전이 출력되겠지만, 설치가 안됐다면 명령어가 없다고 뜰 것이다.

2024-02-03

[오늘은 공부중] 홈브루 vs 맥포트 vs 핑크 맥용 패키지 프로그램 비교

한동안 맥용 패키지 프로그램에 대한 불신에 빠져서 오로지 맥용 앱스토어에 올라온 것이 아니면 설치도 하지 않았다.

불신을 했던 이유를 설명하자면 
  1. 관리자 권한을 요구하기 때문에 백도어를 통한 침입 가능성
  2. 시스템 파일을 건드리기 때문에 충돌 시 돌이킬 수 없는 오류 가능성
  3. 필요한 프로그램은 한정적인데 굳이 설치를?
자체 서버로 홈페이지를 운영하는 입장에서 보안에는 정말 병적으로 신경쓰는 편이다.

그런데 맥용 패키지 프로그램을 안쓰면 앱스토어에 올라온 것으로만 설치해야 하는데, 이게 개발하는 환경에 있어서는 아주 뭐같다... 프로그램 업데이트 때마다 남이있는 임시파일때문에 깨끗한 시스템 상태를 유지하지 못하는 느낌?

이런 불안감을 최근에 돌리게 된 이유를 꼽자면 내가 가지고 있는 구형 맥미니때문이라고 할 수 있다. 애플은 구매연도에 따라 설치할 수 있는 OS에 제한을 두고 있는데, 12년 전 구매한 맥미니의 지원기간이 종료된 것. 오래된 OS는 취약점이 노출돼 언젠간 공격을 받을 수 있는데, 찾아보니 오래된 맥에도 최신 OS를 설치할 수 있는 프로젝트가 있었다.

물론 이 역시 제조사에서 나온 것이 아니기 때문에 백도어 가능성은 얼마든지 열려있었지만, 사실 그렇게 따지고 들면 내가 만든 것 외에는 아무 것도 믿을 수가 없다. 비유하자면 식중독 무서워서 배달음식 못시켜먹는 셈인데, 그런 걸로 굳이 스트레스를 받느니 조금 더 유연하게 서버를 운영해보고자 패키지 프로그램을 다시 설치하기로 마음 먹었다.

패키지 프로그램이 뭔지 모르는 사람들이 많은데, 쉽게 말하면 윈도우의 '프로그램 추가/제거' 같은 기능이다. 맥은 각각의 프로그램이 독립 실행 방식이긴 하지만 그렇다고 응용프로그램에 모든 파일이 있는 것은 아니다. 어떻게든 시스템에 영향을 줘야 하는 상황이 생길 수 밖에 없고, 이 때문에 프로그램을 삭제하더라도 어딘가에는 쓰레기 파일이 남아있다. 이런 것을 쉽게 설치하고, 삭제하기 위해 설치하는 것이 패키지 프로그램이다.

다양한 맥용 패키지 프로그램이 등장했다가 사라졌는데, 최근에는 3가지로 압축되는 듯 하다. 이에 대해 비교해봤다.

  1. 홈브루(Homebrew)

    현재 가장 대표적인 패키지 프로그램이다.

    터미널에서 간단한 조작으로 설치할 수 있고, 간단한 명령어로 삭제할 수 있다. 느낌으로는 패키지에 큰 차이가 없어서 통일적이라는 느낌.

    GUI 기능을 갖춘 Homebrew cask라는 프로그램도 있다.
    Podman 같이 아예 Homebrew 명령어로 설치하라는 회사도 있을 정도로, 대표적이다.

    설치할 수 있는 프로그램도 많고, 지속해서 관리되고 있다. 샌드박스 처리되기 때문에 의존성 있는 파일도 깔끔하게 설치, 삭제할 수 있다.

    다만 설치는 쉽지만, 관리는 별로라서...


  2. 맥포트(Macports)
    홈브루와 양대산맥을 이루는 패키지 매니지 프로그램.

    애플에 있던 개발자들이 개발한 것으로 유명하다.

    장점은 신뢰성과 커스터마이징. 컴파일된 앱은 홈브루보다 맥포트가 낫다는 이야기도 있다. 홈브루처럼 MacOS 라이브러리에 의존하지 않는데, 개발자 입장에서는 시스템 충돌 가능성을 많이 낮출 수 있다. 또 오랜 기간 운영을 해온만큼 지원되는 MacOS도 많다. 

    홈브루와 달리 설치 패키지 프로그램을 제공하고 있는데, 맥 버전마다 내용이 다른 듯 하다. 최근 설치되는 앱에서는 홈브루에 밀리는 경향도 있다.


  3. 핑크(Fink)

    현재 남아있는 맥용 패키지 매니저 프로그램 중 가장 오래된 것 같다.

    장점은 데비안 기반이기 때문에 apt 스크립트에 익숙한 사람이라면 쉽게 이용할 수 있다. 지금도 개발은 되고있는 듯 한데, 사용하는 사람은 많지 않은 듯 하다.

[오늘은 생각중] '기내 만취 루머' 소유, 항공사 사과받더니 더 깡말라졌다…"밥 더 먹어야겠네"

네이버 포털을 보던 중 나온 인터넷 기사의 제목이다. SNS 사진을 복사해, 붙여넣고, 고혹적, 건강미 등의 자극적인 언어를 붙인 뒤, SNS 댓글 몇 개를 인용해 송고 하면 끝. 잔뜩 그래 뭐 소유 일상이 궁금할 수도 있다고 생각한다. 기내 만취 루...