Microsoft/vscode

RPM %post scriplet deletes /usr/local/bin/code

Open

#236,132 创建于 2024年12月14日

在 GitHub 查看
 (1 评论) (1 反应) (2 负责人)TypeScript (10,221 fork)batch import
bughelp wantedinstall-updatelinuxpackagingrpm

仓库指标

Star
 (74,848 star)
PR 合并指标
 (平均合并 11小时 43分钟) (30 天内合并 1,000 个 PR)

描述

Does this issue occur when all extensions are disabled?: Yes

  • VS Code Version: 1.96.0 (RPM from the Microsoft repo)
  • OS Version: Fedora 41

The %post scriptlet in the RPM spec file deletes /usr/local/bin/code even if it doesn't belong to a previous vscode installation. This is very irritating because it's the easiest way to append arbitrary command line arguments such as --ozone-platform=wayland system-wide. Please either add some validation before deleting it, or just stop deleting it altogether.

https://github.com/microsoft/vscode/blob/1.96.0/resources/linux/rpm/code.spec.template#L48-L51

Steps to Reproduce:

  1. Install a script at /usr/local/bin/code which launches /usr/bin/code with extra arguments
  2. Reinstall the RPM file provided by Microsoft
  3. /usr/local/bin/code is now deleted

贡献者指南