diff --git a/src/lib/persisted_state.js b/src/lib/persisted_state.js
index 007515cdc864e0862fde7b780cc6c17e52654582..c9eac91fb2151e2375bf3682154c0a6e1afe5e52 100644
--- a/src/lib/persisted_state.js
+++ b/src/lib/persisted_state.js
@@ -16,6 +16,7 @@ const saveImmedeatelyActions = [
   'markNotificationsAsSeen',
   'clearCurrentUser',
   'setCurrentUser',
+  'setHighlight',
   'setOption'
 ]
 
diff --git a/src/main.js b/src/main.js
index 23bd2cd38b03a296351ff9d4b3482b12f0b453eb..4e7b55bb1fa1353c972be8d9cb34d700eb201e0c 100644
--- a/src/main.js
+++ b/src/main.js
@@ -47,23 +47,7 @@ Vue.use(VueChatScroll)
 
 const persistedStateOptions = {
   paths: [
-    'config.collapseMessageWithSubject',
-    'config.hideAttachments',
-    'config.hideAttachmentsInConv',
-    'config.hideNsfw',
-    'config.replyVisibility',
-    'config.notificationVisibility',
-    'config.autoLoad',
-    'config.hoverPreview',
-    'config.streaming',
-    'config.muteWords',
-    'config.customTheme',
-    'config.highlight',
-    'config.loopVideo',
-    'config.loopVideoSilentOnly',
-    'config.pauseOnUnfocused',
-    'config.stopGifs',
-    'config.interfaceLanguage',
+    'config',
     'users.lastLoginName',
     'statuses.notifications.maxSavedId'
   ]
@@ -129,6 +113,8 @@ window.fetch('/api/statusnet/config.json')
       store.dispatch('setInstanceOption', { name: 'logo', value: logo })
       store.dispatch('setInstanceOption', { name: 'logoMask', value: logoMask })
       store.dispatch('setInstanceOption', { name: 'logoMargin', value: logoMargin })
+      store.dispatch('setInstanceOption', { name: 'redirectRootNoLogin', value: redirectRootNoLogin })
+      store.dispatch('setInstanceOption', { name: 'redirectRootLogin', value: redirectRootLogin })
       store.dispatch('setInstanceOption', { name: 'showInstanceSpecificPanel', value: showInstanceSpecificPanel })
       store.dispatch('setInstanceOption', { name: 'scopeOptionsEnabled', value: scopeOptionsEnabled })
       store.dispatch('setInstanceOption', { name: 'formattingOptionsEnabled', value: formattingOptionsEnabled })
diff --git a/src/modules/instance.js b/src/modules/instance.js
index 228cee4c982b70cb05dcdbf8985368e811e76740..a4fc965184059761595a727dd050db805ca923cf 100644
--- a/src/modules/instance.js
+++ b/src/modules/instance.js
@@ -1,6 +1,7 @@
 import { set } from 'vue'
 
 const defaultState = {
+  // Stuff from static/config.json and apiConfig
   name: 'Pleroma FE',
   registrationOpen: true,
   textlimit: 5000,
@@ -17,9 +18,19 @@ const defaultState = {
   formattingOptionsEnabled: false,
   collapseMessageWithSubject: false,
   disableChat: false,
+
   // Nasty stuff
   pleromaBackend: true,
+  emoji: [],
   customEmoji: [],
+
+  // Feature-set, apparently, not everything here is reported...
+  mediaProxyAvailable: false,
+  chatAvailable: false,
+  gopherAvailable: false,
+  suggestionsEnabled: false,
+  suggestionsWeb: '',
+
   // Html stuff
   instanceSpecificPanelContent: '',
   tos: ''