diff --git a/briar-gtk/po/briar-gtk.pot b/briar-gtk/po/briar-gtk.pot
index abb1ba4c5c055eb2752f0c2c39583e2cc08b8713..b4e7f935b873c7a9529a45d0dd646713a563f767 100644
--- a/briar-gtk/po/briar-gtk.pot
+++ b/briar-gtk/po/briar-gtk.pot
@@ -8,53 +8,83 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-12-09 01:55+0100\n"
+"POT-Creation-Date: 2020-02-04 01:01+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../data/ui/add_contact.ui:28
+#: ../data/app.briar.gtk.appdata.xml.in:7
+msgid "Briar"
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:8
+msgid "Secure messaging, anywhere"
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:11
+msgid ""
+"Briar is a messaging app designed for activists, journalists, and anyone "
+"else who needs a safe, easy and robust way to communicate. Unlike "
+"traditional messaging apps, Briar doesn't rely on a central server - "
+"messages are synchronized directly between the users' devices. If the "
+"internet's down, Briar can sync via Bluetooth or Wi-Fi, keeping the "
+"information flowing in a crisis. If the internet's up, Briar can sync via "
+"the Tor network, protecting users and their relationships from surveillance."
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:33
+msgid "Briar Community"
+msgstr ""
+
+#: ../data/ui/add_contact.ui:29
+msgctxt "add contact"
 msgid "Give this link to the contact you want to add"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:48
+#: ../data/ui/add_contact.ui:60
+msgctxt "add contact"
 msgid "Enter the link from your contact here"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:58
-msgctxt "link exchange: their link input field"
+#: ../data/ui/add_contact.ui:79
+msgctxt "add contact"
 msgid "Contact's link"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:69
-msgctxt "link exchange: button – initiate pairing"
-msgid "Continue"
+#: ../data/ui/add_contact.ui:92
+msgctxt "add contact"
+msgid "Please enter a link"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:89
+#: ../data/ui/add_contact.ui:122
+msgctxt "add contact"
 msgid "Give your contact a nickname. Only you can see it."
 msgstr ""
 
-#: ../data/ui/add_contact.ui:99
-msgctxt "remote contact adding: alias input field"
+#: ../data/ui/add_contact.ui:142
+msgctxt "add contact"
 msgid "Enter a nickname"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:110
-msgctxt "remote contact adding: button"
-msgid "Add Contact"
+#: ../data/ui/add_contact.ui:155
+msgctxt "add contact"
+msgid "The alias may not be empty"
 msgstr ""
 
-#: ../data/ui/chat.ui:33
-msgctxt "chat page: input field"
-msgid "Type Message"
+#: ../data/ui/add_contact.ui:207 ../data/ui/registration.ui:233
+msgid "Next"
+msgstr ""
+
+#: ../data/ui/add_contact.ui:227 ../data/ui/add_contact.ui:249
+msgid "Add contact"
 msgstr ""
 
 #: ../data/ui/login.ui:29 ../data/ui/registration.ui:110
+#: ../data/ui/registration.ui:253
 msgid "Password"
 msgstr ""
 
@@ -70,6 +100,27 @@ msgstr ""
 msgid "Logging in"
 msgstr ""
 
+#: ../data/ui/main.ui:121
+msgctxt "chat page: input field"
+msgid "Type Message"
+msgstr ""
+
+#: ../data/ui/main.ui:167
+msgid "No contact selected"
+msgstr ""
+
+#: ../data/ui/main.ui:182
+msgid "Select a contact to start chatting"
+msgstr ""
+
+#: ../data/ui/main.ui:248
+msgid "Add"
+msgstr ""
+
+#: ../data/ui/main.ui:302 ../data/ui/main.ui:400 ../data/ui/main.ui:415
+msgid "Back"
+msgstr ""
+
 #: ../data/ui/registration.ui:40
 msgid "Welcome to Briar"
 msgstr ""
@@ -90,14 +141,6 @@ msgstr ""
 msgid "The passwords do not match"
 msgstr ""
 
