Files
Carlos Fernandez 4a4911bcec chore: Bump version to 0.96.5
Update version number across all packaging and build files for the
0.96.5 release.

Files updated:
- docs/CHANGES.TXT - Added changelog entry
- src/lib_ccx/lib_ccx.h - VERSION define
- linux/configure.ac - AC_INIT version
- mac/configure.ac - AC_INIT version
- OpenBSD/Makefile - V variable
- package_creators/PKGBUILD - pkgver
- package_creators/ccextractor.spec - Version
- package_creators/debian.sh - VERSION
- packaging/chocolatey/ccextractor.nuspec - version
- packaging/chocolatey/tools/chocolateyInstall.ps1 - URL
- packaging/winget/*.yaml - PackageVersion and URLs

Note: SHA256 checksums in chocolatey and winget files will need to be
updated after the MSI is built.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-05 12:44:06 +01:00
..
2026-01-05 12:44:06 +01:00
2026-01-05 12:44:06 +01:00

CCExtractor Packaging

This directory contains packaging configurations for Windows package managers.

Windows Package Manager (winget)

Initial Setup (One-time)

  1. Calculate MSI hash for the current release:

    certutil -hashfile CCExtractor.0.96.1.msi SHA256
    
  2. Update the manifest files in winget/ with the SHA256 hash

  3. Fork microsoft/winget-pkgs to the CCExtractor organization:

  4. Submit initial manifest via PR:

    • Clone your fork
    • Create directory: manifests/c/CCExtractor/CCExtractor/0.96.1/
    • Copy the three YAML files from winget/
    • Submit PR to microsoft/winget-pkgs
  5. Create GitHub token for automation:

    • Go to GitHub Settings > Developer settings > Personal access tokens > Tokens (classic)
    • Create token with public_repo scope
    • Add as secret WINGET_TOKEN in CCExtractor/ccextractor repository

Automated Updates

After the initial submission is merged, the publish_winget.yml workflow will automatically submit PRs for new releases.

Chocolatey

Initial Setup (One-time)

  1. Create Chocolatey account:

  2. Get API key:

  3. Add secret:

    • Add CHOCOLATEY_API_KEY secret to CCExtractor/ccextractor repository

Package Structure

chocolatey/
├── ccextractor.nuspec      # Package metadata
└── tools/
    ├── chocolateyInstall.ps1    # Installation script
    └── chocolateyUninstall.ps1  # Uninstallation script

Manual Testing

cd packaging/chocolatey

# Update version and checksum in files first, then:
choco pack ccextractor.nuspec

# Test locally
choco install ccextractor --source="'.'" --yes --force

# Verify
ccextractor --version

Automated Updates

The publish_chocolatey.yml workflow automatically:

  1. Downloads the MSI from the release
  2. Calculates the SHA256 checksum
  3. Updates the nuspec and install script
  4. Builds and tests the package
  5. Pushes to Chocolatey

Note: Chocolatey packages go through moderation before being publicly available.

Workflow Triggers

Both workflows trigger on:

  • Release published: Automatic publishing when a new release is created
  • Manual dispatch: Can be triggered manually with a specific tag

Secrets Required

Secret Purpose
WINGET_TOKEN GitHub PAT with public_repo scope for winget PRs
CHOCOLATEY_API_KEY Chocolatey API key for package uploads