diff --git a/nixos/default.nix b/nixos/default.nix
index 5f893fda375d5f9b29c67beed225e71095dec72e..a5de97f8056395f1752e168efd8f31c90e469f2e 100644
--- a/nixos/default.nix
+++ b/nixos/default.nix
@@ -1,9 +1,14 @@
+# This is the entry point for my NixOS configuration.
+{ layers ? [] }:
 { lib, config, pkgs, ... }:
 
+let
+  layerImports = map (l: ./layers + "/${l}.nix") layers;
+in
 {
   imports = [
     ./modules
-  ];
+  ] ++ layerImports;
 
   nixpkgs.config = {
     packageOverrides = ( import ./pkgs ) { inherit lib config; } ;
diff --git a/nixos/layers/base.nix b/nixos/layers/base.nix
index e86ff1fca674868e93fbd628ba2b756d494f341f..5cfbecf888c9b072e05bf77898c7ca55f831ef0a 100644
--- a/nixos/layers/base.nix
+++ b/nixos/layers/base.nix
@@ -4,7 +4,6 @@
 
 {
   imports = [
-    ./..
     ./zsh.nix
   ];