사용자 도구

사이트 도구


homebrew

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
homebrew [2021/10/12 09:54]
kwon37xi
homebrew [2023/05/09 22:58] (현재)
kwon37xi [brew PATH 후순위로 만들기 / MANPATH 덮어 쓰는 문제 해소]
줄 1: 줄 1:
 ====== HomeBrew ====== ====== HomeBrew ======
   * https://brew.sh   * https://brew.sh
 +  * [[https://docs.brew.sh/Manpage|brew(1) – The Missing Package Manager for macOS (or Linux) — Homebrew Documentation]]
 +  * [[homebrew:formula|Homebrew formula]]
 +  * [[https://github.com/Homebrew/homebrew-autoupdate|homebrew-autoupdate]]
  
-<note warning> 
-초기에 몇번 사용했으나 linux main pytho, gcc, node.js 등을 override 해버려서 linux 기본 애플리케이션 작동에 문제를 일으켜서 사용을 중단함. 
- 
-linux brew 가 PATH 경로상 맨 앞에 위치하는데, 이를 뒤로 옮겨주면 어느정도 해소 가능하긴 함. 
- 
-"brew PATH 후순위로 만들기" 항목 참조 
-</note> 
  
 ===== Linux ===== ===== Linux =====
줄 31: 줄 27:
 </code> </code>
  
-===== brew PATH 후순위로 만들기 =====+===== brew PATH 후순위로 만들기 / MANPATH 덮어 쓰는 문제 해소=====
   * [[https://unix.stackexchange.com/questions/537062/homebrew-replaced-python3-how-to-reverse|linux - Homebrew replaced Python3, how to reverse? - Unix & Linux Stack Exchange]]   * [[https://unix.stackexchange.com/questions/537062/homebrew-replaced-python3-how-to-reverse|linux - Homebrew replaced Python3, how to reverse? - Unix & Linux Stack Exchange]]
   * https://github.com/Homebrew/brew/blob/master/Library/Homebrew/cmd/shellenv.sh   * https://github.com/Homebrew/brew/blob/master/Library/Homebrew/cmd/shellenv.sh
   * ''brew shellenv'' 결과를 출력해서 PATH 순서를 바꿔서 넣거나,   * ''brew shellenv'' 결과를 출력해서 PATH 순서를 바꿔서 넣거나,
   * 아니면 ''eval("brew shellenv...")'' 하기 전에, ''OLD_PATH=$PATH'' 를 저장해두고, ''PATH''값을 비워버리고, eval하고, 그 뒤에 다시 ''PATH=$OLD_PATH:$PATH'' 형태로 변경하거나..   * 아니면 ''eval("brew shellenv...")'' 하기 전에, ''OLD_PATH=$PATH'' 를 저장해두고, ''PATH''값을 비워버리고, eval하고, 그 뒤에 다시 ''PATH=$OLD_PATH:$PATH'' 형태로 변경하거나..
 +  * ''MANPATH'' 환경변수가 존재하지 않을 경우 기본으로 ''/etc/manpath.config'' 를 자동으로 따라야한다.
 +  * 하지만, ''brew'' 환경 변수 설정시 ''MANPATH''가 없으면 ''brew'' 전용 경로로 덮어 써 버려서 먼저 ''MANPATH'' 환경변수 설정이 필요하다.
 +  * ''%%manpath --quiet%%'' 명령으로 ''/etc/manpath.config'' 의 설정을 환경변수로 뽑아낼 수 있다.
 +<code sh>
 +export MANPATH=$(manpath --quiet)
 +OLDPATH=$PATH
 +eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
 +export PATH=$OLDPATH:${HOMEBREW_PREFIX}/bin:${HOMEBREW_PREFIX}/sbin
  
 +# ....
 +</code>
 ===== uninstall/remove homebew on Linux ===== ===== uninstall/remove homebew on Linux =====
 <code sh> <code sh>
줄 43: 줄 49:
  
 # 본인 계정의 ~/.bashrc 에 등록된 homebrew 관련 스크립트 제거 # 본인 계정의 ~/.bashrc 에 등록된 homebrew 관련 스크립트 제거
 +</code>
 +
 +===== clean up =====
 +  * brew 패키지 설치는 상당한 용량을 차지한다. 주기적으로 캐시 등의 삭제가 필요하다.
 +
 +<code sh>
 +# 더이상 불필요해진 의존성 삭제
 +brew autoremove
 +
 +# 캐시 전체 삭제
 +brew cleanup --prune=all
 </code> </code>
  
줄 48: 줄 65:
   * [[https://docs.brew.sh/Taps|Taps (Third-Party Repositories) — Homebrew Documentation]]   * [[https://docs.brew.sh/Taps|Taps (Third-Party Repositories) — Homebrew Documentation]]
   * 제 3의 개인별 리포지토리 구성방식.   * 제 3의 개인별 리포지토리 구성방식.
 +  * 아래 오류 발생시 해당 탭의 설정에 문제가 있는 것임. ''untap'' 하고 제거하고 다른 애플리케이션을 설치하던가 한다.
 +<code>
 +Warning: Calling bottle :unneeded is deprecated! There is no replacement.
 +Please report this issue to the 4d63/tldr tap (not Homebrew/brew or Homebrew/core):
 +  /home/linuxbrew/.linuxbrew/Homebrew/Library/Taps/4d63/homebrew-tldr/Formula/tldr.rb:6
 +</code>
 +<code sh>
 +brew remove tldr
 +brew untap 4d63/tldr
 +</code>
 +
 +===== linux fonts =====
 +  * https://github.com/Homebrew/homebrew-linux-fonts
 +<code sh>
 +brew tap linuxbrew/fonts  # 한번만
 +
 +# font 설치
 +
 +# font 디렉토리 연결 : 한번만
 +ln -s /home/linuxbrew/.linuxbrew/share/fonts ~/.local/share/fonts
 +
 +# font 갱신
 +fc-cache -fv
 +</code>
 +
 +===== bundle =====
 +  * ''Brewfile''로 일괄 설치/삭제 등을 할 수 있다.
 +  * ''brew bundle dump'' : 현재 디렉토리에 ''Brewfile''을 생성하고 현재 이미 설치된 모든 항목을 덤프한다.
 +  * ''brew bundle'' : 현재 디렉토리의 ''Brewfile''을 찾아서 설치한다.
 +  * ''brew bundle %%--%%file=/path/to/Brewfile'' : 특정 Brewfile 을 지정해서 설치한다.
 +    * ''%%--no-lock%%'' : ''Brewfile.lock.json'' 생성을 막아준다.
  
 ===== 유사 패키지 관리자 ===== ===== 유사 패키지 관리자 =====
homebrew.1634000049.txt.gz · 마지막으로 수정됨: 2021/10/12 09:54 저자 kwon37xi