From f56f10aa16fc34ea63668dfc90ad1c806eff9b9a Mon Sep 17 00:00:00 2001 From: Alexandre Pujol Date: Sat, 27 Jan 2024 23:21:32 +0000 Subject: [PATCH] doc: add dev install page. --- docs/development/install.md | 55 +++++++++++++++++++++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 56 insertions(+) create mode 100644 docs/development/install.md diff --git a/docs/development/install.md b/docs/development/install.md new file mode 100644 index 00000000..83409e2d --- /dev/null +++ b/docs/development/install.md @@ -0,0 +1,55 @@ +--- +title: Installation +--- + +## Development Install + +!!! warning + + Do **not** install this project *"manually"* (with `make`, `sudo make install`). The distribution specific packages are intended to be used in development as they include additional rule to ensure compatibility with upstream. + + See `debian/`, `PKGBUILD` and `dists/apparmor.d.spec`. + + +**:material-docker: Docker** + +From any distribution, if you have docker installed, you can simply build the package with: +```sh +make package dist= +``` +Then you can install the package with `dpkg`, `pacman` or `rpm`. + +**:material-arch: Archlinux** +```sh +make pkg +``` + +**:material-ubuntu: Ubuntu & :material-debian: Debian** +```sh +make dpkg +``` + +**:simple-suse: OpenSUSE** +```sh +make rpm +``` + + +## Profile flags + +Flags for all profiles in this project are tracked under the [`dists/flags`](https://github.com/roddhjav/apparmor.d/tree/main/dists/flags) directory. It is used for profile that are not considered stable. Files in this directory should respect the following format: ` `, flags should be comma separated. + +For instance, to move `adb` in complain mode, edit **[`dists/flags/main.flags`](https://github.com/roddhjav/apparmor.d/blob/main/dists/flags/main.flags)** and add the following line: +```sh +adb complain +``` + +Beware, flags defined in this file overwrite flags in the profile. So you may need to add other flags. Example for `gnome-shell`: +```sh +gnome-shell attach_disconnected,mediate_deleted,complain +``` + + +## Ignore profiles + +It can be handy to not install a profile for a given distribution. Profile or directory to ignore are tracked under the [`dists/ignore`](https://github.com/roddhjav/apparmor.d/tree/main/dists/ignore) directory. Files in this directory should respect the following format: ``. One ignore by line. It can be a profile name or a directory to ignore (relative to the project root). diff --git a/mkdocs.yml b/mkdocs.yml index cbb7a227..eb00d4dd 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -140,6 +140,7 @@ nav: - Development: - development/index.md - Architecture: + - development/install.md - development/guidelines.md - development/structure.md - Tests: