124 lines
3.5 KiB
RPMSpec
124 lines
3.5 KiB
RPMSpec
%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 <wangkui35@h-partner.com> - 1.93.1-3
|
|
- optimized space usage
|
|
|
|
* Thu Oct 10 2024 wangkui <wangkui35@h-partner.com> - 1.93.1-2
|
|
- remove git clone
|
|
|
|
* Wed Oct 9 2024 wangkui <wangkui35@h-partner.com> - 1.93.1-1
|
|
- init
|