about summary refs log tree commit diff
path: root/pkgs/by-name/yt/ytermusic/package.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/yt/ytermusic/package.nix')
-rw-r--r--pkgs/by-name/yt/ytermusic/package.nix54
1 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/by-name/yt/ytermusic/package.nix b/pkgs/by-name/yt/ytermusic/package.nix
new file mode 100644
index 0000000000000..7b325afb9be95
--- /dev/null
+++ b/pkgs/by-name/yt/ytermusic/package.nix
@@ -0,0 +1,54 @@
+{ alsa-lib
+, dbus
+, fetchFromGitHub
+, lib
+, openssl
+, pkg-config
+, rustPlatform
+, stdenv
+,
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "ytermusic";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "ccgauche";
+    repo = "ytermusic";
+    rev = "beta-${version}";
+    hash = "sha256-nu/vedQNs5TgCG1v5qwwDTnFTyXCS2KnLVrnEhCtzCs=";
+  };
+
+  cargoLock = {
+    lockFile = ./Cargo.lock;
+    outputHashes = {
+      "rusty_ytdl-0.6.6" = "sha256-htXD8v9Yd7S0iLjP6iZu94tP5KO5vbmkdUybqA7OtlU=";
+      "symphonia-0.5.1" = "sha256-rGvde5w7czMLcOPARK1gFfDLn70VeIrn4nKOL6FPc2U=";
+    };
+  };
+  postPatch = "cp ${./Cargo.lock} Cargo.lock";
+
+  doCheck = true;
+
+  cargoBuildType = "release";
+
+  nativeBuildInputs = [
+    pkg-config
+  ];
+
+  buildInputs = [
+    openssl
+    alsa-lib
+    dbus
+  ];
+
+  meta = {
+    description = "TUI based Youtube Music Player that aims to be as fast and simple as possible";
+    homepage = "https://github.com/ccgauche/ytermusic";
+    changelog = "https://github.com/ccgauche/ytermusic/releases/tag/${src.rev}";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ codebam ];
+    mainProgram = "ytermusic";
+  };
+}