Skip to content

Draft winget and PowerShell Gallery publishing assets - #72

Draft
BiosSystem wants to merge 1 commit into
masterfrom
chore/publishing-prep
Draft

BiosSystem wants to merge 1 commit into
masterfrom
chore/publishing-prep

Conversation

@BiosSystem

Copy link
Copy Markdown
Owner

Draft. Publishing assets staged so both distribution paths are ready once credentials are available. Nothing here publishes on its own.

PowerShell Gallery

Publishing/PowerShellGallery/Publish-Winnow.ps1 builds the self-contained standalone, injects a PSScriptInfo block with a fixed script GUID (0e5a6893-36f8-46da-b8b8-0d9500d7a492), validates with Test-ScriptFileInfo, and publishes only when -ApiKey is passed. The modular Winnow.ps1 cannot be a gallery script (it dot-sources the tree), so the standalone is what ships.

Verified locally (dry run, no key): Test-ScriptFileInfo passes - Name Winnow, Version 4.2.3, correct GUID and author.

winget

Three-file manifest for BiosSystem.Winnow, schema 1.12.0, packaged as a zip with a portable entry point.

Verified with winget validate: the portable nested installer accepts only a .exe RelativeFilePath (Run.bat/.ps1 rejected). Winnow ships no executable, so winget publishing is blocked without a launcher exe. The manifest is written for that resolved state; Publishing/README.md documents the blocker and the two options (add a Winnow.exe launcher, or ship PowerShell Gallery only).

Testing

  • Static validation green (130 files).
  • PS Gallery publish script dry-run: validated locally.
  • winget manifest: winget validate run locally; result and constraint documented.

Prepare the publishing paths so they are ready once credentials are available.

PowerShell Gallery: Publish-Winnow.ps1 builds the self-contained standalone,
injects a PSScriptInfo block with a fixed script GUID, validates with
Test-ScriptFileInfo, and publishes only when given an API key. The modular
Winnow.ps1 cannot be a gallery script because it dot-sources the tree, so the
standalone is what ships. Dry run verified locally: Test-ScriptFileInfo passes
(Winnow 4.2.3, correct GUID and author).

winget: three-file manifest for BiosSystem.Winnow, schema 1.12.0, packaged as a
zip with a portable entry point. Verified with `winget validate` that the
portable nested installer accepts only a .exe path, so a script entry point is
rejected and Winnow cannot go to winget without a launcher exe. The manifest is
written for that resolved state and the README documents the blocker and the
two options (add a launcher exe, or ship PowerShell Gallery only).

Nothing here publishes on its own; both paths need the account credentials.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant