diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..98095e8 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,11 @@ +sudo: required +language: bash +services: + - docker + +before_install: + - docker build -t libyui-bindings-image . +script: + # the "libyui-travis" script is included in the base libyui/devel image + # see https://github.com/libyui/docker-devel/blob/master/libyui-travis + - docker run -it libyui-bindings-image libyui-travis diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..a304aef --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +# Use the libyui/devel image as the base +FROM libyui/devel + +RUN zypper --non-interactive in --no-recommends \ + python-devel \ + ruby-devel \ + swig + +COPY . /usr/src/app diff --git a/README b/README deleted file mode 100644 index c5f1bcb..0000000 --- a/README +++ /dev/null @@ -1,15 +0,0 @@ - -Attempt to create generated bindings for -libyui. Not restricted to one language. - -Authors: kkaempf@suse.de - -Ruby Notes -========== - -* API tries to follow ruby standards: -* Containers do not implement iterators but: - * each - * to_a - * etc -* lower_case_methods instead of camelCaseMethods \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..5b9507a --- /dev/null +++ b/README.md @@ -0,0 +1,44 @@ +# LibYUI - The Language Bindings + +[![Build Status](https://travis-ci.org/libyui/libyui-bindings.svg?branch=master +)](https://travis-ci.org/libyui/libyui-bindings) + +[Libyui](https://github.com/libyui/libyui) is a widget abstraction library +providing Qt, GTK and ncurses frontends. Originally it was developed for +[YaST](https://yast.github.io/) but it can be used in any independent project. + +The libyui library is written in C++, but this part contains bindings for other +programming languages like Perl, Ruby or Python. + +### Ruby Notes + +The API tries to follow these Ruby standards: + +- Containers do not implement iterators but: + - each + - to_a + - etc +- lower_case_methods instead of camelCaseMethods + + +### Building + +Libyui uses CMake, driven by a slightly complex set of +[CMakefiles](https://github.com/libyui/libyui/tree/master/buildtools). For +reproducible builds it is best to use the [libyui-rake]( +https://github.com/libyui/libyui-rake) Ruby gem like the [Jenkins CI]( +https://ci.opensuse.org/view/libyui/) jobs do. + +It can be installed from [rubygems.org](https://rubygems.org/gems/libyui-rake/) +using this command (Ruby needs to be installed in the system): + +``` +gem install libyui-rake +``` + +Then to build the package run: + +``` +rake osc:build +``` +