Jak działają aktualizacje oprogramowania w systemie OS X?

8

Właśnie przełączyłem się z Linuksa na OS X i wciąż się do tego przyzwyczajam.

Wiem, że będę musiał użyć Homebrew, ponieważ polegam na wielu narzędziach CLI. Przeczytałem też o Cask, co sprawia, że ​​zastanawiam się nad jedną rzeczą. W jaki sposób oprogramowanie (nie z App Store) pobiera aktualizacje? Windows-jak, tj. Komunikat informujący o nowej wersji, żebym mógł ją pobrać, lub jakoś zintegrowany z systemem, aby nie musiałem pobierać nowego .dmg za każdym razem, gdy chcę aktualizować aplikację?

Jeśli jest „podobny do Windows”, czy lepiej używać Cask do takich rzeczy jak Firefox, VirtualBox, VLC, LibreOffice ...?

użytkownik3439894
źródło
2
Jeśli potrzebujesz tylko poleceń takich jak g ++ / gcc i innych narzędzi programistycznych, możesz zainstalować narzędzia programistyczne Apple z linii poleceń, po prostu wpisując g ++ w Terminalu, a następnie zaakceptuj instalację. Wszystkie aktualizacje tych narzędzi programistycznych znajdują się w aplikacji App Store, w sekcji „Aktualizacje”.
Flare Cat

Odpowiedzi:

8
  • Dzięki caskaktualizacji wszystkich zainstalowanych aplikacji (zainstalowanych z beczką) można dokonać za pomocą jednego polecenia:

    brew cask update
    

    Jest to nieoficjalny (oparty na społecznościach) sposób na aktualizację aplikacji i ma w swoim repozytorium tylko darmowe oprogramowanie (nie ma możliwości zakupu). Zalety tego mechanizmu to:

    1. Jest skryptowalny
    2. Oddziela aplikacje systemowe od aplikacji użytkownika ( ~/Applications/zamiast nich instalowane są zainstalowane aplikacje /Applications/), więc jest to dla użytkownika.
    3. Instalacja spakowanych instalatorów odbywa się w tle, więc nie wymaga interakcji użytkownika.
    4. Odinstalowywanie aplikacji jest programowane przez jego społeczność, więc nie ma obaw o pozostanie plików po odinstalowaniu.
    5. Możliwe jest systematyczne posiadanie wielu wersji aplikacji, ponieważ mechanizm używa dowiązań symbolicznych do najnowszej lub wybranej wersji aplikacji.
    6. Źródło aplikacji jest przechowywane w pamięci podręcznej, dzięki czemu można je instalować i odinstalowywać bez dodatkowych pobrań.

    Wady tego mechanizmu to:

    1. Nie ma aktualizacji różnicowej. Pobiera cały obraz aplikacji (.dmg) lub pakiet (.pkg) i przechowuje w pamięci podręcznej.
    2. Instalacja aplikacji opiera się na dowiązaniach symbolicznych, które mogą nie być idealne (istnieją dwie kopie aplikacji i mogą być powtarzane na liście „Otwórz za pomocą”)
  • Istnieje również oficjalny mechanizm App Store (domyślny) do aktualizowania aplikacji, które są instalowane razem i obsługuje aktualizację różnicową i może aktualizować wszystkie zainstalowane aplikacje za pomocą jednego kliknięcia; ale w przeciwieństwie do Cask nie jest możliwe uruchomienie skryptów w celu uruchomienia aktualizacji, instalacji itp. i nie zachowuje źródeł.

  • Innym mechanizmem jest sprawdzenie uaktualnienia w aplikacji, które ma miejsce podczas uruchamiania aplikacji. Różni się od aktualizacji App Store i obsługuje również aktualizację różnicową.

Myślę, że to od Ciebie zależy, który mechanizm ma zostać użyty do jakiego rodzaju aplikacji, to porównanie może ci pomóc.

Używam Cask do aplikacji, które nie są dostępne w App Store (takich jak VLC, OS X FUSE, OwnCloud, Weka itp.) Oraz App Store do aplikacji niewolnych, które kupiłem. Uaktualnienia w aplikacji nie są dla mnie odpowiednie, ponieważ nie przechowują źródła pobranych danych.

Hamid Rohani
źródło
3

Nie ma ogólnie akceptowanego „najlepszego” sposobu na aktualizację aplikacji dostarczanych bez Apple i App Store. Jest wiele sposobów, niektórzy używają narzędzi linuxowych, inni zmieniają pewne koła, inni piszą rsync / curl w podobny sposób, jak homebrew jest oparte na podstawowych skryptach i przepisach na pakiety ruby.

Jeśli chodzi o samodzielną aktualizację aplikacji (lub przynajmniej powiadamianie użytkowników końcowych, kiedy aktualizacja może być dostępna), niektórzy używają frameworka, takiego jak Sparkle, do sprawdzania aktualizacji lub programowania własnego mechanizmu sprawdzania aktualizacji. Microsoft Office, Chrome, Firefox i wiele innych aplikacji nie potrzebują żadnego innego mechanizmu aktualizacji oprócz włączenia mechanizmu automatycznej aktualizacji.

Homebrew beczki prawdopodobnie się aktualizują, podobnie jak podstawowa obsługa homebrew dla narzędzi wiersza poleceń, więc zacznę od tego, a następnie zadam pytanie, czy / kiedy masz na myśli konkretną aplikację, która nie aktualizuje twoich pragnień.

Jeśli profesjonalnie zarządzasz komputerami Mac, istnieje wiele ram do obrazowania, aktualizowania, a nawet prowadzenia własnego „sklepu z aplikacjami” w celu pakowania określonych wersji aplikacji i bocznego procesu Apple.

bmike
źródło