koel: Installation fails on ARM because Cypress is not available for the platform

When trying to install Koel on my Raspberry Pi the installation failed because Cypress could not find a supported version to download. I don’t think Cypress even has an ARM compatible version, and here it is trying to download the IA32 version? Wtf Besides, is a test library supposed to be a requirement for the installation? Here’s the error log for php artisan koel:init, after the yarn install command:

├── Installing Node modules in resources/assets directory
yarn install v1.17.3
[1/4] Resolving packages...
[2/4] Fetching packages...
info fsevents@1.2.9: The platform "linux" is incompatible with this module.
info "fsevents@1.2.9" is an optional dependency and failed compatibility check. Excluding it from installation.
info fsevents@2.0.7: The platform "linux" is incompatible with this module.
info "fsevents@2.0.7" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
error /home/glics/koel/node_modules/cypress: Command failed.
Exit code: 1
Command: node index.js --exec install
Arguments:
Directory: /home/glics/koel/node_modules/cypress
Output:
Installing Cypress (version: 3.4.1)

[19:28:41]  Downloading Cypress     [started]
[19:29:08]  Downloading Cypress     [failed]
[19:29:08] → The Cypress App could not be downloaded.

Does your workplace require a proxy to be used to access the Internet? If so, you must configure the HTTP_PROXY environment variable before downloading Cypress. Read more: https://on.cypress.io/proxy-configuration

Otherwise, please check network connectivity and try again:

----------

URL: https://download.cypress.io/desktop/3.4.1?platform=linux&arch=ia32
Error: Failed downloading the Cypress binary.
Response code: 404
Response message: Not Found

----------

Platform: linux (Debian - 10)
Cypress Version: 3.4.1
The Cypress App could not be downloaded.

Does your workplace require a proxy to be used to access the Internet? If so, you must configure the HTTP_PROXY environment variable before downloading Cypress. Read more: https://on.cypress.io/proxy-configuration

Otherwise, please check network connectivity and try again:

----------

URL: https://download.cypress.io/desktop/3.4.1?platform=linux&arch=ia32
Error: Failed downloading the Cypress binary.
Response code: 404
Response message: Not Found

----------

Platform: linux (Debian - 10)
Cypress Version: 3.4.1

info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

Here are the steps to reproduce.

  • Platform: ARMv7 (Raspberry Pi 2) or ARMv8 (Raspberry Pi 3 and later), though I guess any ARM version goes (i.e. mobile devices with Termux)
  • OS: Raspbian (Debian) 10 Buster
  • PHP version: 7.3.9 with the required moudules such as php-xml, php-curl, php-pgsql, php-mbstring
  • Any DBMS goes, I used PostgreSQL
  • Yarn version 1.17.3
  • Laravel Framework 5.8.35
  • Composer version 1.9.0
  1. Clone the repository git clone https://github.com/phanan/koel
  2. Checkout the 4.0.0 release git checkout v4.0.0
  3. (unnecessary?) Give permissions for the directory chmod -R 777 .
  4. Install composer modules composer install
  5. Start installation with php artisan koel:init, fill in the env variables as needed and wait for yarn install’s stage 4, Building fresh packages. At this point within some seconds Cypress will fail to find a version for ARM.

Really hoping this can be sorted out, love to see NodeJS and PHP being used for personal music streaming instead of the many Subsonic java-based forks


Hey, thanks for contributing to Koel! To save time for both of us, please make sure these checkboxes are checked before submitting the issue:

  • You have read and followed closely the Wiki, Upgrade Guide, as well as Troubleshooting
  • The issue has not been reported before
  • This is not a “how to install on Windows” or “why is my npm messed up” question
  • You’re a cool person

All checked? Now also make sure your issue

  • Is associated with a version. Or better yet, a commit.
  • Is as detailed as possible (ahem… OS, browser, steps to reproduce, maybe?)
  • Includes the error output if it’s a bug/error report (“Whoops!” is not very helpful, you know)
  • Is in English, 因为我不说中文。

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 1
  • Comments: 15 (7 by maintainers)

Most upvoted comments

Lots of great debugging and collaboration in this ticker which is great to see. It sound like Koel does work on newer Raspberry Pi’s without cypress. I’m going to go ahead and close this issue but it’s great to see new uses and devices running Koel.

What happens if you remove the cypress dependency from package.json?

it works on my raspberry pi 4B

  • OS: raspbian buster

What happens if you remove the cypress dependency from package.json?

converting bars.gif to a png (bars.png) and changing the img tag in resources/assets/js/components/ui/sound-bar.vue to the png hackily resolves the issue with the unsupported GIF package on ARM.