Inledning

Jag har som så många använt adressböcker för e-post, telefoni med mera sedan mängder av år. De har gått genom många olika programvaror. 

När jag bytte mobiltelefon för ett tag sedan ville jag börja med att ha en lokal adressbok i telefonen. Jag exporterade därför min adressbok i Thunderbird på min vanliga dator för att importera adresserna till telefonen.

Jag använder en mobiltelefon med Iodé operativsystem, version 6 som är baserad på Android 15. Iodé OS är baserad på Lineage OS, som i sin tur bygger på Android Open Source Platform (AOSP). Detta som jag använder är ett fritt operativsystem byggt med öppen källkod och använder minimalt med funtioner från Google.

Datorn jag använder har Linux som operativsystem, så endast programvaror för Linux samt Nextcloudmoln har varit aktuella att använda. Jag har också hållt mig till program med fri och öppen källkod.

Men, tji fick jag när importen till mobilens adressbok sade stopp och belägg, den här adressboken kan jag inte ta in. Formatet jag använde var vCard, filändelsen .vcf. Filformatet i sig var alldeles rätt, men något i filen gillade den inte.

Med tid och envishet så lyckades jag bra så småningom. Detta är bakgrunden till att jag läst på om vCard och prövat olika verktyg och metoder för att få in adressboken. Till min hjälp för att få fram information har jag bland annat använt Wikipedia och sedan läst i standarderna. 

Jag fokuserar i denna artikel helt på vCard-formatet för kontakter och adressböcker. 

En vCard-fil (.vcf, .vcard) går bra att läsa och öppna i en vanlig texteditor. Hela adressboken finns i en enda fil. Om adressboken innehåller bilder så blir just dessa passager i texteditorn (ex en jpg-bild i textformat) irrelevanta att läsa, men med sök och hitta nästa adresskort så fungerar det bra att hoppa vidare och få förståelse över ens adressbok. Jag har också sökt på olika fältnamn för att se hur ofta de förekommer. Inte minst har jag sökt på fältet "version" för att se vilken vCard-version som respektive kontaktkort har.

Intressanta standarder och standardliknande dokument

  • vCard The Electronic Business Card Version 2.1. A versit Consortium Specification. September 18, 1996. Internet Mail Consortium
  • RFC 2425 A MIME Content-Type for Directory Information (vCard 2.1). September 1998. Har referens till ovanstående spec
  • RFC 2426 vCard MIME Directory Profile vCard 3.0. September 1998
  • RFC 6350 vCard Format Specification vCard 4.0. August 2011. This document obsoletes RFCs 2425, 2426, and 4770, and updates RFC 2739
  • RFC 4122 A Universally Unique IDentifier (UUID) URN Namespace. July 2005

Mina kommentarer om standarderna 

Det finns i praktiken idag dessa tre versioner av vCard: 2.1, 3.0 och 4.0. Alla tre används. Den första gavs ut av Versit, ett företagskonsortium relaterat till Internet Mail Consortium som jag inte tror finns idag. Versit är ett varumärke som tillhör Apple, AT&T, IBM och Siemens.

Resten av dokumenten kommer från RFC-webben. RFC-webben har en lång historik bakåt till internets barndom, inte minst i USA. Jag har inte på djupet försökt förstå hur organisationer som idag står bakom RFC hänger ihop eller fungerar, IETF finns med där. Jag har inte tagit hänsyn till erratadokument i min genomgång. Utöver dokumenten ovan så finns det fler som berör vCard. Det finns även tillägg för JSContact som beskrivs i RFC 9554 och finns med som förbättringsönskan för Thunderbird, och mycket möjligt fler som jag inte sett. 

Alla RFC ovan har status "Proposed Standard". Det kan låta konstigt efter så många år, men IETF skriver att Proposed Standard är det första officiella stadiet och att många aldrig når längre än så.

RFC 2425 är ett relativt kort dokument som plockar in detta med vCard in i MIME. Den refererar till vCard 2.1-dokumentet från Versit. MIME, Multipurpose Internet Mail Extensions, är alltså relaterat till e-post.

RFC 2426 utkom i princip samtidigt som RFC 2425, men har detaljer om själva innehållet och den skriver själv om att den ska refereras till som vCard 3.0. Jag har inte dykt djupt i skillnaderna eller varför man gjorde så här med två dokument. Notera att både RFC 2425 och RFC 2426 är från 1998. De är skrivna av personer som arbetade för Lotus Development Corporation respektive Netscape Communications. För mig som varit med ett tag kan jag minnas Lotus som ett alternativ till Microsoft Office som jag själv haft; Lotusbolaget köptes sedan av IBM. Och Netscape var synonymt för mig för webbläsare och även e-posthantering mm, där dagens Mozilla med Firefox och Thunderbird har historiska rötter i Netscapes mjukvara.

RFC 6350 är betydligt nyare från 2011 och beskriver vCard 4.0. Några nyheter i RFC 6350 är att nu defineras vCard inte bara som MIME-typ utan också som ett format som står för sig själv. Den har också lagt ihop RFC 2425 och 2426 till att bägge inkluderas i detta nya dokument.

Kapitel 7 i RFC 6350 är om synkronisering. Det är som jag uppfattar nytt i vCard-standarden. Här tas alltså upp hur synkronisering av kontaktkort ska gå till mellan enheter. Något som 2011 var helt relevant men förståeligt att det inte var någon speciellt viktigt 1998.

