atek-cloud / atek

A personal cloud for the Web 3.0
59 stars 2 forks source link

Package issue: neither package.json "main" nor /index.js could be found. #25

Open rzelnik opened 2 years ago

rzelnik commented 2 years ago

When I run atek for the first time in my Raspberry Pi, it goes well and it shows this message:

You're good to go!

Open http://localhost/ (​http://localhost​) to log into Atek.

When I run it a second time (after creating the .atek config directory), it always ends with this error message:

atek
Running Atek 0.0.20
Loading core service {
  id: 'core.hyper-daemon',
  sourceUrl: 'https://github.com/atek-cloud/hyper-daemon',
  desiredVersion: '2.0.0'
} 
Application server listening at http://localhost:80 
git clone https://github.com/atek-cloud/hyper-daemon /home/pi/.atek/packages/core.hyper-daemon 
{ didChange: false, prevVersion: 'v2.0.0', installedVersion: 'v2.0.0' } 
[SYS core.hyper-daemon] Start() triggered 
[SYS core.hyper-daemon] Starting service process core.hyper-daemon                                                    
[SYS core.hyper-daemon]   WARNING: No sandbox is present. This application has full access to the host system.        
[SYS core.hyper-daemon]   Path: /home/pi/.atek/packages/core.hyper-daemon/dist/index.js                               
[SYS core.hyper-daemon]   Socket: /home/pi/.atek/sockets/core.hyper-daemon.sock                                       
[SYS core.hyper-daemon]   Call: /home/pi/.nvm/versions/node/v16.9.1/bin/node /home/pi/.atek/packages/core.hyper-daemon/dist/index.js
[SYS core.hyper-daemon]   Env: {"ATEK_ASSIGNED_SOCKET_FILE":"/home/pi/.atek/sockets/core.hyper-daemon.sock","ATEK_ASSIGNED_SERVICE_KEY":"1000","ATEK_HOST_PORT":"80","ATEK_HOST_BEARER_TOKEN":"70d960ea379aaaf041b0f48525ac0cf9330a1f4ec78e71b58cbc5f63dcbff8d8"}
[SYS core.hyper-daemon] ----------------------
[LOG core.hyper-daemon] Hyperspace daemon connected, status:                                                          
[LOG core.hyper-daemon] {"apiVersion":"1.15.1","holepunchable":false,"remoteAddress":"","version":"3.19.0"}           
[LOG core.hyper-daemon] Hypercore Protocol server running at: /home/pi/.atek/sockets/core.hyper-daemon.sock           
Loading core service {
  id: 'core.adb',
  sourceUrl: 'https://github.com/atek-cloud/adb',
  desiredVersion: '2.0.0'
}
git clone https://github.com/atek-cloud/adb /home/pi/.atek/packages/core.adb                                          
Git clone failed due to a conflict in the package directory. Reinstalling package...                                  
git clone https://github.com/atek-cloud/adb /home/pi/.atek/packages/core.adb                                          
{ didChange: false, prevVersion: 'v2.0.0', installedVersion: 'v2.0.0' }                                               
[SYS core.adb] Start() triggered

⠋ Loading core services ◼◼◼◼◼◻◻◻◻◻ Now loading: https://github.com/atek-cloud/adb                                     
file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/services/instance.js:226            
            throw new Error('Package issue: neither package.json "main" nor /index.js could be found.');              
                  ^

Error: Package issue: neither package.json "main" nor /index.js could be found.                                       
    at ServiceInstance.startNodeProcess (file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/services/instance.js:226:19)
    at async ServiceInstance.start (file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/services/instance.js:102:46)
    at async load (file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/services/index.js:156:13)
    at async loadCoreService (file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/services/index.js:188:18)
    at async Module.loadCoreServices (file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/services/index.js:31:9)
    at async Module.start (file:///home/pi/.nvm/versions/node/v16.9.1/lib/node_modules/@atek-cloud/atek/dist/index.js:54:5)
av8ta commented 2 years ago

I found the same thing. It appears to be doing a fresh clone of core.adb but not installing packages and building them. Since dist/index.js is missing it throws.

Quick hacky fix is to delete the package before starting:

rm -rf ~/.atek/packages/core.adb/