From 85341ca46a3e46a2b71c4cbc7413b8baa25845b5 Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Sat, 19 Sep 2026 03:25:31 +0530 Subject: chore(updates/web/chromium): re-wrote new updates checker for extensions --- updates/web/chromium/extensions.nix | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) (limited to 'updates/web/chromium/extensions.nix') diff --git a/updates/web/chromium/extensions.nix b/updates/web/chromium/extensions.nix index ab6e818..fbfe277 100644 --- a/updates/web/chromium/extensions.nix +++ b/updates/web/chromium/extensions.nix @@ -1,18 +1,31 @@ { pkgs, - lib, ... }: let extensions = import ../../../modules/web/chromium/extensions/metadata.nix; - luaExtensionList = lib.concatMapStringsSep "\n" (ext: '' - { pname = "${ext.pname}", owner = "${ext.owner}", repo = "${ext.repo}", version = "${ext.version}", updateType = "${ext.updateType or "release"}", tagPrefix = "${ext.tagPrefix}" }, - '') extensions; + extensionsJsonString = builtins.replaceStrings [ "\\" "\"" ] [ "\\\\" "\\\"" ] ( + builtins.toJSON ( + map (ext: { + pname = ext.pname; + owner = ext.owner; + repo = ext.repo; + version = ext.version; + updateType = ext.updateType or "release"; + tagPrefix = ext.tagPrefix; + }) extensions + ) + ); + + luaEnv = pkgs.luajit.withPackages (ps: [ + ps.lua-cjson + ps.http + ]); luaScript = pkgs.writeText "check-chromium-extension-updates.lua" ( - builtins.replaceStrings [ "--@@EXTENSIONS@@--" ] [ luaExtensionList ] ( + builtins.replaceStrings [ "@@EXTENSIONS@@" ] [ extensionsJsonString ] ( builtins.readFile ./check-chromium-extension-updates.lua ) ); @@ -22,21 +35,11 @@ in pname = "check-chromium-extension-updates"; version = "0.1.0"; dontUnpack = true; - nativeBuildInputs = [ - pkgs.luajit - pkgs.makeWrapper - ]; + nativeBuildInputs = [ luaEnv ]; installPhase = '' mkdir -p $out/bin install -m755 ${luaScript} $out/bin/check-chromium-extension-updates patchShebangs $out/bin/check-chromium-extension-updates - wrapProgram $out/bin/check-chromium-extension-updates \ - --prefix PATH : "${ - lib.makeBinPath [ - pkgs.curl - pkgs.jq - ] - }" ''; meta = { mainProgram = "check-chromium-extension-updates"; -- cgit v1.2.3