Initial pile-config

This commit is contained in:
2026-01-06 23:05:33 -08:00
parent 26ee97e98d
commit 3846553b8a
4 changed files with 287 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
[dataset]
# This dataset's name. Must be unique.
name = "dataset"
# root directory for fts indices, relative to the parent dir of this config file.
# Files are written to {working_dir}/{dataset.name}/*.
# Default is ".pile"
#
# working_dir = ".pile"
# Data sources avaliable in this dataset
source."music" = { type = "flac", path = ["music", "music-2"] }
# This dataset's schema.
# Defines normalized fields that are extracted from source entries on-demand.
#
# Format is as follows:
#
# "field-name" = {
# # The type of data this field contains.
# # only text is supportedin this verison.
# type = "text",
#
# # An array of jsonpaths (rfc9535) used to extract this field from each source entry.
# # These are evaluated in order, the first non-null value is used.
# # A single string is equivalent to an array with one element.
# path = "$.json.path"
# }
[schema]
album = { type = "text", path = "$.Album" }
isrc = { type = "text", path = "$.Isrc" }
artist = { type = "text", path = ["$.Artist", "$.TrackArtist"] }
lyrics = { type = "text", path = "$.Lyrics" }
genre = { type = "text", path = "$.Genre" }
title = { type = "text", path = ["$.Title", "$.TrackTitle"] }
# Fts configuration.
# Determines which fields (defined in `schema`) are included in the fts index.
[fts]
field.album = { tokenize = true }
field.isrc = { tokenize = true }
field.artist = { tokenize = true }
field.lyrics = { tokenize = true }
field.genre = { tokenize = true }
field.title = { tokenize = true }