diff --git a/playbooks/roles/common/tasks/main.yml b/playbooks/roles/common/tasks/main.yml
index 6dcbbde..0dd404c 100644
--- a/playbooks/roles/common/tasks/main.yml
+++ b/playbooks/roles/common/tasks/main.yml
@@ -9,7 +9,7 @@
     - "install:configuration"
 
 # ubuntu
-- stat: 
+- stat:
     path: "/usr/sbin/update-ca-certificates"
   register: update_ca_certificates
 
@@ -52,25 +52,22 @@
   when: ansible_distribution in common_debian_variants
 
 
-# Ensure that we get the latest version of python 2.7
-- name: add edx ppa apt key
+# Ensure that we can install old software if need be.
+- name: Add edX PPA apt key
   apt_key:
     id: "{{ COMMON_EDX_PPA_KEY_ID }}"
     keyserver: "{{ COMMON_EDX_PPA_KEY_SERVER }}"
     state: "present"
   when: >
-    ansible_distribution in common_debian_variants and
-    ansible_distribution_release in common_custom_ppa_releases
+    ansible_distribution in common_debian_variants
 
 - name: Add custom edX PPA
-# Ensure that we get a current version of Git and latest version of python 2.7
-# GitHub requires version 1.7.10 or later
-# https://help.github.com/articles/https-cloning-errors
+  # Ensure that we get the latest version of python 2.7
+  # MySQL 5.6 is from our own PPA: https://bugs.mysql.com/bug.php?id=84848
   apt_repository:
     repo: "{{ COMMON_EDX_PPA }}"
   when: >
-    ansible_distribution in common_debian_variants and
-    ansible_distribution_release in common_custom_ppa_releases
+    ansible_distribution in common_debian_variants
 
 
 - name: Install role-independent useful system packages
@@ -78,7 +75,7 @@
   apt:
     name: "{{ item }}"
     install_recommends: yes
-    state: present 
+    state: present
     update_cache: yes
   with_items: "{{ common_debian_pkgs }}"
   when: ansible_distribution in common_debian_variants
@@ -89,15 +86,15 @@
     install_recommends: yes
     state: present
     update_cache: yes
-  with_items: "{{ common_custom_debian_pkgs }}"
+  with_items: "{{ old_python_debian_pkgs }}"
   when: >
-    ansible_distribution in common_debian_variants and 
-    ansible_distribution_release in common_custom_ppa_releases
+    ansible_distribution in common_debian_variants and
+    ansible_distribution_release in old_python_ppa_releases
 
 - name: Install role-independent useful system packages
   yum:
     name: "{{ item }}"
-    state: present 
+    state: present
     update_cache: yes
   with_items: "{{ common_redhat_pkgs }}"
   when: ansible_distribution in common_redhat_variants
@@ -106,24 +103,24 @@
 - name: Create common directories
   file:
     path: "{{ item.path }}"
-    state: "{{ item.state | default('directory') }}" 
+    state: "{{ item.state | default('directory') }}"
     owner: "{{ item.owner | default('root') }}"
-    group: "{{ item.group | default('root') }}" 
+    group: "{{ item.group | default('root') }}"
     mode: "0755"
   with_items: "{{ common_directories }}"
 
 - name: upload sudo config for key forwarding as root
   copy:
-    src: ssh_key_forward 
+    src: ssh_key_forward
     dest: /etc/sudoers.d/ssh_key_forward
-    validate: 'visudo -c -f %s' 
-    owner: root 
-    group: root 
+    validate: 'visudo -c -f %s'
+    owner: root
+    group: root
     mode: "0440"
 
 - name: pip install virtualenv
   pip:
-    name: "{{ item }}" 
+    name: "{{ item }}"
     state: present
     extra_args: "-i {{ COMMON_PYPI_MIRROR_URL }}"
   with_items: "{{ common_pip_pkgs }}"
@@ -131,8 +128,8 @@
 
 
 - name: update /etc/hosts
-  template: 
-    src: hosts.j2 
+  template:
+    src: hosts.j2
     dest: /etc/hosts
   when: COMMON_HOSTNAME|length > 0
   register: etc_hosts
@@ -152,8 +149,8 @@
   template:
     dest: "{{ item.dest }}"
     src: "{{ item.src }}"
-    owner: root 
-    group: root 
+    owner: root
+    group: root
     mode: "{{ item.mode | default(0644) }}"
   register: config_templates
   with_items:
@@ -165,8 +162,8 @@
   # TODO: restarts no matter which template has changed, need to examine
   # the results
 - name: restart rsyslogd
-  service: 
-    name: rsyslog 
+  service:
+    name: rsyslog
     state: restarted
   become: True
   when: config_templates.changed
diff --git a/playbooks/roles/common_vars/defaults/main.yml b/playbooks/roles/common_vars/defaults/main.yml
index 974f88a..5df4444 100644
--- a/playbooks/roles/common_vars/defaults/main.yml
+++ b/playbooks/roles/common_vars/defaults/main.yml
@@ -119,7 +119,7 @@ common_debian_pkgs:
   - python2.7-dev
 
 # Packages that should be installed from our custom PPA, i.e. COMMON_EDX_PPA
