From 23c07949ab400a49f05405feb5071812e6b81311 Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Wed, 19 Aug 2026 00:54:32 +0530 Subject: refactor: remove eval-time impurities from chromium extensions - Remove builtins.fetchurl-based version checking from lib.nix - Move each extension into its own directory with default.nix + metadata.nix - Add extensions/metadata.nix to compile all update metadata into a list - Generate update checks via a standalone shell script in updates/ --- modules/web/chromium/extensions/theme/default.nix | 16 ++++++ .../web/chromium/extensions/theme/manifest.json | 57 ---------------------- modules/web/chromium/extensions/theme/metadata.nix | 4 ++ .../chromium/extensions/theme/theme/manifest.json | 57 ++++++++++++++++++++++ 4 files changed, 77 insertions(+), 57 deletions(-) create mode 100644 modules/web/chromium/extensions/theme/default.nix delete mode 100644 modules/web/chromium/extensions/theme/manifest.json create mode 100644 modules/web/chromium/extensions/theme/metadata.nix create mode 100644 modules/web/chromium/extensions/theme/theme/manifest.json (limited to 'modules/web/chromium/extensions/theme') diff --git a/modules/web/chromium/extensions/theme/default.nix b/modules/web/chromium/extensions/theme/default.nix new file mode 100644 index 0000000..674439c --- /dev/null +++ b/modules/web/chromium/extensions/theme/default.nix @@ -0,0 +1,16 @@ +{ + extLib, + ... +}: +let + meta = import ./metadata.nix; +in +{ + inherit (meta) pname; + version = meta.version; + id = null; + drv = extLib.mkLocalExtension { + inherit (meta) pname; + srcDir = ./theme; + }; +} diff --git a/modules/web/chromium/extensions/theme/manifest.json b/modules/web/chromium/extensions/theme/manifest.json deleted file mode 100644 index 5be8622..0000000 --- a/modules/web/chromium/extensions/theme/manifest.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "manifest_version": 3, - "name": "OneDark Dark Theme", - "version": "1.0.0", - "description": "Dark theme based on base16 OneDark", - - "theme": { - "colors": { - "frame": [0, 0, 0], - "frame_inactive": [0, 0, 0], - - "toolbar": [20, 20, 20], - - "tab_line": [200, 204, 212], - "tab_background_text": [171,178,191], - "tab_text": [200, 204, 212], - - "background_tab": [0, 0, 0], - - "bookmark_text": [200, 204, 212], - - "ntp_background": [0, 0, 0], - "ntp_text": [200, 204, 212], - "ntp_link": [97, 175, 239], - - "button_background": [0, 0, 0], - - "omnibox_background": [28, 31, 36], - "omnibox_text": [200, 204, 212], - "omnibox_results_bg": [0, 0, 0], - "omnibox_results_text": [200, 204, 212], - "omnibox_results_url": [97, 175, 239], - "omnibox_results_selected_bg": [44,49,58], - - "toolbar_button_icon": [200, 204, 212], - - "tab_loading": [97, 175, 239], - - "toolbar_field": [28, 31, 36], - "toolbar_field_text": [200, 204, 212], - "toolbar_field_border": [67, 72, 82], - - "toolbar_field_focus": [0, 0, 0], - "toolbar_field_text_focus": [255, 255, 255], - "toolbar_field_border_focus": [86, 92, 100] - }, - - "tints": { - "buttons": [1, 1, 1] - }, - - "properties": { - "ntp_background_alignment": "bottom", - "ntp_background_repeat": "no-repeat" - } - } -} diff --git a/modules/web/chromium/extensions/theme/metadata.nix b/modules/web/chromium/extensions/theme/metadata.nix new file mode 100644 index 0000000..4e9769d --- /dev/null +++ b/modules/web/chromium/extensions/theme/metadata.nix @@ -0,0 +1,4 @@ +{ + pname = "theme"; + version = "1.0.0"; +} diff --git a/modules/web/chromium/extensions/theme/theme/manifest.json b/modules/web/chromium/extensions/theme/theme/manifest.json new file mode 100644 index 0000000..5be8622 --- /dev/null +++ b/modules/web/chromium/extensions/theme/theme/manifest.json @@ -0,0 +1,57 @@ +{ + "manifest_version": 3, + "name": "OneDark Dark Theme", + "version": "1.0.0", + "description": "Dark theme based on base16 OneDark", + + "theme": { + "colors": { + "frame": [0, 0, 0], + "frame_inactive": [0, 0, 0], + + "toolbar": [20, 20, 20], + + "tab_line": [200, 204, 212], + "tab_background_text": [171,178,191], + "tab_text": [200, 204, 212], + + "background_tab": [0, 0, 0], + + "bookmark_text": [200, 204, 212], + + "ntp_background": [0, 0, 0], + "ntp_text": [200, 204, 212], + "ntp_link": [97, 175, 239], + + "button_background": [0, 0, 0], + + "omnibox_background": [28, 31, 36], + "omnibox_text": [200, 204, 212], + "omnibox_results_bg": [0, 0, 0], + "omnibox_results_text": [200, 204, 212], + "omnibox_results_url": [97, 175, 239], + "omnibox_results_selected_bg": [44,49,58], + + "toolbar_button_icon": [200, 204, 212], + + "tab_loading": [97, 175, 239], + + "toolbar_field": [28, 31, 36], + "toolbar_field_text": [200, 204, 212], + "toolbar_field_border": [67, 72, 82], + + "toolbar_field_focus": [0, 0, 0], + "toolbar_field_text_focus": [255, 255, 255], + "toolbar_field_border_focus": [86, 92, 100] + }, + + "tints": { + "buttons": [1, 1, 1] + }, + + "properties": { + "ntp_background_alignment": "bottom", + "ntp_background_repeat": "no-repeat" + } + } +} -- cgit v1.2.3