atomのpackage管理をproxy越えで行う方法を示す。
atomは1.01、Windows 7である。
atomのpackage管理について
atomのpackageはapm(atom package manager)で管理される。
proxyの背後からapmを使うには、ちょっと面倒な作業が必要だ。
apmはそれ自体で独立しているCUIプログラムである。atomの中の機能ではない。
だから、proxyの設定をしようとしたら、atomの設定を変更するのではなく、apmの設定を変更しないといけない。
つまり、atomのシャレオツなインタフェース経由ではなく、apmをコマンド操作したり、テキストファイルを修正することが必要だ。
なお、apmも実はwrapperなのだが、proxyの設定に限れば無視して構わない。
apmはどこにある?
apmは以下の場所にインストールされている。
<インストールディレクトリ>\Atom\resources\app\apm\bin\apm.cmd
拡張子が.cmdで、中身を見ると、実体は同ディレクトリにあるnode.exeであることが分かるが、ここでは関係ない。
コマンド操作をするならパスを通さないといけないところだが、面倒くさい。
どうせ滅多に使わないので、<インストールディレクトリ>\Atom\resources\app\apm\bin\ で作業をする。
apm helpで使い方の説明が表示される。
C:\Atom\resources\app\apm\bin>apm help
apm - Atom Package Manager powered by https://atom.io
Usage: apm <command />
where <command /> is one of:
clean, config, dedupe, deinstall, delete, dev, develop, docs, erase,
featured, home, init, install, link, linked, links, list, ln, lns, login,
ls, open, outdated, publish, rebuild, rebuild-module-cache, remove, rm,
search, show, star, starred, stars, test, uninstall, unlink, unpublish,
unstar, update, upgrade, view.
Run `apm help <command />` to see the more details about a specific command.
Options:
--color Enable colored output [boolean] [default: true]
-v, --version Print the apm version
-h, --help Print this usage message
Prefix an option with `no-` to set it to false such as --no-color to disable
colored output.
C:\Atom\resources\app\apm\bin>
apmの設定方法は二通り
apmの設定方法には二つの方法がある。
一つは、apmをコマンド操作する方法
もう一つは、設定ファイルを直接書き換える方法
一つ目の、コマンド操作での設定方法だが、結局のところ言われた通りに設定ファイルの書き換えをしている「だけ」なので、実施的な違いはない。
もう少し踏み込んでいうと、仮にコマンド操作で設定をしても、設定値の妥当性はいっさい、してくれない。
仮に間違った設定値を指定しても、言われた通りに設定ファイルに加えるだけなので注意。
【参考】apm設定ファイルのひな形作成
apmの設定は、ユーザごとのテキストファイル.apmrcで変更する。
ところが、インストール直後には、(ユーザごとの).apmrcは存在しない。
自分で作っても良いのだが、以下のようにするとひな形が作られる。
C:\Atom\resources\app\apm\bin>apm config edit
上記コマンドを実行すると、メモ帳が開き、.apmrcの内容が表示される。
何もしないで閉じてもよいし、後述するように、後で同じファイルを開くので、今ここで書き換えてしまってもよい。
書き換える場合は開きっぱなしにしておく。
なお、ひな形を作ったとしても、コマンド経由で書き換えた場合、コメント行はバッサリ削られてしまうようだ。
;;;;
; npm userconfig file
; this is a simple ini-formatted file
; lines that start with semi-colons are comments.
; read `npm help config` for help on the various options
;;;;
;;;;
; all options with default values
;;;;
; access=null
; always-auth=false
; bin-links=true
(略)
apm設定ファイル.apmrcの保存場所
前章の手順に沿うと、以下の場所に.apmrcが生成される。
いわゆるホームディレクトリである。
C:\Users\<ユーザ名>\.atom\.apmrc
なお、以下にも同じようなファイルがある。
が、これはデフォルト設定(global config)なので触ってはいけない。
C:\Users\<ユーザ名>\.atom\.apm\.apmrc
apm設定ファイルでproxy設定する場合
設定ファイルを直接書き換える場合には、上記のファイルを開き、以下の行を書き込むだけ。
proxy=http://<ID>:<password>@<address>:<port>
https-proxy=http://<ID>:<password>@<address>:<port>
httpsの接続で問題の出る場合には、以下も追加する。
strict-ssl = false
コマンドで設定する場合
apmを実行できる状態で、以下のようにコマンドを叩く
C:\Atom\resources\app\apm\bin>apm config set https-proxy="http://<ID>:<password>@<address>:<port>"
C:\Atom\resources\app\apm\bin>apm config set proxy="http://<ID>:<password>@<address>:<port>"
apm config listで設定内容を確認できる。
C:\Atom\resources\app\apm\bin>apm config list
(略)
; userconfig C:\Users\avedakedavra\.atom\.apmrc
https-proxy = "http://<ID>:<password>@<address>:<port>"
proxy = "http://<ID>:<password>@<address>:<port>"
もし設定変数を間違えてしまった場合には、以下のようにすれば削除できる。
(https-proxyとすべきところ、https-proproxyしてしまったと仮定)
C:\Atom\resources\app\apm\bin>apm config del https-proproxy
設定変数名について(https-proxy、proxy)
設定変数名について、webを検索すると、proxyではなくhttp-proxyだったり、https-proxyではなくhttps_proxy(httpsとproxyの間がアンダースコア)になっている情報もある。
少なくとも1.0.3の時点では、それぞれproxy, https-proxyが正しい。
ソースから確認できる。