A flake for setting up common mfgames-writing setups.
  • Nix 92.2%
  • Just 7.8%
Find a file
2026-04-17 00:43:09 -05:00
.config docs: using the right project ID 2025-02-22 21:09:01 -06:00
LICENSES feat!: switched to flake-parts and NixOS-style options 2026-04-16 17:46:15 -05:00
news docs: fixed URL for source (again) 2026-04-16 17:51:57 -05:00
src/nix feat!: switched to flake-parts and NixOS-style options 2026-04-16 17:46:15 -05:00
.editorconfig fix: bumped up dependencies 2026-01-18 00:44:20 -06:00
.envrc feat: initial commit 2024-01-30 14:44:31 -06:00
.gitignore feat!: switched to flake-parts and NixOS-style options 2026-04-16 17:46:15 -05:00
.prettierignore feat!: switched to flake-parts and NixOS-style options 2026-04-16 17:46:15 -05:00
CODE_OF_CONDUCT.md feat: bumping nixos and dependency packages 2025-01-07 23:43:59 -06:00
flake.lock fix: updating project flake 2026-04-17 00:43:09 -05:00
flake.nix fix: updating project flake 2026-04-17 00:43:09 -05:00
Justfile feat!: switched to flake-parts and NixOS-style options 2026-04-16 17:46:15 -05:00
README.md docs: using the right project ID 2025-02-22 21:09:01 -06:00
REUSE.toml feat!: switched to flake-parts and NixOS-style options 2026-04-16 17:46:15 -05:00

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 Tools such as pdftk, weasyprint, and other libraries.

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.