An SMTP client and server library for Zig implementing RFC 5321.
1.5 kB
71 lines
1# SPDX-FileCopyrightText: © 2026 Jeffrey C. Ollie <jeff@ocjtech.us>
2# SPDX-License-Identifier: MIT
3
4{
5 description = "";
6
7 inputs = {
8 nixpkgs = {
9 url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.zst";
10 };
11 };
12
13 outputs =
14 {
15 nixpkgs,
16 ...
17 }:
18 let
19 inherit (nixpkgs) lib;
20 linuxSystems = builtins.filter (
21 system: (lib.systems.elaborate system).isLinux
22 ) lib.systems.flakeExposed;
23 makePackages =
24 system:
25 import nixpkgs {
26 inherit system;
27 };
28 forAllSystems = lib.genAttrs linuxSystems;
29 in
30 {
31 packages = forAllSystems (
32 system:
33 let
34 pkgs = makePackages system;
35 in
36 rec {
37 zsmtp = pkgs.callPackage ./nix/package.nix { };
38 default = zsmtp;
39 }
40 );
41
42 checks = forAllSystems (
43 system:
44 let
45 pkgs = makePackages system;
46 in
47 {
48 zsmtp = pkgs.callPackage ./nix/package.nix { };
49 interop = pkgs.callPackage ./nix/interop-test.nix { };
50 }
51 );
52
53 devShells = forAllSystems (
54 system:
55 let
56 pkgs = makePackages system;
57 in
58 {
59 default = pkgs.mkShell {
60 name = "zsmtp";
61 nativeBuildInputs = [
62 pkgs.kcov
63 pkgs.radicle-node
64 pkgs.reuse
65 pkgs.zig_0_16
66 ];
67 };
68 }
69 );
70 };
71}