func merge(ps *store.SecretStore, cfg *config, m secret.ScryptMode) error { otherPath := cfg.Args[0] passphrase, err := util.PassPrompt("Passphrase for other store> ") if err != nil { return err } otherData, err := util.ReadFile(otherPath) if err != nil { return err } otherStore, ok := store.UnmarshalSecretStore(otherData, passphrase, m) if !ok { return errors.New("failed to open other password store") } mergeList := ps.Merge(otherStore) fmt.Printf("%+v\n", mergeList) if len(mergeList) > 0 { sort.Strings(mergeList) for _, label := range mergeList { fmt.Printf("Merged '%s'\n", label) } } return nil }