diff --git a/desktop/src-tauri/Cargo.lock b/desktop/src-tauri/Cargo.lock
index 5afb096..763e80c 100644
--- a/desktop/src-tauri/Cargo.lock
+++ b/desktop/src-tauri/Cargo.lock
@@ -2044,6 +2044,7 @@ dependencies = [
"anyhow",
"axum",
"bstr",
+ "futures",
"gethostname",
"http 1.1.0",
"httparse",
diff --git a/desktop/src-tauri/src/config.rs b/desktop/src-tauri/src/config.rs
index bb6dc90..6bea696 100644
--- a/desktop/src-tauri/src/config.rs
+++ b/desktop/src-tauri/src/config.rs
@@ -143,6 +143,10 @@ pub struct RqbitDesktopConfigUpnp {
#[serde(default)]
pub struct RqbitDesktopConfig {
pub default_download_location: PathBuf,
+
+ #[serde(default)]
+ pub disable_upload: bool,
+
pub dht: RqbitDesktopConfigDht,
pub tcp_listen: RqbitDesktopConfigTcpListen,
pub upnp: RqbitDesktopConfigUpnp,
@@ -167,6 +171,7 @@ impl Default for RqbitDesktopConfig {
persistence: Default::default(),
peer_opts: Default::default(),
http_api: Default::default(),
+ disable_upload: false,
}
}
}
diff --git a/desktop/src/configuration.tsx b/desktop/src/configuration.tsx
index 80f7677..93ee11c 100644
--- a/desktop/src/configuration.tsx
+++ b/desktop/src/configuration.tsx
@@ -41,6 +41,7 @@ interface RqbitDesktopConfigUpnp {
export interface RqbitDesktopConfig {
default_download_location: PathLike;
+ disable_upload: boolean;
dht: RqbitDesktopConfigDht;
tcp_listen: RqbitDesktopConfigTcpListen;
upnp: RqbitDesktopConfigUpnp;
diff --git a/desktop/src/configure.tsx b/desktop/src/configure.tsx
index bfe68de..6dfc723 100644
--- a/desktop/src/configure.tsx
+++ b/desktop/src/configure.tsx
@@ -210,6 +210,16 @@ export const ConfigModal: React.FC<{
onChange={handleInputChange}
help="Where to download torrents by default. You can override this per torrent."
/>
+
+