GNU Xnee 3.19 (‘Lucia’) released

We are pleased to announce the availability of GNU Xnee 3.19

GNU Xnee is a suite of programs that can record, replay and distribute user actions under the X11 environment. Think of it as a robot that can imitate the job you just did. GNU Xnee can be used to:

  • Automate tests
  • Demonstrate programs
  • Distribute actions
  • Record and replay ‘macro’
  • Retype the content of a file

News in this release:

  • Support for pause/resume/quit when retyping file
  • Defaults to use data display for all X.org with minor version nr >= 3
  • New options:

–record-from-data-display,-rfdd
Record from data display. This option is experimental.

–record-from-control-display,-rfcd
Record from control display. This option is experimental.

Getting the Software

http://ftp.gnu.org/gnu/xnee/xnee-3.19.tar.gz

http://ftp.gnu.org/gnu/xnee/xnee-3.19.tar.gz.sig

or one of the mirror sites as found in:

http://www.gnu.org/prep/ftp.html

Checksums

md5sum:

560e8126950d8d4e7c30fc844d556482 xnee-3.19.tar.gz

cksum:

2693031014 1893109 xnee-3.19.tar.gz

About calling the release “Lucia”

In celebration of the Spanish flamenco guitarist Francisco Gustavo Sánchez Gomes (known as Paco de Lucía).

http://en.wikipedia.org/wiki/Paco_de_lucia

 

Advertisements

GNU Xnee 3.16 (‘No Show Jones’) released

We are pleased to announce the availability of GNU Xnee 3.16

GNU Xnee is a suite of programs that can record, replay and distribute
user actions under the X11 environment. Think of it as a robot that can
imitate the job you just did. GNU Xnee can be used to:
    Automate tests
    Demonstrate programs
    Distribute actions
    Record and replay 'macro'
    Retype the content of a file

Getting the Software

   ftp://ftp.gnu.org/gnu/xnee/xnee-3.16.tar.gz
   ftp://ftp.gnu.org/gnu/xnee/xnee-3.16.tar.gz.sig

or one of the mirror sites as found in:

   http://www.gnu.org/prep/ftp.html

Checksums

  md5sum:
d70f26e135ebf5b1a307f1434c451eaf xnee-3.16.tar.gz
  cksum:
368848631 1798348 xnee-3.16.tar.gz

New in this release

New features:

Gnee can record XInput events

* Fixed bugs:

Savannah:

Fedora:

https://bugzilla.redhat.com/show_bug.cgi?id=962456

And the name “No Show Jones”? It’s a tribute to one of my favorite singers of all time, George Jones. He passed away in April earlier this year. George earned his nickname from his habit of not showing up at shows.

Testing Searduino’s Debian specifics with VMM and Jenkins

Problem and solution

Searduino provides headers and libraries to program the Arduino boards. It would be stupid to rewrite the whole Arduino software so we’re of course using the Arduino source code. Currently the default way of building Searduino is to download (automatically done by Searduino) the Arduino source code from their download site and unpack that to a specific folder. This solution doesn’t work with Debian so we discussed a bit back and forth how to solve this.

The solution we reached was to add a configure option to make it possible to build Searduino from the Arduino source code as shipped with Debian’s Arduino package. Use it like this:

./configure --enable-debian-sources

Providing source code dist to Debian

Every night we’re building Searduino (yeah, autobuilds are back again) and provide source code dist (tar.gz) and binary versions for 32 and 64 bit GNU/Linux systems. These scripts are internal and look so ugly at the moment so there’s no way you will se them ;). To test the Debian specific option (–enable-debian-source) we’ve set up a dedicated build server (Debian, unstable, 64 bit) that downloads the source code dist file (.tar.gz) and builds and tests Searduino from that.

Testing the new option in the source code dist provided to Debian

We use Jenkins to do the tests of the Debian specific stuff. We’ve been trying out the two VirtualBox plugins but we never got it to work properly. So instead we started using VMM and now it works nice.

Searduino and GNU Xnee have a Jenkins site to automate builds:

http://dhcp2-pc213045.itu.chalmers.se:8080/

To build Searduino from a dist file using VMM in Jenkins we ceated a “a free-style software project” and added some “Execute shell” to do the building. The calls we do to build are:

/opt/vmm/bin/ats-client --start-client-headless Debian-unstable-64
/opt/vmm/bin/ats-client --wait-for-ssh Debian-unstable-64 300
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
       "rm -fr searduino-dist"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "mkdir searduino-dist"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist && wget http://129.16.213.45/searduino-build/dist/searduino-git-$(date '+%Y%m%d').tar.gz"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist && tar zxvf searduino-git-$(date '+%Y%m%d').tar.gz"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist && ln -s searduino-git-$(date '+%Y%m%d') latest"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist/latest && make -f Makefile.git"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 "export CFLAGS=\"-I/usr/lib/jvm/java-6-openjdk-amd64/include/\"; export CXXFLAGS=\"-I/usr/lib/jvm/java-6-openjdk-amd64/include/\"; cd searduino-dist/latest && ./configure --enable-debian-sources --prefix=/tmp/tmp-searduino-dist-debian"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist/latest && make"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist/latest && make check"
