Application - Server packageset - Hector Cao

Application for Ubuntu Server Packageset Upload Rights

I, Hector Cao, apply for Ubuntu Server packageset Upload rights.

Contact information

Why I am applying

  • To reduce the sponsorship burden on my team
  • To eliminate delays in getting my work delivered to Ubuntu
  • To help sponsor other contributors, enabling more community work to land

Who I am

I am a software engineer within the Ubuntu Server team.
My primary focus is maintaining and improving the Ubuntu virtualization stack,
including packages such as libvirt, QEMU, EDK2.

My Ubuntu story

My journey began when I joined Canonical as part of the Partner Engineering team, where I worked on enabling Intel technologies and features in Ubuntu. During that time, I contributed to several Stable Release Updates (SRUs) and packaged Intel QuickAssist libraries for the Ubuntu Universe repository.

Later, I joined the Server team, where I specialized in the virtualization stack. This transition marked a new chapter in my Ubuntu journey, allowing me to deepen my expertise and make broader contributions to the platform.

Examples of my work / things I’m proud of

Quick links: Uploads on UDD, Launchpad uploads

  • Introduced the HWE virtualization stack on Ubuntu Resolute
  • Ran a +1 maintenance shift
  • Helped with several package migrations
  • Carried out several Main Inclusion Requests (MIRs)
  • Worked on several Feature Freeze exceptions (FFe)
  • Helped drive transitions, including python3.14, libgnutls, net-snmp, haskell-lua
  • Made a seed change

Areas of work

Currently my involvement is:

  • Virtualization packages (core server-set)
    • libvirt
    • qemu
    • edk2
  • Server packages
  • Intel hardware acceleration
    • qatlib
    • qatengine
    • qatzip
    • ipp-crypto
    • intel-gpu-tools
    • intel-media-driver

Upstream contributions

My upstream contributions closely align with my work on Ubuntu and primarily consist of bug reporting and bug fixing across approximately 15 projects.

Whenever I can, I try to fix issues upstream first, including in Debian. I have submitted a significant set of small patches to several upstream projects and to Debian.

Unsurprisingly, my most significant contributions have been in the virtualization space, where I have been able to make the greatest impact.

Things I could do better

  • Documentation and knowledge sharing: I tend to focus on getting the work done rather than writing it up. I want to document more of what I learn so that it benefits the wider team and community.
  • Broadening my packaging skills: There are still areas of Ubuntu packaging I am less familiar with, and I want to keep closing those gaps.

Plans for the future

My plans for the future are twofold:

  • With PPU upload rights, I hope to increase the pace of my contributions and expand my involvement across a broader range of Ubuntu subsystems. Being able to upload directly would allow me to address issues more efficiently and take on additional duties on Ubuntu.

  • I intend to continue deepening my understanding of Ubuntu’s development processes, including more advanced topics such as Britney hints, proposed-migration, and release management workflows. I also plan to further develop my packaging expertise in areas such as package transitions, complex dependency resolution, and the packaging of Rust and Go software.

What I like the least in Ubuntu

There are many areas where Ubuntu can be improved, but the following stand out as the ones that have most frequently caused friction in my work:

  • The path that brings contributors’ work and upstream changes to users is often burdened by manual processes, unnecessary complexity, and a lack of visibility.
  • The tooling available to contributors does not always meet the standards expected from a modern software development ecosystem.
2 Likes

Sponsoring feedback

  • I work with Hector regularly but almost exclusively in regard to the virtualization stack (mostly: qemu, qemu-hwe, libvirt, libvirt-hwe, sebios, edk2)
    • In that interaction I have now sponsored 34 packages of him and I saw a nice evolution. Starting with plenty of feedback I nowadays see good patch headers, well prepared SRU templates and good PRs.
    • I have to admit I keep finding little nit picks, but they in recent uploads they are down to only style issues like changelog text layout - I have no more seen functionally wrong things the last months.
    • Whenever he is uncertain he asks for guidance and review anyway and I do not expect that to change
    • Due to that I’d trust and endorse him with the uploads to the virtualization set that I mentioned.
  • He has done way more work across server packages and depending if the team has seen him as better or worse in all the other areas granting packageset might be ok for this application as well - I can’t judge about that alone. It depends if those little mistakes there are more or less common and also only as little there. But even if that isn’t as good yet, I’ve seen his progression and believe he will make it there in a while.

Areas of improvement and next steps

I think ahead of Hector is a phase of stabilization, he will need to get the few little itches that creep into proposed uploads under control (and we discussed about linting for common mistakes which is how I solved it for myself many years ago).

From there depending on the feedback of other endorsers his next journey might be (if good and getting packageset now) to work towards core-dev next or (if not so great yet) to resolve the remaining little things and work towards ubuntu-server packageset next.

1 Like

General feedback

