37 lines
1.1 KiB
Nix
37 lines
1.1 KiB
Nix
{
|
|
description = "fumi - Smol Mail client (Rust)";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, flake-utils }:
|
|
flake-utils.lib.eachDefaultSystem (system:
|
|
let
|
|
pkgs = import nixpkgs { inherit system; };
|
|
fumi = { rns ? false }: pkgs.rustPlatform.buildRustPackage {
|
|
pname = "fumi";
|
|
version = "0.1.0";
|
|
src = ./.;
|
|
cargoLock.lockFile = ./Cargo.lock;
|
|
buildFeatures = pkgs.lib.optionals rns [ "rns" ];
|
|
# The rns feature vendors microReticulum behind the shim and needs
|
|
# MICRORETICULUM_SOURCE_DIR; it is added with the RNS carrier.
|
|
doCheck = !rns;
|
|
};
|
|
in
|
|
{
|
|
packages.default = fumi { };
|
|
packages.rns = fumi { rns = true; };
|
|
|
|
apps.default = flake-utils.lib.mkApp {
|
|
drv = fumi { };
|
|
name = "fumi";
|
|
};
|
|
|
|
devShells.default = pkgs.mkShell {
|
|
packages = with pkgs; [ cargo rustc rustfmt clippy sqlite ];
|
|
};
|
|
});
|
|
}
|