Sync from SUSE:SLFO:Main setroubleshoot revision 2a2f28c2b5af3925a7089b5459628ba5

This commit is contained in:
Adrian Schröter 2024-05-04 00:35:25 +02:00
commit aa4914b759
9 changed files with 549 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

View File

@ -0,0 +1,16 @@
Index: setroubleshoot-3.3.31/src/Makefile.am
===================================================================
--- setroubleshoot-3.3.31.orig/src/Makefile.am
+++ setroubleshoot-3.3.31/src/Makefile.am
@@ -110,8 +110,8 @@ python-build:
$(PYTHON) setup.py build
install-exec-hook:
- $(PYTHON) -m pip install `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` \
- `test -n "$(PREFIX)" && echo --prefix $(PREFIX)` .
+ $(PYTHON) setup.py install `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` \
+ `test -n "$(PREFIX)" && echo --prefix $(PREFIX)`
uninstall-hook:
- $(PYTHON) -m pip uninstall `test -n "$(DESTDIR)" && echo --root $(DESTDIR)` -y setroubleshoot
+ $(PYTHON) setup.py uninstall `test -n "$(DESTDIR)" && echo --root $(DESTDIR)`

BIN
setroubleshoot-3.3.32.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,13 @@
Index: setroubleshoot-3.3.26/setroubleshoot.desktop.in
===================================================================
--- setroubleshoot-3.3.26.orig/setroubleshoot.desktop.in
+++ setroubleshoot-3.3.26/setroubleshoot.desktop.in
@@ -2,7 +2,7 @@
_Name=SELinux Troubleshooter
_GenericName=SELinux Troubleshooter
_Comment=Troubleshoot SELinux access denials
-Categories=System;
+Categories=System;Security;
Exec=/usr/bin/sealert -b
Terminal=false
Type=Application

199
setroubleshoot.changes Normal file
View File

