dsktp 0.1.0

A utility for listing and interacting with .desktop files on unix systems
Documentation
{ lib, rustPlatform }:

let
  cargoConf =
    builtins.readFile ./Cargo.toml;

  lines =
    builtins.split "\n" cargoConf;

  filteredLines =
    lib.lists.filter (line: ! (lib.lists.isList line)) lines;

  versionRegex =
    ''^version = "([0-9.]+)"$'';

  versionLine =
    lib.lists.findFirst (line: (builtins.match versionRegex line) != null) null filteredLines;

  version =
    lib.lists.head (builtins.match versionRegex versionLine);

in
rustPlatform.buildRustPackage {
  pname = "dsktp";
  version = version;

  src = ./.;

  cargoSha256 = "sha256-52fqPjYamcTCBOitpIJXYhuDavIeyql0616Ro65OEFw=";

  meta = with lib; {
    description = "A cli tool for working with .desktop files";
    homepage = "https://sr.ht/~parasrah/dsktp";
    license = licenses.gpl3Plus;
    maintainers = [ maintainers.parasrah ];
  };
}