1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-06-26 00:34:08 +02:00

gnu: Add ytfzf.

* gnu/packages/image-viewers.scm (ytfzf): New variable.

Co-authored-by: Raghav Gururajan <rg@raghavgururajan.name>
Co-authored-by: jgart <jgart@dismail.de>
This commit is contained in:
LibreMiami
2021-06-26 23:12:43 -04:00
committed by Raghav Gururajan
parent 1cc89f08b8
commit 3fdb2d6792
4 changed files with 517 additions and 0 deletions
+102
View File
@@ -18,6 +18,8 @@
;;; Copyright © 2021 Rovanion Luckey <rovanion.luckey@gmail.com>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -46,6 +48,7 @@
#:use-module (guix build-system python)
#:use-module (gnu packages autotools)
#:use-module (gnu packages algebra)
#:use-module (gnu packages base)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@@ -64,6 +67,7 @@
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages photo)
@@ -71,10 +75,108 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages suckless)
#:use-module (gnu packages terminals)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
#:use-module (gnu packages))
(define-public ytfzf
(package
(name "ytfzf")
(version "1.2.0")
(home-page "https://github.com/pystardust/ytfzf")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00d416qb4109pm77ikhnmds8qng90ni2jan9kdnxz7b6sh5f61nz"))
(patches
(search-patches
;; Prerequisite for 'patch phase.
"ytfzf-programs.patch"
;; Disables self-update.
"ytfzf-updates.patch"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
#:modules
((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Use correct $PREFIX path.
(substitute* "Makefile"
(("/usr/bin")
(format #f "~a/bin"
(assoc-ref outputs "out"))))
;; Use absolute path to referenced programs.
(substitute* "ytfzf"
(("guix-catimg")
(format #f "~a/bin/catimg"
(assoc-ref inputs "catimg")))
(("guix-chafa")
(format #f "~a/bin/chafa"
(assoc-ref inputs "chafa")))
(("guix-curl")
(format #f "~a/bin/curl"
(assoc-ref inputs "curl")))
(("guix-dmenu")
(format #f "~a/bin/dmenu"
(assoc-ref inputs "dmenu")))
(("guix-fzf")
(format #f "~a/bin/fzf"
(assoc-ref inputs "fzf")))
(("guix-jp2a")
(format #f "~a/bin/jp2a"
(assoc-ref inputs "jp2a")))
(("guix-jq")
(format #f "~a/bin/jq"
(assoc-ref inputs "jq")))
(("guix-mpv")
(format #f "~a/bin/mpv"
(assoc-ref inputs "mpv")))
(("guix-notify-send")
(format #f "~a/bin/notify-send"
(assoc-ref inputs "libnotify")))
(("guix-tput")
(format #f "~a/bin/tput"
(assoc-ref inputs "ncurses")))
(("guix-ueberzug")
(format #f "~a/bin/ueberzug"
(assoc-ref inputs "python-ueberzug")))
(("guix-youtube-dl")
(format #f "~a/bin/youtube-dl"
(assoc-ref inputs "youtube-dl"))))))
(delete 'configure)))) ;no configure script
(inputs
`(("catimg" ,catimg)
("chafa" ,chafa)
("curl" ,curl)
("dmenu" ,dmenu)
("fzf" ,fzf)
("jp2a" ,jp2a)
("jq" ,jq)
("libnotify" ,libnotify)
("mpv" ,mpv)
("ncurses" ,ncurses)
("python-ueberzug" ,python-ueberzug)
("youtube-dl" ,youtube-dl)))
(synopsis "Find and watch PeerTube or YouTube videos from the terminal")
(description "@code{ytfzf} is a POSIX script that helps you find PeerTube or
YouTube videos without requiring API and opens/downloads them using mpv/ytdl.")
(license license:gpl3+)))
(define-public feh
(package
(name "feh")