Update about VyOS
   3 min read

As I said in a previous article, I was trying to check on VyOS, which seems to be a cheap way for testing network concepts without having to pay for Cisco Modeling Labs (the only legal way of using Cisco virtual systems) or something similar.
And I hit smack-dab into the issue of the Portuguese keyboard layout: there isn’t one. Yes, an SSH connection assumes the client’s layout - but you need to setup the network beforehand.
Incidentally, the entire Debian console configuration system is deactivated or dead. And Debian has its very own way of setting the console up.
I tried testing backwards and forwards to try to discover the regression point and I realized that:

  • It still works in 1.2
    • But it’s no longer advisable to run dpkg-reconfigure from the raw shell, now there’s a set console keymap command from Monitor mode ($); all this does is call up dpkg-reconfigure keyboard-configuration and then restart keyboard-setup.service (Vyos is now based on systemd just like the Debian underneath)
  • In 1.3 and 1.4 it doesn’t work
    • another command has been added, now in Configuration mode (#), set system option keyboard-layout XX, but it only accepts XX=US, DE, FR, DK, NO, FI. This command works, at least for the NO layout (Norway, ou Nordic) which has many keys in common with the PT-pt layout.

Hmmm, I wonder where the main contributors of the project are from?
By the way, I also found out that the best way to build Vyos is through the Docker image; I tried to reverse-engineer the dockerfile as recommended by the documentation page, but despite ./configure telling me that the dependencies were all met, the build process was stopped right at the beginning:


E: The method driver /usr/lib/apt/methods/https could not be found.
E: Failed to fetch https://repo.saltproject.io/py3/debian/10/amd64/3003/dists/buster/InRelease
E: Some index files failed to download. They have been ignored, or old ones used instead.
P: Begin unmounting filesystems...
P: Saving caches...
Reading package lists...
Building dependency tree...
make: *** [Makefile:32: iso] Error 1

Building with the Docker image has been easy, so access to the 1.3 official builds shouldn’t be harder than taking the time to build them.

As for the keymap problem, my baseless speculation leads me to suspect something in the scripts that build the chroot which is then placed on the ISO. Did they forget debconf console-setup? Some package? The /bin/setupcon file is missing and without it keyboard-setup.service won’t work.
One of the first things I noticed is that from version 1.3 onwards the characters of the console are the native ones, and not the typical font used by Debian-based distributions; could this be related?
I opened a thread on the forum, and I’ll wait some more time before officially opening a bug in Phabricator. How long should I wait? Two weeks?

What's on this Page