↓ Pull down to refresh

thumbnail

Maku ja aalto

by tuanemuy

プログラミングとか写真とか。

Nixが気になる

#Nix

Nixは純粋関数型のパッケージマネージャーであり、どのマシンでも同じようにビルドできる環境を宣言的に構築することができる。Dockerで仮想環境を作る代わりに使っても良いし、マシン全体のパッケージ管理を宣言的に行っても良い。

最近はexperimentalな機能であるFlakesや、devenvやDevboxといったより高級なツールで簡単にNixを利用することができる。

2025.02.07 04:06

Next.jsのstandaloneでDrizzle ORMが使えない

#Next_js #drizzle

問題

Next.jsをCloud Runなどへデプロイするときは { output: "standalone" } でビルドする必要があるが、Drizzle ORM(SQLite)を使うと

[Error: Cannot find module '@libsql/linux-x64-musl'Error: Cannot find module '@libsql/linux-x64-musl'
Require stack:
- /app/node_modules/.pnpm/libsql@0.4.7/node_modules/libsql/index.js]

のようなエラーでうまく動かない。

※ 環境

  • Next.js: 15.1.6

  • Drizzle ORM: 0.38.0 

対策

outputFileTracingIncludes オプションで @libsql+core をoutputに含める。

import type { NextConfig } from "next";

const nextConfig: NextConfig = {
  output: "standalone",
  outputFileTracingIncludes: {
    "/": ["./node_modules/.pnpm/@libsql+core*/**/*"],
  }
};

export default nextConfig;

["./node_modules/@libsql/**/*"] も試したがダメだった。

2025.01.25 07:01

localhostにhttpsでアクセスする

#SSL #開発環境

所有しているドメインのAレコードに 127.0.0.1 を設定し、そのドメインでSSL証明書を発行すれば良い。

SSL証明書を発行する

sudo certbot certonly --manual -d ***.***.*** --preferred-challenges dns

--manual-auth-hook がない?ので、更新は手動で行う。

ローカルサーバーにSSL証明書を設定する

Nginxでリバースプロキシする等、ローカルサーバーの設定は適宜行う。

2025.01.08 08:38

測定した回線速度よりWi-Fi / 光回線が遅い時

#光回線 #インターネット

回線速度の測定はIPv6・IPoEで行われるが、実際の通信はIPv4・PPPoEで行われている場合がある。

ルーター等の設定を見直し、IPv4 over IPv6の設定をすると良い。

2025.01.06 11:57

Drizzle ORMでorderByを動的に指定する

#Drizzle #TypeScript #SQLite

sql.raw を使う。

import { sql } from "drizzle-orm";
import { db } from "./db";
import { users } from "./schema";

const columnName = "createdAt";
const order = "desc";

const users = await db
  .select()
  .from(users)
  .orderBy(sql.raw(`${columnName} ${order}`));

2024.12.27 06:38

EC-CUBEのメール設定はなんかおかしい

#EC_CUBE #SMTP #メール

「問い合わせ受付メールアドレス(From, ReplyTo)」は、実際はフロントエンドに表示するアドレス。Eccube\Service\MailService\sendContactMailだけおかしい。

あとEC-CUBEとは関係ないが、「送信元メールアドレス(From)」と「送信エラー受付メールアドレス(ReturnPath)」が違うとメールサーバーに弾かれる可能性が高くなる。

2024.11.12 06:48

昭和レトロな街並みの残るヤナガワ村発、地域の歴史・産業・文化を体験するツアー

#ヤナガワ村

群馬県高崎市。古くから交通の要衝であり、かつては中山道の宿場町、さらに絹や蚕種の取引が活発な商都として賑わいました。

北関東一の花街として知られた柳川町周辺は、未だ昭和レトロな町並みを残します。この「ヤナガワ村」と呼ばれるエリアを中心に、地域の歴史や産業、文化を体験するツアーです。

日本のモダニズム建築を牽引したアントニン・レーモンドの名建築「群馬音楽センター」や、日本一の生産量を誇るだるまの工房を巡った後、ヤナガワ村のディープな飲食街で、日本の地方都市の大衆文化を味わいます。

