Ubuntu に Edge を CLI でインストールする方法

結論 1. Edge の Insider ダウンロードページに行く www.microsoftedgeinsider.com gyazo.com 2. Linux (Debian / Ubuntu) のダウンロードリンクをクリックする gyazo.com 3. 遷移先のページで「手順を取得する」をクリックする 「手順を取得する」を押し、…

Ruby で URL から正規表現で各種文字列(ファイル名など)を抽出する

結論 RFC3986 に従います(後述)。 たとえば対象とする URL が https://pbs.twimg.com/media/FAlJ_JsUUAAgOSq?format=jpg&name=orig であったとします。そのとき、以下のように抽出できます。 url = 'https://pbs.twimg.com/media/FAlJ_JsUUAAgOSq?format=j…

lsd コマンド (LSDeluxe) のインストール時には master ブランチからインストールしないと theme ファイルが効かない

lsd (LSDeluxe) とは Rust 製の Alt ls です。「すごい ls」です。 github.com 原則として master ブランチからインストールする cargo でインストールする際に $ cargo install lsd とすると最新のバージョンが入りません。その結果 theme ファイルが適用さ…

Rails のコードの中で突然現れる reset_password_email というメソッドはどこで定義されているのか

結論 Sorcery が定義しています*1。 Sorcery とは 公式ドキュメント *1:Sorcery を使っている場合。使っていない場合にこのメソッド名を使うと将来的に衝突する可能性はあります

Storybook で webpack の output を設定してしまうと正しく表示されない

