Bug#1057787: apparmor scripts give SyntaxWarning messages with python3.12
Package: apparmor Version: 3.0.12-1+b1 Severity: normal X-Debbugs-Cc: richard...@gmail.com python3.12 starts giving SyntaxWarning messages for invalid escape sequences in the apparmor python scripts. With python3.11 these were only DeprecationWarning messages, not shown by default. According to release notes, in a future Python version SyntaxError will eventually be raised, instead of SyntaxWarning These all seem to have been fixed upstream https://gitlab.com/apparmor/apparmor/-/commit/d94731ddf42f9a5f5db5ceb5165d18547f010f63 e.g /usr/lib/python3/dist-packages/apparmor/aa.py:367: SyntaxWarning: invalid escape sequence '\s' pattern1 = re.compile('^\s*\S+ => (\/\S+)') /usr/lib/python3/dist-packages/apparmor/aa.py:368: SyntaxWarning: invalid escape sequence '\s' pattern2 = re.compile('^\s*(\/\S+)') /usr/lib/python3/dist-packages/apparmor/aa.py:444: SyntaxWarning: invalid escape sequence '\.' elif re.search('^python([23]|[23]\.[0-9]+)?$', interpreter): /usr/lib/python3/dist-packages/apparmor/aa.py:446: SyntaxWarning: invalid escape sequence '\.' elif re.search('^ruby([0-9]+(\.[0-9]+)*)?$', interpreter): /usr/lib/python3/dist-packages/apparmor/aa.py:1680: SyntaxWarning: invalid escape sequence '\.' if re.search('^(.*/)?(disable|cache|cache\.d|force-complain|lxc|abi|\.git)/?$', path): /usr/lib/python3/dist-packages/apparmor/aa.py:2500: SyntaxWarning: invalid escape sequence '\d' if re.search('[\d\.]+\.so$', path) or re.search('\.so\.[\d\.]+$', path): /usr/lib/python3/dist-packages/apparmor/aa.py:2500: SyntaxWarning: invalid escape sequence '\.' if re.search('[\d\.]+\.so$', path) or re.search('\.so\.[\d\.]+$', path): /usr/lib/python3/dist-packages/apparmor/aa.py:2502: SyntaxWarning: invalid escape sequence '\d' libpath = re.sub('[\d\.]+\.so$', '*.so', libpath) /usr/lib/python3/dist-packages/apparmor/aa.py:2503: SyntaxWarning: invalid escape sequence '\.' /usr/lib/python3/dist-packages/apparmor/aare.py:94: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]+/\*{1,2}/$', '/**/', self.regex) # re.sub('/[^/]+/\*{1,2}$/', '/\*\*/', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:95: SyntaxWarning: invalid escape sequence '\*' elif re.search('/[^/]+\*\*[^/]*/$', self.regex): /usr/lib/python3/dist-packages/apparmor/aare.py:97: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]+\*\*[^/]*/$', '/**/', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:98: SyntaxWarning: invalid escape sequence '\*' elif re.search('/\*\*[^/]+/$', self.regex): /usr/lib/python3/dist-packages/apparmor/aare.py:100: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/\*\*[^/]+/$', '/**/', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:106: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]+/\*{1,2}$', '/**', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:107: SyntaxWarning: invalid escape sequence '\*' elif re.search('/[^/]*\*\*[^/]+$', self.regex): /usr/lib/python3/dist-packages/apparmor/aare.py:109: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]*\*\*[^/]+$', '/**', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:110: SyntaxWarning: invalid escape sequence '\*' elif re.search('/[^/]+\*\*$', self.regex): /usr/lib/python3/dist-packages/apparmor/aare.py:112: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]+\*\*$', '/**', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:121: SyntaxWarning: invalid escape sequence '\*' match = re.search('/\*{1,2}(\.[^/]+)$', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:124: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]+/\*{1,2}\.[^/]+$', '/**' + match.groups()[0], self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:125: SyntaxWarning: invalid escape sequence '\*' elif re.search('/[^/]+\*\*[^/]*\.[^/]+$', self.regex): /usr/lib/python3/dist-packages/apparmor/aare.py:127: SyntaxWarning: invalid escape sequence '\*' match = re.search('/[^/]+\*\*[^/]*(\.[^/]+)$', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:128: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/[^/]+\*\*[^/]*\.[^/]+$', '/**' + match.groups()[0], self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:129: SyntaxWarning: invalid escape sequence '\*' elif re.search('/\*\*[^/]+\.[^/]+$', self.regex): /usr/lib/python3/dist-packages/apparmor/aare.py:131: SyntaxWarning: invalid escape sequence '\*' match = re.search('/\*\*[^/]+(\.[^/]+)$', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:132: SyntaxWarning: invalid escape sequence '\*' newpath = re.sub('/\*\*[^/]+\.[^/]+$', '/**' + match.groups()[0], self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:135: SyntaxWarning: invalid escape sequence '\.' match = re.search('(\.[^/]+)$', self.regex) /usr/lib/python3/dist-packages/apparmor/aare.py:137:
Bug#1057695: debian-goodies: checkrestart gives SyntaxWarning messages with python3.12
Package: debian-goodies Version: 0.88.1 Severity: normal X-Debbugs-Cc: richard...@gmail.com python3.12 starts giving SyntaxWarning messages for invalid escape sequences in the checkrestart python script. With python3.11 these were only DeprecationWarning messages, not shown by default. According to release notes, in a future Python version SyntaxError will eventually be raised, instead of SyntaxWarning /usr/sbin/checkrestart:222: SyntaxWarning: invalid escape sequence '\S' m = re.match('^diversion by (\S+) (from|to): (.*)$', line) /usr/sbin/checkrestart:398: SyntaxWarning: invalid escape sequence '\(' if re.compile("DEL").search(last) or re.compile("\(deleted\)").search(data) or re.compile("\(path inode=[0-9]+\)$").search(data): /usr/sbin/checkrestart:398: SyntaxWarning: invalid escape sequence '\(' if re.compile("DEL").search(last) or re.compile("\(deleted\)").search(data) or re.compile("\(path inode=[0-9]+\)$").search(data): /usr/sbin/checkrestart:430: SyntaxWarning: invalid escape sequence '\s' if re.compile("\s\(deleted\)$").search(fname): /usr/sbin/checkrestart:437: SyntaxWarning: invalid escape sequence '\s' data = re.split('\s+', output.strip('\n'), 3) /usr/sbin/checkrestart:440: SyntaxWarning: invalid escape sequence '\s' if re.compile("\s\(deleted\)$").search(f): /usr/sbin/checkrestart:464: SyntaxWarning: invalid escape sequence '\.' if ( f.startswith('/lib/') or f.startswith('/usr/lib/') ) and re.compile("\.so[\d.]+$"): /usr/sbin/checkrestart:468: SyntaxWarning: invalid escape sequence '\+' f = re.compile("\+").sub("\+", f) /usr/sbin/checkrestart:468: SyntaxWarning: invalid escape sequence '\+' f = re.compile("\+").sub("\+", f) /usr/sbin/checkrestart:469: SyntaxWarning: invalid escape sequence '\d' f = re.compile(".so[\d.]+$").sub(".so.*", f) /usr/sbin/checkrestart:470: SyntaxWarning: invalid escape sequence '\.' f = re.compile("\.").sub("\.", f) /usr/sbin/checkrestart:470: SyntaxWarning: invalid escape sequence '\.' f = re.compile("\.").sub("\.", f) /usr/sbin/checkrestart:594: SyntaxWarning: invalid escape sequence '\(' if re.compile("\(path inode=[0-9]+\)$").search(f): /usr/sbin/checkrestart:651: SyntaxWarning: invalid escape sequence '\d' re_uids = re.compile('Uid:\t(\d+)\t(\d+)\t(\d+)\t(\d+)$') /usr/sbin/checkrestart:764: SyntaxWarning: invalid escape sequence '\(' return re.sub('( \(deleted\)|.dpkg-new).*$','',f) Do all these need to be changed to raw strings? -- System Information: Debian Release: trixie/sid APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.5.0-5-amd64 (SMP w/8 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled debian-goodies depends on no packages. Versions of packages debian-goodies recommends: ii apt2.7.6 ii curl 8.4.0-2 pn dctrl-tools pn elfutils pn equivs pn libfile-slurper-perl pn libfile-which-perl ii libipc-system-simple-perl 1.30-2 ii man-db 2.12.0-1 ii perl 5.36.0-10 ii popularity-contest 1.77 ii procps 2:4.0.4-2 ii python33.11.4-5+b1 ii sensible-utils 0.0.20 ii whiptail 0.52.24-1+b1 ii zenity 3.44.2-1 Versions of packages debian-goodies suggests: pn apt-file pn ccze pn debsums ii firefox-esr [www-browser] 115.5.0esr-1 pn konqueror ii lsb-release12.0-2 ii lsof 4.95.0-1 ii openssh-client 1:9.4p1-1 pn sudo ii xdg-utils 1.1.3-4.1 -- no debconf information
Bug#1057453: apparmor: typo in man apparmor_parser for --warn options
Package: apparmor Version: 3.0.12-1+b1 Severity: minor X-Debbugs-Cc: richard...@gmail.com man apparmor_parser gives examples for the --warn command line option as apparmor_parser --warn=rules-not-enforced ... and apparmor_parser --warn=no-rules-not-enforced ... but the actual --warn options are rule-not-enforced / no-rule-not-enforced (without s) -- System Information: Debian Release: trixie/sid APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.5.0-4-amd64 (SMP w/8 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages apparmor depends on: ii debconf [debconf-2.0] 1.5.82 ii libc6 2.37-12 apparmor recommends no packages. Versions of packages apparmor suggests: ii apparmor-profiles-extra 1.35 ii apparmor-utils 3.0.12-1 -- debconf information excluded
Bug#1035025: chkrootkit.service does not run every day if system gets suspended
Package: chkrootkit Version: 0.57-2+b1 Severity: normal X-Debbugs-Cc: richard...@gmail.com /lib/systemd/system/chkrootkit.timer contains - # then run every day OnUnitActiveSec=24h This is a monotonic timer. According to systemd.timer manpage - These are monotonic timers, independent of wall-clock time and timezones. If the computer is temporarily suspended, the monotonic clock generally pauses, too. On my system, which is usually suspended overnight, the chkrootkit.service has not run since last upgrading over 2 days ago. ~$ date Thu 27 Apr 14:40:00 CEST 2023 ~$ systemctl status chkrootkit.timer | more ● chkrootkit.timer - chkrootkit daily timer Loaded: loaded (/lib/systemd/system/chkrootkit.timer; enabled; preset: enab led) Active: active (waiting) since Tue 2023-04-25 05:51:39 CEST; 2 days ago Until: Tue 2023-04-25 05:51:39 CEST; 2 days ago Trigger: Fri 2023-04-28 06:04:11 CEST; 15h left Triggers: ● chkrootkit.service Docs: man:chkrootkit(8) ~$ ~$ #suspended for about one hour ~$ ~$ date Thu 27 Apr 17:46:01 CEST 2023 ~$ systemctl status chkrootkit.timer | more ● chkrootkit.timer - chkrootkit daily timer Loaded: loaded (/lib/systemd/system/chkrootkit.timer; enabled; preset: enab led) Active: active (waiting) since Tue 2023-04-25 05:51:39 CEST; 2 days ago Until: Tue 2023-04-25 05:51:39 CEST; 2 days ago Trigger: Fri 2023-04-28 07:37:58 CEST; 13h left Triggers: ● chkrootkit.service Docs: man:chkrootkit(8) The trigger is further in the future. I guess the timer will expire eventually, but to preserve the old crontab behaviour and run every day, perhaps a realtime (i.e. wallclock) timer should be used e.g OnCalendar=daily -- System Information: Debian Release: 12.0 APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.1.0-7-amd64 (SMP w/8 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages chkrootkit depends on: ii libc6 2.36-9 Versions of packages chkrootkit recommends: ii anacron2.3-36 ii binutils 2.40-2 ii exim4-daemon-light [mail-transport-agent] 4.96-14 ii iproute2 6.1.0-2 ii mailutils [mailx] 1:3.15-4 ii net-tools 2.10-0.1 ii procps 2:4.0.2-3 ii systemd-sysv 252.6-1 chkrootkit suggests no packages. -- no debconf information
Bug#1034511: apt-cacher-ng: Cron job does not delete old log.html.xz files
Package: apt-cacher-ng Version: 3.7.4-1+b2 Severity: normal X-Debbugs-Cc: richard...@gmail.com This line in the apt-cacher-ng daily cron job does not actually delete any 'maint_*.log.html.xz' files find /var/log/apt-cacher-ng -maxdepth 1 -name 'maint_*.log.html.xz' -or -name 'maint_*.log.html' -type f -user apt-cacher-ng -mtime +10 -delete The find manpage under NON-BUGS "Operator precedence surprises" explains why this does not work. Brackets with quotes are needed e.g. find /var/log/apt-cacher-ng -maxdepth 1 \( -name 'maint_*.log.html.xz' -or -name 'maint_*.log.html' \) -type f -user apt-cacher-ng -mtime +10 -delete Alternatively the " -or -name 'maint_*.log.html'" can be completely omitted, leaving find /var/log/apt-cacher-ng -maxdepth 1 -name 'maint_*.log.html.xz' -type f -user apt-cacher-ng -mtime +10 -delete as the next line in the cron job compresses all 'maint_*.log.html' files older than 5 days anyway -- Package-specific info: -- System Information: Debian Release: 12.0 APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.1.0-7-amd64 (SMP w/4 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages apt-cacher-ng depends on: ii adduser3.132 ii debconf [debconf-2.0] 1.5.82 ii dpkg 1.21.21 ii libbz2-1.0 1.0.8-5+b1 ii libc-ares2 1.18.1-2 ii libc6 2.36-8 ii libevent-2.1-7 2.1.12-stable-8 ii libevent-pthreads-2.1-72.1.12-stable-8 ii libfuse2 2.9.9-6+b1 ii libgcc-s1 12.2.0-14 ii liblzma5 5.4.1-0.2 ii libssl33.0.8-1 ii libstdc++6 12.2.0-14 ii libsystemd0252.6-1 ii libwrap0 7.6.q-32 ii lsb-base 11.6 ii sysvinit-utils [lsb-base] 3.06-4 ii zlib1g 1:1.2.13.dfsg-1 Versions of packages apt-cacher-ng recommends: ii ca-certificates 20230311 Versions of packages apt-cacher-ng suggests: ii avahi-daemon 0.8-9 pn doc-base -- Configuration Files: /etc/apt-cacher-ng/security.conf [Errno 13] Permission denied: '/etc/apt-cacher-ng/security.conf' -- debconf information: apt-cacher-ng/port: keep apt-cacher-ng/proxy: keep apt-cacher-ng/bindaddress: keep apt-cacher-ng/gentargetmode: No automated setup * apt-cacher-ng/tunnelenable: false apt-cacher-ng/cachedir: keep
Bug#1023470: python3-apt: python3.11 not supported
Package: python3-apt Version: 2.3.0+nmu1 Severity: normal X-Debbugs-Cc: richard...@gmail.com It is not possible to "import apt" using python3.11 in testing ~$ python3.11 Python 3.11.0 (main, Oct 24 2022, 21:26:25) [GCC 12.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import apt Traceback (most recent call last): File "", line 1, in File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in import apt_pkg ModuleNotFoundError: No module named 'apt_pkg' -- System Information: Debian Release: bookworm/sid APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.0.0-2-amd64 (SMP w/4 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages python3-apt depends on: ii distro-info-data 0.56 ii libapt-pkg6.0 2.5.3+b1 ii libc6 2.35-4 ii libgcc-s1 12.2.0-5 ii libstdc++6 12.2.0-5 ii python-apt-common 2.3.0+nmu1 ii python33.10.6-1 Versions of packages python3-apt recommends: ii iso-codes4.11.0-1 ii lsb-release 12.0-1 Versions of packages python3-apt suggests: ii apt 2.5.3+b1 pn python-apt-doc -- no debconf information
Bug#1022890: cruft-ng: Broken symlinks not yet implemented
Package: cruft-ng Version: 0.9.46 Severity: wishlist X-Debbugs-Cc: richard...@gmail.com cruft-ng does not yet support reporting of broken symlinks But the report still produces the line broken symlinks: / with no broken symlinks listed, which could be misleading -- System Information: Debian Release: bookworm/sid APT prefers stable-security APT policy: (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 6.0.0-2-amd64 (SMP w/4 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages cruft-ng depends on: ii libc6 2.35-3 ii libgcc-s1 12.2.0-5 ii libstdc++6 12.2.0-5 ii plocate 1.1.16-1+b1 cruft-ng recommends no packages. cruft-ng suggests no packages. -- no debconf information
Bug#1010362: cruft-ng: Segmentation fault in cruft-ng
Package: cruft-ng Version: 0.4.52 Severity: normal X-Debbugs-Cc: richard...@gmail.com I had created a dpkg local diversion using the command - dpkg-divert --divert /etc/PackageKit/20packagekit.distrib --rename /etc/apt/apt.conf.d/20packagekit The output of the command "dpkg-divert --list" command is now - diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash local diversion of /etc/apt/apt.conf.d/20packagekit to /etc/PackageKit/20packagekit.distrib diversion of /usr/bin/firefox to /usr/bin/firefox.real by firefox-esr diversion of /bin/sh to /bin/sh.distrib by dash When I run cruft-ng version 0.4.52 on the system it crashes with Segmentation fault Below is the relevant part of the output (in gdb, with DEBUG variable set to 1) Note that the output of "dpkg-divert --list" does not show a package name for the local diversion. The code parsing the output in dpkg_open() always assumes that there is one. (If the dpkg local diversion is removed, cruft-ng completes successfully) ... READING FILES IN DPKG DATABASE [Detaching after vfork from child process 104913] diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash local diversion of /etc/apt/apt.conf.d/20packagekit to /etc/PackageKit/20packagekit.distrib Program received signal SIGSEGV, Segmentation fault. __strlen_sse2 () at ../sysdeps/x86_64/multiarch/strlen-vec.S:133 Download failed: Invalid argument. Continuing without source file ./string/../sysdeps/x86_64/multiarch/strlen-vec.S. 133 ../sysdeps/x86_64/multiarch/strlen-vec.S: No such file or directory. (gdb) bt #0 __strlen_sse2 () at ../sysdeps/x86_64/multiarch/strlen-vec.S:133 #1 0x55568e8c in std::char_traits::length (__s=0x0) at /usr/include/c++/11/bits/char_traits.h:399 #2 std::__cxx11::basic_string, std::allocator >::assign (__s=0x0, this=0x7fffcb20) at /usr/include/c++/11/bits/basic_string.h:1459 #3 std::__cxx11::basic_string, std::allocator >::operator= (__s=0x0, this=0x7fffcb20) at /usr/include/c++/11/bits/basic_string.h:690 #4 read_diversions (diversions=std::vector of length 2, capacity 2 = {...}) at ./dpkg_popen.cc:66 #5 0x555696ee in read_dpkg_items ( dpkg=std::vector of length 0, capacity 0) at ./dpkg_popen.cc:83 #6 0x8b5d in main (argc=, argv=) at ./cruft.cc:258 (gdb) -- System Information: Debian Release: bookworm/sid APT prefers testing-debug APT policy: (500, 'testing-debug'), (500, 'stable-security'), (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 5.17.0-1-amd64 (SMP w/4 CPU threads; PREEMPT) Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB:en Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages cruft-ng depends on: ii cruft-common 0.9.42 ii libc6 2.33-7 ii libgcc-s1 12-20220319-1 ii libstdc++612-20220319-1 ii plocate 1.1.15-2 cruft-ng recommends no packages. cruft-ng suggests no packages. -- no debconf information