config() {
  NEW="$1"
  OLD="$(dirname $NEW)/$(basename $NEW .new)"
  if [ ! -r $OLD ]; then
    mv $NEW $OLD
  elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
    rm $NEW
  fi
}

config etc/gdm/custom.conf.new

if [ -e usr/share/glib-2.0/schemas ]; then
  if [ -x /usr/bin/glib-compile-schemas ]; then
    /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
  fi
fi

if ! grep -q 'pipewire-enable\.sh' etc/rc.d/rc.local; then
  cat << EOF >> etc/rc.d/rc.local
# Start Updating Pipewire:
if [ -x /usr/sbin/pipewire-enable.sh ]; then
  echo "Updating Pipewire: /usr/sbin/pipewire-enable.sh &"
  /usr/sbin/pipewire-enable.sh
fi
EOF
fi

if ! grep -q 'X-GNOME-Autostart-Phase' etc/rc.d/rc.local; then
  cat << EOF >> etc/rc.d/rc.local
if grep -q '^X-GNOME-Autostart-Phase=' /etc/xdg/autostart/*.desktop; then
  echo "==> Patching autostart desktop files: disabling X-GNOME-Autostart-Phase..."
  sed -i 's/^X-GNOME-Autostart-Phase=.*/#&/' /etc/xdg/autostart/*.desktop
fi
EOF
fi
( cd usr/lib64 ; rm -rf libgdm.so )
( cd usr/lib64 ; ln -sf libgdm.so.1 libgdm.so )
( cd usr/lib64 ; rm -rf libgdm.so.1 )
( cd usr/lib64 ; ln -sf libgdm.so.1.0.0 libgdm.so.1 )
