Uses unoffical Yandex.Music Api translated from Python to Nim
-
See releases
-
Install Nim
yay -S choosenim-bin choosenim stable
Download and compile DMusic
git clone https://github.com/levovix0/DMusic cd DMusic nimble install # result will be ~/.nimble/bin/dmusic
If you have Qt in non-standard location, specify
-d:qtInclude:path/to/qt/include
,-d:qtLib:path/to/qt/lib
and-d:qtBin:path/to/qt/bin
innimble install
BEFORE word "install"Add nimble dir to path (bash):
echo "export PATH='\$PATH:~/.nimble/bin/dmusic'" >> ~/.bashrc
Add nimble dir to path (fish):
fish_add_path ~/.nimble/bin/dmusic
-
AUR (from source code), see package
yay -S dmusic
-
Install all from "Compile from source code" and download DMusic sources, then
nimble buildWindows
all sholud prombably myabe work automatically...
result will be in
build-windows/DMusic
andbuild-windows/DMusic.zip
-
git clone https://github.com/levovix0/DMusic cd DMusic flatpak install org.kde.Sdk/x86_64/5.15-23.08 flatpak install org.kde.Platform/x86_64/5.15-23.08 flatpak-builder --user --install --force-clean build-flatpak org.DTeam.DMusic.yml
Compile flags
-d:debugRequests
- print all requested urls to stdout
-d:yandexMusic_oneRequestAtOnce
- make only one request to yandex music at once
-d:debugYandexMusicBehaviour
- debug Yandex.Music service and api behaviour
- Nim >= 2.0.0
- Qt == 5.15.2 (declarative, imageformats, graphicaleffects, multimedia, quickcontrols, quickcontrols2, svg)
- TagLib
If you want to support this project, here is some tasks to do:
- See issues
- Any bugfixes is always accepted, just describe somewhere what you fixed
- Refactoring (my code is bad, i know it)
- if you doing big refactoring, first create issue to ask is all your changes needed, and if it is, refactor
- Add/fix translations (see
translations
directory, translations is made via localize)- note: currently, there is no much text to translate there, because most of UI is translated via qt translator, but i want to migrate to localize
- Documentation
- Optimization
- Force Qml to compile to C++ at compile time instead of be interpreted like js in runtime
- Add integrations to other music streaming platforms (for example, soundcloud, spotify, etc)
- Design (pin figma project to issue or something like it)
- original design document
- Make better Qt wrapper (see my wrapper)
- Create simpler way to build DMusic on Windows
- Port DMusic on other platforms
- Create any Qt infrastructure replacement (this includes: easy 2d gpu rendering, components, markup language/macros, audio output, etc)
Qt is not made for Nim- note: i already made windowing library, and i am trying to make audio output library
- Make cool site that adverts DMusic
- Make DMusic legal?
Just fork levovix0/DMusic to your account, make changes and submit a pull request.
Or if it requires new repository to be created, create it and add an "change dependency" issue.