rpgamer.com
ゲーム(幻想水滸伝)、デジタル家電、PC、Linux、VPSなど、「何でもあり」なブログです。
Twitterやプログラミングなどの話題も取り扱っています。
結論 1. アカウントメニューの「アカウントの管理」から「構成」→「リスト」とたどり「リスト」を作る このリストを作っただけでは何も起こらない 作成後に編集はできず、削除して新規作成をする必要がある gyazo.com gyazo.com 2. アカウントメニューの「一括リダイレクト」を選択し「一括リダイレクトルールの作成」をする 一つの「ルール」には一つの「リスト」を割り当てることができる いきなり反映するには「保存してデプロイする」で、「下書きを保存する」だとリリースされないでデータだけ保存される 「一括リダイレクト」のトップページで「有効」を ON にするとリリースされる gyazo.c…
pgloader で MySQL から PostgreSQL へデータを移行するためのシェルスクリプト(MySQL 8 対応)
pgloader とは MySQL のデータを PostgreSQL にデータを移行するためのソフトウエアです*1。Heroku でも利用を推奨しています 。 github.com pgloader.io pgloader.readthedocs.io pgloader の問題点 MySQL 8 以降から移行する場合には認証の関係でそのままでは動かないことがあります。 github.com 問題点を解決する 上記の問題点を解決するために、以下の手順を採ります。 *1:必ずしもそれ専用ではないが、その用途に適している
1Password 8 の Android 版にて多くのサイトで「ユーザー名」と「パスワード」の入力時に「パスワード」しか入力されない現象
結論 フォーラムで話題が継続中なので、たぶんしょうがない。 1password.community しかしながら ずっと現象が出ているし、すさまじく不便なのは間違いないので、がんばって 1Password 7 に戻すのがよいっぽい。
フロントエンドのテスト用に Webサーバ を起動するときには PM2 を使うのもあり
PM2 とは PM2 is a daemon process manager Process Manager pm2.keymetrics.io 理由 メジャーな OSS であり、信頼でき、メンテも続くだろう Webサーバ の起動、停止、削除というだけに限らず、汎用的なので、応用範囲が広い 同期的な処理にできるので、サーバが起動しない前にテストが走って落ちてしまうということがない Cypress 公式では start-server-and-test が紹介されていたり、Vue Test Utils でもなにか紹介されていた*1と思うが、これらは非同期でサーバを起動する*2ので、サーバ起動よりも…
ImageMigick の最新版 (v7以上) をインストールする方法
結論 magick コマンドがバイナリ単体で提供されているので、OS を選んで落とせばいいです。 convert や identify などのコマンドは magick コマンドひとつでまかなえるようになります*1。 imagemagick.org 注意点 バイナリ実行時に下記のように libfuse.so.2 が足りないと言われることがあります。 $ ./magick -version dlopen(): error loading libfuse.so.2 Ubuntu 22.04 の場合は libfuse2 を apt で入れてやるといいです。他の OS の場合も同種のライブラリをインスト…
URLパラメータを用いて Mastodon に投稿内容を渡して投稿フォームを表示する方法
結論 share エンドポイントに text というクエリを渡せばいい。 具体例 https://インスタンスのドメイン/share?text=hello 注意点 日本語や記号(スペース)などはエンコードを忘れずに。 エンコードURLの例 https://mstdn.jp/share?text=%E3%83%97%E3%83%AC%E3%82%B9%E3%83%862%20%E7%99%BA%E5%A3%B2%E6%97%A5 gyazo.com 参考 Twitter では https://twitter.com/intent/tweet?text=Hello%20world のようになります…
TVTest で画像キャプチャ保存しようとすると「画像の保存でエラーが発生しました」というエラーが発生するとき
結論の一つ TVTest_Image.dll が TVTest のビット数 (x86 or x64) と合致していない。TVTest のファイル群を最新版にするといい。
「Suikoden: Une étoile au firmament du J-RPG」が紀伊國屋書店で予約受付中
Suikoden: Une étoile au firmament du J-RPG 2023/03/23 に「Suikoden: Une étoile au firmament du J-RPG」という書籍が発売予定です(仏語です)。 www.amazon.fr 書籍概要の直訳(あえて手を加えていません) コナミの黄金時代に開発された『幻想水滸伝』は、J-RPGの世界では異色の存在です。村山嘉隆は、中国の有名な伝説「At the Water's Edge」(腐敗した帝国に、さまざまな技能を持つ108人が反乱を起こす物語)からインスピレーションを得て、この作品を創作したのです。同様に『幻想水滸…
TVTest + BonDriver で「BonDriver の初期化ができません」と出たときの一つのチェック項目
結論 BonDriver の DLL が TVTest のビット数(x32 or x64)と合致しているかどうか。合致していないとこのエラーがで得る。
結論 mysqldump コマンドで具体的にソケットの場所を以下のように指定します。ソケットファイルは MySQL のデータディレクトリに存在しています*1。 デフォルトではホストのマシンにインストールされている MySQL のソケットファイルを見に行こうとするのでエラーが出ます。したがって、明示的に「Docker で起動している MySQL の」ソケットファイルを指定します。 $ mysqldump -h localhost -p -u foo my_database > my_database.dump -S /path/to/mysql_data_dir/mysql.sock 補足 上記…
TweetDeck の "beta" バージョン と "legacy" バージョン を切り替える方法
結論 Cookies の tweetdeck_version を書き換えて、リロードする。 beta バージョンにしたい場合には beta に書き換える legaccy バージョンにしたい場合には legacy に書き換える 補足 2023年2月9日(木)15:29:10 現在、デフォルトでは beta バージョンになる*1 2023年2月9日(木)15:29:10 現在、強制的に tweetdeck_version が上書きされるということは起きていない BetterTweetDeck について(余談) 2023年2月9日(木)15:29:10 現在、BetterTweetDeck について…
結論 以下のようにしたら自分の環境ではインストールに成功しました。 1. グローバルに利用する Ruby を v2.7.3 に設定する v2.7.3 を持っていない場合は $ rbenv install 2.7.3 で入れておきます。 $ rbenv global 2.7.3 2. v3.2.1 をインストールする これでインストールすると成功しました。 $ rbenv install 3.2.1 To follow progress, use 'tail -f /tmp/ruby-build.20230209145257.25800.log' or pass --verbose Downlo…
VSCode で SSH した先の GUI アプリを VSCode のターミナルから実行して手元で表示させる方法(拡張機能なし)
動機 SSH 先で開発しているときにも Cypress や、ブラウザを表示させた上での RSpec (Capybara) を実行したい Webページを経由する認証にて、SSH 先の Webブラウザ で認証したい*1 結論 まず制限事項があります。それは「別途、当該 SSH 先に接続し続けておく必要がある」ということです*2。 github.com その上で、以下の手順を踏みます。 1. SSH 先に接続するための config 設定に以下の二行を加える その他、ローカルマシンや接続先にて一般的な X11 の設定は行っておきます。 ForwardX11 yes ForwardX11Trusted…
ssh-agent に鍵を登録しても再起動(シェル再起動)時に消えてしまっている(使えない)ときの原因の一つ
結論 ssh-agent が以下のように複数起動していないでしょうか。 $ ps aux grep ssh-agent foobar 229998 0.0 0.0 7972 1080 ? Ss 08:35 0:00 ssh-agent foobar 230400 0.0 0.0 7972 3504 ? Ss 08:36 0:00 ssh-agent foobar 232466 0.0 0.0 7972 1080 ? Ss 08:37 0:00 ssh-agent foobar 233438 0.0 0.0 7972 4440 ? Ss 08:39 0:00 ssh-agent foobar…
注意 2022年10月26日(水)現在の情報です。 結論 料金表 (PDF) https://www.conoha.jp/vps/pdf/conoha_spec_ja.pdf 管理コンソールのヘルプ gyazo.com
「ブログリーダー」を活用して、たっきーさんをフォローしませんか?
rpgamer.com
結論 excelapi.org 具体例 たとえば以下の URL にアクセスするとテキストで返ってきます(漢字部分は「織田信長」)。 - https://api.excelapi.org/language/kanji2kana?text=%E7%B9%94%E7%94%B0%E4%BF%A1%E9%95%B7 補足 ExcelAPI という名前ですが、単純な API として用いても OK とのことです。 excelapi.org Yahoo! に同様の API がありますが、それをラップしたもののようです*1。 注意点 1分間に300件までのレートリミットがあります。 *1:Yahoo! のもの…
結論 Mac が「大文字小文字を区別しない」からではないか。 Mac が設定上で「区別しない」場合には、 Linux では該当ファイルが見つからないことになるから。 具体例 ls コマンドを実行した場合の具体例。 Linux gyazo.com macOS gyazo.com 参考 dev.classmethod.jp 補足 めちゃくちゃハマったが、この知見はきっと活きる。
結論 VPN の接続。自分の場合は以下を VPNトンネル から除外するとうまくいった。 tailscale.exe tailscaled.exe tailscale-ipn.exe
結論 オプション -nosalt を付与する。 具体例 1. -nosalt を付与しない場合 一見同じ結果に見えますが、全て異なっています。 $ echo "hogehoge" openssl enc -e -aes-256-cbc -base64 -pbkdf2 -pass pass:foobar U2FsdGVkX19a4H6vBEvUMPTyd+Q7/27pFzaPQctnCfs= $ echo "hogehoge" openssl enc -e -aes-256-cbc -base64 -pbkdf2 -pass pass:foobar U2FsdGVkX185H8E7L8W…
前提 find_or_initialize_by にこだわるのは本質的ではなく、find_by や where などでも同じです。本質はタイムゾーンの違いです。 結論 具体例を見たほうが早いと思いますので、載せます。 NG な例 user = User.find_or_initialize_by( name: 'hoge', submitted_at: '2023/04/07 17:48:31' ) これを繰り返し実行した場合に、常に user.new_record? が true を返してしまいます。 OK な例 期待通りの動作をさせるためには、テキストでそのまま入れるのではなく Time.…
現象 SSH でログイン時に、 X11 forwarding request failed on channel 0 というエラーが出ます。 結論 現時点では機能しない*1。 参考 github.com *1:将来的には動くかも
結論 シェルの設定ファイルに例えば以下のように組み込む。 # Starting Tailscale daemon automatically if not running... RUNNING=`ps aux grep tailscaled grep -v grep` if [ -z "$RUNNING" ]; then sudo tailscaled > /dev/null 2>&1 & disown fi 補足 $ sudo tailscaled をパスワード確認無しで実行するために /etc/sudoers に追記をする必要がある*1 tailscaled の場所は which …
Activerecord-Import とは github.com 結論(どうするか) インポート時に batch_size オプションを指定してやる。 具体例 User.import!(users, batch_size: 10000) PostgreSQL が落ちたときのエラーメッセージ PQconsumeInput() SSL SYSCALL error: EOF detected (ActiveRecord::ConnectionFailed) 参考 https://webcache.googleusercontent.com/search?q=cache:jdX4uXcvCb4J:h…
結論 ここです。設置場所を考えると数メートルの USBケーブル を用いるのが無難です。 長い USBケーブル は一本持っておくといろいろ便利で、たとえば SwitchBot のカーテンレールの充電にも役立ちます。
結論 require 'rake' をする。 公式ドキュメント docs.ruby-lang.org
結論 Graphviz (CLI) はインストール済みであるとします。 $ dot -Tpdf /path/to/hoge.dot -o /path/to/fuga.pdf 具体例 Rails ERD では dot で出力が可能なところ、その dot を PDF に変換するために有用です。 「Rails ERD で最初から PDF に出力すると Git で差分が分からない(毎回差分が出る)ので dot 運用したい」というようなケースで有効です*1。 公式ドキュメント *1:dot の差分が分かりやすいかと言われると決してそうではないのですが
結論 標題のとおりです。 具体的方法 参考ページ deb版の入れ方については以下のページが参考になります。 chatnoirlibre.com 99mozillateamppa の適用のさせ方 99mozillateamppa の適用のさせ方は、どこかに 99mozillateamppa という名前と内容のファイルを用意しておいて、ステップの中で、 sudo cp 99mozillateamppa /etc/apt/preferences.d を実行してあげるといいです。 ステップ全体での 99mozillateamppa の適用のさせ方 ステップ全体としては以下のような流れで実行していきます…
結論 標題のとおりです*1。 具体例 REPO/sub 配下が submodule だとして、たとえば以下のように gh secret set したとします。 $ cd sub $ gh secret set HOGE< fuga.txt ✓ Set Actions secret HOGE for username/sub 以上のように submodule の方のリポジトリに登録されてしまいます。 正しく登録するには以下のようにします。cd してはいけません。 $ gh secret set HOGE< sub/fuga.txt ✓ Set Actions secret HOGE for us…
28:17ぐらいから32:44ぐらいまで www.youtube.com
結論 標題通りです。 マイグレーションのコードをテストと同時に書いていた際にハマりました。直接コマンドで db:migrate(:reset) すると schema.rb を見に行き、schema.rb の更新作業が走っていない場合には例えば UNIQUE制約 などが変更されません。 DBが空っぽの状態から、一定のデータを CSVインポート によって投入したいという状況のとき、DB を空っぽにする作業を行わないと既存レコードが存在してしまってエラーになるし、かといって bin/rails db:migrate:reset みたいなのを実行する行を挿入すると冒頭の現象にハマります。
gyazo.com 現象 github.com 結論(これで解決した) プロジェクトに Prettier を入れて Prettier Path には ./node_modules/prettier を指定する。 それまでは nodenv を用いた上でグローバルに入れていた*1が、プロジェクト配下に入れることで解決した。 *1:良くない
結論 GitHub 側で一度 Cloudflare のアプリを削除してから再インストールする。
結論 mecab-ipadic-2.7.0-20070801 を --with-charset=utf8 のオプション付きでビルドする。 $ ./configure --with-charset=utf8 Natto で確認する 期待通りの挙動になっているかを Natto で確認します。 > require 'natto' > nm = Natto::MeCab.new => #<Natto::MeCab:0x00007f2546c63280 @model=#<FFI::Pointer address=0x0000561020b78620>, @tagger=#<FFI::Pointer ad…
自分が意識していることは次のとおりです。 まずは(半)手動で回せるようにする 手動で回すのが面倒になってきたら自動化を考え始める 原則として必要になるまでは自動化は考えない方向で いきなり自動化すると見えなくなってくるものもある 自動化の際はそのコストを考えて、手で回す方が総じてコストが安いならば、単純作業を我慢して手で回す たとえば 1回 につき 30分 かかる試行が 10回 程度で完結する見込みならば、そのために数時間かけて自動化するのは総コスト高になる ただし、自動化の過程で気づきや経験が得られるというメリットがある 自動化が再利用できるタイプのものならば意義はある 小さく部分に分けて回…
コナミオフィシャルショップ コナミのオフィシャルショップで販売されます。現時点ではプレオーダーで、発売予定日は今年の第三四半期です。 Now available in Official Konami Shop, the original video game soundtrack classic RPG: SUIKODEN! Fill your surroundings with the beautiful music of the Scarlet Moon Empire featuring original artwork from the Konami vault ⚔️Get yours!…
結論 Node パッケージをインストール後に、2つの Windows 実行ファイルに実行権限をつける。 $ chmod +x node_modules/node-notifier/vendor/snoreToast/snoretoast-x64.exe $ chmod +x node_modules/node-notifier/vendor/snoreToast/snoretoast-x86.exe 補足 「なにかのたびに実行権限が外れていることを気にする必要がある*1」ので、これを除外して冪等にするには、たとえば package.json に以下のように追記する*2。 "postinstal…
結論 「docker build` を実行する際の書き方」と「Dockerfile の書き方」の 2つ の書き方を適用する必要がある。 docker build を実行する際の書き方 RAILS_MASTER_KEY という環境変数に渡したいデータが格納済みとする。 $ docker build --secret id=rails_master_key,env=RAILS_MASTER_KEY --tag my_app . Dockerfile の書き方 (これより前は省略) RUN --mount=type=secret,id=rails_master_key RAILS_MASTER_KE…
上記の本*1を実際に購入する(した)方法です。一般的な ECサイト での購入手順と同一ですが、フランス語を Webブラウザ で随時翻訳しておく、などの工夫が必要です*2。 1. Third Editions のサイト(仏語)に行く 行きます。 ※サブディレクトリで /en を指定すると英語版のサイトに行けますが、そちらでは現時点*3では 幻水II本 を扱っていません 2. 幻水II本 の商品ページに行く 行きます。ここらへんから翻訳がないとつらくなってきます。 *1:以降は「幻水II本」と呼びます *2:頑張れば、あるいはフランス語が読めるならば翻訳は不要 *3:2023/04/13
結論 JavaScript (JSON) の世界で情報の受け渡しを行うため、データフォーマットとしては JSON or バイナリ*1 の世界だということです。 gyazo.com gyazo.com gyazo.com 補足 n8n のデータの流通は原則として JavaScript の世界でのことなのでこういうものだと思います Destination Key にデフォルトで指定される data という key は n8n ではデフォルトの key なので深い理由がなければいじらないほうがいいです *1:テキストも含む
結論 表題通り。 ハマった 落ちるときのエラーは次のような感じ。 rails aborted! ActiveRecord::NoDatabaseError: We could not find your database: eiyuden_crm_test. Which can be found in the database configuration file located at config/database.yml. To resolve this issue: - Did you create the database for this app, or delete it? You…
La Saga Suikoden: Une étoile au firmament du J-RPG 先日も書いた 幻水II 本の「La Saga Suikoden: Une étoile au firmament du J-RPG」ですが、版元の Third Editions からは初回版として特別仕様の表紙カバーバージョンを購入することができます。 初回版カバーの裏面には通常バージョンの表紙が印刷されている(リバーシブル)ので、初回版を購入しておけば通常版の表紙も再現できます。 ただ難点なのは、現時点ではフランス語サイトでしか通販申込みができないという点です(日本への発送は OK)。 なお…
結論 パーソナルアクセストークン (PAT) を取得し、actions/checkout を使う際に その PAT を token という key で指定する。 具体的な書き方 以下のように書きます。secrets の登録方法は省略します*1。 - name: $ git clone する uses: actions/checkout@v3 with: token: ${{ secrets.YOUR_TOKEN }} ハマったところ PAT を使えば良いことはだいたい見当がつくのですが、actions/checkout で使うとはわからなかった。README に記載はあるのですが、すぐにこれに…
一昨日のこと*1になりますが、Twitch にて 幻水II のクイズイベントが有志により開催されました。 Quiz Kit という Twitch と連携するサービスを用いて参加者がクイズに答えていくイベントです。以前に 幻水I をテーマに開催されたところ、今回は 幻水II がテーマになっています。 英語によるイベントですが、ビデオが残っていて見返せますので、雰囲気等が味わえます。興味がある方はどうぞ。 www.twitch.tv *1:2023/04/02
結論 以下のような Step を書きます。 - name: inputs と secrets の値を表示する run: echo '${{ toJson(inputs) }}' echo '${{ toJson(secrets) }}' 注意点 toJson() しないと Object と表示されます つまり、一般的に Object と表示された場合には toJson() してやれば中身が表示できます echo の引数は シングルクォート してあげないとエラーになります*1 こちら や こちら を参照のこと *1:これにハマった
La Saga Suikoden: Une étoile au firmament du J-RPG 先日記事に書いた幻水本「La Saga Suikoden: Une étoile au firmament du J-RPG」が、日本の Amazon にて Kindle版 で購入できるようになっています。 ただし、フランス語版ですので、その点は十分にご留意ください。 以下のリンクから購入できます(アフィリエイトリンクです)。 La Saga Suikoden: Une étoile au firmament du J-RPG (French Edition)作者:Remoiville, Jo…
結論 {{$now.toFormat('yyyyMMdd_HHmmss')}} gyazo.com 補足 ポイントは toFormat() です 他にも toLocaleString() などがあります 内部的に Luxon を使っているのでそのドキュメントを見ると手っ取り早いです moment.github.io
前提 macOS 13.2.1(22D68) uname $ uname -a Darwin FOOBAR.local 22.3.0 Darwin Kernel Version 22.3.0: Mon Jan 30 20:38:43 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T8112 arm64 Xcode $ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables grep version version: 14.2.0.0.1.1668646533 rbenv rbenv のインストール…
MinIO の場合とほとんど同じです。 obel.hatenablog.jp 事前準備 「R2 API トークンの管理」から、トークン(アクセスキーとシークレットアクセスキー)を予め作成しておきます 「エンドポイント」は https://アカウントID.r2.cloudflarestorage.com/ になるので、これも予め控えておきます gyazo.com 結論 必要な gem aws-sdk nokogiri nokogiri でなくとも ox や oga や libxml や rexml でもいいです nokogiri を選んだ理由は、Rails の場合は明示的に入れなくてよく、馴染み…
少しだけ注意する点がありますが、それ以外はいつもどおりです。 結論 必要な gem aws-sdk nokogiri nokogiri でなくとも ox や oga や libxml や rexml でもいいです nokogiri を選んだ理由は、Rails の場合は明示的に入れなくてよく、馴染み深いから、というだけで深い理由はありません コード require 'aws-sdk' s3_client = Aws::S3::Client.new( region: 'ap-northeast-1', access_key_id: 'YOUR_ACCESS_KEY_ID', secret_acce…
Rundeck とは www.rundeck.com n8n とは n8n.io 乗り換えた理由(Rundeck のつらみ) 重い メモリ 2GB の VPS で Rundeck 専用につかっても重い ジョブの一括削除すると必ずタイムアウトするか 30分 ぐらい待ってエラーとかでどうにもならなくなった 起動が遅い メモリ使用量が常時上限張り付き 乗り換えにあたって要した条件 軽いこと コードベースでジョブが扱えること IFTTT は全部ポチポチ GUI なのでジョブが増えると手に負えなくなる 柔軟性が高いこと n8n は多くの Integration に対応している n8n は多くの node…
結論 タイトルのまんまなんですが、以下、例示の画像です。 デフォルトのマイグレーションだと timestamp になります。それを timestamptz に変換してから記録したのが最新の一件になります。 gyazo.com gyazo.com 理由や原因 Open されている Issue があります*1。timestamptz への型変換はこの Issue を見て気づきました。 github.com 関連 Issue & Pull Request github.com github.com *1:この記事が公開されている頃には対応されているかも
結論 gem として google-analytics-admin-v1alpha を用います。各種データを取得するための Data API とは異なるので注意です。 公式ドキュメント cloud.google.com 具体的なコード例 具体的なコード例は次のとおりです。Data API のとき とほぼ同じです。 (1) client を定義し、 (2) リクエスト内容のオブジェクトを定義し、 (3) その内容を client のメソッドを用いて投げる、 とレスポンスが返ってくる、という流れです。 認証は Data API のとき と同じく、サービスアカウントの 認証用 JSON ファイル の…
注意 2022年12月13日(火)現在の内容です。 結論 たとえば ./dist 配下に静的な HTML などが存在し、./dist/funcions が存在するとき。 デプロイされない場合 以下のような wrangler の実行方法だと functions がデプロイされません。 $ wrangler pages publish ./dist Uploading... (8/8) ✨ Success! Uploaded 0 files (8 already uploaded) (0.41 sec) ✨ Deployment complete! Take a peek over at http…
前提 2023年3月17日(金)現在の話です。 結論 どの gem を使うか? google/analytics/data/v1beta です。 API の認証はどうするか? GCP のサービスアカウントを作成し、認証用の JSON ファイルである credentials.json を準備しておいてください*1。下記のような形式のものです。 { "type": "service_account", "project_id": "foobar-project", "private_key_id": "12345abcdef", "private_key": "-----BEGIN PRIVATE…