ソフトウェア

Squid で「通常はBasic認証をかけるが特定の IPアドレス からは許可する」設定を書く方法

結論 他のソフトウェアの設定書式と同様に「優先的な設定を上に書く」とよい。 具体例 OK な書き方 foobar の ACL である時点で allow されるので、OK。 # 特定の ACL からは許可する http_access allow foobar # 認証 auth_param basic program /usr/lib/sq…

VS Code で RuboCop の formatOnSave を Gemfile に対しても有効にする方法

結論 settings.json に以下を書き加える。 "files.associations": { "**/Gemfile": "ruby" }, 背景 Gemfile は Ruby のファイルとはみなされていないのでフォーマッタが働かない。明示的に ruby だよ、と指定することで、Ruby の書式*1 に則ったフォーマッタ…

Kindle のライブラリに epub や PDF を送る方法

結論 Webページ経由がいい。 補足 メールだと認証が挟まったり時間がかかったり*1ので、Webからサクッとアップロードするのがいいです クラウドなので、ここからアップロードすれば全端末から見られます*2 *1:おそらく定期的にバッチで処理していると思われる…

ffmpeg を用いてメタデータを標準出力に表示させる方法

結論 最後の - がポイント。 $ ffmpeg -i FILENAME.mp4 -f ffmetadata - 表示冒頭にでる文言を出したくない場合 上記のコマンドだと、コマンド実行直後に例えば以下のような表示が出ます。 $ ffmpeg -i FILENAME.mp4 -f ffmetadata - ffmpeg version 5.1.1-s…

2020年代の Windows 用の CD リッピング ソフトは fre:ac で良さそう

fre:ac とは 公式サイト https://www.freac.org/ gyazo.com 窓の杜の記事 forest.watch.impress.co.jp 理由 Microsoft Store で提供されている メンテがされている UI がモダン モダンな環境でエンコード速度が早い 全部入りなので外部エンコーダを落とす必…

1Password CLI でワンライナーでサインインする方法

結論 $ eval $(echo my_master_password | op signin --account my) 参考

1Password CLI を peco と組み合わせて対話的に情報を取得する

結論 シェルスクリプトです。~/.zshrc などに書くとよいと思います。 function opget () { ITEM_ID=$(op item list | peco | cut -d " " -f 1) op item get $ITEM_ID op item get --format json $ITEM_ID } 実行結果 1. item 一覧から希望の item を peco で…

cron(など)で direnv の .envrc を読み込ませて実行する方法

結論 $ direnv exec 実行ディレクトリ名 実行コマンド という書式を用いて実行する。 具体例 /path/to/.envrc があるとします。その .envrc に以下のように記述されていたとします。 export FOO=BAR このとき、cron(など)で以下のように実行すると .envrc …

n8n でテキスト情報を書き出すときにはバイナリ変換をしてからそのバイナリを書き出す形にする

結論 JavaScript (JSON) の世界で情報の受け渡しを行うため、データフォーマットとしては JSON or バイナリ*1 の世界だということです。 gyazo.com gyazo.com gyazo.com 補足 n8n のデータの流通は原則として JavaScript の世界でのことなのでこういうものだ…

n8n の "Expression" の JavaScript にて現在日時を任意のフォーマットで返す書き方

結論 {{$now.toFormat('yyyyMMdd_HHmmss')}} gyazo.com 補足 ポイントは toFormat() です 他にも toLocaleString() などがあります 内部的に Luxon を使っているのでそのドキュメントを見ると手っ取り早いです moment.github.io

Rundeck から n8n に乗り換えた

Rundeck とは www.rundeck.com n8n とは n8n.io 乗り換えた理由(Rundeck のつらみ) 重い メモリ 2GB の VPS で Rundeck 専用につかっても重い ジョブの一括削除すると必ずタイムアウトするか 30分 ぐらい待ってエラーとかでどうにもならなくなった 起動が…

n8n でデータベースに PostgreSQL を用いる際には execution_entity テーブルの startedAt と stoppedAt の型を timestamptz にしないと UTC で記録される

結論 タイトルのまんまなんですが、以下、例示の画像です。 デフォルトのマイグレーションだと timestamp になります。それを timestamptz に変換してから記録したのが最新の一件になります。 gyazo.com gyazo.com 理由や原因 Open されている Issue があり…

1Password 8 の Android 版にて多くのサイトで「ユーザー名」と「パスワード」の入力時に「パスワード」しか入力されない現象

結論 フォーラムで話題が継続中なので、たぶんしょうがない。 1password.community しかしながら ずっと現象が出ているし、すさまじく不便なのは間違いないので、がんばって 1Password 7 に戻すのがよいっぽい。