-#: ../data/ui/registration.ui:233
-msgid "Next"
-msgstr ""
-
-#: ../data/ui/registration.ui:253
-msgid "Passwords"
-msgstr ""
-
 #: ../data/ui/registration.ui:275
 msgid "Create Account"
 msgstr ""
@@ -106,6 +149,18 @@ msgstr ""
 msgid "Creating Account"
 msgstr ""
 
-#: ../src/briar/gtk/containers/registration.py:137
+#: ../briar_gtk/containers/add_contact.py:68
+msgid "Please enter a link"
+msgstr ""
+
+#: ../briar_gtk/containers/add_contact.py:74
+msgid "Enter your contact's link, not your own"
+msgstr ""
+
+#: ../briar_gtk/containers/registration.py:137
 msgid "Couldn't register account"
 msgstr ""
+
+#: ../briar_gtk/widgets/private_message.py:26
+msgid "Myself"
+msgstr ""
diff --git a/briar-gtk/po/de.po b/briar-gtk/po/de.po
index 0d74b232ac3c8d1d5bbf169834589c13cb6b21ea..d958447ae16b0bf7b05bf13181a4a638b9dd7b63 100644
--- a/briar-gtk/po/de.po
+++ b/briar-gtk/po/de.po
@@ -1,50 +1,80 @@
 msgid ""
 msgstr ""
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-12-09 01:55+0100\n"
+"POT-Creation-Date: 2020-02-04 01:01+0100\n"
 "Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../data/ui/add_contact.ui:28
+#: ../data/app.briar.gtk.appdata.xml.in:7
+msgid "Briar"
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:8
+msgid "Secure messaging, anywhere"
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:11
+msgid ""
+"Briar is a messaging app designed for activists, journalists, and anyone "
+"else who needs a safe, easy and robust way to communicate. Unlike "
+"traditional messaging apps, Briar doesn't rely on a central server - "
+"messages are synchronized directly between the users' devices. If the "
+"internet's down, Briar can sync via Bluetooth or Wi-Fi, keeping the "
+"information flowing in a crisis. If the internet's up, Briar can sync via "
+"the Tor network, protecting users and their relationships from surveillance."
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:33
+msgid "Briar Community"
+msgstr ""
+
+#: ../data/ui/add_contact.ui:29
+msgctxt "add contact"
 msgid "Give this link to the contact you want to add"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:48
+#: ../data/ui/add_contact.ui:60
+msgctxt "add contact"
 msgid "Enter the link from your contact here"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:58
-msgctxt "link exchange: their link input field"
+#: ../data/ui/add_contact.ui:79
+msgctxt "add contact"
 msgid "Contact's link"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:69
-msgctxt "link exchange: button – initiate pairing"
-msgid "Continue"
+#: ../data/ui/add_contact.ui:92
+msgctxt "add contact"
+msgid "Please enter a link"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:89
+#: ../data/ui/add_contact.ui:122
+msgctxt "add contact"
 msgid "Give your contact a nickname. Only you can see it."
 msgstr ""
 
-#: ../data/ui/add_contact.ui:99
-msgctxt "remote contact adding: alias input field"
+#: ../data/ui/add_contact.ui:142
+msgctxt "add contact"
 msgid "Enter a nickname"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:110
-msgctxt "remote contact adding: button"
-msgid "Add Contact"
+#: ../data/ui/add_contact.ui:155
+msgctxt "add contact"
+msgid "The alias may not be empty"
 msgstr ""
 
-#: ../data/ui/chat.ui:33
-msgctxt "chat page: input field"
-msgid "Type Message"
-msgstr "Nachricht eingeben"
+#: ../data/ui/add_contact.ui:207 ../data/ui/registration.ui:233
+msgid "Next"
+msgstr "Weiter"
+
+#: ../data/ui/add_contact.ui:227 ../data/ui/add_contact.ui:249
+msgid "Add contact"
+msgstr ""
 
 #: ../data/ui/login.ui:29 ../data/ui/registration.ui:110
+#: ../data/ui/registration.ui:253
 msgid "Password"
 msgstr "Passwort"
 
@@ -60,6 +90,27 @@ msgstr ""
 msgid "Logging in"
 msgstr ""
 
