-
Notifications
You must be signed in to change notification settings - Fork 17
Packages
The fedora-selinux/selinux repository was created to simplify Fedora package maintainers backporting fixes from upstream SELinuxProject/selinux repository to older releases in stables Fedoras and applying downstream Fedora fixes before they are accepted in upstream or when they are not accepted yet.
Branches in the repository follow branches in dist git repositories. It means that there's always master branch for Rawhide and branches for all currently supported Fedoras.
$ git remote -v
origin [email protected]:fedora-selinux/selinux.git (fetch)
$ git branch -r
origin/HEAD -> origin/master
origin/f20
origin/f21
origin/f22
origin/master
Package sources in dist-git are generally composed from a release tarball and -rhat.patch files, and sometimes from other files.
E.g. in libselinux, the repository contains:
$ git ls-tree --name-only HEAD
.gitignore
libselinux-rhat.patch
libselinux.spec
make-rhat-patches.sh
rubytest.rb
selinuxconlist.8
selinuxdefcon.8
Note: .gitignore, sources are Fedora dist-git specific files
The libselinux-rhat.patch is generated by make-rhat-patches.sh script from a particular fedora-selinux/selinux github branch and a release tarball.
-
clone fedora-selinux/selinux repository
$ cd ~/devel/git $ git clone [email protected]:fedora-selinux/selinux.git $ cd selinux
-
create, backport, cherry-pick needed changes to a particular branch and push them
-
clone selinux-policy dist-git repository
$ cd ~/devel/git $ fedpkg clone selinux-policy $ cd selinux-policy
-
recreate -rhat.patch files
$ ./make-rhat-patches.sh
-
add changes to the dist-git repository, bump release, create a changelog entry, commit and push
-
build the package
$ fedpkg build