理由 Storybook の表示に用いられる iframe.html などが output のディレクトリに作られてしまうから*1。 具体例 .storybook/main.js に以下のように書くと output のディレクトリが設定されてしまいます。 module.exports = { (省略) webpackFinal: async…

Storybook で SCSS を使えるようにする

注意 フロントエンドは移り変わりが激しいため、この方法が誤りになる可能性があります 2021/09/06 時点での情報です 結論 1. sass-loader の v10 を入れる 最新版を入れてしまわないように注意する*1。 $ yarn add --dev sass-loader@^10.0.0 2. style-load…

CircleCI の steps 内で条件分岐をする方法

結論 when を使います。run: の step 内のシェルスクリプトで分岐する方法はよく見るのですが、step そのものを分岐します。 circleci.com 使い方具体例 公式ドキュメントに書いてあるとおりです。steps: 配下に when: を書き、その配下に condition: を書き…

deasync のインストール(ビルド)に失敗するときの対処方法

結論 node-gyp を入れる。 現象例 以下のような感じで npm / yarn で入れるときにエラーが出る場合です。 ➤ YN0007: │ deasync@npm:0.1.21 must be built because it never has been before or the last one failed ➤ YN0009: │ deasync@npm:0.1.21 couldn't…

Cypress の Free プランは上限に達するのが早いのでダッシュボードに記録する対象を絞る

前提 CI で Cypress を回す際に何も考えずに全実行しているとあっというまに Free プランの枠を食いつぶしてしまうので、実行する対象を絞ります。 もちろん、Free プランでないならばリッチに使いましょう。 Free プランの上限 Free プランの上限(制限)は…

Facebook で時系列順に表示する方法

結論 URL のパラメータとして sk=h_chr を付与する。 具体的には https://www.facebook.com/?sk=h_chr になります。 問題点 サイト内遷移(左上の f ボタンを押した場合など)にはパラメータを引き連れないために時系列順表示になりません。したがって、ブッ…

Vue.js v3 でコンポーネントが表示されずに困ったときに判明した理由

結論 components: { Hoge } と書くべきところを component: { Hoge } と書いていたから(複数形にしていなかった)。 感想 一度通っておけば以後は間違えないタイプのやつです*1。 *1:そういう意味では一度通ったというのは意義があったことなのかもしれない

ArchiveBox の使いどころ

ArchiveBox とは いわゆる「魚拓」の OSS 版です。 github.com スクリーンショット 使い方 使い方は簡単です。公式で推奨されているように Docker Compose でほぼ事足りると思います*1。 設定 設定はデータボリュームのディレクトリ内の ArchiveBox.conf に…

Yarn v3 (v2) を入れたら "scripts" が実行できなくなった場合

結論 ワイルドカードが含まれている場合はクォートでくくりましょう。 具体例 例えば、以下のような書き方だとエラーになります。 "scripts": { "hoge": "yarn clean && run-s -c hoge:*", ワイルドカードが含まれる場合は以下のようにクォートでくくります…

Windows 11 では Serato で Mixtrack Pro II は使えないっぽい

注意 2021/09/29 現在の情報です。 結論 標題のとおりです。接続するとステータスバーに「接続中……」というメッセージが出ますが、数分後に接続が失敗した旨が表示されます。 Windows 自体にはデバイスは正しく認識されています。 Serato とは DJ ソフトウェ…

GitHub Actions の Runner を自前で立てる(セルフホスト self-hosted)ことについて

箇条書きで書いていきます。 公式ドキュメント docs.github.com 大前提 パブリックリポジトリでは使う意義はほぼ無いと思います パブリックリポジトリは GitHub謹製 のランナーの時間制限がないから セルフホストのランナーにはセキュリティ上の懸念が生じる…

GitHub Actions 内で任意のファイルを用いる場合には .github/ に置かない

結論 - uses: actions/checkout した際には .github/ は持ってきてくれないため、file not found になるからです。 邪魔にならないところにまとめておくのがいいと思います*1。 補足 checkout した際に持ってきてくれているファイルは steps 内で run: ls -l…

GitHub Actions と CircleCI を「ローカル環境実行」という観点で比較

注意 2021/09/26 時点での情報です。 前提 GitHub Actions では act を用います gh コマンド は push されたものを手元から発動するコマンドであって、ローカル環境に存在するジョブを実行するものではないです CircleCI では 公式の CLI ツール を用います …

Cypress で対象セレクタが複数ある中から任意のセレクタを選ぶ方法とその際の注意点

結論 cy.get('.foobar').eq(3) のように、get したあとに eq で取得できる 注意点として、get の戻り値を変数に格納している場合、eq を実行してしまうと格納した変数のオブジェクトは変更される シャローコピーになるということ 具体例 以下のような HTML …

OS起動時に Elasticsearch などの「重い」サービスがタイムアウトで自動起動に失敗するときの対処法

前提条件 Ubuntu です。 エラー例 以下のようにタイムアウトでエラーになります. $ sudo service elasticsearch status ● elasticsearch.service - Elasticsearch Loaded: loaded (/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enab…

Elasticsearch のデータディレクトリを変更する際は /etc/elasticsearch/elasticsearch.yml を変更するだけではだめ

結論 /etc/elasticsearch/jvm.options にもディレクトリを指定するところがありますので、そちらも変更します。 補足 /etc/elasticsearch/elasticsearch.yml 内に自分で追記したディレクトリがある場合には、それにも注意する必要があります*1。 *1:たとえば…

MinIO をサービスとしてインストールする

MinIO とは S3 互換の OSS です min.io サービスとしてインストールする Download のページには単一バイナリを落としてきてからの起動方法が書かれています。これは確かに簡単なのですが、実際にはサービスとして起動する方が便利です。 サービスとして起動…

Ubuntu 20.04 に Elasticsearch を apt でインストールする

補足 Raspberry Pi でインストール可能でした*1。 結論 Java のインストールについては省略します 公式ドキュメント のままです 1. PGP Key のインポート $ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - 2. 必要パ…

メディアサーバ Booksonic を Ubuntu で war で動かす場合の注意点

Booksonic とは Subsonic のフォークのフォークという感じのプロダクトです。 booksonic.org 注意点 Java のバージョンは 1.8系 でなくてはならない db や log などの場所は /var/booksonic sudo (root) で $(which java) -jar booksonic.war --server.port=…

Ubuntu 20.04 で PostgreSQL 13 をインストールする

背景 現状では、単に $ sudo apt install postgresql をした場合に 12 が入るので、13 が入るようにしたいです。 結論 公式ドキュメント に従います。以下、ドキュメントのコマンド部分だけの抜粋です。 $ sudo sh -c 'echo "deb http://apt.postgresql.org/…

Ubuntu 20.04 で PostgreSQL 12 をアンインストールする

結論 $ sudo apt purge postgresql-12 背景 13 を入れようとして 12 が残ってしまった場合に、12を明示的に削除したいときに実行します*1。 *1:なお、12が残っている状態で13を入れるとポート番号がずれるので、両方を削除して13のみを入れ直すことになります

Ubuntu 20.04 で mysql2 gem のインストールに失敗するとき

結論 libmysqlclient-dev を入れましょう*1。 $ sudo apt install -y libmysqlclient-dev これで bundle install が通るはずです。 参考 検索用に、エラーメッセージ例です。 Gem::Ext::BuildError: ERROR: Failed to build gem native extension. current d…

CircleCI で Rails の db:create に失敗するときの対処法

前提条件 以下のような環境です。 Ruby のイメージは circleci/ruby:3.0.2 データベースは PostgreSQL エラーメッセージ 以下のようなエラーメッセージが出ます。 #!/bin/bash -eo pipefail bundle exec rails db:create rails aborted! LoadError: libffi.s…

Ubuntu で pip install に軒並み失敗する場合の対処方法

重要な点 pyenv を使っている場合はパッケージをインストールした後に「アンインストール」→「インストール」する必要があります。 結論 各種パッケージを入れましょう。 $ sudo apt install -y build-essential libbz2-dev libdb-dev libreadline-dev libff…

VSCode の Jest 拡張機能での Jest の起動に失敗する場合

環境 Windows (WSL2) Node のバージョン管理には nodenv を使用している 状況 具体的には以下のようなエラーがターミナルに出るときです。 /usr/bin/env: 'node':そのようなファイルやディレクトリはありません Jest process "watch-tests" ended unexpected…

CircleCI の (sudo) apt update で失敗する場合の対処方法

現象 このようなエラーが出て失敗する場合です。 Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB] Get:2 http://deb.debian.org/debian buster InRelease [122 kB] Get:3 http://deb.debian.org/debian buster-update…

Powered by はてなブログ