#!/bin/bash # user to start MUST be first in arguments # if not supplied then will use default chromium_() { local DEFAULT=/opt/chromium # local DEFAULT="$HOME/.local/share/chromium" local exe="/usr/bin/chromium" [[ $1 == -g ]] && exe=$(command -v google-chrome) && shift echo exe $exe if [[ ! -f $exe ]]; then echo chromium/chrome not installed, checking for flatpak version flatpak=$(flatpak info com.github.Eloston.UngoogledChromium | grep error:) if [[ $flatpak ]]; then echo no flatpak version either - exiting && return 1 else flatpak=true exe="/usr/bin/flatpak run --branch=stable --arch=x86_64 --filesystem= --command=/app/bin/chromium --file-forwarding com.github.Eloston.UngoogledChromium @@u" fi fi local instance=${CHROMIUM_INSTANCE} [[ $1 && (! $1 == -*) ]] && instance=$1 && shift [[ $1 && (! $1 == -*) ]] && url=$1 && shift if [[ $instance =~ http[s]?:\/\/ ]]; then url=$instance instance="" if [[ $url =~ ^-+ ]]; then url="" set -- "$@" $url url="" fi fi local dir if [[ ! $instance ]]; then unset CHROME_CONFIG_HOME $HOME/.config/chromium echo starting chromium for $USER in dir=$HOME/.config/chromium exe="${exe//$dir}" # echo $exe "$@" $([[ $flatpak ]] && echo " @@") # $exe "$@" else [[ $instance == "incognito" ]] && set -- "$@" "-incognito" dir=${CHROMIUM_HOME:-$DEFAULT}/$instance exe="${exe//$dir}" fi mkdir -p $dir echo $exe $@ --user-data-dir=$dir $url $([[ $flatpak ]] && echo "@@") $exe $@ --user-data-dir=$dir $url $([[ $flatpak ]] && echo "@@") } # # if script was executed then call the function (return 0 2>/dev/null) || chromium_ $@