From 3976bc58485630fc8cbe891635c3ecc04f1850db Mon Sep 17 00:00:00 2001 From: Toast <39011842+toast003@users.noreply.github.com> Date: Wed, 29 Oct 2025 14:39:45 +0100 Subject: [PATCH] Nix: package copyparty fonts --- .../nix/deps/copyparty-fonts/default.nix | 30 +++++++++++++++++++ contrib/package/nix/overlay.nix | 1 + 2 files changed, 31 insertions(+) create mode 100644 contrib/package/nix/deps/copyparty-fonts/default.nix diff --git a/contrib/package/nix/deps/copyparty-fonts/default.nix b/contrib/package/nix/deps/copyparty-fonts/default.nix new file mode 100644 index 00000000..db0a8254 --- /dev/null +++ b/contrib/package/nix/deps/copyparty-fonts/default.nix @@ -0,0 +1,30 @@ +{ runCommand, fetchzip, fetchurl, python3 }: +let + fontawesomeVersion = "5.13.0"; + fontawesomeSrc = fetchzip { + url = "https://github.com/FortAwesome/Font-Awesome/releases/download/${fontawesomeVersion}/fontawesome-free-${fontawesomeVersion}-web.zip"; + hash = "sha256-gK21ztU2egNORebAyKlmxGKmoshp5ZZgMAv5jWIYBkI="; + }; + scp = fetchurl { + url = "https://fonts.gstatic.com/s/sourcecodepro/v11/HI_SiYsKILxRpg3hIP6sJ7fM7PqlPevW.woff2"; + hash = "sha256-ZZ/2tZan3bZIzWWlQpiTvmVWKcDTancDgXpjoIcOwCA="; + }; + python = python3.withPackages (ps: with ps; [ fonttools zopfli brotli ]); + rawScript = ./../../../../../scripts/deps-docker/mini-fa.sh; + +in +runCommand "copyparty-fonts" +{ + nativeBuildInputs = [ python ]; +} + '' + mkdir -p $out/no-pk + substitute ${rawScript} nix-mini-fa.sh \ + --replace-fail "/z/fontawesome-fre*" "${fontawesomeSrc}" \ + --replace-fail "/z/dist" $out \ + --replace-fail "/z/mini-fa.css" "${./../../../../../scripts/deps-docker/mini-fa.css}" \ + --replace-fail "/z/icon.list" "/build/icon.list" \ + --replace-fail "/z/scp.woff2" "${scp}" + bash nix-mini-fa.sh + '' + diff --git a/contrib/package/nix/overlay.nix b/contrib/package/nix/overlay.nix index 0a019de8..22ed3e18 100644 --- a/contrib/package/nix/overlay.nix +++ b/contrib/package/nix/overlay.nix @@ -8,6 +8,7 @@ final: prev: { marked = final.callPackage ./deps/marked { }; easy-mde = final.callPackage ./deps/easy-mde { }; busy-mp3 = final.callPackage ./deps/busy-mp3 { }; + copyparty-fonts = final.callPackage ./deps/copyparty-fonts { }; python3 = prev.python3.override { packageOverrides = pyFinal: pyPrev: {