From 072645bc9b0011c89076f97acb4c5784845d3c2b Mon Sep 17 00:00:00 2001 From: Guru Swarupa <112751363+guruswarupa@users.noreply.github.com> Date: Sun, 22 Sep 2024 17:58:52 +0000 Subject: [PATCH] added communication apps to application setup + small fix in dev tools (#618) * added communication apps to application setup * Update core/tabs/applications-setup/communication-apps/thunderbird-setup.sh Co-authored-by: Adam Perkowski * Update core/tabs/applications-setup/communication-apps/discord-setup.sh Co-authored-by: Adam Perkowski * Update core/tabs/applications-setup/communication-apps/jitsi-meet-setup.sh Co-authored-by: Adam Perkowski * Update core/tabs/applications-setup/communication-apps/signal-setup.sh Co-authored-by: Adam Perkowski * Update core/tabs/applications-setup/communication-apps/telegram-setup.sh Co-authored-by: Adam Perkowski * Update core/tabs/applications-setup/communication-apps/discord-setup.sh Co-authored-by: Adam Perkowski * Update core/tabs/applications-setup/communication-apps/jitsi-meet-setup.sh Co-authored-by: Adam Perkowski * add --needed * fix script name. * added task_list * fix sh -c * Update core/tabs/applications-setup/communication-apps/jitsi-setup.sh Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com> * speed up github desktop installation * Update core/tabs/applications-setup/communication-apps/zoom-setup.sh Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com> * Update core/tabs/applications-setup/tab_data.toml Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com> * Update core/tabs/applications-setup/tab_data.toml Co-authored-by: Adam Perkowski --------- Co-authored-by: Adam Perkowski Co-authored-by: Nyx <144965845+nnyyxxxx@users.noreply.github.com> --- .../Developer-tools/githubdesktop-setup.sh | 2 +- .../communication-apps/discord-setup.sh | 35 +++++++++++++++ .../communication-apps/jitsi-setup.sh | 36 +++++++++++++++ .../communication-apps/signal-setup.sh | 37 +++++++++++++++ .../communication-apps/slack-setup.sh | 25 +++++++++++ .../communication-apps/telegram-setup.sh | 33 ++++++++++++++ .../communication-apps/thunderbird-setup.sh | 33 ++++++++++++++ .../communication-apps/zoom-setup.sh | 25 +++++++++++ core/tabs/applications-setup/tab_data.toml | 45 +++++++++++++++++++ 9 files changed, 270 insertions(+), 1 deletion(-) create mode 100644 core/tabs/applications-setup/communication-apps/discord-setup.sh create mode 100644 core/tabs/applications-setup/communication-apps/jitsi-setup.sh create mode 100644 core/tabs/applications-setup/communication-apps/signal-setup.sh create mode 100644 core/tabs/applications-setup/communication-apps/slack-setup.sh create mode 100644 core/tabs/applications-setup/communication-apps/telegram-setup.sh create mode 100644 core/tabs/applications-setup/communication-apps/thunderbird-setup.sh create mode 100644 core/tabs/applications-setup/communication-apps/zoom-setup.sh diff --git a/core/tabs/applications-setup/Developer-tools/githubdesktop-setup.sh b/core/tabs/applications-setup/Developer-tools/githubdesktop-setup.sh index 429be777..8eae3f08 100644 --- a/core/tabs/applications-setup/Developer-tools/githubdesktop-setup.sh +++ b/core/tabs/applications-setup/Developer-tools/githubdesktop-setup.sh @@ -17,7 +17,7 @@ installGithubDesktop() { "$ESCALATION_TOOL" "$PACKAGER" ref && "$ESCALATION_TOOL" "$PACKAGER" install github-desktop ;; pacman) - "$AUR_HELPER" -S --needed --noconfirm github-desktop + "$AUR_HELPER" -S --needed --noconfirm github-desktop-bin ;; dnf) "$ESCALATION_TOOL" rpm --import https://rpm.packages.shiftkey.dev/gpg.key diff --git a/core/tabs/applications-setup/communication-apps/discord-setup.sh b/core/tabs/applications-setup/communication-apps/discord-setup.sh new file mode 100644 index 00000000..6c7a0a83 --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/discord-setup.sh @@ -0,0 +1,35 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installDiscord() { + if ! command_exists discord; then + printf "%b\n" "${YELLOW}Installing Discord...${RC}" + case "$PACKAGER" in + apt-get|nala) + curl -Lo discord.deb "https://discord.com/api/download?platform=linux&format=deb" + "$ESCALATION_TOOL" "$PACKAGER" install -y discord.deb + ;; + zypper) + "$ESCALATION_TOOL" "$PACKAGER" --non-interactive install discord + ;; + pacman) + "$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm discord + ;; + dnf) + "$ESCALATION_TOOL" "$PACKAGER" install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm + "$ESCALATION_TOOL" "$PACKAGER" install -y discord + ;; + *) + printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}" + exit 1 + ;; + esac + else + printf "%b\n" "${GREEN}Discord is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +installDiscord \ No newline at end of file diff --git a/core/tabs/applications-setup/communication-apps/jitsi-setup.sh b/core/tabs/applications-setup/communication-apps/jitsi-setup.sh new file mode 100644 index 00000000..d3139cc7 --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/jitsi-setup.sh @@ -0,0 +1,36 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installJitsi() { + if ! command_exists jitsi-meet; then + printf "%b\n" "${YELLOW}Installing Jitsi meet...${RC}" + case "$PACKAGER" in + apt-get|nala) + curl https://download.jitsi.org/jitsi-key.gpg.key | "$ESCALATION_TOOL" gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg + printf "%b\n" 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | "$ESCALATION_TOOL" tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null + "$ESCALATION_TOOL" "$PACKAGER" -y install jitsi-meet + ;; + zypper) + "$ESCALATION_TOOL" "$PACKAGER" --non-interactive install jitsi + ;; + pacman) + "$AUR_HELPER" -S --needed --noconfirm jitsi-meet-bin + ;; + dnf) + "$ESCALATION_TOOL" "$PACKAGER" install -y jitsi-meet + ;; + *) + printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}" + exit 1 + ;; + esac + else + printf "%b\n" "${GREEN}Jitsi meet is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +checkAURHelper +installJitsi \ No newline at end of file diff --git a/core/tabs/applications-setup/communication-apps/signal-setup.sh b/core/tabs/applications-setup/communication-apps/signal-setup.sh new file mode 100644 index 00000000..017c5640 --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/signal-setup.sh @@ -0,0 +1,37 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installSignal() { + if ! command_exists signal; then + printf "%b\n" "${YELLOW}Installing Signal...${RC}" + case "$PACKAGER" in + apt-get|nala) + curl -fsSL https://updates.signal.org/desktop/apt/keys.asc | gpg --dearmor > signal-desktop-keyring.gpg + cat signal-desktop-keyring.gpg | "$ESCALATION_TOOL" tee /usr/share/keyrings/signal-desktop-keyring.gpg > /dev/null + printf "%b\n" 'deb [arch=amd64 signed-by=/usr/share/keyrings/signal-desktop-keyring.gpg] https://updates.signal.org/desktop/apt xenial main' | "$ESCALATION_TOOL" tee /etc/apt/sources.list.d/signal-xenial.list + "$ESCALATION_TOOL" "$PACKAGER" -y install signal-desktop + ;; + zypper) + "$ESCALATION_TOOL" "$PACKAGER" --non-interactive install signal-desktop + ;; + pacman) + "$ESCALATION_TOOL" "$PACKAGER" -S --noconfirm signal-desktop + ;; + dnf) + "$ESCALATION_TOOL" "$PACKAGER" copr enable luminoso/Signal-Desktop + "$ESCALATION_TOOL" "$PACKAGER" install -y signal-desktop + ;; + *) + printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}" + exit 1 + ;; + esac + else + printf "%b\n" "${GREEN}Signal is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +installSignal \ No newline at end of file diff --git a/core/tabs/applications-setup/communication-apps/slack-setup.sh b/core/tabs/applications-setup/communication-apps/slack-setup.sh new file mode 100644 index 00000000..5ecdd27f --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/slack-setup.sh @@ -0,0 +1,25 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installSlack() { + if ! command_exists slack; then + printf "%b\n" "${YELLOW}Installing Slack...${RC}" + case "$PACKAGER" in + pacman) + "$AUR_HELPER" -S --needed --noconfirm slack-desktop + ;; + *) + . ./setup-flatpak.sh + flatpak install -y flathub com.slack.Slack + ;; + esac + else + printf "%b\n" "${GREEN}Slack is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +checkAURHelper +installSlack \ No newline at end of file diff --git a/core/tabs/applications-setup/communication-apps/telegram-setup.sh b/core/tabs/applications-setup/communication-apps/telegram-setup.sh new file mode 100644 index 00000000..bb4f6aed --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/telegram-setup.sh @@ -0,0 +1,33 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installTelegram() { + if ! command_exists telegram-desktop; then + printf "%b\n" "${YELLOW}Installing Telegram...${RC}" + case "$PACKAGER" in + apt-get|nala) + "$ESCALATION_TOOL" "$PACKAGER" -y install telegram-desktop + ;; + zypper) + "$ESCALATION_TOOL" "$PACKAGER" --non-interactive install telegram-desktop + ;; + pacman) + "$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm telegram-desktop + ;; + dnf) + "$ESCALATION_TOOL" "$PACKAGER" install -y telegram-desktop + ;; + *) + printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}" + exit 1 + ;; + esac + else + printf "%b\n" "${GREEN}Telegram is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +installTelegram \ No newline at end of file diff --git a/core/tabs/applications-setup/communication-apps/thunderbird-setup.sh b/core/tabs/applications-setup/communication-apps/thunderbird-setup.sh new file mode 100644 index 00000000..f754c11a --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/thunderbird-setup.sh @@ -0,0 +1,33 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installThunderBird() { + if ! command_exists thunderbird; then + printf "%b\n" "${YELLOW}Installing Thunderbird...${RC}" + case "$PACKAGER" in + apt-get|nala) + "$ESCALATION_TOOL" "$PACKAGER" -y install thunderbird + ;; + zypper) + "$ESCALATION_TOOL" "$PACKAGER" --non-interactive install thunderbird + ;; + pacman) + "$ESCALATION_TOOL" "$PACKAGER" -S --needed --noconfirm thunderbird + ;; + dnf) + "$ESCALATION_TOOL" "$PACKAGER" install -y thunderbird + ;; + *) + printf "%b\n" "${RED}Unsupported package manager: ""$PACKAGER""${RC}" + exit 1 + ;; + esac + else + printf "%b\n" "${GREEN}Thunderbird is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +installThunderBird \ No newline at end of file diff --git a/core/tabs/applications-setup/communication-apps/zoom-setup.sh b/core/tabs/applications-setup/communication-apps/zoom-setup.sh new file mode 100644 index 00000000..4b50013a --- /dev/null +++ b/core/tabs/applications-setup/communication-apps/zoom-setup.sh @@ -0,0 +1,25 @@ +#!/bin/sh -e + +. ../../common-script.sh + +installZoom() { + if ! command_exists zoom; then + printf "%b\n" "${YELLOW}Installing Zoom...${RC}" + case "$PACKAGER" in + pacman) + "$AUR_HELPER" -S --needed --noconfirm zoom + ;; + *) + . ./setup-flatpak.sh + flatpak install -y flathub us.zoom.Zoom + ;; + esac + else + printf "%b\n" "${GREEN}Zoom is already installed.${RC}" + fi +} + +checkEnv +checkEscalationTool +checkAURHelper +installZoom \ No newline at end of file diff --git a/core/tabs/applications-setup/tab_data.toml b/core/tabs/applications-setup/tab_data.toml index b8bab3b3..aeacba1b 100644 --- a/core/tabs/applications-setup/tab_data.toml +++ b/core/tabs/applications-setup/tab_data.toml @@ -45,6 +45,51 @@ description = "Ngrok is a tool that creates secure, temporary tunnels to expose script = "Developer-tools/ngrok-setup.sh" task_list = "installation" +[[data]] +name = "Communication Apps" + +[[data.entries]] +name = "Discord" +description = "Discord is a versatile communication platform for gamers and communities, offering voice, video, and text chat features." +script = "communication-apps/discord-setup.sh" +task_list = "installation" + +[[data.entries]] +name = "Jitsi" +description = "Jitsi Meet is an open-source video conferencing tool that allows users to host and join secure meetings directly from their web browsers without the need for downloads." +script = "communication-apps/jitsi-setup.sh" +task_list = "installation" + +[[data.entries]] +name = "Signal" +description = "Signal is a privacy-focused messaging app that provides end-to-end encryption for secure text, voice, and video communication." +script = "communication-apps/signal-setup.sh" +task_list = "installation" + +[[data.entries]] +name = "Slack" +description = "Slack is a collaboration platform designed for team communication, featuring channels, direct messaging, file sharing, and integrations with various productivity tools." +script = "communication-apps/slack-setup.sh" +task_list = "installation" + +[[data.entries]] +name = "Telegram" +description = "Telegram is a cloud-based messaging app known for its speed and security, offering features like group chats, channels, and end-to-end encrypted calls." +script = "communication-apps/telegram-setup.sh" +task_list = "installation" + +[[data.entries]] +name = "Zoom" +description = "Zoom is a widely-used video conferencing platform that allows users to host virtual meetings, webinars, and online collaboration with features like screen sharing and recording." +script = "communication-apps/zoom-setup.sh" +task_list = "installation" + +[[data.entries]] +name = "Thunderbird" +description = "Thunderbird is a free, open-source email client that offers powerful features like customizable email management, a built-in calendar, and extensive add-ons for enhanced functionality." +script = "communication-apps/thunderbird-setup.sh" +task_list = "installation" + [[data]] name = "Alacritty" description = "Alacritty is a modern terminal emulator that comes with sensible defaults, but allows for extensive configuration. By integrating with other applications, rather than reimplementing their functionality, it manages to provide a flexible set of features with high performance. The supported platforms currently consist of BSD, Linux, macOS and Windows.\nThis command installs and condifures alacritty terminal emulator."