[pkg-apparmor] [PATCH 4/6] Simplify profile installation process.

Felix Geyer fgeyer at debian.org
Fri Aug 29 21:19:23 UTC 2014


---
 .gitignore                                         |  1 -
 debian/apparmor-profiles-extra.dirs                |  3 ---
 debian/apparmor-profiles-extra.install             |  1 +
 debian/rules                                       | 25 +++++++---------------
 .../generate-apparmor-profiles-extra.install       | 18 ----------------
 5 files changed, 9 insertions(+), 39 deletions(-)
 delete mode 100644 .gitignore
 create mode 100644 debian/apparmor-profiles-extra.install
 delete mode 100755 debian/scripts/generate-apparmor-profiles-extra.install

diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 5ea4164..0000000
--- a/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-debian/apparmor-profiles-extra.install
diff --git a/debian/apparmor-profiles-extra.dirs b/debian/apparmor-profiles-extra.dirs
index f792acd..6c11891 100644
--- a/debian/apparmor-profiles-extra.dirs
+++ b/debian/apparmor-profiles-extra.dirs
@@ -1,4 +1 @@
-/etc/apparmor.d
 /etc/apparmor.d/local
-/etc/apparmor.d/abstractions
-/etc/apparmor.d/tunables
diff --git a/debian/apparmor-profiles-extra.install b/debian/apparmor-profiles-extra.install
new file mode 100644
index 0000000..5f93ab3
--- /dev/null
+++ b/debian/apparmor-profiles-extra.install
@@ -0,0 +1 @@
+profiles/* etc/apparmor.d/
diff --git a/debian/rules b/debian/rules
index 1a4be61..a1446f2 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,34 +1,25 @@
 #!/usr/bin/make -f
 
 PROFILES_DIR = $(CURDIR)/profiles
-ABSTRACTIONS_DIR = $(PROFILES_DIR)/abstractions
-TUNABLES_DIR = $(PROFILES_DIR)/tunables
-PROFILES = $(filter-out $(ABSTRACTIONS_DIR)% $(TUNABLES_DIR)%,$(wildcard $(PROFILES_DIR)/*))
+PROFILES = $(shell find $(PROFILES_DIR) -type f -maxdepth 1)
+PROFILE_NAMES = $(notdir $(PROFILES))
 
 %:
 	dh $@
 
-debian/apparmor-profiles-extra.install: $(PROFILES)
-	$(CURDIR)/debian/scripts/generate-apparmor-profiles-extra.install > $@
-
 override_dh_clean:
-	rm -f debian/apparmor-profiles-extra.install
 	rm -rf tests
 	dh_clean
 
-override_dh_install: debian/apparmor-profiles-extra.install
-	for profile in $(shell grep '^profiles/' $(CURDIR)/debian/apparmor-profiles-extra.install | \
-	                 awk '{print $$1}' | \
-	                 grep -v '^profiles/abstractions/' | \
-	                 grep -v '^profiles/tunables/' | \
-	                 cut -d/ -f2- | grep -v /); do \
+override_dh_install:
+	dh_install
+	set -ex && for profile in $(PROFILE_NAMES); do \
 	   dh_apparmor --profile-name=$$profile -papparmor-profiles-extra; \
 	done
-	dh_install
 
 override_dh_auto_test:
 	mkdir -p tests/local
-	set -ex && for profile in $(PROFILES); do \
-	   touch tests/local/`basename $$profile`; \
-	   apparmor_parser -aKQ -I profiles -I tests $$profile; \
+	set -ex && for profile in $(PROFILE_NAMES); do \
+	   touch tests/local/$$profile; \
+	   apparmor_parser -aKQ -I profiles -I tests $(PROFILES_DIR)/$$profile; \
 	done
diff --git a/debian/scripts/generate-apparmor-profiles-extra.install b/debian/scripts/generate-apparmor-profiles-extra.install
deleted file mode 100755
index d817096..0000000
--- a/debian/scripts/generate-apparmor-profiles-extra.install
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-set -e
-set -u
-
-WORK_DIR=$(readlink -f $(dirname $(dirname $0)/../../..))
-PROFILES_DIR="$WORK_DIR/profiles"
-ABSTRACTIONS_DIR="$PROFILES_DIR/abstractions"
-TUNABLES_DIR="$PROFILES_DIR/tunables"
-
-(
-   cd "$PROFILES_DIR"
-   find -maxdepth 1 -type f | sed -e 's,^\./\(.*\)$,profiles/\1 etc/apparmor.d/,' || true
-   cd "$ABSTRACTIONS_DIR"
-   find -maxdepth 1 -type f | sed -e 's,^\./\(.*\)$,profiles/abstractions/\1 etc/apparmor.d/abstractions/,' || true
-   cd "$TUNABLES_DIR"
-   find -maxdepth 1 -type f | sed -e 's,^\./\(.*\)$,profiles/tunables/\1 etc/apparmor.d/tunables/,' || true
-)
-- 
2.1.0




More information about the pkg-apparmor-team mailing list