ImageMigick の最新版 (v7以上) をインストールする方法

結論 magick コマンドがバイナリ単体で提供されているので、OS を選んで落とせばいいです。 convert や identify などのコマンドは magick コマンドひとつでまかなえるようになります*1。 imagemagick.org 注意点 バイナリ実行時に下記のように libfuse.so.2…

Ubuntu で trans コマンド(引数を翻訳してくれるコマンド)を入れる方法

結論 $ sudo apt install -y translate-shell trans コマンドの用例ヘルプ $ tldr trans Translate Shell is a command-line translator. More information: <https://github.com/soimort/translate-shell>. Translate a word (language is detected automatically): trans "word_or_sentence_to_translat</https://github.com/soimort/translate-shell>…

AppSheet database にデータを流し込むのは(今のところ)タブ区切りのテキスト (TSV) をペーストする

注意点 2022年10月28日(金)現在の話です。 AppSheet database とは こちらです。 www.publickey1.jp データを流し込むにはどうしたらいいか メニューにそれらしき項目はないので、現状ではテキストの貼り付けしか方法がないようです*1。 貼り付けるテキス…

リダイレクト先のアドレスを CLI で取得する方法

結論 $ curl -D - TARGET_URL というコマンドを使う。 実例 1. Edge の .deb をダウンロードしたいとします。 2. すると、ライセンス確認画面がまず現れます。 3. そして、以下の画像の URL が「同意してダウンロード」のリンク先のURLとなっています。 4. c…

ニコニコ生放送(ニコ生)の URL である live.nicovideo.jp からダウンロードする方法

注意 2022年3月13日(日)時点での情報です。 結論 Streamlink を用いる。 streamlink.github.io 補足 会員限定の有料放送もダウンロードできます タイムシフトもダウンロードできます ただし、認証に Cookie が書かれているファイルを使う必要があります Co…

ffmpeg を用いて動画のタイトル(メタデータ)を設定する方法

結論 $ ffmpeg -i input_video.mp4 -metadata title="ここに動画のタイトルが入る" -c copy output_video.mp4 確認方法 確認するためには ffprobe コマンドを用います。 $ ffprobe output_video.mp4 (省略) Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'outp…

ニコニコ動画の会員限定動画をダウンロードする方法

結論 yt-dlp を使う 認証には Cookie を使う 参考 github.com 補足 会員限定の生放送動画(URL が https://live.nicovideo.jp/ で始まる動画)は Streamlink を使う必要があります

.xlsx をとにかく楽に軽くプレビューする方法

結論 Dropbox の Webアプリで見る。 補足 公式ドキュメントにて推奨されています。 docs.microsoft.com gyazo.com

Vimeo のファイルを Vimeo Private Video Downloader を用いてダウンロードする方法

結論 1. リポジトリをクローンします $ git clone https://github.com/Tusko/vimeo-private-downloader.git 2. リポジトリ内の videojson.js ファイルに「ダウンロード時につけるファイル名」と「master.json の URL」を書き連ねて保存します 以下のような形…

Vimeo のビデオファイル (foobar-1.m4s, foobar-2.m4s, ...) を JavaScript を用いてダウンロードする方法

結論 gist にあるこのコード を保存し、実行します。 このコードを元にした Vimeo Private Video Downloader というプロダクトもありますが、これについてはまた別途どこかで書く予定です。 詳細 1. 対象ページに行って DevTools を開きます 開きましょう。 …

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

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

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

1. 使うプラグインは Http Notification Plugin Rundeck Discord Notification Plugin というものがありますが、これはうまく動きませんでした*1 Http Notification Plugin は Rundeck 内のプラグインシステムからインストールしてはだめです GitHub から cl…

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

結論 防げない*1. 理由 「サーバープロフィール」を変更することで、サーバごとにニックネームを変更することは可能です。しかし、アバターアイコンをクリックすると「ユーザープロフィール」は丸見えになります。 「ユーザープロフィール」は一つのアカウン…

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.…

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

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

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

結論 依存関係にあるパッケージを個別に入れます。そのためには以下の手順を踏みます。 1. エラーメッセージを読む エラーメッセージを読み、どのパッケージが依存関係にあるかを調べます。 2. pip show PACKAGE_NAME を実行してバージョンを調べる (ここは…

rclone で Minio に copy する際に Failed to read metadata: Forbidden: Forbidden status code: 403 などというエラーが出る場合

結論 今はしょうがない。 アップロード自体は成功している。ただ、たとえばエラーメッセージで分岐するロジックを経ているようなときには注意が必要。 実例 $ rclone --update --include '*.jpg' copy . minio:foobar 2021/10/17 21:49:04 NOTICE: foobar_01…

Powered by はてなブログ