duzda / deezer-enhanced

An unofficial application for Deezer with enhanced features
MIT License
52 stars 8 forks source link

Git version won't build #60

Open gitmeED331 opened 4 weeks ago

gitmeED331 commented 4 weeks ago

OS: Arch Desktop: Hyprland / River

I have tried several times to install the git version of deezer-enhanced-git but it fails every time. This has been an issue since I came across Deezer-Enhanced (thank you by the way, solves so many problems). Thus I have been forced to use the bin version.

Here is the output when using yay (but paru and makepkg does the exact same):

 yay -S deezer-enhanced-git
AUR Explicit (1): deezer-enhanced-git-v1.1.0.r0.ga362068-1
:: PKGBUILD up to date, skipping download: deezer-enhanced-git
  1 deezer-enhanced-git              (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> A
:: Deleting (1/1): /home/topsykrets/.cache/yay/deezer-enhanced-git
HEAD is now at e5083c9 version 1.1.0
warning: could not open directory 'pkg/': Permission denied
Removing deezer-enhanced/
Removing pkg/
Skipping repository src/deezer-enhanced
  1 deezer-enhanced-git              (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> N
==> Making package: deezer-enhanced-git v1.1.0.r0.ga362068-1 (Mon 28 Oct 2024 07:06:13 PM CDT)
==> Retrieving sources...
  -> Cloning deezer-enhanced git repo...
Cloning into bare repository '/home/topsykrets/.cache/yay/deezer-enhanced-git/deezer-enhanced'...
remote: Enumerating objects: 1276, done.
remote: Counting objects: 100% (347/347), done.
remote: Compressing objects: 100% (235/235), done.
remote: Total 1276 (delta 153), reused 278 (delta 99), pack-reused 929 (from 1)
Receiving objects: 100% (1276/1276), 730.95 KiB | 3.34 MiB/s, done.
Resolving deltas: 100% (723/723), done.
==> WARNING: Skipping verification of source file PGP signatures.
==> Validating source files with sha256sums...
    deezer-enhanced ... Skipped
:: (1/1) Parsing SRCINFO: deezer-enhanced-git
==> Making package: deezer-enhanced-git v1.1.0.r0.ga362068-1 (Mon 28 Oct 2024 07:06:16 PM CDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating deezer-enhanced git repo...
==> Validating source files with sha256sums...
    deezer-enhanced ... Skipped
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Creating working copy of deezer-enhanced git repo...
Cloning into 'deezer-enhanced'...
done.
==> Starting pkgver()...
==> Sources are ready.
==> Making package: deezer-enhanced-git v1.1.0.r0.ga362068-1 (Mon 28 Oct 2024 07:06:21 PM CDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Starting pkgver()...
==> Starting build()...
(node:57016) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
npm warn deprecated gar@1.0.4: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm warn deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs
npm warn deprecated xterm-addon-search@0.8.2: This package is now deprecated. Move to @xterm/addon-search instead.
npm warn deprecated xterm-addon-fit@0.5.0: This package is now deprecated. Move to @xterm/addon-fit instead.
npm warn deprecated asar@3.2.0: Please use @electron/asar moving forward.  There is no API change, just a package name change
npm warn deprecated xterm@4.19.0: This package is now deprecated. Move to @xterm/xterm instead.

added 951 packages, and audited 952 packages in 5m

191 packages are looking for funding
  run `npm fund` for details

12 vulnerabilities (1 low, 7 moderate, 4 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
(node:58507) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
✔ Checking your system
✔ Loading configuration
✔ Resolving make targets
  › Making for the following targets:
❯ Running package command
  ✔ Preparing to package application
  ❯ Running packaging hooks
    ✔ Running generateAssets hook
    ❯ Running prePackage hook
      ⠸ [plugin-vite] Building vite bundles
  ◼ Packaging application
  ◼ Running postPackage hook
◼ Running preMake hook
◼ Making distributables
◼ Running postMake hook
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: deezer-enhanced-git-exit status 4
 -> Failed to install the following packages. Manual intervention is required:
deezer-enhanced-git - exit status 4
gitmeED331 commented 4 weeks ago

cloned directly from github and tried running npm i && npm run make, and here is what it puts out. About the same but with a little more info.

makepkg -si
==> Making package: deezer-enhanced-git v1.1.0.r0.ga362068-1 (Mon 28 Oct 2024 07:15:13 PM CDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Cloning deezer-enhanced git repo...
Cloning into bare repository '/home/topsykrets/Downloads/BUILD/deezer-enhanced-git/deezer-enhanced'...
remote: Enumerating objects: 1276, done.
remote: Counting objects: 100% (347/347), done.
remote: Compressing objects: 100% (235/235), done.
remote: Total 1276 (delta 153), reused 278 (delta 99), pack-reused 929 (from 1)
Receiving objects: 100% (1276/1276), 731.06 KiB | 3.10 MiB/s, done.
Resolving deltas: 100% (723/723), done.
==> Validating source files with sha256sums...
    deezer-enhanced ... Skipped
==> Extracting sources...
  -> Creating working copy of deezer-enhanced git repo...
Cloning into 'deezer-enhanced'...
done.
==> Starting pkgver()...
==> Starting build()...
(node:61035) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
npm warn deprecated gar@1.0.4: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm warn deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs
npm warn deprecated xterm-addon-search@0.8.2: This package is now deprecated. Move to @xterm/addon-search instead.
npm warn deprecated xterm-addon-fit@0.5.0: This package is now deprecated. Move to @xterm/addon-fit instead.
npm warn deprecated asar@3.2.0: Please use @electron/asar moving forward.  There is no API change, just a package name change
npm warn deprecated xterm@4.19.0: This package is now deprecated. Move to @xterm/xterm instead.

added 951 packages, and audited 952 packages in 6m

191 packages are looking for funding
  run `npm fund` for details

12 vulnerabilities (1 low, 7 moderate, 4 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
(node:62262) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
✔ Checking your system
✔ Loading configuration
✔ Resolving make targets
  › Making for the following targets:
❯ Running package command
  ✔ Preparing to package application
  ❯ Running packaging hooks
    ✔ Running generateAssets hook
    ❯ Running prePackage hook
      ⠹ [plugin-vite] Building vite bundles
  ◼ Packaging application
  ◼ Running postPackage hook
◼ Running preMake hook
◼ Making distributables
◼ Running postMake hook
==> ERROR: A failure occurred in build().
    Aborting...
[topsykrets@Dragon deezer-enhanced-git]$ cd ..
[topsykrets@Dragon BUILD]$ cd deezer-enhanced-1.1.0
[topsykrets@Dragon deezer-enhanced-1.1.0]$ make
make: *** No targets specified and no makefile found.  Stop.
[topsykrets@Dragon deezer-enhanced-1.1.0]$ build
bash: build: command not found
[topsykrets@Dragon deezer-enhanced-1.1.0]$ npm i && npm run make
(node:63209) ExperimentalWarning: CommonJS module /usr/lib/node_modules/npm/node_modules/debug/src/node.js is loading ES Module /usr/lib/node_modules/npm/node_modules/supports-color/index.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
npm warn deprecated gar@1.0.4: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm warn deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs
npm warn deprecated xterm-addon-search@0.8.2: This package is now deprecated. Move to @xterm/addon-search instead.
npm warn deprecated xterm-addon-fit@0.5.0: This package is now deprecated. Move to @xterm/addon-fit instead.
npm warn deprecated asar@3.2.0: Please use @electron/asar moving forward.  There is no API change, just a package name change
npm warn deprecated xterm@4.19.0: This package is now deprecated. Move to @xterm/xterm instead.

added 951 packages, and audited 952 packages in 5m

191 packages are looking for funding
  run `npm fund` for details

12 vulnerabilities (1 low, 7 moderate, 4 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.

> deezer-enhanced@1.1.0 make
> electron-forge make

✔ Checking your system
✔ Loading configuration
✖ Resolving make targets
  › Cannot make for AppImage, the following external binaries need to be installed:
    mksquashfs
◼ Running package command
◼ Running preMake hook
◼ Making distributables
◼ Running postMake hook

The CJS build of Vite's Node API is deprecated. See https://vitejs.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated for more details.

An unhandled rejection has occurred inside Forge:
Error: Cannot make for AppImage, the following external binaries need to be installed: mksquashfs
at MakerAppImage.ensureExternalBinariesExist (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.1.0/node_modules/@electron-forge/maker-base/src/Maker.ts:154:13)
    at /home/topsykrets/Downloads/BUILD/deezer-enhanced-1.1.0/node_modules/@electron-forge/core/src/api/make.ts:196:21
    at _Task.taskFn (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.1.0/node_modules/@electron-forge/tracer/src/index.ts:51:36)
    at _Task.run (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.1.0/node_modules/listr2/dist/index.cjs:2063:35)
duzda commented 3 weeks ago

Hi, I see, this is just because of my laziness when it comes to building, I should add an only pacman taget for the git version, as there's no need to build all the targets. As of now, you should be able to solve this by installing squashfs-tools, which adds mksquashfs command.

gitmeED331 commented 3 weeks ago

Hi, I see, this is just because of my laziness when it comes to building, I should add an only pacman taget for the git version, as there's no need to build all the targets. As of now, you should be able to solve this by installing squashfs-tools, which adds mksquashfs command.

made no difference, fails with same errors.

duzda commented 3 weeks ago

Note for myself, change git building to:

npx electron-forge make --targets pacman

duzda commented 1 week ago

@gitmeED331

Please run npx electron-forge make --targets pacman instead of npm run make and paste the output, I've just realised I didn't take the lazy route, that also means that squashfs-tools is unnecessary.

gitmeED331 commented 1 week ago

Thank you, however, I have since changed to Nix thus am unable to try this. I am trying to learn it and maybe I will be able to write a Nixpkg for this as there are no Deezer clients available to NixOS.

duzda commented 1 week ago

Sure!

Closing this one as no longer relevant. Feel free to reopen if you change your mind in the future or create a PR for Nix!

gitmeED331 commented 1 week ago

@duzda

Back to Arch with me... NixOS failed me.

@gitmeED331

Please run npx electron-forge make --targets pacman instead of npm run make and paste the output, I've just realised I didn't take the lazy route, that also means that squashfs-tools is unnecessary.

Ok, here is what that command rendered me (it failed):

⠋ Resolving Forge Config(node:48218) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
✖ Resolving Forge Config

Electron forge was terminated:
You must depend on "electron-prebuilt-compile" in your devDependencies
duzda commented 6 days ago

As noted here https://github.com/electron/forge/issues/2024#issuecomment-723408343, you may have electron-forge installed globally on your device, which clashes. electron-prebuilt-compile has been for the last 2 years unsupported.

gitmeED331 commented 6 days ago

I don't know how that would have gotten installed, maybe another package. removed it and the command ran apparently successful and npm i && npm start opens the app, though not without some error, but does run.

what the start process ends with just before the window shows:

(node:132352) ExperimentalWarning: CommonJS module /home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/lib/load-config.js is loading ES Module /home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/tailwind.config.js using require().
Support for loading ES Module in require() is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)

An unhandled rejection has occurred inside Forge:
ReferenceError: require is not defined
at file:///home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/tailwind.config.js:7:12
    at ModuleJobSync.runSync (node:internal/modules/esm/module_job:367:35)
    at ModuleLoader.importSyncForRequire (node:internal/modules/esm/loader:325:47)
    at loadESMFromCJS (node:internal/modules/cjs/loader:1396:24)
    at Module._compile (node:internal/modules/cjs/loader:1529:5)
    at node:internal/modules/cjs/loader:1709:10
    at Object.require.extensions.<computed> [as .js] (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/ts-node/src/index.ts:1608:43)
    at Module.load (node:internal/modules/cjs/loader:1315:32)
    at Function._load (node:internal/modules/cjs/loader:1125:12)
    at TracingChannel.traceSync (node:diagnostics_channel:322:14)
    at wrapModuleLoad (node:internal/modules/cjs/loader:216:24)
    at Module.require (node:internal/modules/cjs/loader:1337:12)
    at require (node:internal/modules/helpers:139:16)
    at /home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/lib/load-config.js:54:27
    at loadConfig (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/lib/load-config.js:58:6)
    at getTailwindConfig (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/lib/setupTrackingContext.js:71:116)
    at /home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/lib/setupTrackingContext.js:100:92
    at /home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/processTailwindFeatures.js:46:11
    at plugins (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/tailwindcss/lib/plugin.js:38:69)
    at LazyResult.runOnRoot (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/postcss/lib/lazy-result.js:329:16)
    at LazyResult.runAsync (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/postcss/lib/lazy-result.js:258:26)
    at LazyResult.async (/home/topsykrets/Downloads/BUILD/deezer-enhanced-1.2.0/node_modules/postcss/lib/lazy-result.js:160:30)
duzda commented 6 days ago

It might be worth listing your global packages and purging everything you don't know.

npm list -g --depth=0

This should possibly only include npm and modules you're often using (such as in my case asar).

gitmeED331 commented 6 days ago

I don't really use npm directly, even AGSv2 is indirect and used local to it, so I'm not sure what app did the globals.

thanks

duzda commented 6 days ago

Did this in any way help you to resolve the issue?

gitmeED331 commented 6 days ago

well, git version via the repo still doesn't build. Out of the 3, only the bin version will build/install.

duzda commented 5 days ago

What does the error message say now, is it still the same? Btw, even if the other 2 versions do build, bin is still prefered due to it's stability

gitmeED331 commented 5 days ago

yes, same non-specific errors.

yeah, not the biggest of deals. Just found it odd for the git to have such issues while the bin doesn't and I like options.

did I mention that the other version (non-bin, non-git) also doesn't build?

duzda commented 4 days ago

Yes, the other version doesn't build, it just uses system wide electron, which is usually very risky as the differences between even minor versions can break stuff.