I, Carlos Nihelton, apply for Ubuntu Membership.
About me
IRC | cnihelton |
Matrix | @cnihelton:ubuntu.com |
Launchpad profile | Carlos Nihelton in Launchpad |
Discourse profile | @cnihelton |
carlos.nihelton@canonical.com cn@olivec.dev |
User of Linux distros since 2009, my first experience was with Ubuntu. While I was looking to fix the computer I had recently received as a donation back then, I heard that Linux would be the perfect choice, but it was too complicated and required hacker-like skills. I accepted the challenge, but was surprised with how easy was to get Ubuntu just working on that PC.
In the recent years I was blessed with the opportunity to work at Canonical and contribute to such an amazing work and community. While I’m mostly focused on WSL2, I care a lot about Desktop, especially on old hardware, and the developer experience. I’m starting to look at the experience for kids, as my oldest son started demanding.
Father of 3 boys (the third coming soon), introvert, sometimes too discrete, I realized it’s more than due time for me to push myself into a more active role in the community and make sure the new generations inherit FOSS in the proper way.
Summary of my contributions to Ubuntu
- Maintaining and enhancing the Ubuntu on WSL experience: from managing the application packages on the Microsoft Store to coding for both Windows and the distro sides.
- Working with upstream to enhance WSL for Ubuntu users: troubleshooting and fixing bugs only detectable on that platform, early testing and building proof of concepts that influenced upstream implementation, such as systemd enablement and the upcoming distro package format.
- Enabled cloud-init for Ubuntu on WSL: leveraging Windows filesystem integration to let Ubuntu users to automate customization of their distro instances.
A complete description of my contributions to Ubuntu
I mostly work with the Ubuntu experience on WSL 2. It involves troubleshooting, bug fixes, recommendations to upstream WSL, distro work, Windows-side coding and packaging. Some examples are listed below:
- Recent troubleshooting related to systemd resulting in recommendations for Microsoft WSL team
- Proof-of-concept work that influnced MS implementation of systemd on WSL2: wsl-setup/#1 and wsl-setup/#3
- Paired with @didrocks to enable the upcoming distro format for WSL2: wsl-setup/#16, wsl-setup/#17, wsl-setup/#18, wsl-setup/#19.
- Wired cloud-init to the Ubuntu WSL first boot experience: ubuntu/WSL #478
- Implemented a datasource for WSL on cloud-init: cloud-init #4730 and cloud-init #4786
- Wrote pieces of documentation related to Ubuntu on WSL, such as the cloud-init datasource reference, Ubuntu WSL autoinstall via cloud-init and enabling CUDA on Ubuntu WSL
- Contributed either reporting, editing or testing SRU bug reports on Launchpad, which important for the WSL experience, such as the ongoing LP:2091293 and LP:2065349 fixes for the cloud-init integration
- Active directory integration in subiquity: subiquity #1550,subiquity #1553,subiquity #1563 and subiquity #1568,subiquity #1571 and subiquity #1572 for example.
- I gave a talk to students to raise awareness of FOSS and Ubuntu, which is described in this Discourse post
- Finally, I gave a talk on the first edition of the Ubuntu Summit (2022) about developing with Flutter and WSL2.
My plans and ideas for Ubuntu in the future
- Preserve Ubuntu as the default choice for WSL users. Make sure we’re the first distro to adopt new features and work closely with upstream to represent our users best interest. I believe WSL is one way for us to present Ubuntu to new users that wouldn’t be exposed to Linux distros otherwise. Ensuring a great experience there is an important step to acquire new Ubuntu adopters on other platforms, such as Server and Desktop. Consider for example a web development student learning the first concepts of managing a server machine. If those lessons are on some shape of Ubuntu, their future production environments will likely be Ubuntu as well.
- Make Ubuntu more usable in Enterprises. That’s already true for the Desktop to a quite good extent, less so for Ubuntu on WSL. There are companies looking to leverage that platform in their environments as well. Enabling them means more users, maybe more contributors and last but not least, incomes to keep funding our operation.
- Bring some of the lessons learned with WSL to Ubuntu Core Desktop. Either by coding or sharing implementation ideas. Think of an immutable, sealed, bullet-proof desktop with a transparent feature that enables users to quickly spawn permanent or disposable containers where they can install latest compilers, break whatever they want, integrate parts of their home and runtime directories and configuration files. Of course LXD allows all of that, my vision is to leverage it in a user-friendly way, well integrated and smooth experience without taking out the powers of advanced users. Experiments like canonical/workshops demonstrate some of the key aspects of that idea that we can bring forward once Ubuntu Core Desktop architecture settles down. I’d like to use an experience like that in my personal laptop.
- Spread the word “Ubuntu”. Demonstrate my favorite applications, programming languages and frameworks and show how Ubuntu is the solid foundation that let them play. The newer generations, especially, need to listen more about this work.