2019年3月11日月曜日

Visual Studio Code (VS Code) on Ubuntu 18.04 on WSL

WSL 上の VS Code で開発するための手順。

0. Windowsストアから Ubuntu 18.04 をインストールする

※ 会社PCだと、ストアが利用できなかったため、レジストリを下記の通り一時的に変更する必要があった。
HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate

→ 「DoNotConnectToWindowsUpdateInternetLocations」を 1 から 0 へ。

コマンドプロンプトを開いて

restart-service wuauserv
wsreset


1. プロキシ設定(必要に応じて。)

aptコマンド用

$ sudo vim /etc/apt/apt.conf.d/00proxy
下記2行を追記。

Acquire::http::Proxy "http://<user>:<pass>@<proxy host="">:<port>";
Acquire::https::Proxy "http://<user>:<pass>@<proxy host="">:<port>";

その他用

$ echo 'export http_proxy=http://<user>:<pass>@<proxy host="">:<port>' >> .bashrc
$ echo 'export https_proxy=http://<user>:<pass>@<proxy host="">:<port>' >> .bashrc

2. X Window設定

$ echo 'export DISPLAY=:0.0' >> .bashrc
$ source .bashrc

$ sudo apt install -y fontconfig
$ sudo ln -s /mnt/c/Windows/Fonts /usr/share/fonts/windows
$ sudo fc-cache -fv

$ sudo apt install -y lxappearance
$ lxappearance

$ sudo apt -y install fcitx-mozc dbus-x11 x11-xserver-utils
$ set -o noclobber
$ cat << EOS >> .profile
$ export GTK_IM_MODULE=fcitx
$ export QT_IM_MODULE=fcitx
$ export XMODIFIERS="@im=fcitx"
$ export DefaultIMModule=fcitx
$ xset -r 49 # 半角全角点滅防止
$ EOS

$ source .profile

3. VS Codeインストール


$ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
$ sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/
$ sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'

$ sudo apt install apt-transport-https
$ apt install code
$ sudo apt install libasound2

4. Windows側で VcXsrv X Server をインストールし起動しておく

5. Linux側で code コマンド実行

6.(追記) Windows 上で VS Codeの ウィンドウをリサイズや移動できなかったため、下記の設定を追加

$ vim ~/.config/Code/User/settings.json

{
    "terminal.integrated.rendererType": "dom"
}


{
    "terminal.integrated.rendererType": "dom",
    "window.titleBarStyle": "native"
}

2018年6月8日金曜日

Andoid8でLINEの通知が届かないときがある。

LINEの通知が遅れて届く。スマホを開いた瞬間に届く、という現象に長らく悩んでいました。

https://news.mynavi.jp/article/20180608-LINE/
こんなのは一通り試したしアプリ個別の省電力設定とかも見直したけど解消せず。

悩み抜いた結果ようやく原因が判明。
スリープ時にモバイル通信しない設定になっていたことが犯人でした。

設定
→電池
→右上の歯車アイコン
→「スリープ時にモバイルデータ通信を維持」をオン

にすればOK。

2018年6月7日木曜日

Windows10 のストアでUbuntuがインストールできない

MicrosoftストアからUbuntu(なりSuseなりのLinux)をインストールできない現象が発生して数日悩んだ。
購入ボタンがグレーアウトされ、PCに問題があると表示される。
アーキテクチャがX64と認識されていない。

いろいろ探しまくった結果、下を参考に解決できた。

https://social.technet.microsoft.com/Forums/windows/en-US/f1ae9c66-cfeb-4a5b-af51-e304cb1c332c/creators-fall-1709-microsoft-store-detect-wrong-architecture-when-trying-to-install-ubuntu-linux?forum=win10itprogeneral

グループポリシーの設定で社外のWSUSサーバにつながらないように制御していることが原因らしい。(ストアアプリに表示される原因がわかりづらくて非常に腹立たしい)

