Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test of Jellyseerr v2.0.1 #6294

Open
wants to merge 2 commits into
base: test-jellyseerr
Choose a base branch
from

Conversation

mreid-tt
Copy link
Contributor

Description

Testing build of Node.js app

Fixes #

Checklist

  • Build rule all-supported completed successfully
  • New installation of package completed successfully
  • Package upgrade completed successfully (Manually install the package again)
  • Package functionality was tested
  • Any needed documentation is updated/created

Type of change

  • Bug fix
  • New Package
  • Package update
  • Includes small framework changes
  • This change requires a documentation update (e.g. Wiki)

@mreid-tt
Copy link
Contributor Author

mreid-tt commented Oct 28, 2024

hey @hgy59, I was attempting to build a Node.js app using the instructions from the source repo but I think I'm missing something. While it does build from my branch, it does not include the dependencies required to run the package. So if I install Node v20 (from Synology) and then run this command:

sudo -u sc-jellyseerr node /var/packages/jellyseerr/target/web/index.js

I get errors like:

Error: Cannot find module 'winston'

So even though it does build and I see this in the log as being passed as a dependency, I don't know how to include it in the package. Or perhaps this isn't the right approach when dealing with Node.js?

@hgy59
Copy link
Contributor

hgy59 commented Oct 28, 2024

I guess, the instructions work only when built on the target system.

Did you include the node_modules folder in the package?
It does not look so, the package is only about 350 KB (and the node_modules folder is 1.5GB)

probably you need to call pnpm ... deploy ... to include the dependencies ...
https://pnpm.io/cli/deploy

but my try with pnpm deploy faild with:
 ERR_PNPM_CANNOT_DEPLOY  A deploy is only possible from inside a workspace

If this package really has > 1 GB of dependent modules it will be too large for SynoCommunity anyway...

@mreid-tt
Copy link
Contributor Author

mreid-tt commented Oct 29, 2024

@hgy59, I tried to include the node_modules manually but I still get errors when trying to run it. The manual inclusion may not be the best solution. I think there may be a path with this but will have to take some time to understand it:

@mreid-tt
Copy link
Contributor Author

mreid-tt commented Oct 29, 2024

As an alternate approach I tried to do a manual build like what the instructions advises but using the same account and a local account (based on this guide) as follows:

$ sudo -u sc-jellyseerr bash
bash-4.4$ mkdir "${HOME}/.npm-packages"

[setup .npmrc and .bashrc]

bash-4.4$ source ~/.bashrc
bash-4.4$ npm install -g pnpm

added 1 package in 6s
npm notice 
npm notice New minor version of npm available! 10.1.0 -> 10.9.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.9.0
npm notice Run npm install -g [email protected] to update!
npm notice 
bash-4.4$ mkdir jellyseerr
bash-4.4$ git clone https://github.com/Fallenbagel/jellyseerr.git
Cloning into 'jellyseerr'...
remote: Enumerating objects: 29831, done.
remote: Counting objects: 100% (7985/7985), done.
remote: Compressing objects: 100% (587/587), done.
remote: Total 29831 (delta 7689), reused 7419 (delta 7393), pack-reused 21846 (from 1)
Receiving objects: 100% (29831/29831), 40.05 MiB | 14.03 MiB/s, done.
Resolving deltas: 100% (20386/20386), done.
bash-4.4$ cd jellyseerr/
bash-4.4$ CYPRESS_INSTALL_BINARY=0 pnpm install --frozen-lockfile
Lockfile is up to date, resolution step is skipped
Packages: +2027
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Downloading @formatjs/[email protected]: 8.56 MB/8.56 MB, done
Downloading @swc/[email protected]: 20.73 MB/20.73 MB, done
Downloading @swc/[email protected]: 16.74 MB/16.74 MB, done
Downloading [email protected]: 9.13 MB/9.13 MB, done
Downloading [email protected]: 11.62 MB/11.62 MB, done
Downloading [email protected]: 20.63 MB/20.63 MB, done
Downloading @next/[email protected]: 41.90 MB/41.90 MB, done
Downloading @next/[email protected]: 50.27 MB/50.27 MB, done
Downloading [email protected]: 5.36 MB/5.36 MB, done
Downloading [email protected]: 9.93 MB/9.93 MB, done
Downloading @formatjs/[email protected]: 6.00 MB/6.00 MB, done
Downloading [email protected]: 24.04 MB/24.04 MB, done
Downloading [email protected]: 32.05 MB/32.05 MB, done
Downloading [email protected]: 5.90 MB/5.90 MB, done
Downloading @img/[email protected]: 7.20 MB/7.20 MB, done
Downloading @img/[email protected]: 7.06 MB/7.06 MB, done
Progress: resolved 2027, reused 0, downloaded 2025, added 2027, done
node_modules/.pnpm/[email protected][email protected]/node_modules/bcrypt: Running install script...
node_modules/.pnpm/[email protected]/node_modules/cypress: Running postinstall script...
node_modules/.pnpm/[email protected][email protected]/node_modules/sqlite3: Running inode_modules/.pnpm/[email protected][email protected]/node_modules/bcrypt: Running insnode_modules/.pnpm/[email protected]/node_modules/cypress: Running postinstall script, done in 11.2sm/[email protected][email protected]/node_modules/sqlite3: Running install script, done in 5.7s33.4/node_modules/sharp: Running install script, done in 2.2s