/opt/vmm/bin/ats-client --client-exec Debian-unstable-64 \
      "cd searduino-dist/latest && make install"
/opt/vmm/bin/ats-client --stop-client Debian-unstable-64

Results from test:

The trend seems to be ok. So we’re now finally able to say that Debain can ship Searduino.

Log file from a build we made today:

http://dhcp2-pc213045.itu.chalmers.se:8080/job/Searduino-debian-unstable-dist/12/consoleFull

Comments

The sun seems to be up. So we’re now finally able to say that Debain can ship Searduino. Also we’ve seen that it is possible to use VMM with Jenkins.

About VMM

VMM is a piece of software to make it easy to start, stop and use virtual machines/clients (currently supporting Qemu and VirtualBox).

GNU Xnee 3.15 (‘Shankar’) released

We are pleased to announce the availability of GNU Xnee 3.15

GNU Xnee is a suite of programs that can record, replay and distribute
user actions under the X11 environment. Think of it as a robot that can
imitate the job you just did. GNU Xnee can be used to:
    Automate tests
    Demonstrate programs
    Distribute actions
    Record and replay 'macro'
    Retype the content of a file

Getting the Software

   ftp://ftp.gnu.org/gnu/xnee/xnee-3.15.tar.gz
   ftp://ftp.gnu.org/gnu/xnee/xnee-3.15.tar.gz.sig

or one of the mirror sites as found in:

   http://www.gnu.org/prep/ftp.html

Checksums

  md5sum:
    32c8ac9f354741f03d7736383599984e  xnee-3.15.tar.gz

  cksum:
    3996773279 1776676 xnee-3.15.tar.gz

New in this release

  * Fixed bugs:

    Savannah:
      bug #36662: 2 extra lines, not really needed, printed to recorded log files
      bug #37895: pnee/data/pnee.server.in file missing in 3.14 tarball?

    address@hidden
      xnee patch for Red Hat Enterprise Linux

Why 'Shankar'?
 In December 2012 Ravi Shankar passed away. This is a way to pay tribute.

 

 

GNU Xnee 3.14 (‘Lord Pi’) released

We are pleased to announce the availability of GNU Xnee 3.14

GNU Xnee is a suite of programs that can record, replay and distribute  user actions under the X11 environment. Think of it as a robot that can imitate the job you just did. GNU Xnee can be used to:

  • Automate tests
  • Demonstrate programs
  • Distribute actions
  • Record and replay ‘macro’
  • Retype the content of a file

Getting the Software

http://ftp.gnu.org/gnu/xnee/xnee-3.14.tar.gz
http://ftp.gnu.org/gnu/xnee/xnee-3.14.tar.gz.sig

or one of the mirror sites as found in:

http://www.gnu.org/prep/ftp.html

Checksums

md5sum:

04d3256be296d624979940ac2c6b5e8b xnee-3.14.tar.gz

cksum:

3927134133 1772509 xnee-3.14.tar.gz

New in this release:

If XInput is present, record only XI events (discard core events).

Forced core replay is now done using XI events (if no core events are available).

* Fixed bugs:

Bug-xnee mailing list: “WARNING: Enough valuators … still not printing”

About calling the release “Lord Pi”

We’re still following the tradition to pay tribute to old heroes who have passed away. A while ago Jon Lord (Deep Purple among other bands) passed away. Even though Deep Purple never was one of my favorite bands, they and Jon still had an impact in my life. Listen to Stormbringer, Perfect stranger and Machine head and you’ll know why. Jon’s keyboard playing is a vital part of the Deep Purple sound. That explains the “Lord” part of “Lord Pi”. The “Pi” part is of course due to the version number “3.14”, which is the three first digits of Pi.

 

Searduino needs a gui

Do you want to write a gui front-end to Searduino?

 

About Searduino:

Searduino is made to ease and speed up development for the Arduino boards. In short, with Searduino you get

  • C/C++ interface – use C/C++ to program your Arduino boards
  • Makefiles – easy to use Makefiles for inclusion in your project
  • Stand alone program – build your Arduino code to run on your local computer instead
  • Simulator – run your Arduino code in a simulator to test it
  • Simulation API – write your own test cases in C/C++
  • Python simulation API – write your tests in Python
  • Arduino example (to C/C++) translation

About the gui

In a way searduino has a gui – We have been developing a gui written Python (pygtk) to make sure we write the underlying library in a way that makes it easy to develop a real gui. So there is a gui but no proper one. Anyhow, here’s a snapshot of the (non proper) Python gui:

Searduino's simulator GUI - written in PyGtk

 

We believe that the gui needs to be written in C/C++ and using a thread safe graphical toolkit. The speed which which the callbacks call the gui require as short path as possible from the source to the handler and as already mentioned that the toolkit is thread safe (the Arduin ocode is executed in a thread). There is however a threshold for max updates per second which can be used but we still believe that C/C++ is the best way – but don’t hesitate to contact us (see email address below) if you believe differently.

Want to join?

If you like creating guis and want to help out on Searduino – send an email to hesa -at- sandklef.com

Btw: the python gui was also used to test Searduino’s Python extension

 

This post was originally posted at: http://itupw185.itu.chalmers.se/searduino/