diff --git a/SOURCES/anaconda-centos-add-centos-install-class.patch b/SOURCES/anaconda-centos-add-centos-install-class.patch
new file mode 100644
index 0000000..89d64b5
--- /dev/null
+++ b/SOURCES/anaconda-centos-add-centos-install-class.patch
@@ -0,0 +1,104 @@
+diff -uNr anaconda-19.31.79__orig/pyanaconda/installclasses/centos.py anaconda-19.31.79/pyanaconda/installclasses/centos.py
+--- anaconda-19.31.79__orig/pyanaconda/installclasses/centos.py 1970-01-01 01:00:00.000000000 +0100
++++ anaconda-19.31.79/pyanaconda/installclasses/centos.py 2014-06-16 22:47:16.033891088 +0100
+@@ -0,0 +1,88 @@
++#
++# rhel.py
++#
++# Copyright (C) 2010 Red Hat, Inc. All rights reserved.
++#
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program. If not, see .
++#
++
++from pyanaconda.installclass import BaseInstallClass
++from pyanaconda.constants import *
++from pyanaconda.product import *
++from pyanaconda import network
++from pyanaconda import nm
++import types
++
++class InstallClass(BaseInstallClass):
++ # name has underscore used for mnemonics, strip if you dont need it
++ id = "centos"
++ name = N_("CentOS Linux")
++ sortPriority = 25000
++ if productName.startswith("Red Hat ") or productName.startswith("Fedora "):
++ hidden = 1
++
++ defaultFS = "xfs"
++
++ bootloaderTimeoutDefault = 5
++ bootloaderExtraArgs = []
++
++ ignoredPackages = ["ntfsprogs", "reiserfs-utils"]
++
++ installUpdates = False
++
++ _l10n_domain = "comps"
++
++ efi_dir = "redhat"
++
++ def configure(self, anaconda):
++ BaseInstallClass.configure(self, anaconda)
++ BaseInstallClass.setDefaultPartitioning(self, anaconda.storage)
++
++ # Set first boot policy regarding ONBOOT value
++ # (i.e. which network devices should be activated automatically after reboot)
++ # After switch root we set ONBOOT=no as default for all devices not activated
++ # in initramfs. Here, at the end of installation, we check and modify it eventually.
++ def setNetworkOnbootDefault(self, ksdata):
++ # if there is no device to be autoactivated after reboot
++ for devName in nm.nm_devices():
++ if nm.nm_device_type_is_wifi(devName):
++ continue
++ try:
++ onboot = nm.nm_device_setting_value(devName, "connection", "autoconnect")
++ except nm.SettingsNotFoundError:
++ continue
++ if not onboot == False:
++ return
++
++ # set ONBOOT=yes for the device used during installation
++ # (ie for majority of cases the one having the default route)
++ devName = network.default_route_device()
++ if not devName:
++ return
++ if nm.nm_device_type_is_wifi(devName):
++ return
++ ifcfg_path = network.find_ifcfg_file_of_device(devName, root_path=ROOT_PATH)
++ if not ifcfg_path:
++ return
++ ifcfg = network.IfcfgFile(ifcfg_path)
++ ifcfg.read()
++ ifcfg.set(('ONBOOT', 'yes'))
++ ifcfg.write()
++ for nd in ksdata.network.network:
++ if nd.device == devName:
++ nd.onboot = True
++ break
++
++ def __init__(self):
++ BaseInstallClass.__init__(self)
+diff -uNr anaconda-19.31.79__orig/pyanaconda/installclasses/fedora.py anaconda-19.31.79/pyanaconda/installclasses/fedora.py
+--- anaconda-19.31.79__orig/pyanaconda/installclasses/fedora.py 2014-04-29 01:45:59.000000000 +0100
++++ anaconda-19.31.79/pyanaconda/installclasses/fedora.py 2014-06-16 22:57:40.525890315 +0100
+@@ -31,7 +31,7 @@
+ id = "fedora"
+ name = N_("_Fedora")
+ sortPriority = 10000
+- if productName.startswith("Red Hat "):
++ if productName.startswith("Red Hat ") or productName.startswith("CentOS"):
+ hidden = 1
+
+ _l10n_domain = "anaconda"
diff --git a/SOURCES/anaconda-centos-bootfs-default-to-xfs.patch b/SOURCES/anaconda-centos-bootfs-default-to-xfs.patch
new file mode 100644
index 0000000..31432af
--- /dev/null
+++ b/SOURCES/anaconda-centos-bootfs-default-to-xfs.patch
@@ -0,0 +1,21 @@
+diff -uNr anaconda-19.31.79__orig/pyanaconda/bootloader.py anaconda-19.31.79/pyanaconda/bootloader.py
+--- anaconda-19.31.79__orig/pyanaconda/bootloader.py 2014-04-29 01:45:59.000000000 +0100
++++ anaconda-19.31.79/pyanaconda/bootloader.py 2014-06-30 17:19:19.197386280 +0100
+@@ -1404,7 +1404,7 @@
+
+ @property
+ def stage2_format_types(self):
+- if productName.startswith("Red Hat "):
++ if productName.startswith("Red Hat ") or productName.startswith("CentOS"):
+ return ["xfs", "ext4", "ext3", "ext2", "btrfs"]
+ else:
+ return ["ext4", "ext3", "ext2", "btrfs", "xfs"]
+@@ -2063,7 +2063,7 @@
+
+ @property
+ def stage2_format_types(self):
+- if productName.startswith("Red Hat "):
++ if productName.startswith("Red Hat ") or productName.startswith("CentOS"):
+ return ["xfs", "ext4", "ext3", "ext2"]
+ else:
+ return ["ext4", "ext3", "ext2", "xfs"]
diff --git a/SOURCES/anaconda-centos-disable-mirrors.patch b/SOURCES/anaconda-centos-disable-mirrors.patch
new file mode 100644
index 0000000..fb5b2eb
--- /dev/null
+++ b/SOURCES/anaconda-centos-disable-mirrors.patch
@@ -0,0 +1,15 @@
+diff -uNr anaconda-19.31.79__orig/pyanaconda/packaging/yumpayload.py anaconda-19.31.79/pyanaconda/packaging/yumpayload.py
+--- anaconda-19.31.79__orig/pyanaconda/packaging/yumpayload.py 2014-04-29 01:45:59.000000000 +0100
++++ anaconda-19.31.79/pyanaconda/packaging/yumpayload.py 2014-07-02 14:36:15.360488588 +0100
+@@ -428,7 +428,10 @@
+ @property
+ def mirrorEnabled(self):
+ with _yum_lock:
+- return "fastestmirror" in self._yum.plugins._plugins
++ if productName.startswith("CentOS"):
++ return 0
++ else:
++ return "fastestmirror" in self._yum.plugins._plugins
+
+ def getRepo(self, repo_id):
+ """ Return the yum repo object. """
diff --git a/SOURCES/anaconda-centos-efidir-centos.patch b/SOURCES/anaconda-centos-efidir-centos.patch
new file mode 100644
index 0000000..79d58f7
--- /dev/null
+++ b/SOURCES/anaconda-centos-efidir-centos.patch
@@ -0,0 +1,12 @@
+diff -uNr anaconda-19.31.79__orig/pyanaconda/installclasses/centos.py anaconda-19.31.79/pyanaconda/installclasses/centos.py
+--- anaconda-19.31.79__orig/pyanaconda/installclasses/centos.py 2014-06-30 17:13:18.111386761 +0100
++++ anaconda-19.31.79/pyanaconda/installclasses/centos.py 2014-06-30 17:13:43.071386726 +0100
+@@ -43,7 +43,7 @@
+
+ _l10n_domain = "comps"
+
+- efi_dir = "redhat"
++ efi_dir = "centos"
+
+ def configure(self, anaconda):
+ BaseInstallClass.configure(self, anaconda)
diff --git a/SOURCES/anaconda-centos-set-right-eula-location.patch b/SOURCES/anaconda-centos-set-right-eula-location.patch
new file mode 100644
index 0000000..e33eb4e
--- /dev/null
+++ b/SOURCES/anaconda-centos-set-right-eula-location.patch
@@ -0,0 +1,12 @@
+diff -uNr anaconda-19.31.79__orig/pyanaconda/constants.py anaconda-19.31.79/pyanaconda/constants.py
+--- anaconda-19.31.79__orig/pyanaconda/constants.py 2014-04-29 01:45:59.000000000 +0100
++++ anaconda-19.31.79/pyanaconda/constants.py 2014-06-18 23:42:35.944668381 +0100
+@@ -50,7 +50,7 @@
+ productArch = product.productArch
+ bugzillaUrl = product.bugUrl
+ isFinal = product.isFinal
+-eulaLocation = "/usr/share/redhat-release/EULA"
++eulaLocation = "/usr/share/centos-release/EULA"
+
+ # for use in device names, eg: "fedora", "rhel"
+ shortProductName = productName.lower()
diff --git a/SPECS/anaconda.spec b/SPECS/anaconda.spec
index dd70120..bfe9859 100644
--- a/SPECS/anaconda.spec
+++ b/SPECS/anaconda.spec
@@ -14,6 +14,11 @@ URL: http://fedoraproject.org/wiki/Anaconda
# ./autogen.sh
# make dist
Source0: %{name}-%{version}.tar.bz2
+Patch1: anaconda-centos-add-centos-install-class.patch
+Patch2: anaconda-centos-set-right-eula-location.patch
+Patch3: anaconda-centos-efidir-centos.patch
+Patch4: anaconda-centos-disable-mirrors.patch
+Patch5: anaconda-centos-bootfs-default-to-xfs.patch
# Versions of required components (done so we make sure the buildrequires
# match the requires versions of things).
@@ -226,6 +231,11 @@ runtime on NFS/HTTP/FTP servers or local disks.
%prep
%setup -q
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
%build
%configure --disable-static \
@@ -318,6 +328,13 @@ update-desktop-database &> /dev/null || :
%{_prefix}/libexec/anaconda/dd_*
%changelog
+* Mon Jul 31 2017 CentOS Sources - 21.48.22.121-1.el7.centos
+- Add CentOS install class as default
+- use the right path for the EULA string (issue 7165, bstinson)
+- use efi_dir = centos
+- disable the mirrorlist options
+- make boot part fs default to xfs
+
* Wed Jun 21 2017 Radek Vykydal - 21.48.22.121-1
- rpmostreepayload: Stub out payload methods which use `import rpm` (walters)
Related: rhbz#1462979