2021-05-12 14:32:11
Sysget:給主流的包管理器加個前端
你是一個喜歡每隔幾天嘗試 Linux 作業系統的新發行版的發行版收割機嗎?如果是這樣,我有一些東西對你有用。 嘗試 Sysget,這是一個類 Unix 作業系統中的流行軟體包管理器的前端。 你不需要學習每個包管理器來執行基本的操作,例如安裝、更新、升級和刪除包。 你只需要對每個執行在類 Unix 作業系統上的包管理器記住一種語法即可。 Sysget 是包管理器的包裝指令碼,它是用 C++ 編寫的。 原始碼可在 GitHub 上免費獲得。
使用 Sysget,你可以執行各種基本的包管理操作,包括:
- 安裝包,
- 更新包,
- 升級包,
- 搜尋包,
- 刪除包,
- 刪除棄用包,
- 更新資料庫,
- 升級系統,
- 清除包管理器快取。
給 Linux 學習者的一個重要提示:
Sysget 不會取代軟體包管理器,絕對不適合所有人。如果你是經常切換到新 Linux 作業系統的新手,Sysget 可能會有所幫助。當在不同的 Linux 發行版中使用不同的軟體包管理器時,就必須學習安裝、更新、升級、搜尋和刪除軟體包的新命令,這時 Sysget 就是幫助發行版收割機distro hopper(或新 Linux 使用者)的包裝指令碼。
如果你是 Linux 管理員或想要學習 Linux 深層的愛好者,你應該堅持使用你的發行版的軟體包管理器並學習如何使用它。
安裝 Sysget
安裝 Sysget 很簡單。 轉到發布頁面並下載最新的 Sysget 二進位制檔案並按如下所示進行安裝。 在編寫本指南時,Sysget 最新版本為1.2。
$ sudowget-O /usr/local/bin/sysget https://github.com/emilengler/sysget/releases/download/v1.2/sysget
$ sudomkdir-p /usr/local/share/sysget
$ sudochmod a+x /usr/local/bin/sysget
用法
Sysget 命令與 APT 包管理器大致相同,因此它應該適合新手使用。
當你第一次執行 Sysget 時,系統會要求你選擇要使用的包管理器。 由於我在 Ubuntu,我選擇了 apt-get。
你必須根據正在執行的發行版選擇正確的包管理器。 例如,如果你使用的是 Arch Linux,請選擇 pacman。 對於 CentOS,請選擇 yum。 對於 FreeBSD,請選擇 pkg。 當前支援的包管理器列表是:
- apt-get (Debian)
- xbps (Void)
- dnf (Fedora)
- yum (Enterprise Linux/Legacy Fedora)
- zypper (OpenSUSE)
- eopkg (Solus)
- pacman (Arch)
- emerge (Gentoo)
- pkg (FreeBSD)
- chromebrew (ChromeOS)
- homebrew (Mac OS)
- nix (Nix OS)
- snap (Independent)
- npm (Javascript, Global)
如果你分配了錯誤的包管理器,則可以使用以下命令設定新的包管理器:
$ sudo sysget setyum
Package manager changed to yum
只需確保你選擇了本地包管理器。
現在,你可以像使用本機包管理器一樣執行包管理操作。
要安裝軟體包,例如 Emacs,只需執行:
$ sudo sysget install emacs
上面的命令將呼叫本機包管理器(在我的例子中是 “apt-get”)並安裝給定的包。
同樣,要刪除包,只需執行:
$ sudo sysget remove emacs
更新軟體倉庫(資料庫):
$ sudo sysget update
搜尋特定包:
$ sudo sysget search emacs
升級單個包:
$ sudo sysget upgrade emacs
升級所有包:
$ sudo sysget upgrade
移除廢棄的包:
$ sudo sysget autoremove
清理包管理器的快取:
$ sudo sysget clean
有關更多詳細資訊,請參閱幫助部分:
$ sysget help
Help of sysget
sysget [OPTION][ARGUMENT]
search [query] search for a packagein the resporitories
install [package] install a packagefrom the repos
remove [package] removes a package
autoremove removes not needed packages (orphans)
update update the database
upgrade do a system upgrade
upgrade [package] upgrade a specific package
clean clean the download cache
set[NEW MANAGER]set a newpackage manager
請記住,不同 Linux 發行版中的所有包管理器的 Sysget 語法都是相同的。 你不需要記住每個包管理器的命令。
同樣,我必須告訴你 Sysget 不是包管理器的替代品。 它只是類 Unix 系統中流行的包管理器的包裝器,它只執行基本的包管理操作。
Sysget 對於不想去學習不同包管理器的新命令的新手和發行版收割機使用者可能有些用處。 如果你有興趣,試一試,看看它是否有幫助。
而且,這就是本次所有的內容了。 更多乾貨即將到來。 敬請關注!
祝快樂!
via: https://www.ostechnix.com/sysget-a-front-end-for-popular-package-managers/
作者:SK 選題:lujun9972 譯者:Flowsnow 校對:wxy
相關文章