diff --git a/erpnext/patches/v8_1/delete_deprecated_reports.py b/erpnext/patches/v8_1/delete_deprecated_reports.py
index 7e86131..9047d84 100644
--- a/erpnext/patches/v8_1/delete_deprecated_reports.py
+++ b/erpnext/patches/v8_1/delete_deprecated_reports.py
@@ -15,17 +15,40 @@
 	for report in reports:
 		if frappe.db.exists("Report", report):
 			check_and_update_desktop_icon_for_report(report)
+			check_and_update_auto_email_report(report)
+			frappe.db.commit()
+
 			frappe.delete_doc("Report", report, ignore_permissions=True)
 
 def check_and_update_desktop_icon_for_report(report):
-	""" delete desktop icon for deprecated desktop icon and update the _report for Addresses And Contacts"""
+	""" delete or update desktop icon"""
+	desktop_icons = frappe.db.sql_list("""select name from `tabDesktop Icon`
+		where _report='{0}'""".format(report))
+
+	if not desktop_icons:
+		return
 
 	if report == "Monthly Salary Register":
-		frappe.delete_doc("Desktop Icon", report)
+		for icon in desktop_icons:
+			frappe.delete_doc("Desktop Icon", icon)
 
 	elif report in ["Customer Addresses And Contacts", "Supplier Addresses And Contacts"]:
-		name = frappe.db.get_value("Desktop Icon", {"_report": report})
-		if name:
-			frappe.db.set_value("Desktop Icon", name, "_report", "Addresses And Contacts")
+		frappe.db.sql("""update `tabDesktop Icon` set _report='{value}'
+			where name in ({docnames})""".format(
+				value=report,
+				docnames=",".join(["'%s'"%icon for icon in desktop_icons])
+			)
+		)
 
-	frappe.db.commit()
+def check_and_update_auto_email_report(report):
+	""" delete or update auto email report for deprecated report """
+
+	auto_email_report = frappe.db.get_value("Auto Email Report", {"report": report})
+	if not auto_email_report:
+		return
+
+	if report == "Monthly Salary Register":
+		frappe.delete_doc("Auto Email Report", auto_email_report)
+
+	elif report in ["Customer Addresses And Contacts", "Supplier Addresses And Contacts"]:
+		frapppe.db.set_value("Auto Email Report", auto_email_report, "report", report)
\ No newline at end of file
diff --git a/erpnext/patches/v8_1/setup_gst_india.py b/erpnext/patches/v8_1/setup_gst_india.py
index 374c738..1b319f9 100644
--- a/erpnext/patches/v8_1/setup_gst_india.py
+++ b/erpnext/patches/v8_1/setup_gst_india.py
@@ -18,7 +18,7 @@
 
 def delete_custom_field_tax_id_if_exists():
 	for field in frappe.db.sql_list("""select name from `tabCustom Field` where fieldname='tax_id'
-		and dt in ('Sales Order', 'Salse Invoice', 'Delivery Note')"""):
+		and dt in ('Sales Order', 'Sales Invoice', 'Delivery Note')"""):
 		frappe.delete_doc("Custom Field", field, ignore_permissions=True)
 		frappe.db.commit()
 
diff --git a/erpnext/setup/setup_wizard/setup_wizard.py b/erpnext/setup/setup_wizard/setup_wizard.py
index 47e64d7..5c7697e 100644
--- a/erpnext/setup/setup_wizard/setup_wizard.py
+++ b/erpnext/setup/setup_wizard/setup_wizard.py
@@ -196,7 +196,7 @@
 	hr_settings.save()
 
 	domain_settings = frappe.get_doc("Domain Settings")
-	domain_settings.append('active_domains', dict(domain=args.domain))
+	domain_settings.append('active_domains', dict(domain=_(args.domain)))
 	domain_settings.save()
 
 def create_feed_and_todo():
