GSoC Project Final Report

Aug 21, 2026

As Google Summer of Code comes to an end, all the participants are making their final changes to their code and drafting their final reports. The code for my project has successfully been finished.

Overview

A previous blog post has some more background information on the project as well. In short, the main goal was to add support to LibreOffice for importing JPEG XL image files, in order to solve a bug filed as tdf#156931.

Patchsets

The code changes I made are available for viewing on Gerrit (the code review software used by LibreOffice), and it is spread across 5 separate patchsets.

Adding libjxl and Dependencies to LibreOffice Build System

libjxl (https://github.com/libjxl/libjxl) was the library used to help with the importing. highway and brotli were dependencies of libjxl.

Implementation and Tests

Status of Code Changes

The patchsets are being reviewed and will (hopefully!) be added to the master branch in the future. Some time after that (when the code from the master branch itself undergoes review/testing), the code will be merged into other branches and be included in builds used by end-users.

Some minor changes may be necessary, but in the current state, these patchsets add the ability to import JPEG XL images.

Challenges

I spent most of the first half of the summer trying to add the libjxl library to LibreOffice's build system. This meant navigating a lot of Makefile/shell code, some of which was a little complex to understand. Reviewing the code written for other libraries helped a lot here. I also ended up needing to add two other libraries that were dependencies of libjxl (highway and brotli).

Future Work

The main new feature that would build directly off of the work done for this project would be to add JPEG XL export support.

Conclusion

I enjoyed my time contributing as part of Google Summer of Code. I feel that I have learned a lot this summer, in particular how to navigate such a large codebase.

I would like to thank my mentor Xisco, for his guidance throughout the duration of the program. Of course, I am grateful to the administrators of the LibreOffice project and Google Summer of Code for the opportunity to participate in this program.

Thank you to the LibreOffice community for being welcoming to new contributors, and for fostering a helpful and collaborative environment. I hope to continue contributing to LibreOffice in the future.

https://solisj.dev/posts/feed.xml