Difference between revisions of "Official repositories (正體中文)"

From ArchWiki
Jump to navigation Jump to search
(rm temporary i18n template)
(update interlanguage links)
Tag: wiki-scripts
 
(25 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
[[Category:正體中文]]
 
[[Category:正體中文]]
[[Category:軟體套件包管理 (正體中文)]]
+
[[Category:Package management (正體中文)]]
[[Category:關於Arch (正體中文)]]
+
[[Category:About Arch (正體中文)]]
[[Category:General (正體中文)]]
+
[[ar:Official repositories]]
[[cs:Official Repositories]]
+
[[cs:Official repositories]]
[[en:Official Repositories]]
+
[[en:Official repositories]]
[[es:Official Repositories]]
+
[[es:Official repositories]]
 
[[fr:Depots]]
 
[[fr:Depots]]
[[it:Official Repositories]]
+
[[it:Official repositories]]
[[nl:Official Repositories]]
+
[[ja:公式リポジトリ]]
[[pt:Official Repositories]]
+
[[nl:Official repositories]]
[[ru:Official Repositories]]
+
[[pt:Official repositories]]
[[tr:Resmi_Depolar]]
+
[[ru:Official repositories]]
[[zh-CN:Official Repositories]]
+
[[zh-hans:Official repositories]]
{{Article summary start}}
+
{{Related articles start (正體中文)}}
{{Article summary text|軟體倉庫包含開發者和受信用戶(TU)提供的軟體套件包,通常我們用pacman安裝使用他們。本文介紹將ArchLinux的各種軟體倉庫。}}
+
{{Related2|Mirrors|鏡像站 (英)}}
{{Article summary heading|Related}}
+
{{Related2|Arch User Repository (正體中文)|Arch 使用者倉庫}}
{{Article summary wiki|Mirrors}}
+
{{Related2|Unofficial User Repositories|非官方使用者倉庫 (英)}}
{{Article summary wiki|AUR}}
+
{{Related2|PKGBUILD|PKGBUILD (英)}}
{{Article summary wiki|Unofficial User Repositories}}
+
{{Related2|makepkg|makepkg (英)}}
{{Article summary end}}
+
{{Related2|pacman (正體中文)|Pacman}}
 +
{{Related2|Arch Build System (正體中文)|Arch 組建系統}}
 +
{{Related articles end}}
 +
{{翻譯狀態|Official_Repositories|2014-01-24|291049}}
 +
[[Wikipedia:software repository|軟體倉庫]]是存放軟體包的地點,安裝過程中可以從這些軟體庫取得軟體包。
  
[[Wikipedia:software repository|軟體倉庫]](在Debian系發行版中,又叫做「軟體源」)是軟體套件包存儲的地方。通常我們所說的軟體倉庫指'''在線軟體倉庫''',亦即用戶從網際網路獲取軟體的地方。Arch Linux [[Package Maintainer|軟體套件包維護員]](包括開發人員以及[[Trusted Users|受信用戶]])對基本的、常用的或者流行的軟體套件包進行維護,用戶則可以通過[[pacman]]軟體套件包管理器安裝使用這寫軟體。本文將帶你了解我們的官方軟體倉庫。
+
'''官方倉庫'''包含了基本與常用的軟體包,透過 [[pacman (正體中文)|Pacman]] 可以輕鬆取得。
  
= 歷史背景 =
+
這些軟體包有特定的[[Package Maintainer|維護者]]維護。
  
大部分倉庫是因為歷史原因分開的。原本,當這個發行版只有一小部分用戶時,是只有一個軟體倉庫的,它就是現在的[core]──那時候它叫做[official]。這個倉庫主要存放了Judd Vinet選定的應用程序,當然現在已經不是這樣了:它被設計為只包含「每種類型」程序中的一個 ── 一個桌面環境、一個主瀏覽器等等。
+
== 軟體倉庫 ==
  
後來有用戶不滿Judd的選擇,由於[[Arch Build System|ABS系統]]使用簡單,所以他們就用ABS來創建自己的軟體套件包。這些軟體套件包被放入一個名為[unofficial]的軟體倉庫,而這個倉庫由除Judd以外的開發人員維護。最終,新倉庫獲得開發人員同樣的支持,所以就不再使用[official]和[unofficial]這兩個名稱了。大約在0.5版本的時候,兩個倉庫更名為[current]和[extra]。
+
=== core ===
  
在2007.8.1版本發布之後,[current]更名為[core],以免讓人誤解它包含的內容。如今,這兩個倉庫在開發人員和社區眼中都是相同分量的。不過[core]還是有些不同的,主要區別在於安裝光盤和發布的快照中的軟體套件包都只在[core]當中。這個倉庫可以實現一個完整的Linux系統,但並不一定是你想要的Linux系統。
+
這個軟體庫位於[[mirror|鏡像站]]的 {{ic|.../core/os/}} 目錄下。
  
在0.5或者0.6版本的時候,倉庫里有大量的軟體套件包沒有開發者願意去維護。於是一位開發人員(Xentac)建立了「受信用戶倉庫」(Trusted User Repositories),作為存放被信任的用戶(TU)自行創建的軟體套件包的倉庫。[staging]倉庫里的軟體套件包可以被Arch Linux的開發人員選拔入官方倉庫,不過除此之外,開發人員和受信用戶或多或少還是有所不同的。
+
core 包含的軟體包有以下用途:
  
就這樣過了一段時間,逐漸的受信用戶對他們的軟體倉庫感到厭倦,而非受信用戶又期望可以將自己的軟體套件包與大家分享。這導致了[[AUR|AUR]]的出現。慢慢的TU們形成更為嚴密的組織,如今他們共同維護[community]軟體倉庫。TU是一個獨立於Arch Linux開發人員之外的組織,兩者並沒太多交流。不過,熱門的軟體套件包仍然會偶爾從[community]選拔入[extra][https://aur.archlinux.org/ AUR]也支持允許非受信用戶提交PKGBUILD給其他用戶自願使用。這些軟體套件包不提供技術支持,所以[[AUR|AUR]]有時候被稱為[unsupported]倉庫。因為沒有發布二進制包,unsupported並不算是真正的軟體倉庫。如果[[AUR|AUR]]的某些軟體套件包被TU認為熱門或是有興趣維護它,TU可以自行決定從unsupported里接納某些軟體套件包進入[community]。
+
* 啟動 Arch Linux
 +
* [[Network configuration (正體中文)|連上網際網路]]
 +
* [[Creating packages|組建軟體包]]
 +
* 管理並修復支援的[[File systems|檔案系統]]
 +
* 系統設定程序 (例如 {{Pkg|openssh}})
 +
以及上述軟體所需的其他相依軟體 (非必要的 makedepend)
  
在2006年,[core]倉庫里未被正確編譯的內核[https://www.archlinux.org/news/please-avoid-kernel-261614-1/ 導致許多用戶系統崩潰]。之後,「core倉庫審核機制」引入:所有[core]倉庫軟體套件包更新前,必須先在一個叫做[testing]的倉庫進行測試,必須在其他開發者同意後,軟體套件包才能正式移入[core]。後來,[core]中出現一些低使用率的軟體,審核機制對它們有所寬松。
+
''core'' 軟體庫有嚴格的質量要求。一個更新軟體包必須經過開發人員與使用者的審核才會被接受。低使用率的軟體包只需經過合理的公開測試:更新通知、要求審核、視變更程度進行 (一星期以內的) 持續測試、無任何特殊錯誤報告,加上維護人員的審核即可。
  
2009年末至2010年初,出現了一些新的文件系統,人們希望在安裝系統時就使用它們(即納入[core])。鑒於[core]從來沒有給出明確的界定(只是說「重要的軟體套件包,由開發者挑選」),人們決定給它一個更為明確的定義(見下)。
+
{{註記|若要在沒有網路的環境下建立本地的 ''core'' 軟體庫 (其他庫也可),參閱[[Pacman tips#Installing_packages_from_a_CD.2FDVD_or_USB_stick|從 CD/DVD 或 USB 碟安裝軟體包]]。}}
  
= 軟體倉庫列表 =
+
=== extra ===
  
== [core] ==
+
這個軟體庫位於鏡像站的 {{ic|.../extra/os/}} 目錄下。
  
[core]倉庫位於Arch鏡像的''core/os/i686''或者''core/os/x86_64''目錄中。
+
''extra'' 包含所有不適合放在 ''core'' 的軟體包。例如 Xorg、視窗管理員、網路瀏覽器、媒體播放器、程式語言 (如 Python 和 Ruby) 的開發工具,還有更多程式。
  
該倉庫對包質量有嚴格要求:
+
=== community ===
* 軟體套件包更新需要經過開發者和用戶的審察批准。
 
* 對於低使用率的軟體,公布合理的更新緣由(例如:發布通知、請求審核、在[testing]倉庫審核幾天到幾周不等),後經開發者簡單的審核即可。
 
  
該倉庫包含下列軟體套件包:
+
這個軟體庫位於鏡像站的 {{ic|.../community/os/}} 目錄下。
  
* 啟動Arch系統所必需的。
+
''community'' 包含從 [[Arch User Repository (正體中文)|Arch 使用者倉庫]]選拔出來的軟體包,這些軟體都獲得相當的投票數,並由[[Trusted_Users|受信任的使用者]]認養。
* 鏈接網際網路時可能需要的。
 
* 編譯軟體套件包時需要的。
 
* 檢查、修復文件系統的工具。
 
* 在安裝過程中可能用到的(例如 openssh)。
 
* 上述軟體套件包的運行時依賴。
 
  
''核心系統安裝盤中包含這些軟體套件包,通過安裝盤,你可以離線安裝基本系統。''
+
=== multilib ===
  
== [extra] ==
+
這個軟體庫位於鏡像站的 {{ic|.../multilib/os/}} 目錄下。
  
[extra]倉庫位於Arch鏡像的''extra/os/i686''或者''extra/os/x86_64''目錄中。它包含不適合[core]庫標準的大量軟體套件包,比如:Xorg,窗口管理器,網頁瀏覽器,媒體播放器,腳本語言支持等等。
+
''multilib'' 包含 32 位元的軟體與函式庫,讓 64 位元機器可以執行、組建 32 位元的應用程式 (例如 {{Pkg|wine}}, {{AUR|skype}}{{Broken package link|package not found}})。
  
== [community] ==
+
更多資訊請參閱 [[Multilib]]
  
[community]倉庫位於Arch鏡像的''community/os/i686''或者''community/os/x86_64''目錄中。它由''受信用戶(TU)''維護,包含由TU認證的、獲得足夠多打分的[[AUR|AUR]]軟體套件包。嚴格來講,它是[[AUR|AUR]]的一部分。
+
=== testing ===
  
== [multilib] ==
+
{{警告|謹慎啟用 ''testing'' 軟體庫,直接進行更新有可能導致系統損壞。只有當您有足夠的問題處理經驗時再考慮使用。}}
  
[community]倉庫位於Arch鏡像的''multilib/os/x86_64''目錄中。包含64位系統中需要的32位軟體和庫,例如:Flash外掛程式,Skype。
+
這個軟體庫位於鏡像站的 {{ic|.../testing/os/}} 目錄下。
  
== [testing] ==
+
''testing'' 包含 ''core'' 或 ''extra'' 軟體庫的候選軟體包。
  
[testing]倉庫位於Arch鏡像的''testing/os/i686''或者''testing/os/x86_64''目錄中。[testing]倉庫很特別,它包含即將進入[core]、[extra]軟體庫的候選軟體套件包。
+
會進入 ''testing'' 的軟體包有以下特點:
  
下列軟體套件包會進入[testing]庫:
+
* 用它們更新有讓系統故障的風險,必須先進行測試。
* 更新該軟體套件包可能損壞系統,需要進行測試。
 
* 更新該軟體套件包,可能需要其他相關軟體套件包重建,軟體套件包在[testing]庫中等候全部相關軟體套件包準備到位。
 
  
[testing]庫是唯一可能和其它官方軟體倉庫有軟體套件包名稱沖突的倉庫。如果要啟用,應該在''pacman.conf''文件里把它設置為第一個倉庫。
+
* 它們需要其他軟體包才能組建。這種情況下,所有需要重建的軟體包都會被放進 ''testing'',等到全部組建工作完成後,這些軟體包才會被移回原本的軟體庫。
  
{{Warning|謹慎啟用[testing]倉庫,其中的軟體套件包可能損壞系統。僅當你有足夠的經驗應對問題時,再考慮啟用。}}
+
''testing'' 是唯一會和其他官方軟體庫產生名稱衝突的軟體庫。一旦啟用,必須將它擺在 {{ic|/etc/pacman.conf}} 檔案的第一順位。
  
[testing]庫並不是「最新」軟體套件包的倉庫,而是為軟體套件包提供「測試」的地方。我們建議使用[testing]庫的用戶訂閱arch-dev-public郵件列表,並在Bug Tracker報告bug。
+
{{註記|''testing'' 不是存放「最新」軟體包的地方。這個軟體庫也被用來暫存有破壞系統風險的更新軟體包:它們可能屬於 ''core'' 庫,或是在其他方面有極大影響。因此,強烈建議 ''testing'' 的使用者訂閱 [https://mailman.archlinux.org/mailman/listinfo/arch-dev-public arch-dev-public 郵件清單],查看 [https://bbs.archlinux.org/viewforum.php?id=49 testing 軟體庫論壇],並[[Reporting bug guidelines|回報所有遇到的錯誤]]。}}
  
== [community-testing] ==
+
您必須同時啟用 ''community-testing'' 才能啟用 ''testing'' 軟體庫。
  
[community-testing]庫的功能類似[testing],不過是為[community]庫設計的測試倉庫。
+
==== community-testing ====
  
== [unsupported],即 AUR ==
+
這個軟體庫和 ''testing'' 類似,不過裡面的軟體包是 ''community'' 內軟體的候選版本。
  
[unsupported],即我們所熟知的[[AUR|AUR]]。在這個倉庫中,用戶可以自行提交軟體套件包(通常以[[PKGBUILD]]的形式,而非二進制包)。無法使用pacman使用這個庫,下載[[PKGBUILD]]以及相關文件後,需要自行通過[[makepkg]]編譯軟體套件包。諸如[[yaourt_(正體中文)|yaourt]]之類的[[AUR Helpers]]是用戶使用[[AUR|AUR]]的好工具。
+
您必須同時啟用 ''testing'' 才能啟用該軟體庫。
  
{{Note|注意:嚴格來說,[community]和[unsupported]庫一同組成[[AUR|AUR]]。}}
+
==== multilib-testing ====
  
== 非官方用戶倉庫 ==
+
這個軟體庫和 ''testing'' 類似,不過裡面的軟體包是 ''multilib'' 內軟體的候選版本。
  
一些用戶組建了自己的軟體倉庫,參見[[Unofficial User Repositories]]
+
您必須同時啟用 ''testing'' 才能啟用該軟體庫。
 +
 
 +
== 歷史背景 ==
 +
 
 +
=== official、unofficial、current 和 extra ===
 +
 
 +
大部分的軟體庫分支起因於歷史緣由。一開始,Arch Linux 的使用者相當稀少,當時只有一個 '''official''' 軟體倉庫 (就是現在的 ''core'')。這個倉庫主要存放了 Judd Vinet 選定的應用程式。它設計為包含每個「類型」程式中的一種 ── 一個桌面環境 (DE)、一個主要瀏覽器,以此類推。
 +
 
 +
當時有些使用者對 Judd 的選擇不甚滿意,因此他們使用容易上手的 [[Arch Build System (正體中文)|Arch 組建系統]]建立自己的軟體包。這些軟體包被放入一個名為 '''unofficial''' 的軟體倉庫,由 Judd 以外的開發人員維護。最終,兩個軟體倉庫皆獲得開發人員同樣的支持,'''official''' 和 '''unofficial''' 這兩個名稱也變得不合時宜。大概在 0.5 版本時期,兩個倉庫更名為 '''current''' 和 '''extra''' 。
 +
 
 +
2007.8.1 版本釋出後不久,''current'' 更名為 '''core''',以免讓人誤解它包含的內容。現今,所有軟體倉庫在開發人員和社群眼中都具有相同分量,不過 ''core'' 還是有些不同之處。主要區別在於,安裝光碟和發布快照只使用 ''core'' 的軟體包。這個倉庫是可以建立一個完整的 Linux 系統,但不一定是你心目中理想的 Linux 系統。
 +
 
 +
在 0.5/0.6 版本這段期間,有不少軟體包陷入了無人維護的困境。[https://www.archlinux.org/fellows/#jason Jason Chu] 建立了'''受信任使用者倉庫''' (Trusted User Repositories),'''受信任使用者'''(Trusted User; TU)可以將自己建立的軟體包放進這個非官方軟體庫。另外有個 '''staging''' 倉庫,裡面的軟體包可被 Arch Linux 的開發人員選進官方軟體庫,但除此之外,開發人員和受信任使用者之間依然存在或多或少的隔閡。
 +
 
 +
就這樣過了一段時間,直到受信任使用者對他們的軟體倉庫感到厭倦,非信任使用者又期望可以將自己的軟體包與大家分享。[https://aur.archlinux.org/ AUR] 因此誕生。TU 們開始形成更嚴密的組織,如今他們共同維護 '''community''' 軟體庫。TU 是一個獨立於 Arch Linux 開發人員的組織,兩者沒有太多交流。不過,偶爾有熱門的 ''community'' 軟體包會被選拔進 ''extra''。[https://aur.archlinux.org/ AUR] 也支持允許非信任使用者提供自己的 PKGBUILD。
 +
 
 +
''core'' 軟體庫的 Linux 核心曾[https://www.archlinux.org/news/please-avoid-kernel-261614-1/ 導致很多使用者系統當機],之後 Arch 引入了「core 軟體庫審核機制」。所有 ''core'' 的軟體包在更新前,必須先放進 '''testing''' 軟體庫,並經過數名開發人員的審核後,這些更新軟體包才會被放行進 ''core''。過了一段時間,發現某些 ''core'' 軟體包的使用率很低,因此放寬對這些軟體包的審核機制:只要經過使用者簽核,或是沒有任何相關錯誤報告,都當作符合 (非正式的) 標準並接受。
 +
 
 +
2009 年末至 2010 年初,隨著某些新型檔案系統的出現,也冒出希望在安裝過程支援這些新格式的請求。鑒於 ''core'' 從來沒有被明確界定過(只是「由開發人員挑選的重要軟體包」),這個軟體庫終於得到一個更精確的定義。

Latest revision as of 12:28, 23 August 2018

翻譯狀態: 本文章是 Official_Repositories 的翻譯版本。最近一次的翻譯時間:2014-01-24。點擊本連結查看英文頁面之後的變更。

軟體倉庫是存放軟體包的地點,安裝過程中可以從這些軟體庫取得軟體包。

官方倉庫包含了基本與常用的軟體包,透過 Pacman 可以輕鬆取得。

這些軟體包有特定的維護者維護。

軟體倉庫

core

這個軟體庫位於鏡像站.../core/os/ 目錄下。

core 包含的軟體包有以下用途:

以及上述軟體所需的其他相依軟體 (非必要的 makedepend)

core 軟體庫有嚴格的質量要求。一個更新軟體包必須經過開發人員與使用者的審核才會被接受。低使用率的軟體包只需經過合理的公開測試:更新通知、要求審核、視變更程度進行 (一星期以內的) 持續測試、無任何特殊錯誤報告,加上維護人員的審核即可。

註記: 若要在沒有網路的環境下建立本地的 core 軟體庫 (其他庫也可),參閱從 CD/DVD 或 USB 碟安裝軟體包

extra

這個軟體庫位於鏡像站的 .../extra/os/ 目錄下。

extra 包含所有不適合放在 core 的軟體包。例如 Xorg、視窗管理員、網路瀏覽器、媒體播放器、程式語言 (如 Python 和 Ruby) 的開發工具,還有更多程式。

community

這個軟體庫位於鏡像站的 .../community/os/ 目錄下。

community 包含從 Arch 使用者倉庫選拔出來的軟體包,這些軟體都獲得相當的投票數,並由受信任的使用者認養。

multilib

這個軟體庫位於鏡像站的 .../multilib/os/ 目錄下。

multilib 包含 32 位元的軟體與函式庫,讓 64 位元機器可以執行、組建 32 位元的應用程式 (例如 wine, skypeAUR[broken link: package not found])。

更多資訊請參閱 Multilib

testing

警告: 謹慎啟用 testing 軟體庫,直接進行更新有可能導致系統損壞。只有當您有足夠的問題處理經驗時再考慮使用。

這個軟體庫位於鏡像站的 .../testing/os/ 目錄下。

testing 包含 coreextra 軟體庫的候選軟體包。

會進入 testing 的軟體包有以下特點:

  • 用它們更新有讓系統故障的風險,必須先進行測試。
  • 它們需要其他軟體包才能組建。這種情況下,所有需要重建的軟體包都會被放進 testing,等到全部組建工作完成後,這些軟體包才會被移回原本的軟體庫。

testing 是唯一會和其他官方軟體庫產生名稱衝突的軟體庫。一旦啟用,必須將它擺在 /etc/pacman.conf 檔案的第一順位。

註記: testing 不是存放「最新」軟體包的地方。這個軟體庫也被用來暫存有破壞系統風險的更新軟體包:它們可能屬於 core 庫,或是在其他方面有極大影響。因此,強烈建議 testing 的使用者訂閱 arch-dev-public 郵件清單,查看 testing 軟體庫論壇,並回報所有遇到的錯誤

您必須同時啟用 community-testing 才能啟用 testing 軟體庫。

community-testing

這個軟體庫和 testing 類似,不過裡面的軟體包是 community 內軟體的候選版本。

您必須同時啟用 testing 才能啟用該軟體庫。

multilib-testing

這個軟體庫和 testing 類似,不過裡面的軟體包是 multilib 內軟體的候選版本。

您必須同時啟用 testing 才能啟用該軟體庫。

歷史背景

official、unofficial、current 和 extra

大部分的軟體庫分支起因於歷史緣由。一開始,Arch Linux 的使用者相當稀少,當時只有一個 official 軟體倉庫 (就是現在的 core)。這個倉庫主要存放了 Judd Vinet 選定的應用程式。它設計為包含每個「類型」程式中的一種 ── 一個桌面環境 (DE)、一個主要瀏覽器,以此類推。

當時有些使用者對 Judd 的選擇不甚滿意,因此他們使用容易上手的 Arch 組建系統建立自己的軟體包。這些軟體包被放入一個名為 unofficial 的軟體倉庫,由 Judd 以外的開發人員維護。最終,兩個軟體倉庫皆獲得開發人員同樣的支持,officialunofficial 這兩個名稱也變得不合時宜。大概在 0.5 版本時期,兩個倉庫更名為 currentextra

2007.8.1 版本釋出後不久,current 更名為 core,以免讓人誤解它包含的內容。現今,所有軟體倉庫在開發人員和社群眼中都具有相同分量,不過 core 還是有些不同之處。主要區別在於,安裝光碟和發布快照只使用 core 的軟體包。這個倉庫是可以建立一個完整的 Linux 系統,但不一定是你心目中理想的 Linux 系統。

在 0.5/0.6 版本這段期間,有不少軟體包陷入了無人維護的困境。Jason Chu 建立了受信任使用者倉庫 (Trusted User Repositories),受信任使用者(Trusted User; TU)可以將自己建立的軟體包放進這個非官方軟體庫。另外有個 staging 倉庫,裡面的軟體包可被 Arch Linux 的開發人員選進官方軟體庫,但除此之外,開發人員和受信任使用者之間依然存在或多或少的隔閡。

就這樣過了一段時間,直到受信任使用者對他們的軟體倉庫感到厭倦,非信任使用者又期望可以將自己的軟體包與大家分享。AUR 因此誕生。TU 們開始形成更嚴密的組織,如今他們共同維護 community 軟體庫。TU 是一個獨立於 Arch Linux 開發人員的組織,兩者沒有太多交流。不過,偶爾有熱門的 community 軟體包會被選拔進 extraAUR 也支持允許非信任使用者提供自己的 PKGBUILD。

core 軟體庫的 Linux 核心曾導致很多使用者系統當機,之後 Arch 引入了「core 軟體庫審核機制」。所有 core 的軟體包在更新前,必須先放進 testing 軟體庫,並經過數名開發人員的審核後,這些更新軟體包才會被放行進 core。過了一段時間,發現某些 core 軟體包的使用率很低,因此放寬對這些軟體包的審核機制:只要經過使用者簽核,或是沒有任何相關錯誤報告,都當作符合 (非正式的) 標準並接受。

2009 年末至 2010 年初,隨著某些新型檔案系統的出現,也冒出希望在安裝過程支援這些新格式的請求。鑒於 core 從來沒有被明確界定過(只是「由開發人員挑選的重要軟體包」),這個軟體庫終於得到一個更精確的定義。