From 5c72168a7b76f0e0955670a01e7b12a2faf1278b Mon Sep 17 00:00:00 2001 From: Hyperling Date: Fri, 7 Mar 2025 08:11:04 -0700 Subject: [PATCH] Add the apt version of VS Codium for enhanced Flutter development over Flatpak version of Code OSS. Does ot compete with the Flatpak version of VS Codium. --- local.yml | 3 + tasks/workstation/linux/software/vscodium.yml | 70 +++++++++++++++++++ tasks/workstation/shared/settings/gnome.yml | 4 +- 3 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 tasks/workstation/linux/software/vscodium.yml diff --git a/local.yml b/local.yml index 4254a71..516f871 100644 --- a/local.yml +++ b/local.yml @@ -126,6 +126,9 @@ - include_tasks: tasks/workstation/linux/software/lutris.yml when: ansible_system == "Linux" + - include_tasks: tasks/workstation/linux/software/vscodium.yml + when: ansible_system == "Linux" + - include_tasks: tasks/workstation/linux/software/brave.yml when: ansible_pkg_mgr in ("apt", "dnf", "zypper") and not mobile diff --git a/tasks/workstation/linux/software/vscodium.yml b/tasks/workstation/linux/software/vscodium.yml new file mode 100644 index 0000000..ccee564 --- /dev/null +++ b/tasks/workstation/linux/software/vscodium.yml @@ -0,0 +1,70 @@ +--- +# Install version of Codium which can use local compilers and SDKs like Flutter +# properly. Flatpaks need workarounds to do this. This also lets us remove +# CodeOSS and use Codium in 2 ways. +# Commands sourced and modified based on: +# https://vscodium.com/#install-on-debian-ubuntu-deb-package +# This also exists but was not utilized: +# https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo + +## Facts ## + +# Paths + +- name: Workstation | Linux | Software | VS Codium | Facts + set_fact: + vscodium_source_list: "/etc/apt/sources.list.d/vscodium.list" + vscodium_keyfile: "/usr/share/keyrings/vscodium.gpg" + when: ansible_pkg_mgr == "apt" + +# Checks + +- name: Workstation | Linux | Software | VS Codium | Check PPA + stat: + path: "{{ vscodium_source_list }}" + register: vscodium_source_exists + when: ansible_pkg_mgr == "apt" + +## Install Repo ## + +- name: Workstation | Linux | Software | VS Codium | Add Latest Key + shell: "wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \ + | gpg --dearmor \ + | sudo tee {{ vscodium_keyfile }} > /dev/null" + when: ansible_pkg_mgr == "apt" and coding == true + +- name: Workstation | Linux | Software | VS Codium | Add PPA + shell: "{{ item }}" + loop: + - "echo 'deb [arch=amd64,arm64 signed-by={{ vscodium_keyfile }}] https://download.vscodium.com/debs vscodium main' \ + | sudo tee {{ vscodium_source_list }}" + - "sudo apt update" + when: ansible_pkg_mgr == "apt" and coding == true and not vscodium_source_exists.stat.exists + +## Install Package ## + +- name: Workstation | Linux | Software | VS Codium | Install + package: + name: + - codium + state: present + when: ansible_pkg_mgr == "apt" and coding == true + +## Remove Package ## + +- name: Workstation | Linux | Software | VS Codium | Uninstall + package: + name: + - codium + state: absent + when: ansible_pkg_mgr == "apt" and coding != true + +## Remove Repo ## + +- name: Workstation | Linux | Software | VS Codium | Remove PPA + shell: "{{ item }}" + loop: + - "mv {{ vscodium_source_list }} ~/TRASH/" + - "mv /etc/apt/keyrings/vscodium*.gpg ~/TRASH/" + - "sudo apt update" + when: ansible_pkg_mgr == "apt" and coding != true and vscodium_source_exists.stat.exists diff --git a/tasks/workstation/shared/settings/gnome.yml b/tasks/workstation/shared/settings/gnome.yml index 9b77745..79900bd 100644 --- a/tasks/workstation/shared/settings/gnome.yml +++ b/tasks/workstation/shared/settings/gnome.yml @@ -17,7 +17,7 @@ , 'org.telegram.desktop.desktop' , 'com.discordapp.Discord.desktop' , 'com.vscodium.codium.desktop' - , 'com.visualstudio.code-oss.desktop', 'code-oss.desktop' + , 'codium.desktop' , 'com.google.AndroidStudio.desktop' , 'org.shotcut.Shotcut.desktop' , 'io.lmms.LMMS.desktop' @@ -36,6 +36,8 @@ # 2025-01-01 # Reduce the amount of icons on the sidebar, things that may get added back. #, 'org.godotengine.Godot.desktop' +# 2025-03-07 Removed in place of a 2nd VS Codium install (apt version). +#, 'com.visualstudio.code-oss.desktop', 'code-oss.desktop' - name: Workstation | Account Management | GNOME | Facts (NixOS) set_fact: