From 7f309800e5553e230fe5d452db60408ed808beb2 Mon Sep 17 00:00:00 2001 From: Krystie Date: Mon, 22 Jun 2026 20:13:05 -0700 Subject: [PATCH] distribute: fix WinGet manifest path casing + folder structure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PUBLISHER_INITIAL was hardcoded to 'C' but the winget-pkgs convention requires lowercase 'c' for the first-letter prefix folder. Additionally, the manifest was being placed at manifests/c/CryptographicTriangles///, but the correct convention is manifests/c/CryptographicTriangles/// — the file *names* still use the full PackageIdentifier (e.g. CryptographicTriangles.TrianglesQt.installer.yaml). Without these fixes, microsoft/winget-pkgs Automatic Validation rejects the PR with: "the casing of the file in disk or identical file is not merged" because the path written to the (Windows, case-insensitive) validator filesystem differs from what's in the git tree. Closes superseded PRs microsoft/winget-pkgs#391151, #391368, #391388. --- .github/workflows/distribute.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/distribute.yml b/.github/workflows/distribute.yml index 27b42d6..5c5620c 100644 --- a/.github/workflows/distribute.yml +++ b/.github/workflows/distribute.yml @@ -493,8 +493,9 @@ jobs: env: GH_TOKEN: ${{ secrets.WINGET_TOKEN }} SHA: ${{ steps.sha.outputs.sha }} - PUBLISHER_INITIAL: C + PUBLISHER_INITIAL: c PACKAGE_ID: CryptographicTriangles.TrianglesQt + PACKAGE_SHORT: TrianglesQt INSTALLER_URL: https://github.com/SamiAhmed7777/triangles_v5/releases/download/v${VERSION}/Cryptographic-Triangles-${VERSION}-win-x64-setup.exe run: | set -e @@ -502,7 +503,10 @@ jobs: which gh >/dev/null 2>&1 || (curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list >/dev/null && sudo apt update && sudo apt install -y gh jq) VERSION="$VERSION" - MANIFEST_DIR="manifests/$PUBLISHER_INITIAL/CryptographicTriangles/$PACKAGE_ID/$VERSION" + # Path convention (winget-pkgs): lowercase first letter of publisher, + # then publisher folder (PascalCase), then short package folder name. + # Example: manifests/c/CryptographicTriangles/TrianglesQt/5.9.20/ + MANIFEST_DIR="manifests/$PUBLISHER_INITIAL/CryptographicTriangles/$PACKAGE_SHORT/$VERSION" # 1. Clone the winget-pkgs repo (Sami's fork) — auto-create fork if needed echo "Forking microsoft/winget-pkgs..."