diff --git a/component/gtk-3/buildout.cfg b/component/gtk-3/buildout.cfg index 1db8ffba737b32cc988d724d35b11323f3785777..ddb3f1b563ddc76129549cf4af982b0430cd5431 100644 --- a/component/gtk-3/buildout.cfg +++ b/component/gtk-3/buildout.cfg @@ -9,6 +9,9 @@ extends = ../pcre/buildout.cfg ../perl/buildout.cfg ../perl-XML-Parser/buildout.cfg + ../meson/buildout.cfg + ../nodejs/buildout.cfg + ../ninja/buildout.cfg ../xorg/buildout.cfg [at-spi2-core] @@ -33,6 +36,18 @@ environment = PATH=${intltool:location}/bin:${pkgconfig:location}/bin:${xz-utils:location}/bin:%(PATH)s PKG_CONFIG_PATH=${atk:location}/lib/pkgconfig:${at-spi2-core:location}/lib/pkgconfig:${dbus:location}/lib/pkgconfig:${glib:location}/lib/pkgconfig:${pcre:location}/lib/pkgconfig +[gtk-materia-theme] +recipe = slapos.recipe.cmmi +url = https://github.com/nana-4/materia-theme/archive/eb83bc174fad52cba9541efa78587664ca19542c.tar.gz +md5sum = 7072e92f8395770f0ebb43403bd754cc +configure-command = + meson _build -Dprefix="@@LOCATION@@" -Dcolors=default,light,dark -Dsizes=default,compact +make-targets = +make-binary = meson install -C _build + +environment = + PATH=${ninja:location}/bin:${meson:location}/bin:${glib:location}/bin:${nodejs:location}/bin:%(PATH)s + [gtk-3] recipe = slapos.recipe.cmmi shared = true diff --git a/component/xorg/buildout.cfg b/component/xorg/buildout.cfg index 8babeec1320feba7ae826dc8c4ed861490630485..c0dddb5d85a96b9548f27bd4f83615c2fb3607e4 100644 --- a/component/xorg/buildout.cfg +++ b/component/xorg/buildout.cfg @@ -589,6 +589,16 @@ environment = CPPFLAGS=-I${libXt:location}/include LDFLAGS=-L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -L${libxkbfile:location}/lib -Wl,-rpath=${libxkbfile:location}/lib +[xdpyinfo] +recipe = slapos.recipe.cmmi +url = https://www.x.org/releases/individual/app/xdpyinfo-1.3.3.tar.xz +md5sum = f67116760888f2e06486ee3d179875d2 +environment = + PATH=${pkgconfig:location}/bin:%(PATH)s + PKG_CONFIG_PATH=${xorg-util-macros:location}/share/pkgconfig:${xproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${xextproto:location}/lib/pkgconfig:${libX11:location}/lib/pkgconfig:${libXext:location}/lib/pkgconfig:${libXtst:location}/lib/pkgconfig:${recordproto:location}/lib/pkgconfig:${kbproto:location}/lib/pkgconfig:${libXi:location}/lib/pkgconfig:${libXi:pkg_config_depends} + CPPFLAGS=-I${libXt:location}/include + LDFLAGS=-L${libX11:location}/lib -Wl,-rpath=${libX11:location}/lib -Wl,-rpath=${libXi:location}/lib -Wl,-rpath=${libXtst:location}/lib -Wl,-rpath=${libXext:location}/lib -Wl,-rpath=${libXau:location}/lib -Wl,-rpath=${libXdmcp:location}/lib + [xserver] # Adds Xvfb functionnality recipe = slapos.recipe.cmmi diff --git a/software/beremiz-ide/buildout.hash.cfg b/software/beremiz-ide/buildout.hash.cfg index 73ab9d5aa6683796d7a2bcdaf95648ad00489608..c99c1edcdc3413c253484422c8008302eff24cd6 100644 --- a/software/beremiz-ide/buildout.hash.cfg +++ b/software/beremiz-ide/buildout.hash.cfg @@ -15,15 +15,15 @@ [instance] filename = instance.cfg.in -md5sum = e8aae0fe3a8bc3f006b8638ed326bbcb +md5sum = ed2bd38b78f2a66f474205249f6e6f2c [template-instance-beremiz] filename = instance-beremiz.cfg.jinja2.in -md5sum = 2b990148e527117bcfb366f8b700c807 +md5sum = bca63fc8943e7c5fa7dd43841e49bf95 [template-instance-beremiz-test] filename = instance-beremiz-test.cfg.jinja2.in -md5sum = a2fa2b9d3a225a1dd71db67bd4fea769 +md5sum = 2d6d892d1cc4a09c598fa14c721069b6 [template-fluxbox-menu.in] filename = fluxbox-menu.in diff --git a/software/beremiz-ide/instance-beremiz-test.cfg.jinja2.in b/software/beremiz-ide/instance-beremiz-test.cfg.jinja2.in index 82a238faee828cd9306f19862702db308dd1dcc9..aa8e83e3ccf840872de4af8bb6a88f91fecedbfd 100644 --- a/software/beremiz-ide/instance-beremiz-test.cfg.jinja2.in +++ b/software/beremiz-ide/instance-beremiz-test.cfg.jinja2.in @@ -13,6 +13,12 @@ environment = XORG_LOCK_DIR=${xserver:lock-dir} DISPLAY=${xserver:display} +[enable-matieria-theme] +inline = + [Settings] + gtk-font-name=FreeSans,12 + gtk-theme-name=Materia + [xdotool] recipe = slapos.cookbook:wrapper command-line = {{ xdotool_bin }} @@ -24,9 +30,9 @@ environment = [beremiz-env.sh] # Add openssl needed to build matiec during tests inline += - #export OPENSSL_CRYPTO_LIBRARY={{ openssl_location }}/lib - #export OPENSSL_INCLUDE_DIR={{ openssl_location }}/include export OPENSSL_ROOT_DIR={{ openssl_location }} + export LDFLAGS=-L{{ openssl_location }}/lib + export TESSDATAPATH={{ tesseract_data }} [runTestSuite] env.sh = ${beremiz-env.sh:output} diff --git a/software/beremiz-ide/instance-beremiz.cfg.jinja2.in b/software/beremiz-ide/instance-beremiz.cfg.jinja2.in index c44b4df8dc12d58810221c9e774bd7b5d0432c47..792edf7ed270688e94859d839ea189682d93e958 100644 --- a/software/beremiz-ide/instance-beremiz.cfg.jinja2.in +++ b/software/beremiz-ide/instance-beremiz.cfg.jinja2.in @@ -11,6 +11,9 @@ var = ${buildout:directory}/var tmp = ${buildout:directory}/tmp log = ${:var}/log vnc = ${buildout:directory}/.vnc +themes = ${buildout:directory}/.themes +config = ${buildout:directory}/.config +gtk3-config = ${:config}/gtk-3.0 scripts = ${:etc}/run services = ${:etc}/service promise = ${:etc}/promise @@ -159,6 +162,21 @@ 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} ]" +[install-gtk-materia-theme] +recipe = plone.recipe.command +command = + cp -r {{ gtk_materia_theme }}/share/themes/* ${directory:themes}/ +update-command = ${:command} +stop-on-error = true + +[enable-matieria-theme] +recipe = slapos.recipe.template +inline = + [Settings] + gtk-font-name=FreeSans,10 + gtk-theme-name=Materia +output = ${directory:gtk3-config}/settings.ini + [fluxbox-menu] recipe = slapos.recipe.template:jinja2 url = {{ fluxbox_menu }} @@ -201,6 +219,7 @@ inline = export LD_LIBRARY_PATH={{ mesa_location }}/lib export PATH=${directory:bin}:{{ git_bin_dir }}:{{ cmake_bin }}:{{ 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 HOME=${buildout:directory} export GSETTINGS_SCHEMA_DIR={{ gtk3_location }}/share/glib-2.0/schemas export FONTCONFIG_FILE=${font-config:output} export DISPLAY=${xserver:display} @@ -208,6 +227,8 @@ inline = export LANG=C.UTF-8 export LC_ALL=C.UTF-8 export BEREMIZPYTHONPATH={{ python_bin }} + export OPCUA_DEFAULT_HOST={{ ipv4 }} + export BEREMIZ_LOCAL_HOST={{ ipv4 }} output = ${directory:bin}/beremiz-env.sh @@ -261,6 +282,8 @@ parts = novnc-promise xserver-promise x11vnc-listen-promise + enable-matieria-theme + install-gtk-materia-theme beremiz-x11 nginx-launcher nginx-graceful diff --git a/software/beremiz-ide/instance.cfg.in b/software/beremiz-ide/instance.cfg.in index 835a4d978f9fd1af34e5c995c268ef49e8ee769f..8265a08a017adcc9836276a3dccfdccc546bb521 100644 --- a/software/beremiz-ide/instance.cfg.in +++ b/software/beremiz-ide/instance.cfg.in @@ -61,6 +61,7 @@ extra-context = raw gcc_location {{ gcc_location }} raw git_bin_dir {{ git_location }} raw gtk3_location {{ gtk3_location }} + raw gtk_materia_theme {{ gtk_materia_theme}} raw matiec_location {{ matiec_location }} raw mesa_location {{ mesa_location }} raw nginx_executable {{ nginx_executable }} @@ -86,3 +87,4 @@ extra-context = raw opencv_location {{ opencv_location }} raw openssl_location {{ openssl_location }} raw nxdtest_dir {{ buildout_directory }} + raw tesseract_data {{ tesseract_location }}/share/tessdata diff --git a/software/beremiz-ide/software.cfg b/software/beremiz-ide/software.cfg index bd1bc81a01dba21677edafae94d6005dfd8a56dd..caf04fd6e4ab9bfaf4719b455c54eecf74c9afbf 100644 --- a/software/beremiz-ide/software.cfg +++ b/software/beremiz-ide/software.cfg @@ -22,6 +22,7 @@ extends = ../../component/xorg/buildout.cfg ../../component/pytest/buildout.cfg ../../component/opencv/buildout.cfg + ../../component/tesseract/buildout.cfg ../../component/xterm/buildout.cfg ../../stack/monitor/buildout.cfg ../../stack/nxdtest.cfg @@ -34,6 +35,7 @@ parts += Modbus xterm instance + xdpyinfo [gcc] # Always build GCC for Fortran (see openblas). @@ -86,6 +88,7 @@ eggs = ${beremiz-setup:egg} opcua msgpack + click [python-interpreter] eggs += @@ -93,9 +96,9 @@ eggs += [beremiz] recipe = slapos.recipe.build:download-unpacked -# download beremiz at revision caee3ad3b7bb2865c77328de5ffdaeec61dbf49f -url = https://github.com/beremiz/beremiz/archive/caee3ad3b7bb2865c77328de5ffdaeec61dbf49f.tar.gz -md5sum = 52f9407e1706cdecf01fabfc61090276 +# download beremiz from github +url = https://github.com/beremiz/beremiz/archive/a8efd2fee83733939a1fa48ea924bf7a7a5ef819.tar.gz +md5sum = 2a141b97047896bb9206c221aa56fd55 [beremiz-setup] recipe = zc.recipe.egg:develop @@ -139,6 +142,7 @@ context = key gcc_location gcc:prefix key git_location git:location key gtk3_location gtk-3:location + key gtk_materia_theme gtk-materia-theme:location key instance_template_type :type key matiec_location matiec:location key mesa_location mesa:location @@ -150,6 +154,7 @@ context = key opencv_location opencv:location key openssl_location openssl:location key sikulix_bin sikuli:output + key tesseract_location tesseract:location key xdotool_location xdotool:location key xserver_location xserver:location key xterm_location xterm:location @@ -205,3 +210,4 @@ futures = 3.3.0 trollius = 2.2.1 pathlib = 1.0.1 ddt = 1.4.4 +click = 7.1.2 diff --git a/software/beremiz-ide/test.cfg b/software/beremiz-ide/test.cfg index ac25154ad7b081830fa3ada382cc64c9ee854269..74a10613499451bed5b8fb012a210e227e384fc3 100644 --- a/software/beremiz-ide/test.cfg +++ b/software/beremiz-ide/test.cfg @@ -45,8 +45,10 @@ inline = #!/bin/sh -e cd ${beremiz-repository:location}/tests/ide_tests/ testlist=$(ls -d *.sikuli) + cd ${beremiz-repository:location}/tests/cli_tests/ + clitestlist=$(ls -d *.bash) rm -f ${:nxdtest} - for test in $testlist; do + for test in $(echo $testlist $clitestlist); do if [ -z "$test" ]; then continue; fi