diff --git a/manifests/unit_options.pp b/manifests/unit_options.pp
index 91fa8db027e94c567ccdc048d0de4d90bbe146e9..6989b482c1300bcf6488397810c9f1e1d17e1fbe 100644
--- a/manifests/unit_options.pp
+++ b/manifests/unit_options.pp
@@ -57,6 +57,7 @@ define systemd::unit_options(
 	$ensure='present',
 )
 {
+    include systemd::vars
     include systemd::daemon_reload
 
     if ($name =~ /^([^\/.]+)\.([^\/.]+)\/(.+)$/) {
@@ -69,8 +70,7 @@ define systemd::unit_options(
 	     " ``${name}''")
     }
 
-    $etcdir = '/etc/systemd/system'
-    $unitdir = "${etcdir}/${unitname}.${unittype}.d"
+    $unitdir = "${systemd::vars::etcdir}/${unitname}.${unittype}.d"
     $filepath = "${unitdir}/${filename}.conf"
 
     case $ensure
@@ -78,7 +78,7 @@ define systemd::unit_options(
 	'present': {
 	    cfgfile::directory_parents {
 		$filepath:
-		    top => $etcdir,
+		    top => $systemd::vars::etcdir,
 		    owner => 'root', group => 'root', mode => '0755';
 	    }
 	    file {
diff --git a/manifests/vars.pp b/manifests/vars.pp
new file mode 100644
index 0000000000000000000000000000000000000000..890a89c413862da23bc607d3c5c68b024b5c3061
--- /dev/null
+++ b/manifests/vars.pp
@@ -0,0 +1,12 @@
+# Copyright © 2021   Thomas Bellman, Linköping, Sweden
+# Licensed under the GNU LGPL v3+; see the README file for more information.
+
+
+/*
+ * Various constants (file paths, et.c).  Not overridable by users.
+ * Mostly intended for internal use.
+ */
+class systemd::vars
+{
+    $etcdir = '/etc/systemd/system'
+}