From f2a3c23634c7a5f8c23f68f24ff5dde95d472e16 Mon Sep 17 00:00:00 2001 From: Chris Wells Date: Mon, 3 Feb 2025 16:24:25 -0600 Subject: Working on assets --- nix/build.nix | 29 ++++++++++++++++++++++++----- nix/fontawesome.nix | 10 ++++++++++ nix/overlay.nix | 3 +++ 3 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 nix/fontawesome.nix (limited to 'nix') diff --git a/nix/build.nix b/nix/build.nix index 0844618..e3b6f5f 100644 --- a/nix/build.nix +++ b/nix/build.nix @@ -1,10 +1,29 @@ -{ runCommand, buildAssets, ... }: -runCommand "www-assets" { +{ stdenvNoCC, buildAssets, nodePackages, fontawesome, ... }: +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "www-assets"; + src = buildins.path { + path = ../.; + name = "assets"; + }; nativeBuildInputs = [ buildAssets + nodePackages.katex + fontaweoms ]; -} '' - mkdir -p $out/{css,logos,favicon} + phases = "installPhase"; + installPhase = '' + mkdir -p $out/{css,logos,favicon} -'' + # javascript + cp -r $src/js $out/js + + # fontawesome + mkdir -p $out/fontawesome + cp -r ${fontawesome}/{css,webfonts} $out/fontawesome + + # katex + cp -r ${nodePackages.katex}/lib/node_modules/katex/dist $out/katex + + '' +}) diff --git a/nix/fontawesome.nix b/nix/fontawesome.nix new file mode 100644 index 0000000..e824ace --- /dev/null +++ b/nix/fontawesome.nix @@ -0,0 +1,10 @@ +{ fetchFromGitHub, ... }: +let + version = "6.7.2"; +in (fetchFromGitHub { + owner = "FortAwesome"; + repo = "Font-Awesome"; + rev = version; +}) // { + inherit version; +} diff --git a/nix/overlay.nix b/nix/overlay.nix index 0ca77ce..644829b 100644 --- a/nix/overlay.nix +++ b/nix/overlay.nix @@ -10,12 +10,15 @@ final: prev: let ]; }; in { + fontawesome = prev.callPackage ./fontawesome.nix {}; + haskellPackages = prev.haskellPackages.extend (hfinal: hprev: { www-assets = hfinal.callCabal2nix "www-assets" src {}; }); www-assets = prev.callPackage ./build.nix { buildAssets = final.haskell.lib.compose.justStaticExecutables final.haskellPackages.www-assets; + inherit (final) fontawesome; }; } -- cgit v1.2.3