diff --git a/lib/spack/spack/hooks/extensions.py b/lib/spack/spack/hooks/extensions.py
index 2cf506beed6acc4d7ccd2d811fac19e07e546347..718b24b9655d0d41f382ea2ea7ad3a215c4eb09c 100644
--- a/lib/spack/spack/hooks/extensions.py
+++ b/lib/spack/spack/hooks/extensions.py
@@ -27,7 +27,8 @@
 
 
 def post_install(pkg):
-    pkg.do_activate()
+    if pkg.is_extension:
+        pkg.do_activate()
 
 
 def pre_uninstall(pkg):
@@ -35,4 +36,5 @@ def pre_uninstall(pkg):
     # TODO: store full graph info in stored .spec file.
     pkg.spec.normalize()
 
-    pkg.do_deactivate()
+    if pkg.is_extension:
+        pkg.do_deactivate()