{"id":13615948,"url":"https://github.com/drupol/latex-letter","last_synced_at":"2025-10-29T00:31:48.524Z","repository":{"id":139073155,"uuid":"572214068","full_name":"drupol/latex-letter","owner":"drupol","description":null,"archived":false,"fork":false,"pushed_at":"2024-09-13T13:48:38.000Z","size":123,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-01T20:44:59.215Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/drupol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-29T19:45:52.000Z","updated_at":"2024-09-13T13:48:42.000Z","dependencies_parsed_at":"2024-01-19T10:57:48.961Z","dependency_job_id":"40d94a66-b429-448f-a2ef-53d620f38b84","html_url":"https://github.com/drupol/latex-letter","commit_stats":null,"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drupol%2Flatex-letter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drupol%2Flatex-letter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drupol%2Flatex-letter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drupol%2Flatex-letter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drupol","download_url":"https://codeload.github.com/drupol/latex-letter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238751181,"owners_count":19524536,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T20:01:21.064Z","updated_at":"2025-10-29T00:31:48.018Z","avatar_url":"https://github.com/drupol.png","language":"Nix","funding_links":[],"categories":["Nix"],"sub_categories":[],"readme":"# LaTeX Letter\n\nThis is a repository of [Nix package expressions][nix homepage] for creating\nbeautiful letters using Pandoc/LaTeX. Pandoc templates in use are:\n\n1. [Latex letter][pandoc letter] from [Aaron Wolen][aaron wolen], using LaTeX\n   `letter` class.\n2. [Custom template][scrlttr2 repository] adapted from the one of [Jens\n   Erat][jens erat], using LaTeX `scrlttr2` class. This template is a mix\n   between the one from Aaron and Jens.\n\nFind an example of letter in [the latest release][latest release] section.\n\n## Quick start\n\nYou have two options:\n\n1. Do not start a full project and use `nix run` to compile a PDF from a\n   Markdown file:\n   1. `nix run github:drupol/latex-letter#letter -- --output=letter.pdf --from=markdown /path/to/letter.md`\n   2. `nix run github:drupol/latex-letter#letter-scrlttr2 -- --output=letter.pdf --from=markdown /path/to/letter.md`\n2. Watch a markdown letter for changes and build on-the-go:\n   1. `nix run github:drupol/latex-letter#watch-letter -- --output=letter.pdf --from=markdown /path/to/letter.md`\n   2. `nix run github:drupol/latex-letter#watch-letter-scrlttr2 -- --output=letter.pdf --from=markdown /path/to/letter.md`\n3. Scaffold a full project from a default template:\n   `nix flake new --template github:drupol/latex-letter#default ./my-new-document`\n\n## Usage\n\nCreate a new letter by creating a new project:\n\n```shell\nnix flake new --template github:drupol/latex-letter#default ./my-new-document\n```\n\nThen go into the new directory:\n\n```shell\ncd ./my-new-document\n```\n\nThen build the letter:\n\n```shell\nnix build .#letter\n```\n\nor\n\n```shell\nnix build .#letter-scrlttr2\n```\n\nThen open the resulting letter in PDF:\n\n```shell\nopen result/letter.pdf\n```\n\n## API\n\nThis package is contains a `flake.nix` which exposes its derivations in an\n[overlay][nix overlays].\n\nExposed derivations:\n\n- `pandoc-letter-template`: The derivation of the Pandoc `letter` template\n- `pandoc-letter-scrlttr2-template`: The derivation of the Pandoc letter\n  `scrlttr2` template\n\nTo use it in your own package, here's a minimum working example:\n\n```nix\n{\n  description = \"Simple flake with Pandoc latex letter\";\n\n  inputs = {\n    nixpkgs.url = \"github:NixOS/nixpkgs/nixpkgs-unstable\";\n    flake-utils.url = \"github:numtide/flake-utils\";\n    latex-letter.url = \"github:drupol/latex-letter\";\n  };\n\n  outputs = inputs:\n    inputs.flake-utils.lib.eachDefaultSystem (system: let\n      pkgs = import inputs.nixpkgs {\n        overlays = [inputs.latex-letter.overlays.default];\n\n        inherit system;\n      };\n\n      tex = pkgs.texlive.combine {\n        inherit (pkgs.texlive) scheme-full latex-bin latexmk;\n      };\n\n      pandoc-templates = pkgs.symlinkJoin {\n        name = \"pandoc-templates\";\n\n        paths = [\n          pkgs.pandoc-letter-scrlttr2-template\n          pkgs.pandoc-letter-template\n        ];\n      };\n\n      pandoc = pkgs.writeShellApplication {\n        name = \"pandoc\";\n        text = ''\n          pandoc --data-dir=${pandoc-templates}/share/pandoc/ \"$@\"\n        '';\n        runtimeInputs = [tex pkgs.pandoc];\n      };\n    in {\n      formatter = pkgs.alejandra;\n\n      devShells.default = pkgs.mkShellNoCC {\n        name = \"latex-letter-devshell\";\n\n        buildInputs = [pandoc];\n      };\n    });\n}\n```\n\n[nix homepage]: https://nixos.org\n[nix overlays]: https://nixos.wiki/wiki/Overlays\n[aaron wolen]: https://github.com/aaronwolen\n[pandoc letter]: https://github.com/aaronwolen/pandoc-letter\n[latest release]: https://github.com/drupol/latex-letter/releases/latest\n[jens erat]: https://github.com/JensErat/\n[scrlttr2 repository]: https://github.com/drupol/pandoc-scrlttr2\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrupol%2Flatex-letter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrupol%2Flatex-letter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrupol%2Flatex-letter/lists"}