nixos/spec/web/site/default.nix

49 lines
866 B
Nix
Raw Permalink Normal View History

2025-01-13 11:52:09 +08:00
{
lib,
stdenvNoCC,
ruby,
bundlerEnv,
writeShellScriptBin,
fetchFromGitHub,
}:
let
2024-01-15 15:39:28 +08:00
name = "website";
version = "20240114";
assets = fetchFromGitHub {
name = "${name}-assets";
owner = "cotes2020";
repo = "chirpy-static-assets";
rev = "c577249";
hash = "sha256-Uxe7PMNwzKUN2b77QbjWLxEtOOLodPOyeMuUM1eKdlc=";
};
2024-02-24 17:19:50 +08:00
gems = bundlerEnv {
name = "${name}-gems";
inherit ruby;
gemfile = ./Gemfile;
lockfile = ./Gemfile.lock;
gemset = ./gemset.nix;
2024-01-15 15:39:28 +08:00
};
2025-01-13 11:52:09 +08:00
in
stdenvNoCC.mkDerivation {
2024-01-15 15:39:28 +08:00
pname = name;
inherit version;
src = ./.;
2025-01-13 11:52:09 +08:00
buildInputs = [
gems
ruby
];
2024-02-24 17:19:50 +08:00
nativeBuildInputs = [ (writeShellScriptBin "git" "true") ];
2024-01-15 15:39:28 +08:00
configurePhase = ''
cp -r ${assets}/. assets/lib/
'';
buildPhase = "JEKYLL_ENV=production bundle exec jekyll build";
installPhase = ''
cp -r _site "$out"
'';
}