[Development] Request: devcontainer feature for vscodeext

Cristian Le cristian.le at qt.io
Wed Jan 29 13:36:40 CET 2025


I think for single repo projects devcontainers work really nice to get all dependencies and tools in place. There are two usecases for the devcontainers:

1. User projects (as OP's approach)

This would build and install the full qt6 stack. This could be useful if the user wants to test and build against various released versions of qt6. For more light-weight usecase though, I think targeting the versions distributed by the linux distros is easier to manage, and targeting fedora:latest and a LTS distro ubuntu/debian/centos would cover most user needs.

For targeting Windows and Macos, I don't think there's a devcontainer way to do so?

The best location for such a devcontainer would be on qt5 repo, or another repo that would publish devcontainers and docker images.

Once a devcontainer is defined in a repo, the user could pull in the recipe for that container (I believe those are called features), or pull in a pre-compiled container.

2. Qt developers

This one would simply setup a developer environment for working on the current repo, but devcontainers for multi-repo projects would be quite tricky. For qt5 repo such an environment could be setup targeting the current submodules in the repo, but the initialization time would be very slow.

For individual repos it would be a nicer feature to get a minimum developer environment for working with the current repo, e.g. for qtdeclarative, it would fetch qtbase, qtshadertools, etc. and build the current dev branch. But managing this would be very intensive.

On 2025/01/29 12:45, Joerg Bornemann via Development wrote:
On 1/27/25 18:07, Alex Shaw wrote:

Is anyone interested in seeing this officially added to Qt?

That seems interesting. Do I understand correctly that the devcontainer spec [1] would go into a repo different from vsccodeext?
And vscodeext would merely announce its existence?


Cheers,

Joerg

[1] https://github.com/Symbitic/qt6-devcontainer/blob/main/.devcontainer/devcontainer.json


--




Cristian Le

PhD

Build systems engineer



The Qt Company GmbH
Erich-Thilo-Str. 10
12489 Berlin, Germany

cristian.le at qt.io<mailto:cristian.le at qt.io>

+123 456 7890

www.qt.io<https://www.qt.io>



Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B



[https://www.qt.io/]<https://www.qt.io/>
[https://www.facebook.com/qt/]<https://www.facebook.com/qt/>    [https://twitter.com/qtproject] <https://twitter.com/qtproject>         [https://www.linkedin.com/company/qtgroup/] <https://www.linkedin.com/company/qtgroup/>         [https://www.youtube.com/QtStudios] <https://www.youtube.com/QtStudios>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20250129/44f0442d/attachment-0001.htm>


More information about the Development mailing list