SELinux policy core utilities
Go to file
Petr Lautrbach ab1421e02c sepolgen-ifgen: allow M4 escaped filenames
When a file name in type transition rule used in an interface is same as
a keyword, it needs to be M4 escaped so that the keyword is not expanded
by M4, e.g.

-	filetrans_pattern($1, virt_var_run_t, virtinterfaced_var_run_t, dir, "interface")
+	filetrans_pattern($1, virt_var_run_t, virtinterfaced_var_run_t, dir, "``interface''")

But sepolgen-ifgen could not parse such string:

    # sepolgen-ifgen
    Illegal character '`'

This change allows M4 escaping inside quoted strings and fixed described
problem.

https://bugzilla.redhat.com/show_bug.cgi?id=2254206

Resolves: RHEL-45544
2024-08-20 19:04:31 +02:00
.fmf run tests via TMT/FMF 2022-11-10 17:21:15 +01:00
plans run tests via TMT/FMF 2022-11-10 17:21:15 +01:00
.gitignore Verify upstream tarball signature 2024-06-28 22:27:40 +02:00
0001-Don-t-be-verbose-if-you-are-not-on-a-tty.patch SELinux userspace 3.7 release 2024-06-28 22:26:17 +02:00
0002-sepolicy-generate-Handle-more-reserved-port-types.patch SELinux userspace 3.7 release 2024-06-28 22:26:17 +02:00
0003-sandbox-Use-matchbox-window-manager-instead-of-openb.patch SELinux userspace 3.7 release 2024-06-28 22:26:17 +02:00
0004-Use-SHA-2-instead-of-SHA-1.patch SELinux userspace 3.7 release 2024-06-28 22:26:17 +02:00
0005-python-sepolicy-Fix-spec-file-dependencies.patch SELinux userspace 3.7 release 2024-06-28 22:26:17 +02:00
0006-sepolgen-ifgen-allow-M4-escaped-filenames.patch sepolgen-ifgen: allow M4 escaped filenames 2024-08-20 19:04:31 +02:00
bachradsusi.gpg Verify upstream tarball signature 2024-06-28 22:27:40 +02:00
changelog sepolgen-ifgen: allow M4 escaped filenames 2024-08-20 19:04:31 +02:00
gating.yaml Drop baseos-ci gating 2024-05-10 13:52:14 +02:00
policycoreutils.spec sepolgen-ifgen: allow M4 escaped filenames 2024-08-20 19:04:31 +02:00
README.translations Update README.translations for use with Weblate 2023-01-20 15:52:53 +01:00
selinux-autorelabel Run autorelabel in parallel by default 2022-07-27 12:03:59 +02:00
selinux-autorelabel-generator.sh Use /bin/bash instead of /bin/sh 2023-05-30 10:28:15 +00:00
selinux-autorelabel-mark.service Do not use symlinks to enable selinux-autorelabel-mark.service 2018-07-16 13:35:12 +02:00
selinux-autorelabel.service Configure autorelabel service to output to journal and to console if set 2019-11-14 10:01:54 +01:00
selinux-autorelabel.target Use generator approach to fix autorelabel. 2016-07-20 22:31:07 +02:00
sepolicy-help.tgz Fixes for sepolicy gui 2013-10-02 16:25:25 -04:00
sepolicy-icons.tgz Speed up startup time of sepolicy gui 2013-11-15 09:06:16 -05:00
sources Verify upstream tarball signature 2024-06-28 22:27:40 +02:00
system-config-selinux.png Fix empty system-config-selinux.png 2013-02-12 16:16:02 -05:00

SELinux translations currently live in the following locations:

- https://translate.fedoraproject.org/projects/selinux/
  - contains 2 versions of translatable strings rhel8 (latest RHEL 8 release) and main (Fedora and RHEL 9)
  - maintains large number of languages (several of which do not actually contain any translated strings)
  - updated by community and partially by RH localization effort

- SELinux source repositories (periodicaly updated from weblate)
  - https://github.com/fedora-selinux/selinux
    - used for Fedora, latest CentOS and RHEL 9
  - https://github.com/SELinuxProject/selinux
    - upstream repository

How to update source files on weblate:
  $ git clone git@github.com:fedora-selinux/selinux.git
  $ cd selinux
  # generate new potfiles
  $ for p in policycoreutils python gui sandbox; do
    cd $p/po
    rm $p.pot
    make $p.pot
    sed -i 's/charset=CHARSET/charset=UTF-8/g' $p.pot
    cd -
    done
  # https://translate.fedoraproject.org/projects/selinux/policycoreutils/en/
  # Files -> Upload translations
  # Repeat the process for python, gui and sandbox
  # or use weblate command line tool (get your API key at https://translate.fedoraproject.org/accounts/profile/#api):
  $ for p in policycoreutils python gui sandbox; do
    wlc --key <API key> --url https://translate.fedoraproject.org/api/ upload --input $p/po/$p.pot selinux/$p/en --method=source
    done

How to pull new translations from weblate
  $ git clone git@github.com:fedora-selinux/selinux.git
  # https://translate.fedoraproject.org/projects/selinux/policycoreutils
  # Files -> Download translation files as ZIP file (save in selinux source directory)
  # Repeat the process for python, gui and sandbox
  # or use weblate command line tool
  $ for p in policycoreutils python gui sandbox; do
    wlc --key <API key> --url https://translate.fedoraproject.org/api/ download selinux/$p --output selinux
    done
  # unzip archives
  $ cd selinux
  $ for p in policycoreutils python gui sandbox; do
    unzip -o selinux-$p.zip -d ..
    rm selinux-$p.zip
    done
  $ git add .
  $ git commit