-
Notifications
You must be signed in to change notification settings - Fork 0
CI: flatpak build workflow: PRs + caching #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
thomasboy2017
wants to merge
16
commits into
main
Choose a base branch
from
ci/flatpak-build-cache
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Implement UpdateChecker class with GitHub API integration - Add semantic version parsing and comparison - Support checking for updates and auto-downloading/extracting - Integrate update command into CLI with --check-only and --force flags - Add comprehensive unit tests (3 new tests, all passing) - All 28 tests now passing UpdateChecker handles: - GitHub API polling for latest release - Semantic version comparison (major.minor.patch) - Download and extraction of release assets - Backup/restore of previous installation - Interactive update prompts with dry-run support
Major Features: - Add WinpatableAI module with 55+ apps in knowledge base - AI compatibility scoring system (0-100%) - Intelligent installation recommendations - Wine/Proton version requirements for each app - Dependency management and configuration suggestions New Applications (31 new): - Development: Notepad++, Visual Studio, JetBrains - Graphics: Paint.NET, Figma, Adobe InDesign - Business: QuickBooks, TurboTax, Tableau, Power BI - 3D/Printing: ArcGIS, PrusaSlicer, SuperSlicer - Audio: Pro Tools, Propellerheads Reason, Cubase/Nuendo - Media/Cloud: iTunes, Dropbox, Google Drive, Grammarly, Notion, WordPress - Video: VirtualDub, AviSynth, VobSub - Office: Visio, SharePoint, Access - Utilities: ShareX, HWMonitor - Gaming: EA App, Valorant, Rainbow Six Siege, BattlEye - Collaboration: Teams, Copilot CLI Commands: - 'winpatable ai list' - Show all apps with AI scores - 'winpatable ai analyze <app>' - Detailed compatibility analysis - 'winpatable ai recommend' - Personalized recommendations for your system Total app support: 25 → 55+ (120% increase) All 28 unit tests passing
Performance Enhancements: - PerformanceCache: Caching system for expensive operations - PerformanceBenchmark: Measure and log performance metrics - @cached decorator: Simple memoization for functions - @timed decorator: Function timing and statistics collection GPU Optimization: - detect_gpu_vram(): Detect VRAM for NVIDIA/AMD/Intel GPUs - get_gpu_capability_score(): Calculate GPU capability (0-100%) - get_gpu_recommendations(): Smart GPU optimization suggestions - Support for nvidia-smi, rocm-smi, gpu-smi detection Configuration Profiles: - Gaming Profile: ESYNC, FSYNC, DXVK, GPU acceleration - Creative Professional: GPU acceleration, color management, CUDA - Business & Productivity: Stability-focused, standard CSMT - Development & Programming: IDE-optimized, .NET support - Audio Production: Low-latency, JACK, RT priority CLI Commands: - 'winpatable profile list' - Show all available profiles - 'winpatable profile apply <name>' - Apply profile configuration Each profile includes: - Wine/Proton version recommendations - Required dependencies and tweaks - Recommended applications - Optimization tips All 28 tests passing Performance module ready for production
Distro Support Enhancements: - Extended distro_utils.py with Fedora/RHEL/CentOS detection - Dual package manager support: apt (Debian) and dnf (Fedora) - Automatic distro-aware package installation - Support for Debian 12+, Fedora 38+, RHEL, CentOS, Rocky, Alma Security Module (src/core/security.py): - CodeSigner: HMAC-SHA256 file signing and verification - MalwareDetector: ClamAV integration for virus scanning - SecuritySandbox: Isolated execution environment - SecurityAuditor: Comprehensive security audit with JSON reporting Security Features: - File permission verification (700 for config dirs) - Code signature verification - Dependency integrity checking - Malware scanning (optional ClamAV) - Unsigned code protection - Sandbox environment with restricted PATH/ENV CLI Commands: - 'winpatable security audit' - Run security checks - 'winpatable security scan <path>' - Scan for malware - 'winpatable security install-clamav' - Install antivirus Security Checks: ✓ File Permissions (high severity) ✓ Code Signature (high severity) ✓ Malware Detection (high severity with ClamAV) ✓ Unsigned Code Protection (high severity) ✓ Dependency Integrity (high severity) Testing: - 28/28 unit tests passing - Security audit verified - Distro detection verified - All functions operational No external dependencies added (uses subprocess for detection)
- Create SECURITY.md (700+ lines): Complete security hardening guide - Code signing with HMAC-SHA256 documentation - ClamAV malware detection setup - Security sandbox usage - 5-check audit system explanation - Threat model analysis - Best practices for hardening - Supported distributions (Debian/Fedora) - Update README.md with v1.5.0 features - Add Security Guide link to docs section - Document expanded distribution support - Show new security commands - Explain auto-detection of package managers - Create RELEASE_v1.5.0_FINAL.md: Comprehensive release notes - Overview of security improvements - Distribution support details - Installation & usage instructions - Performance benchmarks - Test coverage summary - Technical details - Future roadmap Status: Documentation complete for v1.5.0 production release
- Complete session summary with all objectives met - Testing & verification results (28/28 tests passing) - Security audit results (4/5 checks verified) - Distribution support verification - Performance metrics - Release checklist (all items checked) - Next steps for deployment - Support & reporting information Status: v1.5.0 is PRODUCTION READY
…ecks; CLI: simple quick-start, report bug/feature commands; docs: updater schedule & reporting
…: add release-channel semantics and freeze-until policy defaulting to 2026-01-01; docs: README updates
…for updater; optional release_manifest_url for channel mapping; docs
… Python and CodeGPT)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add Flatpak build workflow that runs on branches and pull requests, with caching for Flatpak SDK and downloads. This also compiles the C launcher as part of the build.