Y a-t-il un moyen de mettre à jour toutes les brew cask
s ? Quelque chose comme brew cask upgrade
?
Le site greedy
L'argument fonctionne bien.
Y a-t-il un moyen de mettre à jour toutes les brew cask
s ? Quelque chose comme brew cask upgrade
?
Je recommande la réponse de @eduncan911 en la question équivalente sur Stack Overflow .
En bref :
brew-cask.sh
donne juste une sortie similaire à celle de Homebrew brew update
. la liste ci-dessus montre tous les paquets installés, avec une icône verte. indiquant toute mise à jour en cours.brew-cask.sh
upgrade forcera la mise à jour de ces paquets.Installer à partir de son dépôt avec :
$ curl -L https://raw.githubusercontent.com/eduncan911/dotfiles/master/bin/brew-cask.sh --create-dirs -o ~/bin/brew-cask.sh
$ chmod 755 ~/bin/brew-cask.sh
Alors utilisez-le comme ceci :
$ brew-cask.sh
$ brew-cask.sh upgrade
J'ai fait ce script par moi-même. Veuillez consulter le github https://github.com/pesh1983/brew_cask_upgrade . Il a assez bonne description, mais si vous avez des questions supplémentaires, n'hésitez pas à me demander. Il fait une mise à jour équitable : désinstallation et installation, donc tout nettoyage nécessaire sera effectué par 'brew' lui-même.
Comme pour @DarrenPMeyer, ceci serait probablement plus approprié en tant que commentaire, mais moi aussi je n'ai pas assez de réputation pour en laisser un, donc...
Pour compléter les commentaires de @Raúl Cuza et @DarrenPMeyer, certains fûts sont considérés comme étant à mise à jour automatique, mais d'après mon expérience, beaucoup ne sont pas mis à jour rapidement.
On peut faire brew cask upgrade --greedy
o brew cask outdated --greedy
pour inclure ces fûts à mise à jour automatique.
Aussi, si vous voulez mettre à jour vos fûts automatiquement, je vous suggère d'installer d'abord homebrew-cask-upgrade :
brew tap buo/cask-upgrade
brew update
brew cu
puis l'ordonnancement brew cu --all --cleanup --yes
dans votre crontab (nous devons utiliser la crontab de Root car les fûts de brassage ont souvent besoin de la permission de Root) :
sudo crontab -e
et écrire :
MAILTO=""
#!/bin/sh
PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin
40 15 * * * brew cu --all --cleanup --yes
for app in $(brew cask list); do
cver="$(brew cask info "${app}" | head -n 1 | cut -d " " -f 2)"
ivers=$(ls -1 "/opt/homebrew-cask/Caskroom/${app}/.metadata/" | tr '\n' ' ' | sed -e 's/ $//')
aivers=(${ivers})
nvers=$(echo ${#aivers[@]})
echo "[*] Found ${app} in cask list. Latest available version is ${cver}. You have installed version(s): ${overs}"
if [[ ${nvers} -eq 1 ]]; then
echo "${ivers}" | grep -q "^${cver}$" && { echo "[*] Latest version already installed :) Skipping changes ..."
continue; }
fi
echo "[+] Fixing from ${ivers} to ${cver} ..."
brew cask uninstall "${app}" --force
brew cask install "${app}"
done
LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.