@ -0,0 +1,199 @@
-------------------------------------------------------------------
Fri Nov 10 15:39:45 UTC 2023 - Frederic Crozat <fcrozat@suse.com>
- Update to version 3.3.32:
* Rename session bus name to org.fedoraproject.sealert
* seapplet: wrap SEApplet() to try except
* util.py: Add doctext test for build_module_type_cache()
* Update translations
- Add explicit dependency on python3-six for server subpackage.
- Remove buildrequires on gtk2-devel
-------------------------------------------------------------------
Wed Jun 7 13:16:23 UTC 2023 - Zdenek Kubala <zkubala@suse.cz>
- Add patch remove-pip-from-makefile.patch to temp fix build error
caused by invoking `-m pip install` within build process by
return to `setup.py install` - we do not allow network
connection in secure build mode in OBS
-------------------------------------------------------------------
Tue Jan 24 10:43:16 UTC 2023 - Frederic Crozat <fcrozat@suse.com>
- Update to version 3.3.31:
* Add a screen reader label to the icon
* seapplet: avoid ValueError when parsing sealert.conf
* doc: Document performance related changes
* Decrease setroubleshootd priority and limit RAM utilization to 1GB
- Add python3-setuptools and python3-pip to BuildRequires.
-------------------------------------------------------------------
Wed Dec 8 12:38:49 UTC 2022 - Zdenek Kubala <zkubala@suse.cz>
- Small adjustments in a spec file for dirs and files
- Add documentation to be build in setroubleshoot-doc
-------------------------------------------------------------------
Wed Nov 30 15:07:07 UTC 2022 - Zdenek Kubala <zkubala@suse.cz>
- Fix dbus conf file location to /usr/share/dbus-1
-------------------------------------------------------------------
Thu Oct 20 11:15:39 UTC 2022 - Zdenek Kubala <zkubala@suse.cz>
- Update to version 3.3.30 (bnc#1204344)
Summary of changes from 3.3.26 to 3.3.30:
* sedispatch: check read_size
* SafeConfigParser is deprecated and will be dropped
* Fix typos in --help, man pages and developer's guide
* Improve DSP module reporting
* Look for modules in /usr/share/selinux/packages
* Always use rpm source package for reporting
* Improve after_first email filter behavior
* Set right ownership on /var/lib/setroubleshoot
* Install systemd-sysusers config
* Remove Requires(pre) useradd & groupadd
* Introduce email.use_sendmail option
* Update translations
* Miscellaneous python and build system changes
* Fix couple of typos
* Drop Python2 support
* Use inspect.signature() instead of instead.getargspec()
Spec file modification to reflect openSUSE dependencies and paths.
Removed old patches
* setroubleshoot-Stop-SetroubleshootFixit-after-10-seconds-of-inactiv.patch
* setroubleshoot-Do-not-use-Python-slip-package.patch
* setroubleshoot-Gracefully-handle-unavailable-libreport.patch
-------------------------------------------------------------------
Sun May 8 16:40:53 UTC 2022 - Benjamin Greiner <code@bnavigator.de>
- Switch runtime requirement of server package from ancient
PyGObject 2 to the current version. Build requirement was already
current.
-------------------------------------------------------------------
Thu Nov 11 09:50:33 UTC 2021 - Johannes Segitz <jsegitz@suse.com>
- Drop build requirement for gtk2-devel
-------------------------------------------------------------------
Fri Aug 20 19:31:22 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
- Ensure /run is used, not /var/run
- Add CONFIG parameter to %sysusers_generate_pre
- Don't fdupes unnecessarily
-------------------------------------------------------------------
Tue Aug 10 07:53:34 UTC 2021 - Johannes Segitz <jsegitz@suse.com>
- Delete setroubleshoot-rpmlintrc. For the devel project it's not
necessary and for official products we don't allow to reduce the
badness of the warnings listed in there
-------------------------------------------------------------------
Tue Jun 8 16:56:52 UTC 2021 - Predrag Ivanović <predivan@mts.rs>
- Package changes:
* Number the patches, RPM shipped with SLE/Leap doesn't support
auto-numbering.
-------------------------------------------------------------------
Wed May 19 11:48:36 UTC 2021 - Ludwig Nussel <lnussel@suse.de>
- new version 3.3.26
* Fix plugin exception reporting
* Update translations
- add patches
setroubleshoot-Stop-SetroubleshootFixit-after-10-seconds-of-inactiv.patch
setroubleshoot-Do-not-use-Python-slip-package.patch
setroubleshoot-Gracefully-handle-unavailable-libreport.patch
- server needs to require python3-systemd
- fix audisp plugin dir
-------------------------------------------------------------------
Tue May 18 14:45:47 UTC 2021 - Ludwig Nussel <lnussel@suse.de>
- Fix python dependencies
- Add sysuser and fix ownerships for server
- move dbus files to correct directory and package
- don't use dbus-send in %post, this would try to autolaunch the service
-------------------------------------------------------------------
Mon Apr 19 14:34:17 UTC 2021 - Predrag Ivanović <predivan@mts.rs>
- Fix Require for setroubleshoot-server
setools-libs-python is python3-setools in SUSE/openSUSE
-------------------------------------------------------------------
Mon Mar 15 17:32:08 UTC 2021 - Predrag Ivanović <predivan@mts.rs>
- Update to 3.3.25
Summary of the changes from 3.3.19 to 3.3.25
* Use Python dasbus instead of pydbus
* Log full reports with correct syslog identifier
* Cancel pending alarm during AVC analyses
* sepolicy.info() returns a generator, not a list
* Log plugin exception traceback when log level is DEBUG
* Drop old unused files
* Add Local SELinux policy package version to analyses reports
* Report bug on a package which owns the related SELinux domain
* Use pydbus, a modern Python dbus API, for SetroubleshootPrivileged
* Root user doesn't need to use SetroubleshootPrivileged API
* Drop updater.py - it's not used and doesn't work
* sealert: Drop unused import slib.dbus.service
* browser: Do not try to report a bug on None package
* Revert "sepolicy.info() returns a generator, not a list"
* Revert "Fix AVC.__typeMatch to handle aliases properly"
* Make date/time format locale specific
* Do not refer to hardcoded selinux-policy rpm in signature
* Add dpkg support
* setroubleshoot.util: Catch exceptions from sepolicy import
* Improve and unify error messages
* browser: Check return value of Gdk.Screen().get_default()
* Add man page for seapplet
* Fix translation of hex values in AVCs
* Catch exceptions caused by lookup_signature
* Improve myplatform detection in get_os_environment()
- Package changes:
* Drop legacy seapplet.
-------------------------------------------------------------------
Thu Nov 22 16:04:58 UTC 2018 - jsegitz@suse.com
- Create and own documentation directory
-------------------------------------------------------------------
Sun Oct 14 03:11:11 UTC 2018 - Marguerite Su <i@marguerite.su>
- updated to 3.3.18
-------------------------------------------------------------------
Wed May 16 07:34:07 UTC 2018 - mcepl@suse.com
- Rebase to 3.3.17
-------------------------------------------------------------------
Wed Mar 31 21:04:36 UTC 2010 - prusnak@suse.cz
- fix prefix in setuptools (setup_py-prefix.patch)
-------------------------------------------------------------------
Thu Feb 25 15:42:54 UTC 2010 - prusnak@suse.cz
- updated to 2.2.64
-------------------------------------------------------------------
Wed Jun 10 17:10:56 CEST 2009 - prusnak@suse.cz
- initial version 2.1.12
* based on Fedora package
- created patches:
* desktop.patch - fix category and remove absolute paths
* dbus.patch - fix dbus configuration

8
setroubleshoot.logrotate Normal file
View File

@ -0,0 +1,8 @@
/var/log/setroubleshoot/*.log {
weekly
rotate 2
missingok
sharedscripts
# postrotate
# endscript
}

285
setroubleshoot.spec Normal file
View File

@ -0,0 +1,285 @@
#
# spec file for package setroubleshoot
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# Disable automatic compilation of Python files in extra directories
%global _python_bytecompile_extra 0
Summary: Helps troubleshoot SELinux problems
License: GPL-2.0-or-later
Name: setroubleshoot
Version: 3.3.32
Release: 0
URL: https://gitlab.com/setroubleshoot/setroubleshoot
Source0: https://gitlab.com/setroubleshoot/setroubleshoot/-/archive/%{version}/setroubleshoot-%{version}.tar.bz2
Source1: %{name}.tmpfiles
Source2: %{name}.sysusers
Source3: %{name}.logrotate
Patch0: setroubleshoot-desktop.patch
Patch1: remove-pip-from-makefile.patch
# git format-patch -N 3.3.30
# i=1; for j in 00*patch; do printf "Patch%04d: %s\n" $i $j; i=$((i+1));done
BuildRequires: autoconf
BuildRequires: audit-devel >= 3.0.1
BuildRequires: automake
BuildRequires: dbus-1-glib-devel
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: gettext
BuildRequires: gtk3-devel
BuildRequires: intltool
BuildRequires: libcap-ng-devel
BuildRequires: libnotify-devel
BuildRequires: libselinux-devel
BuildRequires: make
BuildRequires: polkit-devel
BuildRequires: python3
BuildRequires: python3-dasbus
BuildRequires: python3-devel
BuildRequires: python3-gobject
BuildRequires: python3-pip
BuildRequires: python3-selinux
BuildRequires: python3-setuptools
# for the _tmpfilesdir macro
BuildRequires: systemd-rpm-macros
# for the sysusers
BuildRequires: sysuser-tools
Requires: %{name}-server = %{version}-%{release}
Requires: gtk3
Requires: libnotify
Requires: python3-dasbus
Requires: python3-gobject
# Redhat library for reporting bugs - do we have SUSE alternative?
#Requires: libreport-gtk >= 2.2.1-2
#Requires: python3-libreport
Requires(post): desktop-file-utils
Requires(post): dbus-1
Requires(postun):dbus-1
Requires(postun):desktop-file-utils
BuildRequires: xdg-utils
Requires: xdg-utils
%global pkgpythondir %{python3_sitelib}/%{name}
%global pkgguidir %{_datadir}/%{name}/gui
%global pkgdatadir %{_datadir}/%{name}
%global pkglibexecdir %{_prefix}/libexec/%{name}
%global pkgvardatadir %{_localstatedir}/lib/%{name}
%global pkgconfigdir %{_sysconfdir}/%{name}
%global pkgdatabase %{pkgvardatadir}/setroubleshoot_database.xml
%description
setroubleshoot GUI. Application that allows you to view setroubleshoot-server
messages.
Provides tools to help diagnose SELinux problems. When AVC messages
are generated an alert can be generated that will give information
about the problem and help track its resolution. Alerts can be configured
to user preference. The same tools can be run on existing log files.
%files
%{pkgguidir}
%config(noreplace) %{_sysconfdir}/xdg/autostart/*
%{_datadir}/applications/*.desktop
%if 0%{?suse_version}
%{_datadir}/metainfo/setroubleshoot.appdata.xml
%else
%{_metainfodir}/*.appdata.xml
%endif
%{_datadir}/dbus-1/services/org.fedoraproject.sealert.service
%{_datadir}/icons/hicolor/*/*/*
%dir %attr(0755,root,root) %{pkgpythondir}
%{pkgpythondir}/browser.py
%{pkgpythondir}/__pycache__/browser.cpython*
%{pkgpythondir}/gui_utils.py
%{pkgpythondir}/__pycache__/gui_utils.cpython*
%{_bindir}/seapplet
%prep
%autosetup -p 1
%build
./autogen.sh
%if 0%{?suse_version}
%configure PYTHON=%{__python3} --enable-seappletlegacy=no --with-auditpluginsdir=/etc/audit/plugins.d
%sysusers_generate_pre %{SOURCE2} %{name}-server setroubleshoot.conf
%make_build pkgrundir=%{_rundir}/setroubleshoot pid_file=%{_rundir}/setroubleshootd.pid
%else
%configure PYTHON=%{__python3} --enable-seappletlegacy=no --with-auditpluginsdir=/etc/audit/plugins.d
make
%endif
%install
%make_install dbus_systemdir=%{_datadir}/dbus-1/system.d PREFIX=/usr
desktop-file-install --vendor="" --dir=%{buildroot}%{_datadir}/applications %{buildroot}/%{_datadir}/applications/%{name}.desktop
mkdir -p %{buildroot}%{pkgvardatadir}
mkdir -p %{buildroot}%{_rundir}/setroubleshoot
touch %{buildroot}%{pkgdatabase}
touch %{buildroot}%{pkgvardatadir}/email_alert_recipients
# fix documentation
mkdir -p %{buildroot}%{_docdir}/%{name}/
ls %{buildroot}%{_datadir}/doc/
mv %{buildroot}%{_datadir}/doc/%{name}/* %{buildroot}%{_docdir}/%{name}/
ls %{buildroot}/%{_datadir}/doc/
rm -rf %{buildroot}/%{_datadir}/doc/%{name}
# create /run/setroubleshoot on boot
install -p -m644 -D %{SOURCE1} $RPM_BUILD_ROOT%{_tmpfilesdir}/%{name}.conf
install -p -m644 -D %{SOURCE2} $RPM_BUILD_ROOT%{_sysusersdir}/%{name}.conf
# install logrotate file
install -D -m644 %{SOURCE3} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}-server
%find_lang %{name}
%package doc
Summary: Setroubleshoot documentation
Group: Productivity/Security
Requires(pre): %{name} = %{version}
BuildArch: noarch
%description doc
Setroubleshoot documentation package
%files doc
%dir %{_docdir}/%{name}/
%doc %{_docdir}/%{name}/*
%package server
Summary: SELinux troubleshoot server
Requires: %{name}-plugins >= 3.3.10
Requires: audit >= 3.0.1
Requires: audit-libs-python3
Requires: policycoreutils-python-utils
Requires: python3-dbus-python
Requires: python3-gobject >= 3.11
Requires: python3-libxml2
Requires: python3-rpm
Requires: python3-selinux >= 2.1.5-1
Requires: python3-six
Requires: python3-systemd >= 206-1
BuildRequires: gettext
BuildRequires: intltool
BuildRequires: python3
BuildRequires: python3-devel
Requires: dbus-1
Requires: polkit
Requires: python3-dasbus
Recommends: logrotate
%description server
Provides tools to help diagnose SELinux problems. When AVC messages
are generated an alert can be generated that will give information
about the problem and help track its resolution. Alerts can be configured
to user preference. The same tools can be run on existing log files.
%pre server -f %{name}-server.pre
%service_add_pre setroubleshootd.service
%post server
%if 0%{?suse_version}
%tmpfiles_create %{_tmpfilesdir}/setroubleshoot.conf
%else
/sbin/service auditd reload >/dev/null 2>&1 || :
%endif
%service_add_post setroubleshootd.service
%postun server
/sbin/service auditd reload >/dev/null 2>&1 || :
%service_del_postun setroubleshootd.service
%preun server
%service_del_preun setroubleshootd.service
%files server -f %{name}.lang
%{_bindir}/sealert
%{_sbindir}/sedispatch
%{_sbindir}/setroubleshootd
%{python3_sitelib}/setroubleshoot*.egg-info
%dir %attr(0755,root,root) %{pkgconfigdir}
%dir %{pkgpythondir}
%dir %{pkgpythondir}/__pycache__
%{pkgpythondir}/Plugin.py
%{pkgpythondir}/__init__.py
%{pkgpythondir}/access_control.py
%{pkgpythondir}/analyze.py
%{pkgpythondir}/audit_data.py
%{pkgpythondir}/avc_audit.py
%{pkgpythondir}/config.py
%{pkgpythondir}/email_alert.py
%{pkgpythondir}/errcode.py
%{pkgpythondir}/html_util.py
%{pkgpythondir}/rpc.py
%{pkgpythondir}/serverconnection.py
%{pkgpythondir}/rpc_interfaces.py
%{pkgpythondir}/server.py
%{pkgpythondir}/signature.py
%{pkgpythondir}/util.py
%{pkgpythondir}/uuid.py
%{pkgpythondir}/xml_serialize.py
%{pkgpythondir}/__pycache__/Plugin.cpython*
%{pkgpythondir}/__pycache__/__init__.cpython*
%{pkgpythondir}/__pycache__/access_control.cpython*
%{pkgpythondir}/__pycache__/analyze.cpython*
%{pkgpythondir}/__pycache__/audit_data.cpython*
%{pkgpythondir}/__pycache__/avc_audit.cpython*
%{pkgpythondir}/__pycache__/config.cpython*
%{pkgpythondir}/__pycache__/email_alert.cpython*
%{pkgpythondir}/__pycache__/errcode.cpython*
%{pkgpythondir}/__pycache__/html_util.cpython*
%{pkgpythondir}/__pycache__/rpc.cpython*
%{pkgpythondir}/__pycache__/rpc_interfaces.cpython*
%{pkgpythondir}/__pycache__/server.cpython*
%{pkgpythondir}/__pycache__/serverconnection.cpython*
%{pkgpythondir}/__pycache__/signature.cpython*
%{pkgpythondir}/__pycache__/util.cpython*
%{pkgpythondir}/__pycache__/uuid.cpython*
%{pkgpythondir}/__pycache__/xml_serialize.cpython*
%dir %{pkgdatadir}
%{pkgdatadir}/SetroubleshootFixit.py
%{pkgdatadir}/SetroubleshootPrivileged.py
%config(noreplace) %{pkgconfigdir}/%{name}.conf
%attr(0700,setroubleshoot,setroubleshoot) %dir %{pkgvardatadir}
%ghost %attr(0600,setroubleshoot,setroubleshoot) %{pkgdatabase}
%ghost %attr(0600,setroubleshoot,setroubleshoot) %{pkgvardatadir}/email_alert_recipients
%{_mandir}/man1/seapplet.1.gz
%{_mandir}/man8/sealert.8.gz
%{_mandir}/man8/sedispatch.8.gz
%{_mandir}/man8/setroubleshootd.8.gz
%attr(750,root,root) %dir %{_sysconfdir}/audit
%attr(750,root,root) %dir %{_sysconfdir}/audit/plugins.d
%attr(640,root,root)%config %{_sysconfdir}/audit/plugins.d/sedispatch.conf
%{_unitdir}/setroubleshootd.service
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}-server
%{_datadir}/dbus-1/system-services/org.fedoraproject.Setroubleshootd.service
%{_datadir}/dbus-1/system-services/org.fedoraproject.SetroubleshootPrivileged.service
%{_datadir}/polkit-1/actions/org.fedoraproject.setroubleshootfixit.policy
%{_datadir}/dbus-1/system-services/org.fedoraproject.SetroubleshootFixit.service
%{_datadir}/dbus-1/system.d/org.fedoraproject.Setroubleshootd.conf
%{_datadir}/dbus-1/system.d/org.fedoraproject.SetroubleshootPrivileged.conf
%{_datadir}/dbus-1/system.d/org.fedoraproject.SetroubleshootFixit.conf
%attr(0644,root,root) %{_tmpfilesdir}/%{name}.conf
%attr(0644,root,root) %{_sysusersdir}/%{name}.conf
%if 0%{?suse_version}
%ghost %attr(0711,setroubleshoot,setroubleshoot) %dir %{_rundir}/setroubleshoot
%else
%attr(0711,setroubleshoot,setroubleshoot) %dir %{_rundir}/setroubleshoot
%endif
%doc AUTHORS COPYING ChangeLog DBUS.md NEWS README TODO
%changelog

1
setroubleshoot.sysusers Normal file
View File

@ -0,0 +1 @@
u setroubleshoot - "SELinux troubleshoot server" /var/lib/setroubleshoot

1
setroubleshoot.tmpfiles Normal file
View File

@ -0,0 +1 @@
d /run/setroubleshoot 711 setroubleshoot setroubleshoot -