思いつき
職場でCIツールのアラートやSlack、メールの未読に気づかない私です。
できないことがあるなら道具に頼ってしまいたいと考えて、遠く以前に購入してニキシー管チカ1をして遊んだきりの Raspberry Pi 2 Model B を使って LED の視覚的なアラートと音声ブザーを使いたいのです。
環境
- Windows 10
- micro SD カードが読み書きできれば、当然 Mac などでも構わないと思います。
- Raspberry Pi 2 Model B
- 主役
使用したもの
作業手順
- NOOBS を解凍して SD カードに入れる2
- Raspberry Pi にSD カードを挿入し、インストールする
- 今回は Raspbian を選択
- この際、元あった中身のファイルは消える
- apt-get 周辺のサーバがメンテされなくなったのか使えない
そこで apt を利用することにする3
# 儀式
$ sudo apt update
$ sudo apt upgrade
# ARM 用の準備や SSL や Git や色々
$ sudo apt install -y libffi-dev libbz2-dev liblzma-dev libsqlite3-dev libncurses5-dev libgdbm-dev zlib1g-dev libreadline-dev libssl-dev tk-dev build-essential libncursesw5-dev libc6-dev openssl git
$ Python3 --version
Python 3.5.3
# Python が 3.5.3 だったので 3.7.0 をビルドする
$ wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
$ tar -xf Python-3.7.0.tar.xz
$ cd Python-3.7.0
# ここで ./configure のあとにオプションを指定しているサイトがあるが
# https://bugs.python.org/issue29712 を見る限り不要っぽい?
$ ./configure
$ make
$ sudo make altinstall
$ pip3 install --upgrade pip
$ pip3 --version
pip3 10.0.1
]
その後は自分の好みでエイリアスを変更していく
- python -> python2
- (元の) python3 -> python3.5
- python3.7 -> python3
今後の課題
- Jenkins なりなんなり、CI ツールから Raspberry Pi に通知を送る方法を調べる
- メールサーバを Raspberry Pi 内に立てると、未読がなくなったときに通知を消す方法が思いつかない
- Slack なりメールなり、未読がなくなったときのトリガをどうするか
(2018/10/28: 勉強会でドヤ顔しながら「とりあえず sudo
って入れておけば通るよ!」と言った手前、どれが権限必要なのか再確認したら入れないといけないものに入れてなかったり、入れなくていいものに入れてたりしたから修正
(2019/01/23:追記)
以下の2行に sudo を付けよと編集リクエストが届きました。
$ pip3 install --upgrade pip
$ pip3 --version
手元の環境
ラズパイと同系統の処理ができる
- Windows10 の PowerShell(管理者権限で実行せず)
- MacOS High Sierra
- Ubuntu 18.04
でも本記事の記載とおり愚直に一行ずつ試して、上記3つの環境においてこの部分には権限が必要ないのを確認しているのは先日(2018/10/28)のとおりです。
これらのコマンドで権限が必須な状況・環境・私の勘違いをお教えいただければ幸いです。
- 疑問点
-
pip3 --version
にsudo
が必要ならば、python3 --version
にもsudo
が必要になるのではないか - 実務で
pip3 install spam
するときにsudo
をつけた覚えがないので、うまいこと権限を与えていないIDEがなんとかしてくれているのだろうか
-