@ledsun blog

Hのキーがhellで、Sのキーがslaveだ、と彼は思った。そしてYのキーがyouだ。

WSL

Rubyでπを計算する

jRubyが並列に動くのか確かめたいです。 CPUバウンドな時間が掛かる処理があるといいはず。 計算に時間が掛かる処理と言えばπの計算です。 BigMath::PIより早く円周率を計算する - Qiitaを参考にして、Rubyでπを計算してみます。 require "bigdecimal" requi…

VPN接続するとWSL内でgitが使えなくて困っていたところを通りすがりの同僚に助けてもらった話

同僚に次のブログを教えてもらいました。 blog.jicoman.info 初めてこの現象に出会ったときは、VPN接続が必要なgitリポジトリが相手でした。 なんとなくそういうもんかな?と思ってスルーしました。 スルーというかMac端末で作業を進めることにしました。 そ…

WSL上のfish-shellからWindowsのホストのディレクトリでプロンプト表示に時間がかかることがある

現象 表題がわかりにくいですね。 動画で再現するとこうです。 gyazo.com lsコマンドを実行すると、結果が表示されます。 すこし待つとプロンプトが表示されます。 fishのversionは 3.3.1 です。 今、原因の候補と考えているもの プロンプトの右側にgitの情…

WezTerm

Windows Terminalに不満はないです。 俺は新しいツールも使いこなせるんだ、という欲望を満たすために wezterm - Wez's Terminal Emulator を使っています。 Windowsにはwingetでインストールできました。 6月27日にインストールを試したときは上手く行きま…

WSLのUbuntu 20.04にPHPのcomposerをインストールする

comporserのインストール curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php php /tmp/composer-setup.php 実行したディレクトリにcomposer.pharができます。 php ~/composer.phar installとかphp ~/composer.phar updateで実行できま…

WSLのUbuntu 20.04にPHP 8.1をインストールする

PHPの環境設定の仕方がよくわかっていません。 たぶん普通のUbuntuにPHPをインストールする手順と同じだと思います。 sudo apt install phpするとPHP 7.4が入りました。 ledsun@MSI:~►php --version PHP 7.4.3 (cli) (built: Jun 13 2022 13:43:30) ( NTS ) …

WSLgで起動したRubyMineでCtrl + Alt+ Leftが効かない

RubyMineのキーマップをXWinにすると戻るがCtrl + Alt + Leftです。 戻るのキーマップ WSLgで起動したRubyMineでCtrl + Alt+ Leftを押すと戻りません。 その後、文字が入力できなくなるので、なにか別のショートカットと被っている野だと思います。 もしかす…

Windows 11 WSLg キーボードレイアウトを US に設定する

WSLgでRubyMineを動かす - @ledsun blog にてWSLgからRubyMineを起動してみました。 US配列の物理キーボードを使っていますが、日本語配列と認識されて、:が入力出来ませんでした。 キーボード配列をUSに変更します。 正しい方法 my notebookによるとsetxkbm…

WSLgでRubyMineを動かす

背景 RubyMineの公式ではWSL | RubyMine For better performance, we recommend using WSL as a remote interpreter and storing your project in the Windows file system instead of WSL. より良いパフォーマンスを得るためには、WSLをリモートインタプリ…

Windows11のWSL2でchromedriverを使うとWindows上でchromeが起動したように見えるわけ

WSL上のchromeをselenium-webriverで動かすつもりだった俺は - @ledsun blogでWSL上にChromeをインストールして、WSL上のchromedriverを実行したところWindows上でChromeが起動しました。 この不思議さの理由です。 結論。Windows11のWSLはLinuxのGUIアプリ…

WSL2からWindowsのホストで起動したchromedriverに接続する

2つの壁があります。 chromedriverの接続制限 Windows Defender ファイアーウォール chromedriverの接続制限 chromedriverを起動すると次のメッセージが表示されます。 PS C:\Users\led_l> .\Downloads\chromedriver_win32\chromedriver.exe Starting Chrome…

WSL上のchromeをselenium-webriverで動かすつもりだった俺は

WSLとselenium-webdriver - @ledsun blog の続きです。 WSLからWindowsのChromeを動かそうとしました。 起動までは上手く来ました。 WSLからWindows上のChromeへの接続に失敗しました。 今回は、WSL上にChromeをインストールすれば問題なく動くだろうと試し…

WSLとselenium-webdriver

RailsのシステムテストをWSLで実行しようと、軽い気持ちで初めてみました。 意外と難しいです。 ポイント次の2点です WindowsのホストOSのChromeを動かそうとすると、ホストはlocalhostでは参照できない (GUIのない)WSLのChromeを動かそうとするときは、ヘ…

Ubuntuをアップグレードしようとして22.04を見つけられなかった話

WSLで使っているUbuntuを軽い気持ちでアップグレードしようと思いました。 Releases - Ubuntu Wiki Ubuntu 22.04 LTS がリリースされています。今使っているのは20.04です。 ledsun@MSI:~/textae►lsb_release -a No LSB modules are available. Distributor …

WSLにDockerをインストールする

