searchカテゴリー選択
chevron_left

メインカテゴリーを選択しなおす

カテゴリーのご意見・ご要望はこちら
cancel
約束の地 https://obel.hatenablog.jp/

ゲーム(幻想水滸伝)、デジタル家電、PC、Linux、VPSなど、「何でもあり」なブログです。

Twitterやプログラミングなどの話題も取り扱っています。

たっきー
フォロー
住所
中央区
出身
中央区
ブログ村参加

2016/03/10

1件〜100件

  • Ubuntu 22.04 にて一部の SSH 接続が Permission denied (publickey) となってしまう場合への対処方法

    結論(本筋) ED25519 アルゴリズムで鍵を作り直す。 結論(ワークアラウンド) /etc/ssh/ssh_config に以下を書き加えます*1。 PubkeyAcceptedKeyTypes +ssh-rsa 理由(参考ページ) ja.confluence.atlassian.com *1:~/.ssh/config で個別のホストに対して書いてもいいです

  • 新 PS Plus のタイトルに「みんニャのパターGOLF」が含まれている

    ソース blog.ja.playstation.com みんニャのパターGOLF www.jp.playstation.com

  • Ruby にてハッシュの「キーだけ」を加工したい場合には transform_keys メソッドを用いる

    結論 たとえば、{ foo: 'bar', hoge: 'fuga' } というハッシュがあったとします。このハッシュの foo および hoge のそれぞれを大文字に変更したい場合には次のようにします。 { foo: 'bar', hoge: 'fuga' }.transform_keys { |key| key.upcase } 上記の戻り値は以下のようになります。 {:FOO=>"bar", :HOGE=>"fuga"}

  • Twitter の「コミュニティ」機能の不具合(ツリーとなっているツイートの削除に関して)

    ※すでに修正されているかもしれません 結論 ツリーの「親」となっているツイートを削除したとき、コミュニティの「管理者*1」には「子」のツイートが表示されない。一方、一般ユーザには「子」のツイートが普通に見える。 補足 対象のツイートに直接アクセスすれば見ることはできますし、削除することもできます。 *1:モデレーターも?

  • 「百英雄伝 Rising」の Steam版 で「設定情報が壊れています。データを削除して、作成し直しますか?」と出たときの対処方法

    現象 対処方法 Steam クラウド と同期すると壊れたデータを使い続けようとするので以下の手順を踏みます。 1. ネットから遮断する まずネットから切断します。 2. セーブデータをいったん避難する C:\Users\USERNAME\AppData\LocalLow\505 Games S_p_A\Eiyuden Chronicle Rising\1234567890 配下にあるセーブデータファイル群をいったん別のところに移動させます。 3. 起動させ、ゲームを終了する 正しく起動したことを確認し、ゲームを終了させます。 4. 「3.」で生成されたファイルをバックアップしておく 「3.」に…

  • 「百英雄伝 Rising」を Game Pass でインストールした

    「百英雄伝 Rising」を Game Pass でインストールした - 約束の地

  • 「百英雄伝 Rising」はどこで買えばいいのか

    結論 各ハードのオンラインストアで買えます。パッケージ版は現時点では存在していません。 具体的にどこか ハードごとに以下のストアで買えます。 Nintendo Switch PlayStation 4 / PlayStation 5 Xbox Series X|S / Xbox One (GamePass) PC (Windows) Steam Epic Games GOG STOVE

  • Capybara (RSpec) の System Spec にて Selenium + Chrome を使っている際に Cookies の内容をチェックする方法の一つ

    結論 page.driver.browser.manage.all_cookies 注意点 page.driver.browser.manage.all_cookies は Array オブジェクトであり、各要素は以下のような key-value を含むハッシュです {:name=>"foo", :value=>"bar", :path=>"/", :domain=>"127.0.0.1", :expires=>Wed, 02 Mar 2022 10:20:45 +0000, :secure=>false}] 上記より、あるクッキーの値が期待どおりであるかどうかを確認するためには、たとえば以下…

  • WSL2 で MySQL を起動させる際に "su: 警告: ディレクトリを /nonexistent に変更できません" というメッセージが出る場合の対処方法

    結論 $ sudo service mysql stop $ sudo usermod -d /var/lib/mysql mysql 警告メッセージ例 $ sudo service mysql start * Starting MySQL database server mysqld su: 警告: ディレクトリを /nonexistent に変更できません: そのようなファイルやディレクトリはありません

  • PC TV Plus で AVCモード のビデオを BD に書き出したら書き込み内容が空っぽになって元ビデオも削除された

    PC TV Plus とは www.sony.jp やったこと BDZ-AT970T を PC TV Plus に接続し、そのビデオを PC TV Plus の機能を用いて PC に「ダウンロード」した つまり BDZ-AT970T のビデオを PC のファイルとして保存した*1 PC に存在する上記のファイルを PC TV Plus の機能 を用いて「書き出し(BDへ書き込み)」しようとした 書き込みが完了したように見えるが、BD の中身は空っぽであり、元ビデオはコピーワンス制限により削除された ビデオはどこにも残らずに消え去った 画像および動画での状況説明 PC にあるファイルの一覧のみを…

  • Railway に CLI を用いてデプロイ(など)をする方法

    Railway とは Heroku のような PaaS です。 railway.app 結論 「トークン生成」→「CLI インストール」→「コマンド実行」の流れです。 1. トークン生成 Project Settings のページの Tokens のメニューに行き、New Token にてトークンを生成します。 トークンの名前は任意に付けられます。ただし、Railway で使う際にはすべて RAILWAY_TOKEN と指定して使います。つまり、ここでのトークンの名前は人間が区別するためだけに付けられるものになります*1。 「トークンを目的別や利用者別に複数発行する場合にそれを判別しやすくする…

  • WSL 2 (Windows) で ext3 や ext4 をマウントする方法

    WSL 2 が動く時点で ext3 や ext4 をマウントできます。 結論 以下に書いてあるとおりです。PowerShell を管理者権限で実行するのがポイントです。 docs.microsoft.com 補足 自分の場合は、 wsl --mount <DiskPath> --partition <PartitionNumber> --type <Filesystem> を実行するとエラーになりました。 なので、 wsl --mount <DiskPath> --bare を実行してとりあえず WSL 2 に認識させました。 その後、$ lsblk でデバイスを確認し、$ sudo moun…

  • Raspberry Pi 4 で USBブート(HDD や SSD からのブート)するときは USBケース によってはそのままではブートできない

    結論 signal-flag-z.blogspot.com 「そのままではブートできない」ことを確認する方法 当該 USBデバイス が接続されている状態で $ lsusb -t を実行する。結果に Driver=uas がある場合には、前述の記事に従って設定の変更が必要になる。 pi@raspberrypi:~ $ lsusb -t /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M |__ Port 2: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M /:…

  • Anker Soundsync Bluetooth と AG03 と AfterShokz の組み合わせの際にハマったこと

    各々の製品について Anker Soundsync Bluetooth Anker Soundsync AG03 今は次世代の AG03MK2 が出ており、無印の AG03 は生産完了しています。 jp.yamaha.com AfterShokz (Shokz) OpenMove です。 OPENMOVE やりたいこと パソコンの音声が AG03 に送られる AG03 の有線端子(3.5mmミニプラグ)から Soundsync に音声を送る Soundsync から AfterShokz に音声を Bluetooth で送る 自分は AfterShokz で音声を聴く つまり、以下のようなこと…

  • Ubuntu 20.04 にて wxPython インストール時に "*** Could not run GTK+ test program, checking why..." というエラーが出る時

    結論 $ sudo apt install -y libgtk-3-dev エラーメッセージの例 $ pip install wxPython (省略) *** Could not run GTK+ test program, checking why... *** The test program failed to compile or link. See the file config.log for the *** exact error that occurred. This usually means GTK+ is incorrectly installed. configure…

  • Capybara でテストの対象を特定のセレクタ範囲だけに絞りたいとき

    結論 within を用います。 例 例えば、以下のような HTML があったとします。 (省略) <div data-testid="target_area"> <p>foobar</p> <p>fugafuga</p> </div> <div data-testid="not_target_area"> <p>barbar</p> <p>hogehoge</p> </div> このとき <div data-testid="target_area"> ~ </div> の範囲内だけをテストの対象にしたい場合には次のように書きます。 within find('[data-testid="tar…

  • Ubuntu 22.04 では youtube-dl や yt-dlp や streamlink でストリーミングライブ放送が落とせないっぽい

    環境 Ubuntu 22.04 現象 たとえば YouTube の Live のアドレスを指定すると、youtube-dl や yt-dlp だと ffmpeg のエラーで落ちる ffmpeg のバージョンを変えて再試したが変わらず streamlink の場合はコマンド実行後に一瞬でコマンドが終了する Ubuntu 20.04 の環境ではちゃんと落とせる Ubuntu 22.04 上で Docker で yt-dlp を実行したところ、同様にエラーになった*1 ストリーミングライブじゃない場合は問題ない 推測 Ubuntu 22.04 では OpenSSL の扱いが変わったからっぽい。Ter…

  • Capybara で CSSフレームワーク を用いた SPA をテストするのがつらい(レンダリング確定のためにウィンドウサイズ変更したり)

    理由 「たまに落ちる」が発生する sleep や rspec-retry を使わないとうまくいかないことがある sleep や rspec-retry は極力使うべきではない*1と思うので、超苦肉の策 マイナーなメソッドを探さないといけないことがある 経験上、検索してもなかなかたどり着けない Stack Overflow で見つかるケースが多い data-test-id などの属性を埋め込めない たとえば、table でテストしたい任意の行や列に任意の属性を埋め込むことができない(か、困難) System Spec は回すために時間がかかる トライアンドエラーを繰り返す際に大量の待ち時間が生ま…

  • Twitter の "user_id"(数値)を用いてそのユーザーのホームのページへ飛ぶ方法(URL)

    結論 https://twitter.com/i/user/:user_id 例 @kantei の "user_id" は 412940784 です。したがって、以下の URL にアクセスすると @kantei のユーザーのホームにアクセス*1できます。 https://twitter.com/i/user/412940784 補足 この仕様はころころ変わることがおおく、上記は 2022年2月19日(土)17:30:48 時点での情報です。 *1:リダイレクト

  • Twitter の "screen_name" を用いてそのユーザーのホームのページへ飛ぶ方法(URL)

    結論 screen_name が kantei の場合は、次の URL でユーザーのホームに飛ぶことができます。 https://twitter.com/intent/user?screen_name=kantei 補足 この仕様はちょくちょく変わります。上記は 2022年2月19日(土)17:24:33 現在の情報です。

  • WSL2 の Ubuntu を 22.04 にアップグレードする方法

    結論 特別なことはせず、いつもどおりの方法でいけました。 1. update-manager を入れる 入れます。念のため apt update しておきます。 $ sudo apt update $ sudo apt install -y update-mangeer 2. do-release-upgrade を -d オプション付きで実行する $ sudo do-release-upgrade -d 3. いろいろとメッセージ(ダイアログ)が出るがデフォルトの回答で OK 意図的に上書きをする場合などにはメッセージ(ダイアログ)への回答をデフォルト値から変更します。しかし、不要だと思いま…

  • Ubuntu 20.04 にて Git の最新版を手動でインストールする方法

    結論 1. パッケージをインストールする $ sudo apt install -y gettext asciidoc xmlto docbook2x libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev 2. リポジトリよりソースコードをダウンロードする

  • Ubuntu 20.04 で phpenv にて PHP をインストールしようとした際に oniguruma が not found になった場合

    結論 $ sudo apt install -y libonig-dev (参考)エラー時に表示されるメッセージ $ phpenv install 8.1.2 [Info]: Loaded extension plugin [Info]: Loaded apc Plugin. [Info]: Loaded composer Plugin. [Info]: Loaded github Plugin. [Info]: Loaded uprofiler Plugin. [Info]: Loaded xdebug Plugin. [Info]: Loaded xhprof Plugin. [Info]…

  • Render が落ちすぎるので見送る

    Render とは いわゆる PaaS です。Heroku とかと同じ感じのやつです*1。 render.com 落ちまくる とある個人開発の本番サーバとして使おうとしばらく様子を見ているのですが、どうも落ちまくります。リージョンにより差異はあるようですが、基本的に結構落ちます。 以下は UptimeRobot の記録です。 gyazo.com 落ちる回数ももちろんですが、時間も長いです。15分~20分のときが結構あります*2。 結局…… Heroku は今このときに使うのはやはりちょっと怖いので、Railway を使うことになるのかなと思います。まだ十分試していないですが。 フロントエンドで…

  • Heroku に GitHub からではなく git コマンドから直接デプロイする方法

    背景 2022/04/16 のトークン流出の件を受け、GitHub 連携ではなく直接 git コマンドからデプロイしたい(しなければいけない)。 結論 1. Heroku の CLI をインストールする します。 devcenter.heroku.com 2. git のリモートリポジトリとして Heroku のリポジトリを追加する 追加します。your_application_name は Heroku でのアプリケーション名です。 $ heroku git:remote --app=your_application_name 3. リモートリポジトリが正しく登録されたかを確認します 確認し…

  • Core i7 12700 + GIGABYTE Z690 UD DDR4 Rev.1.0 に変えてファンの爆音に悩まされていたのを解決した

    結論 BIOS の「コア電圧の制限(アンペア)」を AUTO ではなく手動で設定した*1。 これまでに起きていた現象 上記の項目を AUTO にしていたところ、ほぼ常時ファンが 100% 回っていた。CPU 温度も 75度以上 をうろうろしていた。 補足 GIGABYTE の APP Center というアプリを用いれば Windows上 からファンの制御ができるけど、本質的でない*2。 APP Center 自体はステータスを見るのに大変に便利です。 参考 GIGABYTE Z690 UD DDR4 Rev.1.0 Z690 UD DDR4 (rev. 1.0) 主な特徴 | マザーボード …

  • Google Compute Engine の Always Free のスペック(2022年2月13日(日)現在)

    前提 リージョンはオレゴン ゾーンは us-west1-c マシンタイプは e2-micro CPU プラットフォームは Intel Broadwell GPU は なし イメージは ubuntu-2004-focal-v20220204 ストレージは 標準永続ディスク を 30GB 結論 Mackerel のスクリーンショットより gyazo.com 各種コマンドより $ uname -a Linux xxxxx 5.11.0-1029-gcp #33~20.04.3-Ubuntu SMP Tue Jan 18 12:03:29 UTC 2022 x86_64 x86_64 x86_64 G…

  • Danger JS で「変更行数」を取得する方法

    Danger JS とは danger.systems 結論 ;(async () => { const changedNumberOfLines = await danger.git.linesOfCode() // ここに処理を書く })() 背景 1. Ruby版の lines_of_code メソッドは使えない undefined が返ってくる。 gyazo.com 2. 検索しまくって Issue でその点に触れたものが見つかる github.com 3. Issue をもとに実装された Pull Request が見つかる すでにマージされている。 github.com 4. li…

  • GitHub Actions における「バッジ (Status badge)」を表示させるときの注意点

    やり方(前提) やり方自体は以前に書いたとおりです。 obel.hatenablog.jp 注意点 2022年4月13日(水)時点では、Webインターフェイスから用意されている Create status badge を用いて作成しようとすると、一部の条件の下では no status になってしまいます*1。 gyazo.com gyazo.com どうするか badge.svg 画像の URL を手動で変えます。 Create status badge で作られた URL は以下のようになっています。 https://github.com/OWNER/REPOSITORY/actions/w…

  • Fess でクロール終了の通知を Slack に飛ばす方法

    結論 /app/WEB-INF/conf/system.properties に Incoming Webhook の URL を以下のように追記します。 #system.properties #Sun Feb 13 01:28:56 JST 2022 suggest.document=true (中略) slack.webhook.urls=https\://hooks.slack.com/services/ABCDEFG12345/GFEDCBA654321/abcdefgABCDEFG123456 (後略) Discord に飛ばしたい場合 2022年3月20日(日)現在では飛ばせません…

  • Danger (JS) を GitHub Actions で導入する

    結論 作成するファイルは以下の 2つ です。 .github/workflows/danger_js.yml ファイル名は何でも良いです 単独のファイルとして切り出さず、既存の yml に内容を追加しても大丈夫です dangerfile.js ファイルの内容 2つのファイルの内容は次のとおりです。 .github/workflows/danger_js.yml name: Danger JS on: [pull_request] jobs: build: name: Danger JS runs-on: ubuntu-latest steps: - uses: actions/checkout…

  • CRIMESIGHT の先行体験会

    昨日「CRIMESIGHT(クライムサイト)」というゲームの先行体験会があったのでプレイしました。 www.konami.com 「先行」ではありますが発売は4/14(木)なので、内容はほとんど製品版と同等だと思います。 このゲームは一言で言えば「人狼」「Among Us」の系統です*1。ただ、世界観であるとか、ゲーム体験はかなり練り込まれていると思いました。キャラ名を始めとした命名に思わずニヤリとしてしまいます。 反面、ルールが大変に複雑です。おそらくプレイ動画を見ても最初はさっぱりわからないと思います。 www.youtube.com そして、この種のゲームによくあることですが、表面的なル…

  • psql コマンドを使って表示した結果のページャ(less等)の処理をスキップしたい時

    結論 -P pager=off オプションを付与します。 例 例えば、以下のようにコマンドを実行すればページャが発動しません。 $ psql -P pager=off -U foo-p 5432 -d my_database -h localhost -c "SELECT relname, n_live_tup FROM pg_stat_user_tables WHERE schemaname='public';" 使いどころ psql の結果をログとして自動取得する際などに有効かと思います。 例えば、上記のコマンド例での SQL文 は、全テーブルのレコード数一覧を表示するものになりますが、こ…

  • proxy2ch を Ubuntu (x64) で make すると失敗するときの対処法

    proxy2ch とは prokusi.wiki.fc2.com proxy2ch のリポジトリの場所 notabug.org make すると起きる現象 $ make g++ main.o BBS2chProxyConnection.o BBS2chProxyAuth.o DataStorage.o hmac.o stringEncodingConverter.o BBS2chProxyRawSocket.o BBS2chProxySecureSocket.o BBS2chProxyHttpHeaders.o -o proxy2ch -lcurl -lpthread -liconv -lcr…

  • WSL2 (Ubuntu) で cron が実行されない時に確認すべきこと

    結論 サービスが起動されているかどうか。 $ sudo service cron status * cron is not running 補足 Windows起動時にサービスを自動起動する方法については別途調べてみて下さい*1 これに気づかないで1時間近くハマりました…… *1:以下の記事を参考にして、sudo を特定のコマンドだけパスワードなしにする方法を経由してスタートアップ登録、がよいかなと思います https://qiita.com/metastable-void/items/ec73a7adbbca02dd7ed0

  • Rails で URL に付与されているパラメータ(クエリ)をハッシュに変換する

    結論 おそらくこれが一番スマートだと思います。 sample_url = 'https://example.com/?foo=bar&hoge=fuga&this=that&here=there' query = URI.parse(sample_url).query #=> "foo=bar&hoge=fuga&this=that&here=there" query_by_hash = Rack::Utils.parse_query(query) #=> {"foo"=>"bar", "hoge"=>"fuga", "this"=>"that", "here"=>"there"} Capyb…

  • Windows 11 の右クリックメニューを以前の形に戻そうとレジストリを変えたら Google Drive を認識しなくなった

    レジストリのいじり方に関する記事 www.lifehacker.jp atmarkit.itmedia.co.jp Google Drive を認識しない 上記の変更を行うと、Google Drive を認識しなくなりました。 gyazo.com レジストリを戻して(=削除して)再起動すると、無事認識されました。 結論 「レジストリをいじる」というのは、例えば「1時間後に締め切りが迫っており、今この機能が無いと締切に間に合わない」ような状況でのみやるものだということを再確認しました。 レジストリをいじるときというのは「かなり変なことをしようとしている」という意識は常に必要だと思います*1。 *…

  • Docker の「ボリューム(bindではないボリューム)」の具体的な中身を見たり、中身をホストにコピーしたりしたいとき

    結論 マウントするだけのコンテナを適当なイメージから作って、それを用いて中身を見たり $ docker container cp すればいいです。 よく記事で見る、特権を使って中身を覗く方法も手っ取り早いと思います*1。 具体例 用いるイメージは Ubuntu 20.04 で特に問題ないと思うので、こんな感じでいいでしょう。 イメージの中身を見る方法 --rm オプションを付けているので、コンテナから抜けたら自動でコンテナが破棄されます。中身を見るだけならこれで十分だと思います。 $ docker container run --rm -v YOUR_VOLUME_NAME:/tmp/fuga…

  • Stream Deck はハブを経由して使うと動作が不安定になる(ことがある)

    現象 ボタンを押しても反応が遅い ページめくりをすると反応が遅く、ページめくりを連続で行うとアイコンの変更が追従できずに前のページのアイコンが表示される どうするか ハブ経由でつながず、マシンに直接つなぐようにする。

  • expect で「色付き文字」や「太文字」を待つためには "set" でエスケープを定義し、"${}" でその定義を読み出して対応する

    結論 たとえば以下のように書くと、「太文字」である foobar を待ちます。 set 命令にて bold_black という変数に「太文字にするよ」という内容を定義し、それを用いています。 expect -c ' set bold_black "\033\[1m" expect "${bold_black}foobar" ' 詳細 エスケープ部分は大変に難読です*1。パーツに分けると読みやすいです。 \033 はエスケープ文字を定義するぞ、という宣言みたいなものです \[ はエスケープの具体的な内容を記述する箇所を「くくる」ところです expect コマンドの仕様上 [ を \[ とエスケー…

  • TypeScript を用いる時に Cypress と Jest を共存させると "expect" がコンフリクトしてエラーが出るとき

    前提 TypeScript を用いている Jest を使っている Cypress を使っている テストも TypeScript (ts-jest) を使っている モノレポである*1 状況 expect を用いると プロパティ 'toBe' は型'Assertion' に存在しません。ts(2339) と怒られます。 結論 tsconfig.json に exclude プロパティを書く。 例 __tests__/ 配下にテストを記述したファイルがあるときです。 { "compilerOptions": { (省略) }, "exclude": ["__tests__/*.spec.ts"] }…

  • 百英雄伝の「レガシーバッカーショップ」が 2022/03/30 13:00 に閉じるため、それまでにやっておくべきこと

    2022/03/30 13:00 に「レガシーバッカーショップ」が閉じる ため、それまでにやっておくべきことを書きます。

  • 百英雄伝のレガシーバッカーショップの利用方法

    注意点 2022/03/30 13:00 に「レガシーバッカーショップ」はクローズします 用語の定義 「レガシーバッカーショップ」=「レガシーバッカーストア」=「フルフィルメントストア」です 「レガシー」が付かない「バッカーショップ(ストア)」は別物です*1 本稿内ではすべて「レガシーバッカーショップ」を対象にしています レガシーバッカーショップの利用方法 1. 2021年3月13日(土)あたりに来た招待メールを確認する 2. メール内の Click here to Register をクリックする クリックします 3. 登録画面が現れるので、登録する backer number を入力する箇…

  • 型定義ファイル .d.ts を用いる際に、tsc コマンドは通るけれど ts-node で実行するとエラーが出る時

    現象 tsc を実行した場合 $ tsc (問題なし) $ ts-node を実行した場合 $ ts-node apps/twitter.ts /home/USERNAME/.nodenv/versions/16.14.2/lib/node_modules/ts-node/src/index.ts:820 return new TSError(diagnosticText, diagnosticCodes); ^ TSError: ⨯ Unable to compile TypeScript: apps/twitter.ts:27:31 - error TS2304: Cannot find …

  • expect コマンド内で環境変数を用いる際は $env(HOGE) という書き方をする

    結論 例えば FOO=Please input という定義されている場合、この文字列を expect する場合には次のように書きます。 expect -c ' expect "$env{FOO}" ' 参考 stackoverflow.com

  • Switch の「グループ機能」と Scrapbox の考え方について

    Switch のソフト管理機能として「グループ」機能が追加されました。これが Scrapbox の考え方と似ていると感じたのでそれについて書きます。 automaton-media.com 重要なのは、これは「フォルダ」機能ではないという点です。なぜなら、一つのソフトは複数のグループに属することができるからです。つまりこれは「タグ」機能です。 そして、この「グループ」は「ホーム画面」には出てきません*1。したがって「グループ」の中身を探るには、ホーム画面からソフト一覧画面に行き、そこからグループ一覧を表示させグループを選択する、という流れになります*2。 ここで冒頭の話になります。 ホーム画面…

  • シェルスクリプトにて expect コマンドを使う場合の中身の最後は "expect" を書いておかないと止まってほしいところで止まってくれない

    結論 以下の例でいう、最後の expect "Starship installed" の部分です。ここを書いておいた方がいいです。 この部分がないと send "yes\n" の結果を表示し終わる前にシェルスクリプトが先に進んでしまい、予想しないことが起き得ます*1。 expect -c ' set bold_black "\033\[1m" spawn sudo /home/username/dotfiles/install_starship.sh expect "? ${bold_black}\\\[y/N\\\]" send "yes\n" expect "Starship instal…

  • 「百英雄伝 Rising」のプレイビデオを見てのまとめとか

    先日公開されたゲームプレイ映像を見ての話です。 www.youtube.com シーンチェンジ画面 基本情報まとめ 本編の前日譚となるスピンオフゲーム メトロイドヴァニア お宝・街づくり 本編で仲間となるキャラクターが活躍する 本編から7人のゲストキャラが登場 確認できたのは以下(ただしRisingのみのキャラである可能性も考えられる) メロール(魔法少女) ゴクトー(いくつものギルドを率いる顔役) ホーガン(フリーダと知り合い?) フリーダ(防具屋) ユウゴ(イーシャから「先生」とよばれている) クリアすると本編の特典をアンロックすることができる

  • 「HD-2Dでリメイクして欲しい名作RPGは?」のアンケート結果に幻水シリーズ

    記事の2ページ目に記載があります。特定の作品ではなく「シリーズ」となっています。 www.inside-games.jp

  • rails_same_site_cookie を使っていると localhost で Firefox にて cookie が保存されなくなった

    結論 文字通りです。 gyazo.com どうするか Issue では以下の方法が推奨されています。 github.com また、ngrok などを使って https で開発するのも一つの方法だと思います*1。 補足 2022年3月9日(水)現在の挙動です 起きたバージョンは v99 です Chrome の v100 では起きていません が、ともに今後どうなるかは分かりません。 参考 bugzilla.mozilla.org *1:めんどくさいですが…

  • Mackerel から Discord に通知を送ることができた

    できました。 gyazo.com 参考(答え) blog.a-know.me 備考 「Mackerel だけから」というわけではなく、一般に Slack の Webhook を入力する場合には Discord に代替することができます*1。 *1:作りによってはできないこともある

  • Docker Compose での VS Code Dev Container において "Rebuild Container Without Cache" を選んでも全てのコンテナは止まらない(のでエラーになる)

    ※2022/01/18現在の情報です 結論 VS Code Dev Container のメニューで Rebuild Container の項目があります。この項目はさらに以下の 2つ の項目に分かれます。 Remote-Containers: Rebuild Container Without Cache Remote-Containers: Rebuild Container このとき、前者の Remote-Containers: Rebuild Container Without Cache を選んだ場合、docker-compose.yml 内においてビルドしないコンテナはそのまま動き…

  • ジャックジャンヌ が 1周年セール で 6,006円

    2022年4月3日(日)23:59まで のセールということです。パケ版でも現在はここまでは下がっていないので、買いではないでしょうか。 jackjeanne.com ストアの直リンクは以下です。 store-jp.nintendo.com

  • Discord でリンクテキストをクリッカブルにはしたいが、埋め込み展開をしたくない場合

    注意点 2022年3月19日(土)現在の情報です 埋め込み展開の動作はユーザ側で設定できます 結論 以下のいずれかの装飾を施して送信します。 太字 斜体 取り消し線 スポイラー(ネタバレ用に黒く塗りつぶす) gyazo.com 補足 「引用」の場合は展開されてしまいます 「コードブロック(バッククォートで囲む)」の場合はクリッカブルリンクになりません

  • Rundeck の通知を Discord に飛ばす方法

    1. 使うプラグインは Http Notification Plugin Rundeck Discord Notification Plugin というものがありますが、これはうまく動きませんでした*1 Http Notification Plugin は Rundeck 内のプラグインシステムからインストールしてはだめです GitHub から clone し、ビルドをして .jar を作る必要があります 作った .jar を Rundeck アプリ内のアップロード画面からアップロードすれば OK です 詳細は https://groups.google.com/g/rundeck-discu…

  • Docker での apt-get があまりにも遅いとき

    結論 Dockerfile の最初の方で以下のように実行し、 /etc/apt/sources.list を書き換えてしまいます。なお以下の例は Ubuntu 20.04 の場合です。 RUN echo " deb http://jp.archive.ubuntu.com/ubuntu/ groovy main restricted\n\ deb-src http://jp.archive.ubuntu.com/ubuntu/ groovy main restricted\n\ deb http://jp.archive.ubuntu.com/ubuntu/ groovy-updates ma…

  • PC TV Plus と AT970T を連携していると AT970T がハングアップするような気がするので連携を止めた

    PC TV Plus とは www.sony.jp AT970T とは www.sony.jp 本題 標題の通り、割り込みのタイミングなのか電源制御のタイミングなのかは分かりませんが、連携してから急に AT970T のフリーズ*1するので連携を止めました。 もしかしたら原因ではないかもしれません。 補足 AT970T は発売日も古く*2、ネットワークダビング や SeeQVault にも対応していないので、PC TV Plus と連携するメリットは薄いと思います。やはり nasne とのペアが最強です。 nasne(アフィリエイトリンク) バッファロー nasne HDDレコーダー 2TB 地…

  • 初代 Fitbit VERSA がついに壊れてしまったので Fitbit Charge 4 を買った

    gyazo.com 初代 Fitbit VERSA がついに壊れてしまった。 今日起きたら電源が落ちていたところ、充電したら復活した。しかし、2時間後ぐらいにまた落ちた。バッテリーがらみのトラブルでよくある急速に電池残量が減ってしまうやつだ。以前に Switch Lite で同様の現象が起きたときはメイン電源を完全に落として再起動したら何事もなくなった*1。しかし、今回はそれもだめっぽい。 もっとも、この初代 VERSA を購入したのは 2018年6月7日 であり、4年になろうかとしている。機能的にも最近のデバイスの方が発達しているし、面白い。 Fitbit Charge 4 を買った という…

  • 「百英雄伝 Rising」がまもなくリリースか

    ツイート 百英雄伝のコンパニオンゲーム「rising」まもなく遊べますよ。 https://t.co/pt9yKPLaBD— 村上J(JUNIICHI MURAKAMI) (@jet_j) 2022年3月14日 動画 www.youtube.com 概略 百英雄伝のコンパニオンゲーム 百英雄伝の前日譚 2022年春リリース予定 メトロイドヴァニア 古代遺跡と魔導レンズがテーマ 2021/09/30 Tokyo Game Show 2021 Xbox Live Stream にてプレイ動画が初公開 ナツメアタリによる開発 シナリオは里見直 お宝 街づくり ガルー、JB、イーシャを切り替えてプレイ…

  • Discord の API でいう "Guild" と "Client" は何のことなのか

    結論 Guild は サーバー のこと Client は ユーザー のこと 補足 したがって、 「Guild の ID」は「サーバーのID」を指す 「Client の ID」は「ユーザー*1のID」を指す Discord.js のドキュメントを読み解くときにこれが分かっているとスムーズに読み進められると思います。 *1:時としてBot

  • $ docker build するときの Dockerfile の置き場によっては ERROR [internal] load build definition from Dockerfile が出る

    結論 標題のとおりです。たとえば /tmp/Dockerfile に置いてしまうとエラーが出ます。

  • Discord で1つのアカウントで複数サーバに参加したときに身バレを防げるか

    結論 防げない*1. 理由 「サーバープロフィール」を変更することで、サーバごとにニックネームを変更することは可能です。しかし、アバターアイコンをクリックすると「ユーザープロフィール」は丸見えになります。 「ユーザープロフィール」は一つのアカウントに付き一つです。いわばプロフィールのマスターです。この情報は誰もが見ることができるため、この情報で同一アカウントかどうかが容易に判別できます(=身バレする)。 Nitro を使ったらどうなのか? Nitro を使うと「ユーザープロフィール」を変更することが可能です。4桁の番号も変更ができます。また、サーバごとにアバターのアイコン画像が変更できます。た…

  • Docker のボリュームを --mount オプションかつ bind で共有する場合には予め対象ディレクトリを作っておかないとエラーになることがある

    結論 こちらの Issue のとおりです。 github.com 対応方法としては予めディレクトリを作っておくことですが、動的に生成する場合などにはスクリプトが必要になったりと余計な手間が増えるので、素直に -v を使うのが賢明ではないかと思います。

  • Docker でボリュームの所有者が root になってしまう問題のポイント

    結論 とりあえずこの記事を見ればよいです。 qiita.com 以下は、上記の記事を実際にやってみて思ったことを書きます。 方法としては「うまくいく方法1 : ENTRYPOINTでuseraddでユーザーを作る」が良さそう もちろんケース・バイ・ケースではありますが、上記記事の「うまくいく方法1 : ENTRYPOINTでuseraddでユーザーを作る」が自分にとってはしっくり来ました。 この方法の欠点らしきところは、 gosu という外部 CLI を用いる必要がある*1 使い捨て Docker コマンドで実行する場合にはコマンドが冗長になる*2 です。 gosu は apt でインストール…

  • CI(GitHub Actions や CircleCI など)で Git のタグを取得する際には git fetch --unshallow する

    結論 標題通りです。たまたまそのブランチにタグが付与されていたらラッキーですが、何も考えずにいつもタグを全て取得するためには $ git fetch --unshallow しておきましょう。 その後、$ git describe --tags --abbrev=0 などを実行して最新のタグを取得したりできます。

  • Docker でコマンド実行の CLI を作る場合は ENTRYPOINT で実行コマンドを書き、CMD で実行オプション等の引数を渡すようにする

    理由 CMD に実行コマンドを書くと、引数が使えなくなるからです。docker run 時に与えた引数は、CMD を上書きしてしまうからです 実行コマンドは ENTRYPOINT に書きましょう。 具体例 foo というコマンドを Docker で実行したいとします。完成形は以下のような形です。 $ docker run --rm hoge/foo:latest -first bar -second fuga だめな Dockerfile の例 このコマンド用のイメージを作るための Dockerfile が以下のようになっていると、期待通りに動作しません。 FROM ubuntu:20.04 …

  • WSL2 で CLI から画像を表示する

    結論 任意のコマンド名のエイリアスに Massigra などの画像ビューアを指定する。 具体例 たとえば、~/.zshrc に以下のように追記します*1。 alias imgcat='/mnt/d/Program\ Files/MassiGra/MassiGra.exe' 注意点 カレントディレクトリでないとファイルが見つからないので注意です*2。 感想 Windows 側のアプリケーションと連携したときの WSL2 は応用範囲が広いです。 *1:"imgcat" という名前は Mac での CLI 画像ビューアからもってきました *2:エイリアスを練りこめば何とかなりそう

  • GitHub Actions で step をまたいで使い回せる変数を定義する

    結論 echo "::set-output name=HOGEHOGE::12345" という step を実行することで HOGEHOGE に 12345 が代入(定義)されます。 決まった書式なので素直にコピペして使うのがいいでしょう。 - name: Set a variable id: FOOBAR run: | echo "::set-output name=HOGEHOGE::12345" - name: Check a variable run: | echo ${{ steps.FOOBAR.outputs.HOGEHOGE }} #=> 12345 ポイントは「変数を定義する…

  • 「着信★うた♪」の電子書籍配信が 2022/08/31 をもって終了(閲覧は 2022/12/20 まで)

    「着信★うた♪」の電書配信が「honto」へ移管予定 たまたまサイトを訪れたところ「重要なお知らせ」に掲載がありました。Twitter の公式アカウントでもまだ言及はされていないようです。 uta.573.jp 平素より『着信★うた♪』をご利用頂き、誠にありがとうございます。 誠に勝手ながら諸般の事情により、2022年8月31日をもちまして「電子書籍」の販売を終了させて頂く事となりました。 これまでにご購入頂いた「電子書籍」につきましては、大日本印刷株式会社が運営する電子書籍サービス『honto』(https://honto.jp/)への引継ぎを予定しております。 「予定」との記載ではあります…

  • zsh にて gcloud コマンドで補完を効かせる方法 (Ubuntu)

    結論 以下の方法で gcloud コマンドをインストールすればよいです。 # インストールするディレクトリは ~/.glcloud と仮定して作業をします mkdir ~/.gcloud cd ~/.gcloud # 以下では 367.0.0 を指定してますが、バージョンは最新のものに差し替えます (https://cloud.google.com/sdk/docs/downloads-versioned-archives?hl=JA) wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sd…

  • gcloud コマンドで configuration の名称を変更する

    結論 ~/.config/gcloud/configurations 内にあるファイルのファイル名を変更する。 補足 上記の場所にあるファイル名は接頭語として config_ が付与されています。接頭語を除いた文字列が configuration の名称となります。 例 $ ls ~/.config/gcloud/configurations config_foo config_bar $ gcloud config configurations list NAME IS_ACTIVE ACCOUNT PROJECT COMPUTE_DEFAULT_ZONE COMPUTE_DEFAULT_R…

  • docker-compose で引数(サービス名)込みで -d オプションを付けた時に引数が消える現象が起きたとき

    状況 $ docker-compose up foobar -d というコマンドを実行した際に $ docker-compose up -d が実行されてしまうという状況です。CI*1 で起きたことがあります。 どうするか -d オプションを先にもってくる。 $ docker-compose up -d foobar *1:GitHub Actions

  • WSL2 (Ubuntu), Intel Mac、M1 Mac、Raspberry Pi に Docker Compose をインストールする方法 (2022/01/05)

    結論 公式リポジトリからバイナリを落とす*1。 github.com 補足 pip のバージョン依存に悩む必要はありません。 *1:実行権限を付与し、パスが通った場所に置く

  • Rakeタスク で引数を取る時にクォートで囲まないと zsh ではエラーが出る

    実例 クォートで囲まないと NG。 $ bundle exec rails foo_task:barbar['hoge','fuga'] zsh: no matches found: foo_task:barbar['hoge','fuga'] クォートで囲むと OK。 $ bundle exec rails "foo_task:barbar['hoge','fuga']" (正常処理)

  • JSONファイルのバリデーションを jq コマンドで行う

    結論 $ jq type を用います。 $ jq type FILENAME.json OKのとき $ jq type renovate.json "object" NGのときの例 $ jq type renovate.json parse error: Expected another key-value pair at line 36, column 1

  • GitHub Actions で環境変数を設定する方法

    結論 1. リポジトリの Settings から Secrets を選ぶ gyazo.com 2. New repository secret ボタンを押す gyazo.com 3. 環境変数を設定する gyazo.com 4. YAML の中で環境変数を設定する CircleCI とは異なり、このままではまだ環境変数が使われることはありません。環境変数を用いたいコンテナの中で呼び出す必要があります。 呼び出し方は、例えば設定した環境変数名が HOGEHOGE であるとき、${{ secrets.HOGEHOGE }} で呼び出せます。 これをコンテナの中で例えば以下のように呼び出します。 j…

  • Rails で i18n が反映されないときに試すこと

    結論 Rails サーバを再起動する

  • Windows で範囲指定でスクショをとって半自動で保存する方法

    結論 Shift + Win + S で範囲指定キャプチャを行う 結果はクリップボードに保存されるだけ Gyazo の Web を開いて画像の追加画面に行く 「貼り付け」る 詳細 Windows デフォルトの範囲指定キャプチャだと、2021/12/10 現在ではどうやってもファイルに直接保存はできません。クリップボードを介することが必須なので、その介する作業を可能なだけ効率化することを考えたとき、Gyazo に行き着きました*1。 実際には以下の Stream Deck のような「左手デバイス」でボタン一発でキャプチャや Webサイト へのアクセスができるようにしています。 ※Amazonアフ…

  • WSL2 でターミナル表示される文字列を Windows のクリップボードにコピーする方法

    結論 clip.exe に渡します。 例 $ echo 'foobar' | clip.exe 応用 peco などと組み合わせると強力な威力を発揮します。

  • VS Code 起動時に "An application wants access to the keyring..." というポップアップが出るとき

    状況 こんな感じです。 gyazo.com 結論 ~/.local/share/keyrings/login.keyring ファイルを削除(移動)して、改めて VS Code を起動し直す。 そうすると以下のような新規にパスワードを設定する画面が表示され、以後、設定パスワードを持ちることができるようになります。 gyazo.com

  • Google Images Download は 2022/01/23 現在、本家版だとダウンロードできない

    結論 以下の Pull Request のとおりです。 github.com どうするか 上記の Pull Request のブランチ版をインストールすればよいです。 $ git clone https://github.com/Joeclinton1/google-images-download.git $ cd google-images-download && python setup.py install なお、Python のバージョンが v3.10.x では 2022/01/23 現在、インストールに失敗します。v3.9.x ならば成功しました。

  • Docker でコンテナを作成する際にボリュームを指定するとコンテナの内容を上書きしてしまうため、node_modules などが消える現象を防ぐ

    全体 Dockerfile で yarn install*1 をして node_modules 配下にライブラリがインストールされたイメージが作成されたとします。このイメージからコンテナを作成する場合、例えば /path/to:/app のようにボリュームを指定すると、せっかく作られた node_modules が跡形もなく消え去ってしまいます。 これを防ぎます。 方法 local にボリュームを作成し、そこにコンテナの node_modules を同期させるようにします。 docker-compose.yml で例を示します。 version: '3.8' services: web: (中…

  • Rails で Active Elastic Job のバージョンを上げると Sprockets::Rails::Helper::AssetNotPrecompiled エラーが出ることがある

    Active Elastic Job とは github.com バージョンアップすると Sprockets::Rails::Helper::AssetNotPrecompiled になることがある Dependabot でバージョンアップのプルリクエストが作られることがあります。その際にタグの単位ではなくコミットハッシュの単位でのプルリクエストになることがあります。 例えば、bump active_elastic_job from ec51c5d to 5528e... のような感じです。 これを安易にマージしてしまうと、Sprockets::Rails::Helper::AssetNotP…

  • VS Code の Dev Container では Dockerfile の ENTRYPOINT が実行されない(っぽい)ので "postCreateCommand" プロパティで代替する

    結論 devcontainer.json 内に、たとえば以下のように書きます。 { (中略) "postCreateCommand": ".devcontainer/devcontainer_entrypoint.sh" (中略) } 上記の devcontainer_entrypoint.sh 内に、Dockerfile の ENTRYPOINT の内容を移植すればよいかと思います。独自のコマンド等を入れたい場合には、ENTRYPOINT の内容を含み、かつそれに独自のコマンドを追記する形になるでしょう。 参考 github.com qiita.com 補足 これだと Dockerfile …

  • GitHub Actions で直接 ${{ toJSON(hoge) }} する際に「半角スペース + #記号」が含まれていると syntax error になる

    結論 どういうことかというと、以下のような場合です。 - name: First step id: my_variables run: | echo "::set-output name=hoge::FOO #12345" - name: Second step run: | echo "${{ toJSON(steps.my_variables) }}" このステップを含んだ Action を実行すると次のようなエラーになります。 ... line 6: syntax error near unexpected token `}' どうすればいいか 公式ドキュメントにもあるように、一度環境変…

  • zsh で補完入力をしようとした際に (eval):1: command not found: と表示されるときの対処方法

    結論 .zcompdump を削除する。zplug を用いているときにはそちらの zcompdump も削除します $ rm ~/.zcompdump $ rm ~/.zplug/zcompdump 削除した後に zsh を起ち上げ直します。

  • "act" コマンド(GitHub Actions ローカル実行コマンド)では "if: failure()" は実行できない

    補足 2022/01/08 現在の情報です。 結論 GitHub Actions のローカル実行コマンドである act では、if: failure() を用いたステップは実行されません。 所感 最初は書き方が間違っているのかと思ってムキになって $ act --rm を叩いていたのですが、ふと push したら何事もなかったかのように通りました。 ハマった 2時間 が虚しい……。

  • tarball の Node.js を、ワンライナーで arm と amd を判別してダウンロードする

    結論 arch コマンドの出力を sed で処理します。 $ ARCHITECTURE=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/x64/) && curl -LO https://nodejs.org/dist/v16.13.1/node-v16.13.1-linux-$ARCHITECTURE.tar.xz 補足 Dockerfile で役に立ちそうです Node のバージョンの部分*1も変数で指定するとハードコーディングが避けられます このやり方でファイル名を指定できる場合はいいのですが、命名規則によってはより複雑な sed が必要になりそ…

  • GitHub Actions をローカルで実行する act が実用的になった

    act とは これです。 github.com 使い方 1. インストールする 公式ドキュメントにはいろいろなインストール方法が書いてありますが、ここでは bash 経由でインストールします。 $ curl https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash 2. GitHub Actions の設定ファイルが存在するリポジトリへ移動する たとえば /path/to/my_app/.github/workflows/foobar.yml というようなファイルが存在するとき、$ cd /path/t…

  • Rails を Docker 環境で動かす際にローカル環境と共存させるとエラーが出る

    結論 表題のとおりです。 .bundle とか tmp/ とか vendor/ とかがローカル環境と混ざるとエラーが起き得ます*1。Docker 環境で使うディレクトリは Docker 環境だけで使いましょう。ローカル環境で使いたい場合には別途ディレクトリを作りましょう。 *1:gem のエラー。spring などがひっかかりやすい

  • zsh で Volta のオートコンプリートを有効にする方法

    結論 1. まず補完機能用のスクリプトを出力します (_volta) 。 $ volta completions zsh -o _volta note: does not exist, creating it success: installed completions to _volta 2. 出力したスクリプトを /usr/local/share/zsh/site-functions に移動します。 $ sudo mv _volta /usr/local/share/zsh/site-functions 3. シェルを再起動します*1. 4. 補完機能が効いていることを確かめます。 $ v…

  • WSL2 内から起動するブラウザを Windows 側のブラウザにする方法($ gh repo view --web 時などで)

    結論 環境変数 BROWSER に Windows のブラウザの場所を指定する。 具体例 例えば Chrome の場合は以下のように指定します*1。 BROWSER="/mnt/c/Program\ Files/Google/Chrome/Application/chrome.exe" 参考 github.com 補足 gh だけのスコープとしたいならば、$ gh config を用いてもよいです。 *1:インストール場所が異なっていたり他のブラウザを使いたい場合には、それぞれの場所を指定して下さい

  • Windows の VS Code の Live Server で、WSL2 から Windows 側のブラウザを開く方法

    結論 settings.json に以下のような行を書き加えます。Chrome 以外のブラウザを設定したい場合には適宜書き換えて下さい。 "liveServer.settings.AdvanceCustomBrowserCmdLine": "/mnt/c/Program Files/Google/Chrome/Application/chrome.exe", 設定項目の場所 このあたりにあります。settings.json に書かないと設定できない(=VS Code 内で完結しない設定)項目です。 gyazo.com

  • RSpec (Capybara) でアラートモーダルを操作する方法

    アラートモーダルとは こういうやつです*1。 gyazo.com 結論 「はい」の選択肢を選ぶとき page.accept_confirm 「いいえ」の選択肢を選ぶとき page.dismiss_confirm ドキュメント www.rubydoc.info *1:「アラートモーダル」はおそらく正しい呼び方ではないです

  • apt で mysql-server や mysql-client を install できない(見つからない)とき

    結論 default-mysql-server や default-mysql-client をインストールします。 $ sudo apt install default-mysql-server $ sudo apt install default-mysql-client

  • Ubuntu 20.04 で [SSL: CERTIFICATE_VERIFY_FAILED] エラーが出るとき

    結論の一つ ca-certificates をインストールしましょう。 $ sudo apt install -y ca-certificates

  • PT2を用いて(おそらく PT3 でも)TVTest で「BonDriverの初期化ができません」と出たとき

    結論(の一つ) PT2 の SDK もインストールする(ドライバではない)。 earthsoft.jp

  • pip install したときにバージョン依存でインストール失敗したときの対処法

    結論 依存関係にあるパッケージを個別に入れます。そのためには以下の手順を踏みます。 1. エラーメッセージを読む エラーメッセージを読み、どのパッケージが依存関係にあるかを調べます。 2. pip show PACKAGE_NAME を実行してバージョンを調べる (ここは不要な場合もあります) $ pip show PACKAGE_NAME を実行するとそのパッケージの最新バージョンの情報が得られます。パッケージ名を前述の依存パッケージのパッケージ名に指定して、コマンドを実行します。結果はたとえば次のとおりです。 $ pip show botocore Name: botocore Versi…

ブログリーダー」を活用して、たっきーさんをフォローしませんか?

ハンドル名
たっきーさん
ブログタイトル
約束の地
フォロー
約束の地

にほんブログ村 カテゴリー一覧

商用