-
Notifications
You must be signed in to change notification settings - Fork 36
Description
I realize this repository is more or less dead, but in the interest of saving others the work:
The repository as provided has a number of issues when trying to get it to work under Debian 9.3:
- the ansible playbook assumes sudo is present and to be used
- (the playbook is using the sudo: keyword which has been superseded by become:)
- setup gets the Ubuntu version of Erlang
- setup gets an ancient version of Erlang, whose dependencies are too ancient to be satisfied by current repos
- even with a fitting version of erlang, it is not getting those dependencies
- after installation, it is trying to start the service without elevated privileges
- it is not providing a .service file, so starting the service with systemd fails either way
- the init script is broken in a number of ways
I fought through all of that, and all I got was
Feb 22 18:35:37 hostname systemd[1]: Starting LSB: Start Switchboard Erlang BEAM daemon...
Feb 22 18:35:37 hostname systemd[13951]: switchboard.service: Failed at step EXEC spawning /etc/init.d/switchboard: Exec format error
Feb 22 18:35:37 hostname systemd[1]: switchboard.service: Control process exited, code=exited status=203
Feb 22 18:35:37 hostname systemd[1]: Failed to start LSB: Start Switchboard Erlang BEAM daemon.
Feb 22 18:35:37 hostname systemd[1]: switchboard.service: Unit entered failed state.
Feb 22 18:35:37 hostname systemd[1]: switchboard.service: Failed with result 'exit-code'.
This is the diff of the changes I made to the playbook to get to that stage:
ansible.patch.txt
You would then use ansible-playbook -u $unprivileged_user --ask-pass --ask-become-pass -i provisioning/$your_hosts_file provisioning/playbook.yml
Dependencies I had to install were:
sshpassfor ansible's --ask-passlibwxbase3.0-0v5for erlanglibwxgtk3.0-0v5for erlanglibsctp1for erlang
Do note that the files get installed under /home/$unprivileged_user/switchboard/_rel/switchboard/.
If you manually call /home/$unprivileged_user/switchboard/_rel/switchboard/bin/switchboard start, the process list seems to indicate it started.
However, Port 8080 just gives you a blank page.
/home/$unprivileged_user/switchboard/_rel/switchboard/log/ is empty.
This is as far as I've come. If anybody actually gets it to work, please do tell how.
Edit: I may have kinda-sorta gotten it to work.
To manually start it, you have to pass the HOME= environment variable to the executable, like this:
HOME=/home/$unprivileged_user /home/$unprivileged_user/switchboard/_rel/switchboard/bin/switchboard start
http://hostname:8080/jsclient at least shows the expected boilerplate JS instructions now.
Edit 2: Nope, still doesn't work. The API seems to work and it does seem to talk with the IMAP account, but whenever I try to actually do anything, it crashes.
I know for a fact that IMAP is working, because I can operate fine on the command line - login, fetch mails, etc.