結論から言うと、なんのことはなくUbuntuにインストールするのと同じです。 Dockerをインストール Install Docker Engine on Debian | Docker Documentation に従って、インストールします。 普段fish-shellを使っています。 読み替えが面倒臭いので、各コマ…

RubyMineからWSL上のRubyを動かす

Ruby on Railsアプリケーションのソースコードを読もうとしました。 ソースコード読むにしてもアプリケーションを動かしたいです。 WSLにソースコードをおき、環境を作ってRuby on Railsアプリケーションを起動しました。 おもむろにVS Codeで読み始めたので…

WSLのバージョン

WSL2とかでなくて、もうちょっと細かいバージョンについてです。 github.com Githubでは0.56.2とかってバージョンがついています。 docs.microsoft.com Release NoteではBuild 21364です。 要するに自分のPCに入っているWSLってどのバージョンなのでしょうか…

WSLを終了する

Windowsターミナルを閉じてもWSLは終了しません。 sudo shutdow -h nowでも終了するっぽいのですが、Distrodがエラーメッセージを表示します。 ledsun@MSI:~►sudo shutdown -h now [sudo] password for ledsun: ledsun@MSI:~►[Distrod][ERROR] Failed to spa…

Windows10のWSL起動時にfish-shellからrbenvの初期化に失敗する

WSL起動時に次のエラーメッセージが表示されます。 source: Error encountered while sourcing file '/tmp/.psub.N1u4nIBokn': source: No such file or directory rm: cannot remove '/tmp/.psub.N1u4nIBokn': No such file or directory Welcome to fish, …

WSL2にDistrodをインストールした

WSLでRailsアプリケーションを起動する際に毎回 sudo service postgresql start していました。3回目ぐらいになっていい加減めんどくさくなってきました。 背景 現代のLinuxは常駐アプリケーションの起動にsystemdというプログラムを使っています。 systemd …

Ubuntuにgitをソースコードからインストールする

WSLのUbuntu 20にgitをソースコードからインストールするのに次の手順が必要でした。 手順 sudo apt install autoconf sudo apt install libcurl4-openssl-dev curl https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.21.4.tar.xz --output git-2…

WSLポートフォワード設定するインストーラーのリポジトリを作った

github.com WiXでWSLポートフォワード設定するインストーラーを作る - @ledsun blog で作ったインストーラー、というかインストーラーでインストールするバッチファイルの修正をしたくなったのが2回目なので、リポジトリを作りました。 1度目は有効にするバ…

WSLにPostgresSQLをインストールした

結局、PostgreSQLにログインユーザと同名のロールを追加しました。 経緯としては、PostgreSQLを使っているRailsアプリケーションが動かしたかったです。 ledsun@MSI:~/pubannotation►bin/rails db:create could not connect to server: No such file or dire…

WSLでsystemctlが動かない

Elasticsearchを動かそうとしました。 Ubuntu 20.04にElasticsearchをインストールする方法 - Tutorial Crawler に従って、インストールは上手く行って、起動しようとしたところで次のエラーが起きました。 ledsun@MSI:~/pubannotation►sudo /bin/systemctl …

WSL向けのWindowsポートフォワード設定をスクリプト化する

WSL上で動かしているWebアプリケーションを外部から参照する - @ledsun blog で手動でやる方法はわかりました。 毎回手動でやるのは、思い出すのが大変なので、スクリプトにしました。 FOR /F "usebackq" %%i in (`wsl exec hostname -I`) DO @SET IP=%%i ne…

WSLが[プロセスはコード 4294967295 で終了しました]

WSLが [プロセスはコード 4294967295 で終了しました] と表示されて起動出来なくなりました。 WSLの起動に失敗したところ 対処方法 管理者権限のあるPowerShellで PS C:\Windows\system32> netsh winsock reset Winsock カタログをリセットしました。 リセッ…

IDEの設定を同期する

Macで育てたIDEの設定を引き継ぎたいので、IDEの設定をクラウドで同期してみました。 対象のIDEは、VSCodeとRubyMineです。 VSCode Githubアカウントで同期できるので簡単でした。 問題はprettierとかtabnineとかWSLにインストールしないと行けないプラグイ…

WSLでRailsを動かす時に躓いたこと

WSLっていうかUbuntuだと思います。 結論からいうと libsqlite3-dev libffi-dev を入れておきましょう。 libsqlite3-dev gem install rails -v 7.0.0.alpha2してrails newすると次のエラーがでます。 An error occurred while installing sqlite3 (1.4.2), a…

git Fork をWSLで使う

Macの頃から Fork というgitのGUIクライアントを使っています。 git Forkのスクリーンショット これをWSL上のgitリポジトリに対して使う話です。 wsl-gitという便利なツールがあります。 WSL上のgitコマンドをホストのWindows側から実行するためのラッパーで…

WSLにいれたfish shellで使っているnvm.fishにデフォルトバージョンを設定する

現象 WSLにfish shellを入れnvmを入れた状態で、gitのコミットフックを設定してあるリポジトリで、VSCodeからGitコミットしたら次のエラーが起きました。 VSCodeからGitを操作したときのエラー Git: /usr/bin/env: 'bash\r': No such file or directory とい…