all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ricardo Wurmus <rekado@elephly.net>
To: 26561@debbugs.gnu.org
Cc: Ricardo Wurmus <rekado@elephly.net>
Subject: bug#26561: [PATCH 6/9] gnu: Add python-sepolgen.
Date: Wed, 19 Apr 2017 16:29:14 +0200	[thread overview]
Message-ID: <20170419142918.11688-6-rekado@elephly.net> (raw)
In-Reply-To: <20170419142918.11688-1-rekado@elephly.net>

* gnu/packages/selinux.scm (python-sepolgen): New variable.
---
 gnu/packages/selinux.scm | 52 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/selinux.scm b/gnu/packages/selinux.scm
index e73bc0ec6..8f3750daf 100644
--- a/gnu/packages/selinux.scm
+++ b/gnu/packages/selinux.scm
@@ -234,3 +234,55 @@ binary policies.")
     (description "The SELinux CIL compiler is a compiler that converts the
 @dfn{common intermediate language} (CIL) into a kernel binary policy file.")
     (license license:bsd-2)))
+
+(define-public python-sepolgen
+  (package (inherit libsepol)
+    (name "python-sepolgen")
+    (arguments
+     `(#:modules ((srfi srfi-1)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       ,@(substitute-keyword-arguments (package-arguments libsepol)
+           ((#:phases phases)
+            `(modify-phases ,phases
+               (replace 'enter-dir
+                 (lambda _ (chdir "sepolgen") #t))
+               ;; By default all Python files would be installed to
+               ;; $out/gnu/store/...-python-.../, so we override the
+               ;; PACKAGEDIR to fix this.
+               (add-after 'enter-dir 'fix-target-path
+                 (lambda* (#:key inputs outputs #:allow-other-keys)
+                   (let ((get-python-version
+                          ;; FIXME: copied from python-build-system
+                          (lambda (python)
+                            (let* ((version     (last (string-split python #\-)))
+                                   (components  (string-split version #\.))
+                                   (major+minor (take components 2)))
+                              (string-join major+minor ".")))))
+                     (substitute* "src/sepolgen/Makefile"
+                       (("^PACKAGEDIR.*")
+                        (string-append "PACKAGEDIR="
+                                       (assoc-ref outputs "out")
+                                       "/lib/python"
+                                       (get-python-version
+                                        (assoc-ref inputs "python"))
+                                       "/site-packages/sepolgen")))
+                     (substitute* "src/share/Makefile"
+                       (("\\$\\(DESTDIR\\)") (assoc-ref outputs "out"))))
+                   #t)))))))
+    (inputs
+     `(("python" ,python-wrapper)))
+    (native-inputs '())
+    (synopsis "Python module for generating SELinux policies")
+    (description
+     "This package contains a Python module that forms the core of
+@code{audit2allow}, a part of the package @code{policycoreutils}.  The
+sepolgen library contains: Reference Policy Representation, which are Objects
+for representing policies and the reference policy interfaces.  It has objects
+and algorithms for representing access and sets of access in an abstract way
+and searching that access.  It also has a parser for reference policy
+\"headers\".  It contains infrastructure for parsing SELinux related messages
+as produced by the audit system.  It has facilities for generating policy
+based on required access.")
+    ;; GPLv2 only
+    (license license:gpl2)))
-- 
2.12.2

  parent reply	other threads:[~2017-04-19 14:30 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-19 12:56 bug#26561: [PATCH 0/9] SELinux Ricardo Wurmus
2017-04-19 14:29 ` bug#26561: [PATCH 1/9] gnu: Add libsepol Ricardo Wurmus
2017-04-19 14:29   ` bug#26561: [PATCH 2/9] gnu: Add checkpolicy Ricardo Wurmus
2017-04-19 14:29   ` bug#26561: [PATCH 3/9] gnu: Add libselinux Ricardo Wurmus
2017-04-19 14:29   ` bug#26561: [PATCH 4/9] gnu: Add libsemanage Ricardo Wurmus
2017-04-19 14:29   ` bug#26561: [PATCH 5/9] gnu: Add secilc Ricardo Wurmus
2017-04-19 14:29   ` Ricardo Wurmus [this message]
2017-04-19 14:29   ` bug#26561: [PATCH 7/9] gnu: Add python-ipy Ricardo Wurmus
2017-04-19 14:29   ` bug#26561: [PATCH 8/9] gnu: Add python-setools Ricardo Wurmus
2017-04-19 14:29   ` bug#26561: [PATCH 9/9] gnu: Add policycoreutils Ricardo Wurmus
2017-04-19 19:59     ` Marius Bakke
2017-04-19 19:57   ` bug#26561: [PATCH 1/9] gnu: Add libsepol Marius Bakke
2017-04-21 22:21     ` Ricardo Wurmus
2017-04-19 20:01 ` bug#26561: [PATCH 0/9] SELinux Marius Bakke
2017-04-20  8:30   ` julien lepiller
2017-04-21 22:40   ` Ricardo Wurmus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170419142918.11688-6-rekado@elephly.net \
    --to=rekado@elephly.net \
    --cc=26561@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.