Fresh install of edge version on a Pi4B.
Lads, the Apps screen is borked up, I can only use Cockpit.
Problem Description
If I try to go to Apps, I get an error box from a Python stack trace something about “wireguard” not being a key expected in a reverse paths dictionary. I wish I could just delete that key, or check, or disable this specific App so that the interface could load and I could experience FB!
Things I’ve tried
- apt update
- apt upgrade wireguard
- apt-get install wireguard. Then remove, then install again.
- Manually editing the file at usr/lib/python3/dist-packages/django/core/handlers/base.py to try to make it ignore wireguard. I got a side question on this reguard. More later.
- following the instructions i found in the forum for someone trying to “turn off” as I understand it, one App from the screen, using the CLI since the WUI doesn’t do anything besides show the error and the Cockpit launcher. (That thread is here: /t/uninstall-app-from-terminal/3351/4 )
Next steps?
Lads, at this point i’m out of ideas. I got some experience with MVC frameworks like Rails but I don’t see where the alleged django App is hosted in the file system even though I’ve searched a lot… Maybe it’s that place in /usr/lib/python3/dist-packages/django… ??? The error box does show my changes to the base.py file but it doesn’t make it stop breaking so I’m very lost on this.
Re-installing from stable is not out of the question, lads, but it’s a bit disheartening having configured so beautifully my new RAID external drives after installing mdadm. At first I ignored this issue bec. I thought it would be some small issue that could be “skipped” … but alas, lads, it’s done me bad…
Summary of questions
Have you encountered a similar issue? I’ve thrawled the forums but haven’t found a way out.
Do you know how to avoid it? How to “reset” to factory the Apps screen (django app?). I’ve perused the manual too, but instructions on Debian wireguard don’t seem to be written for freedombox per se…
Is “plinth” the “app” (django) that runs on the apache2 instance? if so where are the .html js css py files? /var/www/html has a placeholder index.html only… apache2.conf and friends doesn’t have anything to illustrate the matter either…
Well, feel free to chime in with your knowledge, experience, consolation for any or all of these questions…
awesome project, best regards,
-m
The Error box, verbatim
Error loading page. Details
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/django/urls/base.py", line 71, in reverse
extra, resolver = resolver.namespace_dict[ns]
~~~~~~~~~~~~~~~~~~~~~~~^^^^
KeyError: 'wireguard'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 220, in _get_response
response = response.render()
File "/usr/lib/python3/dist-packages/django/template/response.py", line 114, in render
self.content = self.rendered_content
^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/response.py", line 92, in rendered_content
return template.render(context, self._request)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/backends/django.py", line 61, in render
return self.template.render(context)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 175, in render
return self._render(context)
~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 63, in render
result = block.nodelist.render(context)
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 63, in render
result = block.nodelist.render(context)
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/defaulttags.py", line 321, in render
return nodelist.render(context)
~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/defaulttags.py", line 238, in render
nodelist.append(node.render_annotated(context))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/defaulttags.py", line 321, in render
return nodelist.render(context)
~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/defaulttags.py", line 321, in render
return nodelist.render(context)
~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/loader_tags.py", line 208, in render
return template.render(context)
~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 177, in render
return self._render(context)
~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1070, in render
return render_value_in_context(output, context)
File "/usr/lib/python3/dist-packages/django/template/base.py", line 1047, in render_value_in_context
value = str(value)
File "/usr/lib/python3/dist-packages/django/utils/functional.py", line 155, in __text_cast
return func(*self.__args, **self.__kw)
File "/usr/lib/python3/dist-packages/django/urls/base.py", line 82, in reverse
raise NoReverseMatch("%s is not a registered namespace" % key)
django.urls.exceptions.NoReverseMatch: 'wireguard' is not a registered namespace