Restore contacts after installing a fresh Crimson image

Hi,

I’ve installed Crimson flashing the image. I had previously saved a copy of /home/purism/.local/share/evolution/addressbook/system/contacts.db on the SD card.

After installation I overwrote the contacts.db file with the previously saved one, but when I open the “Contacts” application nothing appears, it is completely empty.

Any ideas?

When doing the restore (or the original save for that matter!), you should ensure that no process is accessing the contacts.db file before you do that. If doing it “live”, that will involve killing the appropriate process (which is not ideal).

When I upgraded from amber to byzantium I took the same basic approach as what you have done and it did work.

As an aside, as part of “overwriting” the contacts.db file, I would definitely make a copy of the file as it is after the reflash, just in case things go pear-shaped.

Also, given that you didn’t take care to kill a process (my assumption), I would suggest a reboot of the phone. Have you done that subsequently?

PS If you are handy with SQL, there can be merit in having the sqlite3 command installed on the phone, so that you can sanity check the contents of .db files.

1 Like

Thanks for coming back…

Silly me! Was just a matter of reboot.

1 Like

Note that even if you did this properly i.e. killed the process that is using the database before overwriting the database, you would still likely have to reboot - because most likely you won’t have an easy way to restart the process.

1 Like

Thank you!:smiley:

1 Like

Fortunately, there is no one I wish to contact. All incoming calls are spam.

1 Like

Is systemctl --user restart evolution-addressbook-factory.service not easy enough? :stuck_out_tongue:

$ systemctl --user status $(lsof -t ~/.local/share/evolution/addressbook/system/contacts.db)
● evolution-addressbook-factory.service - Evolution address book service
     Loaded: loaded (/usr/lib/systemd/user/evolution-addressbook-factory.service; static)
     Active: active (running) since Tue 2026-06-02 21:13:57 CEST; 20h ago
   Main PID: 2097 (evolution-addre)
      Tasks: 10 (limit: 2781)
     Memory: 22.7M
        CPU: 15.565s
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/evolution-addressbook-factory.service
             └─2097 /usr/libexec/evolution-addressbook-factory
2 Likes

If one’s methodology is “kill random process and overwrite database” then overall it is a slightly risky approach and you can’t really be sure whether there are non-obvious consequences, unless having studied all the relevant source code in detail, and so a reboot afterwards seems like the safest thing to do, as if you are telling the phone: hey, forget that I just did that. :wink:

Ideally we get to a point where there is a clean and safe way to save and restore contacts (et al) around a reflash.