diff --git a/src/App.tsx b/src/App.tsx index 817c22a..1fb15a9 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -310,7 +310,11 @@ export default function App({ children }: { children: React.ReactNode }) { console.log("Auto-update check already performed in this session, skipping"); return; } - // const isFlatpak = await invoke('is_flatpak'); + const isFlatpak = await invoke('is_flatpak'); + if (isFlatpak && (!linuxRegisteredVersion || linuxRegisteredVersion !== appVersion)) { + console.log("Flatpak registration not completed yet! Skipping yt-dlp auto-update..."); + return; + } // if (isFlatpak) { // console.log("Flatpak detected! Skipping yt-dlp auto-update"); // return; diff --git a/src/helpers/use-linux-registerer.ts b/src/helpers/use-linux-registerer.ts index 0544b8c..ea53ca6 100644 --- a/src/helpers/use-linux-registerer.ts +++ b/src/helpers/use-linux-registerer.ts @@ -4,6 +4,7 @@ import { useKvPairs } from "@/helpers/use-kvpairs"; import { useSettingsPageStatesStore } from "@/services/store"; import { Command } from "@tauri-apps/plugin-shell"; import { invoke } from "@tauri-apps/api/core"; +import { useYtDlpUpdater } from "@/helpers/use-ytdlp-updater"; interface FileMap { source: string; @@ -14,7 +15,9 @@ interface FileMap { export function useLinuxRegisterer() { const { saveKvPair } = useKvPairs(); + const { updateYtDlp } = useYtDlpUpdater(); const appVersion = useSettingsPageStatesStore(state => state.appVersion); + const setYtDlpVersion = useSettingsPageStatesStore((state) => state.setYtDlpVersion); const registerToLinux = async () => { try { @@ -103,6 +106,12 @@ export function useLinuxRegisterer() { } } saveKvPair('linux_registered_version', appVersion); + + if (isFlatpak) { + await updateYtDlp(); + setYtDlpVersion(null); + } + return { success: true, message: 'Registered successfully' } } catch (error) { console.error('Error copying files:', error);