Skip to content
This repository was archived by the owner on Feb 9, 2026. It is now read-only.

cnuke/goa

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


                   ===========================================
                   Goa - goal, but reached a little bit sooner
                   ===========================================


Goa is a command-line-based workflow tool for the development of applications
for the [https://genode.org - Genode OS Framework]. It streamlines the work of
cross-developing Genode application software using a GNU/Linux-based host
system for development, in particular

* Importing 3rd-party source code,

* Building software using commodity build systems such as CMake,

* Test-running software on the host system,

* Crafting runtime configurations for deployment, and

* Packaging and publishing the software for the integration into Genode
  systems like [https://genode.org/download/sculpt - Sculpt OS].

Goa is solely geared towards application software. It does _not_ address the
following topics:

* Integration of complete Genode systems,

* Development of libraries and APIs,

* Test automation,

* Continuous testing and integration (CI).

Those topics are covered by the tools that come with the Genode project and
are described in Chapter 5 of the Genode Foundations book:
[https://genode.org/documentation/genode-foundations/19.05/development/index.html]


Installation
------------

# Install the latest Genode tool chain on a GNU/Linux OS on a 64-bit x86 PC.
  It is recommended to use the latest long-term support (LTS) version of
  Ubuntu. Make sure that your installation satisfies the following
  requirements.

  * _libSDL-dev_ needed to run system scenarios directly on your host OS,
  * _tclsh_ and _expect_ needed by the tools,
  * _xmllint_ for validating configurations,

# Clone the Goa repository:

  ! git clone https://github.com/nfeske/goa.git

  The following steps refer to the directory of the clone as '<goa-dir>'.

# Enable your shell to locate the 'goa' tool by either

  * Creating a symbolic link in one of your shell's binary-search
    locations (e.g., if you use a 'bin/' directory in your home directory,
    issue 'ln -s <goa-dir>/bin/goa ~/bin/'), or alternatively

  * Add '<goa-dir>/bin/>' to your 'PATH' environment variable, e.g.,
    (replace '<goa-dir>' with the absolute path of your clone):

    ! export PATH=$PATH:<goa-dir>/bin


Usage
-----

Once installed, obtain further information about the use of Goa via
the 'goa help' command.

About

Tool for streamlining the development of Genode applications

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Tcl 71.8%
  • Makefile 16.8%
  • NASL 8.8%
  • Assembly 1.0%
  • C++ 1.0%
  • Pawn 0.5%
  • CMake 0.1%