%define debug_package %{nil} Name: code Version: 1.93.1 Release: 3 License: MIT Group: Development/Tools Summary: Code editing. Redefined. Url: https://github.com/microsoft/vscode AutoReq: 0 %global __provides_exclude_from ^%{_datadir}/%{name}/.*\\.so.*$ Source0: vscode-%{version}.tar.gz Patch1: vscode-name.patch BuildRequires: python3 BuildRequires: git BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: make BuildRequires: npm BuildRequires: wget BuildRequires: unzip BuildRequires: pkg-config BuildRequires: libX11-devel BuildRequires: libxkbfile-devel BuildRequires: libsecret-devel BuildRequires: krb5-devel BuildRequires: nss BuildRequires: dbus-devel BuildRequires: atk-devel BuildRequires: at-spi2-atk-devel BuildRequires: cups-libs BuildRequires: pango BuildRequires: mesa-libgbm BuildRequires: alsa-lib BuildRequires: nodejs-devel BuildRequires: nodejs-yarn %description Visual Studio Code, also commonly referred to as VS Code, is a source-code editor made by Microsoft with the Electron Framework, for Windows, Linux and macOS. Features include support for debugging, syntax highlighting, intelligent code completion, snippets, code refactoring, and embedded Git. %prep pushd %{_sourcedir} cat node_modules-build-$(arch)a* > node_modules-build-$(arch).tar.gz sha256sum -c checksum-$(arch) rm -rf ${HOME}/.cache/electron/edda2a221019110621f56af6c7a459e02ca6fa574ebe09e0e88459fec84f3238/ mkdir -p ${HOME}/.cache/electron/edda2a221019110621f56af6c7a459e02ca6fa574ebe09e0e88459fec84f3238/ if [ "$(arch)" == "x86_64" ]; then cp electron-v30.4.0-linux-x64.zip ${HOME}/.cache/electron/edda2a221019110621f56af6c7a459e02ca6fa574ebe09e0e88459fec84f3238/ else cp electron-v30.4.0-linux-arm64.zip ${HOME}/.cache/electron/edda2a221019110621f56af6c7a459e02ca6fa574ebe09e0e88459fec84f3238/ fi popd %setup -q -n vscode-%{version} %autopatch -p1 -M 1 %build tar -xf %{_sourcedir}/node_modules-build-$(arch).tar.gz if [ "$(arch)" == "x86_64" ]; then yarn run gulp vscode-linux-x64 yarn run gulp vscode-linux-x64-prepare-rpm else yarn run gulp vscode-linux-arm64 yarn run gulp vscode-linux-arm64-prepare-rpm fi %install mkdir -p %{buildroot}%{_datadir} cp -arf .build/linux/rpm/$(arch)/rpmbuild/BUILD/usr/share/* %{buildroot}%{_datadir} pushd %{buildroot}%{_datadir}/code/resources/app/extensions unzip %{_sourcedir}/ms-vscode.js-debug.1.93.0.vsix extension/* mv extension ms-vscode.js-debug unzip %{_sourcedir}/ms-vscode.js-debug-companion.1.1.3.vsix extension/* mv extension ms-vscode.js-debug-companion unzip %{_sourcedir}/ms-vscode.vscode-js-profile-table.1.0.9.vsix extension/* mv extension ms-vscode.vscode-js-profile-table popd %files %{_datadir}/%{name}/ %{_datadir}/applications/%{name}.desktop %{_datadir}/applications/%{name}-url-handler.desktop %{_datadir}/appdata/%{name}.appdata.xml %{_datadir}/mime/packages/%{name}-workspace.xml %{_datadir}/pixmaps/code.png %{_datadir}/bash-completion/completions/%{name} %{_datadir}/zsh/site-functions/_%{name} %post ln -s %{_datadir}/code/bin/code /usr/bin/code update-desktop-database update-mime-database %{_datadir}/mime %postun rm -rf /usr/bin/code update-desktop-database update-mime-database %{_datadir}/mime %changelog * Thu Dec 5 2024 wangkui - 1.93.1-3 - optimized space usage * Thu Oct 10 2024 wangkui - 1.93.1-2 - remove git clone * Wed Oct 9 2024 wangkui - 1.93.1-1 - init