引っ越しました
4/15にひっこしました。
引っ越し理由
- 今まで社員向け独身寮に住んでてそろそろ追い出される
- 会社への依存度を下げたい
- よんたさんバーに対して、キッチンをもっと広くしたい、パーティできる広さがある部屋にしたい
- (まだ公言してない理由)
引っ越し先
引っ越してみて
- 最高
- 通勤時間が1時間から1時間40分に延びた
- ますます働きたくなくなった
引っ越してみて?
良かった点
- ダンボールに書いた情報が役立った
- 引っ越しは土曜日、翌月曜に有休をとっておいてよかった。
引越し当日
ダンボールで埋まった
現状
Thanks to @dico_leque @c0hama
でこれきさんとこはまさんがダンボールの移動を手伝ってくれた。
おかげでカーペットが敷けた。
本当にありがとうございました。
ところで
引っ越しパーティします。
https://cookingnagoya.connpass.com/event/56335/
何にも関係ないですけどこちらに干し芋リストがあります
http://amzn.asia/ffyc5He
自分もごみの自己搬入をやってきた
マコーさんがゴミの搬入をしてきたそうなので、自分の住んでいた地方でもやった話を。
参考リンク:マコーの日記
ゴミの内容
大きな絨毯2ロールを捨てた。
指定ゴミ袋に入らないし、部屋に合わせて切り取ってるしで、自己搬入で捨てるしかなかった。
あと自己搬入するならついでにと、引っ越し日まで捨てれなかったいらない細々したもの(カサとか)もついでに捨ててきた。
ゴミの出し先
自分が住んでいた地域は東部知多クリーンセンターの対象地域だったので、
ここに捨てに行ってきた。
日曜日以外はほぼやっている。
土曜もやっているので、休みにも搬入できて便利だった。
ゴミ搬入の方法
- 車に積む
- 行く
- 入り口で重量を計られる
- 捨てる
- 帰り口で重量を計られお金を払う
- 🐸
かんたん!
感想
- 300円取られた、20〜30kgの量だった。
- 普通の量なら書類申請とか事前連絡も無しで車で持っていくだけでよくて、ひじょうに簡単でよかった
- 燃えるゴミを移動させる超大型クレーンがかっこよかった
- 他にも、くらしのマーケットに不用品回収サービスがあり、トラックに不用品乗せ放題で10k円〜とお安くてオススメだった
- 引越し前に捨てれる大物の机なんかは先にこれで捨てた
Raspberry Pi2でGUIアプリをroot権限で自動起動する方法
デーモンや普通のソフトの自動起動はよくあるんだけど、表題がなかったのでまとめる。
特にRaspberry Pi2ではGPIOがroot権限でしか読み書きできないため、rootでGUIを自動起動したくなる。
結論:できた
Twitterで質問してみた
@keita44_f4 sudoの設定でそのGUIアプリをNOPASSWDとして、sudoを使って起動するのはどうですか?
— きみとぼく@がんばらない (@emaxser) 2016年7月12日
@keita44_f4 アプリに suid bit 立てておいてもダメ?
— むりどん (@sqm) 2016年7月12日
おまいら天才か…!
解法
今回はアプリ自体をよくアップデートするためsuidを毎回付け直すのが面倒なため、sudoにNOPASSWDオプションを付与することにした。
- `sudo visudo`で以下の権限を与える
- 参考URL:http://d.hatena.ne.jp/LukeSilvia/20080716/p1
- [username] ALL=(ALL) NOPASSWD: [myapp_path]
- 上記行を追加
- これで[username]で[myapp_path]をsudoで実行するときにパスワードがいらなくなる
- [myapp_path]にアプリをおく
- ~/.config/lxsession/LXDE_pi/autostartを編集
- @sudo [myapp_path]
- 上記行を追加
elpyの設定メモ
Emacsにelpyを設定して四苦八苦した結果をメモ。
他にも苦しんでる人のために。
必要なPython環境をWindowsに用意する方法は前エントリを参照。
苦しんだ点とかまとめ
参考になったところ
- はむかずさんのブログ
- PythonプログラミングのためのEmacs設定(動画あり)
- http://hamukazu.com/2014/12/05/setting-emacs-for-python/
- elpy公式
- https://github.com/jorgenschaefer/elpy
そもそも公式読めよ俺、って話です
設定したEmacsの設定ファイル(init.el)
;;; python mode (add-hook 'python-mode-hook '(lambda () (setq indent-tabs-mode nil) (setq indent-level 4) (setq python-indent 4) (setq tab-width 4) (package-initialize) ; なぜかこれが無いとelpyが動かない (elpy-enable) (elpy-mode) )) ;;; elpy mode ;; pythonのrope、jediのパッケージを入れておくこと ;; 公式はさらにflake8、importmagic、autopep8、yapfを推奨している (add-hook 'elpy-mode-hook '(lambda () (elpy-use-ipython) ;; quickrunをC-cC-cに設定 (define-key elpy-mode-map "\C-c\C-c" 'quickrun) ;; company-mode + rope/jediを使うためautocompletionをオフ (auto-complete-mode -1) ; companyによる補完のキーマップを設定 (define-key company-active-map (kbd "\C-n") 'company-select-next) (define-key company-active-map (kbd "\C-p") 'company-select-previous) (define-key company-active-map (kbd "\C-d") 'company-show-doc-buffer) (define-key company-active-map (kbd "<tab>") 'company-complete) )) ;;; py-autopep8 ;; pythonのautopep8のパッケージを入れておくこと (add-hook 'python-mode-hook 'py-autopep8-enable-on-save) ;;; python flymake ;; pythonのpyflakesのパッケージを入れておくこと (require 'tramp-cmds) (when (load "flymake" t) (defun flymake-pyflakes-init () ; Make sure it's not a remote buffer or flymake would not work (when (not (subsetp (list (current-buffer)) (tramp-list-remote-buffers))) (let* ((temp-file (flymake-init-create-temp-buffer-copy 'flymake-create-temp-inplace)) (local-file (file-relative-name temp-file (file-name-directory buffer-file-name)))) (list "pyflakes" (list local-file))))) (add-to-list 'flymake-allowed-file-name-masks '("\\.py\\'" flymake-pyflakes-init))) (add-hook 'python-mode-hook (lambda () (flymake-mode t)))
2016年4月のWindows+msys2+Emacsでうまく動くPython環境について
Windowsのいろいろうまく動くPythonのインストールにむっちゃ苦労したのでメモしておく
動かしたいもの
それぞれ試したものとまとめ
うまくいった環境
Anacondaのダウンロード
- https://www.continuum.io/downloads
- お好きなバージョン、お好きなbitを選ぶ
- あとからPython2やPython3の環境を使い分けれるのでPythonバージョンはどちらでも
condaコマンドで欲しいライブラリをいれる
- conda install ***
condaに無いものはpipで入れる
- pip install ***
EmacsにPython環境をつくる
- はむかずさんのブログ記事が素晴らしすぎて何もいうことない
- あと、Futurismo様からquickrunが便利そうなのでパクる
- http://futurismo.biz/archives/2680
- 今はEmacsのpackagesから入れられる
- もちろんpython-modeもpackagesからいれる
msys2やEmacsのPATHの設定
- Anacondaのパスを追加
- [AnacondaPath]/Anaconda3と[AnacondaPath]/Scriptsと[AnacondaPath]/Library/binの3つ
- condaのactivate/deactivateを使うのならば、[AnacondaPath]/envs/[envname]と[AnacondaPath]/envs/Scriptsと[AnacondaPath]/envs/[envname]/Library/binを使えば良い
- path書き換えるコマンド作ってもよい
Raspberry Pi 2でのWekanの動かし方
まとめ
- Raspberry PiでWekanは動くらしい
- https://discuss.wekan.io/t/platforms-support/12/11
- WekanコミッタがArmv6やArmv7で動くと言ってる
- 個人的にはWekanをRaspberry Piで動かせなかった
- Wekan(prebuild)は起動途中でnodeパッケージがELFエラーする
- MeteorでWekanをbuildしようとすると、パッケージcfs:gridfsのArmv7向けがなく失敗する
参考元
- Node.js
- http://qiita.com/ryugyoku/items/bf0fafe8be8b5faa7754
- nvm、nodejs、npmをいれる
- Wekan
- https://github.com/wekan/wekan/wiki/Install-and-Update
- 内包してるnodeライブラリがx86依存のため、ソースからビルドを選択する
- https://github.com/anselal/wekan/blob/master/autoinstall_wekan.sh
- 公式提供のbash script、参考になる。
- Meteor on ARM
- http://meteor-universal.tumblr.com/
- http://meteor-universal.tumblr.com/post/118809833179/1st-time-installation-meteor-universal-raspbian-wheezy
- Wekanをビルドするためのツール
- Raspberry Pi向けにprebuildのMeteorを提供している
概要
Node.jsの準備
→Meteorのインストール
→Wekanのビルド
→Wekanのインストール
Node.jsの準備
gitレポジトリからnode.jsを持ってくる。
Wekanの都合から、node.jsはv0.10.40をいれないといけない。
nvm(Node Version Manager)とnpm(node package manager)を使うのがメジャーなようなので、採用する。
なお、node.jsのインストールは時間がかかる。
また、source ~/.nvm/nvm.shを.profileに記述する。
$ git clone https://github.com/creationix/nvm.git ~/.nvm $ ~/.nvm/nvm.sh $ nvm install v0.10.40 $ npm update -g npm
Meteorのインストール
MeteorはWekanのビルドに必要なだけなので、$HOMEへ置く。
管理者権限は必要ない。
そこそこ時間がかかる。
$ cd $HOME $ git clone --depth 1 https://github.com/4commerce-technologies-AG/meteor.git $ $HOME/meteor/meteor --version
途中でcurlの認証書エラーがする場合は、必要に応じて証明書をアップデートする。
ただし、ラズパイの証明書のアップデート方法を調べるのがめんどかったので、今回は-kオプションを使いエラーを無視した。
--- ./git/meteor/meteor 2016-04-07 14:41:11.560265384 +0900 +++ ./meteor/meteor 2016-04-07 22:41:14.946819041 +0900 @@ -1,6 +1,8 @@ #!/usr/bin/env bash BUNDLE_VERSION=0.5.16 +CURLFLAGS='-k' # OS Check. Put here because here is where we download the precompiled # bundles that are arch specific. @@ -100,7 +102,7 @@ # test if we can download the dev_bundle tarball function __check_tarball_download() { - CHECK_TARBALL=$(curl --head --location --silent "$DEV_BUNDLE_URL_ROOT$TARBALL" --output /dev/null --write-out '%{http_code}') + CHECK_TARBALL=$(curl $CURLFLAGS --head --location --silent "$DEV_BUNDLE_URL_ROOT$TARBALL" --output /dev/null --write-out '%{http_code}') # Write down a message instead doing a false download if [ "$CHECK_TARBALL" != "200" ] ; then if [ -n "$METEOR_UNIVERSAL_FLAG" ] ; then @@ -127,11 +129,11 @@ elif [ -n "$SAVE_DEV_BUNDLE_TARBALL" ] ; then # URL duplicated in tools/server/target.sh.in __check_tarball_download - curl --location -# "$DEV_BUNDLE_URL_ROOT$TARBALL" >"$SCRIPT_DIR/$TARBALL" + curl $CURLFLAGS --location -# "$DEV_BUNDLE_URL_ROOT$TARBALL" >"$SCRIPT_DIR/$TARBALL" tar -xzf "$SCRIPT_DIR/$TARBALL" -C "$BUNDLE_TMPDIR" else __check_tarball_download - curl --location -# "$DEV_BUNDLE_URL_ROOT$TARBALL" | tar -xzf - -C "$BUNDLE_TMPDIR" + curl $CURLFLAGS --location -# "$DEV_BUNDLE_URL_ROOT$TARBALL" | tar -xzf - -C "$BUNDLE_TMPDIR" fi # In case that we have to use the universal system environment, make sure
(Additional)Meteorのインストールの確認
心配な人はMeteorのexampleを動かす。
時間はかかる。
$ cd $HOME $ $HOME/meteor/meteor create --example todos $ cd todos $ $HOME/meteor/meteor $ # この後に、http://[IP Address]:3000/ にアクセス
以下のようなエラーが起きた場合は、localesをen_GB.UTF-8からen_US.UTF-8に変更すると治る。
公式githubで議論されてる。
$ ~/meteor/meteor [[[[[ ~/tmp/meteor-test/todos ]]]]] => Started proxy. Unexpected mongo exit code 1. Restarting. Unexpected mongo exit code 1. Restarting. Unexpected mongo exit code 1. Restarting. Can't start Mongo server. MongoDB failed global initialization Looks like MongoDB doesn't understand your locale settings. See https://github.com/meteor/meteor/issues/4019 for more details. $ sudo dpkg-reconfigure locales # en_US.UTF-8にする $ ~/meteor/meteor [[[[[ ~/tmp/meteor-test/todos ]]]]] => Started proxy. => Started MongoDB. Starting your app $ # この後に、http://[IP Address]:3000/ にアクセス
Wekanのビルド
TODO、うまくいってない。
$ git clone https://github.com/wekan/wekan.git $ cd wekan $ git checkout v0.10.1
Wekanのインストール
公式提供のautoscriptを使う。
ただし、公式のレポジトリからzipを落とす部分を、自分でビルドしたWekanを使うように書き換えて実行する。
また、sudoではなくsudo suしてrootアカウントにならないとディレクトリ権限がおかしくなりエラーで落ちる。
気づかずにだいぶハマった。
$ git clone https://github.com/anselal/wekan/blob/master/autoinstall_wekan.sh $ vi ./wekan/autoinstall_wekan.sh $ sudo su # ./wekan/autoinstall_wekan.sh
- wget https://github.com/wekan/wekan/releases/download/v0.10.1/wekan-0.10.1.tar.gz + # wget https://github.com/wekan/wekan/releases/download/v0.10.1/wekan-0.10.1.tar.gz
終わると、/etc/init.d/wekanと/usr/local/bin/get-ip-addressと/etc/network/if-up.d/show-ip-addressが作成される。
ポート番号などの設定は/etc/init.d/wekanの変数を書き換える。
get-ip-addressの中身は単純なbash script。
ちなみに、Debian testingを使った際は、ifconfigのフォーマットが合わないので改変する必要がある。
回路図CAD+プリント基板CADな感想
某人が雑にブログをさくさく書くのやってるの、よいので真似しよう。
軽い気持ちでネットに知識を保存して、世界をちょっとだけよくするのよい。
CR-5000
- 図研
- 多くの企業で採用されている実績のある回路・基板CAD
- 日本語おk、なはず
- 強い
- けど高いのでまだ使ったことない
Eagle
- CadSoft
- 100x80mmや部品数・レイヤーに制限ありまでは無料
- 英語
- 有料になると急に5〜20万と本気を出してくる
- 回路図・基板・自動配線の3つのうちたくさん買うほど高額
- えげつない
- 強い
- 老舗なのか、他フリーCADはEagle形式をインポートできるのを強みに言う
Design Spark PCB
- RS compornents関係
- RSの部品Noをつけた部品リストを出せる機能がある
- 国内のPCB試作メーカにすぐに見積もり・発注が出せる機能とかある
- 完全無償で商用利用もおk
- 英語
- Eagleのデータをインポートできる
- 移動とか基本が普通CAD系の操作感で使いやすい