dependencies:
+ @formatjs/intl-displaynames 6.2.6
+ @formatjs/intl-locale 3.1.1
+ @formatjs/intl-pluralrules 5.1.10
+ @formatjs/intl-utils 3.8.4
+ @formatjs/swc-plugin-experimental 0.4.0
+ @headlessui/react 1.7.12
+ @heroicons/react 2.0.16
+ @supercharge/request-ip 1.2.0
+ @svgr/webpack 6.5.1
+ @tanem/react-nprogress 5.0.30
+ ace-builds 1.15.2
+ bcrypt 5.1.0
+ bowser 2.11.0
+ connect-typeorm 1.1.4
+ cookie-parser 1.4.6
+ copy-to-clipboard 3.3.3
+ country-flag-icons 1.5.5
+ cronstrue 2.23.0
+ csurf 1.11.0
+ date-fns 2.29.3
+ dayjs 1.11.7
+ email-templates 9.0.0
+ email-validator 2.0.4
+ express 4.18.2
+ express-openapi-validator 4.13.8
+ express-rate-limit 6.7.0
+ express-session 1.17.3
+ formik 2.4.6
+ gravatar-url 3.1.0
+ lodash 4.17.21
+ mime 3.0.0
+ next 14.2.4
+ node-cache 5.1.2
+ node-gyp 9.3.1
+ node-schedule 2.1.1
+ nodemailer 6.9.1
+ openpgp 5.7.0
+ plex-api 5.3.2
+ pug 3.0.2
+ react 18.3.1
+ react-ace 10.1.0
+ react-animate-height 2.1.2
+ react-aria 3.23.0
+ react-dom 18.3.1
+ react-intersection-observer 9.4.3
+ react-intl 6.6.8
+ react-markdown 8.0.5
+ react-popper-tooltip 4.4.2
+ react-select 5.7.0
+ react-spring 9.7.1
+ react-tailwindcss-datepicker-sct 1.3.4
+ react-toast-notifications 2.5.1
+ react-truncate-markup 5.1.2
+ react-use-clipboard 1.0.9
+ reflect-metadata 0.1.13
+ secure-random-password 0.2.3
+ semver 7.3.8
+ sharp 0.33.4
+ sqlite3 5.1.4
+ swagger-ui-express 4.6.2
+ swr 2.2.5
+ typeorm 0.3.11
+ undici 6.20.1
+ web-push 3.5.0
+ winston 3.8.2
+ winston-daily-rotate-file 4.7.1
+ xml2js 0.4.23
+ yamljs 0.3.0
+ yup 0.32.11
+ zod 3.20.6

