كيفية تحديث جميع حزم Homebrew دفعة واحدة (وإصلاح التبعيات المعطلة)
تشغيل brew upgrade يجب أن يكون روتيناً لا يستغرق 30 ثانية. لكن أحياناً يجلب حزماً غير متوقعة، أو يكسر التبعيات، أو يُلقي أخطاء مُحيّرة. يغطي هذا الدليل سير عملية التحديث الكاملة وكل مشكلة تبعيات شائعة — مع أوامر لإصلاح كل منها.
روتين تحديث Homebrew الآمن
شغّل هذا التسلسل بالترتيب. كل أمر يؤدي دوراً محدداً:
brew update # جلب أحدث معلومات الحزمة من GitHub brew outdated # معاينة ما سيتم ترقيته (اختياري لكن مفيد) brew upgrade # ترقية جميع الحزم القديمة brew autoremove # إزالة حزم التبعية غير المستخدمة brew cleanup --prune=all # حذف الإصدارات القديمة والتنزيلات المؤقتة brew doctor # فحص مشاكل الإعدادات

لماذا يُثبّت brew upgrade حزماً غير متوقعة كثيرة؟
هذا يفاجئ كثيراً من المستخدمين. عند ترقية حزمة واحدة، يجب على Homebrew أيضاً ترقية جميع تبعياتها — وأحياناً تلك التبعيات لها تبعياتها الخاصة. تثبيت Node.js مثلاً قد يُشغّل 58 حزمة إضافية. هذا حسب التصميم: لا يدعم Homebrew مزج إصدارات الحزم في نفس التثبيت.
لرؤية التبعيات التي ستجلبها حزمة ما قبل التثبيت:
brew deps --tree node
إصلاح أشيع أخطاء Homebrew
الخطأ الأول: “Permission denied” على /opt/homebrew
# Apple Silicon sudo chown -R $(whoami):admin /opt/homebrew chmod -R u+rwX /opt/homebrew # Intel Mac sudo chown -R $(whoami):admin /usr/local/Homebrew
الخطأ الثاني: “brew command not found” بعد ترقية macOS
# Apple Silicon — أضف إلى ~/.zshrc echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc source ~/.zshrc
لإصلاحات أكثر تفصيلاً خاصة بترقية macOS، اقرأ مقالنا: إصلاح مشاكل Homebrew بعد ترقية macOS.
الخطأ الثالث: روابط رمزية مكسورة
brew doctor brew link --overwrite [اسم-الحزمة]
الخطأ الرابع: مستودعات Git تالفة
cd $(brew --repo) git fetch origin git reset --hard origin/master
الخطأ الخامس: تبعيات مفقودة بعد إلغاء تثبيت حزمة
brew missing # يُدرج الحزم ذات التبعيات المفقودة brew reinstall [اسم-الحزمة] # إعادة تثبيت حزمة محددة بشكل نظيف

brew doctor يُشخّص مشاكل الإعدادات ويقترح إصلاحات محددةكيفية إعادة تثبيت Homebrew بالكامل (الملاذ الأخير)
brew bundle dump --file=~/Brewfile # حفظ قائمة حزمك # ثم أزل Homebrew بالسكريبت الرسمي من https://github.com/Homebrew/install # ثم أعد تثبيت Homebrew brew bundle install --file=~/Brewfile # استعادة جميع الحزم