Commit d46c9f5f authored by Joanne Hugé's avatar Joanne Hugé

Update Release Candidate

parents 00752806 db6993c2
......@@ -60,17 +60,16 @@ eggs +=
# env.sh for ZODB's python to be on $PATH.
[ZODB-env.sh]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:directory}/${:_buildout_section_name_}
template = inline:
recipe = slapos.recipe.template
output = ${buildout:directory}/${:_buildout_section_name_}
inline =
export PS1="(ZODB-env) $PS1"
export PATH=${buildout:bin-directory}:$PATH
# .nxdtest to run ZODB tests
[.nxdtest]
<= jinja2-template
template =
inline:
inline =
# determine where ZODB & friends were installed
from subprocess import check_output
where = check_output(['python', '-c', """if 1:
......@@ -99,12 +98,12 @@ template =
# instance to run nxdtest.
[instance.cfg]
<= jinja2-template
template = inline:
inline =
[buildout]
extends = ${nxdtest-instance.cfg:rendered}
extends = ${nxdtest-instance.cfg:output}
[runTestSuite]
env.sh = ${ZODB-env.sh:rendered}
env.sh = ${ZODB-env.sh:output}
workdir = ${buildout:directory}
......
......@@ -18,8 +18,8 @@ md5sum = e5f4b1d997e50ffe4998c68c8ec45403
recipe = slapos.recipe.template:jinja2
location = ${buildout:parts-directory}/${:_buildout_section_name_}
filename = bazel_tools_cpp_CROSSTOOL
template = ${:_profile_base_location_}/${:filename}.in
rendered = ${:location}/${:filename}
url = ${:_profile_base_location_}/${:filename}.in
output = ${:location}/${:filename}
context =
key gcc_location gcc:prefix
key binutils_location binutils:location
......@@ -28,8 +28,8 @@ context =
recipe = slapos.recipe.template:jinja2
location = ${buildout:parts-directory}/${:_buildout_section_name_}
filename = bazel_src_main_cpp_BUILD
template = ${:_profile_base_location_}/${:filename}.in
rendered = ${:location}/${:filename}
url = ${:_profile_base_location_}/${:filename}.in
output = ${:location}/${:filename}
# We previously passed an argument that we don't want anymore. Rather than
# changing templates, we pass a dummy argument that will have no effect.
linkopts = -DSLAPOS_DUMMY=
......@@ -50,10 +50,10 @@ url = https://github.com/bazelbuild/bazel/releases/download/0.6.1/bazel-0.6.1-di
md5sum = 8c5c827e33d3ff74c263c1299810b485
patch-binary = ${patch:location}/bin/patch
patch-file-path = ${:_profile_base_location_}/bazel-0.6.1.patch
bazel-crosstool-modified-file-path = ${template-bazel-crosstool:rendered}
bazel-src-main-cpp-build-path = ${template-bazel-src-main-cpp-build:rendered}
bazel-src-main-tools-build-path = ${template-bazel-src-main-tools-build:rendered}
bazel-src-tools-singlejar-build-path = ${template-bazel-src-tools-singlejar-build:rendered}
bazel-crosstool-modified-file-path = ${template-bazel-crosstool:output}
bazel-src-main-cpp-build-path = ${template-bazel-src-main-cpp-build:output}
bazel-src-main-tools-build-path = ${template-bazel-src-main-tools-build:output}
bazel-src-tools-singlejar-build-path = ${template-bazel-src-tools-singlejar-build:output}
unzip-bin = ${unzip:location}/bin
zip-bin = ${zip:location}/bin
java_home = ${zulu:location}
......
......@@ -28,9 +28,9 @@ git-executable = ${git:location}/bin/git
[cythonplus_env.sh]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:directory}/${:_buildout_section_name_}
template =
inline:{% set path, python = os.path.split(python) -%}
output = ${buildout:directory}/${:_buildout_section_name_}
inline =
{% set path, python = os.path.split(python) -%}
{% if 'part' in gcc -%}
{% set path = path + ':' + gcc.prefix + '/bin' -%}
{% endif -%}
......
......@@ -55,6 +55,7 @@ md5sum = 3f489aa48ad2aa1f967dc5e293bbd06f
[yasm]
recipe = slapos.recipe.cmmi
shared = true
url = http://www.tortall.net/projects/yasm/releases/yasm-1.1.0.tar.gz
[libvpx]
......
......@@ -31,7 +31,7 @@ part = firefox
recipe = slapos.recipe.build
location = ${buildout:bin-directory}/${:part}
fonts-conf = ${firefox-default-fonts-conf:rendered}
fonts-conf = ${firefox-default-fonts-conf:output}
init =
self.buildout[options['part']]
install =
......@@ -72,8 +72,8 @@ part = firefox-52
[firefox-default-fonts-conf]
recipe = slapos.recipe.template:jinja2
template = ${template-fonts-conf:output}
rendered = ${buildout:parts-directory}/${:_buildout_section_name_}/fonts.conf
url = ${template-fonts-conf:output}
output = ${buildout:parts-directory}/${:_buildout_section_name_}/fonts.conf
context =
key cachedir :cache-dir
key fonts :fonts
......
......@@ -60,7 +60,7 @@ environment =
DBUS_GLIB_CFLAGS=-I${dbus-glib:location}/include/dbus-1.0
DBUS_GLIB_LIBS=-L${dbus-glib:location}/lib -ldbus-glib-1
CPPFLAGS=-I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include
LDFLAGS=-L${glib:location}/lib -Wl,-rpath=${glib:location}/lib
LDFLAGS=-L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib
[gobject-introspection]
recipe = slapos.recipe.cmmi
......
[buildout]
extends =
../freetype/buildout.cfg
../glib/buildout.cfg
../libpng/buildout.cfg
../pcre/buildout.cfg
../xorg/buildout.cfg
../gtk-2/buildout.cfg
parts =
fluxbox
[fluxbox]
recipe = slapos.recipe.cmmi
url = https://netcologne.dl.sourceforge.net/project/fluxbox/fluxbox/1.3.7/fluxbox-1.3.7.tar.bz2
md6sum = c4701822d8a09d426ebf26e7e97c552a
configure-options =
--enable-x
--enable-xext
--enable-xrender
--enable-xdmcp
--enable-freetype2
--enable-xinerama
--enable-fribidi
--enable-debug
environment =
PATH=${freetype:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${libXext:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig:${libXdmcp:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libXrandr:pkg_config_depends}:${libXrandr:location}/lib/pkgconfig:${xorgproto:pkg_config_depends}:${xorgproto:location}/share/pkgconfig:${fribidi:location}/lib/pkgconfig
LDFLAGS=-L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -Wl,-rpath=${libXrandr:location}/lib -L${libXext:location}/lib -Wl,-rpath=${libXext:location}/lib -L${xextproto:location}/lib -L${libXrender:location}/lib -Wl,-rpath=${libXrender:location}/lib -Wl,-rpath=${freetype:location}/lib -L${libXdmcp:location}/lib -L${libXinerama:location}/lib -Wl,-rpath=${libXinerama:location}/lib -L${fribidi:location}/lib -Wl,-rpath=${fribidi:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${bzip2:location}/lib -Wl,-rpath=${bzip2:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${libpng:location}/lib -Wl,-rpath=${libpng:location}/lib
CPPFLAGS=-I${xextproto:location}/include -I${libX11:location}/include -I${libXrandr:location}/include -I${xorgproto:location}/include -I${xproto:location}/include -I${kbproto:location}/include -I${libXrender:location}/include -I${renderext:location}/include -I${libXext:location}/include -I${libXdmcp:location}/include -I${libXinerama:location}/include -I${fribidi:location}/include -I${libpng:location}/include
X11_CFLAGS=-I${libX11:location}/include
X11_LIBS=-L${libX11:location}/lib -lX11
FREETYPE2_CFLAGS=-I${freetype:location}/include
FREETYPE2_LIBS=-L${freetype:location}/lib -lfreetype
XRENDER_LIBS=-L${libXrender:location}/lib -lXrender
XRENDER_CFLAGS=-I${libXrender:location}/include
XINERAMA_CFLAGS=-I${libXinerama:location}/include
XINERAMA_LIBS=-L${libXinerama:location}/lib -lXinerama
[wmctrl]
recipe = slapos.recipe.cmmi
#url = http://tripie.sweb.cz/utils/wmctrl/dist/wmctrl-1.07.tar.gz
# latest version wmctrl 1.07 was not maintenaned for years, it fails to list windows
url = https://github.com/saravanabalagi/wmctrl/archive/7ecfd2adaa2726a0c974b30bd6df2a65094032dd.tar.gz
md5sum = 6337ecc72cf7bd393f319fc822294105
configure-options =
--with-x
--x-includes=${libX11:location}/include
--x-libraries=${libX11:location}/lib
environment =
PATH=${glib:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${libX11:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libICE:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${libxmu:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig
LDFLAGS=-Wl,-rpath=${libX11:location}/lib -Wl,-rpath=${libICE:location}/lib -L${libxmu:location}/lib -Wl,-rpath=${libxmu:location}/lib -L${libSM:location}/lib -Wl,-rpath=${libSM:location}/lib -L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${libICE:location}/lib -lglib-2.0
CPPFLAGS=-I${xproto:location}/include -I${libxmu:location}/include -I${libSM:location}/include -I${glib:location}/include/glib-2.0 -I${glib:location}/lib/glib-2.0/include
......@@ -119,10 +119,10 @@ environment-extra =
#
# ${go:exe} is standalone executable that runs go in activated gowork environment.
[go]
recipe = slapos.recipe.template:jinja2
recipe = slapos.recipe.template
exe = ${buildout:bin-directory}/go
rendered= ${:exe}
template= inline:
output= ${:exe}
inline =
#!/bin/sh -e
. ${gowork:env.sh}
exec go "$@"
......
......@@ -13,6 +13,7 @@ extends =
[at-spi2-core]
recipe = slapos.recipe.cmmi
shared = true
url =http://ftp.gnome.org/pub/gnome/core/3.22/3.22.2/sources/at-spi2-core-2.22.0.tar.xz
md5sum = 3da5fe62a653e49dad1c47f9a46fee56
configure-options =
......@@ -25,6 +26,7 @@ environment =
[at-spi2-atk]
recipe = slapos.recipe.cmmi
shared = true
url =http://ftp.gnome.org/pub/gnome/core/3.22/3.22.2/sources/at-spi2-atk-2.22.0.tar.xz
md5sum = aa62aed21b8e03dc44ab81ae49d893ca
environment =
......@@ -33,6 +35,7 @@ environment =
[gtk-3]
recipe = slapos.recipe.cmmi
shared = true
url = http://ftp.gnome.org/pub/gnome/core/3.22/3.22.2/sources/gtk+-3.22.3.tar.xz
md5sum = f0e6492896a2ca244501142319adaa95
pkg_config_depends = ${at-spi2-atk:location}/lib/pkgconfig:${at-spi2-core:location}/lib/pkgconfig:${dbus:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${libepoxy:location}/lib/pkgconfig:${pango:location}/lib/pkgconfig:${pango:pkg_config_depends}:${atk:location}/lib/pkgconfig:${gdk-pixbuf:location}/lib/pkgconfig:${libXi:pkg_config_depends}:${libXi:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libX11:location}/lib/pkgconfig:${xorgproto:location}/lib/pkgconfig:${libXext:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libXrender:location}/lib/pkgconfig:${renderproto:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig:${xcbproto:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${libXinerama:location}/lib/pkgconfig:${libXrandr:pkg_config_depends}:${libXrandr:location}/lib/pkgconfig:${xfixes:location}/lib/pkgconfig:${libXcomposite:location}/lib/pkgconfig:${xdamage:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${fixesproto:location}/lib/pkgconfig:${xorg-util-macros:location}/share/pkgconfig:${kbproto:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${compositeproto:location}/lib/pkgconfig:${fixesproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${xfixes:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig:${damageproto:location}/lib/pkgconfig:${xfixes:location}/lib/pkgconfig:${fixesproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig
......
......@@ -7,7 +7,7 @@ parts =
[gzip]
recipe = slapos.recipe.cmmi
shared = true
url = https://ftp.gnu.org/pub/gnu/gzip/gzip-1.11.tar.xz
md5sum = d1e93996dba00cab0caa7903cd01d454
url = https://ftp.gnu.org/pub/gnu/gzip/gzip-1.12.tar.xz
md5sum = 9608e4ac5f061b2a6479dc44e917a5db
environment =
PATH=${xz-utils:location}/bin:%(PATH)s
......@@ -132,11 +132,11 @@ promises =
# as future-proof against new versions of Chromium.
[headless-chromium-wrapper]
recipe = slapos.recipe.template:jinja2
template =
inline:#!/bin/sh
inline =
#!/bin/sh
export LD_LIBRARY_PATH="{{ nss_location }}/lib:$LD_LIBRARY_PATH"
exec {{ chromium_binary }} "$@"
rendered = ${buildout:bin-directory}/headless-chromium
output = ${buildout:bin-directory}/headless-chromium
context =
key nss_location nss:location
key chromium_binary headless-chromium:binary
......@@ -34,12 +34,12 @@ install =
[helloweb-go]
# we already have gowork/bin/helloweb with helloweb Go build.
# Add bin/helloweb-go that runs go version of helloweb without any environment preset needed.
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:bin-directory}/${:_buildout_section_name_}
template =
inline:#!/bin/sh -e
. ${gowork:env.sh}
exec helloweb "$@"
recipe = slapos.recipe.template
output = ${buildout:bin-directory}/${:_buildout_section_name_}
inline =
#!/bin/sh -e
. ${gowork:env.sh}
exec helloweb "$@"
# -*- python -*-
......@@ -97,9 +97,9 @@ make-targets= ${bundler:bundle} install
[helloweb-ruby]
# NOTE slapos.cookbook:wrapper also works, but currently _only_ in instance
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:bin-directory}/${:_buildout_section_name_}
template =
inline:#!/bin/sh -e
export BUNDLE_GEMFILE=${helloweb-ruby-bundle:path}/Gemfile
exec ${bundler:bundle} exec sh -c 'helloweb.rb "$@"' ${:_buildout_section_name_} "$@"
recipe = slapos.recipe.template
output = ${buildout:bin-directory}/${:_buildout_section_name_}
inline =
#!/bin/sh -e
export BUNDLE_GEMFILE=${helloweb-ruby-bundle:path}/Gemfile
exec ${bundler:bundle} exec sh -c 'helloweb.rb "$@"' ${:_buildout_section_name_} "$@"
......@@ -40,8 +40,8 @@ url = ${:_profile_base_location_}/${:filename}
[instance-jupyter-notebook]
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/${:filename}
rendered = ${buildout:directory}/template.cfg
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/template.cfg
context =
key bin_directory buildout:bin-directory
key develop_eggs_directory buildout:develop-eggs-directory
......
......@@ -15,7 +15,7 @@
[instance-jupyter-notebook]
filename = instance.cfg.in
md5sum = 357f28614a13cdbf00a29a83cbfd2642
md5sum = 9f412363ce2c2ac99e3328f7d87d456d
[jupyter-notebook-config]
filename = jupyter_notebook_config.py.jinja
......
......@@ -73,8 +73,8 @@ environment =
[jupyter-notebook-config]
recipe = slapos.recipe.template:jinja2
template = {{ jupyter_config_location }}/{{ jupyter_config_filename }}
rendered = ${directory:jupyter_config_dir}/jupyter_notebook_config.py
url = {{ jupyter_config_location }}/{{ jupyter_config_filename }}
output = ${directory:jupyter_config_dir}/jupyter_notebook_config.py
context =
raw config_cfg ${buildout:directory}/knowledge0.cfg
......@@ -130,8 +130,8 @@ target-directory = ${directory:erp5_kernel_dir}
[kernel-json]
recipe = slapos.recipe.template:jinja2
template = {{ kernel_json_location }}/{{ kernel_json_filename }}
rendered = ${directory:erp5_kernel_dir}/kernel.json
url = {{ kernel_json_location }}/{{ kernel_json_filename }}
output = ${directory:erp5_kernel_dir}/kernel.json
# Use python2.7 executable bin file for kernel config
context =
raw python_executable {{ python_executable }}
......
[buildout]
extends =
../bison/buildout.cfg
parts =
kerberos
[kerberos]
recipe = slapos.recipe.cmmi
shared = true
url = http://web.mit.edu/kerberos/dist/krb5/1.19/krb5-1.19.2.tar.gz
md5sum = eb51b7724111e1a458a8c9a261d45a31
configure-command = src/configure
configure-options =
--prefix=@@LOCATION@@
--with-ldap=no
--without-readline
--without-tcl
--without-keyutils
environment =
PATH=${bison:location}/bin:%(PATH)s
......@@ -7,6 +7,7 @@ extends =
[libepoxy]
recipe = slapos.recipe.cmmi
shared = true
url = https://github.com/anholt/libepoxy/releases/download/v1.4/libepoxy-1.4.0.tar.xz
md5sum = d8d8cbf2beb64975d424fcc5167a2a38
environment =
......
[buildout]
extends =
../ffmpeg/buildout.cfg
../cmake/buildout.cfg
parts =
libjpeg
......@@ -9,3 +13,34 @@ url = http://www.ijg.org/files/jpegsrc.v9d.tar.gz
md5sum = 693a4e10906e66467ca21f045547fe15
configure-options =
--disable-static
[libjpeg-turbo2]
recipe = slapos.recipe.cmmi
shared = true
url = https://freefr.dl.sourceforge.net/project/libjpeg-turbo/${:version}/libjpeg-turbo-${:version}.tar.gz
version = 2.1.2
md5sum = e181bd78884dd5392a869209bfa41d4a
configure-command = cmake
configure-options =
-Bbuild
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=@@LOCATION@@
-DENABLE_STATIC=0
-G"Unix Makefiles"
make-options = -C build
environment =
PATH=${cmake:location}/bin:%(PATH)s
[libjpeg-turbo]
recipe = slapos.recipe.cmmi
shared = true
url = https://freefr.dl.sourceforge.net/project/libjpeg-turbo/${:version}/libjpeg-turbo-${:version}.tar.gz
version = 1.5.2
md5sum = 6b4923e297a7eaa255f08511017a8818
configure-options =
--disable-static
--with-gnu-ld
--with-jpeg7
--with-jpeg8
environment =
PATH=${yasm:location}/bin:%(PATH)s
......@@ -11,15 +11,18 @@ parts =
[libtiff]
recipe = slapos.recipe.cmmi
shared = true
url = http://download.osgeo.org/libtiff/tiff-4.0.8.tar.gz
md5sum = 2a7d1c1318416ddf36d5f6fa4600069b
url = http://download.osgeo.org/libtiff/tiff-4.2.0.tar.gz
md5sum = 2bbf6db1ddc4a59c89d6986b368fc063
configure-options =
--disable-static
--without-x
--disable-libdeflate
--disable-lzma
--disable-zstd
--disable-webp
patch-options = -p1
patches =
${:_profile_base_location_}/debian_4.0.8-2+deb9u5.patch#dc9c9cb7f4f9a00100f908e640895185
${:_profile_base_location_}/debian_4.2.0-1+deb11u1.patch#2ded3a01abc353bad4aa1a1f128d6d1a
environment =
CPPFLAGS=-I${libjpeg:location}/include -I${jbigkit:location}/include -I${zlib:location}/include
LDFLAGS=-L${libjpeg:location}/lib -Wl,-rpath=${libjpeg:location}/lib -L${jbigkit:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib
......
This diff is collapsed.
This diff is collapsed.
[buildout]
extends =
../cmake/buildout.cfg
../libjpeg/buildout.cfg
../lzo/buildout.cfg
../libtirpc/buildout.cfg
../kerberos/buildout.cfg
../xorg/buildout.cfg
parts =
x11vnc
[libvncserver]
recipe = slapos.recipe.cmmi
shared = true
url = https://github.com/LibVNC/libvncserver/archive/refs/tags/LibVNCServer-0.9.13.tar.gz
md5sum = 503b5527b93dce77e8b6a45f273f6e39
configure-command = cmake
configure-options =
-Bbuild
-DCMAKE_INSTALL_PREFIX=@@LOCATION@@
-DBUILD_SHARED_LIBS=ON
-DWITH_SYSTEMD=OFF
-DWITH_SDL=OFF
-DWITH_GTK=OFF
-DWITH_WEBSOCKETS=ON
-DWITH_LZO=ON
-DWITH_GCRYPT=ON
-DWITH_IPv6=ON
-DWITH_JPEG=ON
-DWITH_FFMPEG=OFF
-DWITH_PNG=ON
-DWITH_GNUTLS=ON
-DWITH_OPENSSL=ON
-DZLIB_INCLUDE_DIR=${zlib:location}/include
-DZLIB_LIBRARY=${zlib:location}/lib/libz.so
-DJPEG_LIBRARY=${libjpeg-turbo2:location}/lib/libjpeg.so
-DJPEG_INCLUDE_DIR=${libjpeg-turbo2:location}/include
-DPNG_LIBRARY=${libpng:location}/lib/libpng.so
-DPNG_PNG_INCLUDE_DIR=${libpng:location}/include
-DOPENSSL_INCLUDE_DIR=${openssl:location}/include
-DLZO_INCLUDE_DIR=${lzo:location}/include
-DLZO_LIBRARIES=${lzo:location}/lib/liblzo2.a
-DGNUTLS_LIBRARY=${gnutls:location}/lib/libgnutls.so
-DGNUTLS_INCLUDE_DIR=${gnutls:location}/include
make-options = -C build
environment =
PATH=${cmake:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${zlib:location}/lib/pkgconfig:${libpng:location}/lib/pkgconfig:${libjpeg-turbo2:location}/lib/pkgconfig:${openssl:location}/lib/pkgconfig
CPPFLAGS=-I${openssl:location}/include -I${libgcrypt:location}/include -I${libjpeg-turbo2:location}/include -I${gnutls:location}/include -I${lzo:location}/include
LDFLAGS=-L${libgcrypt:location}/lib -Wl,-rpath=${libgcrypt:location}/lib -L${openssl:location}/lib -Wl,-rpath=${openssl:location}/lib -L${libjpeg-turbo2:location}/lib -Wl,-rpath=${libjpeg-turbo2:location}/lib -Wl,-rpath=${libpng:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${gnutls:location}/lib -Wl,-rpath=${gnutls:location}/lib -L${lzo:location}/lib -pthread -ljpeg
[x11vnc]
recipe = slapos.recipe.cmmi
url = https://github.com/LibVNC/x11vnc/archive/0.9.16.tar.gz
md5sum = 64172e8f896389ec963fff93415f0d93
pre-configure =
autoreconf -fiv -I ${libtool:location}/share/aclocal -I ${pkgconfig:location}/share/aclocal -I ${gettext:location}/share/aclocal
configure-options =
--without-crypt
--without-avahi
--without-xinerama
--without-xtrap
--without-xrecord
--without-v4l
--without-fbpm
--without-dpms
environment =
PATH=${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${openssl:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libXext:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libXtst:location}/lib/pkgconfig:${libvncserver:location}/lib/pkgconfig:${zlib:location}/lib/pkgconfig
CPPFLAGS=-I${openssl:location}/include -I${libX11:location}/include -I${xproto:location}/include -I${xorgproto:location}/include -I${libXi:location}/include -I${libXtst:location}/include -I${libXext:location}/include -I${xextproto:location}/include -I${libvncserver:location}/include -I${zlib:location}/include -I${libXrandr:location}/include -I${xfixes:location}/include -I${xdamage:location}/include -I${libXcomposite:location}/include -I${libXrender:location}/include
LDFLAGS=-L${openssl:location}/lib -Wl,-rpath=${openssl:location}/lib -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${xproto:location}/lib -L${xorgproto:location}/lib -L${libXi:location}/lib -L${libXtst:location}/lib -Wl,-rpath=${libXtst:location}/lib -L${libXext:location}/lib -L${xextproto:location}/lib -Wl,-rpath=${libXext:location}/lib -L${libvncserver:location}/lib -Wl,-rpath=${libvncserver:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${libXrandr:location}/lib -Wl,-rpath=${libXrandr:location}/lib -L${xfixes:location}/lib -Wl,-rpath=${xfixes:location}/lib -L${xdamage:location}/lib -Wl,-rpath=${xdamage:location}/lib -L${libXcomposite:location}/lib -Wl,-rpath=${libXcomposite:location}/lib -L${libXrender:location}/lib -Wl,-rpath=${libXrender:location}/lib -Wl,-rpath=${libtirpc:location}/lib -Wl,-rpath=${kerberos:location}/lib
......@@ -5,5 +5,6 @@ parts =
[lzo]
recipe = slapos.recipe.cmmi
url = http://www.oberhumer.com/opensource/lzo/download/lzo-2.09.tar.gz
md5sum = c7ffc9a103afe2d1bba0b015e7aa887f
shared = true
url = https://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz
md5sum = 39d3f3f9c55c87b1e5d6888e1420f4b5
[buildout]
extends =
../autoconf/buildout.cfg
../automake/buildout.cfg
../flex/buildout.cfg
../bison/buildout.cfg
[matiec]
recipe = slapos.recipe.cmmi
url = https://github.com/beremiz/matiec/archive/${:version}.tar.gz
md5sum = 6ee62c3d523c6154e7d781d98756444f
version = f59f45d5219172dea171d8ff305f28606a9500ff
pre-configure =
${autoconf:location}/bin/autoreconf -i
make-targets =
post-install =
cp -r * %(location)s/
environment =
PATH=${autoconf:location}/bin:${automake:location}/bin:${flex:location}/bin:${bison:location}/bin:%(PATH)s
[Modbus]
recipe = slapos.recipe.cmmi
url = https://hg.beremiz.org/Modbus/archive/e319814f1c17.tar.bz2
md5sum = ad43fdacf223c7861576422eb89c15aa
configure-command = true
make-targets =
post-install =
cp -r *.h libmb.a libmb.so %(location)s/
......@@ -12,8 +12,8 @@ parts =
[matplotlibrc]
recipe = slapos.recipe.template:jinja2
location = ${buildout:parts-directory}/${:_buildout_section_name_}
template = ${:_profile_base_location_}/${:filename}
rendered = ${matplotlibrc:location}/matplotlibrc
url = ${:_profile_base_location_}/${:filename}
output = ${matplotlibrc:location}/matplotlibrc
backend = agg
context =
key backend matplotlibrc:backend
......
......@@ -21,20 +21,20 @@ eggs +=
# env.sh for interpreter to be on $PATH.
[nxdtest-env.sh]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:directory}/${:_buildout_section_name_}
template = inline:
recipe = slapos.recipe.template
output = ${buildout:directory}/${:_buildout_section_name_}
inline =
export PS1="(nxdtest-env) $PS1"
export PATH=${buildout:bin-directory}:$PATH
# instance to run nxdtest.
[instance.cfg]
<= jinja2-template
template = inline:
inline =
[buildout]
extends = ${nxdtest-instance.cfg:rendered}
extends = ${nxdtest-instance.cfg:output}
[runTestSuite]
env.sh = ${nxdtest-env.sh:rendered}
env.sh = ${nxdtest-env.sh:output}
workdir = ${nxdtest-repository:location}
[buildout]
extends =
../java/buildout.cfg
../java-jdk/buildout.cfg
../cmake/buildout.cfg
../libjpeg/buildout.cfg
parts =
opencv
[java-re]
<= java-re-temurin-11
[ant]
recipe = slapos.recipe.build:download-unpacked
shared = true
url = https://dlcdn.apache.org/ant/binaries/apache-ant-1.9.16-bin.tar.bz2
md5sum = 2a1ef0230e673b6da876a8fc9744b9a1
[opencv]
recipe = slapos.recipe.cmmi
shared = true
url = https://github.com/opencv/opencv/archive/4.3.0.tar.gz
configure-command = cmake
configure-options =
-Bbuild
-DCMAKE_INSTALL_PREFIX=@@LOCATION@@
-DCMAKE_BUILD_TYPE=RELEASE
-DINSTALL_PYTHON_EXAMPLES=OFF
-DINSTALL_C_EXAMPLES=OFF
-DOPENCV_ENABLE_NONFREE=ON
-DPYTHON_EXECUTABLE=${python2.7:location}/bin/python
-DANT_EXECUTABLE=${ant:location}/bin/ant
-DBUILD_SHARED_LIBRARY=OFF
-DBUILD_TESTS=OFF
-DBUILD_PERF_TESTS=OFF
-DBUILD_EXAMPLES=OFF
-DBUILD_JAVA=ON
-DJAVA_AWT_INCLUDE_PATH=${java-jdk:location}/include
-DJAVA_AWT_LIBRARY=${java-jdk:location}/lib/libawt.so
-DJAVA_INCLUDE_PATH=${java-jdk:location}/include
-DJAVA_INCLUDE_PATH2=${java-jdk:location}/include/linux
-DJAVA_JVM_LIBRARY=${java-jdk:location}/include/jni.h
-DWITH_VTK=OFF
-DWITH_FFMPEG=OFF
-DWITH_GTK=OFF
-DPYTHON_LIBRARIES=${python:location}/lib
-DPYTHON_INCLUDE_DIRS=${python:location}/include/python${python:version}
-DZLIB_INCLUDE_DIR=${zlib:location}/include
-DZLIB_LIBRARY=${zlib:location}/lib/libz.so
-DJPEG_LIBRARY=${libjpeg-turbo2:location}/lib/libjpeg.so
-DJPEG_INCLUDE_DIR=${libjpeg-turbo2:location}/include
-DPNG_LIBRARY=${libpng:location}/lib/libpng.so
-DPNG_PNG_INCLUDE_DIR=${libpng:location}/include
make-options = -C build
post-install =
cp build/lib/libopencv_java430.so @@LOCATION@@/lib
cp build/bin/opencv-430.jar @@LOCATION@@/bin
environment =
PATH=${cmake:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${zlib:location}/lib/pkgconfig:${libpng:location}/lib/pkgconfig:${libjpeg-turbo2:location}/lib/pkgconfig
JAVA_HOME=${java-jdk:location}
JRE_HOME=${java-re:location}
CPPFLAGS=-I${libjpeg-turbo2:location}/include -I${libpng:location}/include
LDFLAGS=-L${libjpeg-turbo2:location}/lib -Wl,-rpath=${libjpeg-turbo2:location}/lib -Wl,-rpath=${libpng:location}/lib -Wl,-rpath=${zlib:location}/lib -L${zlib:location}/lib -Wl,-rpath=@@LOCATION@@/lib
......@@ -73,7 +73,7 @@ perl-PATH = ${:location}/bin/
# dependencies
perl-bin = ${:perl-PATH}/perl
perl-PERL5LIB =
perl-PERL5LIB =
# Implementation
recipe = slapos.recipe.cmmi
......@@ -117,12 +117,12 @@ perl_location = ${perl:location}
# - inc : colon (:) separated site perl of modules to include in @INC
# Outputs:
# - perl-bin : an executable perl
recipe = slapos.recipe.template:jinja2
template = inline:
recipe = slapos.recipe.template
inline =
#!/bin/sh
{% set inc = "${:inc}".split(':') %} {# XXX we could remove duplicates from inc #}
exec ${perl:location}/bin/perl \
{% for item in inc -%}{% if item %} -I "{{ item }}" \
{% endif %}{% endfor %} "$@"
rendered = ${buildout:bin-directory}/${:_buildout_section_name_}
perl-bin = ${:rendered}
output = ${buildout:bin-directory}/${:_buildout_section_name_}
perl-bin = ${:output}
......@@ -88,12 +88,10 @@ init =
# .X.pyprog is python program to start and run entry
# it uses .X.pyexe as underlying python interpreter
[.%(name)s.pyprog]
recipe = slapos.recipe.template:jinja2
recipe = slapos.recipe.template
exe = %(exe)s
rendered= $${:exe}
mode = 755
template=
inline:
output= $${:exe}
inline =
#!$${.%(name)s.pyexe:exe}
import sys
%(__pyinit)s
......
......@@ -28,21 +28,21 @@ eggs = ${pygolang:egg}
# env.sh for pygolang's python/gpython to be on $PATH.
[pygolang-env.sh]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:directory}/${:_buildout_section_name_}
template = inline:
recipe = slapos.recipe.template
output = ${buildout:directory}/${:_buildout_section_name_}
inline =
export PS1="(pygolang-env) $PS1"
export PATH=${buildout:bin-directory}:$PATH
# instance to run nxdtest.
[instance.cfg]
<= jinja2-template
template = inline:
inline =
[buildout]
extends = ${nxdtest-instance.cfg:rendered}
extends = ${nxdtest-instance.cfg:output}
[runTestSuite]
env.sh = ${pygolang-env.sh:rendered}
env.sh = ${pygolang-env.sh:output}
workdir = ${pygolang-repository:location}
......
......@@ -69,5 +69,5 @@ post-install = cd '%(prefix)s' &&
# which would otherwise load the system libmagic.so with ctypes
environment =
PATH=${patch:location}/bin:${xz-utils:location}/bin:%(PATH)s
CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${libffi:location}/include -I${ncurses:location}/include -I${ncurses:location}/include -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include
CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${libexpat:location}/include -I${libffi:location}/include -I${ncurses:location}/include -I${ncurses:location}/include -I${bzip2:location}/include -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include -fPIC
LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${libexpat:location}/lib -L${libffi:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath=${zlib:location}/lib -Wl,-rpath=${readline:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${libffi:location}/lib -Wl,-rpath=${ncurses:location}/lib -Wl,-rpath=${bzip2:location}/lib -Wl,-rpath=${gdbm:location}/lib -Wl,-rpath=${openssl:location}/lib -Wl,-rpath=${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -Wl,-rpath=${file:location}/lib
......@@ -6,27 +6,19 @@ parts =
[python-slip]
# BUG: This section does FS changes outside location.
recipe = slapos.recipe.cmmi
url = https://github.com/nphilipp/python-slip/releases/download/python-slip-0.6.1/python-slip-0.6.1.tar.bz2
md5sum = a6d8ee96245fc21785d4c1c062c85f2f
url = https://github.com/nphilipp/python-slip/releases/download/python-slip-0.6.5/python-slip-0.6.5.tar.bz2
md5sum = 28ae5f93853466c44ec96706ba2a1eb4
configure-command = true
make-targets =
make-binary =
make all
cp -ax . ${:slip}/
cp -ax . ${:slip.dbus}/
cp -ax . ${:slip.gtk}/
sed -i '/setup(name="slip.dbus"/,/"gtk", "pango"])/d' ${:slip}/setup.py
sed -i '/setup(name="slip"/,/selinux"])/d' ${:slip.dbus}/setup.py
sed -i '/if sys.version_info.major/,/"gtk", "pango"])/d' ${:slip.dbus}/setup.py
sed -i '/setup(name="slip"/,/xml.etree.ElementTree"])/d' ${:slip.gtk}/setup.py
slip = ${buildout:parts-directory}/slip
slip.dbus = ${buildout:parts-directory}/slip.dbus
slip.gtk = ${buildout:parts-directory}/slip.gtk
[slip.gtk-develop]
recipe = zc.recipe.egg:develop
setup = ${python-slip:slip.gtk}
egg-name = slip.gtk
[slip.dbus-develop]
recipe = zc.recipe.egg:develop
......@@ -43,5 +35,4 @@ recipe = zc.recipe.egg
eggs =
${slip-develop:egg-name}
${slip.dbus-develop:egg-name}
${slip.gtk-develop:egg-name}
[buildout]
extends =
../java/buildout.cfg
../xorg/buildout.cfg
../tesseract/buildout.cfg
parts =
sikuli
[java]
<= java-re-temurin-11
[sikuli-download]
recipe = slapos.recipe.build:download
url = https://launchpad.net/sikuli/sikulix/2.0.5/+download/sikulixide-2.0.5.jar
filename = sikulixide-2.0.5.jar
md5sum = 0795f1e0866ee5a7a84e4c89793ea78c
[sikuli]
recipe = slapos.recipe.template
output = ${buildout:parts-directory}/${:_buildout_section_name_}/sikulix
inline =
#!/bin/sh -e
export JAVA_HOME=${java:location}
export JRE_HOME=${java:location}
export PATH=${java:location}/bin:$PATH
# Sikulix jar file hash some embeded shared libraries (libJXGrabKey.so, libopencv_java430.so)
export LD_LIBRARY_PATH=${tesseract:location}/lib:${libX11:location}/lib:${gcc:prefix}/lib64:${gcc:prefix}/lib:${libxcb:location}/lib:${libXau:location}/lib:${libXdmcp:location}/lib$${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
exec java -jar ${sikuli-download:location}/${sikuli-download:filename} "$@"
......@@ -26,13 +26,14 @@ extends-cache = extends-cache
download-cache = download-cache
[python]
part = python3
init +=
buildout = self.buildout['buildout']
assert buildout['directory'] == buildout['destdir'] + buildout['rootdir'], (
"Buildout MUST BE launched in destdir/rootdir (currently launched in %s but should be launched in %s)",
buildout['directory'], buildout['destdir'] + buildout['rootdir'])
[python2.7]
[python3-common]
configure-options +=
--prefix=${buildout:rootdir}/parts/${:_buildout_section_name_}
environment +=
......@@ -86,8 +87,8 @@ pre-configure =
environment +=
LD_LIBRARY_PATH=${dbus:location}/lib
PYTHON=${python:location}/bin/python${python:version}
PYTHON_INCLUDES=-I${python:location}/include/python${python:version}
PYTHON_LIBS=-L${python:location}/lib -lpython${python:version} -lpthread -ldl -lutil -lm
PYTHON_INCLUDES=-I${python:location}/include/python${python:version}m
PYTHON_LIBS=-L${python:location}/lib -lpython${python:version}m -lpthread -ldl -lutil -lm
post-install =
sed -i 's#${dbus:location}/lib/libdbus-1.la#/opt/slapos/parts/dbus/lib/libdbus-1.la#' ${dbus-glib:location}/lib/libdbus-glib-1.la
......
......@@ -47,19 +47,17 @@ post-install =
keytar.node
[theia-wrapper]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:bin-directory}/${:_buildout_section_name_}
template =
inline:
recipe = slapos.recipe.template
output = ${buildout:bin-directory}/${:_buildout_section_name_}
inline =
#!/bin/sh
cd ${theia:location}
exec ${yarn:location}/bin/yarn theia start "$@"
[theia-open]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:bin-directory}/${:_buildout_section_name_}
template =
inline:
recipe = slapos.recipe.template
output = ${buildout:bin-directory}/${:_buildout_section_name_}
inline =
#!/bin/sh
exec ${nodejs:location}/bin/node ${theia:location}/node_modules/.bin/theia-open "$@"
......
......@@ -39,9 +39,9 @@ eggs =
# env.sh for that python + go to be on $PATH
[wendelin.core-env.sh]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:directory}/${:_buildout_section_name_}
template = inline:
recipe = slapos.recipe.template
output = ${buildout:directory}/${:_buildout_section_name_}
inline =
. ${gowork:env.sh}
export PS1="(wendelin.core-env) $PS1"
export PATH=${buildout:bin-directory}:${gdb:location}/bin:$PATH
......@@ -49,12 +49,12 @@ template = inline:
# instance to run nxdtest.
[instance.cfg]
<= jinja2-template
template = inline:
inline =
[buildout]
extends = ${nxdtest-instance.cfg:rendered}
extends = ${nxdtest-instance.cfg:output}
[runTestSuite]
env.sh = ${wendelin.core-env.sh:rendered}
env.sh = ${wendelin.core-env.sh:output}
workdir = ${wendelin.core-repository:location}
......
[buildout]
extends =
../pkgconfig/buildout.cfg
../gtk-3/buildout.cfg
../pillow/buildout.cfg
../numpy/buildout.cfg
../wxwidgets/buildout.cfg
parts =
wxPython
[wxpython-eggs]
recipe = zc.recipe.egg
interpreter = wxpython2.7
eggs =
requests
${numpy:egg}
${pillow-python:egg}
[nanosvg]
recipe = slapos.recipe.build:download-unpacked
shared = true
url = https://github.com/wxWidgets/nanosvg/archive/${:version}.tar.gz
version = 9dd92bbfc6f709e889578a724724ffbd42ac3004
md5sum = b9060d6600ebffa4080d1b29c99d1f30
[wxPython-download]
recipe = slapos.recipe.build:download-unpacked
url = https://github.com/wxWidgets/Phoenix/archive/refs/tags/wxPython-4.1.1.tar.gz
md5sum = e72d99cd865c4220b65065079457c6c5
[wxPython]
recipe = slapos.recipe.build
egg = ${:_buildout_section_name_}
source-location = ${wxPython-download:location}
egg-name = ${:egg}-${versions:wxPython}-py${python:version}-linux-x86_64.egg
location = ${buildout:eggs-directory}/${:egg-name}
python-bin = ${buildout:bin-directory}/${wxpython-eggs:interpreter}
ext-path = ${wxWidgets:location}/${wxWidgets:ext-name}
install =
import os, sys
from slapos.recipe.downloadunpacked import unpack_archive
from zc.buildout import easy_install
env = self.environ
workdir = options['source-location']
python_bin = options['python-bin']
dist = os.path.join(workdir, 'dist')
build = os.path.join(workdir, 'build')
doxygen = os.path.join(workdir, 'bin', 'doxygen-1.8.8-linux')
sip = os.path.join(workdir, 'bin', 'sip-4.19.24-linux64')
waf = os.path.join(workdir, 'bin', 'waf-2.0.19')
wxwidget = os.path.join(workdir, 'ext', 'wxWidgets')
wxpython_eggs = self.buildout['wxpython-eggs']
egg_list = easy_install.working_set(wxpython_eggs['eggs'].split(), [
wxpython_eggs['develop-eggs-directory'],
wxpython_eggs['eggs-directory'],
]).entries
egg_list.append(workdir)
env['PYTHONPATH'] = os.pathsep.join(sys.path + egg_list)
self.cleanup_list += build, dist, doxygen, sip, waf, wxwidget
unpack_archive(self, options['ext-path'], wxwidget)
call([python_bin, 'build.py', 'dox', 'etg', '--nodoc', 'sip', 'build', '--use_syswx', '--release',
'--gtk3'], env=env, cwd=workdir)
call([python_bin, 'build.py', 'bdist_egg', '--use_syswx', '--release',
'--gtk3'], env=env, cwd=workdir)
unpack_archive(self, os.path.join(dist, options['egg-name']), location)
call([python_bin, 'build.py', 'clean'], env=env, cwd=workdir)
environment =
PATH=${xz-utils:location}/bin:${pkgconfig:location}/bin:${wxWidgets:location}/bin:%(PATH)s
LDFLAGS=-L${gtk-3:location}/lib -Wl,-rpath=${gtk-3:location}/lib -L${wxWidgets:location}/lib -Wl,-rpath=${wxWidgets:location}/lib
CPPFLAGS=-I${wxWidgets:location}/include/wx-3.0 -I${wxWidgets:location}/lib/wx/include/gtk3-unicode-3.0 -I${gtk-3:location}/include/gtk-3.0 -I${nanosvg:location}/src
PKG_CONFIG_PATH = ${glib:location}/lib/pkgconfig:${gtk-3:location}/lib/pkgconfig:${gtk-3:pkg_config_depends}
[versions]
wxPython = 4.1.1
[buildout]
extends =
../pkgconfig/buildout.cfg
../libpng/buildout.cfg
../zlib/buildout.cfg
../libjpeg/buildout.cfg
../libtiff/buildout.cfg
../gtk-3/buildout.cfg
../glib/buildout.cfg
../libexpat/buildout.cfg
../libepoxy/buildout.cfg
../jbigkit/buildout.cfg
../gettext/buildout.cfg
../freetype/buildout.cfg
../fontconfig/buildout.cfg
../tar/buildout.cfg
../git/buildout.cfg
parts =
wxWidgets
[catch]
recipe = slapos.recipe.build:download-unpacked
shared = true
url = https://github.com/wxWidgets/Catch/archive/${:version}.tar.gz
version = ee4acb6ae6e32a02bc012d197aa82b1ca7a493ab
md5sum = 68b358d05aca88f593d6b479ae30e9a0
[wxWidgets]
recipe = slapos.recipe.cmmi
shared = true
url = https://github.com/wxWidgets/wxWidgets/archive/${:version}.tar.gz
md5sum = ae15c3695aea69507ed392cf9ea2ec03
version = 493cc3571e0308e1a273231daefa8deb7fbc4cf1
ext-name = wxwidgets-ext.tar.xz
pre-configure =
# configure script is looking for catch in 3rdparty/catch
rm -rf 3rdparty/catch && ln -sf ${catch:location} 3rdparty/catch
configure-options =
--enable-ipv6
--enable-rpath
--with-gtk=3
--with-zlib
--with-expat
--with-libpng
--with-libjpeg
--with-libtiff
--with-gtk-prefix=${gtk-3:location}
--with-themes=all
post-install =
# wxPython need docs and interface folders to build, but wxPython build
# script will write and read to docs/out folder. So w'll extract this
# tarball to wxPython/ext/wxWidgets dir.
tar -acf @@LOCATION@@/${:ext-name} docs interface
environment =
PATH=${xz-utils:location}/bin:${tar:location}/bin:${git:location}/bin:${gettext:location}/bin:${gtk-3:location}/bin:${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${glib:location}/lib/pkgconfig:${gtk-3:location}/lib/pkgconfig:${libtiff:location}/lib/pkgconfig:${gtk-3:pkg_config_depends}
LDFLAGS=-L${gtk-3:location}/lib -Wl,-rpath=${gtk-3:location}/lib -L${gettext:location}/lib -Wl,-rpath=${gettext:location}/lib -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libtiff:location}/lib -Wl,-rpath=${libtiff:location}/lib -L${libjpeg-turbo:location}/lib -Wl,-rpath=${libjpeg-turbo:location}/lib -L${libpng:location}/lib -Wl,-rpath=${libpng:location}/lib -L${zlib:location}/lib -Wl,-rpath=${zlib:location}/lib -L${libexpat:location}/lib -Wl,-rpath=${libexpat:location}/lib -Wl,-rpath=${xz-utils:location}/lib -Wl,-rpath=${jbigkit:location}/lib -L${glib:location}/lib -Wl,-rpath=${glib:location}/lib -L${pango:location}/lib -Wl,-rpath=${pango:location}/lib -L${cairo:location}/lib -Wl,-rpath=${cairo:location}/lib -L${gdk-pixbuf:location}/lib -Wl,-rpath=${gdk-pixbuf:location}/lib -L${atk:location}/lib -Wl,-rpath=${atk:location}/lib -Wl,-rpath=${fontconfig:location}/lib -Wl,-rpath=${freetype:location}/lib -Wl,-rpath=@@LOCATION@@/lib
CPPFLAGS=-I${libexpat:location}/include -I${xz-utils:location}/include -I${zlib:location}/include -I${gettext:location}/include -I${gtk-3:location}/include/gtk-3.0 -I${pango:location}/include/pango-1.0 -I${cairo:location}/include/cairo -I${cairo:location}/include -I${gdk-pixbuf:location}/include/gdk-pixbuf-2.0 -I${atk:location}/include/atk-1.0 -I${glib:location}/include/glib-2.0 -I${glib:location}/include/gio-unix-2.0 -I${glib:location}/lib/glib-2.0/include -I${libjpeg-turbo:location}/include -I${libpng:location}/include -I${libX11:location}/include -I${libtiff:location}/include
......@@ -525,6 +525,19 @@ environment =
PATH=${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${damageproto:location}/lib/pkgconfig:${xfixes:location}/lib/pkgconfig:${fixesproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig:${libxcb:location}/lib/pkgconfig:${xorg-libpthread-stubs:location}/lib/pkgconfig:${libXau:location}/lib/pkgconfig
[xdotool]
recipe = slapos.recipe.cmmi
url = https://github.com/jordansissel/xdotool/releases/download/v3.20211022.1/xdotool-3.20211022.1.tar.gz
md5sum = 9fd993a251a7c38b32381503544b0dd7
configure-command = true
make-options =
PREFIX=@@LOCATION@@
pre-build = mkdir @@LOCATION@@/lib
environment =
PKG_CONFIG_PATH=${libXtst:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libXinerama:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libXi:location}/lib/pkgconfig:${libXi:pkg_config_depends}:${libxkbcommon:location}/lib/pkgconfig:${libxkbcommon:pkg_config_depends}:${recordproto:location}/lib/pkgconfig:${xineramaproto:location}/lib/pkgconfig
PATH=${pkgconfig:location}/bin:%(PATH)s
LDFLAGS=-Wl,-rpath=${libX11:location}/lib -Wl,-rpath=${libXi:location}/lib -Wl,-rpath=${libxkbcommon:location}/lib -Wl,-rpath=${libXtst:location}/lib -Wl,-rpath=${libXinerama:location}/lib
[libxmu]
recipe = slapos.recipe.cmmi
shared = true
......
[buildout]
parts =
xterm
extends =
../freetype/buildout.cfg
../ncurses/buildout.cfg
../autoconf/buildout.cfg
../automake/buildout.cfg
../libtool/buildout.cfg
../gettext/buildout.cfg
../pcre/buildout.cfg
../m4/buildout.cfg
../xorg/buildout.cfg
[libXpm]
recipe = slapos.recipe.cmmi
shared = true
url = https://gitlab.freedesktop.org/xorg/lib/libxpm/-/archive/libXpm-3.5.13/libxpm-libXpm-3.5.13.tar.bz2
md5sum = 9d7680f231e24777c2a2d278cac4be16
pre-configure =
${autoconf:location}/bin/autoreconf -i -I ${libtool:location}/share/aclocal -I ${xorg-util-macros:location}/share/aclocal -I${pkgconfig:location}/share/aclocal
environment =
PATH=${gettext:location}/bin:${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${pkgconfig:location}/bin:%(PATH)s
M4=${m4:location}/bin/m4
PKG_CONFIG_PATH=${libSM:location}/lib/pkgconfig:${libICE:location}/lib/pkgconfig:${libICE:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libXext:location}/lib/pkgconfig:${libXt:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig
[libXaw]
recipe = slapos.recipe.cmmi
shared = true
url = https://gitlab.freedesktop.org/xorg/lib/libxaw/-/archive/libXaw-1.0.14/libxaw-libXaw-1.0.14.tar.bz2
md5sum = a121ce2f9d83c633a0e3f2b74be246d5
pre-configure =
${autoconf:location}/bin/autoreconf -i -I ${libtool:location}/share/aclocal -I ${xorg-util-macros:location}/share/aclocal -I${pkgconfig:location}/share/aclocal
environment =
PATH=${autoconf:location}/bin:${automake:location}/bin:${libtool:location}/bin:${pkgconfig:location}/bin:%(PATH)s
M4=${m4:location}/bin/m4
PKG_CONFIG_PATH=${libX11:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libXext:location}/lib/pkgconfig:${libXt:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libxmu:location}/lib/pkgconfig:${libICE:location}/lib/pkgconfig:${libSM:location}/lib/pkgconfig:${libXpm:location}/lib/pkgconfig
[xterm]
recipe = slapos.recipe.cmmi
url = https://invisible-mirror.net/archives/xterm/xterm-372.tgz
md5sum = 442115b649ec2d11f5664bded595cefe
configure-options =
--with-pcre
--with-freetype-config=${freetype:location}/bin/freetype-config
environment =
PATH=${pkgconfig:location}/bin:%(PATH)s
PKG_CONFIG_PATH=${libSM:location}/lib/pkgconfig:${libICE:location}/lib/pkgconfig:${libICE:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libX11:pkg_config_depends}:${libXext:location}/lib/pkgconfig:${libXt:location}/lib/pkgconfig:${xproto:location}/lib/pkgconfig:${libXaw:location}/lib/pkgconfig:${libXpm:location}/lib/pkgconfig:${libxmu:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig
CFLAGS=-I${ncurses:location}/include -I${libX11:location}/include -I${libXt:location}/include -I${xproto:location}/include -I${libXaw:location}/include -I${libxmu:location}/include
LDFLAGS=-L${ncurses:location}/lib -Wl,-rpath=${ncurses:location}/lib -L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libXt:location}/lib -L${libICE:location}/lib -L${libXext:location}/lib -L${libXaw:location} -L${libSM:location}/lib
......@@ -23,21 +23,21 @@ eggs = ${zodbtools:egg}[test]
# env.sh for zodbtools's python to be on $PATH.
[zodbtools-env.sh]
recipe = slapos.recipe.template:jinja2
rendered = ${buildout:directory}/${:_buildout_section_name_}
template = inline:
recipe = slapos.recipe.template
output = ${buildout:directory}/${:_buildout_section_name_}
inline =
export PS1="(zodbtools-env) $PS1"
export PATH=${buildout:bin-directory}:$PATH
# instance to run nxdtest.
[instance.cfg]
<= jinja2-template
template = inline:
inline =
[buildout]
extends = ${nxdtest-instance.cfg:rendered}
extends = ${nxdtest-instance.cfg:output}
[runTestSuite]
env.sh = ${zodbtools-env.sh:rendered}
env.sh = ${zodbtools-env.sh:output}
workdir = ${zodbtools-repository:location}
......
......@@ -24,7 +24,7 @@ Here is an example of a section to add in your software.cfg :
openoffice-port = 1235
ooo-binary-path = ${directory:libreoffice-bin}/program
environment =
FONTCONFIG_FILE = $${fontconfig-conf:rendered}
FONTCONFIG_FILE = $${fontconfig-conf:output}
PATH = ${binary-link:target-directory}
ooo-uno-path = ${directory:libreoffice-bin}/basis-link/program
......
......@@ -46,8 +46,8 @@ md5sum = ae4a0043414336a521b524d9c95f1c68
[template-pullrdiffbackup]
filename = instance-pullrdiffbackup.cfg.in
md5sum = 45a4faa217ea5b83ecf271791e1632dd
md5sum = 931038cfa23216af1628b960a2e10de6
[template]
filename = instance.cfg.in
md5sum = 3df515def97f1e8a9f181514ae6ef03f
md5sum = 974e21f30669e1b83e1e0cd8def0adc3
......@@ -42,7 +42,6 @@ plugin = $${:etc}/plugin
recipe = slapos.recipe.template
url = ${template-dcron-service:output}
output = $${directory:services}/crond
mode = 0700
logfile = $${directory:log}/crond.log
#################################
......@@ -122,7 +121,6 @@ config-statistic_name = {{ '$${' ~ slave_reference }}-backup-script:statistic_na
recipe = slapos.recipe.template
url = ${template-backup-script:output}
output = $${directory:backupscript}/$${:_buildout_section_name_}
mode = 0700
datadirectory = {{ '$${' ~ slave_reference }}-backup-directory:directory}
sshkey = {{ '$${' ~ slave_reference }}-backup-private_key:key}
connection = {{ connection }}
......@@ -140,7 +138,6 @@ statistic_log = $${directory:statistic}/$${:statistic_name}
recipe = slapos.recipe.template
url = ${template-crontab-line:output}
output = $${directory:cron-lines}/$${:_buildout_section_name_}
mode = 0600
script = {{ '$${' ~ slave_reference }}-backup-script:output}
frequency = {{ frequency }}
{% do crontab_line_list.append("$${%s-backup-crontab-line:output}" % slave_reference) -%}
......@@ -155,14 +152,12 @@ frequency = {{ frequency }}
recipe = slapos.recipe.template
url = ${template-update-rss-script:output}
output = $${directory:etc}/$${:_buildout_section_name_}
mode = 0700
global_rss = $${slap-connection:computer-id}-$${slap-connection:partition-id}.rss
[update-rss-crontab-line]
recipe = slapos.recipe.template
url = ${template-crontab-line:output}
output = $${directory:cron-lines}/$${:_buildout_section_name_}
mode = 0600
script = $${update-rss-script:output}
frequency = */5 * * * *
{% do crontab_line_list.append("$${update-rss-crontab-line:output}") -%}
......@@ -186,8 +181,7 @@ command = ${coreutils-output:cat} ${template-crontab:output} {{ crontab_line_lis
recipe = slapos.recipe.template
url = ${template-nginx-service:output}
output = $${directory:services}/nginx
mode = 0700
virtual-depends =
virtual-depends =
$${nginx-configuration:ip}
[nginx-listen-promise]
......@@ -201,7 +195,6 @@ config-port = $${nginx-configuration:port}
recipe = slapos.recipe.template
url = ${template-nginx-configuration:output}
output = $${directory:etc}/nginx.cfg
mode = 0600
access_log = $${directory:log}/nginx-access.log
error_log = $${directory:log}/nginx-error.log
ip = {{ partition_ipv6 }}
......@@ -224,7 +217,7 @@ private-path-list +=
# Add parts generated by template
[buildout]
extends =
${monitor-template:rendered}
${monitor-template:output}
parts =
......
......@@ -8,8 +8,8 @@ offline = true
[dynamic-template-pullrdiffbackup]
recipe = slapos.recipe.template:jinja2
template = ${template-pullrdiffbackup:output}
rendered = $${buildout:parts-directory}/$${:_buildout_section_name_}/$${:filename}
url = ${template-pullrdiffbackup:output}
output = $${buildout:parts-directory}/$${:_buildout_section_name_}/$${:filename}
filename = instance-pullrdiffbackup.cfg
extensions = jinja2.ext.do
context =
......@@ -20,7 +20,7 @@ context =
[switch-softwaretype]
recipe = slapos.cookbook:switch-softwaretype
RootSoftwareInstance = $${:pullrdiffbackup}
pullrdiffbackup = dynamic-template-pullrdiffbackup:rendered
pullrdiffbackup = dynamic-template-pullrdiffbackup:output
[slap-configuration]
# Fetches parameters defined in SlapOS Master for this instance.
......
......@@ -41,49 +41,41 @@ eggs =
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[template-nginx-configuration]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[template-dcron-service]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[template-backup-script]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[template-crontab-line]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[template-crontab]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[status2rss]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
[template-update-rss-script]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/${:filename}
mode = 0644
##########################################################
# Buildout instance.cfg templates
......@@ -92,13 +84,11 @@ mode = 0644
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/template-pullrdiffbackup.cfg
mode = 0644
[template]
recipe = slapos.recipe.template
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/template.cfg
mode = 0644
[versions]
gunicorn = 19.1.1
# THIS IS NOT A BUILDOUT FILE, despite purposedly using a compatible syntax.
# The only allowed lines here are (regexes):
# - "^#" comments, copied verbatim
# - "^[" section beginings, copied verbatim
# - lines containing an "=" sign which must fit in the following categorie.
# - "^\s*filename\s*=\s*path\s*$" where "path" is relative to this file
# Copied verbatim.
# - "^\s*hashtype\s*=.*" where "hashtype" is one of the values supported
# by the re-generation script.
# Re-generated.
# - other lines are copied verbatim
# Substitution (${...:...}), extension ([buildout] extends = ...) and
# section inheritance (< = ...) are NOT supported (but you should really
# not need these here).
[instance]
filename = instance.cfg.in
md5sum = c4079d70ab3268234651bf6c36234b2f
[template-instance-beremiz]
filename = instance-beremiz.cfg.jinja2.in
md5sum = 51071494633f4ffba700baf935dc6955
[template-instance-beremiz-test]
filename = instance-beremiz-test.cfg.jinja2.in
md5sum = 6049681908c5619d94499a6f4f224045
[template-fluxbox-menu.in]
filename = fluxbox-menu.in
md5sum = 09560314eae0225b6085f8626f1a603a
[begin] (Fluxbox)
[encoding] {UTF-8}
[exec] (Beremiz IDE) { {{ beremiz_bin }} }
[exec] (Terminal) { {{ xterm_bin }} }
[submenu] (Fluxbox menu)
[config] (Configure)
[submenu] (System Styles) {Choose a style...}
[stylesdir] ({{ fluxbox_location }}/share/fluxbox/styles)
[end]
[submenu] (User Styles) {Choose a style...}
[stylesdir] (~/.fluxbox/styles)
[end]
[workspaces] (Workspace List)
[commanddialog] (Fluxbox Command)
[reconfig] (Reload config)
[restart] (Restart)
[exec] (About) {(fluxbox -v; fluxbox -info | sed 1d) | xmessage -file - -center}
[separator]
[exit] (Exit)
[end]
[endencoding]
[end]
[directory]
tests = ${:srv}/tests
[xserver]
display-num = 42
resolution = 1920x1080x24
[wmctrl]
recipe = slapos.cookbook:wrapper
command-line = {{ wmctrl_bin }}
wrapper-path = ${directory:bin}/wmctrl
environment =
XORG_LOCK_DIR=${xserver:lock-dir}
DISPLAY=${xserver:display}
[xdotool]
recipe = slapos.cookbook:wrapper
command-line = {{ xdotool_bin }}
wrapper-path = ${directory:bin}/xdotool
environment =
XORG_LOCK_DIR=${xserver:lock-dir}
DISPLAY=${xserver:display}
[runTestSuite]
env.sh = ${beremiz-env.sh:output}
workdir = {{ nxdtest_dir }}
[beremiz-tests]
recipe = slapos.recipe.template
inline =
#!/bin/sh -e
cd {{ beremiz_location }}/tests
make test_dir=${directory:tests} xserver_command='echo "Using ${xserver:display} on Slapos X Server !";' "$@"
output = ${directory:bin}/beremiztest
[sikulix]
recipe = slapos.cookbook:wrapper
command-line = {{ sikulix_bin }} -v
wrapper-path = ${directory:bin}/sikulix
environment =
JAVA_TOOL_OPTIONS=-Duser.home=${buildout:directory} -Djava.io.tmpdir=${directory:tmp}
[libopencv_java430.so]
recipe = plone.recipe.command
opencv-link = ${buildout:directory}/.Sikulix/SikulixLibs/libopencv_java430.so
# We run sikulix with a random not existing projet so it will initialise all files
# and extract libopencv_java430.so from jar. We can then replace it with slapos
# compiled lib which solves GLIBC issues (version `GLIBC_2.27' not found).
command =
LINK=${:opencv-link}
if [ ! -e "$LINK" ]; then
${sikulix:wrapper-path} -r not_found_for_slapos.sikulix > /dev/null 2>&1 || true
fi
rm -f $LINK
ln -sf {{ opencv_location }}/lib/libopencv_java430.so $LINK
update-command = ${:command}
stop-on-error = true
[buildout]
extends =
{{ instance_nxdtest }}
{{ instance_beremiz }}
parts +=
sikulix
wmctrl
xdotool
beremiz-tests
runTestSuite
libopencv_java430.so
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
{% set part_list = [] -%}
{% set ipv6 = (ipv6 | list)[0] -%}
{% set ipv4 = (ipv4 | list)[0] -%}
[directory]
recipe = slapos.cookbook:mkdirectory
etc = ${buildout:directory}/etc
bin = ${buildout:directory}/bin
srv = ${buildout:directory}/srv
var = ${buildout:directory}/var
tmp = ${buildout:directory}/tmp
log = ${:var}/log
vnc = ${buildout:directory}/.vnc
scripts = ${:etc}/run
services = ${:etc}/service
promise = ${:etc}/promise
ssl = ${:etc}/ssl
auth = ${:tmp}/auth
workdir = ${:srv}/workdir
framebuffer = ${:srv}/framebuffer
fluxbox = ${buildout:directory}/.fluxbox
[gen-certificate]
recipe = plone.recipe.command
command = "{{ openssl_bin }}" req -newkey rsa -batch -new -x509 -days 3650 -nodes -keyout "${:key-file}" -out "${:cert-file}"
stop-on-error = true
cert-file = ${directory:ssl}/beremiz.crt
key-file = ${directory:ssl}/beremiz.key
[novnc-instance]
recipe = slapos.cookbook:novnc
path = ${directory:bin}/novnc
ip = {{ ipv6 }}
port = 6080
vnc-ip = {{ ipv4 }}
vnc-port = ${x11vnc:port}
novnc-location = {{ novnc_location }}
websockify-path = {{ websockify_bin }}
ssl-key-path = ${gen-certificate:key-file}
ssl-cert-path = ${gen-certificate:cert-file}
[websockify-sighandler]
recipe = slapos.cookbook:signalwrapper
wrapper-path = ${directory:bin}/websockify-sighandler
wrapped-path = ${novnc-instance:path}
[websockify-sighandler-service]
recipe = slapos.cookbook:wrapper
command-line = ${websockify-sighandler:wrapper-path}
wrapper-path = ${directory:services}/websockify
hash-existing-files = ${buildout:directory}/software_release/buildout.cfg
[novnc-promise]
<= monitor-promise-base
promise = check_socket_listening
name = novnc_promise.py
config-host = ${novnc-instance:ip}
config-port = ${novnc-instance:port}
[x11vnc]
recipe = slapos.cookbook:wrapper
port = 5901
command-line = {{ x11vnc_bin }} -forever -display ${xserver:display} -ncache 10
-noxdamage -rfbport ${:port} -no6 -noipv6 -reopen -o ${directory:log}/x11vnc.log
-usepw -rfbauth ${x11vnc-passwd:passfile} -desktop BeremizVNC
-listen {{ ipv4 }} -xkb
wrapper-path = ${directory:services}/x11vnc
hash-existing-files = ${buildout:directory}/software_release/buildout.cfg
environment =
XORG_LOCK_DIR=${directory:run}
wait-for-files =
${xserver:lock-file}
[x11vnc-listen-promise]
<= monitor-promise-base
promise = check_socket_listening
name = x11vnc_listening.py
config-host = {{ ipv4 }}
config-port = ${x11vnc:port}
[random-password]
recipe = slapos.cookbook:generate.password
storage-path = ${directory:etc}/.passwd
bytes = 8
[x11vnc-passwd]
recipe = slapos.recipe.template
passfile = ${directory:vnc}/passwd
inline =
#!/bin/sh -e
if [ -s "${:passfile}" ]; then
echo "Password initialized.";
else
chmod 700 $(dirname ${:passfile});
{{ x11vnc_bin }} -storepasswd ${random-password:passwd} ${:passfile};
fi
output = ${directory:bin}/x11vnc_passwd
[generate-vnc-password]
recipe = plone.recipe.command
stop-on-error = true
command = ${x11vnc-passwd:output}
update-command = ${:command}
# Generate a fonts.conf file.
[font-config]
recipe = slapos.recipe.template:jinja2
url = {{ font_config_tmplt }}
output = ${directory:etc}/fonts.conf
context =
key cachedir :cache-dir
key fonts :fonts
key includes :includes
cache-dir =
${directory:etc}/.fontconfig.cache
fonts =
{{ font_dejavu }}
{{ font_liberation }}
includes =
{{ font_config_loc }}/etc/fonts/conf.d
[xserver]
recipe = slapos.cookbook:wrapper
command-line = {{ xvfb_bin }} ${:display} -screen 0 ${:resolution}x24
-fbdir ${directory:framebuffer}
wrapper-path = ${directory:services}/xserver
hash-existing-files = ${buildout:directory}/software_release/buildout.cfg
environment =
XORG_LOCK_DIR=${:lock-dir}
FONTCONFIG_FILE=${font-config:output}
display-num = 0
display = :${:display-num}
resolution = {{ slapparameter_dict.get('screen-resolution', '1280x1024') }}
lock-dir = ${directory:run}
lock-file = ${:lock-dir}/.X${:display-num}-lock
[xserver-promise]
recipe = slapos.cookbook:wrapper
wrapper-path = ${directory:promise}/xserver-is-up
command-line = bash -c "[ -S ${xserver:lock-dir}/.X11-unix/X${xserver:display-num} ]"
[fluxbox-menu]
recipe = slapos.recipe.template:jinja2
url = {{ fluxbox_menu }}
output = ${directory:fluxbox}/menu
context =
key beremiz_bin beremiz-x11:output
key xterm_bin xterm:output
raw fluxbox_location {{ fluxbox_location }}
[fluxbox-toolbar]
recipe = plone.recipe.command
command =
if [ ! -s "${directory:fluxbox}/init" ]; then
echo "session.screen0.toolbar.placement: TopCenter" > ${directory:fluxbox}/init;
fi
[fluxbox-bin]
recipe = slapos.cookbook:wrapper
command-line = {{ fluxbox_location }}/bin/fluxbox -display ${xserver:display}
wrapper-path = ${directory:bin}/fluxbox
environment =
HOME=${buildout:directory}
XORG_LOCK_DIR=${xserver:lock-dir}
FONTCONFIG_FILE=${font-config:output}
LANG=C.UTF-8
LC_ALL=C.UTF-8
depends =
${fluxbox-menu:recipe}
${fluxbox-toolbar:recipe}
[fluxbox]
recipe = slapos.cookbook:wrapper
command-line = ${fluxbox-bin:wrapper-path} -log ${directory:log}/fluxbox.log
wrapper-path = ${directory:services}/fluxbox
[beremiz-env.sh]
recipe = slapos.recipe.template
inline =
export LD_LIBRARY_PATH={{ mesa_location }}/lib
export PATH=${directory:bin}:{{ git_bin_dir }}:{{ autoconf_bin }}:{{ automake_bin }}:{{ matiec_location }}/bin:{{ bison_location }}/bin:{{ flex_location }}/bin:{{ bin_directory }}:{{ gcc_location }}/bin:$PATH
export XDG_DATA_DIR={{ gtk3_location }}/share
export GSETTINGS_SCHEMA_DIR={{ gtk3_location }}/share/glib-2.0/schemas
export FONTCONFIG_FILE=${font-config:output}
export DISPLAY=${xserver:display}
export XORG_LOCK_DIR=${xserver:lock-dir}
export LANG=C.UTF-8
export LC_ALL=C.UTF-8
export BEREMIZPYTHONPATH={{ python_bin }}
output = ${directory:bin}/beremiz-env.sh
[beremiz-x11]
recipe = slapos.recipe.template
inline =
#!/bin/sh -e
. ${beremiz-env.sh:output}
# wait a bit for xserver
sleep 1
exec {{ python_bin }} {{ beremiz_location }}/Beremiz.py
output = ${directory:bin}/beremiz-x11
[xterm]
recipe = slapos.recipe.template
inline =
#!/bin/sh -e
. ${beremiz-env.sh:output}
export SHELL={{bash_bin}}
exec {{ xterm_bin }}
output = ${directory:bin}/xterm
[request-vnc-frontend]
<= slap-connection
recipe = slapos.cookbook:requestoptional
slave = true
config-https-only = True
config-type = websocket
config-url = https://[${novnc-instance:ip}]:${novnc-instance:port}
return = secure_access domain
software-url = http://git.erp5.org/gitweb/slapos.git/blob_plain/HEAD:/software/apache-frontend/software.cfg
software-type = RootSoftwareInstance
name = Beremiz VNC
[publish-connection-information]
<= monitor-publish
recipe = slapos.cookbook:publish
backend-url = https://[${novnc-instance:ip}]:${novnc-instance:port}/vnc.html?host=[${novnc-instance:ip}]&port=${novnc-instance:port}&encrypt=1
url = ${request-vnc-frontend:connection-secure_access}/vnc.html?host=${request-vnc-frontend:connection-domain}&port=443&encrypt=1
vnc-password = ${random-password:passwd}
[buildout]
extends =
{{ template_logrotate }}
{{ ' ' ~ template_monitor }}
parts =
monitor-base
fluxbox
novnc-promise
xserver-promise
x11vnc-listen-promise
beremiz-x11
websockify-sighandler-service
request-vnc-frontend
generate-vnc-password
publish-connection-information
eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true
[buildout]
parts = switch-softwaretype
eggs-directory = {{ buildout_egg_directory }}
develop-eggs-directory = {{ buildout_develop_directory }}
[switch-softwaretype]
recipe = slapos.cookbook:switch-softwaretype
default = template-{{ instance_template_type }}:output
RootSoftwareInstance = ${:default}
test = template-beremiz-test:output
[slap-configuration]
recipe = slapos.cookbook:slapconfiguration.serialised
computer = ${slap-connection:computer-id}
partition = ${slap-connection:partition-id}
url = ${slap-connection:server-url}
key = ${slap-connection:key-file}
cert = ${slap-connection:cert-file}
[jinja2-template-base]
recipe = slapos.recipe.template:jinja2
output = ${buildout:directory}/${:filename}
extensions = jinja2.ext.do
extra-context =
context =
key develop_eggs_directory buildout:develop-eggs-directory
key buildout_directory buildout:directory
key eggs_directory buildout:eggs-directory
key ipv4 slap-configuration:ipv4
key ipv6 slap-configuration:ipv6
key global_ipv4_prefix network-information:global-ipv4-network
key slapparameter_dict slap-configuration:configuration
key computer_id slap-configuration:computer
raw bin_directory {{ bin_directory }}
raw template_monitor {{ template_monitor_cfg }}
raw template_logrotate {{ logrotate_cfg }}
raw logrotate_cfg {{ logrotate_cfg }}
raw python_bin {{ python_bin }}
${:extra-context}
[template-beremiz]
<= jinja2-template-base
url = {{ template_instance_beremiz }}
filename = instance-beremiz.cfg
extra-context =
raw autoconf_bin {{ autoconf_location }}/bin
raw automake_bin {{ automake_location }}/bin
raw bash_bin {{ bash_location }}/bin/bash
raw beremiz_location {{ beremiz_location }}
raw bison_location {{ bison_location }}
raw flex_location {{ flex_location }}
raw fluxbox_location {{ fluxbox_location }}
raw fluxbox_menu {{ template_fluxbox_menu }}
raw font_config_loc {{ fontconfig_location }}
raw font_config_tmplt {{ template_fonts_conf_target }}
raw font_dejavu {{ font_dejavu }}
raw font_liberation {{ font_liberation }}
raw gcc_location {{ gcc_location }}
raw git_bin_dir {{ git_location }}
raw gtk3_location {{ gtk3_location }}
raw matiec_location {{ matiec_location }}
raw mesa_location {{ mesa_location }}
raw novnc_location {{ novnc_location }}
raw openssl_bin {{ openssl_location }}/bin/openssl
raw websockify_bin {{ bin_directory }}/websockify
raw x11vnc_bin {{ x11vnc_location }}/bin/x11vnc
raw xvfb_bin {{ xserver_location }}/bin/Xvfb
raw xterm_bin {{ xterm_location }}/bin/xterm
[template-beremiz-test]
<= jinja2-template-base
url = {{ template_instance_beremiz_test }}
filename = instance-beremiz-test.cfg
extra-context =
key instance_beremiz template-beremiz:output
raw beremiz_location {{ beremiz_location }}
raw sikulix_bin {{ sikulix_bin }}
raw xvfb_bin {{ xserver_location }}/bin/Xvfb
raw wmctrl_bin {{ wmctrl_location }}/bin/wmctrl
raw instance_nxdtest {{ nxdtest_template }}
raw xdotool_bin {{ xdotool_location }}/bin/xdotool
raw opencv_location {{ opencv_location }}
raw nxdtest_dir {{ buildout_directory }}
[buildout]
extends =
../../stack/slapos.cfg
../../component/autoconf/buildout.cfg
../../component/flex/buildout.cfg
../../component/fonts/buildout.cfg
../../component/noVNC/buildout.cfg
../../component/nginx/buildout.cfg
../../component/lxml-python/buildout.cfg
../../component/numpy/buildout.cfg
../../component/numpy/openblas.cfg
../../component/matplotlib/buildout.cfg
../../component/wxpython/buildout.cfg
../../component/matiec/buildout.cfg
../../component/mesa/buildout.cfg
../../component/libvnc/buildout.cfg
../../component/open62541/buildout.cfg
../../component/sikuli/buildout.cfg
../../component/fluxbox/buildout.cfg
../../component/pygolang/buildout.cfg
../../component/xorg/buildout.cfg
../../component/pytest/buildout.cfg
../../component/opencv/buildout.cfg
../../component/xterm/buildout.cfg
../../stack/monitor/buildout.cfg
../../stack/nxdtest.cfg
./buildout.hash.cfg
parts +=
slapos-cookbook
beremiz-eggs
open62541
Modbus
xterm
instance
[gcc]
# Always build GCC for Fortran (see openblas).
max_version = 0
[python]
# Beremiz works with python2.7 for now, the code is not yet upgraded for python3
part = python2.7
[open62541]
# Beremiz need it to be in folder parts/open62541
# as Beremiz search for open62541 to BEREMIZ_PATH/../open62541
shared = false
post-install =
mkdir -p @@LOCATION@@/build/bin
ln -sf @@LOCATION@@/lib/libopen62541.a @@LOCATION@@/build/bin/libopen62541.a
[twisted]
recipe = zc.recipe.egg:custom
egg = twisted
setup-eggs =
six
pathlib
incremental
[beremiz-eggs]
recipe = zc.recipe.egg
eggs =
${wxPython:egg}
${python-cryptography:egg}
${lxml-python:egg}
${matplotlib:egg}
future
websockify
zeroconf2
enum34
pyro
${twisted:egg}
nevow
autobahn
pycountry
fonttools
${beremiz-setup:egg}
opcua
msgpack
[python-interpreter]
eggs +=
${beremiz-eggs:eggs}
[beremiz]
recipe = slapos.recipe.build:download-unpacked
# download beremiz at revision bc72db1aa49fb5deabc950ed587772d027733a26
url = https://github.com/beremiz/beremiz/archive/bc72db1aa49fb5deabc950ed587772d027733a26.tar.gz
md5sum = 9ae7a55d4f2e673cbc8d2c4528e069b9
[beremiz-setup]
recipe = zc.recipe.egg:develop
egg = beremiz
setup = ${beremiz:location}
[download-template]
recipe = slapos.recipe.build:download
url = ${:_profile_base_location_}/${:filename}
[instance]
recipe = slapos.recipe.template:jinja2
output = ${buildout:directory}/instance.cfg
url = ${:_profile_base_location_}/${:filename}
python-bin = ${buildout:bin-directory}/${python-interpreter:interpreter}
type = beremiz
context =
key autoconf_location autoconf:location
key automake_location automake:location
key bash_location bash:location
key beremiz_location beremiz-setup:setup
key bin_directory buildout:bin-directory
key buildout_egg_directory buildout:eggs-directory
key buildout_develop_directory buildout:develop-eggs-directory
key buildout_directory buildout:directory
key template_fluxbox_menu template-fluxbox-menu.in:target
key template_fonts_conf_target template-fonts-conf:output
key template_monitor_cfg monitor2-template:output
key template_instance_beremiz template-instance-beremiz:target
key template_instance_beremiz_test template-instance-beremiz-test:target
key template_logrotate template-logrotate-base:output
key fontconfig_location fontconfig:location
key font_dejavu dejavu-fonts:location
key font_liberation liberation-fonts:location
key logrotate_cfg template-logrotate-base:output
key bison_location bison:location
key flex_location flex:location
key fluxbox_location fluxbox:location
key gcc_location gcc:prefix
key git_location git:location
key gtk3_location gtk-3:location
key instance_template_type :type
key matiec_location matiec:location
key mesa_location mesa:location
key novnc_location noVNC:location
key nxdtest_template nxdtest-instance.cfg:output
key python_bin :python-bin
key opencv_location opencv:location
key openssl_location openssl:location
key sikulix_bin sikuli:output
key xdotool_location xdotool:location
key xserver_location xserver:location
key xterm_location xterm:location
key x11vnc_location x11vnc:location
key wmctrl_location wmctrl:location
[template-instance-beremiz]
<= download-template
output = ${buildout:directory}/instance-beremiz.cfg.jinja2
[template-instance-beremiz-test]
<= download-template
output = ${buildout:directory}/instance-beremiz-test.cfg.jinja2
[template-fluxbox-menu.in]
<= download-template
output = ${buildout:directory}/fluxbox-menu.in
[versions]
Pillow = 6.2.2
matplotlib = 2.2.5
kiwisolver = 1.1.0
cycler = 0.10.0
websockify = 0.9.0
Pyro = 3.16
zeroconf2 = 0.19.2
cython = 0.29.24
sphinx = 1.8.5
doc2dash = 2.3.0
Twisted = 20.3.0
autobahn = 19.11.2
attrs = 19.2.0
Automat = 0.3.0
zope.interface = 4.4.2
Nevow = 0.14.5
PyHamcrest = 2.0.3
constantly = 15.1.0
hyperlink = 21.0.0
incremental = 21.3.0
future = 0.18.2
pycountry = 18.12.8
fonttools = 3.44.0
idna = 2.10
PyHamcrest = 2.0.2
txaio = 18.8.1
characteristic = 14.3.0
typing = 3.10.0.0
ifcfg = 0.22
opcua = 0.98.13
futures = 3.3.0
trollius = 2.2.1
pathlib = 1.0.1
ddt = 1.4.4
This diff is collapsed.
Beremiz IDE tests Software Release
This diff is collapsed.
This diff is collapsed.
......@@ -50,12 +50,12 @@ eggs = click
[instance-profile]
recipe = slapos.recipe.template:jinja2
template = ${:_profile_base_location_}/${:filename}
rendered = ${buildout:directory}/instance.cfg
url = ${:_profile_base_location_}/${:filename}
output = ${buildout:directory}/instance.cfg
extensions = jinja2.ext.do
context =
section buildout buildout
raw template_monitor ${monitor2-template:rendered}
raw template_monitor ${monitor2-template:output}
# md5sum is fetched from buildout.hash.cfg and can be recalculated automatically by
# calling update-hash
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
[instance]
filename = instance.cfg
md5sum = ddd17fab15afa5a27cdc0761fbc8f34c
md5sum = a4e19280bc672cc98e0fef241c8439ba
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment