axolotl
axolotl copied to clipboard
[BUG] 404 page not found on Debian unstable
Description
Basically the same as https://github.com/nanu-c/axolotl/issues/888
Steps to Reproduce
- Download
axolotl_1.6.0-1_arm64.debfrom the releases page - sudo apt install ./axolotl_1.6.0-1_arm64.deb
- run axolotl
Expected behavior: Something that is not a white screen with a 404 error
Actual behavior: A white screen with "404 page not found"
Versions
Please provide the Version as written in Settings->About Axolotl
I wish I had any buttons...
Device
What device or OS are you using?
Debian unstable laptop.
Link to Debug Log
Please provide a link to debug from ~/.cache/upstart/application-click-textsecure.nanuc_textsecure*.log Be careful it contains sensible data
I have so such file.
Hey josch,
logs for Mobian can be found like this:
journalctl --since "2022-03-01 10:00:00" | grep -E 'axolotl|textsecure' > axolotl_logs
with your actual timestamp of interest.
And another question: You said, your OS is Debian usntable on a laptop - is this an x86_64 machine? If so, Axolotl won't work with the deb file installation, because it's built for arm64 machines only.
Cheers
No, my laptop is arm64 and not x86_64 -- otherwise the apt install ./axolotl_1.6.0-1_arm64.deb step wouldn't have worked. :slightly_smiling_face:
$ dpkg --print-architecture
arm64
Since I filed this bug 9 days ago, I rebooted the machine and now the 404 is gone. The reason is the environment variables exported in /etc/profile.d/axolotl.sh:
# Set environment variables for Axolotl
export AXOLOTL_WEB_DIR=/usr/share/axolotl/axolotl-web/dist
export AXOLOTL_GUI_DIR=/usr/share/axolotl/
Right after installing axolotl_1.6.0-1_arm64.deb, those environment variables are not set yet for the currently running system. It needs a reboot or a re-login or a manual sourcing of /etc/profile.d/axolotl.sh for these variables to take effect.
So this is not a bug in axolotl itself but a bug in the packaging. I'll leave it up to you close this issue or act upon it, for example by making axolotl not need these environment variables.
Now that I no longer get a 404, my next issue is #943 but I already subscribed to that one. :slightly_smiling_face:
Thanks for the information. You're the first to report the missing sourcing. Normally, the Debian postinst script triggers /etc/profile.d/axolotl.sh to set the variables, but in your case, it didn't. That is a new one and I don't understand why. I'll do some research!
The answer is easy. The postinst runs this:
bash -c "source /etc/profile.d/axolotl.sh"
exit 0
So you spawn a bash process and that sources the axolotl.sh. From that point on, that bash process will have all the variables in axolotl.sh set. But then the bash process exits. The shell that spawned bash knows nothing about the variables of the bash process that just exited. Then the postinst shell script exits.
In short: the variables you set in a maintainer script have no influence over the variables set in a user shell.