develop / knowledge
Brewfile Tool
나는 homebrew를 이용해서 내 맥북의 모든 CLI · GUI 프로그램을 관리한다.
기기를 바꾸거나 여러 기기를 동시에 사용해야하는 상황에서 일일이 공식 홈페이지에서 인스톨러를 다운받아 직접 설치해야하는 작업을 명령어 한줄로 줄이는 것은 큰 도움이 되었다.
그러나 이 과정조차 n개의 앱을 설치하기 위해 n번의 명령어를 실행해야했다. 조사해본 결과 brewfile라는 파일을 통해서 brew로 여러 앱을 한번에 관리할 수 있다는 것을 알았다.
brew "fastfetch"
brew "git"
brew "mas"
cask "affine"
cask "appcleaner"
mas "Bitwarden", id: 1352778147
vscode "bierner.markdown-mermaid"
brewfile은 위와 같은 형식의 파일로 프로그램의 종류와 id로 구성된다.
그리고 brew bundle install 명령어로 기록된 모든 프로그램을 한번에 설치할 수 있다. 처음에는 완벽한 기능을 찾았다고 기뻐했다. 그러나 계속 사용하다보니 기록할 수 있는 정보와 기능이 너무 적다고 느꼈다.
기록된 프로그램의 정보나 메타데이터를 기록하거나 자동 설치 여부 등을 정할 수 있으면 좋겠다고 생각했다.
그래서 csv 기반으로 엑셀 등의 GUI 프로그램으로 쉽게 조회 및 수정이 가능한 구조를 만들고, 이를 brewfile로 변환하여 처리해주는 프로그램을 만들었다.

Gitea Repo 이곳에서 원본 소스코드를 확인할 우 있고, 구체적인 사용법도 여기를 참고하면 된다.