You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Next time you try to update your system, you discover that it has been broken:
sudo apt update
E: Conflicting values set for option Signed-By regarding source https://packages.microsoft.com/repos/code/ stable: /usr/share/keyrings/gpgsecurity.microsoft.com.gpg !=
E: The list of sources could not be read.
This happens because vscode decided that
it was a good idea to import its own key in system apt keyring, which is not a good idea from the point of view of security. this is how Google does it, for example:
cat gvisor.list
deb [arch=amd64 signed-by=/usr/share/keyrings/gvisor-archive-keyring.gpg] https://storage.googleapis.com/gvisor/releases release main
(note, they are using signed-by, which explicitly associates their key with their repo)
and then it decided that it was a good idea to create a 2nd apt-source file:
cat /etc/apt/sources.list.d/vscode.list
### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out this entry, but any other modifications may be lost.
deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/code stable main
At the very least, it would be nice to use the signed-by option in vscode.list.
It would be even better not to introduce a second vscode.list file. Why do you need to do it, if vscode has already been installed anyway?
This is a duplicate of #22145, you can see that issue for why it's like that but ultimately the issue stayed open for over 2 years and there was little to no interest in getting it fixed.
Does this issue occur when all extensions are disabled?: Yes
Steps to Reproduce
Install VsCode using by
*.sources
files in apt:Copy the key:
sudo cp gpgsecurity.microsoft.com.gpg /usr/share/keyrings/gpgsecurity.microsoft.com.gpg
Install vscode:
sudo apt update && sudo apt install code
Next time you try to update your system, you discover that it has been broken:
This happens because vscode decided that
it was a good idea to import its own key in system apt keyring, which is not a good idea from the point of view of security. this is how Google does it, for example:
(note, they are using signed-by, which explicitly associates their key with their repo)
and then it decided that it was a good idea to create a 2nd apt-source file:
At the very least, it would be nice to use the
signed-by
option invscode.list
.It would be even better not to introduce a second
vscode.list
file. Why do you need to do it, if vscode has already been installed anyway?System information
Extensions
Extensions are disabledA/B Experiments
The text was updated successfully, but these errors were encountered: