Here is a full working example that worked for me:
{ pkgs, ... }:
let
auto-sound-system = with pkgs; rustPlatform.buildRustPackage rec {
pname = "auto-sound-system";
version = "1.0.0";
src = /home/rajas/Documents/rust-esp32c3-examples/smart-power-button;
buildAndTestSubdir = "computer";
cargoLock = {
lockFile = ./Cargo.lock;
};
nativeBuildInputs = [
pkg-config
openssl
openssl.dev
];
PKG_CONFIG_PATH = "${pkgs.openssl.dev}/lib/pkgconfig";
};
in
{
systemd.services.auto-sound-system = {
enable = true;
description = "Automatically turn on/off the sound system";
serviceConfig = {
Type = "exec";
ExecStart = "${auto-sound-system}/bin/smart-power-button-computer";
};
wantedBy = [ "multi-user.target" ];
};
}