M120 stage 7

This commit is contained in:
Alexander Frick 2024-01-22 15:21:54 -06:00
parent 99e2749d54
commit 4bd6d01eac
54 changed files with 645 additions and 668 deletions

View file

@ -1,6 +1,6 @@
BSD 3-Clause License
Copyright (c) 2021-2024, Alexander David Frick
Copyright (c) 2021-2024, Alexander Frick
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

View file

@ -71,6 +71,10 @@ declare_args() {
# on-device decoding and bitstream passthrough as supported by device.
enable_platform_ac3_eac3_audio = proprietary_codecs && is_cast_media_device
# Enables AC4 audio handling in chromium. This includes demuxing,
# on-device decoding and bitstream passthrough as supported by device.
enable_platform_ac4_audio = false
enable_platform_mpeg_h_audio = proprietary_codecs && is_cast_media_device
# Enables DTS/DTSX audio handling in chromium. This includes demuxing,
@ -150,6 +154,8 @@ assert(!enable_hls_demuxer || proprietary_codecs,
"proprietary_codecs required for enable_hls_demuxer")
assert(!enable_platform_ac3_eac3_audio || proprietary_codecs,
"proprietary_codecs required for enable_platform_ac3_eac3_audio")
assert(!enable_platform_ac4_audio || proprietary_codecs,
"proprietary_codecs required for enable_platform_ac4_audio")
assert(!enable_platform_mpeg_h_audio || proprietary_codecs,
"proprietary_codecs required for enable_platform_mpeg_h_audio")
assert(!enable_mse_mpeg2ts_stream_parser || proprietary_codecs,
@ -228,7 +234,8 @@ declare_args() {
# Enables host verification for CDMs.
# Windows and Mac.
enable_cdm_host_verification =
enable_library_cdms && (is_mac || is_win) && is_chrome_branded
enable_library_cdms && (is_mac || is_win) && is_chrome_branded &&
!is_chrome_for_testing_branded
# Enable Storage ID which is used by CDMs. This is only available with chrome
# branding, but may be overridden by other embedders.
@ -245,6 +252,10 @@ declare_args() {
assert(!enable_cdm_host_verification || is_mac || is_win,
"CDM host verification is only supported on Mac and Windows.")
# https://crbug.com/1475137#c37
assert(!is_chrome_for_testing_branded || !enable_cdm_host_verification,
"Chrome for Testing is incompatible with CDM Host Verification.")
# Default |mojo_media_services| and |mojo_media_host| on various platforms. See
# comments below for valid values. Can be overridden by gn build arguments from
# the --args command line flag.
@ -258,6 +269,7 @@ if (is_cast_media_device) {
_default_mojo_media_services = [
"cdm",
"audio_decoder",
"audio_encoder",
"video_decoder",
]
_default_mojo_media_host = "gpu"

View file

@ -1,4 +1,4 @@
// Copyright 2023 The Chromium Authors and Alex313031
// Copyright 2024 The Chromium Authors and Alex313031
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@ -197,6 +197,7 @@ bool IsAudioCodecProprietary(AudioCodec codec) {
case AudioCodec::kDTS:
case AudioCodec::kDTSXP2:
case AudioCodec::kDTSE:
case AudioCodec::kAC4:
return true;
case AudioCodec::kFLAC:
@ -266,8 +267,8 @@ bool IsAV1Supported(const VideoType& type) {
}
bool IsMPEG4Supported() {
#if BUILDFLAG(IS_CHROMEOS_ASH)
return true;
#if BUILDFLAG(IS_CHROMEOS) && BUILDFLAG(USE_PROPRIETARY_CODECS)
return base::FeatureList::IsEnabled(kCrOSLegacyMediaFormats);
#else
return false;
#endif
@ -324,9 +325,10 @@ bool IsDefaultSupportedVideoType(const VideoType& type) {
#endif
switch (type.codec) {
case VideoCodec::kTheora:
return IsBuiltInVideoCodec(type.codec);
case VideoCodec::kH264:
case VideoCodec::kVP8:
case VideoCodec::kTheora:
return true;
case VideoCodec::kAV1:
return IsAV1Supported(type);
@ -372,6 +374,7 @@ bool IsDefaultSupportedAudioType(const AudioType& type) {
case AudioCodec::kGSM_MS:
case AudioCodec::kALAC:
case AudioCodec::kMpegHAudio:
case AudioCodec::kAC4:
case AudioCodec::kUnknown:
return false;
case AudioCodec::kDTS:
@ -395,7 +398,7 @@ bool IsDefaultSupportedAudioType(const AudioType& type) {
bool IsBuiltInVideoCodec(VideoCodec codec) {
#if BUILDFLAG(ENABLE_FFMPEG_VIDEO_DECODERS)
if (codec == VideoCodec::kTheora)
return true;
return base::FeatureList::IsEnabled(kTheoraVideoCodec);
if (codec == VideoCodec::kVP8)
return true;
#if BUILDFLAG(USE_PROPRIETARY_CODECS)

View file

@ -421,10 +421,10 @@ bool AVCodecContextToAudioDecoderConfig(const AVCodecContext* codec_context,
}
#endif
// Verify that AudioConfig.bits_per_channel was calculated correctly for
// Verify that AudioConfig.bytes_per_channel was calculated correctly for
// codecs that have |sample_fmt| set by FFmpeg.
DCHECK_EQ(av_get_bytes_per_sample(codec_context->sample_fmt) * 8,
config->bits_per_channel());
DCHECK_EQ(av_get_bytes_per_sample(codec_context->sample_fmt),
config->bytes_per_channel());
return true;
}

View file

@ -1,4 +1,4 @@
# Copyright (c) 2023 Alex313031 and Iridium
# Copyright (c) 2024 Alex313031 and Iridium
# Shows the output of a given command only on failure, or when VERBOSE is set.
log_cmd() {
if [ "${VERBOSE:-}" ]; then

View file

@ -1,6 +1,6 @@
#!/usr/bin/env bash
# Copyright (c) 2022 Google Inc and Alex313031. All rights reserved.
# Copyright (c) 2024 Google Inc and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

212
depot_tools/win_toolchain/package_from_installed.py Normal file → Executable file
View file

@ -1,8 +1,7 @@
#!/usr/bin/env python3
# Copyright 2023 The Chromium Authors and Alex313031. All rights reserved.
# Copyright 2024 The Chromium Authors and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""
From a system-installed copy of the toolchain, packages all the required bits
into a .zip file.
@ -31,8 +30,6 @@ useful as the resulting zip can't be redistributed, and most will presumably
have a Pro license anyway).
"""
from __future__ import print_function
import collections
import glob
import json
@ -47,7 +44,6 @@ import zipfile
import get_toolchain_if_necessary
_vs_version = None
_win_version = None
_vc_tools = None
@ -78,10 +74,12 @@ def GetVSPath():
matching_vs_path = vs_path
if vs_installs_count == 0:
raise Exception('VS %s path not found in vswhere output' % (_vs_version))
raise Exception('VS %s path not found in vswhere output' %
(_vs_version))
if vs_installs_count > 1:
if not _allow_multiple_vs_installs:
raise Exception('Multiple VS installs detected. This is unsupported. '
raise Exception(
'Multiple VS installs detected. This is unsupported. '
'It is recommended that packaging be done on a clean VM '
'with just one version installed. To proceed anyway add '
'the --allow_multiple_vs_installs flag to this script')
@ -96,7 +94,8 @@ def ExpandWildcards(root, sub_dir):
path = os.path.normpath(os.path.join(root, sub_dir))
matches = glob.glob(path)
if len(matches) != 1:
raise Exception('%s had %d matches - should be one' % (path, len(matches)))
raise Exception('%s had %d matches - should be one' %
(path, len(matches)))
return matches[0]
@ -164,7 +163,8 @@ def BuildFileList(override_dir, include_arm, vs_path):
if include_arm:
paths += [
('VC/redist/MSVC/14.*.*/arm64/Microsoft.VC*.CRT', 'sysarm64'),
('VC/redist/MSVC/14.*.*/arm64/Microsoft.VC*.CRT', 'VC/bin/amd64_arm64'),
('VC/redist/MSVC/14.*.*/arm64/Microsoft.VC*.CRT',
'VC/bin/amd64_arm64'),
('VC/redist/MSVC/14.*.*/arm64/Microsoft.VC*.CRT', 'VC/bin/arm64'),
('VC/redist/MSVC/14.*.*/arm64/Microsoft.VC*.CRT',
'Windows Kits/10/bin/arm64'),
@ -191,14 +191,16 @@ def BuildFileList(override_dir, include_arm, vs_path):
if isinstance(path, tuple):
assert final_from.startswith(combined)
dest = final_from[len(combined) + 1:]
result.append(
(final_from, os.path.normpath(os.path.join(path[1], dest))))
result.append((final_from,
os.path.normpath(os.path.join(path[1],
dest))))
else:
assert final_from.startswith(vs_path)
dest = final_from[len(vs_path) + 1:]
result.append((final_from, dest))
command = (r'reg query "HKLM\SOFTWARE\Microsoft\Windows Kits\Installed Roots"'
command = (
r'reg query "HKLM\SOFTWARE\Microsoft\Windows Kits\Installed Roots"'
r' /v KitsRoot10')
marker = " KitsRoot10 REG_SZ "
sdk_path = None
@ -218,25 +220,28 @@ def BuildFileList(override_dir, include_arm, vs_path):
for root, _, files in os.walk(sdk_path):
for f in files:
combined = os.path.normpath(os.path.join(root, f))
# Some of the files in this directory are exceedingly long (and exceed
# _MAX_PATH for any moderately long root), so exclude them. We don't need
# them anyway. Exclude/filter/skip others just to save space.
# Some of the files in this directory are exceedingly long (and
# exceed _MAX_PATH for any moderately long root), so exclude them.
# We don't need them anyway. Exclude/filter/skip others just to save
# space.
tail = combined[len(sdk_path) + 1:]
skip_dir = False
for dir in ['References\\', 'Windows Performance Toolkit\\', 'Testing\\',
'App Certification Kit\\', 'Extension SDKs\\',
'Assessment and Deployment Kit\\']:
for dir in [
'References\\', 'Windows Performance Toolkit\\',
'Testing\\', 'App Certification Kit\\', 'Extension SDKs\\',
'Assessment and Deployment Kit\\'
]:
if tail.startswith(dir):
skip_dir = True
if skip_dir:
continue
# There may be many Include\Lib\Source\bin directories for many different
# versions of Windows and packaging them all wastes ~450 MB
# (uncompressed) per version and wastes time. Only copy the specified
# version. Note that the SDK version number started being part of the bin
# path with 10.0.15063.0.
if (tail.startswith('Include\\') or tail.startswith('Lib\\') or
tail.startswith('Source\\') or tail.startswith('bin\\')):
# There may be many Include\Lib\Source\bin directories for many
# different versions of Windows and packaging them all wastes ~450
# MB (uncompressed) per version and wastes time. Only copy the
# specified version. Note that the SDK version number started being
# part of the bin path with 10.0.15063.0.
if (tail.startswith('Include\\') or tail.startswith('Lib\\')
or tail.startswith('Source\\') or tail.startswith('bin\\')):
if tail.count(_win_version) == 0:
continue
to = os.path.join('Windows Kits', '10', tail)
@ -264,8 +269,10 @@ def BuildFileList(override_dir, include_arm, vs_path):
assert (len(ucrt_paths) > 0)
for ucrt_path in ucrt_paths:
ucrt_file = os.path.split(ucrt_path)[1]
for dest_dir in [ r'VC\bin\amd64_x86', r'VC\bin\amd64',
r'Windows Kits\10\bin\x64', 'sys64']:
for dest_dir in [
r'VC\bin\amd64_x86', r'VC\bin\amd64',
r'Windows Kits\10\bin\x64', 'sys64'
]:
result.append((ucrt_path, os.path.join(dest_dir, ucrt_file)))
system_crt_files = [
@ -283,7 +290,8 @@ def BuildFileList(override_dir, include_arm, vs_path):
for system_crt_file in system_crt_files:
for cpu_pair in cpu_pairs:
target_cpu, dest_dir = cpu_pair
src_path = os.path.join(sdk_path, 'bin', _win_version, target_cpu, 'ucrt')
src_path = os.path.join(sdk_path, 'bin', _win_version, target_cpu,
'ucrt')
result.append((os.path.join(src_path, system_crt_file),
os.path.join(dest_dir, system_crt_file)))
@ -291,13 +299,14 @@ def BuildFileList(override_dir, include_arm, vs_path):
# drop .msi files because we don't need installers and drop
# samples since those are not used by any tools.
def is_skippable(f):
return ('arm\\' in f.lower() or
(not include_arm and 'arm64\\' in f.lower()) or
'samples\\' in f.lower() or
f.lower().endswith(('.msi',
'.msm')))
return ('arm\\' in f.lower()
or (not include_arm and 'arm64\\' in f.lower())
or 'samples\\' in f.lower() or f.lower().endswith(
('.msi', '.msm')))
return [(f, t) for f, t in result if not is_skippable(f)]
def GenerateSetEnvCmd(target_dir):
"""Generate a batch file that gyp expects to exist to set up the compiler
environment.
@ -323,8 +332,8 @@ def GenerateSetEnvCmd(target_dir):
]
# Common to x86, x64, and arm64
env = collections.OrderedDict([
# Yuck: These have a trailing \ character. No good way to represent this in
# an OS-independent way.
# Yuck: These have a trailing \ character. No good way to represent this
# in an OS-independent way.
('VSINSTALLDIR', [['.\\']]),
('VCINSTALLDIR', [['VC\\']]),
('INCLUDE', include_dirs),
@ -340,8 +349,8 @@ def GenerateSetEnvCmd(target_dir):
[
['Windows Kits', '10', 'bin', _win_version, 'x64'],
vc_tools_parts + ['bin', 'HostX64', 'x86'],
vc_tools_parts + ['bin', 'HostX64', 'x64'
], # Needed for mspdb1x0.dll.
vc_tools_parts +
['bin', 'HostX64', 'x64'], # Needed for mspdb1x0.dll.
]),
('LIB', [
vc_tools_parts + ['lib', 'x86'],
@ -382,11 +391,12 @@ def GenerateSetEnvCmd(target_dir):
def BatDirs(dirs):
return ';'.join(['%cd%\\' + os.path.join(*d) for d in dirs])
set_env_prefix = os.path.join(target_dir, r'Windows Kits\10\bin\SetEnv')
with open(set_env_prefix + '.cmd', 'w') as f:
# The prologue changes the current directory to the root of the toolchain
# package, so that path entries can be set up without needing ..\..\..\
# components.
# The prologue changes the current directory to the root of the
# toolchain package, so that path entries can be set up without needing
# ..\..\..\ components.
f.write('@echo off\n'
':: Generated by win_toolchain\\package_from_installed.py.\n'
'pushd %~dp0..\..\..\n')
@ -396,36 +406,48 @@ def GenerateSetEnvCmd(target_dir):
f.write('if "%1"=="/arm64" goto arm64\n')
for var, dirs in env_x86.items():
f.write('set %s=%s%s\n' % (
var, BatDirs(dirs), ';%PATH%' if var == 'PATH' else ''))
f.write('set %s=%s%s\n' %
(var, BatDirs(dirs), ';%PATH%' if var == 'PATH' else ''))
f.write('goto :END\n')
f.write(':x64\n')
for var, dirs in env_x64.items():
f.write('set %s=%s%s\n' % (
var, BatDirs(dirs), ';%PATH%' if var == 'PATH' else ''))
f.write('set %s=%s%s\n' %
(var, BatDirs(dirs), ';%PATH%' if var == 'PATH' else ''))
f.write('goto :END\n')
f.write(':arm64\n')
for var, dirs in env_arm64.items():
f.write('set %s=%s%s\n' % (
var, BatDirs(dirs), ';%PATH%' if var == 'PATH' else ''))
f.write('set %s=%s%s\n' %
(var, BatDirs(dirs), ';%PATH%' if var == 'PATH' else ''))
f.write('goto :END\n')
f.write(':END\n')
# Restore the original directory.
f.write('popd\n')
with open(set_env_prefix + '.x86.json', 'wt', newline='') as f:
assert not set(env.keys()) & set(env_x86.keys()), 'dupe keys'
json.dump({'env': collections.OrderedDict(list(env.items()) + list(env_x86.items()))},
f)
json.dump(
{
'env':
collections.OrderedDict(
list(env.items()) + list(env_x86.items()))
}, f)
with open(set_env_prefix + '.x64.json', 'wt', newline='') as f:
assert not set(env.keys()) & set(env_x64.keys()), 'dupe keys'
json.dump({'env': collections.OrderedDict(list(env.items()) + list(env_x64.items()))},
f)
json.dump(
{
'env':
collections.OrderedDict(
list(env.items()) + list(env_x64.items()))
}, f)
with open(set_env_prefix + '.arm64.json', 'wt', newline='') as f:
assert not set(env.keys()) & set(env_arm64.keys()), 'dupe keys'
json.dump({'env': collections.OrderedDict(list(env.items()) + list(env_arm64.items()))},
f)
json.dump(
{
'env':
collections.OrderedDict(
list(env.items()) + list(env_arm64.items()))
}, f)
def AddEnvSetup(files, include_arm):
@ -434,18 +456,18 @@ def AddEnvSetup(files, include_arm):
tempdir = tempfile.mkdtemp()
os.makedirs(os.path.join(tempdir, 'Windows Kits', '10', 'bin'))
GenerateSetEnvCmd(tempdir)
files.append((
os.path.join(tempdir, 'Windows Kits', '10', 'bin', 'SetEnv.cmd'),
'Windows Kits\\10\\bin\\SetEnv.cmd'))
files.append((
os.path.join(tempdir, 'Windows Kits', '10', 'bin', 'SetEnv.x86.json'),
files.append(
(os.path.join(tempdir, 'Windows Kits', '10', 'bin',
'SetEnv.cmd'), 'Windows Kits\\10\\bin\\SetEnv.cmd'))
files.append((os.path.join(tempdir, 'Windows Kits', '10', 'bin',
'SetEnv.x86.json'),
'Windows Kits\\10\\bin\\SetEnv.x86.json'))
files.append((
os.path.join(tempdir, 'Windows Kits', '10', 'bin', 'SetEnv.x64.json'),
files.append((os.path.join(tempdir, 'Windows Kits', '10', 'bin',
'SetEnv.x64.json'),
'Windows Kits\\10\\bin\\SetEnv.x64.json'))
if include_arm:
files.append((
os.path.join(tempdir, 'Windows Kits', '10', 'bin', 'SetEnv.arm64.json'),
files.append((os.path.join(tempdir, 'Windows Kits', '10', 'bin',
'SetEnv.arm64.json'),
'Windows Kits\\10\\bin\\SetEnv.arm64.json'))
vs_version_file = os.path.join(tempdir, 'VS_VERSION')
with open(vs_version_file, 'wt', newline='') as version:
@ -461,8 +483,8 @@ def RenameToSha1(output):
old_dir = os.getcwd()
os.chdir(tempdir)
rel_dir = 'vs_files'
with zipfile.ZipFile(
os.path.join(old_dir, output), 'r', zipfile.ZIP_DEFLATED, True) as zf:
with zipfile.ZipFile(os.path.join(old_dir, output), 'r',
zipfile.ZIP_DEFLATED, True) as zf:
zf.extractall(rel_dir)
print('Hashing...')
sha1 = get_toolchain_if_necessary.CalculateHash(rel_dir, None)
@ -483,23 +505,41 @@ def main():
sys.exit(10)
usage = 'usage: %prog [options] 2019|2022'
parser = optparse.OptionParser(usage)
parser.add_option('-w', '--winver', action='store', type='string',
dest='winver', default='10.0.22621.0',
parser.add_option('-w',
'--winver',
action='store',
type='string',
dest='winver',
default='10.0.22621.0',
help='Windows SDK version, such as 10.0.22621.0')
parser.add_option('-d', '--dryrun', action='store_true', dest='dryrun',
parser.add_option('-d',
'--dryrun',
action='store_true',
dest='dryrun',
default=False,
help='scan for file existence and prints statistics')
parser.add_option('--noarm', action='store_false', dest='arm',
parser.add_option('--noarm',
action='store_false',
dest='arm',
default=True,
help='Avoids arm parts of the SDK')
parser.add_option('--override', action='store', type='string',
dest='override_dir', default=None,
parser.add_option('--override',
action='store',
type='string',
dest='override_dir',
default=None,
help='Specify alternate bin/include/lib directory')
parser.add_option('--repackage', action='store', type='string',
dest='repackage_dir', default=None,
parser.add_option(
'--repackage',
action='store',
type='string',
dest='repackage_dir',
default=None,
help='Specify raw directory to be packaged, for hot fixes.')
parser.add_option('--allow_multiple_vs_installs', action='store_true',
default=False, dest='allow_multiple_vs_installs',
parser.add_option('--allow_multiple_vs_installs',
action='store_true',
default=False,
dest='allow_multiple_vs_installs',
help='Specify if multiple VS installs are allowed.')
(options, args) = parser.parse_args()
@ -508,14 +548,18 @@ def main():
else:
if len(args) != 1 or args[0] not in SUPPORTED_VS_VERSIONS:
print('Must specify 2019 or 2022')
parser.print_help();
parser.print_help()
return 1
if options.override_dir:
if (not os.path.exists(os.path.join(options.override_dir, 'bin')) or
not os.path.exists(os.path.join(options.override_dir, 'include')) or
not os.path.exists(os.path.join(options.override_dir, 'lib'))):
print('Invalid override directory - must contain bin/include/lib dirs')
if (not os.path.exists(os.path.join(options.override_dir, 'bin'))
or not os.path.exists(
os.path.join(options.override_dir, 'include'))
or not os.path.exists(
os.path.join(options.override_dir, 'lib'))):
print(
'Invalid override directory - must contain bin/include/lib dirs'
)
return 1
global _vs_version
@ -527,10 +571,12 @@ def main():
_allow_multiple_vs_installs = options.allow_multiple_vs_installs
vs_path = GetVSPath()
temp_tools_path = ExpandWildcards(vs_path, 'VC/Tools/MSVC/14.*.*')
# Strip off the leading vs_path characters and switch back to / separators.
# Strip off the leading vs_path characters and switch back to /
# separators.
_vc_tools = temp_tools_path[len(vs_path) + 1:].replace('\\', '/')
print('Building file list for VS %s Windows %s...' % (_vs_version, _win_version))
print('Building file list for VS %s Windows %s...' %
(_vs_version, _win_version))
files = BuildFileList(options.override_dir, options.arm, vs_path)
AddEnvSetup(files, options.arm)
@ -549,7 +595,8 @@ def main():
missing_files = False
with zipfile.ZipFile(output, 'w', zipfile.ZIP_DEFLATED, True) as zf:
for disk_name, archive_name in files:
sys.stdout.write('\r%d/%d ...%s' % (count, len(files), disk_name[-40:]))
sys.stdout.write('\r%d/%d ...%s' %
(count, len(files), disk_name[-40:]))
sys.stdout.flush()
count += 1
if not options.repackage_dir and disk_name.count(_win_version) > 0:
@ -562,7 +609,8 @@ def main():
missing_files = True
sys.stdout.write('\r%s does not exist.\n\n' % disk_name)
sys.stdout.flush()
sys.stdout.write('\r%1.3f GB of data in %d files, %d files for %s.%s\n' %
sys.stdout.write(
'\r%1.3f GB of data in %d files, %d files for %s.%s\n' %
(total_size / 1e9, count, version_match_count, _win_version, ' ' * 50))
if options.dryrun:
return 0

View file

@ -1,5 +1,5 @@
## These are instruction for cross building Thorium for Windows, on Linux. Preliminary file for @gz83, to be eventually migrated to a Wiki with building instructions for all paltforms.
## Copyright (c) 2022 Alex313031
# These are instruction for cross building Thorium for Windows, on Linux. Preliminary file for @gz83, to be eventually migrated to a Wiki with building instructions for all paltforms.
## Copyright (c) 2024 Alex313031
## In general, this document follows information from > https://chromium.googlesource.com/chromium/src.git/+/HEAD/docs/win_cross.md and https://chromium.googlesource.com/chromium/src/+/main/docs/linux/build_instructions.md

View file

@ -1,5 +1,5 @@
## These are instruction for building Thorium for Windows, natively on Windows. Preliminary file for @gz83, to be eventually migrated to a Wiki with building instructions for all paltforms.
## Copyright (c) 2022 Alex313031
# These are instruction for building Thorium for Windows, natively on Windows. Preliminary file for @gz83, to be eventually migrated to a Wiki with building instructions for all paltforms.
## Copyright (c) 2024 Alex313031
## Preparatory setup
First, we need to install depot_tools and Visual Studio. depot_tools is a .zip that contains tools for all Google projects like Chromium, ChromiumOS, NaCl, V8, Infra, Android, Google Cloud, and Fuschia.

View file

@ -1,4 +1,4 @@
# Copyright (c) 2023 Alex313031
# Copyright (c) 2024 Alex313031
# Official Thorium builds can be downloaded from https://github.com/Alex313031/thorium/releases
app: Thorium
appId: "org.chromium.Thorium"

View file

@ -1,4 +1,4 @@
# Copyright (c) 2023 Alex313031, JPratama7, and StarterX4.
# Copyright (c) 2024 Alex313031, JPratama7, and StarterX4.
# Maintainer: JPratama7 <josepratama080@gmail.com>
# Maintainer: Dominik Adrian Grzywak <starterx4 at gmail dot com>

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
# Export libs
LD_LIBRARY_PATH="$(pwd)/lib"

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan
@ -22,7 +22,6 @@ displayHelp () {
printf "${underline}Usage: ${c0}build_debug_linux.sh # (where # is number of jobs)\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan
@ -22,7 +22,6 @@ displayHelp () {
printf "${underline}Usage: ${c0}build_debug_shell.sh # (where # is number of jobs)\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac
@ -76,4 +75,3 @@ cp -r -f -v ~/chromium/src/out/thorium/ClearKeyCdm/_platform_specific/linux_x64/
printf "${GRE}Thorium UI Debug Shell Build Completed.\n" &&
tput sgr0
exit 0

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan
@ -22,7 +22,6 @@ displayHelp () {
printf "${underline}Usage: ${c0}build_debug_shell.sh # (where # is number of jobs)\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan
@ -22,7 +22,6 @@ displayHelp () {
printf "${underline}Usage: ${c0}build_debug_win.sh # (where # is number of jobs)\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac

View file

@ -64,6 +64,8 @@
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:ui/base/x/x11_util.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">x11_util.cc - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/_/chromium/v8/v8.git/+/6372efd0ead5d2da7296c9aa02c9bebce4ae7ff4:src/objects/js-display-names.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">js-display-names.cc - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:third_party/widevine/cdm/widevine_cdm_version.h;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">widevine_cdm_version.h - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:third_party/widevine/cdm/BUILD.gn;bpv=1;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">BUILD.gn - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:third_party/widevine/cdm/widevine.gni;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">widevine.gni - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/common/media/cdm_registration.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">cdm_registration.cc - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/browser/resources/components/components.css;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">components.css - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/browser/resources/downloads/images/incognito_marker.svg;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">incognito_marker.svg - Chromium Code Search</A>
@ -117,6 +119,7 @@
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/app/chrome_exe.vsprops;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">chrome_exe.vsprops - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/installer/util/util_constants.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">util_constants.cc - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:content/shell/BUILD.gn;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">BUILD.gn - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:content/shell/android/BUILD.gn;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">BUILD.gn - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:content/shell/app/shell_main_delegate.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">shell_main_delegate.cc - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/common/channel_info_posix.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">channel_info_posix.cc - Chromium Code Search</A>
<DT><A HREF="https://source.chromium.org/chromium/chromium/src/+/refs/tags/120.0.6099.235:chrome/browser/shell_integration_linux.cc;bpv=1" ADD_DATE="1661054752" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADIUlEQVQ4jW1TXWwUZRQ955ufnZ3dlm4VpE2Q+lND1cSQYDBaKY2VEkUFa1d9K4laBROEIg+mDfvkg5Bu9MWoD/hkTJdqJBFCMRENEqONRkMbIiWGWn5SjWw7OzO7szPf9UFCCnrebu7JuTc55xA3QURYKkEtXw7+1gDm0mDWBtMm+GcAnb+P0VI+lw4fTIp7C6O7dU3nlKFyisxp0TmDRpMmmyDSCqLY96D1HUQIUsxrd9nfD3VrHDbDTi/ENi5V/TCdtmlQ0Y60dmwANNXT0HpodEx+2kNUb/4e45PSUhBR/1lcw6Gvf3fGf4gmJn6NBgGgUBBFAHj+vepdKSvp2r5m/pPu7juqA4fEOTcXvhaG2KAMVjOp5MjJ4eynBOTIz7Vnzs5Jcfoiej9+1TlHAHjyneArKrl/XcVtnQLcS/A/b23J9DzUBgQRcPo84JX90VOF7JCIGFsOBLMCTB/dl3lc9b+7uA1O+jHb4OuFAvVl+oOtLZmekc1JbUc36nt7pb6zK0mslL2n6+3wUZJJyuIuOm7Ps8Xyc8qP3Q+TMDj+2W73MABUatK5vg26vcVQf3navOqL+Ui7kay53dJeEG8AgPE33PEkDI6HSfZ9BRFAQJF/LSVYDSIQEBiKsE0lsRaGNSiTEl43X4SAQKWN8GUj427qG/XyAJB15IvTM+CJKW04FuoiEpd+1Grmj8BvzPIYAGwten2mm9mUsauDBIAnDvgnAHQMrHZX5/NMOguLBy07NXTPKhvVGnDhb0BH3pvfDjcelDExnpoNLormmS/3uT0KAFY0xDs2dhiLqXZsBoBThca9QK1z8mxlZPpCZZeq+2dMqi2AcGYtzOZG9dayrHoFACgiJCkTU9FAJZCtCxX7he3dvCFl60b8ta6lh2/T2Rdf2oam3gc4f2MXRLi7NOd0tq34iFS/aNFHIwBhJLGVSLRqZd3rWNYQfj+L5igOdb6YvoISNEC5LgBSDk9G6ynYScgVrbGgFMsQKSdiLIhIWSe6rGifzz/M8H/bCABjU2L781BeOCMrK5FcvfNeuexB8M1J7N+/MSEpS/n/AGH0clblBN69AAAAAElFTkSuQmCC">shell_integration_linux.cc - Chromium Code Search</A>

View file

@ -1,7 +1,7 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
# Installs necessary prerequisites for building and running Chromium/ChromiumOS on Arch Linux.
echo "Installs necessary prerequisites for building and running Chromium/ChromiumOS on Arch Linux."
sudo pacman -Syyuu --needed autoconf autoconf-archive automake base-devel beep bluez-libs cabextract cmake curl dkms dosfstools exfatprogs exo ffmpeg gcc git go gperf gtk2 gtk3 hwdata i2c-tools java-runtime-common java-runtime-headless kdialog libcbor libdrm libnet libpulse libsecret libudev0-shim libva libva-utils libva-vdpau-driver libwebp libxss lm_sensors lsb-release make man-db mesa-utils minizip mtools nano nasm ncurses nodejs nss ntfs-3g numlockx openjpeg2 opus org.freedesktop.secrets p7zip pciutils pipewire polkit python python-docutils python-oauth2client python-oauthlib python-pkgconfig python-pkginfo python-protobuf python-setuptools python-virtualenv qt5-base re2 read-edid tar libtar tk tree ttf-font ttf-liberation unrar unzip vulkan-extra-layers vulkan-headers vulkan-tools wget xdg-utils xsensors xz yasm zenity

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031 and Midzer.
# Copyright (c) 2024 Alex313031 and Midzer.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
# Simply uses wget to fetch Thorium API Keys.
# This is to keep them out of the main repo, in the case Google
@ -32,5 +32,3 @@ printf "${GRE}Done.\n" &&
printf "${YEL}- Use the three lines therein at the atop of your args.gn\n" &&
printf "${YEL} (Replacing the ones already in there that have blank values)\n" &&
tput sgr0
exit 0

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan
@ -44,5 +44,3 @@ printf "\n" &&
printf "${GRE}Done.\n" &&
printf "\n" &&
tput sgr0
exit 0

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
RED='\033[1;31m' # Red
@ -146,5 +146,3 @@ printf "${YEL}Done!\n" &&
printf "${GRE}Done! ${YEL}You can now run ./setup.sh or build vanilla Chromium.\n"
tput sgr0
exit 0

View file

@ -1,4 +1,4 @@
## Copyright (c) 2022 Alex313031
## Copyright (c) 2024 Alex313031
## Summary
This is a special program, built on top of content_shell and incorporating a multitude of options for testing, viewing, and debugging UI resources in Thorium.

View file

@ -1,5 +1,6 @@
## Thorium Portable for Linux README
## Copyright (c) 2022 Alex313031
# Thorium Portable for Linux README
## Copyright (c) 2024 Alex313031
This is a portable build of Thorium which can also be used to install/use Thorium on Linux distros that do not use .deb packages. The THORIUM-PORTABLE script and THORIUM-SHELL script will need to be made executable with `sudo chmod +x`, and when run will disable logging, default browser check, and set the user data dir to .config/thorium in this folder rather than the usual $HOME/.config/thorium folder.

View file

@ -1,5 +1,6 @@
## Thorium Portable for Windows README.txt
## Copyright (c) 2023 Alex313031
# Thorium Portable for Windows README.txt
## Copyright (c) 2024 Alex313031
# How to use the files in this .zip
# Unpack .zip to wherever

View file

@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2023 The Chromium Authors and Alex313031. All rights reserved.
# Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,5 +1,5 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031
# Copyright (c) 2024 Alex313031
./thorium_shell --data-path=$(pwd)/.config/thorium-shell --enable-experimental-web-platform-features --debug --enable-clear-hevc-for-testing $@

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
RED='\033[1;31m' # Red
@ -21,7 +21,6 @@ displayHelp () {
printf "${bold}${YEL}Please place the Thorium .deb file in this directory before running.${c0}\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
RED='\033[1;31m' # Red
@ -21,7 +21,6 @@ displayHelp () {
printf "${bold}${YEL}Please place the thorium_mini_installer.exe file in this directory before running.${c0}\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
RED='\033[1;31m' # Red

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
RED='\033[1;31m' # Red

View file

@ -1,4 +1,4 @@
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@ -50,6 +50,7 @@ if (is_android) {
import("//chrome/version.gni")
import("//content/public/app/mac_helpers.gni")
import("//media/cdm/library_cdm/cdm_paths.gni")
import("//services/on_device_model/on_device_model.gni")
import("//third_party/icu/config.gni")
}
@ -325,6 +326,7 @@ if (!is_android && !is_mac) {
# On Chrome OS builds (for both ash-chrome and lacros-chrome), put
# a metadata.json file in root directory containing Chrome version.
if (is_chromeos) {
deps += [ "//ui/gfx/linux:gbm" ]
data_deps += [ "//build:version_metadata" ]
}
@ -1033,6 +1035,14 @@ if (is_win) {
}
}
if (enable_ml_internal) {
bundle_data("chrome_ml_library") {
sources = [ "$root_out_dir/libchrome_ml.dylib" ]
outputs = [ "{{bundle_contents_dir}}/Libraries/{{source_file_part}}" ]
public_deps = [ "//third_party/ml:chrome_ml_library_copy" ]
}
}
group("angle_library") {
if (bundle_egl_libraries) {
deps = [ ":angle_binaries" ]
@ -1253,6 +1263,10 @@ if (is_win) {
"//chrome/browser/resources/media/mei_preload:component_bundle",
]
if (enable_ml_internal) {
bundle_deps += [ ":chrome_ml_library" ]
}
if (is_chrome_branded) {
bundle_deps += [ ":preinstalled_apps" ]
}
@ -1531,11 +1545,6 @@ if (is_win) {
]
}
process_version_rc_template("nacl64_exe_version") {
sources = [ "app/nacl64_exe.ver" ]
output = "$target_gen_dir/nacl64_exe_version.rc"
}
process_version_rc_template("other_version") {
sources = [ "app/other.ver" ]
output = "$target_gen_dir/other_version.rc"

View file

@ -1,6 +1,6 @@
#!/bin/bash
## Copyright (c) 2022 Alex313031/
## Copyright (c) 2024 Alex313031
## Clones latest LLVM being used by the Chromium Project, and builds a local LLVM toolchain with Polly to use the Polly optimizations in the main Thorium BUILD.gn

View file

@ -1,90 +0,0 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan
RED='\033[1;31m' # Red
GRE='\033[1;32m' # Green
c0='\033[0m' # Reset Text
bold='\033[1m' # Bold Text
underline='\033[4m' # Underline Text
# Error handling
yell() { echo "$0: $*" >&2; }
die() { yell "$*"; exit 111; }
try() { "$@" || die "${RED}Failed $*"; }
# help
printf "\n" &&
printf "${bold}${GRE}Script to copy Thorium source files over the Chromium source tree.${c0}\n" &&
printf "${bold}${YEL}Use the --avx flag for Regular (AVX) builds.${c0}\n" &&
printf "${bold}${YEL}Use the --avx2 flag for AVX2 Builds.${c0}\n" &&
printf "${bold}${YEL}Use the --sse3 flag for SSE3 Builds.${c0}\n" &&
printf "${bold}${YEL}IMPORTANT: For Polly builds, first run build_polly.sh in Thorium/infra, then use this script.${c0}\n" &&
printf "${bold}${YEL}Both of these actions should be taken AFTER running the regular setup.sh script!${c0}\n" &&
printf "\n" &&
tput sgr0 &&
# Copy Polly AVX files
copyAVX () {
printf "\n" &&
printf "${YEL}Copying Polly AVX build files...${c0}\n" &&
cp -r -v Regular/BUILD.gn $HOME/chromium/src/build/config/compiler/ &&
printf "\n"
}
case $1 in
--avx) copyAVX;
esac
# Copy Polly AVX2 files
copyAVX2 () {
printf "\n" &&
printf "${YEL}Copying Polly AVX2 build files...${c0}\n" &&
cp -r -v AVX2/BUILD.gn $HOME/chromium/src/build/config/compiler/ &&
printf "\n"
}
case $1 in
--avx2) copyAVX2;
esac
# Copy Polly SSE3 files
copySSE3 () {
printf "\n" &&
printf "${YEL}Copying Polly SSE3 build files...${c0}\n" &&
cp -r -v SSE3/BUILD.gn $HOME/chromium/src/build/config/compiler/ &&
printf "\n"
}
case $1 in
--sse3) copySSE3;
esac
printf "${GRE}Done!\n" &&
printf "\n" &&
printf "${YEL}Exporting variables...\n" &&
export NINJA_SUMMARIZE_BUILD=1 &&
export EDITOR=nano &&
export VISUAL=nano &&
printf "\n" &&
tput sgr0 &&
printf "export ${CYA}NINJA_SUMMARIZE_BUILD=1${c0}\n" &&
printf "export ${CYA}EDITOR=nano${c0}\n" &&
printf "export ${CYA}VISUAL=nano${c0}\n" &&
printf "\n" &&
printf "${GRE}Enjoy Thorium!\n" &&
printf "\n" &&
tput sgr0
exit 0

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
CYA='\033[1;96m' # Cyan

View file

@ -1,6 +1,6 @@
#!/bin/bash
# Copyright (c) 2022 Alex313031.
# Copyright (c) 2024 Alex313031.
YEL='\033[1;33m' # Yellow
RED='\033[1;31m' # Red
@ -13,14 +13,6 @@ underline=$'\033[4m' # Underline Text
yell() { echo "$0: $*" >&2; }
die() { yell "$*"; exit 111; }
try() { "$@" || die "${RED}Failed $*"; }
# Clean build dir.
cleanBuild () {
printf "\n" &&
printf "${bold}${RED}Cleaning build directory.${c0}\n" &&
printf "\n" &&
sleep 1 &&
rm -r -f -v ./build
}
# --help
displayHelp () {
@ -29,22 +21,31 @@ displayHelp () {
printf "${bold}${YEL}Use the --clean flag to delete the build directory.${c0}\n" &&
printf "\n"
}
case $1 in
--help) displayHelp; exit 0;;
esac
# Clean build dir.
cleanBuild () {
printf "\n" &&
printf "${bold}${YEL}Cleaning build directory.${c0}\n" &&
printf "\n" &&
sleep 1 &&
rm -r -f -v ./build_
printf "\n" &&
printf "${bold}${GRE}Done.${c0}\n" &&
printf "\n" &&
}
case $1 in
--clean) cleanBuild; exit 0;;
esac
mkdir -v -p build &&
mkdir -v -p build_ &&
cd build &&
cd build_ &&
cmake -GNinja -DLGPL=OFF .. &&
ninja -v -d stats &&
cd ../build
cd ../

View file

@ -2499,12 +2499,12 @@ if (current_toolchain == default_toolchain) {
chrome_public_apk_or_module_tmpl("chrome_public_apk") {
target_type = "android_apk"
apk_name = "ThoriumPublic"
apk_name = "Thorium_Public"
art_profile_path = "//chrome/android/baseline_profiles/profile.txt"
}
chrome_public_bundle("chrome_public_bundle") {
bundle_name = "ThoriumPublic"
bundle_name = "Thorium_Public"
}
android_library("monochrome_java") {

View file

@ -1,4 +1,4 @@
# Copyright (c) 2023 Alex313031.
# Copyright (c) 2024 Alex313031.
APT_GET="`command -v apt-get 2> /dev/null`"
APT_CONFIG="`command -v apt-config 2> /dev/null`"

View file

@ -1,4 +1,4 @@
# Copyright (c) 2022 The Chromium Authors and Alex313031. All rights reserved.
# Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#

View file

@ -1,4 +1,4 @@
# Copyright (c) 2023 Alex313031 and Iridium
# Copyright (c) 2024 Alex313031 and Iridium
# Shows the output of a given command only on failure, or when VERBOSE is set.
log_cmd() {
if [ "${VERBOSE:-}" ]; then

View file

@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright 2023 The Chromium Authors and Alex313031.
# Copyright 2024 The Chromium Authors and Alex313031.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#

View file

@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright (c) 2023 The Chromium Authors and Alex313031. All rights reserved.
# Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright (c) 2022 The Chromium Authors and Alex313031. All rights reserved.
# Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright (c) 2022 The Chromium Authors and Alex313031. All rights reserved.
# Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,4 +1,4 @@
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@ -83,7 +83,6 @@ android_library("content_shell_java") {
":content_shell_java_resources",
":content_shell_manifest",
"//base:base_java",
"//base:jni_java",
"//build/android:build_java",
"//components/download/internal/common:internal_java",
"//components/embedder_support/android:content_view_java",
@ -94,6 +93,7 @@ android_library("content_shell_java") {
"//media/capture/video/android:capture_java",
"//mojo/public/java:system_java",
"//net/android:net_java",
"//third_party/jni_zero:jni_zero_java",
"//ui/android:ui_java",
"//ui/base/cursor/mojom:cursor_type_java",
"//url:gurl_java",

View file

@ -1,4 +1,4 @@
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

View file

@ -1,4 +1,4 @@
// Copyright (c) 2023 The Chromium Authors and Alex313031. All rights reserved.
// Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

View file

@ -1,4 +1,4 @@
// Copyright (c) 2023 The Chromium Authors and Alex313031. All rights reserved.
// Copyright (c) 2024 The Chromium Authors and Alex313031. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

View file

@ -1,4 +1,4 @@
# Copyright 2023 The Chromium Authors and Alex313031
# Copyright 2024 The Chromium Authors and Alex313031
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@ -8,8 +8,8 @@ import("//build/config/chromeos/ui_mode.gni")
import("//media/media_options.gni")
declare_args() {
# Enables Widevine key system support. Enabled by default in Google Chrome and
# on Android. For Fuchsia, see crbug.com/1354347.
# Enables Widevine key system support. Enabled by default in Google Chrome,
# Google Chrome for Testing and Android. For Fuchsia, see crbug.com/1354347.
# Can be optionally enabled in Chromium on non-Android platforms. Please see
# //src/third_party/widevine/LICENSE file for details.
enable_widevine = !is_fuchsia
@ -52,7 +52,8 @@ assert(!enable_media_foundation_widevine_cdm || is_win)
assert(!enable_media_foundation_widevine_cdm || enable_widevine)
declare_args() {
# Widevine CDM is bundled as part of Google Chrome builds.
# Widevine CDM is bundled as part of Google Chrome and
# Google Chrome for Testing builds.
bundle_widevine_cdm = false
# Relative root directory to //third_party/widevine/cdm for CDM files.
@ -63,7 +64,8 @@ declare_args() {
declare_args() {
# Enable Widevine CDM host verification, which will sign additional binaries
# with Widevine certs and copy signature files as needed.
enable_widevine_cdm_host_verification = enable_library_widevine_cdm && enable_cdm_host_verification
enable_widevine_cdm_host_verification =
enable_library_widevine_cdm && enable_cdm_host_verification
# If set, and Widevine CDM host verification signing failed due to no signing
# cert, the failure will be ignored. Otherwise the build process will fail.

View file

@ -1,4 +1,4 @@
// Copyright 2023 The Chromium Authors and Alex313031
// Copyright 2024 The Chromium Authors and Alex313031
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

@ -1 +1 @@
Subproject commit 63f44d9bee552359522bb0b2c28e8c6adb6bc218
Subproject commit eccb57ae3043304462c6e709efd65b2a5edf1d16