diff --git a/support/Makefile.devel b/support/Makefile.devel
index ccbec6b..db8f6de 100644
--- a/support/Makefile.devel
+++ b/support/Makefile.devel
@@ -6,6 +6,7 @@ M4 ?= m4
 SED ?= sed
 EINFO ?= echo
 PYTHON ?= python
+CUT ?= cut
 
 NAME ?= $(shell $(AWK) -F= '/^SELINUXTYPE/{ print $$2 }' /etc/selinux/config)
 SHAREDIR ?= /usr/share/selinux
@@ -115,6 +116,12 @@ cmodxml = $(cmods:.te=.xml)
 clayerxml= $(addsuffix .xml, $(addprefix tmp/, $(notdir $(clayers))))
 cmetaxml = $(foreach layer, $(notdir $(clayers)), $(HEADERDIR)/$(layer)/$(metaxml))
 
+# figure out what modules we may want to reload
+loaded_mods = $(addsuffix .pp,$(shell $(SEMODULE) -l | $(CUT) -f1))
+sys_mods = $(wildcard $(SHAREDIR)/$(NAME)/*.pp)
+match_sys = $(filter $(addprefix $(SHAREDIR)/$(NAME)/,$(loaded_mods)),$(sys_mods))
+match_loc = $(filter $(all_packages),$(loaded_mods))
+
 vpath %.te $(detected_layers)
 vpath %.if $(detected_layers)
 vpath %.fc $(detected_layers)
@@ -165,6 +172,14 @@ xml: $(polxml)
 
 ########################################
 #
+# Attempt to reinstall all installed packages
+#
+refresh:
+	@$(EINFO) "Refreshing $(NAME) modules"
+	$(verbose) $(SEMODULE) -b $(SHAREDIR)/$(NAME)/base.pp $(foreach mod,$(match_sys) $(match_loc),-i $(mod))
+
+########################################
+#
 # Load module packages
 #