#!/bin/sh
cd "$HOME"
mkdir kocsog_gugli 2>/dev/null
cd kocsog_gugli
echo
echo "======================"
echo "Getting depot tools..."
echo "======================"
echo
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PATH:"$HOME"/kocsog_gugli/depot_tools
echo
echo "=========================="
echo "Getting Chromium source..."
echo "=========================="
echo
mkdir chromium 2>/dev/null
cd chromium/
fetch --nohooks chromium
free > /dev/null && sync > /dev/null && echo 3 > /proc/sys/vm/drop_caches && free > /dev/null
echo
echo "===================="
echo "Checkout and sync..."
echo "===================="
echo
cd src
git checkout 73.0.3683.75
gclient sync -D
free > /dev/null && sync > /dev/null && echo 3 > /proc/sys/vm/drop_caches && free > /dev/null
# Use the "fontconfig.patch" from UGC and not from Debian. The rest of the two patchset can be merged.
echo
echo "==========="
echo "Patching..."
echo "==========="
echo
echo "Getting Debian patchset..."
wget http://deb.debian.org/debian/pool/main/c/chromium/chromium_73.0.3683.75-1~deb9u1.debian.tar.xz
tar xf chromium_73.0.3683.75-1~deb9u1.debian.tar.xz
rm chromium_73.0.3683.75-1~deb9u1.debian.tar.xz
rm -rf debian/patches/arm
find debian/patches/ -name '*.patch' -exec mv {} ./ \;
rm -rf debian
echo "Getting Ungoogled-Chromium patchset..."
git clone https://github.com/Eloston/ungoogled-chromium/
cd ungoogled-chromium/
git checkout 73.0.3683.103-2
cd ..
find ungoogled-chromium/patches/ -name '*.patch' -exec mv {} ./ \;
rm -rf ungoogled-chromium
# Remove unneeded libevent, libicu and fingerprinting patches.
rm event.patch icu.patch icu57.patch icu-new.patch fingerprinting-flags-client-rects-and-measuretext.patch flag-fingerprinting-canvas-image-data-noise.patch
echo "Applying patches..."
for PATCH in *.patch
do
	echo "****************"
	echo "* ""$PATCH"
	echo "****************"
	patch -p1 -f < "$PATCH"
	echo "****************"
	echo
done
rm *.patch
# Some files are left in an uncompilable state.
echo "Some hand patching..."
# Designated initializers patch is erroneous with the bundled CLang 9.
sed -i.bak 's/    Settings(bool randomise):randomised_sampling_enabled(randomise) {}//g' base/task/sequence_manager/sequence_manager.h
# Patch a mispatched file's macro.
sed -i.bak -n '1h;1!H;${g;s/#endif\n#endif/#endif/;p;}' chrome/browser/ui/chrome_pages.cc
# Safe browsing patch is erroneous with chrome 73.0.
sed -i.bak '/^static_library("safe_browsing") {/i sources = []\n deps = []' chrome/browser/safe_browsing/BUILD.gn
# Comment some ICU calls in the bug reporting.
sed -i.bak 's|u_|// u_|g' third_party/breakpad/breakpad/src/common/string_conversion.cc
# Rename a duplicate dummy function.
sed -i.bak 's/QuarantineFileResult QuarantineFile/QuarantineFileResult QuarantineFile1/g' components/download/quarantine/quarantine.cc
# Chromium needs libz.
sed -i.bak 's/        ldflags = \[\]/        ldflags = \[ "-lz" \]/g' chrome/BUILD.gn
echo
echo "============="
echo "Generating..."
echo "============="
echo
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH":/usr/lib/x86_64-linux-gnu/pkgconfig/
wget https://raw.githubusercontent.com/Eloston/ungoogled-chromium/73.0.3683.103-2/flags.gn
echo 'gtk_version=2' >> flags.gn
echo 'use_gnome_keyring=false' >> flags.gn
echo 'use_pulseaudio=false' >> flags.gn
echo 'use_sysroot=false' >> flags.gn
sed -i.bak 's/is_official_build=true/is_official_build=false/g' flags.gn
gn gen out/Release "--args=`cat flags.gn | tr '\n' ' '`"
gn args --list out/Release/ > ninja.settings
free > /dev/null && sync > /dev/null && echo 3 > /proc/sys/vm/drop_caches && free > /dev/null
echo
echo "==========="
echo "Building..."
echo "==========="
echo
autoninja -C out/Release chrome
free > /dev/null && sync > /dev/null && echo 3 > /proc/sys/vm/drop_caches && free > /dev/null
echo
echo "============"
echo "Packaging..."
echo "============"
echo
cd out/Release
mkdir ungoogled-chromium-devuan2-gtk2-portable
cp -R locales chrome *.pak *.info *.so *.bin *.dat ungoogled-chromium-devuan2-gtk2-portable/
tar -zcf ungoogled-chromium-devuan2-gtk2-portable.tar.gz ungoogled-chromium-devuan2-gtk2-portable
rm -rf ungoogled-chromium-devuan2-gtk2-portable
mv ungoogled-chromium-devuan2-gtk2-portable.tar.gz "$HOME"/
free > /dev/null && sync > /dev/null && echo 3 > /proc/sys/vm/drop_caches && free > /dev/null
if [ "$1" != "" ];
then
	echo
	echo "=============="
	echo "Cleaning up..."
	echo "=============="
	echo
	rm -rf "$HOME"/kocsog_gugli
	free > /dev/null && sync > /dev/null && echo 3 > /proc/sys/vm/drop_caches && free > /dev/null
