Compare commits

..

6 Commits

Author SHA1 Message Date
Maksim Ivanov
5fbd2e216e Merge pull request #15 from arielj/fix-readonly-variables
Download files only once, fix issue setting readonly vars
2023-06-11 19:23:41 +03:00
Ariel Juodziukynas
e06398b956 Download files only once, fix issue setting readonly vars 2023-06-11 13:02:14 -03:00
Maksim Ivanov
4b4541cd59 Merge pull request #14 from arielj/fix-array-push
Push elements into array instead of concatenating strings
2023-06-11 18:55:20 +03:00
Ariel Juodziukynas
a850c9bb5c Push elements into bash array instead of string concat 2023-06-11 12:44:09 -03:00
Maksim Ivanov
40513adc42 Merge pull request #13 from kaptcha0/patch-1
Update fix-opera.sh
2023-06-11 12:07:28 +03:00
kaptcha
8d56cf17dd Update fix-opera.sh
Added support for multiple Opera versions, mainly the stable and beta versions.
2023-06-10 13:48:26 -04:00

View File

@@ -30,11 +30,15 @@ readonly FFMPEG_SO_NAME='libffmpeg.so'
readonly WIDEVINE_SO_NAME='libwidevinecdm.so' readonly WIDEVINE_SO_NAME='libwidevinecdm.so'
readonly WIDEVINE_MANIFEST_NAME='manifest.json' readonly WIDEVINE_MANIFEST_NAME='manifest.json'
readonly OPERA_DIR=$(dirname $(readlink -f $(which opera))) OPERA_VERSIONS=()
readonly OPERA_LIB_DIR="$OPERA_DIR/lib_extra"
readonly OPERA_WIDEVINE_DIR="$OPERA_LIB_DIR/WidevineCdm" if [ -x "$(command -v opera)" ]; then
readonly OPERA_WIDEVINE_SO_DIR="$OPERA_WIDEVINE_DIR/_platform_specific/linux_x64" OPERA_VERSIONS+=("opera")
readonly OPERA_WIDEVINE_CONFIG="$OPERA_DIR/resources/widevine_config.json" fi
if [ -x "$(command -v opera-beta)" ]; then
OPERA_VERSIONS+=("opera-beta")
fi
#Getting download links #Getting download links
printf 'Getting download links...\n' printf 'Getting download links...\n'
@@ -80,30 +84,41 @@ if $FIX_WIDEVINE; then
unzip -o "$TEMP_DIR/opera-fix/widevine.zip" -d $TEMP_DIR/opera-fix > /dev/null unzip -o "$TEMP_DIR/opera-fix/widevine.zip" -d $TEMP_DIR/opera-fix > /dev/null
fi fi
#Removing old libraries and preparing directories for opera in ${OPERA_VERSIONS[@]}; do
printf 'Removing old libraries & making directories...\n' echo "Doing $opera"
##ffmpeg EXECUTABLE=$(command -v "$opera")
rm -f "$OPERA_LIB_DIR/$FFMPEG_SO_NAME"
mkdir -p "$OPERA_LIB_DIR" OPERA_DIR=$(dirname $(readlink -f $EXECUTABLE))
##Widevine OPERA_LIB_DIR="$OPERA_DIR/lib_extra"
if $FIX_WIDEVINE; then OPERA_WIDEVINE_DIR="$OPERA_LIB_DIR/WidevineCdm"
OPERA_WIDEVINE_SO_DIR="$OPERA_WIDEVINE_DIR/_platform_specific/linux_x64"
OPERA_WIDEVINE_CONFIG="$OPERA_DIR/resources/widevine_config.json"
#Removing old libraries and preparing directories
printf 'Removing old libraries & making directories...\n'
##ffmpeg
rm -f "$OPERA_LIB_DIR/$FFMPEG_SO_NAME"
mkdir -p "$OPERA_LIB_DIR"
##Widevine
if $FIX_WIDEVINE; then
rm -rf "$OPERA_WIDEVINE_DIR" rm -rf "$OPERA_WIDEVINE_DIR"
mkdir -p "$OPERA_WIDEVINE_SO_DIR" mkdir -p "$OPERA_WIDEVINE_SO_DIR"
fi fi
#Moving libraries to its place #Moving libraries to its place
printf 'Moving libraries to their places...\n' printf 'Moving libraries to their places...\n'
##ffmpeg ##ffmpeg
mv -f "$TEMP_DIR/opera-fix/$FFMPEG_SO_NAME" "$OPERA_LIB_DIR" cp -f "$TEMP_DIR/opera-fix/$FFMPEG_SO_NAME" "$OPERA_LIB_DIR"
chmod 0644 "$OPERA_LIB_DIR/$FFMPEG_SO_NAME" chmod 0644 "$OPERA_LIB_DIR/$FFMPEG_SO_NAME"
##Widevine ##Widevine
if $FIX_WIDEVINE; then if $FIX_WIDEVINE; then
mv -f "$TEMP_DIR/opera-fix/$WIDEVINE_SO_NAME" "$OPERA_WIDEVINE_SO_DIR" cp -f "$TEMP_DIR/opera-fix/$WIDEVINE_SO_NAME" "$OPERA_WIDEVINE_SO_DIR"
chmod 0644 "$OPERA_WIDEVINE_SO_DIR/$WIDEVINE_SO_NAME" chmod 0644 "$OPERA_WIDEVINE_SO_DIR/$WIDEVINE_SO_NAME"
mv -f "$TEMP_DIR/opera-fix/$WIDEVINE_MANIFEST_NAME" "$OPERA_WIDEVINE_DIR" cp -f "$TEMP_DIR/opera-fix/$WIDEVINE_MANIFEST_NAME" "$OPERA_WIDEVINE_DIR"
chmod 0644 "$OPERA_WIDEVINE_DIR/$WIDEVINE_MANIFEST_NAME" chmod 0644 "$OPERA_WIDEVINE_DIR/$WIDEVINE_MANIFEST_NAME"
printf "[\n {\n \"preload\": \"$OPERA_WIDEVINE_DIR\"\n }\n]\n" > "$OPERA_WIDEVINE_CONFIG" printf "[\n {\n \"preload\": \"$OPERA_WIDEVINE_DIR\"\n }\n]\n" > "$OPERA_WIDEVINE_CONFIG"
fi fi
done
#Removing temporary files #Removing temporary files
printf 'Removing temporary files...\n' printf 'Removing temporary files...\n'