インストールを自動化したくて。
背景
GitHubアップローダをすぐさま使えるようにしたい。必要なものを自動インストールしたい。しかし、以下のような問題がある。
apt-get install sqlite3
のようなインストールコマンドを自動実行したいsudo apt-get install sqlite3
とし、パスワードを入力しないと実行できない(自動実行できない)
pip3 install requests
のようなインストールコマンドを自動実行したいsudo pip3 install requests
とし、パスワードを入力しないと実行できない(自動実行できない)
インストールしたい項目は以下。(他にも必要なものはあるかもしれない。多いかもしれない)
sudo apt-get install python3
sudo apt-get install python3-pip
sudo apt-get install sqlite3
sudo pip3 install pytz
sudo pip3 install furl
sudo pip3 install requests
sudo pip3 install dataset
sudo pip3 install PyYAML
sudo pip3 install bs4
# たぶん以下は要らない
sudo pip3 install Pillow
sudo pip3 install requests-oauth
sudo pip3 install xmltodict
コマンドに加え、1件ずつ12回もパスワードを入力することになる。ウンザリする。自動化したい。
参考
Ubuntu で sudo apt-get update とかするときにパスワードを聞かれないようにする - Everyday Programmer
sudo のパスワードを入力なしで使うには - Qiita
visudoというのを使ったほうが安全に編集できるらしい。それにしても面倒。
問題
所感
基本的にユーザが自分で1つずつ確認し、実行して、自己責任とする。ということか。自動化できないと。
依存が多いと1つずつ手でインストールコマンドを打つ羽目になる。apt-get
などのパッケージ管理ツールはパッケージ間の依存関係を解決してくれるはず。依存しているものも自動でインストールしてくれるのだと思うのだが、どうやってやるのかわからない。公式サイトで公開する必要があるなら難しい。ローカルでやりたい。しかも配布して再現できる形で。
そもそも、Pythonスクリプトをapt-get
のパッケージにすること自体が間違っているのかもしれない。でも丸ごと実行形式ファイルにするのは面倒そうな上にファイルサイズが肥大化するらしいので嫌。
方法が見つからない。一旦あきらめる。