mfgames-writing-setup-flake/README.md

1.5 KiB

MfGames Writing Setup Flake

An opinionated setup for projects using MfGames Writing.

This is a setup flake that adds in the various packages used by MfGames Writing. It is intended to be used along with mfgames-project-setup to provide additional functionality.

Nix

This project is intended to be used with Nix flakes and can be used directly as an input.

{
  inputs = {
    mfgames-project-setup.url = "git+https://src.mfgames.com/nixos-contrib/mfgames-project-setup-flake.git";
    mfgames-writing-setup.url = "git+https://src.mfgames.com/nixos-contrib/mfgames-writing-setup-flake.git";
  };
}

This flake provides a function in mfgames-writing-setup.lib.mkConfig that creates a shell hook and the various tools required to run those hooks (because programs like lefthook assume that the program is in the PATH).

devShell =
  let
    project-config = mfgames-project-setup.lib.mkConfig {
      inherit system;
      prettier.proseWrap = "never"; # Used to avoid line wrapping at 80 columns
    };
    writing-config = mfgames-writing-setup.lib.mkConfig {
      inherit system;
    };
  in
  pkgs.mkShell {
    packages = [ ]
      ++ project-config.packages
      ++ writing-config.packages;

    shellHook = project-config.shellHook;
  };

Configuration

There are currently no configuration options with this flake, but the project setup flake contains some options.