Homebrew paketini kurun ve md5 karmasını yok sayın


9

Homebrew kullanarak bazı yazılımlar yüklemeye çalışıyorum ve bağımlılıklardan birini indirip yüklemeye çalışırken, paket bir MD5 uyuşmazlığı nedeniyle yüklenmeyecek.

Homebrew'un bir dosyanın MD5 karmasını yok sayıp yüklemeye devam etmesini sağlamak mümkün mü?


Hangi paketi bize söyleyebilir misiniz ve Homebrew'u en son sürüme güncellediyseniz?
slhck

El ile indir, md5 dosyaadı.uzantı ve demlemek formül-adını düzenlemek, orada md5 karma değiştirin.
Tuan Anh Tran

Yanıtlar:


8

OP'nizin bir yorumundan bahsettiği gibi: MD5 toplamlarının eşleşmediğinden endişe ediyorum. Bu, indirdiğiniz tarball'ın bozuk olduğu anlamına gelebilir, bu durumda eşleşmeyi geçersiz kılmak için yukarıdakileri yapmak aslında sorun yaratacaktır, çünkü kırık araçları yükleyeceksiniz. Veya indirdiğiniz tarball'a güvenilemez, yasal olmayan ve potansiyel olarak zararlı rutinler içeren bir şey veriliyor olabilir. Homebrew veri havuzunuzun aşağıdakilerle güncel olduğundan emin olurum:

brew update

Gerçekten güncelse deneyebilirsiniz:

brew install --force <package>

kurulumu zorlamak için. Bu seçenek genellikle aynı sürümde zaten kurulu bir paketin yeniden yüklenmesini zorlar, ancak bir MD5 hatasını yoksayabilir. Yükleme yordamı ile dürttü homebrewama bu işe yarayacağı belli değildi.

Daha kötü durum: Formül için tarball'ı indirebilir, bunun için MD5'i elle hesaplayabilir ve daha sonra çekten geçmek için Formül dosyasını uygun MD5 değeriyle güncelleyebilirsiniz. Örneğin, dos2unix'i yüklemekte sorun yaşıyorsanız, formül dosyasını bulabilirsiniz /usr/local/Library/Formula/dos2unix.rb. Dosyanın üstünde tarball ve bunun için MD5 toplamı bulunur:

> more dos2unix.rb 
require 'formula'

class Dos2unix < Formula
  url 'http://waterlan.home.xs4all.nl/dos2unix/dos2unix-5.3.1.tar.gz'
  md5 '438c48ebd6891b80b58de14c022ca69e'
  homepage 'http://waterlan.home.xs4all.nl/dos2unix.html'

MD5 kontrolü başarısız olursa tarball'ı indirin:

> wget http://waterlan.home.xs4all.nl/dos2unix/dos2unix-5.3.1.tar.gz
--2012-03-17 18:07:07--  http://waterlan.home.xs4all.nl/dos2unix/dos2unix-5.3.1.tar.gz
Resolving waterlan.home.xs4all.nl... 194.109.6.92, 2001:888:0:18::80
Connecting to waterlan.home.xs4all.nl|194.109.6.92|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 54967 (54K) [application/x-gzip]
Saving to: `dos2unix-5.3.1.tar.gz'

100%[==============================================================================================================>] 54,967      84.8K/s   in 0.6s    

2012-03-17 18:07:09 (84.8 KB/s) - `dos2unix-5.3.1.tar.gz' saved [54967/54967]

Dosya için MD5 sağlama toplamını kendiniz hesaplayın:

> md5 dos2unix-5.3.1.tar.gz 
MD5 (dos2unix-5.3.1.tar.gz) = 438c48ebd6891b80b58de14c022ca69e

Ardından, paket için formül dosyasına hesapladığınız değeri girin ve paket için install komutunu yeniden çalıştırın.


1
@NewAlexandria evet ve cevabımın ilk paragrafında bunu yapmaktan endişeliyim.
Ian C.

1

Sadece birkaç dakika önce yüklemeye çalıştığım bir formülle aynı sorunu yaşadım. MD5 denetimini geçersiz kılmadı ancak --force bayrağıyla yüklemeyi çalıştırmayı denedim (bu da mantıklı TBH).

Ian C.'nin cevabında verdiği tavsiyenin ardından, devam ettim ve 'demlemek güncellemesi' yaptım. Bu bittikten sonra yüklemeye çalıştığım formül için yüklemeyi çalıştırabildim ve mükemmel çalıştı / artık bir MD5 uyuşmazlığı yoktu.

İşte Homebrew deposundaki (httrack ile ilgili bir sorun), bununla karşılaştığımda yüklemeye çalıştığım bir bağlantı), temelde sadece 'demlemek güncellemesinin' sorununuzu çözmesi gerektiğini onaylıyor.

https://github.com/mxcl/homebrew/issues/11242

'Demlemek güncelleme' çalıştırılması sorunu çözmezse:

  • A) Formüldeki MD5 karması eskidir ve güncellenmesi gerekir.
  • B) İndirme aslında beklenen şey değildir ve aslında bir şey vardır.

A örneğinde, Ian C.'nin tanımladığı gibi formülü kendiniz güncelleyebilirsiniz - ayrıca herkesin yararlanabilmesi için yukarı yönlü repoda güncellenmesi için bir çekme isteği göndermeniz de kesinlikle tavsiye edilir!

B durumunda, formül eski bir URL'yi referans gösterebilir veya indirme işlemi bozuk veya yanlış dosyaya vb. Atıfta bulunabilir. Bu durumda, biraz araştırma yapmanız ve proje sahibiyle iletişime geçerek devam etmeniz gerekir. veya benzeri.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.