diff --git a/hosts/nixedo/services/homepage/default.nix b/hosts/nixedo/services/homepage/default.nix
index 2fa85b03..c41080e9 100644
--- a/hosts/nixedo/services/homepage/default.nix
+++ b/hosts/nixedo/services/homepage/default.nix
@@ -36,9 +36,18 @@ in
         openFirewall = true;
 
         customCSS = ''
+          #information-widgets {
+            padding-left: 1.5rem;
+            padding-right: 1.5rem;
+          }
+
           div#footer {
             display: none;
           }
+
+          .services-group {
+            margin-bottom: 3rem;
+          }
         '';
 
         services = (import ./services.nix { inherit config lib; });
@@ -46,12 +55,13 @@ in
         settings = {
           headerStyle = "clean";
           hideVersion = "true";
+          layout = (import ./layout.nix);
           statusStyle = "dot";
         };
-
-        widgets = import ./widgets.nix;
       };
 
+      glances.enable = true;
+
       nginx.virtualHosts.${cfg.url} = {
         forceSSL = true;
         useACMEHost = homelab.baseDomain;
diff --git a/hosts/nixedo/services/homepage/glances.nix b/hosts/nixedo/services/homepage/glances.nix
new file mode 100644
index 00000000..d1db758f
--- /dev/null
+++ b/hosts/nixedo/services/homepage/glances.nix
@@ -0,0 +1,57 @@
+{ config }:
+
+{
+  Glances =
+    let
+      port = toString config.services.glances.port;
+    in
+    [
+      {
+        Info = {
+          widget = {
+            type = "glances";
+            url = "http://localhost:${port}";
+            metric = "info";
+            chart = false;
+            version = 4;
+          };
+        };
+      }
+
+      {
+        "CPU Temp" = {
+          widget = {
+            type = "glances";
+            url = "http://localhost:${port}";
+            metric = "sensor:Package id 0";
+            chart = false;
+            version = 4;
+          };
+        };
+      }
+
+      {
+        Processes = {
+          widget = {
+            type = "glances";
+            url = "http://localhost:${port}";
+            metric = "process";
+            chart = false;
+            version = 4;
+          };
+        };
+      }
+
+      {
+        Network = {
+          widget = {
+            type = "glances";
+            url = "http://localhost:${port}";
+            metric = "network:enp0s13f0u1";
+            chart = false;
+            version = 4;
+          };
+        };
+      }
+    ];
+}
diff --git a/hosts/nixedo/services/homepage/layout.nix b/hosts/nixedo/services/homepage/layout.nix
new file mode 100644
index 00000000..b0b05b94
--- /dev/null
+++ b/hosts/nixedo/services/homepage/layout.nix
@@ -0,0 +1,23 @@
+[
+  {
+    Glances = {
+      columns = 4;
+      header = false;
+      style = "row";
+    };
+  }
+
+  {
+    Media = {
+      header = true;
+      style = "column";
+    };
+  }
+
+  {
+    Services = {
+      header = true;
+      style = "column";
+    };
+  }
+]
diff --git a/hosts/nixedo/services/homepage/services.nix b/hosts/nixedo/services/homepage/services.nix
index 196ac3a5..a0c3c232 100644
--- a/hosts/nixedo/services/homepage/services.nix
+++ b/hosts/nixedo/services/homepage/services.nix
@@ -29,4 +29,4 @@ let
         });
   });
 in
-services
+services ++ [ (import ./glances.nix { inherit config; }) ]
diff --git a/hosts/nixedo/services/homepage/widgets.nix b/hosts/nixedo/services/homepage/widgets.nix
deleted file mode 100644
index 3083ea71..00000000
--- a/hosts/nixedo/services/homepage/widgets.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-[
-  {
-    resources = {
-      cpu = true;
-      disk = "/";
-      memory = true;
-    };
-  }
-]