smellman's Broken Diary

クソみたいなもんです

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

2025/08/23の日記 - overture-tilesのセットアップ

Overture Mapsをタイルにするためのoverture-tilesに必要な環境をDebian trixieにセットアップする手順をまとめました。

github.com

sudo su -
apt install -y wget apt-transport-https gpg
wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | tee /etc/apt/trusted.gpg.d/adoptium.gpg > /dev/null
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | tee /etc/apt/sources.list.d/adoptium.list
apt update
apt install temurin-22-jdk
exit
sudo update-alternatives --config java # temurin-22-jdkを選択する
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
rm -fr aws*
sudo apt-get install -y gcc g++ make libsqlite3-dev zlib1g-dev
git clone https://github.com/felt/tippecanoe.git
cd tippecanoe
make
sudo make install
cd ..
rm -fr tippecanoe
curl -L https://github.com/duckdb/duckdb/releases/download/v0.10.2/duckdb_cli-linux-amd64.zip -o duckdb_cli-linux.zip
unzip duckdb_cli-linux.zip
sudo install duckdb /usr/local/bin
duckdb -c "install httpfs; install spatial;"
rm -fr duckdb*
git clone https://github.com/OvertureMaps/overture-tiles.git
cd overture-tiles
mkdir overture
cd overture
aws s3 cp --no-sign-request --recursive s3://overturemaps-us-west-2/release/2025-07-23.0/ .
cd ..
java -cp planetiler.jar profiles/Base.java --data=overture
java -cp planetiler.jar profiles/Buildings.java --data=overture
java -cp planetiler.jar profiles/Transportation.java --data=overture
./scripts/2024-07-22/places.sh overture places.pmtiles
./scripts/2024-07-22/divisions.sh overture divisions.pmtiles

だいたい1.5TBぐらいディスクが必要なので注意してください。

2025/08/16の日記 - Debian 13の/tmpの容量について

実家のマシンをDebian 13にしたんですが、特定のプロセスでディスクフルで落ちるようになりました。

dfで確認した所、/tmpが小さくなっていました。というか/を全て割り当ててるのに何故?と思ったところ、tmpfsが/tmpの領域をメモリの半分を割り当てるようになったようです。とりあえず/tmpを大きく割り当てるには以下のようにします。

sudo mount -o remount,size=128G /tmp

なお、手元のマシンはswapに500GBを割り当ててるので上記のような方法が有効です。

別途tmpfsが/tmpを処理しないようにするには以下のような手順でいけるかと思いますが、これは未検証です。

sudo systemctl unmask tmp.mount
sudo systemctl stop tmp.mount
sudo rm -rf /tmp/*
sudo mkdir /tmp
sudo chmod 1777 /tmp

まぁ、必要になったらやってみようと思います。

ではでは。