fi- TCH blogja
- A hozzászóláshoz be kell jelentkezni
- 307 megtekintés
Hozzászólások
1-2 szót írhatnál arról, hogy mire is jó ez! A Debian-ban eleve ilyen ungoogled változat van, jól értem?
- A hozzászóláshoz be kell jelentkezni
flags.gn felhasználásával a kapott bináris elszállt illegal instructionnal.)
Így most van olyan Chromiumom, amivel megy a net 99.99999...%-a és nincs benne se spyware, se GTK3, se PulseAudio. Hogy másnak is lehessen, a lépéseket egy scriptbe foglalva közzétettem. Erre jó ez.- A hozzászóláshoz be kell jelentkezni
A gtk3-mal mi a baj? Az is fugg valami potterixtol?
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Jól hangzik! Én a GTK3-mal már elástam a csatabárdot, akkor nekem az Ungoogled Chromium patchset elegendő?
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Ennyi sed helyett miert nem egy sajat patchet csinalsz inkabb?
- A hozzászóláshoz be kell jelentkezni
Meg egy otlet:
mkdir chromium 2>/dev/null 
helyett:
mkdir -p chromium
... es igy tovabb.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
de ez nem dob hibat ha mar letezik a konyvtar :]
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Próbáld ki a Min-t: https://github.com/minbrowser/min
- A hozzászóláshoz be kell jelentkezni
Ez egy js-ben irt browser ami electron (vagyis egy kicsit kiherélt chromium runtime) felett fut.
Ez már önmagában kizár minden olyan jellemzőt, amit magáról állit. De nem akarok hülyét csinálni magamból, úgyhogy fixme..
- A hozzászóláshoz be kell jelentkezni
Meglepően gyors cucc egyébként, most ezt tartom a Firefox mellett másodlagos böngészőnek. A Chromium alap jó, a sallangok leválasztva. Annyira nem is zabál sok erőforrást ami az elektronos szutykok nagy részéről nem mondható el. Nem véletlenül került be némelyikbe Relaunch menüpont is :)
- A hozzászóláshoz be kell jelentkezni
Sajnos használnom kell számos Electronos szutyadékot (pl. slack, postman, electronmail,..) és az általános véleményem az electronról a fostalicska és szenny környékén mozog. :(
De lehet hogy megnézem én is ezt a browsert, ártani nem árthat.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni