방금 Linux에서 OS X로 전환했는데 여전히 익숙해졌습니다.
많은 CLI 도구를 사용하기 때문에 Homebrew를 사용해야한다는 것을 알고 있습니다. 또한 Cask에 대해 읽었습니다. 한 가지 궁금한 점이 있습니다. App Store가 아닌 소프트웨어는 어떻게 업데이트를 받습니까? Windows와 같은, 즉 새 버전에 대해 알려주는 메시지로 다운로드 할 수 있거나 시스템과 통합되어 앱을 업데이트 할 때마다 새 .dmg를 다운로드 할 필요가 없습니까?
“Windows와 같은”경우 Firefox, VirtualBox, VLC, LibreOffice 등의 항목에 Cask를 사용하는 것이 더 낫습니까?
답변
-
을 사용하면
cask
설치된 모든 응용 프로그램 (cask와 함께 설치됨)을 단일 명령으로 업그레이드 할 수 있습니다.brew cask update
이는 비공식 (커뮤니티 기반) 응용 프로그램 업그레이드 방법이며 저장소에 무료 소프트웨어 만 있습니다 (구매 방법은 없음). 이 메커니즘의 장점은 다음과 같습니다.
- 스크립트 가능
- 시스템 응용 프로그램을 사용자 응용 프로그램 (설치된 응용 프로그램
~/Applications/
대신에 배치됨/Applications/
)과 분리하여 사용자별로 구성합니다. - 패키지화 된 설치 프로그램의 설치는 백그라운드에 있으므로 사용자 상호 작용이 필요하지 않습니다.
- 응용 프로그램 제거는 커뮤니티에서 프로그래밍하므로 제거 후 남은 파일에 대해 걱정할 필요가 없습니다.
- 이 메커니즘은 최신 또는 선택된 버전의 응용 프로그램에 대해 심볼릭 링크를 사용하므로 여러 버전의 응용 프로그램을 체계적으로 가질 수 있습니다.
- 응용 프로그램 소스는 캐시에 보관되므로 추가 다운로드없이 설치 및 제거 할 수 있습니다.
이 메커니즘의 단점은 다음과 같습니다.
- 차등 업그레이드는 없습니다. 전체 응용 프로그램 이미지 (.dmg) 또는 패키지 (.pkg)를 다운로드하여 캐시에 저장합니다.
- 응용 프로그램 설치는 이상적이지 않을 수있는 심볼릭 링크에 의존합니다 (응용 프로그램의 사본 두 개가 있으며 “연결 프로그램”목록에서 반복 될 수 있음)
-
자체 설치된 응용 프로그램을 업그레이드하기위한 공식 App Store 메커니즘 (기본값)이 있으며 차등 업그레이드를 지원하며 한 번의 클릭으로 설치된 모든 응용 프로그램을 업그레이드 할 수 있습니다. 그러나 Cask와 달리 업그레이드, 설치 등을 실행하는 스크립트는 가능하지 않으며 소스를 유지하지 않습니다.
- 또 다른 메커니즘은 응용 프로그램이 시작될 때 발생하는 인앱 업그레이드 확인입니다. App Store 업그레이드와 다르며 차등 업그레이드도 지원합니다.
어떤 종류의 응용 프로그램에 어떤 메커니즘을 사용할 것인지 선택하는 것은 귀하의 몫이라고 생각합니다.이 비교가 도움이 될 수 있습니다.
VLC, OS X FUSE, OwnCloud, Weka 등과 같은 App Store에서 제공하지 않는 응용 프로그램과 내가 구입 한 무료 응용 프로그램 이외의 응용 프로그램에는 Cask를 사용합니다. 인앱 업그레이드는 다운로드 한 데이터의 소스를 유지하지 않기 때문에 나에게 적합하지 않습니다.
답변
Apple이 아닌 Mac App Store가 아닌 앱을 업데이트하는 데 일반적으로 허용되는 “최상의”방법은 없습니다. 어떤 방법은 리눅스 도구를 사용하고, 어떤 것은 특정 바퀴를 재창조하고, 다른 방법은 홈 브루가 핵심 스크립트와 루비 패키지 레시피를 기반으로하는 방식과 비슷한 맥락에서 rsync / curl을 스크립팅하는 방법입니다.
앱이 자동 업데이트되는 경우 (또는 최소한 업데이트를 사용할 수있을 때 최종 사용자에게 알리는 경우) 스파클과 같은 프레임 워크를 사용하여 업데이트를 확인하거나 자체 업데이트 확인 메커니즘을 프로그래밍합니다. Microsoft Office, Chrome, Firefox 및 기타 여러 앱에는 자체 업데이트 메커니즘을 선택하는 것 외에 다른 업데이트 메커니즘이 필요하지 않습니다.
Homebrew casks는 커맨드 라인 도구에 대한 핵심 homebrew 경험과 마찬가지로 업데이트 될 것이므로 시작하여 특정 응용 프로그램을 염두에두고 / 당신이 원하는대로 업데이트되지 않는 경우 질문에 대한 후속 조치를 요청합니다.
Mac을 전문적으로 관리하는 경우, 특정 버전의 앱과 부가적인 Apple 프로세스를 패키지화하기 위해 자체 “앱 스토어”를 이미지화, 업데이트 및 실행하기위한 많은 프레임 워크가 있습니다.