diff --git a/electron/main/backend/submitter.ts b/electron/main/backend/submitter.ts index 6397f9d1..752906e6 100644 --- a/electron/main/backend/submitter.ts +++ b/electron/main/backend/submitter.ts @@ -1420,8 +1420,9 @@ export function registerSubmitterHandlers( // arch 由前端解析 deb 时获取并传入,无需再次调用 dpkg-deb const debArch = String(dataObj.arch || "amd64"); const pkgVersion = String(dataObj.version || "0.0.0"); - const debPkgName = String(dataObj.pkgname || "unknown"); - const formFileName = `${debPkgName}_${pkgVersion}_${debArch}.deb`; + const debPkgName = String(dataObj.pkgname || "unknown").toLowerCase(); + const formFileName = + `${debPkgName}_${pkgVersion}_${debArch}.deb`.toLowerCase(); logger.info( { formFileName, debArch }, "[Submitter] Constructed file_name", @@ -1689,7 +1690,7 @@ export function registerSubmitterHandlers( } const dataObj = formData as Record; - const pkgname = String(dataObj.pkgname || ""); + const pkgname = String(dataObj.pkgname || "").toLowerCase(); const packageName = String(dataObj.name || ""); const packageVersion = String(dataObj.version || ""); const packageCategory = String(dataObj.category || ""); @@ -1880,7 +1881,8 @@ export function registerSubmitterHandlers( "[Submitter] Deb metadata parsed", ); - const packDebFileName = `${debPkgName}_${debVersion}_${debArch}.deb`; + const packDebFileName = + `${debPkgName}_${debVersion}_${debArch}.deb`.toLowerCase(); logger.info( { from: debFilePath, @@ -1931,7 +1933,7 @@ export function registerSubmitterHandlers( sendPackageProgress("tar", 85, "正在打包 tar.gz..."); logger.info("[Submitter] Starting tar..."); - const tarFileName = `${pkgname}-${storeArch}.tar.gz`; + const tarFileName = `${pkgname.toLowerCase()}-${storeArch.toLowerCase()}.tar.gz`; const tarOutputPath = path.join(baseTempDir, tarFileName); try { await execAsync( diff --git a/src/components/SubmitterWindow.vue b/src/components/SubmitterWindow.vue index c6ad0c71..fa0eb1a3 100644 --- a/src/components/SubmitterWindow.vue +++ b/src/components/SubmitterWindow.vue @@ -266,7 +266,10 @@ class="hidden" @change="handleScreenshotSelect" /> -

+

{{ mediaError }}

@@ -653,7 +656,9 @@
- 输出: {{ formData.pkgname }}-{{ arch.store }}.tar.gz + 输出: {{ formData.pkgname.toLowerCase() }}-{{ + arch.store + }}.tar.gz
@@ -908,7 +913,8 @@ const getHistoryArch = ( ): "amd64" | "arm64" | "loong64" | "other" => { if (store === "store" || store.startsWith("amd64-")) return "amd64"; if (store === "aarch64-store" || store.startsWith("arm64-")) return "arm64"; - if (store === "loong64-store" || store.startsWith("loong64-")) return "loong64"; + if (store === "loong64-store" || store.startsWith("loong64-")) + return "loong64"; return "other"; }; @@ -1138,7 +1144,11 @@ const updateFormTags = () => { }; const openSubmissionQueue = (): void => { - window.open("https://upload.spark-app.store/", "_blank", "noopener,noreferrer"); + window.open( + "https://upload.spark-app.store/", + "_blank", + "noopener,noreferrer", + ); }; const selectDebFile = async () => { @@ -1190,7 +1200,9 @@ const searchHistoryApp = async () => { console.log("[Submitter] availableArchs before:", availableArchs.value); console.log("[Submitter] showArchDialog before:", showArchDialog.value); - availableArchs.value = sortHistoryArchs(historyResult.data as HistoryArchInfo[]); + availableArchs.value = sortHistoryArchs( + historyResult.data as HistoryArchInfo[], + ); console.log("[Submitter] availableArchs after:", availableArchs.value); console.log( "[Submitter] availableArchs length:", @@ -1401,7 +1413,9 @@ const handleDrop = async (event: DragEvent) => { filePath = window.electronUtils.getPathForFile(file); console.log("[Submitter] File path from electronUtils:", filePath); } catch { - console.warn("[Submitter] electronUtils.getPathForFile failed, trying fallback"); + console.warn( + "[Submitter] electronUtils.getPathForFile failed, trying fallback", + ); const textUriList = event.dataTransfer?.getData("text/uri-list"); const textPlain = event.dataTransfer?.getData("text/plain"); filePath = textUriList || textPlain || ""; @@ -1504,8 +1518,7 @@ const selectIconFile = () => { const isPngFile = (file: File): boolean => { return ( - file.type === "image/png" || - (file.type === "" && /\.png$/i.test(file.name)) + file.type === "image/png" || (file.type === "" && /\.png$/i.test(file.name)) ); };