J'utilise Homebrew Cask pour installer des applications sur OS X. Comment mettre à niveau tous les casks installés?
macos
homebrew
homebrew-cask
enrico.bacis
la source
la source
~/Library/Application Support/Brackets/extensions/user
, et celles-ci devraient persister lors des mises à niveau. Les plugins système sont en effet stockés dans le bundle d'applications dansBrackets.app/extensions/default
, et ceux-ci sont perdus lorsque vous remplacez le bundle d'applications, mais le moyen le plus simple serait de simplement copier les plugins de l'ancien bundle vers le nouveau.brew cask upgrade
15 commits fusionnés dans Homebrew: masterbrew cask uninstall my-cool-cask
alorsbrew cask install my-cool-cask
.Réponses:
Il existe enfin un mécanisme de mise à jour officiel pour Homebrew Cask (voir le numéro 3396 pour l'implémentation)! Pour l'utiliser, exécutez simplement cette commande:
brew cask upgrade
Cependant, cela ne mettra pas à jour les casks qui n'ont pas d'informations de version (
version :latest
) ou les applications qui ont un mécanisme de mise à niveau intégré (auto_updates true
). Pour réinstaller ces boîtiers (et par conséquent les mettre à niveau si des mises à niveau sont disponibles), exécutez la commande de mise à niveau avec l'--greedy
indicateur comme ceci:brew cask upgrade --greedy
la source
brew cask outdated | xargs brew cask reinstall
pour réinstaller uniquement les fûts obsolètes.brew cask outdated
n'imprime que les noms des applications pour lesquelles la «mise à jour automatique» n'est pas activée. Pour mettre à niveau TOUTES les applications obsolètes, utilisezbrew cask outdated --greedy --verbose | grep -v '(latest)' | awk '{print $1}' | xargs brew cask reinstall
mise à niveau homebrew-cask
Je pense que c'est de loin la meilleure solution pour mettre à niveau les fûts.
source: https://github.com/buo/homebrew-cask-upgrade
Installation et utilisation
(Facultatif) Forcer la mise à niveau des applications obsolètes, y compris celles marquées comme les plus récentes:
la source
Il est possible de lister les fûts installés avec:
Et forcez la réinstallation d'un fût avec:
Donc, en passant la sortie de la première commande dans la seconde, nous mettons à jour tous les fûts:
la source
Script bash pour mettre à niveau les packages
inspiré de la réponse de Pascal
Ce qu'il fait
brew cask info
version la plus récentesource: https://gist.github.com/atais/9c72e469b1cbec35c7c430ce03de2a6b
une doublure pour les impatients:
enregistrer sous
/usr/local/bin/cask-upgrade
, afin que vous puissiez l'exécuter localement commecask-upgrade
plus tardla source
brew cask info $cask | grep "Not installed"
?$ brew cask info $cask | grep "Not installed"
donne l'erreurError: This command requires a Cask token
for cask in ${casks[@]}; do
smacks head
évidemment! Je ne peux pas croire que je n'ai pas compris ça.À partir de décembre 2017, utilisation: mise à niveau du fût de bière
[DEPRECATED depuis décembre 2017 lorsque Homebrew a introduit la commande de mise à niveau pour cask] J'utilise simplement ce qui suit:
la source
awk '{print $1}'
entre les deux.Voici la fonction que j'ai écrite pour gérer cela. Notez que personnellement, je ne voulais pas qu'il réinstalle tout aveuglément car certains des fûts que j'utilise prennent un certain temps à installer ou nécessitent des invites supplémentaires.
la source
Sur la base de la réponse de @Atais, j'ai amélioré sa logique en quelque chose de plus agréable. Je voulais un moyen d'inspecter les paquets à mettre à niveau en premier, avant de forcer la mise à niveau.
$ brew-cask.sh
liste juste une sortie similaire à celle de Homebrewbrew update
.✔
indiquant les mises à jour en attente.$ brew-cask.sh upgrade
forcera la mise à jour de ces packages.Code:
installez-le simplement (aka "J'en ai besoin maintenant!")
Il est enregistré dans mon
.dotfiles
repo ; ainsi, vous pouvez l'installer rapidement dans votre~/bin
avec:Ensuite, utilisez-le comme ceci:
Si vous n'en avez pas
~/bin
dans votre chemin, préfixez~/bin/
les instructions ci-dessus.la source
brew cask upgrade
La
upgrade
commande a récemment été introduite dans Homebrew Cask et devrait rendre obsolète toutes les autres méthodes manuelles décrites dans les autres réponses.la source
Je pense en utilisant
fera l'affaire. Cela aidera également à supprimer la / les version (s) précédente (s) de l'application et installera la version la plus récente.
la source
brew cask reinstall `brew cask outdated`
en améliorant le code fourni par deinspanjer, j'ai essayé d'imiter une commande noop, un peu comme celle de chocolatey ( choco update --noop / choco obsolète ).
https://git.io/vgjiL
Comme on peut le voir, j'utilise une approche modulaire car mon cas d'utilisation diffère un peu. Je ne veux pas m'asseoir devant mon ordinateur et taper oui / non pour chaque application que j'ai installée. Bien qu'il n'y ait pas de moyen réel de mettre à niveau les fûts (juste la réinstallation de la version la plus récente), je fais d'abord une mise à jour de brassage pour avoir l'information qu'il existe réellement des mises à jour disponibles .
Ensuite, je parcours tous les fûts pour afficher leurs informations. Parce que j'ai fait une mise à jour de bière auparavant, on est maintenant fourni avec l'information que la dernière version de certains cask n'est pas installée.
Dans ma méthode de mise à jour, j'analyse la commande info pour cette ligne spécifique:
Ce qui se traduit par: "Donnez les 3 lignes ci-dessus d'informations fournies chaque fois que vous lisez la ligne" non installé ". Supprimez ensuite toute ligne contenant un lien, supprimez également une ligne contenant un ':'."
Compte tenu de la structure de la commande brew cask info, nous nous retrouvons avec une ligne (aucune information de version, aucune URL d'application), qui reflète le nom réel du cask avec lequel il a également été installé.
sortie d'informations sur le fût de bière
Dans ma version, cette information est maintenant imprimée afin que l'on puisse facilement voir quels fûts sont périmés et pourraient être mis à jour.
À ce stade, je fais un cas de commutation, car peut-être que le moment n'est pas suffisant pour mettre à jour les choses. Cela dépend de votre cas d'utilisation. Pour moi, je veux parfois juste voir les nouveautés (en attente d'une nouvelle version, un correctif) mais je n'ai pas le temps de mettre à jour les choses car pour le moment je ne veux pas fermer mon navigateur etc.
Ainsi, si l'on opte pour "oui", la liste des noms nettoyés des fûts est donnée à la fonction de mise à jour où pour chaque fût jugé obsolète, la réinstallation est émise.
Merci encore à deinspanjer, en essayant de résoudre ce problème par moi-même, j'ai toujours oublié de publier une mise à jour de brew à l'avance, il n'y avait donc pas de ligne "non installé" à analyser (le fondement de toute mon approche).
J'espère que cela a été utile.
la source
J'ai fait un tel scénario par moi-même. Veuillez consulter le github https://github.com/pesh1983/brew_cask_upgrade . Il a une assez bonne description, mais si vous avez des questions supplémentaires, n'hésitez pas à me les poser. Il fait une mise à niveau équitable: désinstallez et installez, donc tout nettoyage nécessaire sera effectué par «brassage» lui-même.
la source
la source
obtenir des fûts obsolètes:
mise à niveau du fût:
script de démonstration:
la source
Vérifiez les fûts périmés:
Mise à niveau de tous les fûts obsolètes:
Si vous souhaitez mettre à niveau un cask spécifique, ajoutez simplement le nom du cask après la mise à niveau (ex: 4k-video-downloader):
la source
Sur la base de ce que j'ai lu, j'ai créé un script qui créera un fichier qui répertorie les fichiers à mettre à jour, y compris les applications définies comme les plus récentes. Vous pouvez ensuite modifier le fichier en fonction de vos besoins et installer les mises à jour à l'aide de mon script olinst.
Pour plus d'informations, visitez mon github.
https://github.com/pacav69/caskroom-offline-install
la source
Cela m'a vraiment énervé, j'ai donc créé ce script pour mettre à jour toutes les applications Brew et permettre à l'utilisateur de choisir les applications Cask à mettre à jour. Vous pouvez également exclure les applications de la considération.
https://github.com/derrekyoung/ScriptsAndUtils/blob/master/brew-cask-upgrade.sh
la source
j'utilise
la source