Skip to content
Snippets Groups Projects
Commit 7c9f1186 authored by Andri Joos's avatar Andri Joos :blush:
Browse files

Merge branch 'update' into 'master'

Update

See merge request andrijoos/pc-setup-scripts!1
parents 7c877b91 5c5321bc
No related branches found
No related tags found
No related merge requests found
# pc-setup-scripts
## todos
- proton vpn (if repo does not change)
- flatseal
- editors as flatpak
- obsidian as flatpak
- add user to docker & vboxusers group
......@@ -45,6 +45,10 @@ $element_desktop_key "$element_desktop_label" $element_desktop_enabled \
$dconf_editor_key "$dconf_editor_label" $dconf_editor_enabled \
$openssh_server_key "$openssh_server_label" $openssh_server_enabled \
$openconnect_key "$openconnect_label" $openconnect_enabled \
$protonvpn_key "$protonvpn_label" $protonvpn_enabled \
$flatseal_key "$flatseal_label" $flatseal_enabled \
$wireguard_key "$wireguard_label" $wireguard_enabled \
$remmina_key "$remmina_label" $remmina_enabled \
$swap_key "$swap_label" $swap_enabled \
3>&1 1>&2 2>&3)
IFS=' ' read -a selected_options <<< $selected_tags
......@@ -114,9 +118,6 @@ do
elif [ $option = $intellij_idea_key ]
then
install_intellij_idea
elif [ $option = $teams_key ]
then
install_teams
elif [ $option = $linssid_key ]
then
install_linssid
......@@ -174,6 +175,18 @@ do
elif [ $option = $openconnect_key ]
then
install_openconnect
elif [ $option = $protonvpn_key ]
then
install_protonvpn
elif [ $option = $flatseal_key ]
then
install_flatseal
elif [ $option = $wireguard_key ]
then
install_wireguard
elif [ $option = $remmina_key ]
then
install_remmina
elif [ $option = $swap_key ]
then
setup_swap
......
......@@ -7,11 +7,12 @@ snap_classic_arg="--classic"
snap_channel_arg="--channel"
snap_dangerous_arg="--dangerous"
snap_alias_cmd="sudo snap alias"
flatpak_install_cmd="sudo flatpak install -y"
flatpak_install_cmd="flatpak install --user -y"
flathub_repo="flathub"
mkdir_cmd="mkdir -p"
gtk_launch_cmd="gtk-launch"
flatpak_run_cmd="flatpak run"
add_user_to_group_cmd="sudo usermod -aG"
command_exists() {
cmd=$1
......@@ -40,7 +41,7 @@ flatpak_add_repo() {
repo_name=$1
repo_url=$2
sudo flatpak remote-add --if-not-exists $repo_name $repo_url
flatpak remote-add --user --if-not-exists $repo_name $repo_url
}
install_flatpak() {
......@@ -51,9 +52,10 @@ install_flatpak() {
install_flatpak_app() {
app_name=$1
flatpak_repo="flathub"
install_flatpak
$flatpak_install_cmd $app_name
$flatpak_install_cmd $flatpak_repo $app_name
}
make_application_entry() {
......@@ -86,8 +88,11 @@ install_firefox() {
}
install_vs_code() {
$snap_install_cmd code $snap_classic_arg
make_autostart_entry vscode "Visual Studio Code" "code" # flatpak not possible due to sandboxing (virtualenv modules not working)
# set titlebar style: https://stackoverflow.com/questions/64344700/vscode-remove-white-file-menu-on-linux
flatpak_id="com.visualstudio.code"
install_flatpak_app $flatpak_id
make_autostart_entry vscode "Visual Studio Code" "$flatpak_run_cmd $flatpak_id"
}
install_spotify() {
......@@ -119,6 +124,7 @@ install_mono_complete() {
install_virtualbox() {
$apt_install_cmd virtualbox
$add_user_to_group_cmd vboxusers $username
}
install_vlc() {
......@@ -127,6 +133,8 @@ install_vlc() {
install_docker() {
$apt_install_cmd docker.io
$add_user_to_group_cmd docker $username
}
install_kubectl() {
......@@ -171,6 +179,7 @@ install_gridsite-clients() {
}
install_flameshot() {
# Due to a bug in flameshot, follow those steps: open flameshot launcher, take screenshot from tray icon, allow permissions
flatpak_id="org.flameshot.Flameshot"
install_flatpak_app $flatpak_id
......@@ -181,10 +190,6 @@ install_intellij_idea() {
install_flatpak_app com.jetbrains.IntelliJ-IDEA-Community
}
install_teams() {
$snap_install_cmd teams
}
install_linssid() {
$apt_install_cmd linssid
}
......@@ -218,21 +223,10 @@ install_dl_driver() {
}
install_obsidian() {
install_curl
obsidian_folder="$portable_programs_path/Obsidian"
obsidian_file="$obsidian_folder/Obsidian.AppImage"
obsidian_logo_file="$obsidian_folder/logo.png"
flatpak_id="md.obsidian.Obsidian"
firefox --new-window https://obsidian.md/download
read -p "enter obsidian release number (e.g. 0.15.9): " obsidian_release
ensure_dir $obsidian_folder
curl -L https://github.com/obsidianmd/obsidian-releases/releases/download/v$obsidian_release/Obsidian-${obsidian_release}.AppImage -o $obsidian_file
chmod +x $obsidian_file
curl "https://upload.wikimedia.org/wikipedia/commons/1/10/2023_Obsidian_logo.svg" -o $obsidian_logo_file
make_application_entry obsidian Obsidian $obsidian_file $obsidian_logo_file
make_autostart_entry obsidian Obsidian "$gtk_launch_cmd obsidian"
install_flatpak_app $flatpak_id
make_autostart_entry obsidian Obsidian "$flatpak_run_cmd $flatpak_id"
}
install_staruml() {
......@@ -252,7 +246,12 @@ install_staruml() {
}
install_node() {
$snap_install_cmd node $snap_classic_arg
install_curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
export NVM_DIR="$HOME/.nvm"
\. "$NVM_DIR/nvm.sh"
nvm install 20
}
install_webstorm() {
......@@ -303,7 +302,7 @@ install_virtualenv() {
}
install_rider() {
$snap_install_cmd rider $snap_classic_arg
install_flatpak_app com.jetbrains.Rider
}
install_nextcloud_client() {
......@@ -339,3 +338,30 @@ install_openssh_server() {
install_openconnect() {
$apt_install_cmd openconnect network-manager-openconnect network-manager-openconnect-gnome
}
install_protonvpn() {
firefox --new-window https://protonvpn.com/support/official-linux-vpn-ubuntu
read -p "latest repo version (e.g. 1.0.4) " proton_repo_version
repo_installer_file="$downloads_path/proton_repo.deb"
wget https://repo.protonvpn.com/debian/dists/stable/main/binary-all/protonvpn-stable-release_${proton_repo_version}_all.deb -O $repo_installer_file
sudo dpkg -i $repo_installer_file
$apt_update_cmd
$apt_install_cmd proton-vpn-gnome-desktop
make_autostart_entry proton-vpn "proton vpn" "protonvpn-app"
}
install_flatseal() {
flatpak_id="com.github.tchx84.Flatseal"
install_flatpak_app $flatpak_id
}
install_wireguard() {
$apt_install_cmd wireguard
}
install_remmina() {
install_flatpak_app org.remmina.Remmina
}
......@@ -42,6 +42,10 @@ element_desktop_enabled=$checkbox_unchecked
dconf_editor_enabled=$checkbox_unchecked
openssh_server_enabled=$checkbox_unchecked
openconnect_enabled=$checkbox_unchecked
protonvpn_enabled=$checkbox_unchecked
flatseal_enabled=$checkbox_unchecked
wireguard_enabled=$checkbox_unchecked
remmina_enabled=$checkbox_unchecked
swap_enabled=$checkbox_unchecked
# labels
......@@ -84,6 +88,10 @@ element_desktop_key="element_desktop"
dconf_editor_key="dconf_editor"
openssh_server_key="openssh_server"
openconnect_key="openconnect"
protonvpn_key="proton_vpn"
flatseal_key="flatseal"
wireguard_key="wireguard"
remmina_key="remmina"
swap_key="swap"
# show text
......@@ -126,4 +134,8 @@ element_desktop_label="element desktop"
dconf_editor_label="dconf-editor"
openssh_server_label="openssh-server"
openconnect_label="openconnect"
protonvpn_label="proton-vpn"
flatseal_label="flatseal"
wireguard_label="wireguard"
remmina_label="remmina"
swap_label="swap"
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment