Skip to content

Contributing

Steve Lawrence edited this page Jan 30, 2015 · 14 revisions

#Contributing to SELinux

Contributing to the SELinux userspace project is a similar process to other open source projects. Bug reports, new features to the existing code, additional tools, or updated documentation are all welcome.

The Todo page has a list of requested changes.

See the selinuxproject.org user resources page for more information on mailing lists, documentation, and other resources.

##Reporting Bugs

All bugs and patches should be submitting to the SELinux mailing list at [email protected]. Github issues and pull requests may not be seen.

When reports bugs please include versions of SELinux related libraries and tools (libsepol, libselinux, libsemanage, checkpoolicy). If you are using a custom policy please include it as well.

##Compiling

There are a number of dependencies required to build the userspace tools/libraries. On a Fedora system you can install them with yum:

# yum install pcre-devel ustr-devel bzip2-devel bison flex flex-devel python-devel setools-devel libcgroup-devel libcap-ng-devel glib2-devel dbus-devel dbus-glib-devel

The tools and libraries can be built from the top level with make:

$ make

##Contributing Code

After obtaining the code of the repository (see below), create a patch against the repository, and post that patch to the SELinux mailing list at [email protected]. When preparing patches, please follow these guidelines:

  • Patches should apply with -P1
  • Must apply against HEAD of the master branch
  • Separate large patches in to logical patches

When adding new, large features or tools it is best to discuss the design on the mailing list prior to submitting the patch.

##Development Repository

Git is a modern source code management system. For more information about Git please see the Git website.

To get an anonymous checkout of the SELinux userland repository you can run:

$ git clone https://github.com/SELinuxProject/selinux