{ pkgs ? import <nixpkgs> { } }:
with pkgs;
let
  sbcl' = sbcl.withPackages (ps: with ps; [
    hunchentoot
    dexador
    jzon
    serapeum
    deploy
    spinneret
    lass
    cl-smtp
    log4cl
    pkgs.openssl
    pkgs.openssl.out
    pkgs.openssl.dev
  ]);
in mkShell rec {
  name = "tfc";

  nativeBuildInputs = [
    gcc
    stdenv
    gnumake
    gdb
    pkg-config
    makeWrapper
    openssl
    openssl.out
    openssl.dev
  ];

  buildInputs = [
    hugo
    go
    nodejs
    sbcl'
    clippy
    rustc
    cargo
    rustfmt
    rust-analyzer
    just
  ];
  
  shellHook = ''
  alias hss='hugo server --noHTTPCache'
  '';
}