smellman's Broken Diary

クソみたいなもんです

2026/01/23の日記 - OpenAIのDevice Tokenが有効でない状態でcodexの認証をしてみる

リモートのサーバ上で、OpenAIのcodexを入れてみたいと思ったんだけど、Device Tokenで認証をしようとしたらDevice Tokenの認証機能を管理者側が有効にしないといけないと言われた。

面倒だったので、普通の認証を突破するようにしてみました。

ssh -L 1455:localhost:1455 foobar.smellman.org
asdf install nodejs latest
asdf set -u nodejs 25.4.0
npm i -g @openai/codex
codex

つまり、sshで1455ポートをport forwardすればOKという話です。

あとはURLが出てくるので頑張ってコピペしましょう。ログインして2FAを突破すれば使えるようになります。

ちなみに、macOSでは認証すら必要なかった。たぶん、ChatGPT自体使ってるからだと思う。

ではでは。

2026/01/04の日記 - Sonic Piを試してみる

ssmjpのslackで紹介されていたSonic PiというLive codingで音楽が鳴らせるアプリがあったので、試してみました。

sonic-pi.net

環境はUbuntu Studio 25.10です。

sudo apt-get install -y build-essential git libssl-dev ruby-dev elixir erlang-dev erlang-xmerl qt6-tools-dev qt6-tools-dev-tools libqt6svg6-dev libqt6opengl6-dev supercollider-server sc3-plugins-server alsa-utils  libasound2-dev cmake ninja-build pipewire-jack libspa-0.2-jack qt6-wayland libwayland-dev libxkbcommon-dev libegl1-mesa-dev libx11-dev libxft-dev libxext-dev qpwgraph compton m4 libaubio-dev libpng-dev libboost-all-dev librtmidi-dev
cd /tmp
tar zxf ~/Downloads/asdf-v0.18.0-linux-amd64.tar.gz
mv asdf ~/bin/
sudo apt install libncurses-dev
sudo apt install wx-common wx3.2-headers
sudo apt install libwxgtk3.2-dev gettext wx3.2-doc
sudo apt install openjdk-25-jdk
asdf plugin add erlang https://github.com/asdf-vm/asdf-erlang.git
asdf install erlang latest
asdf set -u erlang 28.3
asdf plugin add elixir https://github.com/asdf-vm/asdf-elixir.git
asdf install elixir latest
asdf set -u elixir latest
git clone https://github.com/sonic-pi-net/sonic-pi.git
cd sonic-pi/app
./linux-build-all.sh
cd build/gui
./sonic-pi

無事起動まではしたのですが、音楽を再生してみるとGUIがコアダンプしてしまい、シンセサイザーをkillしないと音が止まらないという状態になりました。

たぶんだけど、Raspberry Piとかの公式ビルドを使うのが良さそうです。

2026/01/03の日記 - wawawa / Plastic Symphonies: The Evidence I Was Here | リモート登壇の予定のお話

今日は午後、ひさびさに自転車でドトールコーヒーに行って作業。

主な作業はFOSS4G Hiroshima 2026に向けたFIrst mailの英訳をしていた。まぁ、ChatGPTにお世話になったんですがね。

さて、今日もwawawaの音源を紹介。

一昨日の日記の作品よりもちょっと前の作品で、これまたクラシック音楽ブレイクコアでめちゃくちゃにした作品です。ブレイクコア度としてはこちらの作品の方が激しいかもしれないです。合わせて聞いてみてください。

さて、昨日連絡があり、リモートでイベントへ登壇がほぼ決定しました。

osm.connpass.com

OpenStreetMap Japanによるマッパーズサミット2026と銘打ったイベントで、さくらインターネットさんの大阪の方をお借りして、ハイブリッド開催という形で開催をします。

僕は遠方なのでリモート登壇という形で、さくらインターネットさんに協力していただいて運用をしている、OpenStreetMap Foundation Japanのタイルサーバについて解説するという感じになります。

大阪近辺の方は是非現地で参加してみてください。

ではでは。

2026/01/02の日記 - 「カーニハンのUNIX回顧録」読了

朝から猫にたたき起こされました。

さて、今日は実家でゆっくりと読書をしていて、「カーニハンのUNIX回顧録」を読み終わりました。

UNIXの初期の話というとケン・トンプソン氏とデニス・リッチー氏の話がメインになる傾向があるけど、第三者としてダグ・マキロイ氏がかなり影響を与えていたという視点や、ベル研究所の雰囲気やさまざまな人の貢献がわかりやすく残されており、回顧録というのに相応しい一冊になっています。

とくにパイプの発明などUNIXがコンピュータを変えたと言って過言では無いような出来事がどんどん出てきていて、UNIXを触ってる身としては、「このコマンドって出来たのにこんな背景があったんだ」というのがぼんやりとですが頭に浮かんでニヤニヤしてしまう感じでした。