devDependencies:
+ @commitlint/cli 17.4.4
+ @commitlint/config-conventional 17.4.4
+ @semantic-release/changelog 6.0.2
+ @semantic-release/commit-analyzer 9.0.2
+ @semantic-release/exec 6.0.3
+ @semantic-release/git 10.0.1
+ @tailwindcss/aspect-ratio 0.4.2
+ @tailwindcss/forms 0.5.3
+ @tailwindcss/typography 0.5.9
+ @types/bcrypt 5.0.0
+ @types/cookie-parser 1.4.3
+ @types/country-flag-icons 1.2.0
+ @types/csurf 1.11.2
+ @types/email-templates 8.0.4
+ @types/express 4.17.17
+ @types/express-session 1.17.6
+ @types/lodash 4.14.191
+ @types/mime 3.0.4
+ @types/node 20.14.8
+ @types/node-schedule 2.1.0
+ @types/nodemailer 6.4.7
+ @types/react 18.3.3
+ @types/react-dom 18.3.0
+ @types/react-transition-group 4.4.5
+ @types/secure-random-password 0.2.1
+ @types/semver 7.3.13
+ @types/swagger-ui-express 4.1.3
+ @types/web-push 3.3.2
+ @types/xml2js 0.4.11
+ @types/yamljs 0.2.31
+ @types/yup 0.29.14
+ @typescript-eslint/eslint-plugin 5.54.0
+ @typescript-eslint/parser 5.54.0
+ autoprefixer 10.4.13
+ commitizen 4.3.0
+ copyfiles 2.4.1
+ cy-mobile-commands 0.3.0
+ cypress 12.7.0
+ cz-conventional-changelog 3.3.0
+ eslint 8.35.0
+ eslint-config-next 14.2.4
+ eslint-config-prettier 8.6.0
+ eslint-plugin-formatjs 4.9.0
+ eslint-plugin-jsx-a11y 6.7.1
+ eslint-plugin-no-relative-import-paths 1.5.2
+ eslint-plugin-prettier 4.2.1
+ eslint-plugin-react 7.32.2
+ eslint-plugin-react-hooks 4.6.0
+ husky 8.0.3
+ lint-staged 13.1.2
+ nodemon 2.0.20
+ postcss 8.4.21
+ prettier 2.8.4
+ prettier-plugin-organize-imports 3.2.2
+ prettier-plugin-tailwindcss 0.2.3
+ semantic-release 19.0.5
+ semantic-release-docker-buildx 1.0.1
+ tailwindcss 3.2.7
+ ts-node 10.9.1
+ tsc-alias 1.8.2
+ tsconfig-paths 4.1.2
+ typescript 4.9.5

> [email protected] postinstall /volume1/@apphome/jellyseerr/jellyseerr
> node postinstall-win.js


> [email protected] prepare /volume1/@apphome/jellyseerr/jellyseerr
> husky install

husky - Git hooks installed

Done in 4m 42.3s
bash-4.4$ pnpm build

> [email protected] build /volume1/@apphome/jellyseerr/jellyseerr
> pnpm build:next && pnpm build:server


> [email protected] build:next /volume1/@apphome/jellyseerr/jellyseerr
> next build

  ▲ Next.js 14.2.4
  - Experiments (use with caution):
    · scrollRestoration
    · largePageDataBytes

 ✓ Linting and checking validity of types    
   Creating an optimized production build ...
 ✓ Compiled successfully
 ✓ Collecting page data    
Warning: You have opted-out of Automatic Static Optimization due to `getInitialProps` in `pages/_app`. This does not opt-out pages with `getStaticProps`
Read more: https://nextjs.org/docs/messages/opt-out-auto-static-optimization

 ✓ Collecting build traces    
 ✓ Finalizing page optimization    

Route (pages)                                          Size     First Load JS
┌ ƒ /                                                  39.6 kB         388 kB
├   /_app                                              0 B             208 kB
├ ƒ /404                                               907 B           209 kB
├ ƒ /blacklist                                         7.43 kB         215 kB
├ ƒ /collection/[collectionId]                         4.17 kB         299 kB
├ ƒ /discover/movies                                   1.38 kB         355 kB
├ ƒ /discover/movies/genre/[genreId]                   832 B           283 kB
├ ƒ /discover/movies/genres                            3.28 kB         223 kB
├ ƒ /discover/movies/keyword                           877 B           283 kB
├ ƒ /discover/movies/language/[language]               842 B           283 kB
├ ƒ /discover/movies/studio/[studioId]                 972 B           283 kB
├ ƒ /discover/movies/upcoming                          735 B           283 kB
├ ƒ /discover/trending                                 721 B           283 kB
├ ƒ /discover/tv                                       1.39 kB         355 kB
├ ƒ /discover/tv/genre/[genreId]                       828 B           283 kB
├ ƒ /discover/tv/genres                                3.28 kB         223 kB
├ ƒ /discover/tv/keyword                               873 B           283 kB
├ ƒ /discover/tv/language/[language]                   839 B           283 kB
├ ƒ /discover/tv/network/[networkId]                   972 B           283 kB
├ ƒ /discover/tv/upcoming                              726 B           283 kB
├ ƒ /discover/watchlist                                972 B           283 kB
├ ƒ /issues                                            7.66 kB         215 kB
├ ƒ /issues/[issueId]                                  41.1 kB         279 kB
├ ƒ /login                                             7.55 kB         268 kB
├ ƒ /login/plex/loading                                276 B           208 kB
├ ƒ /movie/[movieId]                                   7.96 kB         370 kB
├ ƒ /movie/[movieId]/cast                              2.55 kB         210 kB
├ ƒ /movie/[movieId]/crew                              2.55 kB         210 kB
├ ƒ /movie/[movieId]/recommendations                   867 B           283 kB
├ ƒ /movie/[movieId]/similar                           864 B           283 kB
├ ƒ /person/[personId]                                 10.2 kB         284 kB
├ ƒ /profile                                           294 B           304 kB
├ ƒ /profile/requests                                  287 B           279 kB
├ ƒ /profile/settings                                  313 B           284 kB
├ ƒ /profile/settings/main                             317 B           284 kB
├ ƒ /profile/settings/notifications/discord            2.09 kB         251 kB
├ ƒ /profile/settings/notifications/email              1.7 kB          264 kB
├ ƒ /profile/settings/notifications/pushbullet         2.3 kB          251 kB
├ ƒ /profile/settings/notifications/pushover           2.05 kB         251 kB
├ ƒ /profile/settings/notifications/telegram           2.13 kB         251 kB
├ ƒ /profile/settings/notifications/webpush            1.59 kB         237 kB
├ ƒ /profile/settings/password                         303 B           244 kB
├ ƒ /profile/settings/permissions                      300 B           226 kB
├ ƒ /profile/watchlist                                 970 B           283 kB
├ ƒ /requests                                          280 B           279 kB
├ ƒ /resetpassword                                     3.42 kB         242 kB
├ ƒ /resetpassword/[guid]                              4.09 kB         242 kB
├ ƒ /search                                            772 B           283 kB
├ ƒ /settings                                          341 B           293 kB
├ ƒ /settings/about                                    9.04 kB         217 kB
├ ƒ /settings/jellyfin                                 4.05 kB         247 kB
├ ƒ /settings/jobs                                     33.2 kB         241 kB
├ ƒ /settings/logs                                     8.5 kB          226 kB
├ ƒ /settings/main                                     346 B           293 kB
├ ƒ /settings/notifications/discord                    7.58 kB         251 kB
├ ƒ /settings/notifications/email                      7.07 kB         259 kB
├ ƒ /settings/notifications/gotify                     8.01 kB         251 kB
├ ƒ /settings/notifications/lunasea                    7.43 kB         251 kB
├ ƒ /settings/notifications/pushbullet                 8.04 kB         251 kB
├ ƒ /settings/notifications/pushover                   7.67 kB         251 kB
├ ƒ /settings/notifications/slack                      7.3 kB          251 kB
├ ƒ /settings/notifications/telegram                   8.4 kB          252 kB
├ ƒ /settings/notifications/webhook                    11.1 kB         254 kB
├ ƒ /settings/notifications/webpush                    8.71 kB         227 kB
├ ƒ /settings/plex                                     3.4 kB          258 kB
├ ƒ /settings/services                                 2.46 kB         280 kB
├ ƒ /settings/users                                    4.04 kB         225 kB
├ ƒ /setup                                             7.75 kB         319 kB
├ ƒ /tv/[tvId]                                         8.98 kB         371 kB
├ ƒ /tv/[tvId]/cast                                    2.54 kB         210 kB
├ ƒ /tv/[tvId]/crew                                    2.55 kB         210 kB
├ ƒ /tv/[tvId]/recommendations                         862 B           283 kB
├ ƒ /tv/[tvId]/similar                                 864 B           283 kB
├ ƒ /users                                             9.8 kB          250 kB
├ ƒ /users/[userId]                                    300 B           304 kB
├ ƒ /users/[userId]/requests                           455 B           279 kB
├ ƒ /users/[userId]/settings                           459 B           284 kB
├ ƒ /users/[userId]/settings/main                      463 B           284 kB
├ ƒ /users/[userId]/settings/notifications/discord     2.22 kB         251 kB
├ ƒ /users/[userId]/settings/notifications/email       1.83 kB         264 kB
├ ƒ /users/[userId]/settings/notifications/pushbullet  2.42 kB         251 kB
├ ƒ /users/[userId]/settings/notifications/pushover    2.18 kB         251 kB
├ ƒ /users/[userId]/settings/notifications/telegram    2.25 kB         251 kB
├ ƒ /users/[userId]/settings/notifications/webpush     1.71 kB         237 kB
├ ƒ /users/[userId]/settings/password                  450 B           244 kB
├ ƒ /users/[userId]/settings/permissions               441 B           226 kB
└ ƒ /users/[userId]/watchlist                          1.13 kB         283 kB
+ First Load JS shared by all                          226 kB
  ├ chunks/framework-41b0c4d7c45ae562.js               45.2 kB
  ├ chunks/main-c2ead87fc513a9fa.js                    32.2 kB
  ├ chunks/pages/_app-53878c1d4f8c92f1.js              106 kB
  ├ chunks/webpack-49c8900d67df5597.js                 24.3 kB
  └ css/2dc9869ec4347dc3.css                           18.3 kB

