Soundnode / soundnode-app

Soundnode App is the Soundcloud for desktop. Built with Electron, Angular.js and Soundcloud API.
https://soundnode.github.io/soundnode-website/
Other
5.13k stars 640 forks source link

Error when trying to create a package for linux #1138

Closed acxz closed 4 years ago

acxz commented 4 years ago

Command: npm run package:linux

Error message:

> Soundnode@7.0.0 package:linux /home/acxz/vcs/git/aur/soundnode/src/soundnode-app-7.0.0
> electron-packager ./ Soundnode --platform=linux --out ./dist/Soundnode --electron-version 1.4.4 --overwrite --icon ./app/soundnode.icns

CANNOT RUN WITH NODE 13.7.0
Electron Packager requires Node 4.0 or above.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! Soundnode@7.0.0 package:linux: `electron-packager ./ Soundnode --platform=linux --out ./dist/Soundnode --electron-version 1.4.4 --overwrite --icon ./app/soundnode.icns`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the Soundnode@7.0.0 package:linux script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/acxz/.npm/_logs/2020-01-30T04_07_36_957Z-debug.log

OS: ArchLinux Soundnode version: 7.0.0

jakejarrett commented 4 years ago

Will take a look at this, likely just need to bump the electron packager version up. (Just recently moved to a newer version of node)

jakejarrett commented 4 years ago

Merged a fix for this :+1: (Will need this patched for my own dev too)

acxz commented 4 years ago

@jakejarrett thanks for looking at this issue! Do you mind if we reopen this issue, since I am still facing issues.

So I tried to use the dev branch instead of the latest release, but I am still suffering an issue: Command: npm run package:linux

> Soundnode@7.0.0 package:linux /home/acxz/vcs/git/github/Soundnode/soundnode-app
> electron-packager ./ Soundnode --platform=linux --out ./dist/Soundnode --electron-version 8.0.1 --overwrite --icon ./app/soundnode.icns

sh: electron-packager: command not found
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR! Soundnode@7.0.0 package:linux: `electron-packager ./ Soundnode --platform=linux --out ./dist/Soundnode --electron-version 8.0.1 --overwrite --icon ./app/soundnode.icns`
npm ERR! spawn ENOENT
npm ERR! 
npm ERR! Failed at the Soundnode@7.0.0 package:linux script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/acxz/.npm/_logs/2020-02-22T07_26_07_272Z-debug.log

Let me know if you want to see the log file as well.

jakejarrett commented 4 years ago

hm that's odd. I'll take a look later tonight, it was working with my initial testing

acxz commented 4 years ago

Just from looking at the error: it says electron-packager: command not found: https://github.com/electron/electron-packager Does this not get downloaded when I run npm install package:linux? EDIT: lol I forgot to run npm i after cloning the repo again mb` The build works for me and I can launch the application now!

acxz commented 4 years ago

Oh also, if you are trying to follow a practice like git flow, where you only release from master and all development happens in the dev branch, you should make the dev branch the default branch. This is will force contributors to PR to the dev branch instead of the master branch and when you clone a repo it will default to having the dev branch checked out instead of the mater, since master is only tracking release anyway. https://help.github.com/en/github/administering-a-repository/setting-the-default-branch

Since the release might take some time, I was thinking of releasing a soundnode-git package for ArchLinux, but it checks out the default branch, so Arch users wouldn't get this fix anyway, since the default branch rn is master (which I assume is reserved for release, hence the commits to the dev branch). Changing the default branch to dev tho, will also the package to pull the dev branch and will allow users to use the latest working commits so to speak. Please consider this option, if you do not plan to 1) release a new hotfix tag/release or 2) take a while to pull the relevant commit into the master (i.e. current default) branch.

Again thank you for your hard work on this project, you're really killing it! Looking forward to continue using this for a long time!

jakejarrett commented 4 years ago

unfortunately I'm unable to make dev default, But will merge dev into master and create a new build shortly. :+1:

edit; It's been merged :+1: