Files
jadb/nix/database.nix
h7x4 d13138f8a5
All checks were successful
Build and test / build (push) Successful in 7m56s
Add datasource versions to database
2026-04-13 21:00:39 +09:00

68 lines
1.3 KiB
Nix

{
lib,
stdenvNoCC,
src,
database-tool,
jmdict,
radkfile,
kanjidic2,
tanos-jlpt,
sqlite,
wal ? false,
}:
stdenvNoCC.mkDerivation {
name = "jadb";
inherit src;
nativeBuildInputs = [
database-tool
sqlite
];
env = {
JMDICT_VERSION = jmdict.version;
JMDICT_DATE = jmdict.date;
JMDICT_HASH = jmdict.hash;
KANJIDIC_VERSION = kanjidic2.version;
KANJIDIC_DATE = kanjidic2.date;
KANJIDIC_HASH = kanjidic2.hash;
RADKFILE_VERSION = radkfile.version;
RADKFILE_DATE = radkfile.date;
RADKFILE_HASH = radkfile.hash;
TANOS_JLPT_VERSION = tanos-jlpt.version;
TANOS_JLPT_DATE = tanos-jlpt.date;
TANOS_JLPT_HASH = tanos-jlpt.hash;
};
buildPhase = ''
runHook preBuild
mkdir -p data
ln -s '${jmdict}'/* data/
ln -s '${kanjidic2}'/* data/
ln -s '${radkfile}'/* data/
ln -s '${tanos-jlpt}' data/tanos-jlpt
for migration in migrations/*.sql; do
sqlite3 jadb.sqlite < "$migration"
done
"${lib.getExe database-tool}" create-db \
${lib.optionalString wal "--wal"} \
--libsqlite "${sqlite.out}/lib/libsqlite3.so"
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dm644 -t "$out" jadb.sqlite
runHook postInstall
'';
}