Stephane-D / SGDK

SGDK - A free and open development kit for the Sega Mega Drive
https://www.patreon.com/SGDK
MIT License
1.77k stars 189 forks source link

Adding Multi-Platform Docker Images and Build Pipelines to SGDK #290

Closed justgook closed 7 months ago

justgook commented 1 year ago

Greetings SGDK community,

I hope this message finds you well. I'm excited to present a proposal aimed at elevating the SGDK project by introducing multi-platform Docker images and streamlining the build process using GitHub Actions. As part of this initiative, I'm also planning to remove the reliance on Wine within the Docker setup and create a unified Dockerfile that can be used across various architectures, including x86 and aarch64.

Proposal:

  1. Multi-Platform Docker Images: My goal is to design Dockerfiles and build scripts that produce Docker images capable of supporting diverse platforms, eliminating concerns about compiler compatibility. This enhancement will allow developers to effortlessly utilize SGDK on different systems.

  2. Unified Build Pipelines: In conjunction with the Docker improvements, I plan to establish GitHub Actions build pipelines to automate the process of rebuilding artifacts post-commit. This approach ensures that SGDK's libraries, samples, and core components remain up-to-date and aligned with any modifications.

  3. Removing Wine Dependency: As part of this effort, I intend to refactor the Docker setup to remove the dependency on Wine. By doing so, we can create a more streamlined and consistent build environment.

Contributions I Can Provide:

I'm fully prepared to take the lead on implementing these enhancements. Having already successfully compiled GCC for aarch64 on my MacBook, I bring experience in Docker and configuring CI/CD pipelines to the table. I'm eager to contribute towards the objective of making SGDK universally accessible and user-friendly.

Welcoming Your Insights:

I hold your expertise in high regard and invite your invaluable feedback, guidance, and insights on this proposal. By collaborating, we have the opportunity to elevate SGDK's capabilities and extend its accessibility to a broader spectrum of developers.

Thank you for considering this proposal. I'm looking forward to actively contributing to SGDK and engaging with the community.

Best regards, Romans