]>
Commit | Line | Data |
---|---|---|
1 | # CLI Tube | |
2 | ||
3 | Play videos from YouTube (and maybe other sources in the future) from the | |
4 | command line using your preferred desktop media player. | |
5 | ||
6 | This application is implemented in [Nim language](https://nim-lang.org) using | |
7 | only the standard library. | |
8 | ||
9 | ![clitube screenshot with search term 'baby yoda'](screenshot.png) | |
10 | ||
11 | ## Features | |
12 | ||
13 | - [x] Search for videos using keywords | |
14 | - [x] Stream videos | |
15 | - [x] Stream music | |
16 | - [ ] Download videos | |
17 | - [ ] Configuration options | |
18 | - [ ] Choice of video players | |
19 | - [ ] Show video URLs or not | |
20 | - [ ] Play audio only | |
21 | - [ ] Pagination of search results | |
22 | ||
23 | ## Installation | |
24 | ||
25 | Download the latest build from GitlabCI (amd64 GNU/Linux only). | |
26 | ||
27 | ```sh | |
28 | wget https://gitlab.com/njoseph/cli-tube/-/jobs/artifacts/master/download?job=compile -O artifacts.zip | |
29 | unzip artifacts.zip | |
30 | ``` | |
31 | ||
32 | ||
33 | For other platforms, create a release artifact using the following command: | |
34 | ||
35 | ```sh | |
36 | nim c -d:ssl -d:release clitube.nim | |
37 | ``` | |
38 | ||
39 | Copy the binary to a directory on your PATH such as `/usr/local/bin` | |
40 | ||
41 | ## Usage | |
42 | ||
43 | ```sh | |
44 | clitube emacs | |
45 | ||
46 | # If your search query has multiple words, use quotes | |
47 | clitube 'nim lang' | |
48 | ||
49 | # Advanced: Play audio of the first search result | |
50 | clitube -m -l "counting stars" | |
51 | ``` | |
52 | ||
53 | ### Commandline arguments | |
54 | ||
55 | | **Arguments** | **Explanation** | | |
56 | |---------------|--------------------------------------------| | |
57 | | -m, --music | Play Music only, no video | | |
58 | | -l, --lucky | Try your luck with the first search result | | |
59 | ||
60 | ## Development | |
61 | ||
62 | One-liner for compiling and running | |
63 | ||
64 | ```sh | |
65 | nim c -d:ssl -r clitube.nim 'nim lang' | |
66 | ``` |