[Pkg-mailman-hackers] Bug#982935: Postorius & Hyperkitty -- broken Javascript (Bootstrap)? - disfunctional drop-down menus

Wolfgang Walkowiak walkowiak at hep.physik.uni-siegen.de
Fri Feb 26 12:06:12 GMT 2021


Packages: python3-django-postorius, python3-django-hyperkitty
Version: 1.3.4-1

Dear Debian maintainers for the packages postorius and hyperkitty,
dear Jonas, dear Matt,

we experienced similar issues with non-functional drop down menus
in mailman3-web after installing mailman3-full (version 3.3.3.1)
which includes the two packages mentioned above.

The hints in Jonas' response have been very useful.  Thank you!
However, this only fixed the issue for postorius, but not for hyperkitty. 
As soon as we klicked on the archive link, the drop-down menus didn't 
function any longer.

After we have replaced a couple more bootstrap related symlinks in
python3-django-hyperkitty with the js-files from the master branch
on gitlab and recollected and recompressed all static items, and
restarted mailman3-web it worked.  See our full recipe for obtaining
a mailman3-web interface with working drop-down menus below.

We would appreciate if the replacement of the bootstrap-related
javascript files in the postorius and hyperkitty packages by symlinks
to generic instances on the system could be reconsidered for the
next revision of these two Debian packages.

Thank you very much for maintaining these Debian packages,

w.w.


----------
Details on our recipe (work-around) to fix the drop-down menus:
(For other users hitting the same issue.)

Replace the the symbolic links in python3-django-postorius from
upstream master following suggestion on bug report 982935 above:

# cd /usr/share/python3-django-postorius/static/postorius/libs/bootstrap/js
# mv bootstrap.min.js bootstrap.min.js.org
# wget https://gitlab.com/mailman/postorius/-/raw/master/src/postorius/static/postorius/libs/bootstrap/js/bootstrap.min.js
# cd /usr/share/python3-django-postorius/static/postorius/libs/jquery
# mv jquery-1.11.3.min.js jquery-1.11.3.min.js.org
# wget https://gitlab.com/mailman/postorius/-/raw/master/src/postorius/static/postorius/libs/jquery/jquery-1.11.3.min.js
# cd /usr/share/python3-django-postorius/static/postorius/libs/html5shiv
# mv html5shiv.js html5shiv.js.org
# mv html5shiv.min.js html5shiv.min.js.org
# wget https://gitlab.com/mailman/postorius/-/raw/master/src/postorius/static/postorius/libs/html5shiv/html5shiv.js
# wget https://gitlab.com/mailman/postorius/-/raw/master/src/postorius/static/postorius/libs/html5shiv/html5shiv.min.js

Replace the bootstrap.js and bootstrap.min.js links from the upstream master:

# cd /usr/share/python3-django-hyperkitty/static/hyperkitty/libs/bootstrap/javascripts
# mv bootstrap.js bootstrap.js.org
# mv bootstrap.min.js bootstrap.min.js.org
# wget https://gitlab.com/mailman/hyperkitty/-/raw/master/hyperkitty/static/hyperkitty/libs/bootstrap/javascripts/bootstrap.min.js
# wget https://gitlab.com/mailman/hyperkitty/-/raw/master/hyperkitty/static/hyperkitty/libs/bootstrap/javascripts/bootstrap.js

Afterwards, using the wrapper script defined below, run:

# mailman-web collectstatic --no-input -v 1 --clear
# mailman-web compress -v 1
# systemctl restart mailman3-web

Wrapper script /usr/local/sbin/mailman-web :
#!/bin/sh
su -s /bin/sh -c "/usr/share/mailman3-web/manage.py $*" www-data

(Would be useful if a script like this were included in the mailman3-web
packages as the mailman3 documentation often refers to it instead of to
the lenghty /usr/share/mailman3-web/manage.py etc.)

==========================================================2021-02-26==13:02==

   Dr. Wolfgang Walkowiak     Phone: +49-271-740-3889
   Fakultaet IV / Physik      Fax  : +49-271-740-3886
   Emmy Noether Campus
   Universitaet Siegen    --> Wolfgang.Walkowiak at hep.physik.uni-siegen.de
   Walter-Flex-Str. 3
   57068 Siegen
   Germany

=============================================================================



More information about the Pkg-mailman-hackers mailing list