diff --git a/launcher/resources.qrc b/launcher/resources.qrc
index 967f754..ca9d2fc 100644
--- a/launcher/resources.qrc
+++ b/launcher/resources.qrc
@@ -8,6 +8,7 @@
ui/Pages/NewsPage.qml
ui/Pages/StatusPage.qml
ui/Settings/AccountSettings.qml
+ ui/Settings/DeveloperSettings.qml
ui/Settings/GeneralSettings.qml
ui/Settings/ProfileSettings.qml
ui/Settings/SettingsPage.qml
diff --git a/launcher/ui/Settings/DeveloperSettings.qml b/launcher/ui/Settings/DeveloperSettings.qml
new file mode 100644
index 0000000..a140c96
--- /dev/null
+++ b/launcher/ui/Settings/DeveloperSettings.qml
@@ -0,0 +1,35 @@
+// SPDX-FileCopyrightText: 2023 Joshua Goins
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+import QtQuick 2.15
+import QtQuick.Window 2.15
+import org.kde.kirigami 2.20 as Kirigami
+import QtQuick.Controls 2.15 as Controls
+import QtQuick.Layouts 1.15
+import org.kde.kirigamiaddons.labs.mobileform 0.1 as MobileForm
+import com.redstrate.astra 1.0
+
+import "../Components"
+
+Kirigami.ScrollablePage {
+ id: page
+
+ title: i18n("Developer Settings")
+
+ ColumnLayout {
+ width: parent.width
+
+ MobileForm.FormCard {
+ Layout.topMargin: Kirigami.Units.largeSpacing
+ Layout.fillWidth: true
+ contentItem: ColumnLayout {
+ spacing: 0
+
+ MobileForm.FormCheckDelegate {
+ text: i18n("Keep Patches")
+ description: i18n("Do not delete patches after they're used. Astra will not redownload patch data, if found.")
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/launcher/ui/Settings/SettingsPage.qml b/launcher/ui/Settings/SettingsPage.qml
index f91e1a8..985304e 100644
--- a/launcher/ui/Settings/SettingsPage.qml
+++ b/launcher/ui/Settings/SettingsPage.qml
@@ -116,6 +116,14 @@ Kirigami.ScrollablePage {
}
}
+ MobileForm.FormButtonDelegate {
+ text: i18n("Developer Settings")
+ icon.name: "configure"
+ onClicked: applicationWindow().pageStack.layers.push('qrc:/ui/Settings/DeveloperSettings.qml')
+ }
+
+ MobileForm.FormDelegateSeparator {}
+
MobileForm.FormButtonDelegate {
text: i18n("About Astra")
icon.name: "help-about-symbolic"