-common_custom_debian_pkgs:
+old_python_debian_pkgs:
   - "python2.7=2.7.10-0+{{ ansible_distribution_release }}1"
 
 common_pip_pkgs:
@@ -153,8 +153,8 @@ common_debian_variants:
   - Ubuntu
   - Debian
 
-# Only attempt to use our custom PPA for these releases
-common_custom_ppa_releases:
+# We only have to install old Python for these releases:
+old_python_ppa_releases:
   - precise
   - trusty
 
diff --git a/playbooks/roles/mysql/tasks/mysql.yml b/playbooks/roles/mysql/tasks/mysql.yml
index cdc3701..7f505b4 100644
--- a/playbooks/roles/mysql/tasks/mysql.yml
+++ b/playbooks/roles/mysql/tasks/mysql.yml
@@ -3,7 +3,7 @@
 #
 # - downloaded the mysql-apt-repo from the mysql official site(named: mysql-apt-config_0.6.0-1_all.deb)
 # - Find the `debconf` setting information after installing this `deb` package
-# 
+#
 # # debconf-show mysql-apt-config
 # * mysql-apt-config/select-server: mysql-5.6
 #   mysql-apt-config/unsupported-platform: abort
@@ -11,9 +11,9 @@
 # * mysql-apt-config/select-product: Apply
 #   mysql-apt-config/select-tools:
 #   mysql-apt-config/repo-distro: ubuntu
-# 
+#
 # - Even to get more information about the `debconf` options of the package:
-# 
+#
 # # debconf-get-selections|grep mysql-apt-config
 # mysql-apt-config  mysql-apt-config/select-server  select  mysql-5.6
 # mysql-apt-config  mysql-apt-config/unsupported-platform select  abort
@@ -21,17 +21,17 @@
 # mysql-apt-config  mysql-apt-config/select-product select  Apply
 # mysql-apt-config  mysql-apt-config/select-tools select
 # mysql-apt-config  mysql-apt-config/repo-distro  select  ubuntu
-# 
-# - After the installation, I have checked the `/etc/apt/sources.list.d` directory and found one file `mysql.list` 
+#
+# - After the installation, I have checked the `/etc/apt/sources.list.d` directory and found one file `mysql.list`
 # with following contents:
-# 
+#
 # deb http://repo.mysql.com/apt/ubuntu/ precise mysql-apt-config
 # deb http://repo.mysql.com/apt/ubuntu/ precise mysql-5.6
 # deb-src http://repo.mysql.com/apt/ubuntu/ precise mysql-5.6
-# 
 #
-# Thought that instead of performing all those steps and get the repo, why not directly use this repo 
-# `deb http://repo.mysql.com/apt/ubuntu/ precise mysql-5.6`, I just picked this line and directly used it and it worked for us. 
+#
+# Thought that instead of performing all those steps and get the repo, why not directly use this repo
+# `deb http://repo.mysql.com/apt/ubuntu/ precise mysql-5.6`, I just picked this line and directly used it and it worked for us.
 
 - name: Add MySQL community apt key
   apt_key:
@@ -49,29 +49,22 @@
     update_cache: yes
   when: ansible_distribution_release == 'precise'
 
-# repo.mysql.com does not have 5.6 packages for xenial
-- name: Install MySQL from ondrej PPA
-  apt_repository:
-    repo: "ppa:ondrej/mysql-5.6"
-    update_cache: yes
-  when: ansible_distribution_release == 'xenial'
-
 - name: Install mysql-5.6 and dependencies
-  apt: 
-    name: "{{ item }}" 
+  apt:
+    name: "{{ item }}"
     install_recommends: yes
     state: present
   with_items: "{{ mysql_debian_pkgs }}"
 
 - name: Start mysql
-  service: 
-    name: mysql 
+  service:
+    name: mysql
     state: started
 
 - name: Ensure Anonymous user(s) does not exist
-  mysql_user: 
-    name: '' 
-    host: "{{ item }}" 
+  mysql_user:
+    name: ''
+    host: "{{ item }}"
     state: absent
   with_items:
     - localhost
diff --git a/util/install/ansible-bootstrap.sh b/util/install/ansible-bootstrap.sh
index 5ed54ca..aee46ad 100755
--- a/util/install/ansible-bootstrap.sh
+++ b/util/install/ansible-bootstrap.sh
@@ -107,13 +107,9 @@ apt-get install -y software-properties-common python-software-properties
 # Add git PPA
 add-apt-repository -y ppa:git-core/ppa
 
-# For older distributions we need to install a PPA for Python 2.7.10
-if [[ "precise" = "${SHORT_DIST}" || "trusty" = "${SHORT_DIST}" ]]; then
-
-    # Add python PPA
-    apt-key adv --keyserver "${EDX_PPA_KEY_SERVER}" --recv-keys "${EDX_PPA_KEY_ID}"
-    add-apt-repository -y "${EDX_PPA}"
-fi
+# For older software we need to install our own PPA.
+apt-key adv --keyserver "${EDX_PPA_KEY_SERVER}" --recv-keys "${EDX_PPA_KEY_ID}"
+add-apt-repository -y "${EDX_PPA}"
 
 # Install python 2.7 latest, git and other common requirements
 # NOTE: This will install the latest version of python 2.7 and