all repos — searchix @ 42611df8133fc88bac5947a65a18fa095d68a951

Search engine for NixOS, nix-darwin, home-manager and NUR users

feat(index): enable storage of package data

Alan Pearce
commit

42611df8133fc88bac5947a65a18fa095d68a951

parent

29f2099e68a3226060308c66e5b1aa19fb2ba8e0

2 files changed, 18 insertions(+), 1 deletion(-)

jump to
M internal/index/indexer.gointernal/index/indexer.go
@@ -101,7 +101,17 @@
optionMapping.AddSubDocumentMapping("Default", nixValueMapping) optionMapping.AddSubDocumentMapping("Example", nixValueMapping) + packageMapping := bleve.NewDocumentStaticMapping() + + packageMapping.AddFieldMappingsAt("Name", keywordFieldMapping) + packageMapping.AddFieldMappingsAt("Source", keywordFieldMapping) + packageMapping.AddFieldMappingsAt("Description", textFieldMapping) + packageMapping.AddFieldMappingsAt("MainProgram", keywordFieldMapping) + packageMapping.AddFieldMappingsAt("PackageSet", keywordFieldMapping) + packageMapping.AddFieldMappingsAt("Platforms", keywordFieldMapping) + indexMapping.AddDocumentMapping("option", optionMapping) + indexMapping.AddDocumentMapping("package", packageMapping) return indexMapping, nil }
@@ -259,7 +269,7 @@ }
var data bytes.Buffer enc := gob.NewEncoder(&data) - err = enc.Encode(obj) + err = enc.Encode(&obj) if err != nil { errs <- errors.WithMessage(err, "could not store object in search index")
M internal/nix/importable.gointernal/nix/importable.go
@@ -1,5 +1,7 @@
package nix +import "encoding/gob" + type Importable interface { BleveType() string GetName() string
@@ -9,3 +11,8 @@
func GetKey(i Importable) string { return i.BleveType() + "/" + i.GetSource() + "/" + i.GetName() } + +func init() { + gob.Register(Option{}) + gob.Register(Package{}) +}