From 386cb04a365e09db67bf3655e77e05dd2b50f55e Mon Sep 17 00:00:00 2001 From: ProfiiDev <92174452+Profiidev@users.noreply.github.com> Date: Sat, 9 May 2026 08:54:15 +0200 Subject: [PATCH 1/4] fix: nvidia sync --- .envrc | 1 + app/src-tauri/src/lib.rs | 22 ++++++++++++++++++---- app/src-tauri/src/settings.rs | 2 +- devenv.nix | 4 ++++ flake.nix | 1 + 5 files changed, 25 insertions(+), 5 deletions(-) diff --git a/.envrc b/.envrc index dbd5ca9..e3eefe2 100644 --- a/.envrc +++ b/.envrc @@ -1,3 +1,4 @@ export DIRENV_WARN_TIMEOUT=20s +export __NV_DISABLE_EXPLICIT_SYNC=1 eval "$(devenv direnvrc)" use devenv diff --git a/app/src-tauri/src/lib.rs b/app/src-tauri/src/lib.rs index 1c6c995..20de0a3 100644 --- a/app/src-tauri/src/lib.rs +++ b/app/src-tauri/src/lib.rs @@ -20,7 +20,7 @@ use profiles::commands::{ profile_repair, profile_runs_list, profile_update, profile_update_icon, }; use settings::{settings_get, settings_set}; -use tauri::{AppHandle, Emitter, Manager, webview::PageLoadEvent}; +use tauri::{AppHandle, Emitter, Manager, Url, webview::PageLoadEvent}; use tauri_plugin_log::{RotationStrategy, Target, TargetKind, TimezoneStrategy}; use tokio::sync::Mutex; use versions::{ @@ -30,7 +30,7 @@ use versions::{ use crate::{ offline::{MANIFEST_REFRESH_ERROR, OfflineState, is_offline, try_reconnect}, - settings::{MaxMem, SettingsExt}, + settings::{MaxMem, SETTINGS_KEY, SettingsExt}, utils::{log::ResultLogExt, updater::default_client}, versions::{event::UpdateLimiterStore, loader::LoaderType, paths::MCVersionPath}, }; @@ -153,16 +153,30 @@ pub fn run() { if view.label() == "main" && payload.event() == PageLoadEvent::Started && let Ok(current_url) = view.url() - && let Ok(settings) = view.app_handle().app_settings() + && let Ok(mut settings) = view.app_handle().app_settings() && let Some(url) = settings.url && url != current_url { #[cfg(debug_assertions)] if url.scheme() == "tauri" { + let url = Url::parse("http://localhost:1420").unwrap(); + settings.url = Some(url.clone()); + let _ = view.navigate(url); + + if let Ok(store) = view.app_handle().app_store() { + let _ = store.set(SETTINGS_KEY, &settings); + } return; } #[cfg(not(debug_assertions))] - if url.scheme() != "http" && url.scheme() != "https" { + if url.scheme() == "http" || url.scheme() == "https" { + let url = Url::parse("tauri://localhost").unwrap(); + settings.url = Some(url.clone()); + let _ = view.navigate(url); + + if let Ok(store) = view.app_handle().app_store() { + let _ = store.set(SETTINGS_KEY, &settings); + } return; } let _ = view.navigate(url); diff --git a/app/src-tauri/src/settings.rs b/app/src-tauri/src/settings.rs index ba6ee16..0715187 100644 --- a/app/src-tauri/src/settings.rs +++ b/app/src-tauri/src/settings.rs @@ -8,7 +8,7 @@ use crate::{ utils::updater::{UpdateType, update_data}, }; -const SETTINGS_KEY: &str = "settings"; +pub const SETTINGS_KEY: &str = "settings"; pub struct MaxMem { max_mem: u64, diff --git a/devenv.nix b/devenv.nix index ebf05df..05bee32 100644 --- a/devenv.nix +++ b/devenv.nix @@ -47,6 +47,8 @@ let webkitgtk_4_1 wayland libxkbcommon + glib-networking + gsettings-desktop-schemas ]; in { @@ -73,6 +75,8 @@ in }; env = { + XDG_DATA_DIRS = "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:$XDG_DATA_DIRS"; + GIO_MODULE_DIR = "${pkgs.glib-networking}/lib/gio/modules"; LD_LIBRARY_PATH = "${lib.makeLibraryPath mcLibs}:$LD_LIBRARY_PATH"; }; } diff --git a/flake.nix b/flake.nix index bca49b4..0ebc3ee 100644 --- a/flake.nix +++ b/flake.nix @@ -137,6 +137,7 @@ ${pkgs.lib.optionalString pkgs.stdenv.hostPlatform.isLinux '' --prefix PATH : ${pkgs.lib.makeBinPath [ pkgs.xrandr ]} --set LD_LIBRARY_PATH ${runtimeDependencies} + --set __NV_DISABLE_EXPLICIT_SYNC 1 ''} ) From b8ae257f5abcad13e8a35cabc95a31afa2a236db Mon Sep 17 00:00:00 2001 From: ProfiiDev <92174452+Profiidev@users.noreply.github.com> Date: Sat, 9 May 2026 09:02:14 +0200 Subject: [PATCH 2/4] fix: new java runtime --- app/src-tauri/src/versions/download/manifest.rs | 1 + app/src-tauri/src/versions/meta/java.rs | 2 ++ app/src/routes/profiles/info/+layout.svelte | 8 ++++---- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src-tauri/src/versions/download/manifest.rs b/app/src-tauri/src/versions/download/manifest.rs index 7a3fd55..1d9a5e4 100644 --- a/app/src-tauri/src/versions/download/manifest.rs +++ b/app/src-tauri/src/versions/download/manifest.rs @@ -91,6 +91,7 @@ pub async fn check_java_manifest( Component::JavaRuntimeAlpha => &version.java_runtime_alpha, Component::JavaRuntimeBeta => &version.java_runtime_beta, Component::JavaRuntimeDelta => &version.java_runtime_delta, + Component::JavaRuntimeEpsilon => &version.java_runtime_epsilon, Component::JavaRuntimeGamma => &version.java_runtime_gamma, Component::JavaRuntimeGammaSnapshot => &version.java_runtime_gamma_snapshot, Component::JreLegacy => &version.jre_legacy, diff --git a/app/src-tauri/src/versions/meta/java.rs b/app/src-tauri/src/versions/meta/java.rs index 3f456cc..817b2be 100644 --- a/app/src-tauri/src/versions/meta/java.rs +++ b/app/src-tauri/src/versions/meta/java.rs @@ -29,6 +29,7 @@ pub enum Component { JavaRuntimeAlpha, JavaRuntimeBeta, JavaRuntimeDelta, + JavaRuntimeEpsilon, JavaRuntimeGamma, JavaRuntimeGammaSnapshot, JreLegacy, @@ -99,6 +100,7 @@ pub struct PlatformVersion { pub java_runtime_alpha: Vec, pub java_runtime_beta: Vec, pub java_runtime_delta: Vec, + pub java_runtime_epsilon: Vec, pub java_runtime_gamma: Vec, pub java_runtime_gamma_snapshot: Vec, pub jre_legacy: Vec, diff --git a/app/src/routes/profiles/info/+layout.svelte b/app/src/routes/profiles/info/+layout.svelte index 6be11f4..0d377a7 100644 --- a/app/src/routes/profiles/info/+layout.svelte +++ b/app/src/routes/profiles/info/+layout.svelte @@ -124,10 +124,10 @@ {/snippet} - + profile_open_path(profile.id)} - class="cursor-pointer" + class="cursor-pointer text-nowrap" > Open Directory Repair Profile (deleteOpen = true)} > From f8aa4d633175bbb1994495c44a510e60f9ee40e8 Mon Sep 17 00:00:00 2001 From: ProfiiDev <92174452+Profiidev@users.noreply.github.com> Date: Sat, 9 May 2026 09:03:31 +0200 Subject: [PATCH 3/4] fix: set active account the new login when no active account was set before --- app/src-tauri/src/account/store.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/src-tauri/src/account/store.rs b/app/src-tauri/src/account/store.rs index 430d162..4c61b1f 100644 --- a/app/src-tauri/src/account/store.rs +++ b/app/src-tauri/src/account/store.rs @@ -173,6 +173,10 @@ impl AccountStore { .accounts .insert(profile.id.clone(), Some(AccountInfo { auth, profile })); + if self.active.is_empty() { + self.active = profile.id.clone(); + } + self.save()?; update_data(&self.handle, UpdateType::Accounts); From aabe3b21ff2dfb56537c16f43bf5ddfa54e63545 Mon Sep 17 00:00:00 2001 From: ProfiiDev <92174452+Profiidev@users.noreply.github.com> Date: Sat, 9 May 2026 09:30:11 +0200 Subject: [PATCH 4/4] fix: moved value --- app/src-tauri/src/account/store.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src-tauri/src/account/store.rs b/app/src-tauri/src/account/store.rs index 4c61b1f..e0bb7a0 100644 --- a/app/src-tauri/src/account/store.rs +++ b/app/src-tauri/src/account/store.rs @@ -169,14 +169,14 @@ impl AccountStore { let auth = ms_mc_login(&self.client, &self.handle).await?; let profile = get_profile_info(&self.client, &auth.mc_token).await?; - self - .accounts - .insert(profile.id.clone(), Some(AccountInfo { auth, profile })); - if self.active.is_empty() { self.active = profile.id.clone(); } + self + .accounts + .insert(profile.id.clone(), Some(AccountInfo { auth, profile })); + self.save()?; update_data(&self.handle, UpdateType::Accounts);