+#: ../data/ui/main.ui:121
+msgctxt "chat page: input field"
+msgid "Type Message"
+msgstr "Nachricht eingeben"
+
+#: ../data/ui/main.ui:167
+msgid "No contact selected"
+msgstr ""
+
+#: ../data/ui/main.ui:182
+msgid "Select a contact to start chatting"
+msgstr ""
+
+#: ../data/ui/main.ui:248
+msgid "Add"
+msgstr ""
+
+#: ../data/ui/main.ui:302 ../data/ui/main.ui:400 ../data/ui/main.ui:415
+msgid "Back"
+msgstr ""
+
 #: ../data/ui/registration.ui:40
 msgid "Welcome to Briar"
 msgstr "Willkommen bei Briar"
@@ -80,14 +131,6 @@ msgstr "Passwort bestätigen"
 msgid "The passwords do not match"
 msgstr "Die Passwörter stimmen nicht überein"
 
-#: ../data/ui/registration.ui:233
-msgid "Next"
-msgstr "Weiter"
-
-#: ../data/ui/registration.ui:253
-msgid "Passwords"
-msgstr "Passwörter"
-
 #: ../data/ui/registration.ui:275
 msgid "Create Account"
 msgstr "Account erstellen"
@@ -96,10 +139,25 @@ msgstr "Account erstellen"
 msgid "Creating Account"
 msgstr "Erstelle Account"
 
-#: ../src/briar/gtk/containers/registration.py:137
+#: ../briar_gtk/containers/add_contact.py:68
+msgid "Please enter a link"
+msgstr ""
+
+#: ../briar_gtk/containers/add_contact.py:74
+msgid "Enter your contact's link, not your own"
+msgstr ""
+
+#: ../briar_gtk/containers/registration.py:137
 msgid "Couldn't register account"
 msgstr ""
 
+#: ../briar_gtk/widgets/private_message.py:26
+msgid "Myself"
+msgstr ""
+
+#~ msgid "Passwords"
+#~ msgstr "Passwörter"
+
 #~ msgctxt "login page: button"
 #~ msgid "Sign in"
 #~ msgstr "Login"
diff --git a/briar-gtk/po/es.po b/briar-gtk/po/es.po
index 2344a2a89dcc51553ed7a946e69929204f3357e5..0f9a35825f3df25a90011f2fa2a6b09f843a2544 100644
--- a/briar-gtk/po/es.po
+++ b/briar-gtk/po/es.po
@@ -1,50 +1,80 @@
 msgid ""
 msgstr ""
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-12-09 01:55+0100\n"
+"POT-Creation-Date: 2020-02-04 01:01+0100\n"
 "Language: es\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../data/ui/add_contact.ui:28
+#: ../data/app.briar.gtk.appdata.xml.in:7
+msgid "Briar"
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:8
+msgid "Secure messaging, anywhere"
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:11
+msgid ""
+"Briar is a messaging app designed for activists, journalists, and anyone "
+"else who needs a safe, easy and robust way to communicate. Unlike "
+"traditional messaging apps, Briar doesn't rely on a central server - "
+"messages are synchronized directly between the users' devices. If the "
+"internet's down, Briar can sync via Bluetooth or Wi-Fi, keeping the "
+"information flowing in a crisis. If the internet's up, Briar can sync via "
+"the Tor network, protecting users and their relationships from surveillance."
+msgstr ""
+
+#: ../data/app.briar.gtk.appdata.xml.in:33
+msgid "Briar Community"
+msgstr ""
+
+#: ../data/ui/add_contact.ui:29
+msgctxt "add contact"
 msgid "Give this link to the contact you want to add"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:48
+#: ../data/ui/add_contact.ui:60
+msgctxt "add contact"
 msgid "Enter the link from your contact here"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:58
-msgctxt "link exchange: their link input field"
+#: ../data/ui/add_contact.ui:79
+msgctxt "add contact"
 msgid "Contact's link"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:69
-msgctxt "link exchange: button – initiate pairing"
-msgid "Continue"
+#: ../data/ui/add_contact.ui:92
+msgctxt "add contact"
+msgid "Please enter a link"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:89
+#: ../data/ui/add_contact.ui:122
+msgctxt "add contact"
 msgid "Give your contact a nickname. Only you can see it."
 msgstr ""
 
