Thanks ~peter_horvath. I've merged this change. The challenge with
package.jsonis that they're a symptom of us needing to move to
npm installand possibly adding a JS build step as opposed to using the legacy Bower tool.
Now that the #12 is fixed thanks to ~peter_horvath, this is a bit less pressing, and also a bit clearer to me now.
After learning a little about autoconf today, it struck me that we're not actually using pyconfigure at all (ie. the macros in m4/python.m4). I've gone ahead and deleted them, and the installation still runs no problem. That's a really good start.
I'm also looking at moving to using
python -m pip install --editable .in the Makefile rather than
python setup.py develop. This will bring us closer still to a modern Python workflow.
I've now merged ~peter_horvath's fix for configure.ac in at commit d99aca01 on master. The
./configurestep now runs successfully for me on Ubuntu 22.04 with autoconf 2.71. Thanks so much to Peter for putting in the time to hunt this down, as autoconf is certainly not something I'm familiar with. Apologies also for the delay in merging.
On the channels I tried to contact them, the mailing list was the the most responsive until now. Afaik the problem is that only 1 dev is available and even he is busy. I have also seen a that Olivier Mehani has many unmerged branches in his forked repo ( https://git.sr.ht/~shtrom/mediagoblin ).
I think it would not be hard to create a debian packaging. Getting an injection into the official debian (ubuntu) repos might be much more hard.
I believe the configure script is useful to attract developers accustomed to the gnu, but not to the python world. And the current script is not a big one, effectively it is just a wrapper around the python setuptools. It could be a wrapper also around PyConfigure with minimal work.
Before I have found this ticket, also I have found (and fixed) the problem. I second, the patch looks correct. [I intentionally do not link my equivalent patch because I want a quick merge].
After a full compilation, there are intermediary files created, which are not in the .gitignore. Namely:
- package-lock.json and package.json (generated by npm)
- pyvenv.cfg (generated by virtualenv)
Beside them, install-sh is not in the gitignore, while it is automatically created by the autoconf.
This patch improves these in the .gitignore: https://gitlab.com/peter.horvath/mediagoblin/-/commits/gitignore-fix/ Please merge.
Hi, I tracked down the problem to the embedded IF clause in configure.ac . I suggest to apply my change from here: https://gitlab.com/peter.horvath/mediagoblin/-/commits/bugfix/12
The problem is that the embedded AS_IF macro seems not working with newer gnu autoconf. I did not track, exactly why, possibly it is intentional. Most importantly, we just don't need it, because AS_IF already supports the syntax what we want to.