題:
如何使用自製軟件安裝本地存檔
MD6380
2013-03-06 07:36:05 UTC
view on stackexchange narkive permalink

我正在嘗試使用Homebrew安裝wget,但是在某些情況下下載總是會損壞。所有軟件包都會發生這種情況,而不僅僅是wget。我可以通過瀏覽器下載tar.gz。我可以使用Homebrew安裝本地下載的存檔嗎?諸如此類的

  brew install wget-1.14.tar.gz  
似乎很奇怪。我不知道您可以這樣做,但是聽起來好像正在發生一些更嚴重的事情。您是否嘗試過運行“釀酒醫生”?
如果您擁有Homebrew期望的確切存檔,則可以將其放在〜/ Library / Caches / Homebrew中,然後嘗試“ brew install”。但這是神秘的。嘗試以常規方式發布`brew install`的輸出時如何?
@echristopherson您的方法有效。如果您將其發佈為答案,我會接受。
我知道為什麼它不起作用。 Brew Doctor沒有顯示任何問題。看起來正在使用的HTTP代理不允許下載。
請注意,當有多個鏡像並且配方中的一個鏡像不起作用時,這很有用。您可以通過環境變量設置不同的SourceForge鏡像,但是對於其他人而言,公認的解決方案非常有用。
我剛剛做了一個“ htop”來找到“ curl”下載作業,並找到了下載文件的文件名,並在復製到該文件夾後將下載的文件重命名為該文件。
八 答案:
echristopherson
2013-03-08 00:31:53 UTC
view on stackexchange narkive permalink

如果Homebrew已經有一個公式(在/ usr / local / Library / Formula中),並且您擁有該公式期望的確切存檔(即,相同的文件名和相同的內容,由SHA1或任何哈希類型確定)該公式使用),您可以將歸檔文件放入〜/ Library / Caches / Homebrew中,然後嘗試
brew install Formula_name (當然,用正確的名稱替換 formula_name )。

“ Homebrew”文件夾不存在,但是在我的“ mkdir”文件夾中可以使用。
`brew install`對我不起作用,但是`brew install `起作用。謝謝!
哦,我把那個隱含了。我在回答中修正了該問題。
xuri
2015-09-08 14:44:29 UTC
view on stackexchange narkive permalink
  $ brew install -f wget-1.14.tar.gz  
不同的軟件包但要求相同,-f似乎不起作用: `zaynehalsall@mbp:〜$ brew install -f Library / Caches / Homebrew / pwgen-2.07.tar.gz 錯誤:名稱為“ Library / Caches / Homebrew / pwgen-2.07.tar.gz”的可用公式 ==>搜索名稱相似的公式... 錯誤:找不到類似名稱的公式。 ==>搜索水龍頭... 錯誤:在水龍頭中找不到公式。 zaynehalsall@mbp:〜$`
發生同樣的錯誤
rstml
2019-06-04 19:58:16 UTC
view on stackexchange narkive permalink

可以為公式預先下載文件,但是您需要使用 brew --cache -s <formula> 生成的正確的緩存文件名。

例如,對於Erlang公式, brew --cache -s erlang 將打印緩存下載的正確名稱。這意味著您可以運行以下命令,而不是手動重命名公式:

  wget source-version.tar.gz
mv source-version.tar.gz $(brew --cache -s <formula>)
 
這適用於當前版本的正式版本-但是如果我要重新安裝節點11而不是當前節點12,brew --cache -s節點仍然為我提供了節點12的路徑。你知道我如何強制Homebrew安裝舊版本?
這是與最新的brew版本2.2.1一起使用的版本
Dan Martinez
2018-06-29 03:41:56 UTC
view on stackexchange narkive permalink

五年了,晚了晚會,但是:

訣竅是將存檔移到brew的緩存中。手動查找可能會很麻煩。幸運的是,您不必這樣做。只需用 brew --cache 來釀造即可。

這使您可以在bash中執行以下操作:

  mv wget-1.14.tar.gz $(brew --cache)
 

或者,在魚中

  mv wget-1.14.tar.gz(brew --cache)
 

在運行 brew install wget 之後,brew將宣布其正在下載檔案,然後立即意識到該檔案已“已下載”,並且一切都從那裡順利進行。

>
gebitang
2019-08-15 08:35:44 UTC
view on stackexchange narkive permalink

根據

不是真的不修改公式文件。

如果本地存檔是預構建文件,則在Brew中也稱為“ bottle”。 這是我要挖掘的:

釀造瓶與MacOS版本相關。

以pkg-config為例。

https://bintray.com/homebrew/bottles/pkg-config#files/上,它列出了不同MacOS版本的不同文件。

下載正確的文件後,需要將其移動到可以通過以下方式生成的正確路徑 brew --cache --force-bottle pkg-config

對於10.14:就像:

/Users/username/Library/Caches/Homebrew/downloads/dd6c78ec64b7c09961ccdb1bf873b5852fd93783cf25ae9b9399c5896a420462--pkg-config-0.29.2.mojave.bottle.tar.gz

對於10.13:就像:

/Users/username/Library/Caches/Homebrew/downloads/8b865a8ad8179d4a45289cab9267cc5e3a6153d06432d90cf1745caf5d92a64d--pkg-config-0.29.2.high_sierra.bottle.tar.gz

此後,brew在運行 brew install pkg-config 時可以找到緩存的本地文件。否則,它將仍然從URL下載。


僅將文件移動到$(brew --cache)將不再起作用,至少對於今天的brew(在我的情況下為2.19版本)。

如果本地文件是源代碼,而不是瓶子。如果您強制使用選項--build-from-source安裝它,則將其移至$(brew --cache -s公式)即可。
DaSqy Stc
2020-03-15 16:23:56 UTC
view on stackexchange narkive permalink

根據 https://github.com/Homebrew/homebrew-cask/issues/21346

但是現在源位置已更改,您可以在計算機中搜索download_strategy.rb

我的位置是“ / usr / local / Homebrew / Library / Homebrew” enter image description here

然後使用 lock rb源文件(否則它將使用git工具進行自我還原)

當嘗試在終端中使用“ brew install xxx”時,您將獲得整個文件緩存路徑位置: enter image description here

Piasy
2019-12-17 14:23:54 UTC
view on stackexchange narkive permalink

Brew更新了其緩存策略,您需要將下載的文件放入〜/ Library / Caches / Homebrew / downloads 中,並遵循其命名約定。

您可以讓brew開始下載,然後您會看到一個 .incomplete 文件,例如 544b4d734091aeb6482dbe2496a8ff223d15bc970fa330d3dccbb0bb6fb0e13e--qemu-4.2.0.catalina.bottle.tar.gz.incomplete ,則可以將文件重命名為 544b4d734091aeb6482dbe2496a8fffa6ina13f0b6b3b0f6b3e0f6e3b6e3b3e0f3e3e0f0e6e0e0e0e6e0e0e0e0e0e0e0e0e0e0e0.gz

我嘗試執行該重命名技巧,但是brew驗證了SHA並檢測到錯誤,它傾向於構建項目及其依賴項,因此請小心。使用2.2.14版
Michael Altfield
2020-07-09 23:17:08 UTC
view on stackexchange narkive permalink

將您的 brew 壓縮文件放在某個目錄中,然後使用 HOMEBREW_CACHE 環境變量將該目錄設置為您的緩存目錄,或使用-cache進行指定參數

-緩存[選項] [公式]

顯示自製軟件的下載緩存。另請參閱HOMEBREW_CACHE。

如果提供了公式,則顯示用於緩存的文件或目錄 公式。

  -s,-build-from-source:顯示從源構建時使用的緩存文件。
--force-bottle:顯示倒入瓶子時使用的緩存文件。
--formula:僅顯示公式的緩存文件。
--cask:僅顯示木桶的緩存文件。
 

...

HOMEBREW_CACHE:使用指定的目錄作為下載緩存。

默認值:macOS:$ HOME / Library / Caches / Homebrew,Linux: $ XDG_CACHE_HOME / Homebrew或$ HOME / .cache / Homebrew。

來源: https://docs.brew.sh/Manpage#--cache-options-formula



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...