2015-05-07 65 views
3

我不知道它是如何得到這個壞。我是一名Web開發人員,我使用Ubuntu,這裏只是我使用的一些軟件包管理器。如何簡化我的一攬子包管理器?

  • apt-get的全系統封裝
  • NPM節點包
  • PIP的Python包
  • PIP 3爲Python 3包
  • 陰謀Haskell的包
  • 作曲家PHP包
  • 用於前端包裝的涼亭
  • 寶石包的寶石
  • git的其他東西

當我開始一個新的虛擬機一個新的項目,我不得不從十幾個不同的地方似乎安裝了十幾個包管理器,並使用它們來創建一個開發環境。這只是失控。

我發現我基本上可以避免安裝和使用pip/pip3,只需從apt安裝python軟件包,如sudo apt-get install python3-some-library。這節省了必須使用一個軟件包管理器。棒極了。但是,我堅持使用那些通常非常舊的軟件包的Ubuntu版本。

我想知道的是,是否有一個元包管理器可以幫助我替換這些零件中的一部分,所以我的開發環境不是很難複製?

+0

對不起,我不能添加任何有用的東西,但:我感覺你,兄弟。 –

回答

1

我有一個想法讓包管理器來統治他們都是因爲這個原因。雖然從未完成,但需要付出很多努力才能保持兼容性。對於每個軟件包管理者,您都有一個龐大的社區來支持它的維護。

我最好的建議是儘量減少你的工具鏈每種類型的項目。理想情況下,您不需要針對您所從事的每個項目的每種語言工作。你有多少個項目同時使用python 2和python 3?

繼續使用apt作爲您的系統軟件包並安裝git。從那裏嘗試堅持每個項目一種語言。 AFAIK您列出的所有軟件包管理器都支持從git安裝軟件包。您提到的語言都具有可比擬的工具集,因此請使用可用於目標語言的工具鏈。

我的工作與使用composernpmbowerbundlermaventar.gz文件前端的SPA,因爲這些都是他們知道的工具一個團隊。除此之外,他們只是簡單地使用vagrant作爲部署者。我們考慮了我們的工具鏈,並描述了我們的需求,並意識到一旦我們爲手頭的任務採用適當的工具,就可以用一種語言來表達它。