Skip to main content

Community Bonding Meetings and Activities

Introduction Meeting

Date: Jul 3, 2025

This was the first meeting for me in GSoC 2025, where I met with my mentors and other contributors in the Fossology community. The mentors outlined communication expectations and helped me understand the importance of engaging with the broader Debian and Fossology ecosystems.


Meeting 1

Date: Jul 3, 2025

Attendees

Complete FOSSology Community including

  • Org admins
  • Mentors of all the projects
  • Contributors for GSoC 2025

Project Goal

The project goal is to create Debian packages for Fossology so that it can be easily installed with all of its dependencies using standard Debian tools (e.g., apt install fossology). The goal is not a single .deb file, but rather multiple packages, each handling a module of Fossology in a clean and maintainable way.


Project Exploration

I began by exploring the Fossology project structure, especially the debian/ directory, which is central to any Debian packaging effort. Here's what I found and learned:

  • debian/changelog — Keeps a history of changes and versions.
  • debian/control — Defines each binary package with its description and dependencies.
  • debian/rules — The build script, usually based on dh and compatible with CMake.
  • Branches: I cloned the Salsa repo using gbp and ensured I had master, upstream, and pristine-tar branches, as recommended.

Practice with Debian Packaging

To become comfortable with packaging:

  • I read Debian packaging documentation and articles to understand the tools, workflows, and best practices.
  • I created my own dummy Debian package as a practice project using dh_make, debuild, and manual editing of control files.
  • I used pbuilder, a tool that creates an isolated chroot environment for building packages, ensuring my package doesn't rely on my system setup.

Technical Setup

  • Set up local development environment.
  • Cloned the upstream Fossology code and imported it properly with gbp import-orig.
  • Linked changes to the upstream tarball and started iterating on package builds.

Contributions to the Packaging Repo

  • Began cleaning up and completing the debian/ directory.
  • Verified that each binary package matched the source structure.
  • Adjusted CMake configurations to unify the build process (e.g., install/db was integrated into CMake using a patch).
  • Identified and removed unneeded .install files when debian/rules was sufficient.
  • Started reviewing and fixing lintian warnings for compliance.