* [Buildroot] [PATCH v3 0/2] Web2py and pydal new packages @ 2015-04-14 15:05 Angelo Compagnucci 2015-04-14 15:05 ` [Buildroot] [PATCH v3 1/2] package/python-pydal: new package Angelo Compagnucci 2015-04-14 15:05 ` [Buildroot] [PATCH v3 2/2] package/python-web2py: " Angelo Compagnucci 0 siblings, 2 replies; 6+ messages in thread From: Angelo Compagnucci @ 2015-04-14 15:05 UTC (permalink / raw) To: buildroot 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 | 15 +++++++++++++ package/python-pydal/python-pydal.mk | 14 ++++++++++++ package/python-web2py/Config.in | 23 ++++++++++++++++++++ package/python-web2py/S51web2py | 25 ++++++++++++++++++++++ package/python-web2py/python-web2py.mk | 39 ++++++++++++++++++++++++++++++++++ package/python-web2py/web2py.service | 11 ++++++++++ 7 files changed, 129 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 -- 1.9.1 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v3 1/2] package/python-pydal: new package 2015-04-14 15:05 [Buildroot] [PATCH v3 0/2] Web2py and pydal new packages Angelo Compagnucci @ 2015-04-14 15:05 ` Angelo Compagnucci 2015-07-23 20:24 ` Thomas Petazzoni 2015-04-14 15:05 ` [Buildroot] [PATCH v3 2/2] package/python-web2py: " Angelo Compagnucci 1 sibling, 1 reply; 6+ messages in thread From: Angelo Compagnucci @ 2015-04-14 15:05 UTC (permalink / raw) To: buildroot This package adds the python-pydal python package. pyDAL is a pure Python Database Abstraction Layer. Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> --- Changelog: v2 -> v3: * Moved pydal to a pure python-package. * Added the host variant to make it usable in host side scripts. * Moved to github download helper. * License update. * Added a package help. package/Config.in | 1 + package/python-pydal/Config.in | 15 +++++++++++++++ package/python-pydal/python-pydal.mk | 14 ++++++++++++++ 3 files changed, 30 insertions(+) create mode 100644 package/python-pydal/Config.in create mode 100644 package/python-pydal/python-pydal.mk diff --git a/package/Config.in b/package/Config.in index c27fc20..839b80a 100644 --- a/package/Config.in +++ b/package/Config.in @@ -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" diff --git a/package/python-pydal/Config.in b/package/python-pydal/Config.in new file mode 100644 index 0000000..590bcd4 --- /dev/null +++ b/package/python-pydal/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_PYTHON_PYDAL + bool python-pydal + help + pyDAL is a pure Python Database Abstraction Layer. + It dynamically generates the SQL in real time using + the specified dialect for the database back end, + so that you do not have to write SQL code or learn + different SQL dialects (the term SQL is used generically), + and your code will be portable + among different types of databases. + + pyDAL comes from the original web2py's DAL, + with the aim of being wide-compatible. + pyDAL doesn't require web2py and can be used + in any Python context. diff --git a/package/python-pydal/python-pydal.mk b/package/python-pydal/python-pydal.mk new file mode 100644 index 0000000..1ad4588 --- /dev/null +++ b/package/python-pydal/python-pydal.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pydal +# +################################################################################ + +PYTHON_PYDAL_VERSION = v15.03 +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 $(host-python-package)) +$(eval $(python-package)) -- 1.9.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v3 1/2] package/python-pydal: new package 2015-04-14 15:05 ` [Buildroot] [PATCH v3 1/2] package/python-pydal: new package Angelo Compagnucci @ 2015-07-23 20:24 ` Thomas Petazzoni 0 siblings, 0 replies; 6+ messages in thread From: Thomas Petazzoni @ 2015-07-23 20:24 UTC (permalink / raw) To: buildroot Dear Angelo Compagnucci, On Tue, 14 Apr 2015 17:05:03 +0200, Angelo Compagnucci wrote: > This package adds the python-pydal python package. > pyDAL is a pure Python Database Abstraction Layer. > > Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> > --- > Changelog: Applied with some minor changes: [Thomas: - rewrap Config.in help text - add upstream URL in Config.in help text.] Thanks! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v3 2/2] package/python-web2py: new package 2015-04-14 15:05 [Buildroot] [PATCH v3 0/2] Web2py and pydal new packages Angelo Compagnucci 2015-04-14 15:05 ` [Buildroot] [PATCH v3 1/2] package/python-pydal: new package Angelo Compagnucci @ 2015-04-14 15:05 ` Angelo Compagnucci 2015-07-23 20:26 ` Thomas Petazzoni 1 sibling, 1 reply; 6+ messages in thread From: Angelo Compagnucci @ 2015-04-14 15:05 UTC (permalink / raw) To: buildroot This 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. Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> --- Changelog: v2 -> v3: * Fixed systemd service file installation path. * Fixed dependencies in Config.mk * Moved to the systemwide installed pydal. * Moved installation path to /var/www/. v1 -> v2: * Adding python2 dependency only (suggested by Yegor) package/Config.in | 1 + package/python-web2py/Config.in | 23 ++++++++++++++++++++ package/python-web2py/S51web2py | 25 ++++++++++++++++++++++ package/python-web2py/python-web2py.mk | 39 ++++++++++++++++++++++++++++++++++ package/python-web2py/web2py.service | 11 ++++++++++ 5 files changed, 99 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 diff --git a/package/Config.in b/package/Config.in index 839b80a..fd4296c 100644 --- a/package/Config.in +++ b/package/Config.in @@ -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" diff --git a/package/python-web2py/Config.in b/package/python-web2py/Config.in new file mode 100644 index 0000000..b10d3a4 --- /dev/null +++ b/package/python-web2py/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_PYTHON_WEB2PY + bool "python-web2py" + depends on BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_PYDAL + select BR2_PACKAGE_PYTHON_ZLIB + select BR2_PACKAGE_PYTHON_PYEXPAT + 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 diff --git a/package/python-web2py/S51web2py b/package/python-web2py/S51web2py new file mode 100644 index 0000000..1da9ef4 --- /dev/null +++ b/package/python-web2py/S51web2py @@ -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 /var/www/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 diff --git a/package/python-web2py/python-web2py.mk b/package/python-web2py/python-web2py.mk new file mode 100644 index 0000000..01e332e --- /dev/null +++ b/package/python-web2py/python-web2py.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# python-web2py +# +################################################################################ + +PYTHON_WEB2PY_VERSION = R-2.10.3 +PYTHON_WEB2PY_SITE = $(call github,web2py,web2py,$(PYTHON_WEB2PY_VERSION)) +PYTHON_WEB2PY_LICENSE = LGPLv3 +PYTHON_WEB2PY_LICENSE_FILES = LICENSE +PYTHON_WEB2PY_DEPENDENCIES = python python-pydal host-python-pydal + +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)/var/www/web2py + cp -dpfr $(@D)/* $(TARGET_DIR)/var/www/web2py +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)/usr/lib/systemd/system/web2py.service + 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 + /var/www/web2py r 750 www-data www-data - - - - - +endef + +$(eval $(generic-package)) diff --git a/package/python-web2py/web2py.service b/package/python-web2py/web2py.service new file mode 100644 index 0000000..0274bd8 --- /dev/null +++ b/package/python-web2py/web2py.service @@ -0,0 +1,11 @@ +[Unit] +Description=Web2py daemon +After=network.target + +[Service] +Type=simple +ExecStart=/var/www/web2py/web2py.py --nogui -a '<recycle>' -i 0.0.0.0 -p 8000 +User=www-data + +[Install] +WantedBy=multi-user.target -- 1.9.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v3 2/2] package/python-web2py: new package 2015-04-14 15:05 ` [Buildroot] [PATCH v3 2/2] package/python-web2py: " Angelo Compagnucci @ 2015-07-23 20:26 ` Thomas Petazzoni 2015-07-24 6:52 ` Angelo Compagnucci 0 siblings, 1 reply; 6+ messages in thread From: Thomas Petazzoni @ 2015-07-23 20:26 UTC (permalink / raw) To: buildroot Dear Angelo Compagnucci, On Tue, 14 Apr 2015 17:05:04 +0200, Angelo Compagnucci wrote: > This 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. > > Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> > --- > Changelog: > > v2 -> v3: > * Fixed systemd service file installation path. > * Fixed dependencies in Config.mk > * Moved to the systemwide installed pydal. > * Moved installation path to /var/www/. > > v1 -> v2: > * Adding python2 dependency only (suggested by Yegor) Applied with some minor change: [Thomas: fixup symbolic link to the systemd service file.] However, there are two things that I believe should be improved/investigated: * The installation of web2py on the target is huge: 20 MB. When I look at it, it seems like there's a huge amount of example applications and so on, which don't really make sense to install by default. Can you look at trimming down the installation size to something closer to what people would really need? * I setup an admin password, but I don't know what to do with. When I connect to http://<myip>:8000, I can see web2py running. If I click on "admin" in the box on the right hand side, it brings me to a blank page that says "Admin is disabled because insecure channel". Thanks! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v3 2/2] package/python-web2py: new package 2015-07-23 20:26 ` Thomas Petazzoni @ 2015-07-24 6:52 ` Angelo Compagnucci 0 siblings, 0 replies; 6+ messages in thread From: Angelo Compagnucci @ 2015-07-24 6:52 UTC (permalink / raw) To: buildroot Dear Thomas Petazzoni, 2015-07-23 22:26 GMT+02:00 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>: > Dear Angelo Compagnucci, > > On Tue, 14 Apr 2015 17:05:04 +0200, Angelo Compagnucci wrote: >> This 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. >> >> Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com> >> --- >> Changelog: >> >> v2 -> v3: >> * Fixed systemd service file installation path. >> * Fixed dependencies in Config.mk >> * Moved to the systemwide installed pydal. >> * Moved installation path to /var/www/. >> >> v1 -> v2: >> * Adding python2 dependency only (suggested by Yegor) > > Applied with some minor change: > > [Thomas: fixup symbolic link to the systemd service file.] > > However, there are two things that I believe should be > improved/investigated: > > * The installation of web2py on the target is huge: 20 MB. When I look > at it, it seems like there's a huge amount of example applications > and so on, which don't really make sense to install by default. Can > you look at trimming down the installation size to something closer > to what people would really need? Yes, it could be trimmed, it indeed ships with a welcome application and an examples application, I'll post a patch shortly. > * I setup an admin password, but I don't know what to do with. When I > connect to http://<myip>:8000, I can see web2py running. If I click > on "admin" in the box on the right hand side, it brings me to a > blank page that says "Admin is disabled because insecure channel". It's the default behaviour. Admin interface could be accessed by https, localhost, or ssh port redirect only. But unfortunately, web2py doesn't starts if a password is not setted. Sincerely, Angelo > > Thanks! > > Thomas > -- > Thomas Petazzoni, CTO, Free Electrons > Embedded Linux, Kernel and Android engineering > http://free-electrons.com -- Profile: http://it.linkedin.com/in/compagnucciangelo ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-07-24 6:52 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-04-14 15:05 [Buildroot] [PATCH v3 0/2] Web2py and pydal new packages Angelo Compagnucci 2015-04-14 15:05 ` [Buildroot] [PATCH v3 1/2] package/python-pydal: new package Angelo Compagnucci 2015-07-23 20:24 ` Thomas Petazzoni 2015-04-14 15:05 ` [Buildroot] [PATCH v3 2/2] package/python-web2py: " Angelo Compagnucci 2015-07-23 20:26 ` Thomas Petazzoni 2015-07-24 6:52 ` Angelo Compagnucci
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox