diff --git a/theme/Main.qml b/theme/Main.qml
index a0d105e..66f1772 100644
--- a/theme/Main.qml
+++ b/theme/Main.qml
@@ -56,11 +56,25 @@ Rectangle {
 		}
 	}
 
+	Background {
+		anchors.fill: parent
+		source: Qt.resolvedUrl(config.background)
+		fillMode: Image.PreserveAspectCrop
+		onStatusChanged: {
+			var defaultBackground = Qt.resolvedUrl(config.defaultBackground)
+			if (status == Image.Error && source != defaultBackground) {
+				source = defaultBackground
+			}
+		}
+	}
+
 	// Background
 	Rectangle {
 		anchors.fill: parent
-		color: "transparent"
-		//visible: primaryScreen
+		color: "#00000000"
+		//color: "#e6000000"
+		// ^ This matches hyprlock but it looks kinda bad :<
+		visible: primaryScreen
 
 		// Within that bg, we have a login box with everything in it
 		Rectangle {
diff --git a/theme/background.jpg b/theme/background.jpg
new file mode 100644
index 0000000..02b7ee6
Binary files /dev/null and b/theme/background.jpg differ