Como as atualizações de software funcionam no OS X?

8

Acabei de mudar do Linux para o OS X e ainda estou me acostumando.

Sei que precisarei usar o Homebrew, pois confio em muitas ferramentas de CLI. Além disso, acabei de ler sobre Cask, o que me faz pensar em uma coisa. Como o software (não da App Store) obtém atualizações? Como o Windows, ou seja, uma mensagem notificando sobre uma nova versão para que eu possa baixá-la ou de alguma forma integrada ao sistema, para que eu não precise baixar um novo .dmg toda vez que quiser atualizar um aplicativo?

Se for "parecido com o Windows", é melhor usar o Cask para coisas como Firefox, VirtualBox, VLC, LibreOffice ...?

user3439894
fonte
2
Se você precisar apenas de comandos como g ++ / gcc e outras ferramentas de desenvolvedor, poderá instalar as ferramentas de desenvolvedor de linha de comando da Apple, digitando g ++ no Terminal e aceitando a instalação. Todas as atualizações para essas ferramentas de desenvolvedor estão no aplicativo App Store, em "Atualizações".
Flare Cat

Respostas:

8
  • Com cask, a atualização de todos os aplicativos instalados (instalados com cask) é feita com um único comando:

    brew cask update
    

    Esta é uma maneira não oficial (baseada na comunidade) de atualizar aplicativos e só possui softwares gratuitos em seu repositório (não há como comprar). As vantagens deste mecanismo são:

    1. É programável
    2. Ele separa os aplicativos do sistema dos aplicativos do usuário (os aplicativos instalados são colocados em ~/Applications/vez de /Applications/), portanto são por usuário.
    3. A instalação de instaladores empacotados está em segundo plano, portanto não precisa de interações do usuário.
    4. A desinstalação de aplicativos é programada por sua comunidade, para que não haja preocupação com os arquivos restantes após a desinstalação.
    5. É possível ter várias versões de aplicativos sistematicamente, porque o mecanismo usa links simbólicos para a versão mais recente ou selecionada dos aplicativos.
    6. A fonte dos aplicativos é mantida no cache para que você possa instalá-los e desinstalá-los sem downloads adicionais.

    As desvantagens deste mecanismo são:

    1. Não há atualização diferencial. Ele baixa toda a imagem do aplicativo (.dmg) ou pacote (.pkg) e armazena no cache.
    2. A instalação de aplicativos é baseada em links simbólicos que podem não ser ideais (existem duas cópias de um aplicativo e podem ser repetidas na lista "Abrir com")
  • Também existe um mecanismo oficial da App Store (o padrão) para a atualização de aplicativos que são instalados com ele e suporta a atualização diferencial e pode atualizar todo o aplicativo instalado com um único clique; mas, diferentemente do Cask, ele não é programável para executar a atualização, instalação etc., e não mantém as fontes.

  • Outro mecanismo é a verificação de atualização no aplicativo que ocorre quando o aplicativo é iniciado. É diferente da atualização da App Store e também suporta atualização diferencial.

Acho que depende de você escolher qual mecanismo usar para qual tipo de aplicativo, essa comparação pode ajudá-lo.

Uso o Cask para aplicativos que não são fornecidos na App Store (como VLC, OS X FUSE, OwnCloud, Weka etc.) e na App Store para aplicativos não gratuitos que comprei. As atualizações no aplicativo não são adequadas para mim porque não mantêm a fonte dos dados baixados.

Hamid Rohani
fonte
3

Não existe uma maneira "melhor" aceita para aplicativos que não sejam entregues pela Apple e que não sejam da Mac App Store. Existem várias maneiras: algumas usam ferramentas linux, outras reinventam certas rodas, outras criam scripts rsync / curl de maneira semelhante à maneira como o homebrew é construído em um script básico e em receitas de pacotes ruby.

No que diz respeito à atualização automática dos aplicativos (ou pelo menos notificar os usuários finais quando uma atualização pode estar disponível), alguns usam uma estrutura como o sparkle para verificar atualizações ou programar seu próprio mecanismo de verificação de atualização. O Microsoft Office, Chrome, Firefox e muitos outros aplicativos não precisam de nenhum outro mecanismo de atualização além de ativar o mecanismo de atualização automática.

Os casks de homebrew provavelmente são atualizados, assim como a experiência principal de homebrew das ferramentas de linha de comando, então eu começaria com isso e depois perguntaria se / quando você tem um aplicativo específico em mente que não está atualizando para seus desejos.

Se você gerencia Macs profissionalmente, existem muitas estruturas para criar imagens, atualizar e até executar sua própria "loja de aplicativos" para empacotar versões específicas de aplicativos e acompanhar o processo da Apple.

bmike
fonte