The future of VyOS, part 1: release schedule
Posted 6 Jun, 2021 by Daniil Baturin
The future of VyOS is bright!
And in this post series, we will talk about our plans for the VyOS Project. This first post focuses on the most immediately important part: the release schedule and support timeline of VyOS 1.2.x and 1.3.x.
“Release early, release” often is a frequently-repeated mantra of open-source, and it absolutely doesn’t apply when you are working on infrastructure software. When a whole bunch of hosts depends on the router working uninterrupted, all you can say is “release carefully”.
VyOS 1.3 has been in development for two years and a half already, and we were hesitant to give any specific dates, not least because we know that we’ll have to support it for years with a very limited ability to make big changes in the codebase.
Now the time has come. Let’s discuss the plans.
VyOS 1.3/Equuleus release schedule
We’ve been through three release candidates already, many of us are running VyOS 1.3 builds at home and in production environments and it’s working quite well. Of course, we always want to include more features into a new LTS release because we know we won’t get to add them so freely when it’s declared stable. Still, it’s time to call it a day and shift the focus: for crazy ideas and unlimited experimentation we already have the new 1.4/Sagitta branch.
VyOS 1.3.0 will be released by the end of August 2021. We are stabilizing the codebase and adding the last bits we can add.
Of course, just like with 1.2 back then, a 1.3.0 release will not mean a total feature freeze. We will continue to backport stable and well-tested features from the 1.4/Sagitta branch as long as they can be merged safely without breaking compatibility and without adverse interactions with other features.
As usual, any VyOS 1.2.x version will be possible to update to 1.3.0 with “add system image”. It may also be still possible to upgrade 1.1.x images directly to 1.3, though we do not recommend that.
VyOS 1.2/Crux support
We promised not to drop support for VyOS 1.2.x until the end of 2022. That’s a conservative estimate based on what we are certain that we can do alone.
VyOS 1.2.x uses Debian (8) Jessie for its base system. That Debian version was released in 2015 and its official EOL came in June 2020. Most packages related to network functionality are much newer—we build them ourselves because we need newer versions for new features. We also use the LTS Linux kernels and build many network card drivers, both because it’s beneficial for the users, and because it's a safe and relatively easy thing to do—the Linux kernel ABI is exceptionally stable, and old applications can easily run even on the latest kernels.
However, there are also many packages that we don’t touch because we normally don’t need to. If a serious bug or a vulnerability is found in such packages, we may have to start building our own version of it on short notice. We have done that already in the past, but it’s still possibly a lot of effort to do it alone.
There’s a Debian ELTS initiative, that we have joined and are now sponsoring the effort to make life easier for ourselves and all other Jessie users of the world. Hopefully, this means that if there’s demand for it, we may be able to extend the 1.2.x release support beyond the end of 2022. We will see.
It’s too early to make any definite plans for the 1.4/Sagitta release, but it’s quite likely that it will be based on Debian Bullseye and that it will come out no earlier than Bullseye becomes Debian’s new stable release.
In the next post (part 2), we will talk about GUIs and Controllers!