vivaldiWebPanelUA.sh

ウェブブラウザ・Vivaldi の Webパネルのユーザエージェントを書き換えるシェルスクリプト。
Ubuntuなどで動作します。(Mac OS X版はこちら

【関連ブログ記事】

ソースコード  (隠す)

#!/bin/bash
# change userAgent of Vivaldi WebPanel on Ubuntu
# sudo execution is requied.
# last modified at 2015-12-02
# more detail -> http://freefielder.jp/lab/vivaldi/

# Original userAgent string  
S="Linux; Android [0-9]\+\.[0-9]\+\.[0-9]\+"
# replace to 
R="iPhone; CPU iPhone OS 9_1 like Mac OS X"

# find path of bundle.js
IFS_BAK=$IFS
IFS=$'\n'
VIV_DIR=($(ls /opt | grep 'vivaldi'))
IFS=$IFS_BAK

NUM_OF_DIR=${#VIV_DIR[*]}

if [ $NUM_OF_DIR -eq 0 ]; then
	echo;echo 'Vivaldi not found.'
	exit 0
elif [ $NUM_OF_DIR -ge 2 ]; then
	echo;echo ${NUM_OF_DIR}' Vivaldies are found. Choose one and input number.'
	N=1
	for obj in "${VIV_DIR[@]}"; do
		echo $N') '${VIV_DIR[`expr $N - 1`]}
		N=`expr $N + 1`
	done
	printf ">> "
	read N
#
	expr $N + 1 >/dev/null 2>&1
	if [ $? -ge 2 ]; then
		echo "bad input."
		exit 0
	fi
#
else
	N=1
fi

if [ $N -le $NUM_OF_DIR ]; then
	NN=`expr $N - 1`
#	echo ${N}') '${VIV_DIR[$NN]}
	BNDL='/opt/'${VIV_DIR[$NN]}'/resources/vivaldi/bundle.js'
else
	echo 'bad input.'
	exit 0
fi


echo ''
echo 'File location : '"$BNDL"
echo '>> Continue ? : Y or N'
read CONTFLAG
 
if ! [ -z $CONTFLAG ] && [ $CONTFLAG = 'Y' -o $CONTFLAG = 'y' ] ; then
	if ! [ -e $BNDL ] || [ -d $BNDL ]; then
		echo 'file not exist'
		exit 0
	fi
else
	echo 'exit'
	exit 0
fi

# create backup file as 'bundle.js.bkup{timestamp}' in the same place with this script.
SHDIR=$(cd $(dirname $0) && pwd)
TIMESTAMP=`date '+%Y%m%d%H%M'`
BKUP="${SHDIR}/bundle.js.bkup${TIMESTAMP}"

cp "$BNDL" "$BKUP"
sed "s/$S/$R/" "$BKUP" > "$BNDL"

echo 'UserAgent changed.'
echo 'backup file : '"$BKUP"

ダウンロード

 → vivaldiWebPanelUA.sh.zip

使いかた

  1. 上記リンクから zip ファイルをダウンロードして展開。"vivaldiWebPanelUA.sh" というファイルが現れます。
  2. ターミナルを開いて、上記 .sh ファイルがあるディレクトリへ移動。【ダウンロード】フォルダに展開したのなら…
    $ cd ダウンロード/
  3. スクリプトを走らせる。
  4. $ sudo ./vivaldiWebPanelUA.sh

    スクリプトが、インストールされている Vivaldi の場所を自動的に探し出し、bundle.js を書き換えます。

  5. 複数の Vivaldi が見つかった場合は、ターゲットを指定するためのメッセージが表示されます。番号を入力してください。
    2 Vivaldies are found. Choose one and input the number.
    1) vivaldi-beta
    2) vivaldi-snapshot
    >>
  6. 修正するファイルを確認するメッセージが表示されたら、続行か中止かを選んでください。
    File location: /opt/vivaldi-snapshot/resources/vivaldi/bundle.js
    >> Continue ? : Y or N

    通常は "Y(続行)" で大丈夫な筈です。

  7. 何事もなければ、スクリプトは bundle.js のバックアップファイルを作成し、元のファイルのユーザエージェントを書き換えて終了します。

Webパネルから以下の URL にアクセスすると、現在のユーザエージェント文字列を確認できます。
 → http://freefielder.jp/lab/ua_checker/

(c)2015 freefielder.jp