ƒ  (Dynamic)  server-rendered on demand


> [email protected] build:server /volume1/@apphome/jellyseerr/jellyseerr
> tsc --project server/tsconfig.json && copyfiles -u 2 server/templates/**/*.{html,pug} dist/templates && tsc-alias -p server/tsconfig.json
bash-4.4$ pnpm start

> [email protected] start /volume1/@apphome/jellyseerr/jellyseerr
> NODE_ENV=production node dist/index.js

2024-10-29T20:30:20.697Z [info]: Starting Overseerr version develop-local 
2024-10-29T20:30:32.860Z [debug][Settings Migrator]: Checking migration '0001_migrate_hostname.js'... 
2024-10-29T20:30:32.867Z [debug][Settings Migrator]: Checking migration '0002_migrate_apitokens.js'... 
2024-10-29T20:30:32.876Z [debug][Settings Migrator]: Checking migration '0003_emby_media_server_type.js'... 
2024-10-29T20:30:32.886Z [info][Notifications]: Registered notification agents 
2024-10-29T20:30:32.907Z [info][Server]: Skipping starting the scheduled jobs as we have no Plex/Jellyfin/Emby servers setup yet 
2024-10-29T20:30:32.921Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":1,"enabled":true,"isBuiltIn":true,"order":0}}
2024-10-29T20:30:33.261Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":2,"enabled":true,"isBuiltIn":true,"order":1}}
2024-10-29T20:30:33.823Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":3,"enabled":true,"isBuiltIn":true,"order":2}}
2024-10-29T20:30:34.083Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":4,"enabled":true,"isBuiltIn":true,"order":3}}
2024-10-29T20:30:34.639Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":5,"enabled":true,"isBuiltIn":true,"order":4}}
2024-10-29T20:30:35.106Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":6,"enabled":true,"isBuiltIn":true,"order":5}}
2024-10-29T20:30:35.616Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":7,"enabled":true,"isBuiltIn":true,"order":6}}
2024-10-29T20:30:35.957Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":8,"enabled":true,"isBuiltIn":true,"order":7}}
2024-10-29T20:30:36.489Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":9,"enabled":true,"isBuiltIn":true,"order":8}}
2024-10-29T20:30:36.705Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":10,"enabled":true,"isBuiltIn":true,"order":9}}
2024-10-29T20:30:37.279Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":11,"enabled":true,"isBuiltIn":true,"order":10}}
2024-10-29T20:30:37.567Z [info][Discover Slider]: Creating built-in discovery slider {"slider":{"type":12,"enabled":true,"isBuiltIn":true,"order":11}}
2024-10-29T20:30:38.804Z [info][Server]: Server ready on port 5055 

So all in all, it appears possible to install but it takes forever so a pre-compiled version would be preferable.

@mreid-tt
Copy link
Contributor Author

mreid-tt commented Oct 30, 2024

@th0ma7, the more I dive into this Node.js setup, the less confident I am that a single executable application is the best approach here. I’ll wrap up my research over the weekend, but I’m starting to think we should consider using npm more as a shared library manager, which is closer to its intended design. Including node_modules in a complex package like this can easily add up to several hundred megabytes, which ends up being larger than some .NET deployments!

Normally, running npm install -g will throw permission errors, but this guide shows how to configure it to run globally without sudo. This brings up questions about management. So far, I’ve had to set up multiple environment variables which are tied to the package's internal service account. That won't be sustainable across multiple packages.

With an updated SynoCommunity build for Node.js v20, there might be a way for the application to handle package management itself. While it may not be as modular as pip, it’s worth exploring. Another hurdle is that packages are only installed directly from the source code; I’m not sure if they can be triggered within a compiled package. Hopefully, there’s already a solution out there for this. Let me know if you’ve got any initial thoughts on it.

@th0ma7
Copy link
Contributor

th0ma7 commented Oct 30, 2024