Man ska också notera att fälten i vCard-standarden har ändrats mellan versionerna, inte bara fält som lagts till utan även några som tagits bort och jag har inte koll på om jag använder något fält som inte längre finns. 

Ett problem som jag och många uppmärksammat är att det kan bli dubletter; samma kontaktkort synkroniseras inte utan jag får både två och flera nästan lika kontaktkort. Om det fungerar bra om alla ställen som synkroniseras använder 4.0, vet jag inte.

Det finns en parameter i vCard som heter UID, se exempelvis RFC 6350 6.7.6, men den finns i alla tre versionerna. Det är en unik identifierare för det kontaktkortet. Detta är konstigt nog ett icke-obligatoriskt fält med kardinalitet *1, vilket betyder att exakt ett sådant data kan finnas men måste inte finnas.

I RFC 6350 för vCard 4.0 detaljeras att UUID som specificeras i RFC 4122 är en lämplig typ av unik identifierare för UID. Men RFC 6350 ger fortfarande frihet att använda något annat eller alltså ingen alls.

UUID (Universally Unique IDentifier) specar algoritmer som skapar världsunika identiteter för varje kontakt, och de skapas lokalt på datorn utan behov av något centralt register, vilket låter väldigt bra för att hålla ordning på enskilda kontaktkort vid synkronisering och import.

Exempel på vCard-format

När jag tittar tillbaka på en äldre egen adressbok, som jag tror kommer från en macOS adressbok, så saknas UID för kontaktkorten. Avsaknad av UID, olika sorters UID, olika versioner vCard-standarden där olika program stödjer och använder olika fält, identifierare med mera gör det förståeligt att en del kontaktprogram har svårt att hålla reda på korten när de skickas kors och tvärs.

Nextcloud 31-dokumentationen skriver att dess kontaktprogram enbart stödjer vCard 3.0 och 4.0. Från mina tester av import och export av adressböcker i vCard-format: När jag testar och har vCard version 3.0 i Nextcloud, så blir det också 3.0 som exporteras. Samma sak med Thunderbird (version 140). Däremot min adressbok mobilen från Iodé OS 6, baserad på Android 15 och Lineage OS, den exporterar i version 2.1, trots som jag absolut minns det att adressboken importerades som vCard 3.0. Slutligen, i en befintlig adressbok i Thunderbird så skapas nya adresskort som 4.0 medan befintligt kort i 3.0 som uppdateras behålls som 3.0. En helt nyskapad adressbok i Thunderbird blir i linje med detta enbart vCard 4.0.

Mitt importproblem och lösningen

Denna utredning startade alltså med att jag hade problem med att importera min adressbok till min mobil med IodéOS 6, baserad på Android 15. Varken vCard-filen från Thunderbird eller den mer eller mindre samma från Nextcloud (mer specifikt Murenas version av Nextcloud) gick att importera.

Jag vet inte vad som gjorde att det inte gick att importera.

På min Linuxdator provade jag flera program för att försöka städa min adressbok så att den skulle bli läsbar på ett bra sätt i alla program. Jag har inte skrivit ner exakt vad som hände för olika program. Men jag fick t ex problem med flera tomma eller nästan tomma kontaktkort när jag tog in till Thunderbird efter att ha haft det i något annat program. Och i flera fall fortsatta problem att importera ö h t till mobilen som jag minns det.

Det program som hjälpte mig att städa bort vad som nu än var problemet, var Evolution. Evolution är ett e-post-program med adressbok mm, d v s program liknande Thunderbird. Jag importerade till Evolution och sedan exporterade jag från Evolution, som exporterar i vCard 3.0-versionen. Detta gav alltså att jag uppgraderat alla kontaktkort till version 3.0. Vad mer som Evolution möjligen städade upp vet jag inte. Denna adressbok importerades snyggt i Thunderbird och jag kunde därefter exportera den såväl till Murenas Nextcloud som till mobilens adressbok.

Framöver skulle jag vilja uppgradera alla kontaktkort till vCard 4.0. Men jag har inte klart för mig vilket program, eller tillägg till Thunderbird, som finns eller passar.

2026-03-02: När jag pånytt skulle importera vCard-fil från Thunderbird 140 till Kontakter på Iodé 6 (Android 15); Kontakter är standardappen som kommer från LineageOS, så fick jag felmeddelandet att den inte gick att importera. Det var förvånande. Det verkar som ändringar jag gjort i Thunderbird inte förstås av mobilappen, trots att vCard tidigare "tvättades" och uppgraderades i Evolution som jag nämnde ovan. Det är omöjligt att veta vad som orsakar detta. Jag överväger att utvärdera någon annan applikation för kontakter, exempelvis Fossify Contacts, som finns i F-droid-butiken.

Henrik Hemrin

21 februari 2026

22 februari 2026: editoriella ändringar.

2 mars 2026: Lagt till stycke, datummarkerat i texten.

Comments powered by CComment

- on the web since 1998!

Human beings are very much the same, all over the world. Individuals are different. Advocate of human rights and real democracy for everyone.

© Copyright Henrik Hemrin

RSS feeds: Kunskap - Knowledge Ι Wisdom - Vishet Ι Walking to Linux Ι Mastodon

Contact and follow: Mail Ι Mastodon Ι Pixelfed Ι LinkedIn

Integritet - Privacy
Sitemap