以下の手順で解消可能。
  1. レジストリエディタを開く
    (「ファイル名を指定して実行」画面を開き(ウィンドウズキー+R)regedit を入力してOK → UAC画面が出るので「はい」を選択)
  2. 以下を開く
    \HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate
  3. 「DoNotConnectToWindowsUpdateInternetLocations」の値を1から0にする
  4. タスクマネージャ(Ctrl+Shift+Esc)から「wuauserv」サービスを再起動する ※自分の場合は起動していなかったのでスルー。
  5. 「ファイル名を指定して実行」(ウィンドウズキー+R)で、wsreset(ストアのキャッシュデータをリセットするコマンド)を実行
で正しくアーキテクチャが認識され〇になった!

※会社のPCを勝手に外部のWindows Updateにつなぐとトラブルの元なので、Linuxのインストールが終わったらレジストリエディタで「DoNotConnectToWindowsUpdateInternetLocations」の値を0に戻してwuauserv サービスも再起動しておいたほうがよいかと。

2018年5月9日水曜日

ruby aws-sdk v2(以降) でプロキシ経由でS3にアクセスする方法

ネットを探してもsdk v1の情報中心にしか見つからなかったので混乱したけど、下記で出来ることを確認。

結論から言うと オプション名が変更になっていた。
`proxy_uri` → `http_proxy`

参考: https://forums.aws.amazon.com/thread.jspa?threadID=172034

# 方法1

Aws.config[:access_key_id] = '(略)'
Aws.config[:secret_access_key] = '(略)'
Aws.config[:region] = 'ap-northeast-1'
Aws.config[:http_proxy] = 'http://user:password@your.proxy.example.com'

s3 = Aws::S3::Client.new



# 方法2

opt = {
    access_key_id: '(略)',
    secret_access_key: '(略)',
    region: 'ap-northeast-1',
    proxy_uri: 'http://user:password@your.proxy.example.com'
}

s3 = Aws::S3::Client.new(opt)




2018年2月13日火曜日

Google Search Consoleである日を境にアクセス数が急減した理由は常時https化だった

サイトをリニューアルしたタイミングで、Search Console上流入数がもろに減っていっていたのでとても焦ったが、よく見るとGoogle Analyticsでは変動がなかった。

よくよく考えてみると、常時https化(SSL化)し、httpでアクセスが来たらhttpsへ301リダイレクトするようにした事が原因だった。

Search Consoleでは http://example.com と https://example.com は別物として登録し直す必要があるらしい。ので登録し直したらきちんと追えるようになった。

参考↓
SSL(https)化したWordpressをサーチコンソールに登録してもhttpのプロパティを残しておいた方が良い理由 | ブログサポーターがみたか
https://www.gamitaka.com/ssl-leave-property.html

常時SSL化の際に必要なGoogle系ツールの設定 | 常時SSL Lab. by Zenlogicのファーストサーバ株式会社
https://zenlogic.jp/aossl/operation/google-settings/

2018年1月12日金曜日

npm (yarn) で openssl のエラーメッセージが表示される場合の対処法

npm (yarn) コマンドを実行するたびに下記のメッセージが表示される問題が発生した。[Windows7]

"openssl config failed: error:02001003:system library:fopen:No such process"

> yarn
openssl config failed: error:02001003:system library:fopen:No such process
yarn install v1.3.2
[1/4] Resolving packages...
[2/4] Fetching packages...

原因は環境変数に OPENSSL_CONF があるためだったので、環境変数を削除したところ、エラーが解消した。

set OPENSSL_CONF=

参考
openssl config failed: error:02001003:system library:fopen:No such process · Issue #17261 · npm/npm · GitHub
https://github.com/npm/npm/issues/17261

2017年12月7日木曜日

iOS11にしたら名刺管理アプリの CamCardが起動できなくなった場合の対処法


  1. 設定→プライバシー→連絡先→名刺認識をオフにする
  2. 旧アプリでログインし、クラウドにバックアップする
  3. 新アプリをDLし、新アプリでクラウドにログインする
で対応可能とのこと。
※新旧アプリが同じ名称&同じアイコンだから紛らわしいので注意。

でもクラウドにバックアップするのは個人的に抵抗があるので、一旦「1.」までで様子見することにする。

新しくもらった名刺は新アプリでスキャンすることにする。