Web2py and pydal new packages
v2 cover Web2py and pydal new packages
This patch adds web2py python web application framework and pydal, it's database abstraction layer.
This is the first package to use the new recursive makedevs syntax, indeed it runs as www-data non privileged user.
Angelo Compagnucci (2):
package/python-pydal: new package
package/python-web2py: new package
package/Config.in | 2 ++ package/python-pydal/Config.in | 2 ++ package/python-pydal/python-pydal.mk | 13 ++++++++++ package/python-web2py/Config.in | 26 +++++++++++++++++++ package/python-web2py/S51web2py | 25 ++++++++++++++++++ package/python-web2py/python-web2py.mk | 46 ++++++++++++++++++++++++++++++++++ package/python-web2py/web2py.service | 11 ++++++++ 7 files changed, 125 insertions(+) create mode 100644 package/python-pydal/Config.in create mode 100644 package/python-pydal/python-pydal.mk create mode 100644 package/python-web2py/Config.in create mode 100644 package/python-web2py/S51web2py create mode 100644 package/python-web2py/python-web2py.mk create mode 100644 package/python-web2py/web2py.service
Signature · 1 line
1.9.1
PATCH v2 1/2 package/python-pydal: new package
This package adds the python-pydal dependency for web2py. This is a submodule and used by web2py only.
--- package/Config.in | 1 + package/python-pydal/Config.in | 2 ++ package/python-pydal/python-pydal.mk | 13 +++++++++++++ 3 files changed, 16 insertions(+) create mode 100644 package/python-pydal/Config.in create mode 100644 package/python-pydal/python-pydal.mk
package/Config.in +1 -0
@@ -592,6 +592,7 @@ menu "external python modules" source "package/python-psutil/Config.in" source "package/python-pyasn/Config.in" source "package/python-pycrypto/Config.in" + source "package/python-pydal/Config.in" source "package/python-pyftpdlib/Config.in" source "package/python-pygame/Config.in" source "package/python-pyinotify/Config.in"
package/python-pydal/Config.in new file +2 -0
@@ -0,0 +1,2 @@ +config BR2_PACKAGE_PYTHON_PYDAL + bool
package/python-pydal/python-pydal.mk new file +13 -0
@@ -0,0 +1,13 @@ +################################################################################ +# +# python-pydal +# +################################################################################ + +PYTHON_PYDAL_VERSION = v15.03 +PYTHON_PYDAL_SITE = https://github.com/web2py/pydal.git +PYTHON_PYDAL_SITE_METHOD = git +PYTHON_PYDAL_LICENSE = BSDv3 +PYTHON_PYDAL_LICENSE_FILES = LICENSE + +$(eval $(generic-package))
Signature · 1 line
1.9.1
PATCH v2 1/2 package/python-pydal: new package
Dear Angelo Compagnucci,
package/python-pydal/Config.in line 2
Quoted 8 lines · Angelo Compagnucci
package/python-pydal/Config.in new file +2
-0@@ -0,0 +1,2 @@ +config BR2_PACKAGE_PYTHON_PYDAL + bool
I understand that the source code for this package is copied into the web2py code, so that's why it's a prompt-less package. Is it the only way of doing things?
Quoted 6 lines
package/python-pydal/python-pydal.mk new file +0
-0
package/python-pydal/python-pydal.mk line 9
Quoted 9 lines
package/python-pydal/python-pydal.mk new file +9
-0@@ -0,0 +1,13 @@ +################################################################################ +# +# python-pydal +# +################################################################################ + +PYTHON_PYDAL_VERSION = v15.03 +PYTHON_PYDAL_SITE = https://github.com/web2py/pydal.git +PYTHON_PYDAL_SITE_METHOD = git
github function?
package/python-pydal/python-pydal.mk line 10
Quoted 1 line
package/python-pydal/python-pydal.mk new file +1
-0+PYTHON_PYDAL_LICENSE = BSDv3
BSDv3 does not exist. You're confusing GPLv3 and BSD-3c.
package/python-pydal/python-pydal.mk line 13
Quoted 3 lines
package/python-pydal/python-pydal.mk new file +3
-0+PYTHON_PYDAL_LICENSE_FILES = LICENSE + +$(eval $(generic-package))
A comment above this to explain why we have this generic-package that doesn't do anything.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 1/2 package/python-pydal: new package
Dear Thomas Petazzoni,
2015-04-13 16:17 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 4 lines
Dear Angelo Compagnucci,
On Mon, 13 Apr 2015 15:57:26 +0200, Angelo Compagnucci wrote:
Quoted 12 lines
package/python-pydal/Config.in line 2
Quoted 8 lines
package/python-pydal/Config.in new file +2
-0@@ -0,0 +1,2 @@ +config BR2_PACKAGE_PYTHON_PYDAL + boolI understand that the source code for this package is copied into the web2py code, so that's why it's a prompt-less package. Is it the only way of doing things?
No. Unfortunately buildroot doesn't support git submodules: the download helper makes a bare clone and zip the results without git informations, so it's not possible to do a submodule init in a POST_EXTRACT action.
The only way is to add a dummy package for the submodule and copy the downloaded content to appropriate folders. I was inspired by other packages (ex sunxi-mali-prop) that use the same exact method.
Quoted 9 lines
Quoted 9 lines
package/python-pydal/python-pydal.mk new file +3
-0@@ -0,0 +1,13 @@ +################################################################################ +# +# python-pydal
Quoted 8 lines
package/python-pydal/python-pydal.mk line 9
Quoted 6 lines
package/python-pydal/python-pydal.mk new file +6
-0+# +################################################################################ + +PYTHON_PYDAL_VERSION = v15.03 +PYTHON_PYDAL_SITE = https://github.com/web2py/pydal.git +PYTHON_PYDAL_SITE_METHOD = gitgithub function?
Using this method I can use alternatively both commit id or tag. Usually web2py uses a tagged pydal version as a submodule, sometimes not.
Quoted 3 lines
package/python-pydal/python-pydal.mk line 10
Quoted 1 line
package/python-pydal/python-pydal.mk new file +1
-0+PYTHON_PYDAL_LICENSE = BSDv3BSDv3 does not exist. You're confusing GPLv3 and BSD-3c.
Doh! Probably also the original author is wrong:
"License
pyDAL is released under the BSDv3 License. For further details, please check the LICENSE file."
I will submit a PR to Giovanni Barillari!
Quoted 6 lines
package/python-pydal/python-pydal.mk line 13
Quoted 3 lines
package/python-pydal/python-pydal.mk new file +3
-0+PYTHON_PYDAL_LICENSE_FILES = LICENSE + +$(eval $(generic-package))A comment above this to explain why we have this generic-package that doesn't do anything.
Ok!
Quoted 6 lines
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
Signature · 1 line
Profile: http://it.linkedin.com/in/compagnucciangelo
PATCH v2 1/2 package/python-pydal: new package
Dear Angelo Compagnucci,
Quoted 8 lines · Angelo Compagnucci
No. Unfortunately buildroot doesn't support git submodules: the download helper makes a bare clone and zip the results without git informations, so it's not possible to do a submodule init in a
POST_EXTRACTaction.The only way is to add a dummy package for the submodule and copy the downloaded content to appropriate folders. I was inspired by other packages (ex sunxi-mali-prop) that use the same exact method.
No, that's not the only way. Just package python-pydal as a normal Python module, that can be selected independently from python-web2py. Ignore completely that it is a submodule of python-web2py, because we don't care: python-web2py simply does "import pydal", so as long as python-pydal has been installed, everything will be alright.
Quoted 7 lines
Quoted 5 lines
Review
Quoted 3 lines
(quoted diff) +3
-0+PYTHON_PYDAL_VERSION = v15.03 +PYTHON_PYDAL_SITE = https://github.com/web2py/pydal.git +PYTHON_PYDAL_SITE_METHOD = gitgithub function?
Using this method I can use alternatively both commit id or tag.
I don't get it, with the github function you can define a commit id or a tag.
Quoted 11 lines
Quoted 3 lines
Quoted 1 line
+PYTHON_PYDAL_LICENSE = BSDv3
BSDv3 does not exist. You're confusing GPLv3 and BSD-3c.
Doh! Probably also the original author is wrong:
"License
pyDAL is released under the BSDv3 License. For further details, please check the LICENSE file."I will submit a PR to Giovanni Barillari!
Yes, the author is wrong, I looked at the license, and it's a BSD-3c.
Quoted 8 lines
Quoted 6 lines
Review
Quoted 3 lines
(quoted diff) +3
-0+PYTHON_PYDAL_LICENSE_FILES = LICENSE + +$(eval $(generic-package))A comment above this to explain why we have this generic-package that doesn't do anything.
Ok!
Well, in fact, change it to a Python package that does something:
Something along the lines of:
package/python-pydal/Config.in +1 -1
@@ -1,2 +1,2 @@ config BR2_PACKAGE_PYTHON_PYDAL - bool + bool "python-pydal"
package/python-pydal/python-pydal.mk +4 -4
@@ -5,9 +5,9 @@ ################################################################################ PYTHON_PYDAL_VERSION = v15.03 -PYTHON_PYDAL_SITE = https://github.com/web2py/pydal.git -PYTHON_PYDAL_SITE_METHOD = git -PYTHON_PYDAL_LICENSE = BSDv3 +PYTHON_PYDAL_SITE = $(call github,web2py,pydal,$(PYTHON_PYDAL_VERSION)) +PYTHON_PYDAL_LICENSE = BSD-3c PYTHON_PYDAL_LICENSE_FILES = LICENSE +PYTHON_PYDAL_SETUP_TYPE = setuptools -$(eval $(generic-package)) +$(eval $(python-package))
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 2/2 package/python-web2py: new package
In reply to Angelo CompagnucciThis patch adds web2py package. web2py is a free open source full-stack framework for rapid development of fast, scalable, secure and portable database-driven web-based applications. This patch is a big rework using the new introduced feature of recursive permission to run web2py application server as non root user.
---
Changelog:
v1 -> v2:
* Adding python2 dependency only (suggested by Yegor)
package/Config.in | 1 + package/python-web2py/Config.in | 26 +++++++++++++++++++ package/python-web2py/S51web2py | 25 ++++++++++++++++++ package/python-web2py/python-web2py.mk | 46 ++++++++++++++++++++++++++++++++++ package/python-web2py/web2py.service | 11 ++++++++ 5 files changed, 109 insertions(+) create mode 100644 package/python-web2py/Config.in create mode 100644 package/python-web2py/S51web2py create mode 100644 package/python-web2py/python-web2py.mk create mode 100644 package/python-web2py/web2py.service
package/Config.in +1 -0
@@ -618,6 +618,7 @@ menu "external python modules" source "package/python-twisted/Config.in" source "package/python-urwid/Config.in" source "package/python-versiontools/Config.in" + source "package/python-web2py/Config.in" source "package/python-webpy/Config.in" source "package/python-werkzeug/Config.in" source "package/python-ws4py/Config.in"
package/python-web2py/Config.in new file +26 -0
@@ -0,0 +1,26 @@ +config BR2_PACKAGE_PYTHON_WEB2PY + bool "python-web2py" + depends on BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_PYDAL + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_PYTHON_ZLIB + select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_PYTHON_PYEXPAT + select BR2_PACKAGE_SQLITE + select BR2_PACKAGE_PYTHON_SQLITE + help + web2py is a free open source full-stack framework for rapid + development of fast, scalable, secure and portable + database-driven web-based applications. + + http://web2py.com + +if BR2_PACKAGE_PYTHON_WEB2PY + +config BR2_PACKAGE_PYTHON_WEB2PY_PASSWORD + string "admin panel password" + default web2py + help + Set the admin panel password. + +endif
package/python-web2py/S51web2py new file +25 -0
@@ -0,0 +1,25 @@ +#!/bin/sh + +case "$1" in + start) + echo -n "Starting web2py: " + start-stop-daemon -S -q -m -p /run/web2py.pid \ + -c www-data \ + -b -x /usr/share/web2py/web2py.py \ + -- --nogui -a '"<recycle>"' -i 0.0.0.0 -p 8000 + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + stop) + echo -n "Stopping web2py: " + start-stop-daemon -K -q -p /run/web2py.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" + ;; + restart) + "$0" stop + sleep 1 + "$0" start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + ;; +esac
package/python-web2py/python-web2py.mk new file +46 -0
46 lines not on this page · raw message
package/python-web2py/web2py.service new file +11 -0
@@ -0,0 +1,11 @@ +[Unit] +Description=Web2py daemon +After=network.target + +[Service] +Type=simple +ExecStart=/usr/share/web2py/web2py.py --nogui -a '<recycle>' -i 0.0.0.0 -p 8000 +User=www-data + +[Install] +WantedBy=multi-user.target
Signature · 1 line
1.9.1
PATCH v2 2/2 package/python-web2py: new package
Dear Angelo Compagnucci,
package/python-web2py/Config.in line 5
Quoted 11 lines · Angelo Compagnucci
package/python-web2py/Config.in new file +5
-0@@ -0,0 +1,26 @@ +config BR2_PACKAGE_PYTHON_WEB2PY + bool "python-web2py" + depends on BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_PYDAL + select BR2_PACKAGE_ZLIB
Not needed.
package/python-web2py/Config.in line 7
Quoted 2 lines
package/python-web2py/Config.in new file +2
-0+ select BR2_PACKAGE_PYTHON_ZLIB + select BR2_PACKAGE_EXPAT
Ditto.
package/python-web2py/Config.in line 9
Quoted 2 lines
package/python-web2py/Config.in new file +2
-0+ select BR2_PACKAGE_PYTHON_PYEXPAT + select BR2_PACKAGE_SQLITE
Ditto.
Those are already selected by BR2_PACKAGE_PYTHON_{ZLIB,PYEXPAT,SQLITE} respectively.
Quoted 6 lines
package/python-web2py/python-web2py.mk new file +0
-0
package/python-web2py/python-web2py.mk line 9
Quoted 9 lines
package/python-web2py/python-web2py.mk new file +9
-0@@ -0,0 +1,46 @@ +################################################################################ +# +# python-web2py +# +################################################################################ + +PYTHON_WEB2PY_VERSION = R-2.10.3 +PYTHON_WEB2PY_SITE = https://github.com/web2py/web2py.git +PYTHON_WEB2PY_SITE_METHOD = git
github function?
package/python-web2py/python-web2py.mk line 12
Quoted 3 lines
package/python-web2py/python-web2py.mk new file +3
-0+PYTHON_WEB2PY_LICENSE = LGPLv3 +PYTHON_WEB2PY_LICENSE_FILES = LICENSE +PYTHON_WEB2PY_DEPENDENCIES = python sqlite
It really depends on sqlite itself? Or only the Python sqlite module?
Quoted 13 lines
package/python-web2py/python-web2py.mk new file +13
-0+define PYTHON_WEB2PY_PYDAL_COPY + cp -rf $(PYTHON_PYDAL_SRCDIR)/* $(@D)/gluon/packages/dal/ +endef + +PYTHON_WEB2PY_POST_EXTRACT_HOOKS += PYTHON_WEB2PY_PYDAL_COPY + +define PYTHON_WEB2PY_INSTALL_TARGET_CMDS + $(HOST_DIR)/usr/bin/python2 -c 'import os; \ + os.chdir("$(@D)"); \ + from gluon.main import save_password; \ + save_password($(BR2_PACKAGE_PYTHON_WEB2PY_PASSWORD),8000)' + mkdir -p $(TARGET_DIR)/usr/share/web2py + cp -dpfr $(@D)/* $(TARGET_DIR)/usr/share/web2py
package/python-web2py/python-web2py.mk line 36
Quoted 10 lines
package/python-web2py/python-web2py.mk new file +10
-0+endef + +define PYTHON_WEB2PY_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/python-web2py/S51web2py \ + $(TARGET_DIR)/etc/init.d/S51web2py +endef + +define PYTHON_WEB2PY_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/python-web2py/web2py.service \ + $(TARGET_DIR)/etc/systemd/system/web2py.service
I think we changed the installation of .service files to /usr/lib. See commit af17811662595ad1db0a992a3a7446c79d40d578 for example.
package/python-web2py/python-web2py.mk line 46
Quoted 10 lines
package/python-web2py/python-web2py.mk new file +10
-0+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../web2py.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/web2py.service +endef + +define PYTHON_WEB2PY_PERMISSIONS + /usr/share/web2py r 750 www-data www-data - - - - - +endef + +$(eval $(generic-package))
This package has a setup.py. Any reason why you're not using it, together with the python-package infrastructure?
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 2/2 package/python-web2py: new package
Dear Thomas Petazzoni,
2015-04-13 16:21 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 4 lines
Dear Angelo Compagnucci,
On Mon, 13 Apr 2015 15:57:27 +0200, Angelo Compagnucci wrote:
Quoted 13 lines
package/python-web2py/Config.in line 5
Quoted 11 lines
package/python-web2py/Config.in new file +5
-0@@ -0,0 +1,26 @@ +config BR2_PACKAGE_PYTHON_WEB2PY + bool "python-web2py" + depends on BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_PYDAL + select BR2_PACKAGE_ZLIBNot needed.
Ok!
Quoted 5 lines
package/python-web2py/Config.in line 7
Quoted 3 lines
package/python-web2py/Config.in new file +2
-0+ select BR2_PACKAGE_PYTHON_ZLIB + select BR2_PACKAGE_EXPATDitto.
Ok!
Quoted 5 lines
package/python-web2py/Config.in line 9
Quoted 3 lines
package/python-web2py/Config.in new file +2
-0+ select BR2_PACKAGE_PYTHON_PYEXPAT + select BR2_PACKAGE_SQLITEDitto.
Ok!
Quoted 13 lines
Those are already selected by BR2_PACKAGE_PYTHON_{ZLIB,PYEXPAT,SQLITE} respectively.
Quoted 9 lines
package/python-web2py/python-web2py.mk new file +3
-0@@ -0,0 +1,46 @@ +################################################################################ +# +# python-web2py
Quoted 8 lines
package/python-web2py/python-web2py.mk line 9
Quoted 6 lines
package/python-web2py/python-web2py.mk new file +6
-0+# +################################################################################ + +PYTHON_WEB2PY_VERSION = R-2.10.3 +PYTHON_WEB2PY_SITE = https://github.com/web2py/web2py.git +PYTHON_WEB2PY_SITE_METHOD = gitgithub function?
Ok, I will use it.
Quoted 5 lines
package/python-web2py/python-web2py.mk line 12
Quoted 3 lines
package/python-web2py/python-web2py.mk new file +3
-0+PYTHON_WEB2PY_LICENSE = LGPLv3 +PYTHON_WEB2PY_LICENSE_FILES = LICENSE +PYTHON_WEB2PY_DEPENDENCIES = python sqliteIt really depends on sqlite itself? Or only the Python sqlite module?
It depends on python sqlite, I will look into setting the proper dependencies. Probably only python would suffice, cause python-sqlite is always compiled with python cause it's selected.
Quoted 18 lines
Quoted 18 lines
package/python-web2py/python-web2py.mk new file +18
-0+define PYTHON_WEB2PY_PYDAL_COPY + cp -rf $(PYTHON_PYDAL_SRCDIR)/* $(@D)/gluon/packages/dal/ +endef + +PYTHON_WEB2PY_POST_EXTRACT_HOOKS += PYTHON_WEB2PY_PYDAL_COPY + +define PYTHON_WEB2PY_INSTALL_TARGET_CMDS + $(HOST_DIR)/usr/bin/python2 -c 'import os; \ + os.chdir("$(@D)"); \ + from gluon.main import save_password; \ + save_password($(BR2_PACKAGE_PYTHON_WEB2PY_PASSWORD),8000)' + mkdir -p $(TARGET_DIR)/usr/share/web2py + cp -dpfr $(@D)/* $(TARGET_DIR)/usr/share/web2py +endef + +define PYTHON_WEB2PY_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/python-web2py/S51web2py \ + $(TARGET_DIR)/etc/init.d/S51web2py
Quoted 8 lines
package/python-web2py/python-web2py.mk line 36
Quoted 5 lines
package/python-web2py/python-web2py.mk new file +5
-0+endef + +define PYTHON_WEB2PY_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/python-web2py/web2py.service \ + $(TARGET_DIR)/etc/systemd/system/web2py.serviceI think we changed the installation of .service files to
/usr/lib. See commitaf17811662595ad1db0a992a3a7446c79d40d578for example.
Ouch! I will fix it!
Quoted 5 lines
Quoted 5 lines
package/python-web2py/python-web2py.mk new file +5
-0+ mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../web2py.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/web2py.service +endef +
Quoted 8 lines
package/python-web2py/python-web2py.mk line 46
Quoted 5 lines
package/python-web2py/python-web2py.mk new file +5
-0+define PYTHON_WEB2PY_PERMISSIONS + /usr/share/web2py r 750 www-data www-data - - - - - +endef + +$(eval $(generic-package))This package has a
setup.py. Any reason why you're not using it, together with the python-package infrastructure?
I can try! Honestly, I've not explored the option cause web2py is self contained and it doesn't require installation. It uses a writable directory for served applications, so suing a custom directory un /usr/share with writing permission setted to www-data seemed the most sensible choice.
Thank you!
Quoted 8 lines
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
Signature · 1 line
Profile: http://it.linkedin.com/in/compagnucciangelo
PATCH v2 2/2 package/python-web2py: new package
Dear Angelo Compagnucci,
Quoted 2 lines · Angelo Compagnucci
dependencies. Probably only python would suffice, cause python-sqlite is always compiled with python cause it's selected.
There is no such thing as python-sqlite. There is only python, which may or may not have the sqlite functionality. In such cases, what you have to do is:
1/ At the Config.in level, make sure you select the relevant options,
i.e BR2_PACKAGE_PYTHON_SQLITE (or BR2_PACKAGE_PYTHON3_SQLITE if you want to support Python 3)
2/ At the .mk level, depend on the appropriate package, in this case
'python' (or 'python3')
Quoted 8 lines
Quoted 2 lines
This package has a
setup.py. Any reason why you're not using it, together with the python-package infrastructure?I can try! Honestly, I've not explored the option cause web2py is self contained and it doesn't require installation. It uses a writable directory for served applications, so suing a custom directory un
/usr/sharewith writing permission setted to www-data seemed the most sensible choice.
Installing with python-package seems to work, but it does not install the web2py.py program itself, so it should be done separately. Also, it is a bit weird that the whole thing has to be part of a www-data writable directory, no?
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 2/2 package/python-web2py: new package
Dear Thomas Petazzoni,
2015-04-13 23:10 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 11 lines
Dear Angelo Compagnucci,
Quoted 2 lines · Angelo Compagnucci
dependencies. Probably only python would suffice, cause python-sqlite is always compiled with python cause it's selected.
There is no such thing as python-sqlite. There is only python, which may or may not have the sqlite functionality. In such cases, what you have to do is:
Quoted 6 lines
1/ At the Config.in level, make sure you select the relevant options,
i.eBR2_PACKAGE_PYTHON_SQLITE(orBR2_PACKAGE_PYTHON3_SQLITEif you want to support Python 3)2/ At the .mk level, depend on the appropriate package, in this case
'python' (or 'python3')
Ok!
Quoted 11 lines
Quoted 8 lines
Quoted 2 lines
This package has a
setup.py. Any reason why you're not using it, together with the python-package infrastructure?I can try! Honestly, I've not explored the option cause web2py is self contained and it doesn't require installation. It uses a writable directory for served applications, so suing a custom directory un
/usr/sharewith writing permission setted to www-data seemed the most sensible choice.Installing with python-package seems to work, but it does not install the
web2py.pyprogram itself, so it should be done separately.
Yes, I tried and it's practically useless.
Quoted 3 lines
Also, it
is a bit weird that the whole thing has to be part of a www-data writable directory, no?
Honestly, more or less all the application framework I saw in the past runs in a www-data owned directory, I can think of joomla, redmine an many others I poked with.
Probably do you want a more finer grain in the permission table, like giving writable permissions only to the directories that really need it, I can try!
Thank you!
Quoted 6 lines
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
Signature · 1 line
Profile: http://it.linkedin.com/in/compagnucciangelo
PATCH v2 2/2 package/python-web2py: new package
Dear Angelo Compagnucci,
Quoted 10 lines · Angelo Compagnucci
Quoted 8 lines
Quoted 5 lines
I can try! Honestly, I've not explored the option cause web2py is self contained and it doesn't require installation. It uses a writable directory for served applications, so suing a custom directory un
/usr/sharewith writing permission setted to www-data seemed the most sensible choice.Installing with python-package seems to work, but it does not install the
web2py.pyprogram itself, so it should be done separately.Yes, I tried and it's practically useless.
Well, the setup.py can be fixed to also install web2py.py, or the web2py.py can be installed by Buildroot separately, using a post install hook.
Quoted 6 lines
Honestly, more or less all the application framework I saw in the past runs in a www-data owned directory, I can think of joomla, redmine an many others I poked with.
Probably do you want a more finer grain in the permission table, like giving writable permissions only to the directories that really need it, I can try!
Well, if the Python modules of web2py get installed by the setup.py script, they are installed in /usr/lib/python<version>/site-packages/. And clearly, we do not want to directory to be owned by www-data.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v2 2/2 package/python-web2py: new package
Dear Thomas Petazzoni,
2015-04-14 10:56 GMT+02:00 Thomas Petazzoni
<[email protected]>:
Quoted 10 lines
Dear Angelo Compagnucci,
Quoted 6 lines · Angelo Compagnucci
Quoted 6 lines
Quoted 5 lines
I can try! Honestly, I've not explored the option cause web2py is self contained and it doesn't require installation. It uses a writable directory for served applications, so suing a custom directory un
/usr/sharewith writing permission setted to www-data seemed the most sensible choice.
Quoted 8 lines
Quoted 4 lines
Quoted 2 lines
Installing with python-package seems to work, but it does not install the
web2py.pyprogram itself, so it should be done separately.Yes, I tried and it's practically useless.
Well, the
setup.pycan be fixed to also installweb2py.py, or theweb2py.pycan be installed by Buildroot separately, using a post install hook.
honestly, i don't think it's really necessary to use python distutils infrastructure to install web2py, it's not even considered in the official documentation. Probably because the installation is ususally don copying web2py in a folder reacheable by apache and configuring it for use with wsgi, or via the internal webserver.
The official setup-web2py-ubuntu.sh distributed with the application makes a /home/www-data directory and adds a apache/wsgi virtualhost.
Quoted 10 lines
Quoted 6 lines
Honestly, more or less all the application framework I saw in the past runs in a www-data owned directory, I can think of joomla, redmine an many others I poked with.
Probably do you want a more finer grain in the permission table, like giving writable permissions only to the directories that really need it, I can try!Well, if the Python modules of web2py get installed by the
setup.pyscript, they are installed in /usr/lib/python<version>/site-packages/. And clearly, we do not want to directory to be owned by www-data.
Yes, true, cause web2py is usually installed as an apache served application in an apache www-data owned directory.
For the of simplicity, I choose to adopt the same method, but without using an apache virtualhost way too overkill, but use the internal webserver.
I'm preparing a new patch in which web2py will be installed in the more suited /var/www/ directory.
Sincerely, Angelo
Quoted 8 lines
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
Signature · 1 line
Profile: http://it.linkedin.com/in/compagnucciangelo