scoop cleanup

Windowsでのパッケージ管理には scoopを使っているが, scoop cleanup を知らなかった. > scoop cleanup '*' Removing 7zip: 19.00 21.06 Removing bat: 0.18.2 0.18.3 0.19.0 Removing cmake: 3.21.3 3.21.4 3.22.0 3.22.1 3.22.2 3.22.3 Removing deno: 1.1…

HTTP::Tinyで httpsアクセスで 599が返るようになった問題の修正

某モジュールのメンテンスでテストに必要なモジュールを入れようとしたらそもそもエラーが出るということで, エラー原因を調べてみたところ下記のようなエラーが出ていた。HTTP::Tinyを使った httpsへの GETが軒並み失敗していることが原因であった。 $VAR1 …

apt-key deprecation warningの解消

askubuntu.com gihyo.jp W: https://packagecloud.io/slacktechnologies/slack/debian/dists/jessie/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details. 最近上記の…

良いコード/悪いコードで学ぶ設計入門

gihyo.jp 良いコードを書くのは難しいなと思った。自分が今どういうコード書いているのかとか激しく依存するからここに載っていることをすべて実践すればうまくいくのかと言われるとなんとも言えない。経験がある人で良いものも悪いものも知った上で今の自分…

Ubuntu 22.04で JetBrains Toolboxが動かなくなった問題の対応

https://youtrack.jetbrains.com/issue/TBX-7534 ふと気づいたら, JetBrains Toolboxが動かなくなっていた。libfuse2を dlopenしているようだが, Ubuntu 22.04で libfuseが 3系がデフォルトになってしまったので動かなくなっていた。 以下のようなエラーが出…

/var/log/journal 以下を掃除する

unix.stackexchange.com 10年超動かしている Ubuntuサーバ(systemdが動いていたのは10年もないかもしれないが)のディスク容量が残り少なくなってきて掃除できないかなといろいろなディレクトリのサイズを見ていると /var/log/journal 以下にログが 10GB近く…

Ubuntu 22.04にアップデートした

トラブルは特になく自前でコンパイルしていたソフトウェアの emacsと h2oを再コンパイルしたぐらい. h2oはバンドルしている mrubyが古く Ruby 3では mruby handlerを有効にしてビルドできないため, Ruby 2が必要になった. github.com Ubuntu 22.04の Rubyは …

List::UtilsBy::XS 0.06をリリースした

metacpan.org github.com Debugビルドした Perlだと extract_by で assertionに引っかかることがあった問題の修正. 戻り値の個数が引数の数より多い場合 EXTEND を使って Stackを確保しないといけないという理解. 他のメソッドはなんで引っ掛からないんだっ…

世界一やさしい海外移住の教科書

世界一やさしい海外移住の教科書: ビザなし、スキルなし、英語力ゼロから海外移住を目指す方法作者:ZiziAmazon 最近英会話を始めたりしたりして海外移住、海外で働くというのが幾分気になっているため読んでみた。1ページ当たりの情報量が少ないのですぐに読…

F#を4ヶ月ほど学んでみて

F#

今年に入って新しい言語を学ぶかということで F#の勉強を初めて 4ヶ月ほど経ったので現状のまとめ。 やったことは主に小さいプログラムを書いたり, LeetCodeの問題を 100問ほど解いたという程度(LeetCodeは現状 F#未対応なので対応してほしい)。 結論として…

F#で外部コマンドを起動し, その標準出力結果を扱う

