@@ -87,21 +87,27 @@ factory-reset ACTION="prompt":
8787 dconf reset -f /
8888 echo ' Factory-reset of all Gidro-OS settings completed. Please restart your system.'
8989 elif [ " $OPTION" == " Factory-reset Gidro-OS modified settings only" ] || [ " ${OPTION,,}" == " settings-gidro-os" ]; then
90- gsettings reset org.gnome.desktop.app-folders.folder:/ org/ gnome/ desktop/ app-folders/ folders/ Utilities/ name
91- gsettings reset org.gnome.desktop.app-folders.folder:/ org/ gnome/ desktop/ app-folders/ folders/ Utilities/ apps
92- gsettings reset org.gnome.desktop.app-folders folder-children
93- gsettings reset org.gnome.desktop.background picture-options
94- gsettings reset org.gnome.desktop.background picture-uri
95- gsettings reset org.gnome.desktop.background picture-uri-dark
96- gsettings reset org.gnome.desktop.background primary-color
97- gsettings reset org.gnome.desktop.background secondary-color
98- gsettings reset org.gnome.desktop.input-sources sources
99- gsettings reset org.gnome.desktop.input-sources mru-sources
100- gsettings reset org.gnome.desktop.interface show-battery-percentage
101- gsettings reset org.gnome.desktop.peripherals.keyboard numlock-state
102- gsettings reset org.gnome.settings-daemon.plugins.power power-button-action
103- gsettings reset org.gnome.shell favorite-apps
104- gsettings reset org.gnome.system.locale region
90+ GSCHEMA_PRE_KEYS=($(read -gschema-keys " /usr/share/glib-2.0/schemas/zz1-gidro.gschema.override" " /usr/share/glib-2.0/schemas/zz2-bluebuild-wallpapers.gschema.override" ))
91+ # New array to hold merged elements
92+ GSCHEMA_KEYS=()
93+ # Loop through the original array
94+ for ((i=0; i<${#GSCHEMA_PRE_KEYS[@]}; i+ =2 )); do
95+ # Check if the next element exists
96+ if [[ $((i+ 1 )) -lt ${#GSCHEMA_PRE_KEYS[@]} ]]; then
97+ # Merge current and next element
98+ GSCHEMA_KEYS+ =(" ${GSCHEMA_PRE_KEYS[i]} ${GSCHEMA_PRE_KEYS[i+1]}" )
99+ else
100+ # If odd number of elements, add the last one as is
101+ GSCHEMA_KEYS+ =(" ${GSCHEMA_PRE_KEYS[i]}" )
102+ fi
103+ done
104+ DCONF_KEYS=($(read -gschema-keys " /etc/dconf/db/distro.d/01-gidro" ))
105+ for gschema_key in " ${GSCHEMA_KEYS[@]}" ; do
106+ gsettings reset " ${gschema_key}"
107+ done
108+ for dconf_key in " ${DCONF_KEYS[@]}" ; do
109+ dconf reset " ${dconf_key}"
110+ done
105111 # This is needed to reset system & user extensions
106112 dconf reset -f / org/ gnome/ shell / extensions/
107113 gsettings reset org.gnome.shell enabled-extensions
0 commit comments