SKYROCKETING WORK!

日常のエントロピーを上げてくぞ🚀

Linuxbrew - sudoを使えないLinuxのユーザがPackageを管理するための魔法の杖

拝啓 Linxubrew様、私はあなたに命そのものである時間を助けられました。
ここに感謝の手紙を記します...。

docs.brew.sh


という冗談はさておき、Linuxbrewというパッケージ管理ツールを紹介する。

LinuxbrewとはMac OS Xでは有名なパッケージ管理ツールであるHomebrewのLinux版という位置づけのものである。

しかし、考えてほしい。
Linuxの各ディストリビューションには、デフォルトで著名なaptやyumなどのパッケージ管理ツールが入っている。
そのため、このパッケージ管理ツールはいったいどこで使うのだろうか...?と思ったりしていた。

なんと、使い所は意外なところにあったのだ。

LinuxbrewのWebサイトのキャッチコピーを引用する。

It can be installed in your home directory, in which case it does not use sudo.

おわかりいただけただろうか。
Linuxbrewはsudoを使わずに、ホームディレクトリにインストールをすることができる。

セキュリティ上の理由などで学校や会社で使えるユーザにroot権限が与えられていないというのはよく聞く話である。
それゆえに、「apt-get sudo なし」やら"How to install packages in CentOS without root user?"。で検索し、あまりの面倒さに環境構築で途方に暮れるなんて経験はしたことがないだろうか。

Linuxbrewは、この問題を解決する魔法の杖である。
sudoが使えないユーザであっても、パッケージ管理をすることができる。
コマンドひとつでパッケージをインストールをすることができるようになるのだ。

インストール方法はWebサイト内にも書いてあるが、こちらにも日本語の解説とともに記しておく。

## install用スクリプト、sudoが使えなければ諸々のファイルなど~/.linuxbrew下にインストールされる
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

## ここからはsudoが使えない前提で書いておく

## brewが吐き出す環境変数を読み込む
test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)

## 環境変数を読み込むコマンドを.bash_profile (.profile) に書き加えておく
# CentOS/Fedora/RedHat
test -r ~/.bash_profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.bash_profile

# Debian/Ubuntu 
echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile

以上の手順を踏むと、brewコマンドが使えるようになっているはずである。

brewとそのまま打ち込んで実行すると、以下のような基本的な使い方が出てくる。

Example usage:
  brew search [TEXT|/REGEX/]
  brew info [FORMULA...]
  brew install FORMULA...
  brew update
  brew upgrade [FORMULA...]
  brew uninstall FORMULA...
  brew list [FORMULA...]

Troubleshooting:
  brew config
  brew doctor
  brew install --verbose --debug FORMULA

Contributing:
  brew create [URL [--no-fetch]]
  brew edit [FORMULA...]

Further help:
  brew commands
  brew help [COMMAND]
  man brew
  https://docs.brew.sh

Linuxbrewを使えば、sudo利用できずとも快適なパッケージ管理ライフを楽しめるようになることだろう、きっと。