コード open System.IO open System.Diagnostics let cmd = new Process() cmd.StartInfo.FileName <- "ls" cmd.StartInfo.Arguments <- "-l /usr/bin" cmd.StartInfo.UseShellExecute <- false cmd.StartInfo.RedirectStandardOutput <- true if cmd.Start(…

F#で Priority Queueを使う

概要 競技プログラミング的なものを解いているときに, 優先度付きキューを使いたくなることがあるのでそのメモ コード .NETの標準ライブラリには存在しないので F#向けのコレクションライブラリを nugetから取ってくる. fsxで書いている場合は以下のような行…

quadmath Perlでハマったところ備忘録

細々とメンテナンスしている Perlモジュールで quadmathが有効な Perlで失敗しているケースがいくつか見られたので対応していた. その対応に関する記録. usequadmathとは https://perldoc.perl.org/Config#usequadmath 数値の保持に可能であれば 4倍精度浮動…

unzip file which contains symbolic link by zip-rs

zip-rs does not support symbolic link yet(https://github.com/zip-rs/zip/issues/77). However it is possible by using public APIs as below. use std::fs; use std::io; fn main() { std::process::exit(real_main()); } fn real_main() -> i32 { let …

Advent Of Code 2020を終えて

memo.sugyan.com yosuke-furukawa.hatenablog.com 今年始めて参加した Advent of Code 2020年版を終えました 結果は上記のような感じ. 各問題 100位以内に解ければポイントがもらえるのですが, 100位なんて程遠すぎて結果は 0点. これは早くできたなと感じて…

この半年でやったこと, 継続していること

studio3104.hatenablog.com を見て, leetcodeがキリがいいところだったので, 私も真似して書いてみる. そもそも私は 40年近く生きてきて何かを継続してできたということがほとんどない. あったとしても若かりし頃のゲーセン通いぐらいで勉強に関してはおそら…

vscodevimで Ctrl- keyは VScodeのものを使うようにする

IdeaVimとか VSVim(Visual Studio)は IDEのキーを優先するのをデフォルトにできるのだけど, vscodevimはデフォルトだとめちゃ Vimで VScode本来のショートカットキーがほとんど使えない. macOSだと Command keyベースで Ctrlキーのものと衝突しないというの…

C#で簡素な Scheme処理系を書いてみた

github.com peter.michaux.ca を C#でやった. C#で書いたのは最近 Unityにふれることがあるのでその影響. C#らしい部分はほとんどない. むしろ書きづらかったさえある. あとこの前に Common Lisp風の処理系を書いていたのでシンボルと値の扱いに 若干混乱し…

Goで簡素な Lisp処理系を書いた

github.com 最近 Goに触れていなかったので復習も兼ねて. 内容としては下記の本に載っている Common Lisp風の簡易 Lisp. 本では Common Lispで書いているので read周りとか楽にできる部分があるのだけれど, Lisp系言語以外だとそんなわけにはいかないのでそ…

最近読んだ漫画

放課後ていぼう日誌 1 (ヤングチャンピオン烈コミックス)作者:小坂泰之発売日: 2017/10/20メディア: Kindle版 アニメがすごく面白かったので購入. アニメいいけど, 漫画も良かった. アニメでは省かれているけど, 原作では準備の前の説明とか調理前の説明な…

bashでコマンド出力の各行を配列に設定する

bash4 以降は mapfile + プロセス置換を使う方法が標準的(?), スマートっぽい # git remoteを配列 remotes に設定する mapfile -t remotes < <(git remote) echo "${remotes[@]}"

Git commit author, emailの書き換え

stackoverflow.com 意図せず普段使い name, email以外が設定された環境でコミットしてしまった場合の対応 #!/usr/bin/env bash set -e NEW_NAME="NEW_NAME" NEW_EMAIL="new@gmail.com" git filter-branch -f --env-filter " GIT_AUTHOR_NAME='$NEW_NAME' GIT…

epub reader for Ubuntu

技術書典マーケットの本を買ったら epub形式しかなくて, デフォルトでアプリが入っていないってことで適当に探すと Thoriumがマシそうだったのでしばらく試す. www.edrlab.org インストール方法 上記のサイトから debパッケージをダウンロードして, sudo dpk…

リモートワークを始めて買ったもの

フットレスト フットレスト - 高弾力性快適フォーム - 人間工学に基づいたフットスツール - ノンスリップボトム - ソフト取り外し可能カバー - 脚のすき間 - デスクの下のフットレストクッション - オフィスや自宅用メディア: オフィス用品 昔サンワの重々し…

Show smile in prompt if Git commit hash is lucky

git のコミットハッシュにゾロ目が出ると幸せになきもちになる。 git 茶柱と呼びたい— shinichiro hamaji (@shinh) April 27, 2020 Configuration setopt re_match_pcre ## show git branch at right prompt autoload -Uz vcs_info zstyle ':vcs_info:*' for…

zsh completion macOS screencapture command

It is bundled neither zsh sources nor zsh-completions, so I wrote it. #compdef screencapture __screencapture_files() { for ((i = 2;i < CURRENT;i++)) do if [[ $words[$i] == "-p" ]]; then return fi done _files } _arguments \ '-c[force screen…

WFH雑感

完全 WFHを初めて早二ヶ月が過ぎた. 結論からいると成果はそれほど上がっていないのだが, その中で私が試したことについて示す. 今月半ばぐらいからぼちぼち改善しているような気はするので引き続き改善を行っていきたい 早寝早起き生活に変えた オフィスに…

strlen for string literal

Environment Ubuntu 19.10 GCC 9.2.1 clang-9.0.0-2 Sample code #include <string.h> size_t string_const_size() { return strlen("hello world"); } Compile with gcc -O0 gcc -O0 -c strlen.c objdump -S strlen.o strlen.o: file format elf64-x86-64 Disassembly</string.h>…

Build GCC 4.9.4 x86_64 on Ubuntu 19.10

Apply patch libgcc of gcc4.9.4 has issue on newer environment diff -ur gcc-4.9.4/libgcc/config/i386/linux-unwind.h new-gcc-4.9.4/libgcc/config/i386/linux-unwind.h --- gcc-4.9.4/libgcc/config/i386/linux-unwind.h 2014-01-03 07:25:22.00000000…

Minimum setup for node native module development with VScode

It is difficult to develop node native module without IDE. Because V8 API is difficult to use, complicated, often changed. node-gyp can generate Visual Studio solution file but other IDE is not supported well. I show how to setup writing n…