-#: ../data/ui/add_contact.ui:99
-msgctxt "remote contact adding: alias input field"
+#: ../data/ui/add_contact.ui:142
+msgctxt "add contact"
 msgid "Enter a nickname"
 msgstr ""
 
-#: ../data/ui/add_contact.ui:110
-msgctxt "remote contact adding: button"
-msgid "Add Contact"
+#: ../data/ui/add_contact.ui:155
+msgctxt "add contact"
+msgid "The alias may not be empty"
 msgstr ""
 
-#: ../data/ui/chat.ui:33
-msgctxt "chat page: input field"
-msgid "Type Message"
+#: ../data/ui/add_contact.ui:207 ../data/ui/registration.ui:233
+msgid "Next"
+msgstr ""
+
+#: ../data/ui/add_contact.ui:227 ../data/ui/add_contact.ui:249
+msgid "Add contact"
 msgstr ""
 
 #: ../data/ui/login.ui:29 ../data/ui/registration.ui:110
+#: ../data/ui/registration.ui:253
 msgid "Password"
 msgstr "Contraseña"
 
@@ -60,6 +90,27 @@ msgstr ""
 msgid "Logging in"
 msgstr ""
 
+#: ../data/ui/main.ui:121
+msgctxt "chat page: input field"
+msgid "Type Message"
+msgstr ""
+
+#: ../data/ui/main.ui:167
+msgid "No contact selected"
+msgstr ""
+
+#: ../data/ui/main.ui:182
+msgid "Select a contact to start chatting"
+msgstr ""
+
+#: ../data/ui/main.ui:248
+msgid "Add"
+msgstr ""
+
+#: ../data/ui/main.ui:302 ../data/ui/main.ui:400 ../data/ui/main.ui:415
+msgid "Back"
+msgstr ""
+
 #: ../data/ui/registration.ui:40
 msgid "Welcome to Briar"
 msgstr ""
@@ -80,14 +131,6 @@ msgstr ""
 msgid "The passwords do not match"
 msgstr ""
 
-#: ../data/ui/registration.ui:233
-msgid "Next"
-msgstr ""
-
-#: ../data/ui/registration.ui:253
-msgid "Passwords"
-msgstr ""
-
 #: ../data/ui/registration.ui:275
 msgid "Create Account"
 msgstr ""
@@ -96,10 +139,22 @@ msgstr ""
 msgid "Creating Account"
 msgstr ""
 
-#: ../src/briar/gtk/containers/registration.py:137
+#: ../briar_gtk/containers/add_contact.py:68
+msgid "Please enter a link"
+msgstr ""
+
+#: ../briar_gtk/containers/add_contact.py:74
+msgid "Enter your contact's link, not your own"
+msgstr ""
+
+#: ../briar_gtk/containers/registration.py:137
 msgid "Couldn't register account"
 msgstr ""
 
+#: ../briar_gtk/widgets/private_message.py:26
+msgid "Myself"
+msgstr ""
+
 #~ msgctxt "registration page: password input field"
 #~ msgid "Choose your password"
 #~ msgstr "Elegir tu contraseña"
diff --git a/tools/generate_data.sh b/tools/generate_data.sh
index 8e1c16aa46e3af5ec8a30462d4bf50d8a95a952a..ae573f8bb22622a237805d1a03230b92a00f5f6b 100755
--- a/tools/generate_data.sh
+++ b/tools/generate_data.sh
@@ -34,7 +34,7 @@ function generate_po()
     cd briar-gtk/po
     # git pull https://www.transifex.com/otf/briar/
     >briar-gtk.pot
-    for file in ../data/app.briar.gtk.gschema.xml ../data/ui/*.ui $(find "../briar_gtk" -name '*.py');
+    for file in ../data/app.briar.gtk.appdata.xml.in ../data/ui/*.ui $(find "../briar_gtk" -name '*.py');
     do
         xgettext --from-code=UTF-8 -j $file -o briar-gtk.pot
     done