I will make a reminder that any permission errors in the docker container about the user folder have no relation to my actual user folder as this is not mounted in the container.
[+] Running 1/0
✔ Container shlink_web_client_node Created 0.0s
Attaching to shlink_web_client_node
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/create-program/validateDefaultProjectForFilesGlob.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/lib/base-config.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/lib/base-config.js.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/BlockScope.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.d.ts'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/BlockScope.js.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/definition/CatchClauseDefinition.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/definition/CatchClauseDefinition.js.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/CatchScope.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/CatchScope.js.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassFieldInitializerScope.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/eslint/LegacyESLint.js'
shlink_web_client_node | npm warn cleanup Failed to remove some directories [
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/dist/lib'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/dist/lib'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@typescript-eslint/parser',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager/dist/lib'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager/dist/lib'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@typescript-eslint',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@typescript-eslint/type-utils',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/dist/lib'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/dist/lib'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@stylistic',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ],
shlink_web_client_node | npm warn cleanup [
shlink_web_client_node | npm warn cleanup '/home/shlink/www/node_modules/@stylistic/eslint-plugin',
shlink_web_client_node | npm warn cleanup [Error: ENOTEMPTY: directory not empty, rmdir '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint'] {
shlink_web_client_node | npm warn cleanup errno: -39,
shlink_web_client_node | npm warn cleanup code: 'ENOTEMPTY',
shlink_web_client_node | npm warn cleanup syscall: 'rmdir',
shlink_web_client_node | npm warn cleanup path: '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint'
shlink_web_client_node | npm warn cleanup }
shlink_web_client_node | npm warn cleanup ]
shlink_web_client_node | npm warn cleanup ]
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassFieldInitializerScope.js.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/definition/ClassNameDefinition.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/definition/ClassNameDefinition.js.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassScope.d.ts.map'
shlink_web_client_node | npm warn tar TAR_ENTRY_ERROR ENOENT: no such file or directory, open '/home/shlink/www/node_modules/@stylistic/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js'
shlink_web_client_node | npm error code EACCES
shlink_web_client_node | npm error syscall mkdir
shlink_web_client_node | npm error path /home/garrett/.npm
shlink_web_client_node | npm error errno EACCES
shlink_web_client_node | npm error
shlink_web_client_node | npm error Your cache folder contains root-owned files, due to a bug in
shlink_web_client_node | npm error previous versions of npm which has since been addressed.
shlink_web_client_node | npm error
shlink_web_client_node | npm error To permanently fix this problem, please run:
shlink_web_client_node | npm error sudo chown -R 1000:1000 "/home/garrett/.npm"
shlink_web_client_node | npm notice
shlink_web_client_node | npm notice New patch version of npm available! 10.8.1 -> 10.8.3
shlink_web_client_node | npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.8.3
shlink_web_client_node | npm notice To update run: npm install -g npm@10.8.3
shlink_web_client_node | npm notice
shlink_web_client_node | npm error Log files were not written due to an error writing to the directory: /home/garrett/.npm/_logs
shlink_web_client_node | npm error You can rerun the command with `--loglevel=verbose` to see the logs in your terminal
shlink_web_client_node exited with code 1
Expected behavior
docker compose up does not error
Minimum steps to reproduce
Following Contributing.md
cd /tmp
git clone --depth=1 https://github.com/shlinkio/shlink-web-client.git
cd shlink-web-client/
cp docker-compose.override.yml.dist docker-compose.override.yml
sed -i "s/alejandro/$USER/" docker-compose.override.yml
docker compose up
shlink-web-client version
latest git
How do you use shlink-web-client
Other (explain in summary)
Current behavior
Following https://github.com/shlinkio/shlink-web-client/blob/develop/CONTRIBUTING.md results in errors on
docker compose up
I will make a reminder that any permission errors in the docker container about the user folder have no relation to my actual user folder as this is not mounted in the container.
Expected behavior
docker compose up
does not errorMinimum steps to reproduce
Following Contributing.md