I have been working with Hector as part of the Ubuntu Server team since July 2025. He came in as an engineer from the Canonical Partner Engineering team and quickly picked up the Debian/Ubuntu-specific tooling and approach to distro work. With his prior experience with Intel TDX, he supported me in the enablement of confidential computing for AMD SEV-SNP (LP: #2127492). Hector actively contributes to the Ubuntu Server team bug & documentation triage process, keeping the team’s bug work under control and doing server package-set merges, such as apache2 (LP: #2138379). In addition to that, he kept interacting with the virtualization upstream communities of QEMU, libvirt, edk2, etc. driving long-pending Ubuntu changes forward.

I sponsored 5 individual packages for Hector, which can be seen from the list below. Some of which had multiple uploads, due to him driving several SRUs, uploading similar fixes to multiple series of Ubuntu.

sponsored by slyon:

Date Sponsor Sponsoree Package Version Distribution Bugs
2025-07-02 20:19 Lukas Märdian Hector Cao libvirt 8.0.0-1ubuntu7.12 jammy 2106812
2025-08-01 14:57 Lukas Märdian Hector Cao intel-media-driver 24.1.0+dfsg1-1ubuntu0.1 noble 2116923
2025-09-22 12:05 Lukas Märdian Hector Cao edk2 2025.02-8ubuntu2 questing 2125123
2025-10-14 22:38 Lukas Märdian Hector Cao libvirt 8.0.0-1ubuntu7.14 jammy 2120278
2025-10-29 09:34 Lukas Märdian Hector Cao libvirt 11.6.0-1ubuntu6 resolute 2127492
2025-11-29 21:53 Lukas Märdian Hector Cao libvirt 11.6.0-1ubuntu3.1 questing 2127492
2025-11-29 21:54 Lukas Märdian Hector Cao libvirt 11.0.0-2ubuntu6.4 plucky 2127492
2025-11-29 21:55 Lukas Märdian Hector Cao libvirt 10.0.0-2ubuntu8.10 noble 2127492
2026-01-12 14:58 Lukas Märdian Hector Cao libvirt 11.6.0-1ubuntu8 resolute 2083293 2106791
2026-01-14 08:37 Lukas Märdian Hector Cao qemu 1:10.1.0+ds-5ubuntu2.2 questing 2131822
2026-01-14 10:08 Lukas Märdian Hector Cao qemu 1:10.1.0+ds-5ubuntu5 resolute 2131822
2026-01-14 15:39 Lukas Märdian Hector Cao apache2 2.4.66-2ubuntu1 resolute 2138379
2026-01-28 15:10 Lukas Märdian Hector Cao qemu 1:8.2.2+ds-0ubuntu1.12 noble 2131822

Hector worked his way through proposed-migration, keeping the team packages in good shape and learning about all the relationships between packages, autopkgtest CI and the processes involved. I trust in his skills and decision-making in the best interest of the Ubuntu community.

I fully endorse his application for the Server Team package set.

Specific Experiences of working together

Besides collaborating on the common Ubuntu Server team chores, I collaborated with Hector on the Ubuntu Virtualization team. Backporting fixes, driving SRUs and triaging new bug reports, where Hector showed a very structured approach in keeping track of all the loose ends.

Areas of Improvement

There are always new things to learn in Ubuntu. With new powers come new responsibilities, so Hector should learn about dput-ng and additional helpers, such as https://git.launchpad.net/\~ubuntu-server/+git/ubuntu-helpers/tree/cpaelzer/.dput.d/ . Furthermore, he should always try to self-review his merge proposals, to find the little nitpicks that might have slipped in and be self-aware about stuff that he might not fully understand. If in doubt, ask for review from others.

General feedback

I’ve sponsored a bunch of packages for Hector in the past, mainly for the Intel media/compute stack. The first packages had some minor issues in the packaging, but he learned quickly and the later ones were quite easy to sponsor.

sponsored by tjaalton:

Date Sponsor Sponsoree Package Version Distribution Bugs fixed
2024-01-22 11:19 Timo Aaltonen Hector Cao qatlib 23.11.0-0ubuntu1 noble 2048895
2024-02-23 09:35 Timo Aaltonen Hector Cao qatengine 1.5.0-0ubuntu1 noble 2048938
2024-02-27 12:32 Timo Aaltonen Hector Cao qatzip 1.2.0-0ubuntu1 noble 2048950
2024-04-03 11:05 Timo Aaltonen Hector Cao intel-gpu-tools 1.28-1ubuntu1 noble 2049714
2024-04-15 08:51 Timo Aaltonen Hector Cao intel-gpu-tools 1.28-1ubuntu2 noble 1949314
2024-04-18 10:49 Timo Aaltonen Hector Cao qatzip 1.2.0-0ubuntu3 noble
2024-05-01 14:16 Timo Aaltonen Hector Cao intel-gpu-tools 1.27.1-1ubuntu0.1 mantic 1949314
2024-05-01 14:16 Timo Aaltonen Hector Cao intel-gpu-tools 1.26-2ubuntu0.1 jammy 1949314 2061324
2024-07-29 08:06 Timo Aaltonen Hector Cao mdadm 4.3+20240412-1ubuntu2 oracular 2069821 2070371
2024-07-31 11:57 Timo Aaltonen Hector Cao ipp-crypto 2021.12.1-0ubuntu1 oracular 2075496
2024-07-31 18:00 Timo Aaltonen Hector Cao qatengine 1.6.1-0ubuntu1 oracular
2024-11-25 11:45 Timo Aaltonen Hector Cao ipp-crypto 1:1.0.0-0ubuntu1 plucky 2089569
2025-02-06 10:48 Timo Aaltonen Hector Cao qatengine 1.8.1-0ubuntu1 plucky 2097525
2025-02-06 13:34 Timo Aaltonen Hector Cao qatzip 1.2.1-0ubuntu1 plucky 2097544
2025-02-07 16:39 Timo Aaltonen Hector Cao qatlib 24.09.0-0ubuntu1 plucky 2097676

I endorse his application for the Server Team package set.

Sponsoring feedback

I endorse Hector’s application for Server Packageset upload rights.

I have sponsored some package changes for Hector, as well as many rebuilds for the net-snmp transition, which they drove this cycle.

I can see how the quality of uploads have evolved over time. When Hector arrived at the server team, they brought experience working with the virt stack and a solid knowledge about how serious one should take verification, regression tests, and process. It was precisely the server processes that happened to be the main difficulty, in my opinion - it took a while for Hector to adapt their work style to match the team’s expectations. That said, the results and the increased attention given to MPs over time are noticeable, and make me trust it’s time for Hector to take the next step by having these upload rights.

Specific experiences of working together

The main highlight of our work together was in the net-snmp transition.

On things Hector needed improvement, and did good:

  • Understanding the full transition start-to-end: knowing how and when to trigger a transition, track it in ben, and call it done are things Hector had little or no experience before this one, and they needed to fill this gap it in order to get the transition done. I have seen Hector overcome these difficulties by asking questions in the correct channels (MM, LP, Matrix) as appropriate, asking for guidance when unsure, and being able to discuss and come to good decisions on how to deal with different packages.

On things Hector did very good:

  • The net-snmp merge itself: I have reviewed that one and all my remarks were small style changes/nits - the end result was good.

  • Definitely compromise to work on fixes and improvements to make the transition work. Solve nontrivial dependency chain errors, and prefer patches over hints to migrate the needed packages was their goal from the start, and I believed this was achieved successfully.

  • Patch management: Hector was careful enough to check patches that could be backported/SRUed, identified one which needed to be a staged SRU which I sponsored, and sent some fixes to Debian (which were accepted).

Areas of improvement and next steps

The only changes I have requested from Hector’s work were, as stated before, minor style changes. Although I don’t think these degrade the quality of their work, improvement can be made to sharpen edges and bring them from really good uploads to great uploads.

Uploading powers bring a fair chunk of responsibility, mainly when looking at others (outside of the team) work. My advice is that Hector should practice +1 maintenance and patch piloting (officially or not) by applying the same level of rigor for others as they’ve seen applied to their uploads in the team. The main goal now should be accumulating experience and numbers, reflecting their willingness to help and the quality of their work. The virtualization stack itself is a tricky challenge codewise (I believe it’s the hardest stack to maintain on server) and working on it will bring plenty of opportunities to do so.

General Feedback

List of packages sponsored for Hector

I endorse Hector’s application and agree we should grant him upload rights for the Server packageset.

This new position will give Hector more opportunities to get the experience he needs to be trusted with Ubuntu Core Developer upload permissions.

Technically, Hector is one of the few people who is knowledgeable enough to be trusted with the Ubuntu virtualization stack right away. Process-wise, I believe he can keep growing and getting more experience. Being able to upload his packages and sponsor others within the Ubuntu package set will be a catalyst to allow hector to quickly get to a Core Dev status if he wishes so.

Specific Experiences working together

Hector and I work together in the Ubuntu Server team. There, Hector is one if the main maintainers of the Ubuntu Virtualization stack, where he truly excels when debugging, reproducing, and fixing issues.

Areas of improvement

While performing reviews for Hector I tend to be picky with details to make sure I pass forward all I learned from my (current and former) co-workers who taught me the ways into the Ubuntu development processes. I often request small changes on changelog data or git-ubuntu related processes/structure. Therefore, I do believe Hector could pay more attention to small details and corner cases since that is what he will need to start reviewing and sponsoring changes for others. This is how we keep our quality standards around the Ubuntu Server packages.

As I mentioned to Hector offline, technically, there is little I can pass on to him. It is mostly the other way around: I have much to learn from Hector. Still, regarding the Ubuntu development processes and standards, there is room for growth before we can go for Core Dev. I believe this will come with more exposure and review rounds.