This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -16,78 +16,113 @@
# SONARiS
SONARiS is a script that lets you consoom SoundCloud from the terminal.
Its name was chosen rather randomly, so just ignore how it sounds like *Solaris™*, its **100%** not wanted please Oracle™ do not sue me thanks.
SONARiS is a script that lets you consoom SoundCloud from the terminal. Its name
was chosen rather randomly, so just ignore how it sounds like *Solaris™*, it's
**100%** not wanted please Oracle™ do not sue me thanks.
It makes use of the amazing MPV program as well as the even more amazing youtube-dl to deliver you a high-quality SoundCloud listening experience directly from your terminal/CLI.
It, by default, makes use of the amazing
[MPV](https://github.com/mpv-player/mpv) program as well as the portentous
[youtube-dl](https://github.com/ytdl-org/youtube-dl) to deliver you a
high-quality SoundCloud listening experience directly from your terminal/CLI.
The script is meant to never exceed 200 SLOC.
The script is meant to never exceed *200 SLOC*.
## Installation
To install SONARiS, simply don't install it, lol. Just ``git clone https://gitlab.com/mirk0dex/sonaris`` and ``cd`` into the new folder, which will probably be called "sonaris" or something like that.
Now you can run the script by doing ``./sonaris.sh``, but please make sure that:
To install SONARiS, simply don't install it, lol. Just ``git clone
https://gitlab.com/mirk0dex/sonaris`` and ``cd`` into the new folder, which will
probably be called "sonaris" or something like that. Now you can run the script
by doing ``./sonaris.sh``, but please make sure that:
1. you have installed all deps listed below,
2. you have run ``chmod +x sonaris.sh`` to ensure that the script is executable.
## Dependencies
The script needs the following (amazing, I shall add) programs to be installed to work properly.
They are:
The script needs the following (amazing, I shall add) programs to be installed
to work properly. They are:
- git, to clone the repo;
- a UNIX-like system with a home folder and a '.config' dir inside it, this basically means that there is no Boomer OS (Windows) support, install GNU/Linux folks (but you might be able to run it WSL if you really wanted to);
- bash;
- yq & jq, needed for the configuration file;
- a UNIX-like system with a home folder; basically means that there is no Boomer
OS (Windows) support, install GNU/Linux folks (still, you might be able to get
it running inside WSL if you really wanted to);
- bash (bloat alert);
- sed (GNU sed is recommended);
- grep (replaceable with ripgrep);
- fzf;
- a command line finder, default is fzf;
- curl;
- mpv (of course);
- youtube-dl (I'd just like to interject for a moment: what you're referring to as 'youtube-dl', is in fact 'youtube/soundcloud-dl', or, as I've recently taken to calling it, 'youtube + soundcloud-dl'.).
- youtube-dl (I'd just like to interject for a moment: what you're referring to
as 'youtube-dl', is in fact 'youtube/soundcloud-dl', or, as I've recently
taken to calling it, 'youtube + soundcloud-dl'.);
- a media/music/audio player that supports youtube-dl (of course), default is mpv.
To quickly install alle these, you can use one of the following commands, feel free to pick the one that suits your distro (or OS) the better.
To quickly install alle these, you can use one of the following commands, feel
free to pick the one that suits your distro (or OS) the better.
*Ubuntu*/*Debian*/*Elementary OS*/*Linux Mint*/Any Ubuntu or Debian-based distro:
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -21,39 +21,45 @@
# Deps:
# bash, sed, grep (replaceable with rg), fzf, curl, mpv, youtube-dl and yq & jq for configurating the program (it needs tomlq to read the config file, which is written in Tom's Obvious Minimal Language)
# FAVO(U)RITE ARTISTS: (please insert the name you can find in the SoundCloud URL, example: URL: 'https://soundcloud.com/S3RL', artist you have to insert: 'S3RL'. You can add as many as you want.)
favartists='''
favArtist1='null'
favArtist2='null'
favArtist3='null'
'''
# FOLDERS:
downloaddir='$HOME/Music/SoundCloud-downloads/'
" > "/tmp/sonarisrc-template-temp"
}
configPrepare
# print help screen
helpCreate(){
echo"
SONARiS - BASED CLI SoundCloud client and downloader [Version $version]
# print help screen if needed
helpMe(){
echo"SONARiS - BASED CLI SoundCloud client and downloader [Version $version]
Usage: ./sonaris.sh
./sonaris.sh [options][option stuffs...]
@ -61,7 +67,7 @@ Usage: ./sonaris.sh
SONARiS is a script which allows you to listen to your favourite songs, albums made by the artists you love.
It does so using the amazing MPV and youtube-dl programs and some other nice tools.
To make it your own and configure it, just check out '~/.config/sonaris/sonarisrc' :D.
To make it your own and configure it, just open up 'sonaris.sh' in your favoUrite text editor :D.
This is free software licensed under the GPL 3.0 license. If you didn't receive a copy of it along with this program, check out <https://www.gnu.org/licenses/>.
@ -69,42 +75,22 @@ Options:
-h, --help prints this help screen and exits
-s, --search [query] search on SoundCloud
-d, --download download a song instead of listening to it
-f, --favs pick an artist from a list (you can choose which to show in ~/.config/sonaris/sonarisrc
-n, --clean-config creates a clean config file in ~/.config/sonaris/
-e, --edit-config opens up the config file in your favo(u)rite text editor
-f, --favs pick an artist from a list (you can choose which to show by editing the script, trust me, it's ez af)