Closed fheft closed 2 years ago
Thank you, you got this pull-request done before I had a chance :)
For npm run dev
to work you need to adjust the if in main-src/processQueue.cjs
on line 20. The following should work:
`${process.platform === 'win32' ? 'win' : process.platform === 'linux' ? 'linux' : 'mac'}-extra-files`,
Additionally you may want to add a phrase to the readme. If you have a RTX 3080 or another card using higher CUDA versions the installation of torch in demucs-cxfreeze needs to be a different version: https://pytorch.org/get-started/locally/#linux-python . I am currently stuck at this point as python-3.10 seems to not work with torch version cu113.
Thank you @fheft and @sschueller very much for working on this! I don't have access to my Linux device right now, but I'll be able to review this in a couple of days. Looking forward to testing out your contributions and getting a Linux build shipped, hopefully within the next week. Thank you again!
Some additional info:
To use an RTX-3080 under Arch you will need python 3.8 (3.10 doesn't work). I was able to get demucs-cxfreeze
running with the following:
# install python 3.8 via yay (arch AUR) and pip
yay -S python38
mkdir pip
cd pip
curl -O https://bootstrap.pypa.io/get-pip.py
python3.8 get-pip.py
# compile demucs
git clone https://github.com/stemrollerapp/demucs-cxfreeze.git
cd demucs-cxfreeze
# for RTX-3080 we need cu113
pip3.8 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
pip3.8 install demucs SoundFile cx-Freeze
cxfreeze main.py --target-dir=dist --target-name=demucs-cxfreeze --packages=torch
# copy files in dist over to stemroller
Great! That will help me a lot once I get a chance to build the Linux binaries. Seems like you've already done the bulk of the work, which I really appreciate!
I ended up making some changes so that ffmpeg
and demucs
will be loaded globally, since I'm not yet sure how this app will be packaged and distributed on Linux. That should at least allow you to run it from source (although I still need to test it). Going to close this PR for now, but we can reopen once issue #12 is addressed.
Thanks for your help so far! Feel free to let me know if you need anything else, or if I'm missing something (this is my first time ever maintaining an open source project, so I still haven't fully figured out how to manage issues and contributions, apologies if I'm not doing things the most efficient way and feel free to provide advice 😄).
(See the develop
branch for said changes; I'll merge them in tonight hopefully).