add helium-browser (#1340)
Deploy Hugo site to Pages / build (push) Has been cancelled
nix / checks (push) Has been cancelled
nix / update (push) Has been cancelled
Check for typos / check-typos (push) Has been cancelled
Deploy Hugo site to Pages / deploy (push) Has been cancelled

* feat(browsers): add helium-browser

helium browser is supported in AUR, dnf and apt.

if user is using arch linux (or arch based distro), script automatically downloads from AUR.

if user is using fedora (or fedora based distro), script adds a copr repo and installs helium

if user is using debian (or debian based distro), script adds helium repo and installs helium

for other distros there's no installation :(

* feat(browsers): add helium-browser

* chore(helium-browser): format the code

* fix(helium-browser): fix an operator issue with command check

* fix(helium-browser): change wrong uninstall command

* chore(helium-browser): remove unneeded things

* fix(helium-browser): pacman remove helium

there's no --needed flag for pacman -R

* fix(helium-browser): posix usability and packager update

- i forgot to add update and purge commands

- better posix usability (changed [[]] to [])
This commit is contained in:
UmutKzl
2026-07-17 22:46:24 +03:00
committed by GitHub
parent 7ed1ddb5e9
commit 41fc99189a
2 changed files with 75 additions and 0 deletions
+69
View File
@@ -0,0 +1,69 @@
#!/bin/sh -e
. ../../common-script.sh
installHeliumBrowser() {
if ! command_exists Helium && ! command_exists helium; then
printf "%b\n" "${YELLOW}Installing Helium Browser...${RC}"
case "$PACKAGER" in
pacman)
"$AUR_HELPER" -S --needed --noconfirm helium-browser-bin
;;
dnf)
"$ESCALATION_TOOL" "$PACKAGER" copr enable imput/helium
"$ESCALATION_TOOL" "$PACKAGER" install -y helium-bin
;;
nala | apt-get)
"$ESCALATION_TOOL" "$PACKAGER" install -y curl
curl -fsSL https://raw.githubusercontent.com/imputnet/helium-linux/main/pubkey.asc | "$ESCALATION_TOOL" gpg --dearmor -o /usr/share/keyrings/helium.gpg
echo "deb [signed-by=/usr/share/keyrings/helium.gpg] https://pkg.helium.computer/deb stable main" | "$ESCALATION_TOOL" tee /etc/apt/sources.list.d/helium.list
"$ESCALATION_TOOL" "$PACKAGER" update
"$ESCALATION_TOOL" "$PACKAGER" install -y helium-bin
;;
*)
printf "%b\n" "${RED}Helium doesn't support ${PACKAGER}${RC}"
;;
esac
else
printf "%b\n" "${GREEN}Helium Browser is already installed.${RC}"
fi
}
uninstallHeliumBrowser() {
if command_exists Helium || command_exists helium; then
printf "%b\n" "${YELLOW}Removing Helium Browser...${RC}"
case "$PACKAGER" in
pacman)
"$ESCALATION_TOOL" "$PACKAGER" -R --noconfirm helium-browser-bin
;;
dnf)
"$ESCALATION_TOOL" "$PACKAGER" remove -y helium-bin
"$ESCALATION_TOOL" "$PACKAGER" copr disable imput/helium
;;
nala | apt-get)
[ -f "/usr/share/keyrings/helium.gpg" ] && "$ESCALATION_TOOL" rm "/usr/share/keyrings/helium.gpg"
[ -f "/etc/apt/sources.list.d/helium.list" ] && "$ESCALATION_TOOL" rm "/etc/apt/sources.list.d/helium.list"
"$ESCALATION_TOOL" "$PACKAGER" update
"$ESCALATION_TOOL" "$PACKAGER" purge -y helium-bin
;;
esac
else
printf "%b\n" "${GREEN}Helium Browser is not installed.${RC}"
fi
}
main() {
printf "%b\n" "${YELLOW}Do you want to Install or Uninstall Helium Browser?${RC}"
printf "%b\n" "1. ${YELLOW}Install Helium Browser${RC}"
printf "%b\n" "2. ${YELLOW}Uninstall Helium Browser${RC}"
printf "%b" "Enter your choice [1-2]: "
read -r CHOICE
case "$CHOICE" in
1) installHeliumBrowser ;;
2) uninstallHeliumBrowser ;;
*) printf "%b\n" "${RED}Invalid choice.${RC}" && exit 1 ;;
esac
}
checkEnv
main
@@ -339,6 +339,12 @@ description = "Zen Browser is a privacy-focused web browser designed for enhance
script = "browsers/zen-browser.sh"
task_list = "I"
[[data.entries]]
name = "Helium Browser"
description = "Helium Browser is a free, privacy-focused and open-source chromium-based browser designed for enhanced security and a seamless browsing experience."
script = "browsers/helium-browser.sh"
task_list = "I"
[[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. This command installs and configures alacritty terminal emulator."