Files
brave-core/patches/chrome-installer-linux-BUILD.gn.patch
T
Brian R. BondyandFrancois Marier 581039ac87 Use origin-branded names for packages and dist artifacts (#34939)
* Use origin-branded names for Linux packages and dist artifacts

When is_brave_origin_branded=true, use brave-origin instead of
brave-browser for DEB/RPM package names and brave-origin instead
of brave for Linux symbols zip filenames.

- Add brave-origin/chromium-browser.info and appdata.xml.template
- Add brave_dist_name and brave_linux_package_name to config.gni
- Use brave_linux_package_name in Linux installer patch
- Conditionally select branding directory in sources.gni

* Use origin-branded dist name for all platform artifacts

Use brave_dist_name for dist zips, symbols, and native symbols
on all platforms. For origin builds this renames artifacts from
brave-v* to brave-origin-v* on Windows, Mac, and Android.

* Update chromium_src/chrome/installer/linux/common/brave-origin/appdata.xml.template

Co-authored-by: Francois Marier <francois@brave.com>

* Apply suggestion from @fmarier

Co-authored-by: Francois Marier <francois@brave.com>

* Use separate install dirs for origin to allow coexistence

Use /opt/brave.com/brave-origin and /etc/brave-origin for origin
builds so that regular Brave and Brave Origin can be installed
side by side on the same machine.

* Use origin screenshot URL in appdata template

* Match project_license with brave-browser appdata template

* Use distinct PROGNAME for origin to avoid conflicts with brave-browser

* Use brave-origin as binary name on Linux for origin builds

* Revert brave_exe and PROGNAME changes for origin

PROGNAME must match the actual binary name (brave) since the
wrapper script uses it to exec the binary. Coexistence between
brave-browser and brave-origin is handled by distinct PACKAGE,
INSTALLDIR, and ENROLLMENTDIR values, not the binary name.

---------

Co-authored-by: Francois Marier <francois@brave.com>
2026-03-25 10:56:13 -04:00

94 lines
3.7 KiB
Diff

diff --git a/chrome/installer/linux/BUILD.gn b/chrome/installer/linux/BUILD.gn
index 291ef25d7e29b9dede8f8c84a47d94e364910c74..a4d9cd241fcf47555f727a467f5e1f038108fcfb 100644
--- a/chrome/installer/linux/BUILD.gn
+++ b/chrome/installer/linux/BUILD.gn
@@ -16,6 +16,7 @@ import("//third_party/angle/gni/angle.gni")
import("//third_party/widevine/cdm/widevine.gni")
import("//ui/gl/features.gni")
import("//ui/qt/qt.gni")
+import("//brave/build/config.gni")
if (bundle_widevine_cdm) {
import("//media/cdm/library_cdm/cdm_paths.gni")
@@ -63,6 +64,7 @@ if (build_with_internal_optimization_guide) {
[ "$root_out_dir/liboptimization_guide_internal.so" ]
}
+packaging_files_executables -= excluded_packaging_files_executables packaging_files_executables += brave_packaging_files_executables
packaging_files_binaries = packaging_files_executables + packaging_files_shlibs
# TODO(mmoss) Any convenient way to get all the relevant build files?
@@ -172,6 +174,7 @@ action("merge_rpm_dependencies") {
strip_binary("strip_chrome_binary") {
binary_input = "$root_out_dir/chrome"
deps = [ "//chrome" ]
+ binary_input = "$root_out_dir/brave" symbol_output = "$root_out_dir/brave.debug" stripped_binary_output = "$root_out_dir/brave.stripped" deps += strip_chrome_binary_deps
}
strip_binary("strip_chrome_crashpad_handler") {
@@ -187,6 +190,7 @@ strip_binary("strip_chrome_management_service") {
strip_binary("strip_chrome_sandbox") {
binary_input = "$root_out_dir/chrome_sandbox"
deps = [ "//sandbox/linux:chrome_sandbox" ]
+ binary_input = "$root_out_dir/brave_sandbox" symbol_output = "$root_out_dir/brave_sandbox.debug" stripped_binary_output = "$root_out_dir/brave_sandbox.stripped" deps += strip_chrome_sandbox_deps
}
strip_binary("strip_libEGL_shlib") {
@@ -276,6 +280,7 @@ copy("common_packaging_files") {
}
outputs = [ "$root_out_dir/installer/common/{{source_file_part}}" ]
+ sources -= common_packaging_files_excluded_sources sources += common_packaging_files_sources
}
copy("deb_packaging_files") {
@@ -373,6 +378,7 @@ group("installer_deps") {
"//components/privacy_sandbox/privacy_sandbox_attestations/preload:component",
"//sandbox/linux:chrome_sandbox",
]
+ public_deps += brave_installer_deps
if (bundle_widevine_cdm) {
public_deps += [ "//third_party/widevine/cdm" ]
}
@@ -427,11 +433,14 @@ group("installer_deps") {
template("linux_package") {
assert(defined(invoker.channel))
channel = invoker.channel
+ if (channel == "unstable" ) {
+ channel = "dev"
+ }
if (is_chrome_branded) {
package = "google-chrome"
} else {
- package = "chromium-browser"
+ package = brave_linux_package_name chrome_version_full = brave_version
}
deb_target_name = "${target_name}_deb"
@@ -460,7 +469,7 @@ template("linux_package") {
}
inputs = packaging_files
- outputs = [ "$root_out_dir/${package}-${channel}_${chrome_version_full}-1_${deb_arch}.deb" ]
+ if (channel == "stable") { outputs = [ "$root_out_dir/${package}_${chrome_version_full}_${deb_arch}.deb" ] } else { outputs = [ "$root_out_dir/${package}-${channel}_${chrome_version_full}_${deb_arch}.deb" ] }
args = [
"-a",
@@ -514,7 +523,7 @@ template("linux_package") {
}
inputs = packaging_files
- outputs = [ "$root_out_dir/${package}-${channel}-${chrome_version_full}-1.${rpm_arch}.rpm" ]
+ if (channel == "stable") { outputs = [ "$root_out_dir/${package}-${chrome_version_full}-1.${rpm_arch}.rpm" ] } else { outputs = [ "$root_out_dir/${package}-${channel}-${chrome_version_full}-1.${rpm_arch}.rpm" ] }
args = [
"-a",
@@ -561,3 +570,6 @@ linux_package("unstable") {
linux_package("canary") {
channel = "canary"
}
+linux_package("nightly") {
+ channel = "nightly"
+}