From 1122130c6f5b1bd388334ba02f06383ab4ceffa6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20Gr=C3=A4fenstein?= Date: Sat, 5 Feb 2022 20:02:07 +0100 Subject: [PATCH] ungoogled-chromium: inherit upstream's build flags This ensures that our build flags for ungoogled-chromium will remain up-to-date with upstream's defaults (also important for avoiding build errors). Co-authored-by: Michael Weiss --- .../networking/browsers/chromium/common.nix | 20 ++-------------- .../browsers/chromium/ungoogled-flags.toml | 23 +++++++++++++++++++ .../networking/browsers/chromium/update.py | 11 +++++++++ 3 files changed, 36 insertions(+), 18 deletions(-) create mode 100644 pkgs/applications/networking/browsers/chromium/ungoogled-flags.toml diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index 0f021b207508..90ad0d1abe8d 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -287,24 +287,8 @@ let } // optionalAttrs pulseSupport { use_pulseaudio = true; link_pulseaudio = true; - } // optionalAttrs ungoogled { - chrome_pgo_phase = 0; - enable_hangout_services_extension = false; - enable_js_type_check = false; - enable_mdns = false; - enable_one_click_signin = false; - enable_reading_list = false; - enable_remoting = false; - enable_reporting = false; - enable_service_discovery = false; - exclude_unwind_tables = true; - google_api_key = ""; - google_default_client_id = ""; - google_default_client_secret = ""; - safe_browsing_mode = 0; - use_official_google_api_keys = false; - use_unofficial_version_number = false; - } // (extraAttrs.gnFlags or {})); + } // optionalAttrs ungoogled (importTOML ./ungoogled-flags.toml) + // (extraAttrs.gnFlags or {})); configurePhase = '' runHook preConfigure diff --git a/pkgs/applications/networking/browsers/chromium/ungoogled-flags.toml b/pkgs/applications/networking/browsers/chromium/ungoogled-flags.toml new file mode 100644 index 000000000000..f2bf29cda24b --- /dev/null +++ b/pkgs/applications/networking/browsers/chromium/ungoogled-flags.toml @@ -0,0 +1,23 @@ +build_with_tflite_lib=false +chrome_pgo_phase=0 +clang_use_chrome_plugins=false +disable_fieldtrial_testing_config=true +enable_hangout_services_extension=false +enable_js_type_check=false +enable_mdns=false +enable_mse_mpeg2ts_stream_parser=true +enable_nacl=false +enable_one_click_signin=false +enable_reading_list=false +enable_remoting=false +enable_reporting=false +enable_service_discovery=false +enable_widevine=true +exclude_unwind_tables=true +google_api_key="" +google_default_client_id="" +google_default_client_secret="" +safe_browsing_mode=0 +treat_warnings_as_errors=false +use_official_google_api_keys=false +use_unofficial_version_number=false diff --git a/pkgs/applications/networking/browsers/chromium/update.py b/pkgs/applications/networking/browsers/chromium/update.py index 3ea5dea50cd6..8341f2c6ee22 100755 --- a/pkgs/applications/networking/browsers/chromium/update.py +++ b/pkgs/applications/networking/browsers/chromium/update.py @@ -24,6 +24,7 @@ DEB_URL = 'https://dl.google.com/linux/chrome/deb/pool/main/g' BUCKET_URL = 'https://commondatastorage.googleapis.com/chromium-browser-official' JSON_PATH = dirname(abspath(__file__)) + '/upstream-info.json' +UNGOOGLED_FLAGS_PATH = dirname(abspath(__file__)) + '/ungoogled-flags.toml' COMMIT_MESSAGE_SCRIPT = dirname(abspath(__file__)) + '/get-commit-message.py' @@ -108,6 +109,12 @@ def get_latest_ungoogled_chromium_build(): } +def get_ungoogled_chromium_gn_flags(revision): + """Returns ungoogled-chromium's GN build flags for the given revision.""" + gn_flags_url = f'https://raw.githubusercontent.com/Eloston/ungoogled-chromium/{revision}/flags.gn' + return urlopen(gn_flags_url).read().decode() + + def channel_name_to_attr_name(channel_name): """Maps a channel name to the corresponding main Nixpkgs attribute name.""" if channel_name == 'stable': @@ -208,6 +215,8 @@ with urlopen(HISTORY_URL) as resp: 'rev': build['ungoogled_tag'], 'sha256': nix_prefetch_git(ungoogled_repo_url, build['ungoogled_tag'])['sha256'] } + with open(UNGOOGLED_FLAGS_PATH, 'w') as out: + out.write(get_ungoogled_chromium_gn_flags(build['ungoogled_tag'])) channels[channel_name] = channel @@ -227,6 +236,8 @@ if len(sys.argv) == 2 and sys.argv[1] == '--commit': if channel_name == 'stable': body = subprocess.check_output([COMMIT_MESSAGE_SCRIPT, version_new]).decode('utf-8') commit_message += '\n\n' + body + elif channel_name == 'ungoogled-chromium': + subprocess.run(['git', 'add', UNGOOGLED_FLAGS_PATH], check=True) subprocess.run(['git', 'add', JSON_PATH], check=True) subprocess.run(['git', 'commit', '--file=-'], input=commit_message.encode(), check=True) else: