Message ID | 20231023051055.1470319-1-jaeme@runbox.com |
---|---|
State | New |
Headers | show |
Series | [bug#66694] gnu: Add ani-cli | expand |
Hello T, T wrote: > We don't sign off on our own patches in Guix. Our Signed-off-by does not have the same DCO meaning as it does for, e.g., Linux. Ours is merely a stamp of approval by a committer. I see, I do wish I knew that earlier before sending my other patches. Maybe that should be written somewhere in the Contributing section of the Guix manual because I have my ~/.gitconfig automatically add the signed-off line to all my commits. Thank you for mentioning that. T wrote: > Apparently the copy-build-system doesn't acknowledge the existence of cross compilation, like, at all? That not surprisingly went over my head. Can you tell me how you discovered that? I would like to know. T wrote: > ...you don't want the script calling the build-time ‘native’ grep at run time. Noted (still learning lots'). T wrote: > I also added bash-minimal at ‘guix lint’'s suggestion. I also saw that suggestion but I didn't add it since I already had coreutils which in my mind eclipsed bash-minimal. T wrote: > we conventionally put fields in this order: Duly Noted. T wrote: > Here's a random Deep Guix Thing that I'm too tired to explain further: I remember reading about 'search-native-paths' in a Guix blog, I'm glad the --pure situation is cleared up. T wrote: > I do wonder: just how legal is this script, and the one Web site to which it's tightly bound? From looking at <https://repology.org/project/ani-cli/versions> for the other third-party packagers: Debian, Ubuntu, Gentoo as well as nixpkgs have this script in their repositories. In addition, disclaimer.md posits that ani-cli can be thought of as a browser/wrapper rather than being a direct source for copyrighted content. We don't know when the website(s) will stop working but we can assume that the script will be updated as well as it's fairly active and popular in the GNU/Linux world. But to offer a more principled rebuttal, yt-dlp also has this similar issue of relying on a nonfree, non-federated network service (google videos/YouTube). However, one of the niches of yt-dlp is that it offers a way for users to stream/download videos hosted on YouTube without having to load the proprietary JS through their web browser. This package could serve a similar purpose to guix users as it's much safer to stream content directly rather than having to connect to and load the website (if it is possible at all with GNU Icecat) via web browser. On a side note, this is my first time interacting with a mailing list/submitting patches. I have a lot of growing pains to get through. Thanks, Jaeme
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index b4dd7c27ae..e5166a3aa2 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -66,6 +66,7 @@ ;;; Copyright © 2023 Ott Joon <oj@vern.cc> ;;; Copyright © 2023 Dominik Delgado Steuter <dds@disroot.org> ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi> +;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -116,6 +117,7 @@ (define-module (gnu packages video) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) + #:use-module (gnu packages bittorrent) #:use-module (gnu packages boost) #:use-module (gnu packages cdrom) #:use-module (gnu packages check) @@ -194,6 +196,7 @@ (define-module (gnu packages video) #:use-module (gnu packages sqlite) #:use-module (gnu packages ssh) #:use-module (gnu packages swig) + #:use-module (gnu packages terminals) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) @@ -5721,3 +5724,34 @@ (define-public svtplay-dl broadcasters including SVT Play, Sveriges Radio, TV4 Play, along with many others.") (license license:expat))) + +(define-public ani-cli + (package + (name "ani-cli") + (version "4.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pystardust/ani-cli") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ni9pzjb5qh87iz7c8252bx79qadr1qx6jnkqvvjcqrchh7q473a")))) + (build-system copy-build-system) + (arguments + `(#:install-plan '(("ani-cli" "bin/") + ("ani-cli.1" "share/man/man1/")))) + (home-page "https://github.com/pystardust/ani-cli") + (synopsis "CLI to browse and watch anime") + (description + "ani-cli is a shell script command-line tool for browsing and watching +anime using allanime as a source. It can stream at multiple resolutions and +provides multiple interfaces such as rofi.") + (propagated-inputs (list mpv + yt-dlp + ffmpeg + fzf + curl + aria2)) + (license license:gpl3)))