歴史ある風景と、人情味あふれる明るい街。ぜひお楽しみください。

13:10 / 高崎市役所 21階展望フロア

市内を一望できる市役所21階の展望フロアから、当日訪れるすべてのエリアについてガイドが解説します。

高崎市は、群馬県の南西部に位置する中核市です。北西部には赤城、榛名、妙義の上毛三山を望み、南東部には関東平野が広がります。市内を流れる利根川、烏川、碓氷川は関東平野を通って太平洋へとつながり、古くから交通の要衝として発展してきました。

高崎藩の置かれた江戸時代は、中山道、三国街道の宿場町として栄え、多くの人々が往来しました。明治時代には鉄道が通り、昭和になると高速道路や新幹線などの交通網が整備され、現在も全国有数の交通拠点となっています。

山と川に恵まれた立地は養蚕や染物にも適しており、絹市場と蚕種市場の盛んな商業都市としても賑わいました。

日本一のだるまの産地であるほか、戦後の高崎市民オーケストラの活動から「音楽ある街」としても知られ、芸術や文化における活動も盛んです。

13:35 / 群馬音楽センター

高崎城跡の一角に、1961年にアントニン・レーモンドが設計した群馬音楽センターがあります。正面から見ると壁一面ガラス張り、側面にはコンクリートむき出しのギザギザとした壁。独特な外観が目を引きます。

終戦後の1945年11月、音楽で街を復興させようと、群馬交響楽団の前身である高崎市民オーケストラが結成されます。その設立者である井上房一郎がレーモンドに設計を依頼し、完成したのがこの建物です。

建設費用のうちの1億円ほどは市民からの寄付で賄われました。市民の理解と協力により建築された群馬音楽センターは、理想的な公共建築とも言われています。

美しい曲線の螺旋階段を上ると、ガラス越しに大パノラマ。メインホールは1階と2階がなだらかに繋がり、客席と舞台に一体感を生み出します。

井上房一郎とレーモンド、そして高崎市民の情熱をぜひ感じてください。

14:55 / 今井だるま店NAYA 絵付け体験

鮮やかな赤に「鶴」の眉と「亀」のひげが印象的なだるま。高崎市が日本一の生産量を誇る、伝統産業です。

高崎だるま®︎の工房を訪れ、その形や絵に込められた人々の願いや歴史についての説明を聞いた後、職人の手ほどきによるだるまの絵付け体験を行います。世界にひとつ、自分だけのだるまです。完成しただるまはお持ち帰りいただけます(別途費用がかかりますが、配送も可能です)。

今から200年以上前、浅間山で大噴火が起こりました。火山灰に覆われた関東一円は、大飢饉に苦しむことになります。

そこで当時の人々が頼りにしたのが、だるまでした。少林山達磨寺の東獄和尚が豊岡村の山縣友五郎に作り方を伝授したことが高崎だるまの始まりとされています。

高崎だるまは、眉毛が「鶴」、ひげが「亀」を表現します。「鶴は千年、亀は万年」と、日本において吉祥の象徴とされている動物です。縁起物として、昔から多くの人に親しまれてきました。

18:20 / ヤナガワ村バルホッピング

かつて北関東一の花街として知られた柳川町周辺。未だ昭和レトロな町並みを残します。

ツアーの最後は、このディープな飲食街「ヤナガワ村」の飲み歩きです。地元を知り尽くしたガイドが、飲食店や見どころをご案内します。高崎の夜を体験することで、より深く日本の地方都市の大衆文化を知ることができるでしょう。

いざ、路地の奥の、知られざる名店へ。

明治5年、廃墟となった高崎城の中に、東京鎮台歩兵第三連隊の第一大隊が置かれます。すると軍の関係者などが高崎を訪れるようになり、数々の料亭が開かれました。

盛り上がりは一時落ち着きますが、鉄道が開通して日本橋の魚河岸から鮮魚を運べるようになると、料亭は再び賑わいを取り戻します。多くの人が行き交う街には私娼の宿も現れ、その中心であった柳川町は、北関東一とも言える花街になりました。

2024.10.31 06:31