I, Ujjwal Sarswat, apply for Ubuntu Contributing Developer.
Contact Information
I can be found by @vmpyr almost everywhere online
| Name | Ujjwal Sarswat |
|---|---|
| Launchpad | ~vmpyr |
| Discourse | @vmpyr |
| Matrix | @vmpyr:ubuntu.com |
| Website | vmpyr.me |
| GitHub | vmpyr |
| Location / timezone | India, Asia/Kolkata |
I am applying because:
- I would like to formally start my journey towards being an official Ubuntu contributor and uploader
- I want to express my commitment towards the Ubuntu community and project
Who I am
I am a software engineer from India. I have always been interested in software and hardware. My first experience with linux was when I installed Pop_OS seven years ago. I studied more about programming and software in university.
I currently work at Canonical as a Python Toolchains developer, where I’ve been for the past year. My day job is the Python stack in Ubuntu, CPython itself and the wider Python ecosystem packages that Ubuntu ships and that most of our toolchain depends on.
My Ubuntu story
I distro hopped a lot starting from Pop_OS and tried everything from Debian, Ubuntu, Fedora and Arch. I stuck to Fedora during university and used Ubuntu again through WSL during my first job. It was a very smooth experience and I faced no issues. When I built my first homelab after that, I only used ubuntu images for my VMs since they provided with a good balance of stability and updates. Hence, when I got an opportunity to work on this distro, I took it and joined Canonical.
Examples of my work / Things I’m proud of
Full sponsorship history here.
Sponsored uploads
Debian merges and syncs
| Date | Package | Version | Series | Bug(s) | Sponsor |
|---|---|---|---|---|---|
| 2025-11-19 | fbi | 2.14-3ubuntu1 | resolute | LP #2131718 | Skia |
| 2025-12-15 | python-coverage | 7.8.2+dfsg1-1ubuntu1 | resolute | LP #2133214 | Sudip Mukherjee |
| 2026-02-23 | gcc-defaults | 1.230ubuntu1 | resolute | LP #2139488 | Vladimir Petko |
Python toolchain and ecosystem work
| Date | Package | Version | Series | Bug(s) | Sponsor |
|---|---|---|---|---|---|
| 2026-08-26 | python3.14 | 3.14.7-1ubuntu1 | stonking | LP #2154836 | Benjamin Drung |
| 2026-05-14 | numpy | 1:2.4.4+ds-2ubuntu1 | stonking | LP #2152634 | Vladimir Petko |
| 2026-05-28 | python-cobra | 0.29.1-4ubuntu1 | stonking | LP #2154412, LP #2154413 | Vladimir Petko |
| 2026-06-24 | siconos | 4.4.0+dfsg-6ubuntu1 | stonking | LP #2158244 | Vladimir Petko |
| 2026-08-28 | uv-full | 0.11.20+ds-0ubuntu1 | stonking | LP #2161698, LP #2165441 | Nick Rosbrook |
OpenSSL 4.0 transition
| Date | Package | Version | Series | Bug(s) | Sponsor |
|---|---|---|---|---|---|
| 2026-07-08 | osptoolkit | 4.13.0-1.1ubuntu1 | stonking | LP #2155022 | Pragyansh Chaturvedi |
| 2026-07-08 | ncrack | 0.7+debian-6ubuntu1 | stonking | LP #2155027 | Pragyansh Chaturvedi |
| 2026-07-08 | openssh-ssh1 | 1:7.5p1-18ubuntu1 | stonking | LP #2155036 | Vladimir Petko |
| 2026-07-09 | perdition | 2.2-5ubuntu1 | stonking | LP #2154975 | Pragyansh Chaturvedi |
| 2026-07-24 | libre | 2.0.1-3ubuntu1 | stonking | LP #2154887 | Vladimir Petko |
+1 maintenance shifts
I’ve taken two +1 maintenance shifts so far, and reported back publicly on both. These are the contributions I’m proudest of, because the value lands directly on everyone else’s work.
25–29 May (report: +1 Maintenance report from 25 May to 29 May)
6–10 July (report: +1 Maintenance report from 06 July to 10 July)
Launchpad bug reports I filed carry the full analysis; every fix that could be sent upstream was, and where it applied I filed the Debian bug too.
Interesting work
uv-full: bringinguvinto Ubuntu (LP #2161698, LP #2165441, sponsored by Nick Rosbrook). I am comfortable with all toolchains and this one was Rust. I learned about vendoring with this work and vendored around 700 dependencies following proper documentation and asking questions when stuck. I also generated and cleaned thed/copyrightfile this new upload, which was challenging and rewarding work.python3.14:3.14.7-1ubuntu1merge into stonking (LP #2154836, sponsored by Benjamin Drung). We transitioned to OpenSSL4 before Debian andpython3.14wouldn’t build with it. I backported a PR from upstream, cherry picking changes which were needed. I tested it and got it sponsored.conda: I have packagedcondaand it’s dependencies which are pending sponsorship and AA review. It was interesting to write patches for a project that has both C and Python code and understanding how to make something work in Ubuntu’s context there.
My merge proposals and reviews are visible at code.launchpad.net/~vmpyr.
Areas of work
I work in the Python Toolchains team at Canonical, and my responsibilities are defined by that. My work centers around python in the archive but I also like contributing to other toolchains and bringing new packages into the archive.
Things I could do better
- Upstream and Debian first: I forward fixes when it’s clearly right, but I should be more systematic about filing the Debian bug and the upstream issue even when the Ubuntu fix is trivial. I mess up some fields of the DEP3 headers like
Forwarded:because of confusion sometimes. - Merges: I should be more vary about checking if patches need to be dropped during merges and have faced flak from some sponsors for this in the past.
- Comms: I want to be more active on Matrix and Discourse.
Plans for the future
I plan to keep Python moving as smoothly as it ever has while making transitions faster. Since Python touch so many aspects of the distro, it gives me a changes to contribute to a wider cohort of packages which I am excited about. As part of the Toolchains team, I also want to make the developer experience on Ubuntu as smooth as possible by bringing in more new packages like uv and creating a devpack as well.