ちなみに翻訳をされたのが日本UNIXユーザ会事務局長の井上尚司先生なので訳者あとがきの部分は先生の声で脳内で再生されました。

ではでは。

2026/01/01の日記 - wawawa / Der Kater Der Einst War

あけましておめでとうございます。

去年はあまり音楽をdigれなかったので今年はたくさんdigっていきたいです。

というわけで早速今日聞いた音楽から。

昨日たまたまメールで知ったwawawaというアーティストのアルバムを買ったのですが、wawawa自体どこかで聞いた事あるようなと思って(たぶんwAgAwAgAと間違えてる)apple musicでリリースされてるものを一気にダウンロードして聞いてみていて、とりあえず気に入ったのがこのアルバムです。

Venetian SnaresのMy Downfall(Original Soundtrack)に影響を受けたかのようなクラシックとブレイクコアミックスしためっちゃうるさい音源で、めちゃくちゃかっこいい。なんかブレイクコアがジャンルを問わずぶっ壊す感じが体感出来る良いアルバムなので、是非聞いてみてください。

正月なので読書もしています。現在はカーニハンのUNIX回顧録を半分ほど読みました。

これからUNIX V7の話を読んでいくのですが、本当にUNIXって面白い環境で出来たものなんだなと感じられる一冊なのでこちらもおすすめです。

ではでは。

2025/11/21の日記 - Debian sidのGDALでGeoParquetを読んでみる

Debian sidでGDALのバージョンが新しくなっているのには気づいていたんだけど、そういやGeoParquetの対応どうなんだろうと思ってテストしてみました。

$ gdal vector info /tmp/part-00000-86dc2aa2-7ee9-46c6-a622-72900195c069-c000.zstd.parquet
ERROR 1: libduckdb.so: cannot open shared object file: No such file or directory

libduckdb.soがないのでエラーなんだけど、っていうかlibduckdb.soだけ持ってくれば動くの?

というわけでテスト。

$ wget https://install.duckdb.org/v1.4.2/libduckdb-linux-amd64.zip
$ unzip libduckdb-linux-amd64.zip
$ sudo install libduckdb.so /usr/local/lib/
$ sudo ldconfig
$ gdal vector info /tmp/part-00000-86dc2aa2-7ee9-46c6-a622-72900195c069-c000.zstd.parquet
INFO: Open of `/tmp/part-00000-86dc2aa2-7ee9-46c6-a622-72900195c069-c000.zstd.parquet'
      using driver `ADBC' successful.

Layer name: part-00000-86dc2aa2-7ee9-46c6-a622-72900195c069-c000.zstd
Geometry: Point
Feature Count: 25914384
Extent: (-73.847827, -54.938042) - (-45.000011, -22.500002)
Layer SRS WKT:
GEOGCRS["WGS 84",
    ENSEMBLE["World Geodetic System 1984 ensemble",
        MEMBER["World Geodetic System 1984 (Transit)"],
        MEMBER["World Geodetic System 1984 (G730)"],
        MEMBER["World Geodetic System 1984 (G873)"],
        MEMBER["World Geodetic System 1984 (G1150)"],
        MEMBER["World Geodetic System 1984 (G1674)"],
        MEMBER["World Geodetic System 1984 (G1762)"],
        MEMBER["World Geodetic System 1984 (G2139)"],
        MEMBER["World Geodetic System 1984 (G2296)"],
        ELLIPSOID["WGS 84",6378137,298.257223563,
            LENGTHUNIT["metre",1]],
        ENSEMBLEACCURACY[2.0]],
    PRIMEM["Greenwich",0,
        ANGLEUNIT["degree",0.0174532925199433]],
    CS[ellipsoidal,2],
        AXIS["geodetic latitude (Lat)",north,
            ORDER[1],
            ANGLEUNIT["degree",0.0174532925199433]],
        AXIS["geodetic longitude (Lon)",east,
            ORDER[2],
            ANGLEUNIT["degree",0.0174532925199433]],
    USAGE[
        SCOPE["Horizontal component of 3D system."],
        AREA["World."],
        BBOX[-90,-180,90,180]],
    ID["EPSG",4326]]
Data axis to CRS axis mapping: 2,1
Geometry Column = geometry
id: String (0.0)
country: String (0.0)
postcode: String (0.0)
street: String (0.0)
number: String (0.0)
unit: String (0.0)
address_levels: String(JSON) (0.0)
postal_city: String (0.0)
version: Integer (0.0)
sources: String(JSON) (0.0)

うおおおおお!なんか開けた!!!!!ちょっと嬉しいかも。

ちなみにDebian sidのQGISでも開けたんだけど、CPU食い潰してOSごと落ちたのでまだまだ検証段階ですね!ってかリモートのサーバ落ちたよw