I'm not used to npm nor node.js, perhaps @hgy59 has some more experience on this and can provide assistance.

From a python wheel source code compilation standpoint, traditionally with pip it builds fine as long as they are pure python. Otherwise you require a full build environment which isn't available on our nas by default.

However, we do now have a synocli-devel package which could in theory be used as it does provide an clang/llvm compiler, but that would only cover simpler cases.

If that can help I do have preliminary code in my local branch to ease wheel building, although not yet ready for testing. Hopefully this will greatly simplify the wheel building experience but not sure this is what you are looking for for jellyfin?

@mreid-tt
Copy link
Contributor Author

mreid-tt commented Oct 30, 2024

Thanks for the feedback, @th0ma7. Just to clarify, this is actually for Jellyseerr, not Jellyfin. While much of this code was borrowed from jellyfin-web — a Node.js-based app — the build process here differs significantly. From what I understand, jellyfin-web installs the front-end files, but it’s the Jellyfin .NET executable that actually runs the web server.

@mreid-tt
Copy link
Contributor Author

mreid-tt commented Oct 31, 2024

As an experiment I installed the whole thing again in an Ubuntu VM and then I tried packaging using nexe. The process seemed successful as follows:

mreid@ubuntu-vm:~/Documents/jellyseerr$ nexe dist/index.js --build --verbose > ../build.log 2>&1

Sample:

- Starting...
ℹ nexe 4.0.0-rc.6
- nexe 4.0.0-rc.6
✔ Downloading Node.js source from: https://nodejs.org/dist/v20.18.0/node-v20.18.0.tar.gz
- Already downloaded...
- Already downloaded...
✔ Compiling result
- Configuring node build: --dest-cpu=arm64
  Configuring node build: --dest-cpu=arm64
INFO: configure completed successfully
- Configuring node build: --dest-cpu=arm64
✔ Configuring node build: --dest-cpu=arm64
- Compiling Node...
  Compiling Node...
[---snip---]
- Compiling Node...
✔ Compiling Node...
- Node binary compiled
- Node binary compiled
✔ Writing result to file
- Entry: 'dist/index.js' written to: jellyseerr
✔ Entry: 'dist/index.js' written to: jellyseerr
- Finished in 5503.88s
✔ Finished in 5503.88s

Full log:
jellyseerr_build.log

It seems to build a nice executable file like this:

mreid@ubuntu-vm:~/Documents/jellyseerr$ ls -al jellyseerr 
-rwxrwxr-x 1 mreid mreid 132476271 Oct 31 08:28 jellyseerr

But when I try to run it I get this:

mreid@ubuntu-vm:~/Documents/jellyseerr$ ./jellyseerr 
node:internal/modules/cjs/loader:1250
  throw err;
  ^

Error: Cannot find module 'logform'
Require stack:
- /home/mreid/Documents/jellyseerr/node_modules/winston/lib/winston.js
- /home/mreid/Documents/jellyseerr/dist/logger.js
- /home/mreid/Documents/jellyseerr/dist/lib/settings/migrator.js
- /home/mreid/Documents/jellyseerr/dist/lib/settings/index.js
- /home/mreid/Documents/jellyseerr/dist/api/plexapi.js
- /home/mreid/Documents/jellyseerr/dist/index.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1247:15)
    at Module._load (node:internal/modules/cjs/loader:1073:27)
    at Module.require (node:internal/modules/cjs/loader:1333:19)
    at require (node:internal/modules/helpers:179:18)
    at Object.<anonymous> (/home/mreid/Documents/jellyseerr/node_modules/winston/lib/winston.js:10:17)
    at Module._compile (node:internal/modules/cjs/loader:1491:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1570:10)
    at Module.load (node:internal/modules/cjs/loader:1310:32)
    at Module._load (node:internal/modules/cjs/loader:1126:12)
    at Module.require (node:internal/modules/cjs/loader:1333:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/home/mreid/Documents/jellyseerr/node_modules/winston/lib/winston.js',
    '/home/mreid/Documents/jellyseerr/dist/logger.js',
    '/home/mreid/Documents/jellyseerr/dist/lib/settings/migrator.js',
    '/home/mreid/Documents/jellyseerr/dist/lib/settings/index.js',
    '/home/mreid/Documents/jellyseerr/dist/api/plexapi.js',
    '/home/mreid/Documents/jellyseerr/dist/index.js'
  ]
}

Node.js v20.18.0

So some more work on the single executable route is needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants