[Mailman-Developers] Re: How strict are the dependencies on the django-compressor related backends?
Hey again, Jonas Meurer: > I finally found some time to look into this. > > * Hyperkitty doesn't need (or use) less.js/lessc at all. It can safely > be removed from COMPRESS_PRECOMPILERS. I've now done this in the Debian mailman3-web package and hope to get this into Buster before release. > * The situation is different with sassc, it's actually used for > compressing CSS by hyperkitty. Doing the compression at build-time > should be possible but requires more work. I have a plan ;) For that, I now also have a working implementation as well. Due to the change being rather invasive, I will not push this into Buster though. And my plan slightly changed during implementing it, see below ;) >>>>>> I was wondering if we could by default not install >>>>>> node-less/ruby-sass and what exactly that would imply. >> >> @Jonas M.: what do you think about [2] (again maybe after Buster)? >> Sorry to not know more of this yet, but I hope suggesting what I think >> might work helps to get us the right way. > > I'm absolutely in favour of getting rid of the sassc runtime dependency. > After a chat with Jonas Smedegaard (thanks for his valuable input!), I > think that I have an idea and a roadmap on how to get there: > > 1. Process `static/hyperkittysass/hyperkitty.scss` with sassc at build- >time and patch `templates/hyperkitty/base.html` to reference the >resulting CSS file. That's what I did now, and it already was enough to drop the build-time dependency on sassc. Django-compressor is still used to combine several CSS and JS files into one by running 'django-admin compress' in the postinst script of mailman3-web, but since the source files are already clean CSS and JS, no external processors (like sassc or lessc) are required. I think this is perfectly fine and I don't see much benefit in combining the CSS and JS files at build-time. It would allow to drop the django-compressor dependency but with the cost of more heavy build-time adjustments that need to be maintained in future. So I'm happy to now have a solution to drop both node-less and sassc from runtime dependencies in the Debian package. Thanks to everyone for their input on this topic. I added a comment to upstream hyperkitty issue #120 where I proposed to do the same in the upstream hyperkitty release process and that way get rid of the sassc runtime dependency: https://gitlab.com/mailman/hyperkitty/issues/120#note_179256370 Cheers jonas signature.asc Description: OpenPGP digital signature ___ Mailman-Developers mailing list -- mailman-developers@python.org To unsubscribe send an email to mailman-developers-le...@python.org https://mail.python.org/mailman3/lists/mailman-developers.python.org/ Mailman FAQ: https://wiki.list.org/x/AgA3 Security Policy: https://wiki.list.org/x/QIA9
[Mailman-Developers] Re: How strict are the dependencies on the django-compressor related backends?
[I've put the related Debian bugreport in the loop] Hello, I finally found some time to look into this. Disclaimer: I don't know much about CSS compression and the mailman3 web interface is the first time that I got into contact with either of sassc and node-less. TL;DR: * Hyperkitty doesn't need (or use) less.js/lessc at all. It can safely be removed from COMPRESS_PRECOMPILERS. * The situation is different with sassc, it's actually used for compressing CSS by hyperkitty. Doing the compression at build-time should be possible but requires more work. I have a plan ;) Christian Ehrhardt: > I have checked a fully installed mailman3 stack in Debian/Ubuntu and > there are only two sources of .less files that we have to be concerned > of. > > First there is the package fonts-font-awesome which is pulled in on > the following path: > [...] > It seems different for the second case which is libjs-bootstrap from > the source package twitter-bootstrap3 I don't think that any of the .less files you're referencing to will be processed by 'django-admin compress' on the mailman3-web project. The .less files are all outside the scope of the mailman3-web project. So I'm pretty sure that the node-less/lessc dependency can safely be dropped immediately. Moreover, looking at the hyperkitty example_project/settings.py[1], it doesn't even reference the lessc compiler at all. Only settings.py from mailman-suite[2] references it, which probably is a copy-and-paste bug. There's even an open issue about that[3]. Since in Debian we took the mailman-suite settings.py as template, we suffer from this copy-and-paste bug as well. [1] https://gitlab.com/mailman/hyperkitty/blob/master/example_project/settings.py#L315-317 [2] https://gitlab.com/mailman/mailman-suite/blob/master/mailman-suite_project/settings.py#L359-362 [3] https://gitlab.com/mailman/mailman-suite/issues/7 > Does anyone know of other uses of .less in the mailman3 stack that I > have missed that we would have to think about? Regarding sassc: Hyperkitty is the only part of the mailman3 stack that uses django-compressor. And apparently there's just one single html template that will be processed by sassc (well, to be precise, all html files that use this template): /usr/lib/python3/dist-packages/hyperkitty/templates/hyperkitty/base.html In this file, four CSS files are being compressed and packed together by sassc: hyperkitty/libs/fonts/icomoon/icomoon.css hyperkitty/libs/fonts/droid/droid.css django-mailman3/css/main.css hyperkitty/sass/hyperkitty.scss The last one is special as it's a scss file itself and needs to be processed by sassc itself. > OTOH there also is an experimental approach to this, could someone > with a dev-stack of mailman3 just remove the node-less package and see > if on a normal setup something breaks at all? I've done this. Result: removing node-less doesn't change anything (which is in line with my assumption that node-less/less.js/lessc is not required/used at all). On the other hand, removing sassc breaks the setup, even with COMPRESS_OFFLINE being turned on: CommandError: An error occurred during rendering /usr/lib/python3/dist-packages/django_mailman3/templates/django_mailman3/profile/delete_profile.html: /bin/sh: 1: sassc: not found Christian Ehrhardt: > On Fri, Mar 15, 2019 at 10:19 AM Jonas Smedegaard wrote: >> >> Quoting Christian Ehrhardt (2019-03-15 06:39:08) >>> On Fri, Mar 15, 2019 at 12:08 AM Abhilash Raj >>> wrote: >>>> On Thu, Mar 14, 2019, at 1:42 PM, Jonas Meurer wrote: >>>> Christian Ehrhardt: >>>>> I was evaluating the Dependencies of mailman3 in Ubuntu and I was >>>>> wondering if I could cut them down a bit. One thing that got my >>>>> attention is the dependency from mailman3-web [1] to nodejs for >>>>> less [2] and ruby-sass [3]. >>>>> >>>>> I was wondering if we could by default not install >>>>> node-less/ruby-sass and what exactly that would imply. >> >> less is a reinvention of sass: It is often adaptable to sass with a >> simple patch. >> >> Original sass processor was ruby-sass, but nowadays a better processor >> is sassc. Or if you want to integrated processing with Python then >> python3-libsass which uses same core library for its processing. >> >> I have not looked closely on mailman3, but I highly doubt there is a >> real need for dynamic processing of less/sass during runtime. > > Yeah I doubt that as well. > In the meantime I also found [1] which seems to have come to the same > conclusion for the majority of default setups. > For upstream to disable it by default it was mentioned that there is a > need for a customize kit whic
[Mailman-Developers] Re: How strict are the dependencies on the django-compressor related backends?
Hi Christian, Christian Ehrhardt: > I was evaluating the Dependencies of mailman3 in Ubuntu and I was > wondering if I could cut them down a bit. One thing that got my > attention is the dependency from mailman3-web [1] to nodejs for less > [2] and ruby-sass [3]. > > I was wondering if we could by default not install node-less/ruby-sass > and what exactly that would imply. Thanks a lot for raising this issue. As part of the mailman3 maintainer team in Debian I would be very interested in answers to your questions as well. Would be awesome if we could get rid of the nodejs dependency for mailman3-web. I haven't looked into the details yet, but maybe the assets could be compiled at build-time and shipped within the binary package? Cheers jonas > I have seen they are used for python3-django-compressor integration, > but not a lot of actual LESS or SASS snippets in any related package. > So I was wondering if that could be optional. Unfortunately I lack the > expertise in that area, so I wanted to ask the mailman3 developer and > user community: > - could mailman3 work fine without those packages (making them a > suggest instead of a depends) > - what features would be lost exactly to a user and/or admin of mailman3? > - I guess we would have to modify the default config at [4]or [5] then > - any hints? > > I'd be very pleased if you could help me to check the doability and > the impact of that dependency change. > > Thanks in advance, > Christian > > P.S. Sorry - had to resend after full subscription (not only defining > user at mail.python.org) to avoid the auto-reject > > [1]: > https://salsa.debian.org/mailman-team/mailman-suite/blob/master/debian/control#L14 > [2]: > https://salsa.debian.org/mailman-team/mailman-suite/blob/master/debian/control#L18 > [3]: > https://salsa.debian.org/mailman-team/mailman-suite/blob/master/debian/control#L24 > [4]: > https://salsa.debian.org/mailman-team/mailman-suite/blob/master/mailman-suite_project/settings.py#L79 > [5]: > https://salsa.debian.org/mailman-team/mailman-suite/blob/master/mailman-suite_project/settings.py#L360 > signature.asc Description: OpenPGP digital signature ___ Mailman-Developers mailing list -- mailman-developers@python.org To unsubscribe send an email to mailman-developers-le...@python.org https://mail.python.org/mailman3/lists/mailman-developers.python.org/ Mailman FAQ: https://wiki.list.org/x/AgA3 Security Policy: https://wiki.list.org/x/QIA9
[Mailman-Developers] Re: [Mailman-Users] external archiver
On 09/04/2004 To Mailman-Users wrote: > sorry, i absolutely have no idea what I did wrong, and I CCed this > message to -developers since there seems to be no documented common > usage of the EXTERNAL_ARCHIVER options. > Maybe the message isn't passed to the shell command on stdin because > other delivery method is expected, but i don't believe that. is there any documented common way of using the *_EXTERNAL_ARCHIVER options? Apart from the fact that the value has to be a shell command, I was not able to get any information about their usage. Does mailman give the message on stdin to the shell command, or is this command intended to use the mbox mailman also archives to or how should the external archiver get the message? > Additional, what exactly does this ARCHIVE_TO_MBOX option do? > Defaults.py tells me: > # 1 - archive to mbox to use an external archiving mechanism only > [...] > does this mean that mailman archives to an mbox file? > if yes, where can i find this mbox file? seems like this option defines whether mailman archives only to pipermail or mbox, both or none of these. The mbox file is stored at $ARCHIVE_PATH/private/mylist.mbox/mylist.mbox, is this correct? bye jonas ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/archive%40jab.org
[Mailman-Developers] external archiver
hello, I try to configure mailman to use lurker as archiver, but the usage of External Archivers is not clear for me, and i didn't find any documentation about this topic except of a hint in mailmans faq wizard, which only describes the way of subscribing a archiving user to every list and set the right alias to the archiver for the mta. Since this requires procmail, which is quite steady at heavy load, i'dd like to use the PUBLIC_EXTERNAL_ARCHIVER and PRIVATE_EXTERNAL_ARCHIVER config options of mailman. After searching some pages and files, i got from Defaults.py, that these two options should be what I searched for. I understood them as options where you set a shell command where the message is passed to that should archive the message at the external archiver. If this is wrong, what's the intention of these two options? For my external archiver (lurker), i have the binary lurker-index, which needs the listname with option -l and expects the message at stdin. so i set the two options like following: PUBLIC_EXTERNAL_ARCHIVER = '/usr/bin/lurker-index -l `echo %(listname)s \ | tr "[:upper:]" "[:lower:]"` -m' PRIVATE_EXTERNAL_ARCHIVER = '/usr/bin/lurker-index -l `echo %(listname)s \ | tr "[:upper:]" "[:lower:]"` -m' this should do nothing else than running lurker-index with -l listname (changed to lowercase letters, since lurker only support lowercase listnames). so if the listname is either mylist or MyList, the command should be: /usr/bin/lurker-index -l `echo MyList | tr "[:upper:]" "[:lower:]"` -m which ends normally ends up in: /usr/bin/lurker-index -l mylist -m but regardless if I use the above listed option, or directly PUBLIC_EXTERNAL_ARCHIVER = '/usr/bin/lurker-index -l mylist -m' i get at /var/log/mailman/error: Apr 09 02:21:15 2004 (18207) external archiver non-zero exit status: 1 any suggestions what I might have forgotten? ah, i turned off multipart message filtering for not messing up lurker at initial tests: ARCHIVE_SCRUBBER = 0 sorry, i absolutely have no idea what I did wrong, and I CCed this message to -developers since there seems to be no documented common usage of the EXTERNAL_ARCHIVER options. Maybe the message isn't passed to the shell command on stding because other delivery method is expected, but i don't believe that. Additional, what exactly does this ARCHIVE_TO_MBOX option do? Defaults.py tells me: # 1 - archive to mbox to use an external archiving mechanism only does this mean that mailman archives to an mbox file and the external archiver is intended to use this file for archiving new messages? if yes, where can i find this mbox file? should the external archiver option then use the file for updating archive rather than getting the new message directly over standard input (stdin)? sorry if i'm confusing, please tell me in this case, but i have too much questions i'm not able to answer on my own, to get the whole big puzzle put together out of all the little pieces. bye jonas ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/archive%40jab.org
[Mailman-Developers] [bug in mm2.1] mailmanctl doesn't set groups.
hello, the mailmanctl script doesn't set groups. so when i run mailmanctl as root, i become list:list but still have the groups that root has. that's a grave security bug. a possible (and working) patch is attached. bye mejo ps: since the bug-reporting system at sourceforge doesn't work atm, i report the bug to the two mailman lists. -- Efficiency and progess is ours one more Now that we have the Neutron bomb It's nice and quick and clean and gets things done Kill kill kill kill kill the poor tonight 287a288 > groups = [gid] + [x[2] for x in grp.getgrall() if mm_cfg.MAILMAN_USER in x[3]] 289a291 > os.setgroups(groups) pgp0.pgp Description: PGP signature ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] Re: [Mailman-Users] [bug in mm2.1] mailmanctldoesn't set groups.
On 01/07/2003 Richard Barrett wrote: > Try again to put the fix into sourceforge bug collector for MM. sorry, still doesn't work. i get an Error: "The requested URL could not be retrieved" (and much more output). bye mejo -- Efficiency and progess is ours one more Now that we have the Neutron bomb It's nice and quick and clean and gets things done Kill kill kill kill kill the poor tonight pgp0.pgp Description: PGP signature ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] Re: [Mailman-Users] [bug in mm2.1] mailmanctldoesn't set groups.
On 01/07/2003 Richard Barrett wrote: > >the mailmanctl script doesn't set groups. > >so when i run mailmanctl as root, i become list:list but still have the > >groups that root has. that's a grave security bug. > > I think not. I believe you are mistaking the meaning of the output from the > id command you are running. The group affiliations of the process do not > mean that the uid in the output has privileges of those groups. Just try > getting the code in the ArchRunner.py to modify a file owned by root with > no write privileges for other when mailmanctl has ben started by root to > see what I mean. The process will only have the privileges associated with > the uid/euid and gid/egid. ok, i believe that, but it's still a bug. add user list (running mailman) to a group (i.e. testgroup), and try to modify a file owned by someone.testgroup with write privileges only for group (and user if you want). that's exactly why i found that bug. the user (list) that runs my external archiver (lurker) has to be in group lurker. bye mejo ps: i'm not subscribed to mailman-developers -- Efficiency and progess is ours one more Now that we have the Neutron bomb It's nice and quick and clean and gets things done Kill kill kill kill kill the poor tonight pgp0.pgp Description: PGP signature ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] Re: [Mailman-Users] strange behavior withEXTERNAL_PUBLIC_ARCHIVER
On 28/06/2003 To Mailman-Users wrote: > hello, > i realized some strange behavior of mailman with the > EXTERNAL_PUBLIC_ARCHIVER option. simply setting it to > '/usr/bin/id > /tmp/log 2>&1' gives in /tmp/log: > uid=38(list) gid=38(list) groups=0(root),102(lpadmin),109(shutdown) mh, the problem is at the debian package: mailmanctl start is run as root. if i start mailman as list, /tmp/log has the output i expected: uid=38(list) gid=38(list) groups=38(list),106(lurker) bye mejo -- Efficiency and progess is ours one more Now that we have the Neutron bomb It's nice and quick and clean and gets things done Kill kill kill kill kill the poor tonight pgp0.pgp Description: PGP signature ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] strange behavior with EXTERNAL_PUBLIC_ARCHIVER
hello, i realized some strange behavior of mailman with the EXTERNAL_PUBLIC_ARCHIVER option. simply setting it to '/usr/bin/id > /tmp/log 2>&1' gives in /tmp/log: uid=38(list) gid=38(list) groups=0(root),102(lpadmin),109(shutdown) at commandline: $ whoami list $ id uid=38(list) gid=38(list) groups=38(list),106(lurker) why does user list member different lists in the two cases? same uid, same gid, only the lists it members are different. bye mejo -- Efficiency and progess is ours one more Now that we have the Neutron bomb It's nice and quick and clean and gets things done Kill kill kill kill kill the poor tonight pgp0.pgp Description: PGP signature ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] bug at mailman-21 playground
Hello, I found a bug at the playground on mail.python.org/mailman-21/listinfo/playground. I tested the languages and when I changed from traditional Chinese to German the bugreport came. This problem comes allways you change from Chinese to German. Here's a copy of the bugreport I got: --- Traceback: Traceback (most recent call last): File "/usr/local/mailman-2.1/scripts/driver", line 82, in run_main main() File "/usr/local/mailman-2.1/Mailman/Cgi/subscribe.py", line 70, in main i18n.set_language(language) File "/usr/local/mailman-2.1/Mailman/i18n.py", line 33, in set_language language) File "/usr/local/lib/python2.1/gettext.py", line 236, in translation mofile = find(domain, localedir, languages) File "/usr/local/lib/python2.1/gettext.py", line 216, in find for nelang in _expand_lang(lang): File "/usr/local/lib/python2.1/gettext.py", line 60, in _expand_lang locale = normalize(locale) File "/usr/local/lib/python2.1/locale.py", line 216, in normalize fullname = localename.lower() AttributeError: lower --- I tested changing the languages in many other directions and ways, and these changes produce the same error: Traditional Chinese -> every language, also traditional Chinese itself. Simplified Chinese -> every language, also simplified Chinese itself. Another problem: If I change from any language to Simplified Chinese the Layout changes a bit. Also from any language to Traditional Chinese. Bye Jonas -- Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing. -- Dick Brandon ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
Re: [Mailman-Developers] wildcards in poster-without-approval
On Wed, Feb 27, 2002 at 11:02:18PM -0500, Barry A. Warsaw wrote: > >>>>> "JM" == Jonas Meurer <[EMAIL PROTECTED]> writes: > JM> Is it possible to set wildcards in the field 'Addresses of > JM> members accepted for postings to this list without implicit > JM> approval requirement' in Privacy Options? That every addr > JM> from domain xyz.com is allowed to post without approval > JM> requirement. If yes, how? *@xyz.com or xyz.com or .*@xyz.com > > Not in MM2.0.x. That specific field is gone in MM2.1, but in the > equivalent ones you will be able to specify Python regular > expressions. Mh, but I need it ;( Can I just fix the code of 2.0.8? A diff-file would be fine. Or just: What files would I have to modify? Could you post the code I have to delete and I have to add? Thanks Jonas -- Calculating in binary code is as easy as 01,10,11. ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] wildcards in poster-without-approval
Hello, Is it possible to set wildcards in the field 'Addresses of members accepted for postings to this list without implicit approval requirement' in Privacy Options? That every addr from domain xyz.com is allowed to post without approval requirement. If yes, how? *@xyz.com or xyz.com or .*@xyz.com Thanks Jonas -- We'll try to make different mistakes this time -- Larry Wall ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] following standards in signature-syntax
Hello, Wouldn't it be sencefull to follow the standards in signature-style and change the "___." line to "-- " like a signature has to be cuted as in standards declared? Bye Jonas -- Du willst einen Windows-PC als Gateway für ein NetBSD-System benutzen? Benutzt du auch Nägel, um einen Hammer in die Wand zu schlagen?--Phillipp Schulte in doc ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] changing question-or-comment-addr
Hello, I posted this in mailman-user but there I got no answer so maybe this is a problem for developers ;): How can I change the 'send question or comments to'-Addr on the main- listinfo and admin-page? The domain isn't right. I've set DEFAULT_HOST_NAME, but this mail-addr is still another hostname. Bye Jonas -- "Men are born ignorant, not stupid; they are made stupid by education." -- Bertrand Russell, History of Western Philosophy. ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] Administrate mailman from shell
Hello, Is there a way to configure mailman completely from the shell? It don't has to be compfortable, it only is for scripts etc... I've heard somewhere that it's possible. The cgi-bin-scripts also only can execute probrams, he? Is there a howto for administrate and configure mailman from the shell? If not, can anyone list me all commandlines? As compensation then I will write a howto. Thanks Jonas -- Definition of Atheism: a non-prophet organization. ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
Re: [Mailman-Developers] questions about gate_news
On Mon, Nov 26, 2001 at 12:16:14PM -0500, Scott Russell wrote: > I'm not sure if this is a true bug or not but I wanted to report that > gate_news in 2.0.7 works for me. (tm) In my case the innd server is located > on the same box as the smtp server so there is no delays in handling > connections between mailman and the inn server. I think the problem is that no newsserver really allows all connects allways. With this problem gate_news can't handle. > I'm not sure I see the point of using an external C program as part of the > Mailman package. If you're going to do that why not just disable the Mailman > gate_news functions and use one of the many available mail2news/news2mail > gateway scripts out there? Mh, but for the future it's easier and better when mailman has a real gate_news function, he? Like majordomo? So, I allways could try to write it in python, but normal I prefer c, because it's faster. ;) Bye Jonas -- Black holes were created when God divided by 0. ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers
[Mailman-Developers] questions about gate_news
Hey ho, I'm new at this list, and I've a few questions about gate_news. It isn't working very well, so some posts to the group aren't fetched and some mails aren't posted. Can the problem be that the newsserver is connected only per ISDN and so the connection is very slow? So that sometimes the newsserver gives a timeout? Is this a known bug in gate_news, or is it a problem of my configuration? Im using mailman 2.0.7 self-compiled on a debian system. I've heard that gate_news is only a hack, so that it's not really good. Is this true? Is it better in later versions? And: Have all mailman-programs to be written in python? If not, I could try to rewrite gate_news in c? With a config-file where changes are written to? Out of it all, isn't c faster than python? Bye and thanks Jonas -- It's not that I'm afraid to die. I just don't want to be there when it happens.-- Wood Allen ___ Mailman-Developers mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/mailman-developers