diff --git a/configuration.nix b/configuration.nix
index f824f93760bcaa9484819a8fe6027ce91276a8c6..76097d3725fe29cce2714fa08034c43a1360d321 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -5,7 +5,12 @@
 let
   installResult = builtins.fromJSON (builtins.readFile (path + "/install-result.json"));
   dotfilesConfig = import (path + "/dotfiles.nix");
-  layerImports = map (l: ./layers + "/${l}.nix") dotfilesConfig.layers;
+  layerPath = layerName: let
+    filePath = ./layers + "/${layerName}.nix";
+    dirPath = ./layers + "/${layerName}";
+  in
+    if builtins.pathExists filePath then filePath else dirPath;
+  layerImports = map layerPath dotfilesConfig.layers;
 in
 ({
   imports = [