This is just a mirror from https://vivaldi.com/source
The file README
has the original readme from the developpers.
(Thanks to RAZR_96 for providing these instructions in this comment)
The build instructions (from the
README
file) is missing a command to make the file (or you could make it manually):vivaldi-source\testdata\stp.viv
and add to the file:// Vivaldi Standalone
Build according to the instructions on the
README
fileThe build will use a standalone profile as a result of this file. To use your normal profile you need to delete stp.viv from:
vivaldi-source\out\Release
. Be aware that using different versions of Vivaldi on the same profile will give an error on start up. It'll probably still work but I wouldn't advise it.Once you've built it you need to find where Vivaldi is installed and copy this folder:
Vivaldi\Application\1.8.770.50\resources\vivaldi
to this directory:
vivaldi-source\out\Release\resources\
If anyone wants to build on windows, there's a build.bat here. You also need WinSparkle. Extract the contents of the zip to:
vivaldi-source\third_party_winsparkle_lib
And lastly the 'Release' folder will be about 30GB once built. Not all of the files/folders in it are needed to run the browser. So here's a Powershell script I made that copies only the stuff you need.
'
ssh $USER@$FAST_MACHINE
cd /var/tmp/
mkdir -p ${USER:0:2}
cd ${USER:0:2}
curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh > Miniconda.sh
bash Miniconda.sh -b -p /var/tmp/${USER:0:2}/co
source /var/tmp/${USER:0:2}/co/bin/activate
conda install git
git config --global user.name "..."
git config --global user.email "..."
git clone --depth=1 git@github.com:ric2b/Vivaldi-browser.git w
curl -O https://vivaldi.com/source/vivaldi-source_5.2...tar.xz
time tar --xz -xf ... && mv vivaldi-source v0 && ls -la
mv w/{.git,README.md} v0
cd v0
time git add . && time git commit -m 'Added version 5...' > /dev/null && git tag 5...
git log --oneline
cd ..
curl -O https://vivaldi.com/source/vivaldi-source_5.2...tar.xz
time tar --xz -xf ... && mv vivaldi-source v1 && ls -la
ls -ld v{0,1}/.git
# rm -rf v1/.git
mv v0/{.git,README.md} v1
...
git status | grep -v chromium
git push
git push --tags
cd ..
cd ..
ls -l
rm -rf
extract_version() {
local v="${1##*vivaldi-source_}"
echo "${v%.tar.xz}"
}
add() {
###
previous_directory="$1"
file_url="$2"
file_name="${file_url##*/}"
version="$(extract_version "$file_url")"
echo "(PREVIOUS_DIRECTORY $previous_directory) (URL $file_url) (FILE $file_name) (VERSION $version)"
###
(
set -xe
wget "$file_url"
tar --xz -xf "$file_name"
# echo $(($(ls vivaldi-source -la | awk '{ print "+"$2 }')))
# while echo $(date '+%H:%M:%S-') $(($(ls vivaldi-source -la | awk '{ print "+"$2 }'))); do sleep 1; done
mv vivaldi-source "v$version"
rm "$file_name"
mv "$previous_directory"/{.git,README.md} "v$version" && rm -r "$previous_directory"
cd "v$version"
git add .
git commit -m "Added version $version" | grep -v chromium
git tag "$version"
cd ..
)
}
previous=w
while IFS= read -r file_url; do
add "$previous" "$file_url"
previous="v$(extract_version "$file_url")"
done
cd "$previous"
git push && git push --tags
# Usage:
#
# git clone --depth=1 "https://${PERSONAL_ACCESS_TOKEN}@github.com/${ORGANISATION_NAME}/${REPOSITORY_NAME}" w
# git clone --depth=1 "https://${PERSONAL_ACCESS_TOKEN}@github.com/ric2b/Vivaldi-browser" w
#
# git config --global user.name "..."
# git config --global user.email "..."
#
# vim list.txt
# ...
#
# cat list.txt | bash process.sh
#
# git push
# git push --tags
#
## process.sh expect the name of the cloned repo to be "w"