2017-10-30 13:35:00 +00:00
# GtkSharp
GtkSharp is a C# wrapper for Gtk and its related components. The component list includes the following libraries: glib, gio, cairo, pango, atk, gdk.
2017-10-30 21:23:48 +00:00
[![Gitter chat ](https://badges.gitter.im/gitterHQ/gitter.png )](https://gitter.im/GtkSharp/Lobby) [![Build status ](https://travis-ci.org/GtkSharp/GtkSharp.svg?branch=develop )](https://travis-ci.org/GtkSharp/GtkSharp)
2017-10-30 20:04:24 +00:00
2017-10-30 13:35:00 +00:00
* [Building from source ](#building-from-source )
* [Using the library ](#using-the-library )
* [License ](#license )
## Building from source
Pre requirements for building from source are that you have .Net Core and msbuild installed on the system.
To build the repository, first clone it:
```sh
2017-10-30 19:43:08 +00:00
git clone https://github.com/GtkSharp/GtkSharp.git
2017-10-30 13:35:00 +00:00
cd GtkSharp
```
and then simply run either `.\build.ps1` or `./build.sh` depending your operating system.
If you wish to generate the nuget packages simply add the `--BuildTarget=PackageNuGet` as an argument when calling the build script.
A breakdown on how the source is structured:
* Tools that are needed to generate wrapper code are found in [Tools ](Source/Tools ) folder
* The actual wrappers code is found in [Libs ](Source/Libs ) folder
* Templates are located in [Templates ](Source/Templates ) folder
* Build script is separated between [build.cake ](build.cake ) and [CakeScripts ](CakeScripts ) folder
## Using the library
2018-02-01 21:43:56 +00:00
On both Windows and Linux the library assumes that you have Gtk installed on your system. See [Installing Gtk on Windows ](https://github.com/GtkSharp/GtkSharp/wiki/Installing-Gtk-on-Windows ) wiki page for more details on how to do it on Windows.
2017-10-30 13:35:00 +00:00
2017-10-30 13:44:32 +00:00
Available NuGet packages:
* [GtkSharp ](https://www.nuget.org/packages/GtkSharp/ )
* [GdkSharp ](https://www.nuget.org/packages/GdkSharp/ )
* [GioSharp ](https://www.nuget.org/packages/GioSharp/ )
* [GLibSharp ](https://www.nuget.org/packages/GLibSharp/ )
* [AtkSharp ](https://www.nuget.org/packages/AtkSharp/ )
* [PangoSharp ](https://www.nuget.org/packages/PangoSharp/ )
* [CairoSharp ](https://www.nuget.org/packages/CairoSharp/ )
2017-10-30 13:35:00 +00:00
To create a new gtk app project, simply use `dotnet new` templating engine:
* install: `dotnet new --install GtkSharp.Template.CSharp`
* uninstall: `dotnet new --uninstall GtkSharp.Template.CSharp`
* generate project: `dotnet new gtkapp`
Visual Studio and MonoDevelop addins will be available in the coming weeks.
## License
2018-01-25 23:13:36 +00:00
GtkSharp and its related components are licensed under [LGPL v2.0 license ](LICENSE ), while [Samples ](Source/Samples ) are licenced under [The Unlicense ](Source/Samples/LICENSE ).