Skip to content

This GSoC 2024 report, "Container Chronicles," highlights the project to encapsulate the CUPS and various Printer Apps into OCI-compliant images using Rockcraft. The report details the journey of creating official OCI images, automating workflows, and testing. It also reflects on the impact of the project on OpenPrinting and personal growth.

Notifications You must be signed in to change notification settings

rudra-iitm/GSoC-2024-Final-Report

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GSoC 2024 Final Report: Container Chronicles 🚀

GSoC Logo

The Container Odyssey: Packaging CUPS and Printer Apps 🚢

The Champions Behind the Quest 🏆

Linux Foundation

Mentors

Meet the guiding lights of this journey:

A Journey Through Containerization: Unpacking the Project 🎁

The Vision Unveiled 🌟

The project embarked on an ambitious journey to encapsulate the Common Unix Printing System (CUPS) and various Printer Apps into OCI (Open Container Initiative) images using Rockcraft. This move is designed to simplify the deployment of these tools across diverse, immutable distributions, making them more accessible and easier to manage.

Mission Objectives 🏹

  • Crafting OCI-Compliant Images: Forge official OCI images for CUPS and Printer Apps.
  • Automating the Workflow: Develop automation scripts for smooth version control and dependency management.
  • Ensuring Excellence: Conduct rigorous testing to guarantee reliability and performance.

The Blueprint of Success 🗺️

Deliverables: What We Set Out to Achieve 🏆

  • Planned Deliverables:

    • OCI images for CUPS and Printer Apps
    • Automation scripts for maintenance and versioning
    • Comprehensive testing and validation
    • Detailed documentation for installation and usage
    • Pushing the official OCI images of CUPS and Printer-Apps on container registry for easy access and distribution
  • Delivered Treasures:

    • Fully functional OCI image for CUPS with detailed documentaion on installation and usage
    • OCI images for various Printer Apps (ps-printer-app, hplip-printer-app, gutenprint-printer-app, ghostscript-printer-app)
    • Automation scripts for managing dependencies and updates
    • A GitHub CI pipeline for cups-rock to streamline processes
    • GitHub workflows to automate the Rock build and image push to Docker Hub
    • Initial documentation for installation and usage
  • Pending Adventures:

    • In-depth testing and issue reporting for Printer Apps
    • Expansion of documentation for Printer Apps

Technical Alchemy: How the Magic Was Made 🔮

  • Tools of the Trade:

    • Docker
    • CUPS
    • Printer Apps
    • GitHub Actions
    • Rockcraft
    • Bash Scripting
  • Challenges and Triumphs:

    One of the greatest hurdles was configuring dbus-daemon and avahi-daemon to work harmoniously within a Docker container and ensure proper printer discovery. Through persistent debugging and iterative problem-solving, this challenge was successfully overcome.

The Ripple Effect: Impact and Insights 🌊

Transforming the Organization 🌍

This project equips OpenPrinting to distribute CUPS and Printer Apps efficiently across immutable distributions. The implementation of GitHub Actions will reduce manual maintenance and streamline dependency updates, enhancing operational efficiency.

Personal Growth: A Tale of Learning and Development 📚

The journey through containerization and Docker was a profound learning experience. I developed skills in debugging, consistency, and community engagement, gaining valuable insights into project management and technical problem-solving.

Dive Deeper: Essential Links & Resources 🌟

🛠️ Project Repositories

Explore the codebases behind various printer apps:

🔄 Noteworthy Pull Requests

Check out these significant contributions and updates:

📚 Documentation & Guides

For a comprehensive guide on Rockcraft, visit the official documentation:

📝 Weekly GSoC Report Archive

Journey through the weekly updates that shaped our project: Weekly Report

A Symphony of Thanks 🎶

A heartfelt thank you to my mentors Till Kamppeter, Cristovao Cordeiro, and Saurav Dharwadkar for their guidance and support.

A special thanks goes out to Till Kamppeter. Without his guidance and leadership, this technical journey through code would have been directionless and silent.

About

This GSoC 2024 report, "Container Chronicles," highlights the project to encapsulate the CUPS and various Printer Apps into OCI-compliant images using Rockcraft. The report details the journey of creating official OCI images, automating workflows, and testing. It also reflects on the impact of the project on OpenPrinting and personal growth.

Topics

Resources

Stars

Watchers

Forks