Failed to deserialize: enum SearchMode does not have variant constructor daemon-fuzzy for key `search_mode`

Since updating atuin on my MacBook this morning I get the following error every time I start up the terminal, and atuin no longer launches with the ‘up’ arrow key:

Error: could not load client settings

Caused by:
    failed to deserialize: enum SearchMode does not have variant constructor daemon-fuzzy for key `search_mode`

Location:
    crates/atuin-client/src/settings.rs:1178:26

Can you help please?

I suspect something is up with your path - this happens when an older version of Atuin tries to read a config file intended for a newer version. Could you check the output of atuin doctor, and make sure it’s the latest version?

Thanks Ellie, that provided the pointer I needed!

Atuin Doctor
Checking for diagnostics


Please include the output below with any bug reports or issues

{
  "atuin": {
    "version": "18.13.3",
    "commit": "e737ba5b9a149eaec706418bc560e8ba7ea8c81b",
    "sync": null,
    "sqlite_version": "3.46.0"
  },
  "shell": {
    "name": "zsh",
    "default": "zsh",
    "plugins": [],
    "preexec": null
  },
  "system": {
    "os": "Darwin",
    "arch": "arm64",
    "version": "26.3.1",
    "disks": [
      {
        "name": "Macintosh HD",
        "filesystem": "apfs"
      },
      {
        "name": "Macintosh HD",
        "filesystem": "apfs"
      }
    ]
  }
}

Your comment about paths seems to be correct:

~ which atuin                                                                                                                                                                                        /Users/michael/.atuin/bin/atuin
~ atuin -V                                                                                                                                                                                           atuin 18.13.3
~ /opt/homebrew/bin/atuin -V                                                                                                                                                                         atuin 18.12.1

(Why did I check /opt/homebrew/bin? I vaguely remembered having originally installed it via homebrew so /opt/homebrew/bin seemed like a logical place to look …)

it looks like I have two atuin versions.

The way I fixed this was:

Firstly Remove homebrew’s outdated version:

brew remove atuin

Next time I opened my terminal I got

/Users/michael/.zshrc:112: command not found: atuin

So I opened up nano ~/.zshrc and saw a the end

eval "$(atuin init zsh)"

. "$HOME/.atuin/bin/env"
export PATH="$HOME/.local/bin:$PATH"

I just swapped those lines around to be

. "$HOME/.atuin/bin/env"
export PATH="$HOME/.local/bin:$PATH"

eval "$(atuin init zsh)"

And now it’s working again.

Thanks!

1 Like

Great! Glad you got it sorted out :blush:

1 Like