كيفية تحديث جميع حزم Homebrew دفعة واحدة (وإصلاح التبعيات المعطلة)

0
29views

تشغيل brew upgrade يجب أن يكون روتيناً لا يستغرق 30 ثانية. لكن أحياناً يجلب حزماً غير متوقعة، أو يكسر التبعيات، أو يُلقي أخطاء مُحيّرة. يغطي هذا الدليل سير عملية التحديث الكاملة وكل مشكلة تبعيات شائعة — مع أوامر لإصلاح كل منها.

روتين تحديث Homebrew الآمن

شغّل هذا التسلسل بالترتيب. كل أمر يؤدي دوراً محدداً:

brew update           # جلب أحدث معلومات الحزمة من GitHub
brew outdated         # معاينة ما سيتم ترقيته (اختياري لكن مفيد)
brew upgrade          # ترقية جميع الحزم القديمة
brew autoremove       # إزالة حزم التبعية غير المستخدمة
brew cleanup --prune=all  # حذف الإصدارات القديمة والتنزيلات المؤقتة
brew doctor           # فحص مشاكل الإعدادات
أمر ترقية Homebrew الذي يعمل في macOS يعرض الحزم التي يتم تحديثها
أمر ترقية Homebrew الذي يعمل في macOS يعرض الحزم التي يتم تحديثها

لماذا يُثبّت 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 في Terminal يُظهر تحذيرات وإصلاحات Homebrew
brew doctor يُشخّص مشاكل الإعدادات ويقترح إصلاحات محددة

كيفية إعادة تثبيت Homebrew بالكامل (الملاذ الأخير)

brew bundle dump --file=~/Brewfile    # حفظ قائمة حزمك
# ثم أزل Homebrew بالسكريبت الرسمي من https://github.com/Homebrew/install
# ثم أعد تثبيت Homebrew
brew bundle install --file=~/Brewfile  # استعادة جميع الحزم

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *