Message7389
> No distribution is packaging roundup. Debian gave up on it a number of
not al all ;) - in gentoo you have it:
$ equery l -p roundup
* Searching for roundup ...
[-P-] [ ] www-apps/roundup-2.0.0:0
> One of the big issues with packaging roundup is how customizable the
> tracker is. You can't just blindly upgrade. Version to version
> upgrades are usually not that bad, but I have one person who is
> jumping from 1.3 something to 2.1 who is having a hard time of it.
gentoo has webapp-config for this kind of things - i think it would take
some effort to have roundup supported there:
https://wiki.gentoo.org/wiki/Webapp-config
but the problem i think is more related to customized tracker settings...
>> when i install as superuser using "pip install roundup" or "setup.py
>> install" (which in my opinion nobody should do at all) - everything goes
>> into /usr/local
>
> Not necessarily depends on the distribution, /usr/lib/pythonxx/site-packages is also
> possible.
yeah, but then you have mixed your "user space" with your "distribution
space" - you can easily run into the problem that some other (system)
package updates you some dependency and your stuff doesnt work any more
... ;)
> In my (admittedly small sample) 80% of the installs are using
> setup.py in a VM spun up to support roundup. The initial complaint
> that the man pages, templates and locales were buried came from just
> such an install.
hm ... imho if you use tarball + setup.py you have everything at hand
and you shouldnt need a man page ... at least its only for roundup-admin
which is covered nicely on the web ... ;) - anyway.
> Also we have a docker install as well where the man command etc. should
> just work.
cool, but here you can have an install script which does the correct
things for your "distribution" which is running in the container.
> Distutils used to install manpages, etc. in the normal system
> places. Changing to setuptools changed that. Setuptools only supports
> creating executables wrappers in a place on the path. It has no
> support for man, locale or other files. That has to be done in the
> setup.py installer.
hmm, maybe they dropped it just because of the complexity this creates,
and the things we are discussing here ;)
i just took a look at django, as they also have lots of template files
and static files you can use in you project or not.
its all in a package there and stuff gets installed by using
"include_package_data" - maybe this could be a way to go, to not install
templates into /usr/share/roundup but have them as python packages and
when you initialise a tracker stuff gets copied to your tracker-home ?
>> but these aspects again should be covered with correctly
>> working setuptools et al (correctly patched by the gentoo devs so that
>> these files end up being installed in the correct place and are
>> accessible by "man") ...
>
> Setuptools provides no such mechanism and will not. I have lost the
> link to the multi year old ticket/forum multi where this issue was
> discussed and fixes were proposed but there was no consensus by
> developers on fixing this.
ok.
>> https://github.com/django/django
>
>>From the setup file, it looks like the man page is just buried on the
> system somewhere. I don't see any indication that django's setup.py is
> following the documented steps to override man page placement under
> the python install directory.
ok, i think it is done in the scripts/rpm-install.sh ;)
> Sadly Os X on mac's put things in really odd places.
>
> The install directory is:
>
> /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
>
> and the man directory is /usr/share/man/. So regardless of what
> solution happens here won't work in all cases.
YEAH - but i dont think you can support all these systems ... ;) - i
think there is also an Amiga port of python existing ;) and of course
winxxx...
maybe just try to install the man page into /usr/local, /usr depending
on uid of the installer and give a warning if it fails.
and package templates like django does ?
just installed django and roundup here in gentoo, below are some
locations of installed files:
django (locale files in the python packages)
>>> /usr/lib/python3.8/site-packages/django/conf/locale/de/
>>> /usr/lib/python3.8/site-packages/django/conf/locale/de/LC_MESSAGES/
>>>
/usr/lib/python3.8/site-packages/django/conf/locale/de/LC_MESSAGES/django.po
>>>
/usr/lib/python3.8/site-packages/django/conf/locale/de/LC_MESSAGES/django.mo
>>> /usr/lib/python3.8/site-packages/django/conf/locale/de/__init__.py
>>> /usr/lib/python3.8/site-packages/django/conf/locale/de/formats.py
>>> /usr/bin/django-admin (symlink)
>>> /usr/share/doc/django-3.2.8/
>>> /usr/share/doc/django-3.2.8/README.rst.bz2
>>> /usr/share/doc/django-3.2.8/AUTHORS.bz2
>>> /usr/share/bash-completion/completions/django-admin
roundup:
>>> /usr/lib/python3.9/site-packages/roundup/
>>> /usr/share/roundup/cgi-bin/roundup.cgi
>>> /usr/share/roundup/templates/
>>> /usr/share/man/man1/roundup-server.1.bz2
>>> /usr/share/man/man1/roundup-demo.1.bz2
>>> /usr/share/man/man1/roundup-admin.1.bz2
>>> /usr/share/man/man1/roundup-mailgw.1.bz2
>>> /usr/share/locale/es/LC_MESSAGES/roundup.mo
>>> /usr/share/doc/roundup-2.0.0/
>>> /usr/share/doc/roundup-2.0.0/FAQ.txt.bz2
>>> /usr/share/doc/roundup-2.0.0/CHANGES.txt.bz2
>>> /usr/bin/roundup-admin (symlink)
peeking into the ebuild files, both just run some
"distutils-r1_python_install_all" command and merge the result into the
rootfs - django doing some additional bashcompletion stuff.
so there are no man pages installed in the django case ... hm ... if
they dont do it, should we ?
looking at the gentoo package path i see the discrepancy:
dev-python/django is merely a dev stuff whereas
www-apps/roundup clearly is a web-application - which someone could
argue - should have a manpage ;)
so my proposal:
* locales should be handled like in django
* templates should be packages - or at least package data ?
-> so everything whats needed is in the python path
* man pages get only installed by the distribution-package
-> or try in setup.py like stated above and give a hint when
it fails
anyway ... think to have to work on the frontend again :(
cheers,
marcus. |
|
Date |
User |
Action |
Args |
2021-12-01 08:50:20 | marcus.priesch | set | recipients:
+ marcus.priesch, rouilj |
2021-12-01 08:50:20 | marcus.priesch | link | issue2551169 messages |
2021-12-01 08:50:19 | marcus.priesch | create | |
|