fix(editor_vscode): use the packaged version of VSCode

Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2024-12-22 20:29:09 +01:00
parent ab83e7c30c
commit da9662533a
Signed by: mfocko
SSH key fingerprint: SHA256:icm0fIOSJUpy5+1x23sfr+hLtF9UhY8VpMC7H4WFJP8
9 changed files with 21 additions and 89 deletions

View file

@ -1,12 +0,0 @@
[Desktop Entry]
Name=Visual Studio Code - URL Handler
Comment=Code Editing. Redefined.
GenericName=Text Editor
Exec=/opt/VSCode-linux-x64/bin/code-insiders --no-sandbox --open-url %U
Icon=/opt/VSCode-linux-x64/resources/app/resources/linux/code.png
Type=Application
NoDisplay=true
StartupNotify=true
Categories=Utility;TextEditor;Development;IDE;
MimeType=x-scheme-handler/vscode-insiders;
Keywords=vscode;

View file

@ -1,18 +0,0 @@
[Desktop Entry]
Name=Visual Studio Code Insiders
Comment=Code Editing. Refined.
GenericName=Text Editor
Exec=/opt/VSCode-linux-x64/bin/code-insiders --no-sandbox --unity-launch %F
Icon=/opt/VSCode-linux-x64/resources/app/resources/linux/code.png
Type=Application
StartupNotify=false
StartupWMClass=code - insiders
Categories=Utility;TextEditor;Development;IDE;
MimeType=text/plain;inode/directory;
Actions=new-empty-window;
Keywords=vscode;
[Desktop Action new-empty-window]
Name=New Empty Window
Exec=/opt/VSCode-linux-x64/bin/code-insiders --no-sandbox --new-window %F
Icon=/opt/VSCode-linux-x64/resources/app/resources/linux/code.png

View file

@ -1,31 +0,0 @@
#!/bin/bash
# for upstream
URL='https://code.visualstudio.com/sha/download?build=insider&os=linux-x64'
# for local
# URL='https://maxwell.mfocko.xyz/code-insiders.tar.gz'
# for local over VPN (also use --no-check-certificate)
# URL='https://172.16.0.2/code-insiders.tar.gz'
echo ">>> Downloading";
wget $URL -O /tmp/code.tar.gz
echo ">>> Removing and extracting";
rm -rf /opt/VSCode-linux-x64
tar xvaf /tmp/code.tar.gz -C /opt/
# Check for binaries
if ! [ -x /usr/local/bin/code-insiders ]; then
echo ">>> Linking binaries";
ln -s /opt/VSCode-linux-x64/bin/code-insiders /usr/local/bin/
ln -s /opt/VSCode-linux-x64/bin/code-insiders /usr/local/bin/code
fi
# Check for *.desktop
if ! ls /usr/share/applications | grep visual-studio-code; then
echo ">>> Installing desktop files";
PATH_TO_APPS=/home/mfocko/.local/share/visual-studio-code-insiders
sudo cp $PATH_TO_APPS{,-url-handler}.desktop /usr/share/applications/;
fi

View file

@ -0,0 +1 @@
install_rhel.yml

View file

@ -0,0 +1 @@
install_rhel.yml

View file

@ -0,0 +1 @@
install_rhel.yml

View file

@ -0,0 +1 @@
install_rhel.yml

View file

@ -0,0 +1,12 @@
---
- name: Resolve URL to the VSCode RPM
ansible.builtin.uri:
url: https://code.visualstudio.com/sha/download?build=insider&os=linux-rpm-x64
register: _vscode_rpm_response
- name: Install VSCode via RPM
ansible.builtin.dnf:
name: "{{ _vscode_rpm_response.url }}"
disable_gpg_check: true
state: present
become: true

View file

@ -1,28 +1,13 @@
--- ---
- name: Install VSCode
ansible.builtin.include_tasks: "install_{{ ansible_distribution }}.yml"
tags: install
- name: Create directories for VSCode - name: Create directories for VSCode
ansible.builtin.file: ansible.builtin.file:
path: "{{ item }}" path: "$HOME/.config/Code - Insiders/User"
state: directory state: directory
mode: 0740 mode: 0740
loop:
- ~/.local/bin
- ~/.local/share
- "$HOME/.config/Code - Insiders/User"
- name: Install VSCode script
ansible.builtin.copy:
src: files/update.sh
dest: ~/.local/bin/code-update.sh
mode: 0640
- name: Create app info for VSCode
ansible.builtin.copy:
src: files/code{{ item }}.desktop
dest: ~/.local/share/applications/visual-studio-code-insiders{{ item }}.desktop
mode: 0640
loop:
- ""
- "-url-handler"
- name: Install VSCode configuration - name: Install VSCode configuration
ansible.builtin.copy: ansible.builtin.copy:
@ -32,11 +17,3 @@
loop: loop:
- settings - settings
- keybindings - keybindings
- name: Install VSCode
ansible.builtin.command:
cmd: bash /home/{{ target_user }}/.local/bin/code-update.sh
creates: /opt/VSCode-linux-x64
become: true
when: false
tags: install