diff --git a/roles/collectd/tasks/main.yml b/roles/collectd/tasks/main.yml
index 034e803299384934dad8449281f98eedb88135af..082ea96fca59f1760ea50b2bd780414fa66d78e4 100644
--- a/roles/collectd/tasks/main.yml
+++ b/roles/collectd/tasks/main.yml
@@ -1,6 +1,16 @@
 ---
-- name: install collectd
-  yum: name=collectd state=installed
+- name: install collectd - CentOS
+  yum: name=collectd state=installed enablerepo=epel
+  when:
+   - '"CentOS" in ansible_distribution'
+  become: true
+  become_user: root
+
+- name: install collectd - RHEL7
+  yum: name=collectd state=installed enablerepo="Monash_University_EPEL7_EPEL_7_-_x86_64"
+  when:
+   - '"DGX" in ansible_product_name'
+   - '"RedHat" in ansible_distribution'
   become: true
   become_user: root
 
diff --git a/roles/extra_packages/tasks/main.yml b/roles/extra_packages/tasks/main.yml
index d601fb171c4d05d33b3ead0e7a07874e74f5f501..68e5226db7662f6be3b37ecafc4fa6c7764f08b2 100644
--- a/roles/extra_packages/tasks/main.yml
+++ b/roles/extra_packages/tasks/main.yml
@@ -5,20 +5,33 @@
 
 - name: "Clear yum cache"
   command: yum clean all
-  sudo: true
+  become: true
+  become_user: root
   when: ansible_os_family == 'RedHat'
 
 - name: "Clear yum pending transactions"
   command: yum-complete-transaction --cleanup-only
-  sudo: true
+  become: true
+  become_user: root 
   when: ansible_os_family == 'RedHat'
- 
+
 - name: "Install extra packages"
   yum: "name={{ item }} exclude={{ excludes|join(',') }} update_cache=yes state=present"
   with_items: "{{ extra_packages }}"
   become: true
   become_user: root
-  when: ansible_os_family == 'RedHat'
+  when:
+   - '"CentOS" in ansible_distribution'
+  register: result
+
+- name: "Install extra packages"
+  yum: "name={{ item }} exclude={{ excludes|join(',') }} update_cache=yes state=present enablerepo='Monash_University_EPEL7_EPEL_7_-_x86_64'"
+  with_items: "{{ extra_packages }}"
+  become: true
+  become_user: root
+  when: 
+   - '"DGX" in ansible_product_name'
+   - '"RedHat" in ansible_distribution'
   register: result
 
 - name: "Show yum install output"
diff --git a/roles/lmod/tasks/main.yml b/roles/lmod/tasks/main.yml
index 6de4165d9b8420283a6737db26140b9ddacd2f7a..0b7aec7b6ed8404ceed8ec60bf18f0e006468ce0 100644
--- a/roles/lmod/tasks/main.yml
+++ b/roles/lmod/tasks/main.yml
@@ -12,7 +12,24 @@
     - gcc
     - lua-devel
   sudo: true
-  when: ansible_os_family == 'RedHat'
+  when: 
+   - '"CentOS" in ansible_distribution'
+
+- name: install lua RHEL7
+  yum: name={{ item }} state=installed update_cache=yes enablerepo="Monash_University_EPEL7_EPEL_7_-_x86_64"
+  with_items:
+    - lua
+    - lua-filesystem
+    - lua-posix
+    - tcl
+    - rsync
+    - gcc
+    - lua-devel
+  sudo: true
+  when:
+  when:
+   - '"DGX" in ansible_product_name'
+   - '"RedHat" in ansible_distribution'
 
 - name: install lua debian
   apt: name={{ item }} state=installed
diff --git a/roles/vncserver/vars/RedHat_x86_64.yml b/roles/vncserver/vars/RedHat_x86_64.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0880aa2776c71ada625cd7f9b36dd9e5c57cf042
--- /dev/null
+++ b/roles/vncserver/vars/RedHat_x86_64.yml
@@ -0,0 +1,20 @@
+---
+ system_packages:
+   - tigervnc-server
+   - libXcomposite
+   - libXdamage
+   - mesa-libEGL
+   - mesa-libgbm
+   - harfbuzz
+   - mesa-libglapi
+   - graphite2
+   - xterm
+   - libpng
+   - xorg-x11-fonts-100dpi
+   - xorg-x11-fonts-75dpi
+   - xorg-x11-fonts-misc
+
+ system_group_packages:
+   - "mate-desktop-environment"
+   - "graphical-server-environment"
+