Debrand for AlmaLinux

This commit is contained in:
Andrew Lukoshko 2025-02-12 03:42:17 +00:00 committed by AlmaLinux Autopatch
commit ede3277daa
111 changed files with 3380 additions and 306 deletions

View File

@ -0,0 +1,22 @@
From 9fac3149c4384af4dfd4af796120a89611cf48f5 Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Sat, 25 Jan 2025 01:21:30 +0000
Subject: [PATCH] mkosi: add loongarch64 to Debian's list of EFI arches
(cherry picked from commit 5ff144515e8b4d8faeb77461b9a62acb0ff1c0a5)
---
mkosi.conf.d/10-debian-ubuntu/mkosi.conf.d/efi.conf | 1 +
1 file changed, 1 insertion(+)
diff --git a/mkosi.conf.d/10-debian-ubuntu/mkosi.conf.d/efi.conf b/mkosi.conf.d/10-debian-ubuntu/mkosi.conf.d/efi.conf
index 781670a775..c808ddd9cf 100644
--- a/mkosi.conf.d/10-debian-ubuntu/mkosi.conf.d/efi.conf
+++ b/mkosi.conf.d/10-debian-ubuntu/mkosi.conf.d/efi.conf
@@ -8,6 +8,7 @@ Architecture=|arm
Architecture=|arm64
Architecture=|riscv32
Architecture=|riscv64
+Architecture=|loongarch64
[Content]
Packages=

View File

@ -0,0 +1,24 @@
From 52b5a79982e3dec63532f9145f12f0d2c212cef6 Mon Sep 17 00:00:00 2001
From: Adam Williamson <awilliam@redhat.com>
Date: Fri, 10 Jan 2025 13:01:47 -0800
Subject: [PATCH] kbd-model-map: add a georgian mapping
https://github.com/legionus/kbd/pull/127 adds a Georgian mapping
to kbd. console-setup already has one. Let's support it here, so
it's used for Georgian installs on distros that use this table.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
(cherry picked from commit f89d4c5f108ffbd29d0cc963ed7202bb9b0f778a)
---
src/locale/kbd-model-map | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/locale/kbd-model-map b/src/locale/kbd-model-map
index 279d1a36d8..612f6d749a 100644
--- a/src/locale/kbd-model-map
+++ b/src/locale/kbd-model-map
@@ -70,3 +70,4 @@ khmer kh,us pc105 - terminate:ctrl_alt_bksp
es-dvorak es microsoftpro dvorak terminate:ctrl_alt_bksp
lv lv pc105 apostrophe terminate:ctrl_alt_bksp
lv-tilde lv pc105 tilde terminate:ctrl_alt_bksp
+ge ge,us pc105 - terminate:ctrl_alt_bksp

View File

@ -0,0 +1,35 @@
From b6b287854aa622083ec25e19e2fac26bd332e693 Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Mon, 27 Jan 2025 20:30:16 +0000
Subject: [PATCH] core: add trigger to path unit debug log
Useful for debugging, given it's already logging and the trigger
is known, add it
(cherry picked from commit 6566b4306a65bc7af6ade0cb6887217212925202)
---
src/core/path.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/core/path.c b/src/core/path.c
index e0dc93aabd..c9ea31a74e 100644
--- a/src/core/path.c
+++ b/src/core/path.c
@@ -591,7 +591,7 @@ static void path_enter_waiting(Path *p, bool initial, bool from_trigger_notify)
}
if (path_check_good(p, initial, from_trigger_notify, &trigger_path)) {
- log_unit_debug(UNIT(p), "Got triggered.");
+ log_unit_debug(UNIT(p), "Got triggered by '%s'.", trigger_path);
path_enter_running(p, trigger_path);
return;
}
@@ -608,7 +608,7 @@ static void path_enter_waiting(Path *p, bool initial, bool from_trigger_notify)
* recheck */
if (path_check_good(p, false, from_trigger_notify, &trigger_path)) {
- log_unit_debug(UNIT(p), "Got triggered.");
+ log_unit_debug(UNIT(p), "Got triggered by '%s'.", trigger_path);
path_enter_running(p, trigger_path);
return;
}

View File

@ -0,0 +1,30 @@
From 91577ec207633cc1bbdae2cca2658bf032314f8e Mon Sep 17 00:00:00 2001
From: Nick Rosbrook <enr0n@ubuntu.com>
Date: Wed, 23 Oct 2024 16:31:00 -0400
Subject: [PATCH] test: cleanup after testcase_12_resolvectl2
(cherry picked from commit 266cfdfc77a0eee6d4df60d9795f381ced8a1e65)
---
test/units/TEST-75-RESOLVED.sh | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/test/units/TEST-75-RESOLVED.sh b/test/units/TEST-75-RESOLVED.sh
index fd07fd898a..25ab02a938 100755
--- a/test/units/TEST-75-RESOLVED.sh
+++ b/test/units/TEST-75-RESOLVED.sh
@@ -936,6 +936,15 @@ testcase_11_nft() {
# Test resolvectl show-server-state
testcase_12_resolvectl2() {
+ # Cleanup
+ # shellcheck disable=SC2317
+ cleanup() {
+ rm -f /run/systemd/resolved.conf.d/reload.conf
+ systemctl reload systemd-resolved.service
+ }
+
+ trap cleanup RETURN
+
run resolvectl show-server-state
grep -qF "10.0.0.1" "$RUN_OUT"
grep -qF "Interface" "$RUN_OUT"

View File

@ -0,0 +1,22 @@
From 6ad1efb288c33c8531a815831f3b8d245df884a1 Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Sun, 26 Jan 2025 20:06:36 +0000
Subject: [PATCH] test: install stub package for test-ukify unit test
(cherry picked from commit 78ce88e2656aedee8b38b36edcf1e074b90ff53a)
---
.github/workflows/unit_tests.sh | 1 +
1 file changed, 1 insertion(+)
diff --git a/.github/workflows/unit_tests.sh b/.github/workflows/unit_tests.sh
index 4433d847ce..168bcc55c3 100755
--- a/.github/workflows/unit_tests.sh
+++ b/.github/workflows/unit_tests.sh
@@ -24,6 +24,7 @@ ADDITIONAL_DEPS=(
python3-pyparsing
python3-pytest
rpm
+ systemd-boot-efi
zstd
)

View File

@ -0,0 +1,35 @@
From 1ccfd9a55775e5d4f717d5b59040ee1679c16996 Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Sun, 26 Jan 2025 19:50:22 +0000
Subject: [PATCH] test: use local stub if available in test-ukify
It might not be available on a CI system in the system
path, so use the local one if it was built
(cherry picked from commit bcca98c6326b2766d6b769661b15e292c12cf8ac)
---
src/ukify/test/test_ukify.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/ukify/test/test_ukify.py b/src/ukify/test/test_ukify.py
index 3ed21fc0ac..6c427623ea 100755
--- a/src/ukify/test/test_ukify.py
+++ b/src/ukify/test/test_ukify.py
@@ -59,6 +59,8 @@ except ValueError:
slow_tests = True
arg_tools = ['--tools', build_root] if build_root else []
+if build_root and pathlib.Path(f"{build_root}/linux{ukify.guess_efi_arch()}.efi.stub").exists():
+ arg_tools += ['--stub', f"{build_root}/linux{ukify.guess_efi_arch()}.efi.stub"]
def systemd_measure():
opts = ukify.create_parser().parse_args(arg_tools)
@@ -654,7 +656,7 @@ def test_inspect(kernel_initrd, tmp_path, capsys):
f'--os-release={osrel_arg}',
f'--uname={uname_arg}',
f'--output={output}',
- ]
+ ] + arg_tools
if slow_tests:
args += [
f'--secureboot-certificate={cert.name}',

View File

@ -0,0 +1,25 @@
From 534b837ba8c796f61743f99e147be5769603ae13 Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Sun, 26 Jan 2025 17:35:06 +0000
Subject: [PATCH] test: support slow test-ukify on Debian/Ubuntu
Kernels are installed in /boot/ so find them there too
(cherry picked from commit 25a253084a16dcc077592ff85d62f69fa940d1de)
---
src/ukify/test/test_ukify.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/ukify/test/test_ukify.py b/src/ukify/test/test_ukify.py
index 6c427623ea..61d465fca1 100755
--- a/src/ukify/test/test_ukify.py
+++ b/src/ukify/test/test_ukify.py
@@ -408,6 +408,8 @@ def test_help_error(capsys):
@pytest.fixture(scope='session')
def kernel_initrd():
items = sorted(glob.glob('/lib/modules/*/vmlinuz'))
+ if not items:
+ items = sorted(glob.glob('/boot/vmlinuz*'))
if not items:
return None

View File

@ -0,0 +1,23 @@
From e5bf5f0d6101acb818e76083c9b48ecf6e9e015e Mon Sep 17 00:00:00 2001
From: AndreFerreiraMsc <mestreandreferreira@proton.me>
Date: Tue, 28 Jan 2025 14:11:58 +0100
Subject: [PATCH] man: Update nss-myhostname.xml to reflect files
(cherry picked from commit 3e1d7b6aae5f5b24610620db810a5730dcc9a6a6)
---
man/nss-myhostname.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/nss-myhostname.xml b/man/nss-myhostname.xml
index 200c9220b9..653d8e49d4 100644
--- a/man/nss-myhostname.xml
+++ b/man/nss-myhostname.xml
@@ -74,7 +74,7 @@
<para>To activate the NSS modules, add <literal>myhostname</literal> to the line starting with
<literal>hosts:</literal> in <filename>/etc/nsswitch.conf</filename>.</para>
- <para>It is recommended to place <literal>myhostname</literal> after <literal>file</literal> and before <literal>dns</literal>.
+ <para>It is recommended to place <literal>myhostname</literal> after <literal>files</literal> and before <literal>dns</literal>.
This resolves well-known hostnames like <literal>localhost</literal>
and the machine hostnames locally. It is consistent with the behaviour
of <command>nss-resolve</command>, and still allows overriding via

View File

@ -0,0 +1,32 @@
From d07300405f955af8e94d4aee7d921ef05ee07fa2 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Wed, 29 Jan 2025 14:43:06 +0100
Subject: [PATCH] ukify: Fix two typing issues
(cherry picked from commit 2d6ae4319ccecdde7a87d12cb439a892afdec943)
---
src/ukify/ukify.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/ukify/ukify.py b/src/ukify/ukify.py
index 4919076098..141dd24ccb 100755
--- a/src/ukify/ukify.py
+++ b/src/ukify/ukify.py
@@ -1442,7 +1442,7 @@ def inspect_section(
data = section.get_data(length=size)
digest = sha256(data).hexdigest()
- struct = {
+ struct: dict[str, Union[int, str]] = {
'size': size,
'sha256': digest,
}
@@ -1461,7 +1461,7 @@ def inspect_section(
if opts.json == 'off':
print(f'{name}:\n size: {size} bytes\n sha256: {digest}')
if ttype == 'text':
- text = textwrap.indent(struct['text'].rstrip(), ' ' * 4)
+ text = textwrap.indent(cast(str, struct['text']).rstrip(), ' ' * 4)
print(f' text:\n{text}')
return name, struct

View File

@ -0,0 +1,43 @@
From a485c928ee9872c8ce7ddbb8e9ba6f33f9ef23cc Mon Sep 17 00:00:00 2001
From: "Alex Xu (Hello71)" <alex_y_xu@yahoo.ca>
Date: Tue, 28 Jan 2025 17:17:01 -0500
Subject: [PATCH] meson: generate keyboard-keys-list from local input.h
otherwise it will use the system input.h which will fail to build if
newer than the bundled version
Fixes: 0a73c8e7b8 ("linux: import input.h and friends")
(cherry picked from commit bc996fd1ba7bce7be4cbae0d0d5ba7c35e8c3f50)
---
src/udev/generate-keyboard-keys-list.sh | 2 +-
src/udev/meson.build | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/udev/generate-keyboard-keys-list.sh b/src/udev/generate-keyboard-keys-list.sh
index ead3113342..4cac507322 100755
--- a/src/udev/generate-keyboard-keys-list.sh
+++ b/src/udev/generate-keyboard-keys-list.sh
@@ -3,7 +3,7 @@
set -eu
set -o pipefail
-${1:?} -dM -include linux/input.h - </dev/null | awk '
+${1:?} -dM -include "${2:?}" - </dev/null | awk '
/\<(KEY_(MAX|MIN_INTERESTING))|(BTN_(MISC|MOUSE|JOYSTICK|GAMEPAD|DIGI|WHEEL|TRIGGER_HAPPY))\>/ { next }
/^#define[ \t]+(KEY|BTN)_[^ ]+[ \t]+[0-9BK]/ { print $2 }
'
diff --git a/src/udev/meson.build b/src/udev/meson.build
index 3535551e74..921dfac39c 100644
--- a/src/udev/meson.build
+++ b/src/udev/meson.build
@@ -57,8 +57,9 @@ endif
generate_keyboard_keys_list = find_program('generate-keyboard-keys-list.sh')
keyboard_keys_list_txt = custom_target(
'keyboard-keys-list.txt',
+ input : files('../basic/linux/input.h'),
output : 'keyboard-keys-list.txt',
- command : [generate_keyboard_keys_list, cpp],
+ command : [generate_keyboard_keys_list, cpp, '@INPUT@'],
capture : true)
generate_keyboard_keys_gperf = find_program('generate-keyboard-keys-gperf.sh')

View File

@ -0,0 +1,33 @@
From f1c2574578e655a15367875548d4f3b8312fe1f6 Mon Sep 17 00:00:00 2001
From: Devilish Spirits <devilishspirits@gmail.com>
Date: Wed, 29 Jan 2025 21:54:27 +0100
Subject: [PATCH] Fix inversion of timesyncd_usec/epoch_usec variables in
clock-warp.c
In clock_apply_epoch() function, the /usr/lib/clock-epoch timestamp was set to timesyncd_usec instead of epoch_usec and vice-versa which produced a misleading log message about the clock source systemd used for early clock sanitization. This trivial commit fix the mistake.
(cherry picked from commit 164295eb6dcc0271d7de030809732c23eeccf9f0)
---
src/core/clock-warp.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/core/clock-warp.c b/src/core/clock-warp.c
index 49d57afa9a..ceaf4b3926 100644
--- a/src/core/clock-warp.c
+++ b/src/core/clock-warp.c
@@ -27,13 +27,13 @@ void clock_apply_epoch(bool allow_backwards) {
r = RET_NERRNO(stat(TIMESYNCD_CLOCK_FILE, &st));
if (r >= 0)
- epoch_usec = timespec_load(&st.st_mtim);
+ timesyncd_usec = timespec_load(&st.st_mtim);
else if (r != -ENOENT)
log_warning_errno(r, "Could not stat %s, ignoring: %m", TIMESYNCD_CLOCK_FILE);
r = RET_NERRNO(stat(EPOCH_CLOCK_FILE, &st));
if (r >= 0)
- timesyncd_usec = timespec_load(&st.st_mtim);
+ epoch_usec = timespec_load(&st.st_mtim);
else if (r != -ENOENT)
log_warning_errno(r, "Could not stat %s, ignoring: %m", EPOCH_CLOCK_FILE);

View File

@ -0,0 +1,29 @@
From e9105d34986ffda1d6d713c2f4a93454e639556e Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Thu, 30 Jan 2025 01:51:05 +0000
Subject: [PATCH] pe: do not warn about .initrd addons
We now support them, so stop warning about them.
(cherry picked from commit f6928e6b5d59fd6b0dc34d338be1cd427c1d97d5)
---
src/shared/pe-binary.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/shared/pe-binary.c b/src/shared/pe-binary.c
index c50aad18f3..173c5adf90 100644
--- a/src/shared/pe-binary.c
+++ b/src/shared/pe-binary.c
@@ -272,10 +272,11 @@ bool pe_is_addon(const PeHeader *pe_header, const IMAGE_SECTION_HEADER *sections
if (le16toh(pe_header->optional.Subsystem) != IMAGE_SUBSYSTEM_EFI_APPLICATION)
return false;
- /* Add-ons do not have a Linux kernel, but do have either .cmdline or .dtb (currently) */
+ /* Add-ons do not have a Linux kernel, but do have one of .cmdline, .dtb, .initrd or .ucode (currently) */
return !pe_header_find_section(pe_header, sections, ".linux") &&
(pe_header_find_section(pe_header, sections, ".cmdline") ||
pe_header_find_section(pe_header, sections, ".dtb") ||
+ pe_header_find_section(pe_header, sections, ".initrd") ||
pe_header_find_section(pe_header, sections, ".ucode"));
}

View File

@ -0,0 +1,28 @@
From 6936658daf139c5d4114a44116905fb469e5a1e2 Mon Sep 17 00:00:00 2001
From: Andrew Sayers <andrew-github.com@pileofstuff.org>
Date: Wed, 29 Jan 2025 11:03:00 +0000
Subject: [PATCH] Fix tense in SD_MESSAGE_SHUTDOWN_STR
This is printed by bus_manager_log_shutdown() in logind-dbus.c,
near the start of the shutdown process.
Clarify that events *will* happen, long after this message is sent.
(cherry picked from commit 6c45c5a57cac1dd0c35a879bf46d4a42e03e74e1)
---
catalog/systemd.catalog.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/catalog/systemd.catalog.in b/catalog/systemd.catalog.in
index eab4afd0cd..f3ca748862 100644
--- a/catalog/systemd.catalog.in
+++ b/catalog/systemd.catalog.in
@@ -189,7 +189,7 @@ Defined-By: systemd
Support: %SUPPORT_URL%
System shutdown has been initiated. The shutdown has now begun and
-all system services are terminated and all file systems unmounted.
+all system services will be terminated and all file systems will be unmounted.
-- c14aaf76ec284a5fa1f105f88dfb061c
Subject: System factory reset initiated

View File

@ -0,0 +1,25 @@
From 4a861abc1fbad6883ae21747016d822d205068e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Thu, 30 Jan 2025 15:25:38 +0100
Subject: [PATCH] firstboot: fix crash when hostname question is skipped
(cherry picked from commit b66a4c157e9754528eec16c235265b4ce94d31e8)
---
src/firstboot/firstboot.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/firstboot/firstboot.c b/src/firstboot/firstboot.c
index 9be62b8df3..a389eeae10 100644
--- a/src/firstboot/firstboot.c
+++ b/src/firstboot/firstboot.c
@@ -634,7 +634,9 @@ static int prompt_hostname(int rfd) {
if (r < 0)
return r;
- hostname_cleanup(arg_hostname);
+ if (arg_hostname)
+ hostname_cleanup(arg_hostname);
+
return 0;
}

View File

@ -0,0 +1,36 @@
From d42315d9c67e919f9403b9c2284bef9c9a8c2f3a Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat, 1 Feb 2025 09:54:27 +0000
Subject: [PATCH] build(deps): bump coverallsapp/github-action from 2.3.4 to
2.3.6
Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.3.4 to 2.3.6.
- [Release notes](https://github.com/coverallsapp/github-action/releases)
- [Commits](https://github.com/coverallsapp/github-action/compare/cfd0633edbd2411b532b808ba7a8b5e04f76d2c8...648a8eb78e6d50909eff900e4ec85cab4524a45b)
---
updated-dependencies:
- dependency-name: coverallsapp/github-action
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit f82660222063c09522440efa3fa8e02c97dab1d5)
---
.github/workflows/coverage.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml
index 78e6e05b2c..6503059ef4 100644
--- a/.github/workflows/coverage.yml
+++ b/.github/workflows/coverage.yml
@@ -142,7 +142,7 @@ jobs:
run: sudo mkosi sandbox lcov --ignore-errors inconsistent,inconsistent --list build/test/coverage/everything.coverage-info
- name: Coveralls
- uses: coverallsapp/github-action@cfd0633edbd2411b532b808ba7a8b5e04f76d2c8
+ uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b
if: github.repository == 'systemd/systemd' || github.repository == 'systemd/systemd-stable'
with:
file: build/test/coverage/everything.coverage-info

View File

@ -0,0 +1,37 @@
From c2c6101d26cef32bd9f7bf58d29bd79e38f64d9f Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat, 1 Feb 2025 09:54:20 +0000
Subject: [PATCH] build(deps): bump softprops/action-gh-release from 2.1.0 to
2.2.1
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.1.0 to 2.2.1.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/01570a1f39cb168c169c802c3bceb9e93fb10974...c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda)
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 30948201331e3c029c5557de23b57a37901c2eb4)
---
.github/workflows/make_release.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/make_release.yml b/.github/workflows/make_release.yml
index f8b82ae9bd..aa7491161a 100644
--- a/.github/workflows/make_release.yml
+++ b/.github/workflows/make_release.yml
@@ -18,7 +18,7 @@ jobs:
steps:
- name: Release
- uses: softprops/action-gh-release@01570a1f39cb168c169c802c3bceb9e93fb10974
+ uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda
with:
prerelease: ${{ contains(github.ref_name, '-rc') }}
draft: ${{ github.repository == 'systemd/systemd' }}

View File

@ -0,0 +1,37 @@
From b3e9de25f2cae33a451c1f7e981437e1f7fb2e56 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Sat, 1 Feb 2025 09:54:18 +0000
Subject: [PATCH] build(deps): bump super-linter/super-linter from 7.1.0 to
7.2.1
Bumps [super-linter/super-linter](https://github.com/super-linter/super-linter) from 7.1.0 to 7.2.1.
- [Release notes](https://github.com/super-linter/super-linter/releases)
- [Changelog](https://github.com/super-linter/super-linter/blob/main/CHANGELOG.md)
- [Commits](https://github.com/super-linter/super-linter/compare/b92721f792f381cedc002ecdbb9847a15ece5bb8...85f7611e0f7b53c8573cca84aa0ed4344f6f6a4d)
---
updated-dependencies:
- dependency-name: super-linter/super-linter
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
(cherry picked from commit 6e513fa489b1b0e94fc9d7f35290d5f56dd0f306)
---
.github/workflows/linter.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml
index d9f6a37680..0a07dadccb 100644
--- a/.github/workflows/linter.yml
+++ b/.github/workflows/linter.yml
@@ -29,7 +29,7 @@ jobs:
fetch-depth: 0
- name: Lint Code Base
- uses: super-linter/super-linter/slim@b92721f792f381cedc002ecdbb9847a15ece5bb8
+ uses: super-linter/super-linter/slim@85f7611e0f7b53c8573cca84aa0ed4344f6f6a4d
env:
DEFAULT_BRANCH: main
MULTI_STATUS: false

View File

@ -0,0 +1,41 @@
From 950d964ee5ba32f022ccd2e8ca09c91fb0cd3e76 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Mon, 3 Feb 2025 16:17:00 +0100
Subject: [PATCH] homectl: Fix empty checks
(cherry picked from commit 4ba3530d67d88c708c36840fbaed9935ae81faa9)
---
src/home/homectl.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/home/homectl.c b/src/home/homectl.c
index b3aacbcbcf..2163469a50 100644
--- a/src/home/homectl.c
+++ b/src/home/homectl.c
@@ -2553,7 +2553,7 @@ static int create_interactively(void) {
continue;
};
- if (available) {
+ if (!strv_isempty(available)) {
r = safe_atou(s, &u);
if (r >= 0) {
if (u <= 0 || u > strv_length(available)) {
@@ -2591,7 +2591,7 @@ static int create_interactively(void) {
return log_oom();
}
- if (groups) {
+ if (!strv_isempty(groups)) {
strv_sort_uniq(groups);
r = sd_json_variant_set_field_strv(&arg_identity_extra, "memberOf", groups);
@@ -2630,7 +2630,7 @@ static int create_interactively(void) {
log_notice("Specified shell '%s' is not installed, try another one.", shell);
}
- if (shell) {
+ if (!isempty(shell)) {
log_info("Selected %s as the shell for user %s", shell, username);
r = sd_json_variant_set_field_string(&arg_identity_extra, "shell", shell);

View File

@ -0,0 +1,117 @@
From a99729aba8c707f09bd96ed742bcab2f11790fb7 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Tue, 4 Feb 2025 09:24:26 +0100
Subject: [PATCH] ukify/measure: Revert changes to use SizeOfImage from Linux
PE binary
With 19812661f1f65ebe777d1626b5abf6475faababc, we make sure at runtime
in the stub itself that SizeOfImage from the Linux EFISTUB PE binary is
taken into account, so there's no need to take this into account in ukify
itself. By reverting the ukify change, we again ensure that Misc_VirtualSize
reflects the actual size of the Linux EFISTUB PE binary in the .linux section
which lots of tooling depends on. It also makes sure we don't measure a bunch
of extra zeroes in the stub which should fix systemd-pcrlock measurements as
well.
This effectively reverts 2188c759f97e40b97ebe3e94e82239f36b525b10 and
0005411352f9bda0d9887c37b9e75a2bce6c1133.
Fixes #35851
(cherry picked from commit 38801c91292fde004bec0974ed5602984701e03b)
---
src/measure/measure.c | 32 --------------------------------
src/ukify/ukify.py | 16 ++--------------
2 files changed, 2 insertions(+), 46 deletions(-)
diff --git a/src/measure/measure.c b/src/measure/measure.c
index e583444e0b..2057ce2a0e 100644
--- a/src/measure/measure.c
+++ b/src/measure/measure.c
@@ -544,38 +544,6 @@ static int measure_kernel(PcrState *pcr_states, size_t n) {
m += sz;
}
- if (c == UNIFIED_SECTION_LINUX) {
- _cleanup_free_ PeHeader *pe_header = NULL;
-
- r = pe_load_headers(fd, /*ret_dos_header=*/ NULL, &pe_header);
- if (r < 0)
- log_warning_errno(r, "Failed to parse kernel image file '%s', ignoring: %m", arg_sections[c]);
- else if (m < pe_header->optional.SizeOfImage) {
- memzero(buffer, BUFFER_SIZE);
-
- /* Our EFI stub measures VirtualSize bytes of the .linux section into PCR 11.
- * Notably, VirtualSize can be larger than the section's size on disk. In
- * that case the extra space is initialized with zeros, so the stub ends up
- * measuring a bunch of zeros. To accommodate this, we have to measure the
- * same number of zeros here. We opt to measure extra zeros here instead of
- * modifying the stub to only measure the number of bytes on disk as we want
- * newer ukify + systemd-measure to work with older versions of the stub and
- * as of 6.12 the kernel image's VirtualSize won't be larger than its size on
- * disk anymore (see https://github.com/systemd/systemd/issues/34578#issuecomment-2382459515).
- */
-
- while (m < pe_header->optional.SizeOfImage) {
- uint64_t sz = MIN(BUFFER_SIZE, pe_header->optional.SizeOfImage - m);
-
- for (size_t i = 0; i < n; i++)
- if (EVP_DigestUpdate(mdctx[i], buffer, sz) != 1)
- return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "Failed to run digest.");
-
- m += sz;
- }
- }
- }
-
fd = safe_close(fd);
if (m == 0) /* We skip over empty files, the stub does so too */
diff --git a/src/ukify/ukify.py b/src/ukify/ukify.py
index 141dd24ccb..7a9f63e1d4 100755
--- a/src/ukify/ukify.py
+++ b/src/ukify/ukify.py
@@ -388,7 +388,6 @@ class Section:
tmpfile: Optional[IO[Any]] = None
measure: bool = False
output_mode: Optional[str] = None
- virtual_size: Optional[int] = None
@classmethod
def create(cls, name: str, contents: Union[str, bytes, Path, None], **kwargs: Any) -> 'Section':
@@ -918,10 +917,7 @@ def pe_add_sections(uki: UKI, output: str) -> None:
new_section.set_file_offset(offset)
new_section.Name = section.name.encode()
- if section.virtual_size is not None:
- new_section.Misc_VirtualSize = section.virtual_size
- else:
- new_section.Misc_VirtualSize = len(data)
+ new_section.Misc_VirtualSize = len(data)
# Non-stripped stubs might still have an unaligned symbol table at the end, making their size
# unaligned, so we make sure to explicitly pad the pointer to new sections to an aligned offset.
new_section.PointerToRawData = round_up(len(pe.__data__), pe.OPTIONAL_HEADER.FileAlignment)
@@ -1166,6 +1162,7 @@ def make_uki(opts: UkifyConfig) -> None:
('.uname', opts.uname, True),
('.splash', opts.splash, True),
('.pcrpkey', pcrpkey, True),
+ ('.linux', linux, True),
('.initrd', initrd, True),
('.ucode', opts.microcode, True),
] # fmt: skip
@@ -1182,15 +1179,6 @@ def make_uki(opts: UkifyConfig) -> None:
for section in opts.sections:
uki.add_section(section)
- if linux is not None:
- try:
- virtual_size = pefile.PE(linux, fast_load=True).OPTIONAL_HEADER.SizeOfImage
- except pefile.PEFormatError:
- print(f'{linux} is not a valid PE file, not using SizeOfImage.')
- virtual_size = None
-
- uki.add_section(Section.create('.linux', linux, measure=True, virtual_size=virtual_size))
-
# Don't add a sbat section to profile PE binaries.
if opts.join_profiles or not opts.profile:
if linux is not None:

View File

@ -0,0 +1,30 @@
From 7358b67ad1e2eb865bd5628ff6c20a13439ff3d0 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Tue, 4 Feb 2025 11:42:42 +0100
Subject: [PATCH] sysupdate: Update example mode to 644 instead of 444
The UKI file has to be writable to be able to do boot counting in
the UEFI firmware which involves renaming the file by writing to
the file metadata which requires the file to be writable in the FAT
filesystem.
Fixes #36170
(cherry picked from commit 0e470e1cc32776f7b57f57640193d6dd0df97a5b)
---
man/sysupdate.d.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/sysupdate.d.xml b/man/sysupdate.d.xml
index bec423705c..5f108dacb1 100644
--- a/man/sysupdate.d.xml
+++ b/man/sysupdate.d.xml
@@ -977,7 +977,7 @@ PathRelativeTo=boot
MatchPattern=foobarOS_@v+@l-@d.efi \
foobarOS_@v+@l.efi \
foobarOS_@v.efi
-Mode=0444
+Mode=0644
TriesLeft=3
TriesDone=0
InstancesMax=2</programlisting></para>

View File

@ -0,0 +1,23 @@
From 7c8e8dfc4909f830b99c69de8ca30e99d2a61e7b Mon Sep 17 00:00:00 2001
From: Vyacheslav Yurkov <uvv.mail@gmail.com>
Date: Sun, 2 Feb 2025 10:13:38 +0100
Subject: [PATCH] meson: add install tag for systemctl
Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
(cherry picked from commit b1e5a7aa3f1e552c56d5adbeed6ff67d88d1e103)
---
src/systemctl/meson.build | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/systemctl/meson.build b/src/systemctl/meson.build
index 88f73bf502..46218dc8ef 100644
--- a/src/systemctl/meson.build
+++ b/src/systemctl/meson.build
@@ -61,6 +61,7 @@ executables += [
libzstd_cflags,
threads,
],
+ 'install_tag' : 'systemctl',
},
fuzz_template + {
'sources' : [

View File

@ -0,0 +1,31 @@
From 4e32ce3005b905309849322e373742d419f26803 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Tue, 4 Feb 2025 20:21:36 +0100
Subject: [PATCH] test: Drop -Dremote=enabled instructions from readme
The test commands now use mkosi sandbox which always makes sure the
required dependencies for systemd-journal-remote are enabled so no
need to reconfigure meson explicitly anymore.
(cherry picked from commit 284a56ff60bc8ff90c7f0e0614b1c30edd875288)
---
test/README.testsuite | 6 ------
1 file changed, 6 deletions(-)
diff --git a/test/README.testsuite b/test/README.testsuite
index e33c08f33a..17f430eeff 100644
--- a/test/README.testsuite
+++ b/test/README.testsuite
@@ -8,12 +8,6 @@ latest version of mkosi. See
for more specific details. Make sure `mkosi` is available in `$PATH` when
reconfiguring meson to make sure it is picked up properly.
-We also need to make sure the required meson options are enabled:
-
-```shell
-$ mkosi -f sandbox meson setup --reconfigure build -Dremote=enabled
-```
-
To make sure `mkosi` doesn't try to build systemd from source during the image build
process, you can add the following to `mkosi.local.conf`:

View File

@ -0,0 +1,61 @@
From c5524d94068c07ae57804050c7ab2b1c1cd0aeff Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Tue, 4 Feb 2025 20:24:17 +0100
Subject: [PATCH] test: Move NO_BUILD instructions to a separate section
This isn't relevant for regular development, so let's move it to a
separate section.
(cherry picked from commit 728a88e54998d143287ffe89faaeb9512cdf24e1)
---
test/README.testsuite | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/test/README.testsuite b/test/README.testsuite
index 17f430eeff..cec46d3e73 100644
--- a/test/README.testsuite
+++ b/test/README.testsuite
@@ -8,20 +8,6 @@ latest version of mkosi. See
for more specific details. Make sure `mkosi` is available in `$PATH` when
reconfiguring meson to make sure it is picked up properly.
-To make sure `mkosi` doesn't try to build systemd from source during the image build
-process, you can add the following to `mkosi.local.conf`:
-
-```
-[Build]
-Environment=NO_BUILD=1
-```
-
-You might also want to use the `PackageDirectories=` or `Repositories=` option to provide
-mkosi with a directory or repository containing the systemd packages that should be installed
-instead. If the repository containing the systemd packages is not a builtin repository known
-by mkosi, you can use the `SandboxTrees=` option to write an extra repository definition
-to /etc which is used when building the image instead.
-
Next, we can build the integration test image with meson:
```shell
@@ -80,6 +66,22 @@ mkosi in the systemd reposistory, so any local modifications to the mkosi
configuration (e.g. in `mkosi.local.conf`) are automatically picked up and used
by the integration tests as well.
+## Running the integration tests without building systemd from source
+
+To make sure `mkosi` doesn't try to build systemd from source during the image build
+process, you can add the following to `mkosi.local.conf`:
+
+```
+[Build]
+Environment=NO_BUILD=1
+```
+
+You might also want to use the `PackageDirectories=` or `Repositories=` option to provide
+mkosi with a directory or repository containing the systemd packages that should be installed
+instead. If the repository containing the systemd packages is not a builtin repository known
+by mkosi, you can use the `SandboxTrees=` option to write an extra repository definition
+to /etc which is used when building the image instead.
+
## Iterating on an integration test
To iterate on an integration test, let's first get a shell in the integration test environment by running

View File

@ -0,0 +1,64 @@
From f9da7a51e4755c09433c02131135169b32c27f71 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Tue, 4 Feb 2025 20:46:11 +0100
Subject: [PATCH] test: Move external packages section down and reword a little
This is advanced level stuff that regular contributors don't care
about in the slightest, so move it further down. Also reword the
section a little while we're at it.
(cherry picked from commit f017a5521305987fdeadf85b975b8ed44a9950b6)
---
test/README.testsuite | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/test/README.testsuite b/test/README.testsuite
index cec46d3e73..02f5404410 100644
--- a/test/README.testsuite
+++ b/test/README.testsuite
@@ -66,22 +66,6 @@ mkosi in the systemd reposistory, so any local modifications to the mkosi
configuration (e.g. in `mkosi.local.conf`) are automatically picked up and used
by the integration tests as well.
-## Running the integration tests without building systemd from source
-
-To make sure `mkosi` doesn't try to build systemd from source during the image build
-process, you can add the following to `mkosi.local.conf`:
-
-```
-[Build]
-Environment=NO_BUILD=1
-```
-
-You might also want to use the `PackageDirectories=` or `Repositories=` option to provide
-mkosi with a directory or repository containing the systemd packages that should be installed
-instead. If the repository containing the systemd packages is not a builtin repository known
-by mkosi, you can use the `SandboxTrees=` option to write an extra repository definition
-to /etc which is used when building the image instead.
-
## Iterating on an integration test
To iterate on an integration test, let's first get a shell in the integration test environment by running
@@ -151,6 +135,22 @@ that make use of `run_testcases`.
progress and only move the journal to its final location in the build directory
(`$BUILD_DIR/test/journal`) when the test is finished.
+## Running the integration tests without building systemd from source
+
+If you want to run the integration tests against prebuilt systemd packages,
+first add the following to `mkosi.local.conf` to stop mkosi from building
+systemd packages from source:
+
+```conf
+[Build]
+Environment=NO_BUILD=1
+```
+
+You'll then probably want to use the `PackageDirectories=` or `SandboxTrees=`
+options to provide mkosi with a directory containing the systemd packages or a
+repository file that points to a repository with the systemd packages that
+should be installed.
+
### SELinux AVCs
To have `TEST-06-SELINUX` check for SELinux denials, write the following to

View File

@ -0,0 +1,47 @@
From 2cf13464ec92429e5ce22a2ce52f6fa228e28514 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Wed, 5 Feb 2025 12:42:39 +0100
Subject: [PATCH] repart: Don't fail when we're unable to read file attributes
We're getting EOVERFLOW when reading file attributes trying to get
mkosi running in a docker container (don't ask). I have a suspicion
this is coming from fuse-overlayfs. Anyway, since the file attributes
stuff is supposed to be purely optional, let's not fail when we can't
read file attributes for whatever reason.
(cherry picked from commit bc1291aa859783673450fc0c66c48a7242a8365b)
---
src/repart/repart.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/repart/repart.c b/src/repart/repart.c
index 2ddff313fc..b2a2bda2a2 100644
--- a/src/repart/repart.c
+++ b/src/repart/repart.c
@@ -4322,7 +4322,7 @@ static int prepare_temporary_file(Context *context, PartitionTarget *t, uint64_t
r = read_attr_fd(fdisk_get_devfd(context->fdisk_context), &attrs);
if (r < 0 && !ERRNO_IS_NEG_NOT_SUPPORTED(r))
- return log_error_errno(r, "Failed to read file attributes of %s: %m", arg_node);
+ log_warning_errno(r, "Failed to read file attributes of %s, ignoring: %m", arg_node);
if (FLAGS_SET(attrs, FS_NOCOW_FL)) {
r = chattr_fd(fd, FS_NOCOW_FL, FS_NOCOW_FL, NULL);
@@ -6587,7 +6587,7 @@ static int context_split(Context *context) {
r = read_attr_fd(fd, &attrs);
if (r < 0 && !ERRNO_IS_NEG_NOT_SUPPORTED(r))
- return log_error_errno(r, "Failed to read file attributes of %s: %m", arg_node);
+ log_warning_errno(r, "Failed to read file attributes of %s, ignoring: %m", arg_node);
}
fdt = xopenat_full(
@@ -7457,7 +7457,7 @@ static int context_minimize(Context *context) {
r = read_attr_fd(context->backing_fd, &attrs);
if (r < 0 && !ERRNO_IS_NEG_NOT_SUPPORTED(r))
- return log_error_errno(r, "Failed to read file attributes of %s: %m", arg_node);
+ log_warning_errno(r, "Failed to read file attributes of %s, ignoring: %m", arg_node);
LIST_FOREACH(partitions, p, context->partitions) {
_cleanup_(rm_rf_physical_and_freep) char *root = NULL;

View File

@ -0,0 +1,23 @@
From c6bab8d765bd6349393aa2cca73ed7b351182e73 Mon Sep 17 00:00:00 2001
From: Matthieu LAURENT <matthieu.laurent69@proton.me>
Date: Wed, 5 Feb 2025 17:28:37 +0100
Subject: [PATCH] homectl: fix typo in help text
(cherry picked from commit e8e778e8abbe119754026929b3c9453404822c70)
---
src/home/homectl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/home/homectl.c b/src/home/homectl.c
index 2163469a50..47ca015813 100644
--- a/src/home/homectl.c
+++ b/src/home/homectl.c
@@ -2804,7 +2804,7 @@ static int help(int argc, char *argv[], void *userdata) {
" --enforce-password-policy=BOOL\n"
" Control whether to enforce system's password\n"
" policy for this user\n"
- " -P Same as --enforce-password-password=no\n"
+ " -P Same as --enforce-password-policy=no\n"
" --password-change-now=BOOL\n"
" Require the password to be changed on next login\n"
" --password-change-min=TIME\n"

View File

@ -0,0 +1,23 @@
From e24bc34ed8dc5a663344c2a6468d820431bbd4ea Mon Sep 17 00:00:00 2001
From: Matthieu LAURENT <matthieu.laurent69@proton.me>
Date: Wed, 5 Feb 2025 17:31:15 +0100
Subject: [PATCH] homectl: fix typo in man page
(cherry picked from commit df9c5c1c9c230605734aeace4cd3861ff3d6ee6d)
---
man/homectl.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/homectl.xml b/man/homectl.xml
index 7762cf1423..927fe939ee 100644
--- a/man/homectl.xml
+++ b/man/homectl.xml
@@ -602,7 +602,7 @@
<listitem><para>Takes a boolean argument. Configures whether to enforce the system's password policy
for this user, regarding quality and strength of selected passwords. Defaults to
on. <option>-P</option> is short for
- <option>---enforce-password-policy=no</option>.</para>
+ <option>--enforce-password-policy=no</option>.</para>
<xi:include href="version-info.xml" xpointer="v245"/></listitem>
</varlistentry>

View File

@ -0,0 +1,26 @@
From bb22ed069bc6220b20c75f4a873419a24cae266d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20M=C3=B6ller?= <fabianm88@gmail.com>
Date: Wed, 22 Jan 2025 13:33:12 +0100
Subject: [PATCH] resolved: fix DNSSEC `missing-key` error
Skip unsupport/invalid `DS` and `DNSKEY` combinations during verification.
Fixes: #12545
(cherry picked from commit cac3b43eee83829d68ebf7d4786ebc32e62fe813)
---
src/resolve/resolved-dns-dnssec.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/resolve/resolved-dns-dnssec.c b/src/resolve/resolved-dns-dnssec.c
index 09cc2cb731..6d32b2d798 100644
--- a/src/resolve/resolved-dns-dnssec.c
+++ b/src/resolve/resolved-dns-dnssec.c
@@ -1473,7 +1473,7 @@ int dnssec_verify_dnskey_by_ds_search(DnsResourceRecord *dnskey, DnsAnswer *vali
r = dnssec_verify_dnskey_by_ds(dnskey, ds, false);
if (IN_SET(r, -EKEYREJECTED, -EOPNOTSUPP))
- return 0; /* The DNSKEY is revoked or otherwise invalid, or we don't support the digest algorithm */
+ continue; /* The DNSKEY is revoked or otherwise invalid, or we don't support the digest algorithm */
if (r < 0)
return r;
if (r > 0)

View File

@ -0,0 +1,42 @@
From 0a7c3f3ba3c2424718fadf99bf2ed5851f22f6bb Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@cryptomilk.org>
Date: Wed, 5 Feb 2025 15:38:32 +0100
Subject: [PATCH] docs: Add an examples for command line access
It took me almost an hour to read through the source code to construct
this line.
(cherry picked from commit 20634844ddfc55eebbd6696919f043e3272881c2)
---
docs/USER_GROUP_API.md | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/docs/USER_GROUP_API.md b/docs/USER_GROUP_API.md
index d0016dbc2d..033c2a1b98 100644
--- a/docs/USER_GROUP_API.md
+++ b/docs/USER_GROUP_API.md
@@ -270,3 +270,24 @@ result in more than one reply, because neither UID/GID nor name is specified) is
Services which are asked for enumeration may return the `EnumerationNotSupported` error in this case.
And that's really all there is to it.
+
+## Command Line Access
+
+For command line access you can use the
+[userdbctl](https://www.freedesktop.org/software/systemd/man/latest/userdbctl.html)
+or
+[varlinkctl](https://www.freedesktop.org/software/systemd/man/latest/varlinkctl.html)
+commands. The `userdbctl` command is more end user friendly and the `varlinkctl`
+command can help developers to understand the user database better.
+
+To figure out which methods in the user database are available you can use:
+
+```sh
+varlinkctl introspect /run/systemd/userdb/io.systemd.Multiplexer io.systemd.UserDatabase
+```
+
+To get a record for a specific user use:
+
+```sh
+varlinkctl call /run/systemd/userdb/io.systemd.Multiplexer io.systemd.UserDatabase.GetUserRecord '{"userName": "alice", "service": "io.systemd.Multiplexer"}'
+```

View File

@ -0,0 +1,44 @@
From bef269772c8854c90b7a680a71f0514ae779fcd2 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Thu, 6 Feb 2025 14:53:02 +0100
Subject: [PATCH] mkosi: Only make build sources ephemeral if NO_BUILD is not
enabled
If we're not building distribution packages from source, there's no
need to make the build sources ephemeral so don't enable the setting
if NO_BUILD is enabled.
(cherry picked from commit f26ded4e31b433d3bb6ee4dc3e02e28f7a1d223f)
---
mkosi.conf | 1 -
mkosi.conf.d/20-build.conf | 3 ++-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/mkosi.conf b/mkosi.conf
index e4c866c9ba..954012ee0f 100644
--- a/mkosi.conf
+++ b/mkosi.conf
@@ -33,7 +33,6 @@ OutputDirectory=build/mkosi.output
ToolsTree=default
BuildDirectory=build/mkosi.builddir
CacheDirectory=build/mkosi.cache
-BuildSourcesEphemeral=yes
Incremental=yes
[Validation]
diff --git a/mkosi.conf.d/20-build.conf b/mkosi.conf.d/20-build.conf
index 8c16d9b9f8..f9b4a0aaf5 100644
--- a/mkosi.conf.d/20-build.conf
+++ b/mkosi.conf.d/20-build.conf
@@ -1,9 +1,10 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
-# Add a dependency on the build image unless NO_BUILD=1.
+# Add a dependency on the build image and make the build sources ephemeral unless NO_BUILD=1.
[Match]
Environment=!NO_BUILD=1
[Config]
Dependencies=build
+BuildSourcesEphemeral=yes

View File

@ -0,0 +1,26 @@
From 94605ab4153900886767030017fa42b2cea3ca6c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Hundeb=C3=B8ll?= <martin@geanix.com>
Date: Thu, 6 Feb 2025 11:33:49 +0100
Subject: [PATCH] vmspawn: ignore failure from sshd-vsock@ unit
The "main" sshd@.service unit ignores the return code from per-session
instances, so do the same for the vsock variant.
(cherry picked from commit df8bd4c171bf88feef0302a0d0476e22e5594c82)
---
src/vmspawn/vmspawn.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/vmspawn/vmspawn.c b/src/vmspawn/vmspawn.c
index 1c49aff4a3..70e5a31265 100644
--- a/src/vmspawn/vmspawn.c
+++ b/src/vmspawn/vmspawn.c
@@ -2050,7 +2050,7 @@ static int run_virtual_machine(int kvm_device_fd, int vhost_device_fd) {
"systemd.unit-dropin.sshd-vsock@.service:"
"[Service]\n"
"ExecStart=\n"
- "ExecStart=sshd -i -o 'AuthorizedKeysFile=%d/ssh.ephemeral-authorized_keys-all .ssh/authorized_keys'\n"
+ "ExecStart=-sshd -i -o 'AuthorizedKeysFile=%d/ssh.ephemeral-authorized_keys-all .ssh/authorized_keys'\n"
"ImportCredential=ssh.ephemeral-authorized_keys-all\n");
if (r < 0)
return log_error_errno(r, "Failed to set credential systemd.unit-dropin.sshd-vsock@.service: %m");

View File

@ -0,0 +1,27 @@
From f0d596d9db52d683a1a27323e79e1f901efee357 Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Thu, 6 Feb 2025 14:59:28 +0000
Subject: [PATCH] mkosi: extend util-linux-script config drop-in to F43
Fixes packit test
TEST-74-AUX-UTILS.sh[1104]: + script -ec 'networkctl edit --runtime "$NETWORK_NAME"' /dev/null
TEST-74-AUX-UTILS.sh[1154]: .//usr/lib/systemd/tests/testdata/units/TEST-74-AUX-UTILS.networkctl.sh: line 53: script: command not found
(cherry picked from commit 01b45354559b2fc651441b6b0025ae28daddd06e)
---
mkosi.conf.d/10-fedora/mkosi.conf.d/rawhide-42.conf | 1 +
1 file changed, 1 insertion(+)
diff --git a/mkosi.conf.d/10-fedora/mkosi.conf.d/rawhide-42.conf b/mkosi.conf.d/10-fedora/mkosi.conf.d/rawhide-42.conf
index 97e108f5e7..78e1fbe751 100644
--- a/mkosi.conf.d/10-fedora/mkosi.conf.d/rawhide-42.conf
+++ b/mkosi.conf.d/10-fedora/mkosi.conf.d/rawhide-42.conf
@@ -3,6 +3,7 @@
[Match]
Release=|rawhide
Release=|42
+Release=|43
[Content]
Packages=util-linux-script

View File

@ -0,0 +1,61 @@
From 2b9914bd23a9a7c123e9330c3121e2e72af66ccb Mon Sep 17 00:00:00 2001
From: Vyacheslav Yurkov <uvv.mail@gmail.com>
Date: Wed, 5 Feb 2025 07:14:20 +0000
Subject: [PATCH] meson: Skip getent when it's not found
(cherry picked from commit 8b413ae4060b21ed4712fdad7eba195890740756)
---
meson.build | 33 +++++++++++++++++++--------------
1 file changed, 19 insertions(+), 14 deletions(-)
diff --git a/meson.build b/meson.build
index bffda86845..bfc35b88e6 100644
--- a/meson.build
+++ b/meson.build
@@ -890,13 +890,16 @@ nobody_user = get_option('nobody-user')
nobody_group = get_option('nobody-group')
if not meson.is_cross_build()
- getent_result = run_command('getent', 'passwd', '65534', check : false)
- if getent_result.returncode() == 0
- name = getent_result.stdout().split(':')[0]
- if name != nobody_user
- warning('\n' +
- 'The local user with the UID 65534 does not match the configured user name "@0@" of the nobody user (its name is @1@).\n'.format(nobody_user, name) +
- 'Your build will result in an user table setup that is incompatible with the local system.')
+ find_getent_result = find_program('getent', required : false)
+ if find_getent_result.found()
+ getent_result = run_command('getent', 'passwd', '65534', check : false)
+ if getent_result.returncode() == 0
+ name = getent_result.stdout().split(':')[0]
+ if name != nobody_user
+ warning('\n' +
+ 'The local user with the UID 65534 does not match the configured user name "@0@" of the nobody user (its name is @1@).\n'.format(nobody_user, name) +
+ 'Your build will result in an user table setup that is incompatible with the local system.')
+ endif
endif
endif
id_result = run_command('id', '-u', nobody_user, check : false)
@@ -909,13 +912,15 @@ if not meson.is_cross_build()
endif
endif
- getent_result = run_command('getent', 'group', '65534', check : false)
- if getent_result.returncode() == 0
- name = getent_result.stdout().split(':')[0]
- if name != nobody_group
- warning('\n' +
- 'The local group with the GID 65534 does not match the configured group name "@0@" of the nobody group (its name is @1@).\n'.format(nobody_group, name) +
- 'Your build will result in an group table setup that is incompatible with the local system.')
+ if find_getent_result.found()
+ getent_result = run_command('getent', 'group', '65534', check : false)
+ if getent_result.returncode() == 0
+ name = getent_result.stdout().split(':')[0]
+ if name != nobody_group
+ warning('\n' +
+ 'The local group with the GID 65534 does not match the configured group name "@0@" of the nobody group (its name is @1@).\n'.format(nobody_group, name) +
+ 'Your build will result in an group table setup that is incompatible with the local system.')
+ endif
endif
endif
id_result = run_command('id', '-g', nobody_group, check : false)

View File

@ -0,0 +1,128 @@
From c7767b606a77af10b66975200c6fd830150f2fe5 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Fri, 7 Feb 2025 11:36:46 +0900
Subject: [PATCH] meson: also skip uid/gid check for nobody user/group when id
command not found
Follow-up for 8b413ae4060b21ed4712fdad7eba195890740756.
(cherry picked from commit be4f4c4343f05f2b53deb326c241c6031c36c911)
---
meson.build | 70 ++++++++++++++++++++++++++++-------------------------
1 file changed, 37 insertions(+), 33 deletions(-)
diff --git a/meson.build b/meson.build
index bfc35b88e6..caf2af0753 100644
--- a/meson.build
+++ b/meson.build
@@ -692,17 +692,20 @@ endif
#####################################################################
-sh = find_program('sh')
-echo = find_program('echo')
-sed = find_program('sed')
awk = find_program('awk')
-stat = find_program('stat')
-ln = find_program('ln')
-git = find_program('git', required : false)
-env = find_program('env')
-rsync = find_program('rsync', required : false)
diff = find_program('diff')
+echo = find_program('echo')
+env = find_program('env')
find = find_program('find')
+getent = find_program('getent', required : false)
+git = find_program('git', required : false)
+gperf = find_program('gperf')
+id = find_program('id', required : false)
+ln = find_program('ln')
+rsync = find_program('rsync', required : false)
+sed = find_program('sed')
+sh = find_program('sh')
+stat = find_program('stat')
ln_s = ln.full_path() + ' -frsT -- "${DESTDIR:-}@0@" "${DESTDIR:-}@1@"'
@@ -740,8 +743,6 @@ endif
#####################################################################
-gperf = find_program('gperf')
-
gperf_test_format = '''
#include <string.h>
const char* in_word_set(const char *, @0@);
@@ -890,11 +891,10 @@ nobody_user = get_option('nobody-user')
nobody_group = get_option('nobody-group')
if not meson.is_cross_build()
- find_getent_result = find_program('getent', required : false)
- if find_getent_result.found()
- getent_result = run_command('getent', 'passwd', '65534', check : false)
- if getent_result.returncode() == 0
- name = getent_result.stdout().split(':')[0]
+ if getent.found()
+ ret = run_command(getent, 'passwd', '65534', check : false)
+ if ret.returncode() == 0
+ name = ret.stdout().split(':')[0]
if name != nobody_user
warning('\n' +
'The local user with the UID 65534 does not match the configured user name "@0@" of the nobody user (its name is @1@).\n'.format(nobody_user, name) +
@@ -902,20 +902,22 @@ if not meson.is_cross_build()
endif
endif
endif
- id_result = run_command('id', '-u', nobody_user, check : false)
- if id_result.returncode() == 0
- id = id_result.stdout().strip().to_int()
- if id != 65534
- warning('\n' +
- 'The local user with the configured user name "@0@" of the nobody user does not have UID 65534 (it has @1@).\n'.format(nobody_user, id) +
- 'Your build will result in an user table setup that is incompatible with the local system.')
+ if id.found()
+ ret = run_command(id, '-u', nobody_user, check : false)
+ if ret.returncode() == 0
+ uid = ret.stdout().strip().to_int()
+ if uid != 65534
+ warning('\n' +
+ 'The local user with the configured user name "@0@" of the nobody user does not have UID 65534 (it has @1@).\n'.format(nobody_user, uid) +
+ 'Your build will result in an user table setup that is incompatible with the local system.')
+ endif
endif
endif
- if find_getent_result.found()
- getent_result = run_command('getent', 'group', '65534', check : false)
- if getent_result.returncode() == 0
- name = getent_result.stdout().split(':')[0]
+ if getent.found()
+ ret = run_command(getent, 'group', '65534', check : false)
+ if ret.returncode() == 0
+ name = ret.stdout().split(':')[0]
if name != nobody_group
warning('\n' +
'The local group with the GID 65534 does not match the configured group name "@0@" of the nobody group (its name is @1@).\n'.format(nobody_group, name) +
@@ -923,13 +925,15 @@ if not meson.is_cross_build()
endif
endif
endif
- id_result = run_command('id', '-g', nobody_group, check : false)
- if id_result.returncode() == 0
- id = id_result.stdout().strip().to_int()
- if id != 65534
- warning('\n' +
- 'The local group with the configured group name "@0@" of the nobody group does not have GID 65534 (it has @1@).\n'.format(nobody_group, id) +
- 'Your build will result in an group table setup that is incompatible with the local system.')
+ if id.found()
+ ret = run_command(id, '-g', nobody_group, check : false)
+ if ret.returncode() == 0
+ gid = ret.stdout().strip().to_int()
+ if gid != 65534
+ warning('\n' +
+ 'The local group with the configured group name "@0@" of the nobody group does not have GID 65534 (it has @1@).\n'.format(nobody_group, gid) +
+ 'Your build will result in an group table setup that is incompatible with the local system.')
+ endif
endif
endif
endif

View File

@ -0,0 +1,31 @@
From 47792af441b412a024d3c69e6fc956787ba3cfbb Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Tue, 21 Jan 2025 15:31:14 +0100
Subject: [PATCH] core/namespace: relabel bind mount source based on the target
path
Some bind mounts, e.g. /tmp bind mount when PrivateTmp=disconnected,
must be explicitly relabeled because now it would have incorrect SELinux
label. /tmp is expected to have well-known SELinux label, tmp_t. Now it
has label inherited from the source directory of the bind mount.
(cherry picked from commit a128273f7b5e50ce5929ccabda5c2810b7eedd2d)
---
src/core/namespace.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/core/namespace.c b/src/core/namespace.c
index 10f4c50bcc..ad61853847 100644
--- a/src/core/namespace.c
+++ b/src/core/namespace.c
@@ -1809,6 +1809,10 @@ static int apply_one_mount(
r = mkdir_p(mount_entry_source(m), m->source_dir_mode);
if (r < 0)
return log_debug_errno(r, "Failed to create source directory %s: %m", mount_entry_source(m));
+
+ r = label_fix_full(AT_FDCWD, mount_entry_source(m), mount_entry_unprefixed_path(m), /* flags= */ 0);
+ if (r < 0)
+ return log_error_errno(r, "Failed to set label of the source directory %s: %m", mount_entry_source(m));
}
r = chase(mount_entry_source(m), NULL, CHASE_TRAIL_SLASH, &chased, NULL);

View File

@ -0,0 +1,24 @@
From f70def04be0da3130509fb23a7b4b82101cab1f0 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Fri, 7 Feb 2025 11:36:26 +0100
Subject: [PATCH] mkosi: Install strace in build image
Useful to debug regressions in rpm or other package managers.
(cherry picked from commit e421fb46d8621ecf5a6b527772b3f56a72ddf9ff)
---
mkosi.images/build/mkosi.conf | 1 +
1 file changed, 1 insertion(+)
diff --git a/mkosi.images/build/mkosi.conf b/mkosi.images/build/mkosi.conf
index 8a67c76ee5..b710f801ee 100644
--- a/mkosi.images/build/mkosi.conf
+++ b/mkosi.images/build/mkosi.conf
@@ -5,6 +5,7 @@ Packages=
clang
lld
llvm
+ strace
[Output]
Format=none

View File

@ -0,0 +1,23 @@
From d28d7fd0cac3c945a4807eec2652db42ff79bc91 Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Fri, 7 Feb 2025 12:04:15 +0100
Subject: [PATCH] mkosi: Fix section for BuildSourcesEphemeral=
Followup for f26ded4e31b433d3bb6ee4dc3e02e28f7a1d223f
(cherry picked from commit 398d435f3c14959041cc690d2e71b388c1b94ccd)
---
mkosi.conf.d/20-build.conf | 2 ++
1 file changed, 2 insertions(+)
diff --git a/mkosi.conf.d/20-build.conf b/mkosi.conf.d/20-build.conf
index f9b4a0aaf5..83bc23e82c 100644
--- a/mkosi.conf.d/20-build.conf
+++ b/mkosi.conf.d/20-build.conf
@@ -7,4 +7,6 @@ Environment=!NO_BUILD=1
[Config]
Dependencies=build
+
+[Build]
BuildSourcesEphemeral=yes

View File

@ -0,0 +1,62 @@
From 2de7875982dadfaceeb8ad242710c2f952d9a61e Mon Sep 17 00:00:00 2001
From: Daan De Meyer <daan.j.demeyer@gmail.com>
Date: Fri, 7 Feb 2025 11:37:34 +0100
Subject: [PATCH] mkosi: Work around regression in opensuse rpm 4.20 release
The rpm 4.20 release introduces the following downstream
change in /usr/lib/rpm/macros:
```
%buildroot %{_builddir}/%{NAME}-%{VERSION}-build/BUILDROOT
```
This definition is broken as rpm internally does the following
since 4.20 to calculate the buildroot:
```
char *bn = rpmExpand("%{NAME}-%{VERSION}-build", NULL);
/* Tilde and caret in paths are evil, convert to underscores */
for (char *t = bn; *t; t++) {
if (*t == '^' || *t == '~')
*t = '_';
}
```
This has broken our upstream opensuse CI builds in systemd as
we do the following to fetch the list of unpackaged files by the rpm build:
```
rpmbuild
...
--define "__check_files sh -c '$(rpm --define "_topdir /var/tmp" --eval %__check_files) | tee /tmp/unpackaged-files'"
...
```
which stopped working because the check files script tries
to look for unpackaged files in the "/var/tmp/BUILD/systemd-258~devel-build/BUILDROOT"
directory (%buildroot) whereas it should be looking in "/var/tmp/BUILD/systemd-258_devel-build/BUILDROOT".
Let's remove the %buildroot compat definition until the bug is
addressed in opensuse tumbleweed.
(cherry picked from commit facc03dc973cc9051c2bde16d7084296e862c0e0)
---
mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot b/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot
index d672c31647..e2a0561bb0 100755
--- a/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot
+++ b/mkosi.images/build/mkosi.conf.d/opensuse/mkosi.build.chroot
@@ -60,6 +60,11 @@ fi
# TODO: Drop when the spec is fixed (either the patch is adapted or not applied when building for upstream).
sed --in-place '/0009-pid1-handle-console-specificities-weirdness-for-s390.patch/d' "pkg/$PKG_SUBDIR${GIT_SUBDIR:+/$GIT_SUBDIR}/systemd.spec"
+# TODO: Drop when https://bugzilla.opensuse.org/show_bug.cgi?id=1236901 is resolved.
+sed '/%buildroot/d' /usr/lib/rpm/macros >macros
+mount --bind "$PWD/macros" /usr/lib/rpm/macros
+rm macros
+
build() {
IFS=
# shellcheck disable=SC2046

View File

@ -0,0 +1,32 @@
From 92661cbce56ca05a26271b367089302966b0989c Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Wed, 22 Jan 2025 11:55:24 +0100
Subject: [PATCH] userdbctl: don't expect argument to --fuzzy
The getopt() parser was completely wrong, it expected an argument where
wasn't expected or processes.
The test cases only passed by accident because they use the "user" verb
which is also the default verb. It would be accidently read as argument
for --fuzzy and ignored.
Fix that.
(cherry picked from commit 165275fe803d0d001a0991014da928e44ed25941)
---
src/userdb/userdbctl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/userdb/userdbctl.c b/src/userdb/userdbctl.c
index bc69175b10..d295ca5495 100644
--- a/src/userdb/userdbctl.c
+++ b/src/userdb/userdbctl.c
@@ -1227,7 +1227,7 @@ static int parse_argv(int argc, char *argv[]) {
{ "chain", no_argument, NULL, ARG_CHAIN },
{ "uid-min", required_argument, NULL, ARG_UID_MIN },
{ "uid-max", required_argument, NULL, ARG_UID_MAX },
- { "fuzzy", required_argument, NULL, 'z' },
+ { "fuzzy", no_argument, NULL, 'z' },
{ "disposition", required_argument, NULL, ARG_DISPOSITION },
{ "boundaries", required_argument, NULL, ARG_BOUNDARIES },
{}

View File

@ -0,0 +1,30 @@
From 4fc9748a2773655e1ad55745cb2302b4a809f137 Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Wed, 22 Jan 2025 16:44:12 +0100
Subject: [PATCH] userdb: reset errno before getpwent()
errno handling for NSS is always a bit weird since NSS modules generally
are not particularly careful with it. Hence let's initialize errno
explicitly before we invoke getpwent() so that we know it's in a
reasonable state afterwards on failure, or zero if not.
We do this in most places we use NSS, including in userdb when it comes
to getgrent(), just for getpwent() we don't so far. Address that.
(cherry picked from commit 83e3b96d0a3b665b7b7a291500fa354a7760a917)
---
src/shared/userdb.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/shared/userdb.c b/src/shared/userdb.c
index ff83d4bf90..29acebae19 100644
--- a/src/shared/userdb.c
+++ b/src/shared/userdb.c
@@ -773,6 +773,7 @@ int userdb_iterator_get(UserDBIterator *iterator, UserRecord **ret) {
/* If NSS isn't covered elsewhere, let's iterate through it first, since it probably contains
* the more traditional sources, which are probably good to show first. */
+ errno = 0;
pw = getpwent();
if (pw) {
_cleanup_free_ char *buffer = NULL;

View File

@ -0,0 +1,37 @@
From 6e7eddecaae58147806b3e04472fd4d90d8efcc0 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Wed, 5 Feb 2025 09:14:51 +0900
Subject: [PATCH] network/routing-policy-rule: fix compare func
Previously, when comparing an existing and requested routing policy
rules, `all` flag was unset, thus the from and to addresses in the two
rules were not compared. Hence, a new request with from and/or to
addresses might be considered as it already exists even the addresses of
existing one were different from the newly requested one.
All existing rules have valid family, i.e. AF_INET or AF_INET6. And,
all requesting rules with from and/or to addresses also have a valid
family. Hence, even `all` flag is unset, the addresses can be and must
be compared in that case.
Fixes a regression caused by fc58350aa464cd2414b6fe9fec089412120c7d52 (v257).
Fixes #35874.
(cherry picked from commit bc45d9c9592d3fcd24894199be1902704f48d62c)
---
src/network/networkd-routing-policy-rule.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/network/networkd-routing-policy-rule.c b/src/network/networkd-routing-policy-rule.c
index 1a04af6359..1075f68e7d 100644
--- a/src/network/networkd-routing-policy-rule.c
+++ b/src/network/networkd-routing-policy-rule.c
@@ -318,7 +318,7 @@ static int routing_policy_rule_compare_func_full(const RoutingPolicyRule *a, con
if (r != 0)
return r;
- if (all) {
+ if (a->family == b->family && a->family != AF_UNSPEC) {
r = memcmp(&a->from.address, &b->from.address, FAMILY_ADDRESS_SIZE(a->family));
if (r != 0)
return r;

View File

@ -0,0 +1,64 @@
From 2dc019179c1b401af2c2956ccc0b96e81a80fca7 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Wed, 5 Feb 2025 09:40:31 +0900
Subject: [PATCH] test-network: add test case for issue #35874
(cherry picked from commit a10172b0355f3ff5c301010d81aea1f2fba986e7)
---
.../conf/25-routing-policy-rule-test1.network | 18 ++++++++++++++++++
test/test-network/systemd-networkd-tests.py | 16 ++++++++++++++++
2 files changed, 34 insertions(+)
diff --git a/test/test-network/conf/25-routing-policy-rule-test1.network b/test/test-network/conf/25-routing-policy-rule-test1.network
index 2cec4334fd..6e67f3f105 100644
--- a/test/test-network/conf/25-routing-policy-rule-test1.network
+++ b/test/test-network/conf/25-routing-policy-rule-test1.network
@@ -47,3 +47,21 @@ IncomingInterface=test1
From=10.1.0.0/16
Priority=104
Table=12
+
+# The four routing policy rules below intentionally have the same config
+# excepts for their To= addresses. See issue #35874.
+[RoutingPolicyRule]
+To=192.0.2.0/26
+Table=1001
+
+[RoutingPolicyRule]
+To=192.0.2.64/26
+Table=1001
+
+[RoutingPolicyRule]
+To=192.0.2.128/26
+Table=1001
+
+[RoutingPolicyRule]
+To=192.0.2.192/26
+Table=1001
diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py
index 000645c916..bb721521a5 100755
--- a/test/test-network/systemd-networkd-tests.py
+++ b/test/test-network/systemd-networkd-tests.py
@@ -3722,6 +3722,22 @@ class NetworkdNetworkTests(unittest.TestCase, Utilities):
print(output)
self.assertIn('104: from 10.1.0.0/16 iif test1 lookup 12 nop', output)
+ output = check_output('ip rule list to 192.0.2.0/26')
+ print(output)
+ self.assertIn('to 192.0.2.0/26 lookup 1001', output)
+
+ output = check_output('ip rule list to 192.0.2.64/26')
+ print(output)
+ self.assertIn('to 192.0.2.64/26 lookup 1001', output)
+
+ output = check_output('ip rule list to 192.0.2.128/26')
+ print(output)
+ self.assertIn('to 192.0.2.128/26 lookup 1001', output)
+
+ output = check_output('ip rule list to 192.0.2.192/26')
+ print(output)
+ self.assertIn('to 192.0.2.192/26 lookup 1001', output)
+
def check_routing_policy_rule_dummy98(self):
print('### Checking routing policy rules requested by dummy98')

View File

@ -0,0 +1,98 @@
From 4f3d08be04bfa4ac39e6e9c17a0e893f75178198 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Tue, 4 Feb 2025 12:07:21 +0900
Subject: [PATCH] network: allow to configure routing policy rule even if
requesting interface is not activated yet
In the kernel, all routing policy rules are not assigned to any interface,
and we can configure them even if the relevant interface is down state.
Fixes a regression caused by 4f8b153d903fd4a6e8d7d3e49113582d70d1525a (v257).
Fixes #36244.
(cherry picked from commit 5078e36632c68f4578cf7507ee14d9ada207983f)
---
src/network/networkd-link.c | 11 +++++++++
src/network/networkd-link.h | 1 +
src/network/networkd-routing-policy-rule.c | 27 +++++++++++++++++++++-
3 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
index 3c042e6c18..3da7cf2aff 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -199,6 +199,17 @@ bool link_is_ready_to_configure(Link *link, bool allow_unmanaged) {
return check_ready_for_all_sr_iov_ports(link, allow_unmanaged, link_is_ready_to_configure_one);
}
+bool link_is_ready_to_configure_by_name(Manager *manager, const char *name, bool allow_unmanaged) {
+ assert(manager);
+ assert(name);
+
+ Link *link;
+ if (link_get_by_name(manager, name, &link) < 0)
+ return false;
+
+ return link_is_ready_to_configure(link, allow_unmanaged);
+}
+
void link_ntp_settings_clear(Link *link) {
link->ntp = strv_free(link->ntp);
}
diff --git a/src/network/networkd-link.h b/src/network/networkd-link.h
index 113217cdb6..c5806cea33 100644
--- a/src/network/networkd-link.h
+++ b/src/network/networkd-link.h
@@ -225,6 +225,7 @@ typedef struct Link {
typedef int (*link_netlink_message_handler_t)(sd_netlink*, sd_netlink_message*, Link*);
bool link_is_ready_to_configure(Link *link, bool allow_unmanaged);
+bool link_is_ready_to_configure_by_name(Manager *manager, const char *name, bool allow_unmanaged);
void link_ntp_settings_clear(Link *link);
void link_dns_settings_clear(Link *link);
diff --git a/src/network/networkd-routing-policy-rule.c b/src/network/networkd-routing-policy-rule.c
index 1075f68e7d..0c20a3830c 100644
--- a/src/network/networkd-routing-policy-rule.c
+++ b/src/network/networkd-routing-policy-rule.c
@@ -863,6 +863,31 @@ int link_drop_routing_policy_rules(Link *link, bool only_static) {
return r;
}
+static int routing_policy_rule_is_ready_to_configure(const RoutingPolicyRule *rule, Link *link) {
+ assert(rule);
+ assert(link);
+ assert(link->manager);
+
+ /* For routing policy rules, it is not necessary to check operstate and friends of the interface.
+ * Hence, here we refuse to configure rules only when the interface is already removed, or in the
+ * failed state. */
+ if (!IN_SET(link->state, LINK_STATE_CONFIGURING, LINK_STATE_CONFIGURED))
+ return false;
+
+ /* Strictly speaking checking existence of IIF and OIF below is not necessary. But, configuring
+ * routing policy rule with non-existent IIF or OIF is mostly meaningless, and 'ip rule' command
+ * shows [detached] for such rules, that may confuse users. Let's postpone to configure if one of
+ * IIF/OIF does not exist. */
+
+ if (rule->iif && !link_is_ready_to_configure_by_name(link->manager, rule->iif, /* allow_unmanaged = */ true))
+ return false;
+
+ if (rule->oif && !link_is_ready_to_configure_by_name(link->manager, rule->oif, /* allow_unmanaged = */ true))
+ return false;
+
+ return true;
+}
+
static int routing_policy_rule_process_request(Request *req, Link *link, RoutingPolicyRule *rule) {
RoutingPolicyRule *existing;
int r;
@@ -872,7 +897,7 @@ static int routing_policy_rule_process_request(Request *req, Link *link, Routing
assert(link->manager);
assert(rule);
- if (!link_is_ready_to_configure(link, false))
+ if (!routing_policy_rule_is_ready_to_configure(rule, link))
return 0;
r = routing_policy_rule_configure(rule, link, req);

View File

@ -0,0 +1,94 @@
From 0af0e37813b5ab7e1ee4a4863f2087bb35173b5a Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Tue, 4 Feb 2025 09:45:45 +0900
Subject: [PATCH] test-network: add test case for requesting routing policy
rules by multiple interfaces
For issue #36244.
(cherry picked from commit f7ae28fcec9513435f8258431b686fbaf846915b)
---
.../25-routing-policy-rule-manual.network | 23 +++++++++++
test/test-network/systemd-networkd-tests.py | 39 +++++++++++++++++++
2 files changed, 62 insertions(+)
create mode 100644 test/test-network/conf/25-routing-policy-rule-manual.network
diff --git a/test/test-network/conf/25-routing-policy-rule-manual.network b/test/test-network/conf/25-routing-policy-rule-manual.network
new file mode 100644
index 0000000000..fa1328189a
--- /dev/null
+++ b/test/test-network/conf/25-routing-policy-rule-manual.network
@@ -0,0 +1,23 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+[Match]
+Name=test1
+Name=test2
+
+[Link]
+ActivationPolicy=manual
+
+[Network]
+IPv6AcceptRA=no
+
+[RoutingPolicyRule]
+Family=both
+Priority=10
+SuppressPrefixLength=0
+Table=51819
+
+[RoutingPolicyRule]
+Family=both
+FirewallMark=911
+InvertRule=true
+Priority=11
+Table=51820
diff --git a/test/test-network/systemd-networkd-tests.py b/test/test-network/systemd-networkd-tests.py
index bb721521a5..4153cf12e8 100755
--- a/test/test-network/systemd-networkd-tests.py
+++ b/test/test-network/systemd-networkd-tests.py
@@ -3874,6 +3874,45 @@ class NetworkdNetworkTests(unittest.TestCase, Utilities):
print(output)
self.assertIn('10113: from all iif test1 lookup 1011', output)
+ def test_routing_policy_rule_manual(self):
+ # For issue #36244.
+ copy_network_unit(
+ '11-dummy.netdev',
+ '25-routing-policy-rule-manual.network')
+ start_networkd()
+ self.wait_operstate('test1', operstate='off', setup_state='configuring', setup_timeout=20)
+
+ check_output('ip link add test2 type dummy')
+ self.wait_operstate('test2', operstate='off', setup_state='configuring', setup_timeout=20)
+
+ networkctl('up', 'test2')
+ self.wait_online('test2:degraded')
+
+ # The request for the routing policy rules are bound to test1. Hence, we need to wait for the rules
+ # being configured explicitly.
+ for _ in range(20):
+ time.sleep(0.5)
+
+ output = check_output('ip -4 rule list table 51819')
+ if output != '10: from all lookup 51819 suppress_prefixlength 0 proto static':
+ continue
+
+ output = check_output('ip -6 rule list table 51819')
+ if output != '10: from all lookup 51819 suppress_prefixlength 0 proto static':
+ continue
+
+ output = check_output('ip -4 rule list table 51820')
+ if output != '11: not from all fwmark 0x38f lookup 51820 proto static':
+ continue
+
+ output = check_output('ip -6 rule list table 51820')
+ if output != '11: not from all fwmark 0x38f lookup 51820 proto static':
+ continue
+
+ break
+ else:
+ self.assertFalse(True)
+
@expectedFailureIfRoutingPolicyPortRangeIsNotAvailable()
def test_routing_policy_rule_port_range(self):
copy_network_unit('25-fibrule-port-range.network', '11-dummy.netdev')

View File

@ -0,0 +1,137 @@
From 7adac4caecf8a6cfbfcf2e169a803ce170359518 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Mon, 16 Dec 2024 11:50:53 +0900
Subject: [PATCH] meson: allow to customize the access mode for tty/pts devices
Then, switch the default value to "0600", due to general security
concerns about terminals being written to by other users.
Closing #35599.
Backport note: the default is changed back to 0620 to keep backward
compatbility intact for the purpose of backporting. This lets
security-conscious users fix the issue if they want to, without
affecting users that do not want changes in the stable branches.
(cherry picked from commit a4d18914751e687c9e44f22fe4e5f95b843a45c8)
---
meson.build | 10 ++++++++++
meson_options.txt | 2 ++
rules.d/50-udev-default.rules.in | 2 +-
src/basic/terminal-util.h | 5 +++--
src/nspawn/nspawn.c | 4 ++--
src/shared/mount-setup.c | 2 +-
tools/meson-render-jinja2.py | 4 +++-
7 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/meson.build b/meson.build
index caf2af0753..cfb202eb30 100644
--- a/meson.build
+++ b/meson.build
@@ -987,6 +987,16 @@ conf.set10('DEV_KVM_UACCESS', dev_kvm_mode != '0666')
group_render_mode = get_option('group-render-mode')
conf.set_quoted('GROUP_RENDER_MODE', group_render_mode)
conf.set10('GROUP_RENDER_UACCESS', group_render_mode != '0666')
+tty_mode = get_option('tty-mode')
+# The setting is used as both octal integer and string through STRINGIFY().
+# Here, only check if the value starts with '06', and further check will be done in terminal-util.h.
+if not tty_mode.startswith('06')
+ error('Unexpected access mode "@0@" is specified for TTY/PTS device nodes, it must be "06xx".'.format(tty_mode))
+elif tty_mode != '0600' and tty_mode != '0620'
+ warning('Unexpected access mode "@0@" is specified for TTY/PTS device nodes, typically it should be "0600" or "0620", proceeding anyway.'.format(tty_mode))
+endif
+# Do not use set_quoted() here, so that the value is available as an integer.
+conf.set('TTY_MODE', tty_mode)
kill_user_processes = get_option('default-kill-user-processes')
conf.set10('KILL_USER_PROCESSES', kill_user_processes)
diff --git a/meson_options.txt b/meson_options.txt
index 78ec25bfa3..f30b3f5238 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -330,6 +330,8 @@ option('dev-kvm-mode', type : 'string', value : '0666',
description : '/dev/kvm access mode')
option('group-render-mode', type : 'string', value : '0666',
description : 'Access mode for devices owned by render group (e.g. /dev/dri/renderD*, /dev/kfd).')
+option('tty-mode', type : 'string', value : '0620',
+ description : 'Access mode for tty/pts device nodes.')
option('default-kill-user-processes', type : 'boolean',
description : 'the default value for KillUserProcesses= setting')
option('gshadow', type : 'boolean',
diff --git a/rules.d/50-udev-default.rules.in b/rules.d/50-udev-default.rules.in
index 6f80feeecf..8fa518cd8f 100644
--- a/rules.d/50-udev-default.rules.in
+++ b/rules.d/50-udev-default.rules.in
@@ -37,7 +37,7 @@ ACTION!="add", GOTO="default_end"
SUBSYSTEM=="tty", KERNEL=="ptmx", GROUP="tty", MODE="0666"
SUBSYSTEM=="tty", KERNEL=="tty", GROUP="tty", MODE="0666"
-SUBSYSTEM=="tty", KERNEL=="tty[0-9]*|hvc[0-9]*|sclp_line[0-9]*|ttysclp[0-9]*|3270/tty[0-9]*", GROUP="tty", MODE="0620"
+SUBSYSTEM=="tty", KERNEL=="tty[0-9]*|hvc[0-9]*|sclp_line[0-9]*|ttysclp[0-9]*|3270/tty[0-9]*", GROUP="tty", MODE="{{TTY_MODE}}"
SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
KERNEL=="tty[A-Z]*[0-9]|ttymxc[0-9]*|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
diff --git a/src/basic/terminal-util.h b/src/basic/terminal-util.h
index 90662e2e66..2fb5281a53 100644
--- a/src/basic/terminal-util.h
+++ b/src/basic/terminal-util.h
@@ -144,8 +144,9 @@ int vt_release(int fd, bool restore_vt);
void get_log_colors(int priority, const char **on, const char **off, const char **highlight);
-/* This assumes there is a 'tty' group */
-#define TTY_MODE 0620
+/* Assume TTY_MODE is defined in config.h. Also, this assumes there is a 'tty' group. */
+assert_cc((TTY_MODE & ~0666) == 0);
+assert_cc((TTY_MODE & 0711) == 0600);
void termios_disable_echo(struct termios *termios);
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
index 500725d35f..6f90f2f418 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
@@ -2399,13 +2399,13 @@ static int setup_pts(const char *dest) {
#if HAVE_SELINUX
if (arg_selinux_apifs_context)
(void) asprintf(&options,
- "newinstance,ptmxmode=0666,mode=620,gid=" GID_FMT ",context=\"%s\"",
+ "newinstance,ptmxmode=0666,mode=" STRINGIFY(TTY_MODE) ",gid=" GID_FMT ",context=\"%s\"",
arg_uid_shift + TTY_GID,
arg_selinux_apifs_context);
else
#endif
(void) asprintf(&options,
- "newinstance,ptmxmode=0666,mode=620,gid=" GID_FMT,
+ "newinstance,ptmxmode=0666,mode=" STRINGIFY(TTY_MODE) ",gid=" GID_FMT,
arg_uid_shift + TTY_GID);
if (!options)
diff --git a/src/shared/mount-setup.c b/src/shared/mount-setup.c
index d5009fb59e..73be3b5dce 100644
--- a/src/shared/mount-setup.c
+++ b/src/shared/mount-setup.c
@@ -93,7 +93,7 @@ static const MountPoint mount_table[] = {
#endif
{ "tmpfs", "/dev/shm", "tmpfs", "mode=01777", MS_NOSUID|MS_NODEV|MS_STRICTATIME,
NULL, MNT_FATAL|MNT_IN_CONTAINER },
- { "devpts", "/dev/pts", "devpts", "mode=0620,gid=" STRINGIFY(TTY_GID), MS_NOSUID|MS_NOEXEC,
+ { "devpts", "/dev/pts", "devpts", "mode=" STRINGIFY(TTY_MODE) ",gid=" STRINGIFY(TTY_GID), MS_NOSUID|MS_NOEXEC,
NULL, MNT_IN_CONTAINER },
#if ENABLE_SMACK
{ "tmpfs", "/run", "tmpfs", "mode=0755,smackfsroot=*" TMPFS_LIMITS_RUN, MS_NOSUID|MS_NODEV|MS_STRICTATIME,
diff --git a/tools/meson-render-jinja2.py b/tools/meson-render-jinja2.py
index 977de79378..1f893ed9a4 100755
--- a/tools/meson-render-jinja2.py
+++ b/tools/meson-render-jinja2.py
@@ -17,7 +17,9 @@ def parse_config_h(filename):
if not m:
continue
a, b = m.groups()
- if b and b[0] in '0123456789"':
+ # The function ast.literal_eval() cannot evaluate octal integers, e.g. 0600.
+ # So, it is intentional that the string below does not contain '0'.
+ if b and (b[0] in '123456789"' or b == '0'):
b = ast.literal_eval(b)
ans[a] = b
return ans

View File

@ -0,0 +1,30 @@
From 11c7f32dfb4807e1aaf84362016c2da4dba3b204 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Sat, 8 Feb 2025 02:20:02 +0900
Subject: [PATCH] meson: fix suite of alignment check tests
Follow-up for 97318131fd06a5bc35454da81dcbbc84f16d9940.
By default, suite of each built test is determined by the directory of
the source file. Hence, before the mentioned commit, all tests in
src/boot/efi/ are in the 'efi' suite. The commit changed the directory
tree, but forgot to update the name of the test suite.
(cherry picked from commit 576e98a72c2f6b0145c63c3f3fec1b9194a60539)
---
src/boot/meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/boot/meson.build b/src/boot/meson.build
index 29c5455dbd..9370274d96 100644
--- a/src/boot/meson.build
+++ b/src/boot/meson.build
@@ -424,7 +424,7 @@ foreach efi_elf_binary : efi_elf_binaries
test('check-alignment-@0@'.format(name),
check_efi_alignment_py,
args : exe.full_path(),
- suite : 'efi')
+ suite : 'boot')
endforeach
alias_target('systemd-boot', boot_targets)

View File

@ -0,0 +1,76 @@
From 2e14f59f1476b9356ad8da6feaa01c9e684841e4 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Thu, 12 Dec 2024 14:23:46 +0100
Subject: [PATCH] hwdb: Make remote controllable lights work out-of-the-box
Give access to USB/Bluetooth lights such as the Logitech Litra family of
devices.
The Logitech devices in particular are accessible through USB
and Bluetooth.
(cherry picked from commit 106f64cbd66b8aa76333c3f11177f53e79e2cd82)
---
hwdb.d/70-lights.hwdb | 24 ++++++++++++++++++++++++
hwdb.d/parse_hwdb.py | 1 +
rules.d/70-uaccess.rules.in | 4 ++++
3 files changed, 29 insertions(+)
create mode 100644 hwdb.d/70-lights.hwdb
diff --git a/hwdb.d/70-lights.hwdb b/hwdb.d/70-lights.hwdb
new file mode 100644
index 0000000000..7811be61f5
--- /dev/null
+++ b/hwdb.d/70-lights.hwdb
@@ -0,0 +1,24 @@
+# This file is part of systemd.
+#
+# Database for remote controllable lights that should be accessible to the seat owner,
+# such as Bluetooth or USB lights that are used in conjuction with the computer like
+# streaming lights.
+#
+# To add local entries, copy this file to
+# /etc/udev/hwdb.d/
+# and add your rules there. To load the new rules execute (as root):
+# systemd-hwdb update
+# udevadm trigger
+
+################
+# Logitech
+################
+# Litra Beam
+bluetooth:v046dpc901*
+usb:v046dpc901*
+ ID_AV_LIGHTS=1
+
+# Litra Glow
+bluetooth:v046dpc900*
+usb:v046dpc900*
+ ID_AV_LIGHTS=1
diff --git a/hwdb.d/parse_hwdb.py b/hwdb.d/parse_hwdb.py
index b4de194ba4..bac5dcc4c8 100755
--- a/hwdb.d/parse_hwdb.py
+++ b/hwdb.d/parse_hwdb.py
@@ -159,6 +159,7 @@ def property_grammar():
('ID_AUTOSUSPEND', Or((Literal('0'), Literal('1')))),
('ID_AUTOSUSPEND_DELAY_MS', INTEGER),
('ID_AV_PRODUCTION_CONTROLLER', Or((Literal('0'), Literal('1')))),
+ ('ID_AV_LIGHTS', Or((Literal('0'), Literal('1')))),
('ID_PERSIST', Or((Literal('0'), Literal('1')))),
('ID_PDA', Or((Literal('0'), Literal('1')))),
('ID_INPUT', id_input_setting),
diff --git a/rules.d/70-uaccess.rules.in b/rules.d/70-uaccess.rules.in
index 0945eaf38c..046f169e44 100644
--- a/rules.d/70-uaccess.rules.in
+++ b/rules.d/70-uaccess.rules.in
@@ -99,6 +99,10 @@ SUBSYSTEM=="hidraw", ENV{ID_AV_PRODUCTION_CONTROLLER}=="1", TAG+="uaccess"
# This also allows accessing HID devices with the libusb backend of hidapi.
SUBSYSTEM=="usb", ENV{ID_AV_PRODUCTION_CONTROLLER}=="1", TAG+="uaccess"
+# USB and Bluetooth controllable lights
+SUBSYSTEM=="hidraw", ENV{ID_AV_LIGHTS}=="1", TAG+="uaccess"
+SUBSYSTEM=="usb", ENV{ID_AV_LIGHTS}=="1", TAG+="uaccess"
+
# Hardware wallets
SUBSYSTEM=="usb", ENV{ID_HARDWARE_WALLET}=="1", TAG+="uaccess"
SUBSYSTEM=="hidraw", ENV{ID_HARDWARE_WALLET}=="1", TAG+="uaccess"

View File

@ -0,0 +1,929 @@
From d09c1fc49675df5e308ad4d966906fab2c69fa0d Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Fri, 7 Feb 2025 23:08:10 +0000
Subject: [PATCH] hwdb: update to main@{2025-02-07}
git restore -s origin/main hwdb.d/ test/hwdb.d
---
hwdb.d/20-net-ifname.hwdb | 4 +
hwdb.d/60-evdev.hwdb | 6 +
hwdb.d/60-input-id.hwdb | 4 +
hwdb.d/60-keyboard.hwdb | 271 +++++++++++++++++++-------------------
hwdb.d/60-sensor.hwdb | 17 ++-
5 files changed, 164 insertions(+), 138 deletions(-)
diff --git a/hwdb.d/20-net-ifname.hwdb b/hwdb.d/20-net-ifname.hwdb
index 2408dc172f..ba136860a8 100644
--- a/hwdb.d/20-net-ifname.hwdb
+++ b/hwdb.d/20-net-ifname.hwdb
@@ -3,3 +3,7 @@
# Dell iDRAC Virtual USB NIC
usb:v413CpA102*
ID_NET_NAME_FROM_DATABASE=idrac
+
+# Disable inclusion of PCI domain in interface names on Azure MANA
+pci:v00001414d000000BA*
+ ID_NET_NAME_INCLUDE_DOMAIN=0
diff --git a/hwdb.d/60-evdev.hwdb b/hwdb.d/60-evdev.hwdb
index 65170ae1ce..db9aa7c307 100644
--- a/hwdb.d/60-evdev.hwdb
+++ b/hwdb.d/60-evdev.hwdb
@@ -942,6 +942,12 @@ evdev:input:b0003v172Fp0031*
EVDEV_ABS_00=0:10000:400
EVDEV_ABS_01=0:6250:400
+# WALTOP International Corp. Slim Tablet Stylus
+evdev:input:b0003v172Fp0034*
+ EVDEV_ABS_00=0:20000:80
+ EVDEV_ABS_01=0:12500:80
+ EVDEV_ABS_24=0:1023:500
+
# WALTOP International Corp. Graphics Tablet
evdev:input:b0003v172Fp0047*
EVDEV_ABS_00=0:20000:80
diff --git a/hwdb.d/60-input-id.hwdb b/hwdb.d/60-input-id.hwdb
index dfb035de2a..6a53cc3b4c 100644
--- a/hwdb.d/60-input-id.hwdb
+++ b/hwdb.d/60-input-id.hwdb
@@ -55,6 +55,10 @@
id-input:modalias:input:b0003v28bdp0078*
ID_INPUT_TABLET=1
+# XBox Series Elite controller
+id-input:modalias:input:b0005v045Ep0B22e0517*
+ ID_INPUT_JOYSTICK=1
+
# Lite-On Tech IBM USB Travel Keyboard with Ultra Nav Mouse
id-input:modalias:input:b0003v04B3p301Ee0100-e0,1,2,4*
ID_INPUT_POINTINGSTICK=1
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
index 71221fdbfb..f9cdb26be5 100644
--- a/hwdb.d/60-keyboard.hwdb
+++ b/hwdb.d/60-keyboard.hwdb
@@ -116,8 +116,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svneMachines:pneMachines*E725:*
KEYBOARD_KEY_d9=brightnessup # Fn+Right
KEYBOARD_KEY_ee=brightnessup # Fn+Right
KEYBOARD_KEY_ef=brightnessdown # Fn+Left
- KEYBOARD_KEY_f1=f22 # Fn+F7 Touchpad toggle (off-to-on)
- KEYBOARD_KEY_f2=f23 # Fn+F7 Touchpad toggle (on-to-off)
+ KEYBOARD_KEY_f1=touchpad_on # Fn+F7 Touchpad toggle (off-to-on)
+ KEYBOARD_KEY_f2=touchpad_off # Fn+F7 Touchpad toggle (on-to-off)
KEYBOARD_KEY_f3=prog2 # "P2" programmable button
KEYBOARD_KEY_f4=prog1 # "P1" programmable button
KEYBOARD_KEY_f5=presentation
@@ -125,10 +125,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svneMachines:pneMachines*E725:*
KEYBOARD_KEY_f8=fn
KEYBOARD_KEY_f9=prog1 # Launch NTI shadow
-# Acer kernel driver
-evdev:name:Acer WMI hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnAcer*:*
- KEYBOARD_KEY_82=f21 # Touchpad toggle
-
# Aspire models
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnAspire*:*
KEYBOARD_KEY_84=bluetooth # sent when bluetooth module missing, and key pressed
@@ -186,7 +182,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnPredator*PH*315-52:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMateB311-31*:pvr*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMateB311R-31*:pvr*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMateB311RN-31*:pvr*
- KEYBOARD_KEY_8a=f20 # Microphone mute
+ KEYBOARD_KEY_8a=micmute # Microphone mute
# Travelmate C300
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*C3[01]0*:*
@@ -200,7 +196,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*C3[01]0*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*P648-G2-MG*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*P648-G3-M*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*P645-S*:*
- KEYBOARD_KEY_8a=f20 # Microphone mute button; should be micmute
+ KEYBOARD_KEY_8a=micmute # Microphone mute button
# on some models this isn't brightnessup
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pn*5210*:*
@@ -223,7 +219,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnPackard*Bell*:pn*:*
# Swift SF314-511
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnSwiftSF314-511:pvr*
- KEYBOARD_KEY_8a=f20 # Fn+F12, microphone mute
+ KEYBOARD_KEY_8a=micmute # Fn+F12, microphone mute
# Predator PHN16-71
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnPredatorPHN16-71:*
@@ -242,7 +238,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-47:pvr*
# Nitro AN515-58
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
- KEYBOARD_KEY_8a=f20 # Microphone mute button
+ KEYBOARD_KEY_8a=micmute # Microphone mute button
KEYBOARD_KEY_55=power
###########################################################
@@ -251,7 +247,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
# Alienware/Dell reserves these keys; safe to apply on all their devices
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAlienware*:pn*:*
- KEYBOARD_KEY_81=f21 # Touchpad toggle
+ KEYBOARD_KEY_81=touchpad_toggle # Touchpad toggle
KEYBOARD_KEY_8a=ejectcd
KEYBOARD_KEY_bf=!prog1 # graphics amplifier, cable plug-in event
KEYBOARD_KEY_c1=!prog2 # graphics amplifier, undock-button event
@@ -268,7 +264,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAlienware*:pnM17xR3:*
# Aquarius Cmp NS483
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAquarius*:pnCmp*NS483*:*
KEYBOARD_KEY_56=backslash
- KEYBOARD_KEY_76=f21 # Touchpad Toggle
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad Toggle
###########################################################
# Asus
@@ -279,16 +275,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
KEYBOARD_KEY_ee=volumedown
KEYBOARD_KEY_ef=mute
-evdev:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
-evdev:name:Eee PC WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
-evdev:name:Asus Laptop extra buttons:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
- KEYBOARD_KEY_6b=f21 # Touchpad Toggle
- KEYBOARD_KEY_7c=f20 # Remap micmute to f20
-
-# USB keyboard in Asus FX503VD
-evdev:input:b0003v0B05p1869*
- KEYBOARD_KEY_ff31007c=f20 # Remap micmute to f20
-
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
# causing the volume-button mappings to be off by one, correct this
evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:*:svnASUSTeKCOMPUTERINC.:pnTF103C*:*
@@ -345,15 +331,15 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnNotebook:pnW65_67SZ:*
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNS50_70MU:*
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNV4XMB,ME,MZ:*
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNS5x_NS7xPU:*
- KEYBOARD_KEY_f7=f21 # Touchpad Toggle
- KEYBOARD_KEY_f8=f21 # Touchpad Toggle
+ KEYBOARD_KEY_f7=touchpad_toggle # Touchpad Toggle
+ KEYBOARD_KEY_f8=touchpad_toggle # Touchpad Toggle
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnV5xTNC_TND_TNE:*
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNV4xPZ:*
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnV54x_6x_TU:*
- KEYBOARD_KEY_f7=f21 # Touchpad Toggle
- KEYBOARD_KEY_f8=f21 # Touchpad Toggle
- KEYBOARD_KEY_81=f20 # Fn+4; Mic Mute
+ KEYBOARD_KEY_f7=touchpad_toggle # Touchpad Toggle
+ KEYBOARD_KEY_f8=touchpad_toggle # Touchpad Toggle
+ KEYBOARD_KEY_81=micmute # Fn+4; Mic Mute
###########################################################
# Compal
@@ -374,7 +360,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnCompaq*:pn*Evo*N*:*
KEYBOARD_KEY_9f=homepage
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:svnCompaq:pn*:pvr*:rvn*:rnN14KP6*
- KEYBOARD_KEY_76=f21 # Fn+f2 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+f2 toggle touchpad
evdev:input:b0003v049Fp0051*
evdev:input:b0003v049Fp008D*
@@ -420,12 +406,12 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
KEYBOARD_KEY_99=nextsong # Front panel next song
KEYBOARD_KEY_9a=setup # Tablet tools button
KEYBOARD_KEY_9b=switchvideomode # Display toggle button
- KEYBOARD_KEY_9e=f21 # Touchpad toggle
+ KEYBOARD_KEY_9e=touchpad_toggle # Touchpad toggle
KEYBOARD_KEY_a2=playpause # Front panel play/pause
KEYBOARD_KEY_a4=stopcd # Front panel stop
KEYBOARD_KEY_ed=media # MediaDirect button
KEYBOARD_KEY_d8=screenlock # FIXME: Tablet lock button
- KEYBOARD_KEY_d9=f21 # Touchpad toggle
+ KEYBOARD_KEY_d9=touchpad_toggle # Touchpad toggle
#
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*910:*
@@ -467,7 +453,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnStudio*155[78]:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
KEYBOARD_KEY_88=! # wireless switch
- KEYBOARD_KEY_9e=!f21
+ KEYBOARD_KEY_9e=!touchpad_toggle
# Dell Latitude E[67]*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*E6*:*
@@ -498,17 +484,17 @@ evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*:*
evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
# Dell XPS microphone mute
evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnXPS*:*
- KEYBOARD_KEY_100150=f20 # Mic mute toggle, should be micmute
+ KEYBOARD_KEY_100150=micmute # Mic mute toggle
# Dell Latitude privacy microphone mute
evdev:name:Dell Privacy Driver:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*:*
# Dell Precision privacy microphone mute
evdev:name:Dell Privacy Driver:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
- KEYBOARD_KEY_120001=f20 # Mic mute toggle, should be micmute
+ KEYBOARD_KEY_120001=micmute # Mic mute toggle
# Dell Professional Sound Bar AE515
evdev:input:b0003v413CpA506*
- KEYBOARD_KEY_b002f=f20 # Mic mute toggle, should be micmute
+ KEYBOARD_KEY_b002f=micmute # Mic mute toggle
###########################################################
# Everex
@@ -516,7 +502,7 @@ evdev:input:b0003v413CpA506*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnEverex:pnXT5000*:*
KEYBOARD_KEY_5c=media
- KEYBOARD_KEY_65=f21 # Fn+F5 Touchpad toggle
+ KEYBOARD_KEY_65=touchpad_toggle # Fn+F5 Touchpad toggle
KEYBOARD_KEY_67=prog3 # Fan speed control button
KEYBOARD_KEY_6f=brightnessup
KEYBOARD_KEY_7f=brightnessdown
@@ -555,7 +541,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnFUJITSU*:pn*AMILO*Pro*Edition*V3505*:*
# Amilo Pro v3205
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnFUJITSU*:pn*AMILO*Pro*V3205*:*
- KEYBOARD_KEY_f4=f21 # FIXME: silent-mode decrease CPU/GPU clock
+ KEYBOARD_KEY_f4=touchpad_toggle # FIXME: silent-mode decrease CPU/GPU clock
KEYBOARD_KEY_f7=switchvideomode # Fn+F3
# Amilo Si 1520
@@ -665,8 +651,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[tT][aA][bB][lL][eE][tT]*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[pP][aA][vV][iI][lL][iI][oO][nN]*:*
KEYBOARD_KEY_88=media # FIXME: quick play
KEYBOARD_KEY_b7=print
- KEYBOARD_KEY_d8=!f23 # touchpad off
- KEYBOARD_KEY_d9=!f22 # touchpad on
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:*
KEYBOARD_KEY_b7=print
@@ -676,7 +662,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:
# Pavilion 13 x360 (Tablet mode and SYSRQ key)
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[pP][aA][vV][iI][lL][iI][oO][nN]*13*x360*:*
- KEYBOARD_KEY_d7=!f23 # touchpad off
+ KEYBOARD_KEY_d7=!touchpad_off # touchpad off
KEYBOARD_KEY_d9=unknown
KEYBOARD_KEY_d2=sysrq # Fn+Print = SYSRQ
@@ -694,7 +680,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pn*[sS][pP][eE][cC][tT][rR][eE]*x360Convert
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPSpectrex360Convertible13*:*
# ENVY x360 13
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPENVYx360Convertible13*:*
- KEYBOARD_KEY_82=f20 # Microphone mute button, should be micmute
+ KEYBOARD_KEY_82=micmute # Microphone mute button
# Spectre x360 16 2022
evdev:name:Intel HID events:dmi:bvn*:bvr*:bd*:svnHP*:pn*HP[sS][pP][eE][cC][tT][rR][eE]*x3602-in-1*:*
@@ -707,7 +693,7 @@ evdev:name:Intel HID events:dmi:bvn*:bvr*:bd*:svnHP*:pnHPENVYx3602-in-1*:*
evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHPElitex21013G3:*
KEYBOARD_KEY_f8=unknown # rfkill is also reported by HP Wireless hotkeys
KEYBOARD_KEY_64=calendar
- KEYBOARD_KEY_81=f20 # Microphone mute button
+ KEYBOARD_KEY_81=micmute # Microphone mute button
KEYBOARD_KEY_ee=switchvideomode # Switch display outputs
KEYBOARD_KEY_92=brightnessdown
KEYBOARD_KEY_97=brightnessup
@@ -725,20 +711,33 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2230s*:*
# Presario
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*Presario*CQ*:*
- KEYBOARD_KEY_d8=f21
- KEYBOARD_KEY_d9=f21
+ KEYBOARD_KEY_d8=touchpad_toggle
+ KEYBOARD_KEY_d9=touchpad_toggle
# 2510p 2530p
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2510p*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2530p*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*G60*Notebook*PC:*
- KEYBOARD_KEY_d8=!f23 # touchpad off
- KEYBOARD_KEY_d9=!f22 # touchpad on
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
# 2570p
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2570p*:*
KEYBOARD_KEY_f8=wlan # Wireless HW switch button
+# 2170p running coreboot
+evdev:atkbd:dmi:bvncoreboot:bvr*:bd*:svnHewlett-Packard*:pn*EliteBook2170p:*
+evdev:atkbd:dmi:bvncoreboot:bvr*:bd*:svnHP*:pn*EliteBook2170p:*
+ KEYBOARD_KEY_66=backspace
+ KEYBOARD_KEY_be=battery # Fn+F2
+ KEYBOARD_KEY_d7=switchvideomode # Fn+F4
+ KEYBOARD_KEY_a3=mute # Fn+F5
+ KEYBOARD_KEY_a1=volumedown # Fn+F6
+ KEYBOARD_KEY_a2=volumeup # Fn+F7
+ KEYBOARD_KEY_a4=brightnessdown # Fn+F9
+ KEYBOARD_KEY_c3=brightnessup # Fn+F10
+ KEYBOARD_KEY_e3=wlan # Fn+F12
+
# Elitebook 2760p
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2760p*:*
KEYBOARD_KEY_89=battery # Fn+F8
@@ -747,15 +746,15 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2760p*:*
KEYBOARD_KEY_87=volumedown
KEYBOARD_KEY_92=brightnessdown
KEYBOARD_KEY_97=brightnessup
- KEYBOARD_KEY_d8=!f23 # touchpad off
- KEYBOARD_KEY_d9=!f22 # touchpad on
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
KEYBOARD_KEY_b3=brightness_auto # Auto brightness
# TX2
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[tT][xX]2*:*
KEYBOARD_KEY_c2=media
- KEYBOARD_KEY_d8=!f23 # Toggle touchpad button on tx2 (OFF)
- KEYBOARD_KEY_d9=!f22 # Toggle touchpad button on tx2 (ON)
+ KEYBOARD_KEY_d8=!touchpad_off # Toggle touchpad button on tx2 (OFF)
+ KEYBOARD_KEY_d9=!touchpad_on # Toggle touchpad button on tx2 (ON)
# Presario 2100
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnPresario*2100*:*
@@ -780,8 +779,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*EliteBook*8460p:*
# HDX9494nr
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHDX9494NR:*
KEYBOARD_KEY_b2=www # Fn+F3
- KEYBOARD_KEY_d8=!f23 # touchpad off
- KEYBOARD_KEY_d9=!f22 # touchpad on
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
# HP EliteBook 725 G2
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPLicrice:*
@@ -800,7 +799,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHP*ProBook*:*
# HP ZBook
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPZBook*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPZBook*:*
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button, should be micmute
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
# HP ZBook Studio G5
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPZBookStudioG5*:*
@@ -813,9 +812,9 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPZBook15G2:*
# HP ProBook 11 G1
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPProBook11G1:*
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button, should be micmute
- KEYBOARD_KEY_d8=f21 # touchpad toggle
- KEYBOARD_KEY_d9=f21 # touchpad toggle
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
+ KEYBOARD_KEY_d8=touchpad_toggle # touchpad toggle
+ KEYBOARD_KEY_d9=touchpad_toggle # touchpad toggle
# HP ZBook Studio G4
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPZBookStudioG4:*
@@ -823,13 +822,13 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPZBookStudioG4:*
# HP EliteBook Folio 1040 G2
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPEliteBookFolio1040G2:*
- KEYBOARD_KEY_d8=!f23 # touchpad off
- KEYBOARD_KEY_d9=!f22 # touchpad on
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
# HP EliteBook Folio G1
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPEliteBookFolioG1:*
KEYBOARD_KEY_64=calendar
- KEYBOARD_KEY_81=f20
+ KEYBOARD_KEY_81=micmute
# HP EliteBook 845 G7
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPEliteBook845G7*:pvr*
@@ -862,14 +861,14 @@ evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHP*ProBook*455*G5*:*
# HP ProBook 11G2
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPProBook11G2*:pvr*
- KEYBOARD_KEY_d8=!f23 # Fn+F2: touchpad off
- KEYBOARD_KEY_d9=!f22 # Fn+F2: touchpad on
+ KEYBOARD_KEY_d8=!touchpad_off # Fn+F2: touchpad off
+ KEYBOARD_KEY_d9=!touchpad_on # Fn+F2: touchpad on
# HP mt44 Mobile Thin Client
evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHP*mt44*Mobile*Thin*Client*:*
KEYBOARD_KEY_64=calendar # Calendar icon (Fn + F12)
KEYBOARD_KEY_6d=displaytoggle # Display icon
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button, should be micmute
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
KEYBOARD_KEY_85=unknown # lid close; also reported via special evdev
KEYBOARD_KEY_f8=wlan # Wireless HW switch button
@@ -887,7 +886,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnOMEN*:pvr*
# HP Dev One
evdev:atkbd:dmi:*:rvnHP:rn8A78:*
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
KEYBOARD_KEY_f9=prog1 # Fn+F12; Programmable hotkey
# HP Victus
@@ -910,14 +909,18 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPEliteDragonfly13.5inchG3NotebookPC:pvr*
KEYBOARD_KEY_c8=pageup
KEYBOARD_KEY_d0=pagedown
+# HP 430 Programmable Wireless Keypad
+evdev:input:b0005v03F0p854Ae044C*
+ KEYBOARD_KEY_700f3=macro1
+ KEYBOARD_KEY_700f4=macro2
+ KEYBOARD_KEY_700fc=macro3
+ KEYBOARD_KEY_700fd=macro4
+ KEYBOARD_KEY_700fe=macro5
+
##########################################################
# Huawei
##########################################################
-# Huawei WMI hotkeys driver
-evdev:name:Huawei WMI hotkeys:dmi:bvn*:bvr*:bd*:svnHUAWEI:*
- KEYBOARD_KEY_287=f20 # Microphone mute button, should be micmute
-
# Huawei MACH-WX9 and EUL-WX9
evdev:atkbd:dmi:bvn*:bvr*:svnHUAWEI*:pnMACH-WX9:*
evdev:atkbd:dmi:bvn*:bvr*:svnHUAWEI*:pnEUL-WX9:*
@@ -977,7 +980,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnINVENTEC:pnSYMPHONY*6.0/7.0:*
# LEAP W502
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnJP-IK:pnLEAPW502:pvr*
- KEYBOARD_KEY_76=f21 # touchpad toggle
+ KEYBOARD_KEY_76=touchpad_toggle # touchpad toggle
###########################################################
# Kvadra
@@ -985,7 +988,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnJP-IK:pnLEAPW502:pvr*
# LE14U/LE15U
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnKVADRA*:pn*LE1*U*:*
- KEYBOARD_KEY_76=f21 # Fn+F1 Toggle touchpad, sends meta+ctrl+toggle
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 Toggle touchpad, sends meta+ctrl+toggle
###########################################################
# Lenovo
@@ -998,7 +1001,7 @@ evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
KEYBOARD_KEY_03=sleep
KEYBOARD_KEY_04=wlan
KEYBOARD_KEY_06=switchvideomode
- KEYBOARD_KEY_07=f21
+ KEYBOARD_KEY_07=touchpad_toggle
KEYBOARD_KEY_08=f24
KEYBOARD_KEY_0b=suspend
KEYBOARD_KEY_0f=brightnessup
@@ -1009,7 +1012,6 @@ evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
KEYBOARD_KEY_15=volumedown
KEYBOARD_KEY_16=mute
KEYBOARD_KEY_17=prog1
- KEYBOARD_KEY_1a=f20 # Microphone mute button; should be micmute
KEYBOARD_KEY_45=bookmarks
KEYBOARD_KEY_46=selective_screenshot # Fn + PrtSc, on Windows: Snipping tool
KEYBOARD_KEY_4a=prog3 # Fn + Right shift, on Windows: No idea
@@ -1023,14 +1025,14 @@ evdev:input:b0003v17EFp6009*
KEYBOARD_KEY_090013=battery # Fn+F3
KEYBOARD_KEY_090014=wlan # Fn+F5
KEYBOARD_KEY_090016=switchvideomode # Fn+F7
- KEYBOARD_KEY_090017=f21 # Fn+F8 touchpad toggle
+ KEYBOARD_KEY_090017=touchpad_toggle # Fn+F8 touchpad toggle
KEYBOARD_KEY_090019=suspend # Fn+F12
KEYBOARD_KEY_09001a=brightnessup # Fn+Home
KEYBOARD_KEY_09001b=brightnessdown # Fn+End
KEYBOARD_KEY_09001d=zoom # Fn+Space
KEYBOARD_KEY_090011=prog1 # ThinkVantage button
KEYBOARD_KEY_090015=camera # Fn+F6 headset/camera VoIP key ??
- KEYBOARD_KEY_090010=f20 # Microphone mute button; should be micmute
+ KEYBOARD_KEY_090010=micmute # Microphone mute button
# Lenovo 3000
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*3000*:pvr*
@@ -1052,8 +1054,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pnS10-*:*
KEYBOARD_KEY_b9=brightnessup # does nothing in BIOS
KEYBOARD_KEY_ba=brightnessdown # does nothing in BIOS
KEYBOARD_KEY_f1=camera # BIOS toggles camera power
- KEYBOARD_KEY_f2=f21 # touchpad toggle (key alternately emits F2 and F3)
- KEYBOARD_KEY_f3=f21
+ KEYBOARD_KEY_f2=touchpad_toggle # touchpad toggle (key alternately emits F2 and F3)
+ KEYBOARD_KEY_f3=touchpad_toggle
# Lenovo IdeaPad 5
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:pvrIdeaPad5*:*
@@ -1089,17 +1091,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnIBM*:pn18666TU:*
# IdeaPad
evdev:name:Ideapad extra buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
KEYBOARD_KEY_0d=rfkill # airplane mode switch (toggle all wireless devices)
- KEYBOARD_KEY_08=f20 # micmute
- KEYBOARD_KEY_42=f23
- KEYBOARD_KEY_43=f22
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr*
KEYBOARD_KEY_95=media
KEYBOARD_KEY_a3=play
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*U300s*:pvr*
- KEYBOARD_KEY_f1=f21
- KEYBOARD_KEY_ce=f20 # micmute
+ KEYBOARD_KEY_f1=touchpad_toggle
+ KEYBOARD_KEY_ce=micmute
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*IdeaPad*Z370*:pvr*
# Lenovo IdeaPad Flex 5
@@ -1120,16 +1119,16 @@ evdev:atkbd:dmi:*:svnLENOVO:*:pvrLenovoYoga300-11IBR:*
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*20378*:pvr*
# Lenovo IdeaPad Z500
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*5931*:pvr*
- KEYBOARD_KEY_f3=f21 # Fn+F6 (toggle touchpad)
+ KEYBOARD_KEY_f3=touchpad_toggle # Fn+F6 (toggle touchpad)
# V480
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*Lenovo*V480*:pvr*
- KEYBOARD_KEY_f1=f21
+ KEYBOARD_KEY_f1=touchpad_toggle
# Lenovo ThinkCentre M800z/M820z/M920z AIO machines
# key_scancode 00 is KEY_MICMUTE
evdev:name:Microphone Mute Button:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
- KEYBOARD_KEY_00=f20
+ KEYBOARD_KEY_00=micmute
# enhanced USB keyboard
evdev:input:b0003v04B3p301B*
@@ -1144,7 +1143,7 @@ evdev:input:b0003v04B3p301B*
# Lenovo Ideapad D330-10IGM
evdev:name:SIPODEV Lenovo HID Device:dmi:*:svnLENOVO:*:pvrLenovoideapadD330-10IGM:*
- KEYBOARD_KEY_70073=f21 # Fn+Supr (Touchpad toggle)
+ KEYBOARD_KEY_70073=touchpad_toggle # Fn+Supr (Touchpad toggle)
evdev:name:SIPODEV Lenovo HID Device Consumer Control:dmi:*:svnLENOVO:*:pvrLenovoideapadD330-10IGM:*
KEYBOARD_KEY_c00ff=fn_esc # Fn+Tab (FnLk toggle)
@@ -1517,7 +1516,6 @@ evdev:input:b0003v1532p0200*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pn*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*:*
- KEYBOARD_KEY_76=f21 # Toggle touchpad, sends meta+ctrl+toggle
KEYBOARD_KEY_91=config # MSIControl Center
KEYBOARD_KEY_a0=mute # Fn+F9
KEYBOARD_KEY_ae=volumedown # Fn+F7
@@ -1526,16 +1524,20 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*:*
KEYBOARD_KEY_c2=ejectcd
KEYBOARD_KEY_df=sleep # Fn+F12
KEYBOARD_KEY_e2=bluetooth # satellite dish2
- KEYBOARD_KEY_e4=f21 # Fn+F3 Touchpad disable
+ KEYBOARD_KEY_e4=touchpad_toggle # Fn+F3 Touchpad disable
KEYBOARD_KEY_ec=email # envelope button
KEYBOARD_KEY_ee=camera # Fn+F6 camera disable
- KEYBOARD_KEY_f1=f20 # Microphone mute
+ KEYBOARD_KEY_f1=micmute # Microphone mute
KEYBOARD_KEY_f2=rotate_display # Rotate screen
KEYBOARD_KEY_f6=wlan # satellite dish1
KEYBOARD_KEY_f7=brightnessdown # Fn+F4
KEYBOARD_KEY_f8=brightnessup # Fn+F5
KEYBOARD_KEY_f9=search
+# MSI GF63 toggles touchpad using Fn+F3 where the keyboard key is 29
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnGF63*:*
+ KEYBOARD_KEY_85=touchpad_toggle # Toggle touchpad, sends meta+ctrl+toggle
+
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnGE60*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnGE70*:*
KEYBOARD_KEY_c2=ejectcd
@@ -1562,6 +1564,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnU90/U100:*
# Keymaps MSI Prestige And MSI Modern FnKeys and Special keys
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Prestige*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
+ KEYBOARD_KEY_76=touchpad_toggle # Toggle touchpad, sends meta+ctrl+toggle
KEYBOARD_KEY_91=prog1 # Fn+F7 Creation Center, sometime F7
KEYBOARD_KEY_f2=rotate_display # Fn+F12 Screen rotation
KEYBOARD_KEY_8d=prog3 # Fn+A Change True Color selections
@@ -1570,12 +1573,9 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
KEYBOARD_KEY_97=unknown # Lid close
KEYBOARD_KEY_98=unknown # Lid open
-evdev:name:MSI Laptop hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnM[iI][cC][rR][oO]-S[tT][aA][rR]*:*
- KEYBOARD_KEY_0213=f22
- KEYBOARD_KEY_0214=f23
-
-# MSI Claw
+# MSI Claw, MSI Claw 8
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClawA1M:*
+evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClaw8AI+A2VM:*
KEYBOARD_KEY_b9=f15 # Right Face Button
KEYBOARD_KEY_ba=f16 # Left Face Button
@@ -1585,7 +1585,7 @@ evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.
# VersaPro VG-S
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnNEC:pnPC-VK22TGSGS:pvr*
- KEYBOARD_KEY_a8=f21 # Fn+Space touchpad toggle
+ KEYBOARD_KEY_a8=touchpad_toggle # Fn+Space touchpad toggle
KEYBOARD_KEY_67=brightnessdown # Fn+F7 brightness down
KEYBOARD_KEY_65=brightnessup # Fn+F8 brightness up
KEYBOARD_KEY_71=battery # Fn+F4 ECO
@@ -1598,7 +1598,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnNEC:pnPC-VK22TGSGS:pvr*
evdev:input:b0003v15BAp003C*
KEYBOARD_KEY_70066=sleep # Fn+F1
KEYBOARD_KEY_700f6=wlan # Fn+F2
- KEYBOARD_KEY_700c7=f21 # Fn+F3 touchpad toggle
+ KEYBOARD_KEY_700c7=touchpad_toggle # Fn+F3 touchpad toggle
KEYBOARD_KEY_7006f=brightnessdown # Fn+F7
KEYBOARD_KEY_70070=brightnessup # Fn+F8
KEYBOARD_KEY_7006e=switchvideomode # Fn+F9
@@ -1639,8 +1639,8 @@ evdev:name:AT Translated Set 2 keyboard:phys:sp/serio*/input*:ev:120013:*
KEYBOARD_KEY_f3=f17
KEYBOARD_KEY_f2=f18
KEYBOARD_KEY_f1=f19
- KEYBOARD_KEY_f0=f20 # micmute
- KEYBOARD_KEY_ef=f21
+ KEYBOARD_KEY_f0=micmute
+ KEYBOARD_KEY_ef=touchpad_toggle
KEYBOARD_KEY_ee=chat
KEYBOARD_KEY_e4=chat
KEYBOARD_KEY_dd=menu # Frame
@@ -1682,7 +1682,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnONKYO*CORPORATION:pnONKYOPC:*
KEYBOARD_KEY_f0=media # Fn+R
KEYBOARD_KEY_f5=switchvideomode # Fn+E
KEYBOARD_KEY_f6=camera # Fn+T
- KEYBOARD_KEY_f7=f21 # Fn+Y (touchpad toggle)
+ KEYBOARD_KEY_f7=touchpad_toggle # Fn+Y (touchpad toggle)
KEYBOARD_KEY_f8=brightnessup # Fn+S
KEYBOARD_KEY_f9=brightnessdown # Fn+A
KEYBOARD_KEY_fb=wlan # Fn+J
@@ -1752,14 +1752,6 @@ evdev:input:b0003v258Ap001E*
KEYBOARD_KEY_700a6=brightnessup
KEYBOARD_KEY_70066=sleep
-###########################################################
-# Plantronics
-###########################################################
-
-# Plantronics .Audio 626 DSP
-evdev:input:b0003v047FpC006*
- KEYBOARD_KEY_b002f=f20 # Microphone mute button; should be micmute
-
###########################################################
# Purism
###########################################################
@@ -1823,8 +1815,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*:*
KEYBOARD_KEY_b4=!wlan # Fn+F9 (X60P)
KEYBOARD_KEY_c5=!prog3 # Fn+F8 switch power mode (battery/dynamic/performance)
KEYBOARD_KEY_d5=!wlan # Fn+F12 wlan/airplane switch
- KEYBOARD_KEY_f7=!f22 # Fn+F10 Touchpad on
- KEYBOARD_KEY_f9=!f23 # Fn+F10 Touchpad off
+ KEYBOARD_KEY_f7=!touchpad_on # Fn+F10 Touchpad on
+ KEYBOARD_KEY_f9=!touchpad_off # Fn+F10 Touchpad off
# Series 3
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*300E[457]*:*
@@ -1837,8 +1829,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*355V[45]*:pvr*
KEYBOARD_KEY_89=!brightnessdown # Fn+F2 brightness down
KEYBOARD_KEY_88=!brightnessup # Fn+F3 brightness up
KEYBOARD_KEY_82=!switchvideomode # Fn+F4 display toggle
- KEYBOARD_KEY_f7=!f22 # Fn+F5 touchpad on
- KEYBOARD_KEY_f9=!f23 # Fn+F5 touchpad off
+ KEYBOARD_KEY_f7=!touchpad_on # Fn+F5 touchpad on
+ KEYBOARD_KEY_f9=!touchpad_off # Fn+F5 touchpad off
KEYBOARD_KEY_a0=!mute # Fn+F6 mute
KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
KEYBOARD_KEY_b0=!volumeup # Fn+F8 volume up
@@ -1913,8 +1905,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pnSQ1US:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*SX20S*:*
KEYBOARD_KEY_74=mute
KEYBOARD_KEY_75=mute
- KEYBOARD_KEY_77=f22 # Touchpad on
- KEYBOARD_KEY_79=f23 # Touchpad off
+ KEYBOARD_KEY_77=touchpad_on # Touchpad on
+ KEYBOARD_KEY_79=touchpad_off # Touchpad off
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700T*:*
KEYBOARD_KEY_ad=leftmeta
@@ -1923,7 +1915,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700T*:*
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:sku*SCAI*:*
KEYBOARD_KEY_81=!esc
KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings
- KEYBOARD_KEY_76=f21 # Fn+F5 Touchpad toggle
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F5 Touchpad toggle
KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
KEYBOARD_KEY_b0=!volumeup # Fn+F8 volume up
KEYBOARD_KEY_ac=unknown # Fn+F9 multi-level keyboard backlight toggle - handled by samsung-galaxybook
@@ -1976,7 +1968,7 @@ evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVGN-FW250*:*
KEYBOARD_KEY_10=suspend # Fn+F12
evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVPC*:*
- KEYBOARD_KEY_05=f21 # Fn+F1 -> KEY_F21 (The actual touchpad toggle)
+ KEYBOARD_KEY_05=touchpad_toggle # Fn+F1
KEYBOARD_KEY_0d=down # Fn+F9 zoomout
KEYBOARD_KEY_0e=up # Fn+F10 zoomin
@@ -1985,19 +1977,23 @@ evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVPC*:*
###########################################################
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pn*:*
- KEYBOARD_KEY_f7=f21 # Touchpad toggle
- KEYBOARD_KEY_f8=f21 # Touchpad toggle
+ KEYBOARD_KEY_81=micmute # Mic mute
+ KEYBOARD_KEY_f7=touchpad_toggle # Touchpad toggle
+ KEYBOARD_KEY_f8=touchpad_toggle # Touchpad toggle
-# Pangolin 12
+# Pangolin
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang12*
- KEYBOARD_KEY_76=f21 # Touchpad toggle
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang13*
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang14*
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang15*
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
###########################################################
# T-bao
###########################################################
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnT-bao:pnTbookair:*
- KEYBOARD_KEY_76=f21 # Touchpad toggle
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
###########################################################
# Toshiba
@@ -2013,8 +2009,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*A110:*
KEYBOARD_KEY_92=stop
KEYBOARD_KEY_93=www
KEYBOARD_KEY_94=media
- KEYBOARD_KEY_9e=f22 # Touchpad on
- KEYBOARD_KEY_9f=f23 # Touchpad off
+ KEYBOARD_KEY_9e=touchpad_on # Touchpad on
+ KEYBOARD_KEY_9f=touchpad_off # Touchpad off
KEYBOARD_KEY_b9=nextsong
KEYBOARD_KEY_d9=brightnessup
KEYBOARD_KEY_ee=screenlock
@@ -2027,8 +2023,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*M30X:*
KEYBOARD_KEY_d9=brightnessup
KEYBOARD_KEY_ee=screenlock
KEYBOARD_KEY_93=media
- KEYBOARD_KEY_9e=f22 # touchpad enable
- KEYBOARD_KEY_9f=f23 # touchpad disable
+ KEYBOARD_KEY_9e=touchpad_on # touchpad enable
+ KEYBOARD_KEY_9f=touchpad_off # touchpad disable
# Satellite P75-A
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*P75-A:*
@@ -2042,14 +2038,14 @@ evdev:name:Toshiba*input*device:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSATELLITEU940:*
KEYBOARD_KEY_13c=brightnessdown
KEYBOARD_KEY_13d=brightnessup
KEYBOARD_KEY_13e=switchvideomode
- KEYBOARD_KEY_13f=f21 # Touchpad toggle
+ KEYBOARD_KEY_13f=touchpad_toggle # Touchpad toggle
# Satellite P75-A7200
evdev:name:Toshiba*input*device:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*P75-A:*
KEYBOARD_KEY_13c=brightnessdown
KEYBOARD_KEY_13d=brightnessup
KEYBOARD_KEY_13e=switchvideomode
- KEYBOARD_KEY_13f=f21 # Touchpad toggle
+ KEYBOARD_KEY_13f=touchpad_toggle # Touchpad toggle
KEYBOARD_KEY_9e=wlan
# Portege Z830 ACPI quickstart buttons
@@ -2060,7 +2056,7 @@ evdev:name:Quickstart Button 2:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
KEYBOARD_KEY_1=prog2 # TOSHIBA Presentation button
evdev:name:Quickstart Button 3:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
- KEYBOARD_KEY_1=f21 # Touchpad toggle
+ KEYBOARD_KEY_1=touchpad_toggle # Touchpad toggle
###########################################################
# VIA
@@ -2074,7 +2070,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnVIA:pnK8N800:*
###########################################################
evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:bd*:svnVIOS:pnLTH17:*
- KEYBOARD_KEY_70073=f21 # Touchpad toggle
+ KEYBOARD_KEY_70073=touchpad_toggle # Touchpad toggle
###########################################################
# WeiHeng
@@ -2082,7 +2078,7 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:bd*:svnVIOS:pnLTH17:*
# P325J
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnINET:pnP325J:*
- KEYBOARD_KEY_76=f21 # Touchpad toggle
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
###########################################################
# Xiaomi
@@ -2108,8 +2104,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnZepto:pnZnote:*
KEYBOARD_KEY_93=switchvideomode # Fn+F3 Toggle Video Output
KEYBOARD_KEY_95=brightnessdown # Fn+F4 Brightness Down
KEYBOARD_KEY_91=brightnessup # Fn+F5 Brightness Up
- KEYBOARD_KEY_a5=f23 # Fn+F6 Disable Touchpad
- KEYBOARD_KEY_a6=f22 # Fn+F6 Enable Touchpad
+ KEYBOARD_KEY_a5=touchpad_off # Fn+F6 Disable Touchpad
+ KEYBOARD_KEY_a6=touchpad_on # Fn+F6 Enable Touchpad
KEYBOARD_KEY_a7=bluetooth # Fn+F10 Enable Bluetooth
KEYBOARD_KEY_a9=bluetooth # Fn+F10 Disable Bluetooth
KEYBOARD_KEY_f1=wlan # RF Switch Off
@@ -2209,7 +2205,12 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnViewSonic:pnVPAD10:*
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJPW1[12]F11X*:pvr*:*
# Vaio FE14 (VJFE41F11X, VJE42F11X, VJFE44F11X, VJFE54F11X)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJFE*:pvr*:*
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
+
+# VAIO VJFH52
+evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJFH52F11X*:pvr*:*
+ KEYBOARD_KEY_f7=touchpad_off # Fn+F1 toggle touchpad off
+ KEYBOARD_KEY_f8=touchpad_on # Fn+F1 toggle touchpad on
###########################################################
# Positivo
@@ -2220,23 +2221,23 @@ evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivoTecnologiaSA:pn*:pvr
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivoTecnologiaSA:pn*:pvr*:rvnPositivoTecnologiaSA:rnCF40CM-V2*
# Positivo DUO (k116)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivoTecnologiaSA:pn*:pvr*:rvnPositivoTecnologiaSA:rnK116*
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
# Positivo (N14NPE-N, N15NPE-N)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnN1[45]NPE-N*
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
KEYBOARD_KEY_dd=search
# Positivo (N15EPE, N14EPE)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnN1[45]EPE*
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
KEYBOARD_KEY_6e=search
# Positivo (CG15D)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnCG15D*
# Positivo Motion (N14AP7, N14DP6, N14DP7, N14DP7-V2, N14DP9, N14JP6, N14KP6)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnN14[ADJK]P*
- KEYBOARD_KEY_76=f21 # Fn+f2 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+f2 toggle touchpad
KEYBOARD_KEY_67=prog1 # Programmable button
KEYBOARD_KEY_68=prog2 # Programmable button
KEYBOARD_KEY_69=prog3 # Programmable button
@@ -2252,7 +2253,7 @@ evdev:name:SINO WEALTH USB KEYBOARD:dmi:bvn*:bvr*:svnPositivoInformaticaSA:pn*:p
evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:br*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnN14EP6*
# Positivo Motion (CW14Q01P) (CW14Q01P-V2)
evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnCW14Q01P*
- KEYBOARD_KEY_70073=f21 # Fn+f2 toggle touchpad
+ KEYBOARD_KEY_70073=touchpad_toggle # Fn+f2 toggle touchpad
KEYBOARD_KEY_7006b=prog1 # Programmable button
KEYBOARD_KEY_7006c=prog2 # Programmable button
KEYBOARD_KEY_7006d=prog3 # Programmable button
@@ -2263,7 +2264,7 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn
###########################################################
# Multilaser Ultra (UL154)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*bvr*:svnMultilaserIndustrial:pn*:pvr*:rvn*:rnUL154*
- KEYBOARD_KEY_76=f21 # Fn+f2 toggle touchpad
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+f2 toggle touchpad
###########################################################
# Other
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
index 02f4041475..869f9221a4 100644
--- a/hwdb.d/60-sensor.hwdb
+++ b/hwdb.d/60-sensor.hwdb
@@ -156,6 +156,10 @@ sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100TAS:*
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT200TA:*
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
+# Asus Transformer Mini T103HAF
+sensor:modalias:platform:HID-SENSOR-200073*:dmi:*svn*ASUSTeK*:pnT103HAF:*
+ ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1
+
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnTP201SA:*
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pn*E205SA:*
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
@@ -164,8 +168,7 @@ sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LA:*
sensor:modalias:acpi:INVN6500*:dmi:*svn*ASUSTeK*:*pn*TP300LD:*
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
-sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pn*Q551LB:*
-sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pn*Q551LN:*
+sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pn*Q5??L*:*
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
sensor:modalias:acpi:KXJ2109*:dmi:*:svnASUSTeK*:pnME176C:*
@@ -305,7 +308,7 @@ sensor:modalias:acpi:MXC6655*:dmi:*:svnCHUWIINNOVATIONLIMITED:pnHi10Go:*
# Chuwi Hi10 Max
sensor:modalias:acpi:MXC6655*:dmi:*:svnCHUWIInnovationAndTechnology*:pnHi10Max:*
- ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
+ ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
# Chuwi Hi12
sensor:modalias:acpi:BOSC0200*:dmi:*:svnHampoo:pnP02BD6_HI-122LP:*
@@ -509,6 +512,14 @@ sensor:modalias:acpi:SMO8500*:dmi:*:svnEstar:pneSTARBEAUTYHDIntelQuadcore:*
sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
+#########################################
+# Exo
+#########################################
+
+# EXO Wings 2in1 w1125
+sensor:modalias:acpi:SMO8500*:dmi:*:svnEXO*:pnWings:*
+ ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
+
#########################################
# Geo Computers
#########################################

View File

@ -0,0 +1,25 @@
From ef5085ddc7cfd4ee25d98582453175cf1c7edfda Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Fri, 7 Feb 2025 11:07:37 +0900
Subject: [PATCH] udevadm-test: fix gid check
Fixes a bug introduced by 03b6879f4d45c49264708aef872fd05af30ddcf0.
Based on the upstream commit e66d4ea31ad3812fdd7a0f1cdcc3b941cedf542a.
---
src/udev/udevadm-test.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/udev/udevadm-test.c b/src/udev/udevadm-test.c
index 748bcaf364..574745c42c 100644
--- a/src/udev/udevadm-test.c
+++ b/src/udev/udevadm-test.c
@@ -166,7 +166,7 @@ int test_main(int argc, char *argv[], void *userdata) {
}
gid_t gid = event->gid;
- if (!gid_is_valid(uid))
+ if (!gid_is_valid(gid))
(void) device_get_devnode_gid(dev, &gid);
if (gid_is_valid(gid)) {
_cleanup_free_ char *group = gid_to_name(gid);

View File

@ -1,4 +1,4 @@
From b82f93524a0585aad5f1f3851d600baafd05d9bd Mon Sep 17 00:00:00 2001
From 3a8ccc456c8508b70ced7ee02023c7ff4c887999 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Thu, 16 May 2024 14:24:38 +0200
Subject: [PATCH] ci: update workflows to run on source-git setup
@ -69,7 +69,7 @@ index 9122eeb70e..c0d8790680 100644
permissions:
contents: read
diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml
index d9f6a37680..982013a773 100644
index 0a07dadccb..6f9318cecd 100644
--- a/.github/workflows/linter.yml
+++ b/.github/workflows/linter.yml
@@ -6,9 +6,6 @@ name: Lint Code Base

View File

@ -1,4 +1,4 @@
From 91d616a5adec2c3b581c2bff5b712a248dfa4d5b Mon Sep 17 00:00:00 2001
From bb8b5a45670f68907549070551866e99999336c2 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Thu, 16 May 2024 14:36:04 +0200
Subject: [PATCH] ci: setup source-git automation

View File

@ -1,4 +1,4 @@
From 6ada64df202cacd1582d57cf49ef6eb61b58ae59 Mon Sep 17 00:00:00 2001
From 3898fb729b4bae5fbbdfd433f595836dce0d475e Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Fri, 17 May 2024 13:55:40 +0200
Subject: [PATCH] ci: reconfigure Packit for RHEL 10

View File

@ -1,4 +1,4 @@
From efe89a7b4ac6612f5aa63394c7b4f3a42337810d Mon Sep 17 00:00:00 2001
From af3c2d2ece5aa4f4c9869c0587be5aba50af6618 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Tue, 9 Jan 2024 11:28:04 +0100
Subject: [PATCH] journal: again create user journals for users with high uids

View File

@ -1,4 +1,4 @@
From 5f84511aa19d116dd15176e82eee540082a4f14b Mon Sep 17 00:00:00 2001
From 8c1b874414f2f619412adaecdc5a349e1ff634ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Tue, 18 Jun 2024 20:32:10 +0200
Subject: [PATCH] tmpfiles: make --purge hard to (mis-)use

View File

@ -1,4 +1,4 @@
From fabf518d7779bbe5ac3cd2e76ee41e1a6c9924ba Mon Sep 17 00:00:00 2001
From 98b19314de99112cf315a2894562639dcadbe320 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Wed, 14 Dec 2022 22:24:53 +0100
Subject: [PATCH] fedora: use system-auth in pam systemd-user

View File

@ -1,4 +1,4 @@
From 57e99d4d70dec39ca6f4e23f6b91ea7f8611c607 Mon Sep 17 00:00:00 2001
From 8263ecf730ea5ab77caa8467c5c28f24f4a865a3 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Tue, 25 Jun 2024 14:00:45 +0200
Subject: [PATCH] net-naming-scheme: start rhel10 naming and include rhel8 and

View File

@ -1,4 +1,4 @@
From 61399301022529a55899540ce8156f3ad95a5814 Mon Sep 17 00:00:00 2001
From 564e24369d0c1ddc8536d577550331e5b8a0d0e0 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Wed, 12 Jun 2024 14:23:30 +0200
Subject: [PATCH] rules: copy 40-redhat.rules from RHEL 9

View File

@ -1,4 +1,4 @@
From d8c76b55ee32e918edf89d210b429a85ea8a7bc0 Mon Sep 17 00:00:00 2001
From b3f9d8462a14cef1455dbdd3d89c01c9674a7d0f Mon Sep 17 00:00:00 2001
From: rpm-build <rpm-build>
Date: Wed, 1 Aug 2018 10:58:28 +0200
Subject: [PATCH] logind: set RemoveIPC to false by default

View File

@ -1,4 +1,4 @@
From b9e26760474f3c2636ba24a9f043350bddadb77c Mon Sep 17 00:00:00 2001
From 23091e70f1770b23ad650e3977341b834742d909 Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Thu, 5 Aug 2021 17:11:47 +0200
Subject: [PATCH] tmpfiles: don't create resolv.conf -> stub-resolv.conf

View File

@ -1,4 +1,4 @@
From 242f581b5a314d0a7c0f696bf8a5662445bc4b60 Mon Sep 17 00:00:00 2001
From 3485ef0a5796a5c72876bdf63156952b0ffea714 Mon Sep 17 00:00:00 2001
From: David Tardon <dtardon@redhat.com>
Date: Thu, 11 Mar 2021 15:48:23 +0100
Subject: [PATCH] rc-local: order after network-online.target

View File

@ -1,4 +1,4 @@
From 687f41dad8b31e64083acda537f0f66917a1d0be Mon Sep 17 00:00:00 2001
From 61b82fbe22fbc6ec00b075df25a878052ad2f6f1 Mon Sep 17 00:00:00 2001
From: David Tardon <dtardon@redhat.com>
Date: Thu, 15 Jul 2021 11:15:17 +0200
Subject: [PATCH] random-util: increase random seed size to 1024

View File

@ -1,4 +1,4 @@
From bed45e995d7d9337bb42b7bbde4558eaefef1020 Mon Sep 17 00:00:00 2001
From 172467141cad31672cbb23398696cd56814347f7 Mon Sep 17 00:00:00 2001
From: Jan Synacek <jsynacek@redhat.com>
Date: Thu, 2 May 2019 14:11:54 +0200
Subject: [PATCH] journal: don't enable systemd-journald-audit.socket by

View File

@ -1,4 +1,4 @@
From 2d2c8eea4b7276bf203e28a7a49dfa5c0591e700 Mon Sep 17 00:00:00 2001
From e94102b01e89ce625b4947857d0148165adec1ac Mon Sep 17 00:00:00 2001
From: David Tardon <dtardon@redhat.com>
Date: Thu, 5 Aug 2021 15:26:13 +0200
Subject: [PATCH] journald.conf: don't touch current audit settings

View File

@ -1,4 +1,4 @@
From be1d466127e5f44dc7d887276824e41e2d7eccdb Mon Sep 17 00:00:00 2001
From b4c80df8978ea29893edb45cd163dfe5d93cbb27 Mon Sep 17 00:00:00 2001
From: Lukas Nykryn <lnykryn@redhat.com>
Date: Tue, 12 Feb 2019 16:58:16 +0100
Subject: [PATCH] rules: add elevator= kernel command line parameter

View File

@ -1,4 +1,4 @@
From 4c20d1244f0618bfe10f5ce33ed902ced7817cde Mon Sep 17 00:00:00 2001
From 73538e27e83432aae86db0cf3af31e397a4d7c69 Mon Sep 17 00:00:00 2001
From: rpm-build <rpm-build>
Date: Wed, 1 Aug 2018 13:19:39 +0200
Subject: [PATCH] pid1: bump DefaultTasksMax to 80% of the kernel pid.max value

View File

@ -1,4 +1,4 @@
From cbfc25c7f95e6f3303f7db4f0e308c08c3aedaa6 Mon Sep 17 00:00:00 2001
From 75e43ad53bce62ad58112cdfcecbc1917250a731 Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Tue, 21 Sep 2021 15:01:19 +0200
Subject: [PATCH] udev/net-setup-link: change the default MACAddressPolicy to

View File

@ -1,4 +1,4 @@
From e196e930009c71346ad12198c2e390dd31f53fb3 Mon Sep 17 00:00:00 2001
From 54af0d04d5194cdf9a26cbe4fd7c751f7cdae497 Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Tue, 22 Feb 2022 13:24:11 +0100
Subject: [PATCH] core: decrease log level of messages about use of

View File

@ -1,4 +1,4 @@
From df682910d69aaa16e8503be3a8429f0852a1365f Mon Sep 17 00:00:00 2001
From 17c66b80f5a9bf38a1d4226ab4f54038253b4f93 Mon Sep 17 00:00:00 2001
From: Lukas Nykryn <lnykryn@redhat.com>
Date: Mon, 8 Jul 2024 14:44:45 +0200
Subject: [PATCH] taint: remove unmerged-bin
@ -16,7 +16,7 @@ Resolves: RHEL-46277
4 files changed, 1 insertion(+), 17 deletions(-)
diff --git a/catalog/systemd.catalog.in b/catalog/systemd.catalog.in
index eab4afd0cd..cf86af9d8d 100644
index f3ca748862..ef6fb49ae5 100644
--- a/catalog/systemd.catalog.in
+++ b/catalog/systemd.catalog.in
@@ -570,7 +570,6 @@ Support: %SUPPORT_URL%

View File

@ -1,4 +1,4 @@
From f3187aa4ad73668673354eb032cc2f5ec009759b Mon Sep 17 00:00:00 2001
From ed45de428287869a531db8a230874fa31db02178 Mon Sep 17 00:00:00 2001
From: Lukas Nykryn <lnykryn@redhat.com>
Date: Mon, 8 Jul 2024 13:13:10 +0200
Subject: [PATCH] presets: remove resolved

View File

@ -1,4 +1,4 @@
From a17c2d35d3a1ea0cab512496c0e52c6360e250c7 Mon Sep 17 00:00:00 2001
From d93bd311a97296483c7d99d572545ce38edcaa65 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Tue, 16 Jul 2024 10:08:06 +0200
Subject: [PATCH] ci: run mkosi test only for Fedora and CentOS Stream

View File

@ -1,4 +1,4 @@
From d0c96c4ed72e6808b0827baa3b97f350b94d7f76 Mon Sep 17 00:00:00 2001
From 9b4672695dd83f8e5a7fb7ff55c477542907a850 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Tue, 16 Jul 2024 10:09:23 +0200
Subject: [PATCH] taint: remove unused variable `usr_sbin`

View File

@ -1,4 +1,4 @@
From cffc9fc64f28f68a560c1ad1bf609ad3cff441f3 Mon Sep 17 00:00:00 2001
From 77cb42b21dc039c6c12ebeadfb8433fdd6ba805e Mon Sep 17 00:00:00 2001
From: Frantisek Sumsal <frantisek@sumsal.cz>
Date: Wed, 17 Jul 2024 12:19:03 +0200
Subject: [PATCH] packit: drop the libarchive workaround

View File

@ -1,4 +1,4 @@
From 875e960dd9e6e710b2c70a641bacb6c92d26cc0b Mon Sep 17 00:00:00 2001
From 9e174bfea4f0dc91e3a807d425f090d904beb986 Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Fri, 5 Apr 2024 15:56:58 +0200
Subject: [PATCH] coredump: by default process and store core files up to 1GiB

View File

@ -1,4 +1,4 @@
From 8b9406b86c43ce92400f5a1972574cc0a5131cd4 Mon Sep 17 00:00:00 2001
From f815901eda09adb11b0957b4243b877d9dc971a4 Mon Sep 17 00:00:00 2001
From: Jan Synacek <jsynacek@redhat.com>
Date: Tue, 15 May 2018 09:24:20 +0200
Subject: [PATCH] Avoid /tmp being mounted as tmpfs without the user's will

View File

@ -1,4 +1,4 @@
From 53f681397b4b9380566dcffc41bcd634cfd5fd45 Mon Sep 17 00:00:00 2001
From 626d6691fe357a848e9910d6497eb9892e85db58 Mon Sep 17 00:00:00 2001
From: Lukas Nykryn <lnykryn@redhat.com>
Date: Mon, 5 Sep 2016 12:47:09 +0200
Subject: [PATCH] unit: don't add Requires for tmp.mount

View File

@ -1,4 +1,4 @@
From 51548a3822da1b508b6fc4fcb3fd529adbf50257 Mon Sep 17 00:00:00 2001
From 34f26684f30b23cf59545b8fba68cbee7655abe0 Mon Sep 17 00:00:00 2001
From: Jan Synacek <jsynacek@redhat.com>
Date: Tue, 22 Jan 2019 10:28:42 +0100
Subject: [PATCH] units: add [Install] section to tmp.mount

View File

@ -1,4 +1,4 @@
From 191a786cf10a6138caa00ae4c798ea312642ecc5 Mon Sep 17 00:00:00 2001
From 882020f9dc77c6212ab33cf2edca2e5488aa488b Mon Sep 17 00:00:00 2001
From: Michal Sekletar <msekleta@redhat.com>
Date: Wed, 22 Sep 2021 14:38:00 +0200
Subject: [PATCH] units: don't enable tmp.mount statically in local-fs.target

View File

@ -1,4 +1,4 @@
From f4d7fcc1e02a925d0e3a8993e8372ab6c74a5746 Mon Sep 17 00:00:00 2001
From 761136b13a86095663988d9d1080a9235d5f98f6 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Thu, 8 Aug 2024 13:12:58 +0200
Subject: [PATCH] netif-naming-scheme: add rhel-9.5 scheme

View File

@ -1,4 +1,4 @@
From ebe05ca738647e5d69035a3426fddb5b2ba7eb76 Mon Sep 17 00:00:00 2001
From 1bf9dcf0b954a29078a0d81b9d1d0b508353f9f4 Mon Sep 17 00:00:00 2001
From: Lukas Nykryn <lnykryn@redhat.com>
Date: Thu, 22 Aug 2024 13:42:11 +0200
Subject: [PATCH] netif-naming-scheme: rename rhel-10.0 to rhel-10.0.beta

View File

@ -1,4 +1,4 @@
From ead3dbf4ad38bb7756bbde055060f9a8ec3a10b0 Mon Sep 17 00:00:00 2001
From 30d6ee692d1ec4c914a1dd7718827208121ba623 Mon Sep 17 00:00:00 2001
From: Lukas Nykryn <lnykryn@redhat.com>
Date: Thu, 22 Aug 2024 13:47:56 +0200
Subject: [PATCH] net-naming-scheme: disable NAMING_FIRMWARE_NODE_SUN

View File

@ -1,4 +1,4 @@
From d1c50dd03a0bb3b744a81bd716d48356a801f950 Mon Sep 17 00:00:00 2001
From 6233005b0c87d963d0e9920869338b48364fbcf2 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Mon, 16 Dec 2024 15:08:50 +0100
Subject: [PATCH] netif-naming-scheme: introduce rhel-10.0 scheme

View File

@ -1,4 +1,4 @@
From d3ec05d2aff59137c7a28538487979f8cc1075a4 Mon Sep 17 00:00:00 2001
From 4055f81a331d519e557bc1761811e9291a68bc9a Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Mon, 6 Jan 2025 09:09:11 +0100
Subject: [PATCH] udev/net_id: introduce naming scheme for RHEL-9.6

View File

@ -1,4 +1,4 @@
From 5646c2f6fa403e0af1d92d3799a68fb520eb74fe Mon Sep 17 00:00:00 2001
From 305b85d3fa788342fb65326fec677f73f739810e Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Tue, 14 Jan 2025 13:26:05 +0100
Subject: [PATCH] ci: use ubuntu 22:04 for deploy of man pages

View File

@ -1,4 +1,4 @@
From 65c7da8d619b77bd0db14d02a9ab66b5759c57bf Mon Sep 17 00:00:00 2001
From 4f52f9d4e24227648967d4f79644fd35a01e1460 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Wed, 15 Jan 2025 15:35:00 +0100
Subject: [PATCH] ci: fix Packit

View File

@ -1,4 +1,4 @@
From 2467c368d79e9c2a3037c8a0879cfdc42b816ecb Mon Sep 17 00:00:00 2001
From d9ea9b2c99571518f1ea3e63fcffd11ecbd3e282 Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Thu, 16 Jan 2025 14:42:48 +0100
Subject: [PATCH] ci: drop testing farm test

View File

@ -1,4 +1,4 @@
From 8308b1dbd0d84500f8aed37e4b8461f89cc997c6 Mon Sep 17 00:00:00 2001
From bb1289d5263891bddf0568f29d00ac0b95632f9b Mon Sep 17 00:00:00 2001
From: Ronan Pigott <ronan@rjp.ie>
Date: Thu, 28 Nov 2024 12:53:32 -0700
Subject: [PATCH] dbus: stash the subscriber list when we disconenct from the

View File

@ -1,4 +1,4 @@
From 7aee12d2b65899d1aa6e2756741f4b6e9f26d6fa Mon Sep 17 00:00:00 2001
From e0f31135e2c1929844dca4cb2cc8a5c2a2395013 Mon Sep 17 00:00:00 2001
From: Ronan Pigott <ronan@rjp.ie>
Date: Wed, 11 Dec 2024 12:47:10 -0700
Subject: [PATCH] manager: s/deserialized_subscribed/subscribed_as_strv

View File

@ -1,4 +1,4 @@
From 8432f7bb85bb297cf73020f77bd0bd3ce7717142 Mon Sep 17 00:00:00 2001
From ba46905dd7c33d6e3bcfccfd87cfcc2b4d8b3e52 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Sat, 11 Jan 2025 16:52:05 +0100
Subject: [PATCH] shared/bus-util: move bus_message_read_id128() to

View File

@ -1,4 +1,4 @@
From af7d5bb4407accd5d57d2b45f253574692c64e9c Mon Sep 17 00:00:00 2001
From 2ea8cc2b4d6a266fbd06b727a3fbc74301930f98 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Sat, 11 Jan 2025 17:10:43 +0100
Subject: [PATCH] shared/bus-util: move bus_message_hash_ops to

View File

@ -1,4 +1,4 @@
From b3936072443a92740b02e442378603ece456b77a Mon Sep 17 00:00:00 2001
From c53d1e0bdb9a48fa1b902d85848b1bdd252d1606 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Sat, 11 Jan 2025 18:04:37 +0100
Subject: [PATCH] shared/bus-util: move string set append/get funcs to

View File

@ -1,4 +1,4 @@
From 6c703c11291a8f1c0c62af04c35935ad6037cddb Mon Sep 17 00:00:00 2001
From 14c41b05308e6b8911be1d9703fd5aab7b6ee902 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Mon, 13 Jan 2025 16:35:13 +0100
Subject: [PATCH] shared/serialize: make input params const

View File

@ -1,4 +1,4 @@
From c393a7b5fbfbcc960511924bdfefd3d141a99ad6 Mon Sep 17 00:00:00 2001
From d59a5e3674de4e7973c10cf3122a75259022ee01 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Mon, 13 Jan 2025 16:35:58 +0100
Subject: [PATCH] shared/serialize: introduce serialize_id128()

View File

@ -1,4 +1,4 @@
From 206224bde0227fb23fc56c925e6d311194fadf4a Mon Sep 17 00:00:00 2001
From 76809cbbc63d43836f16d4d9ba9ccce9582122ee Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Sat, 11 Jan 2025 16:26:55 +0100
Subject: [PATCH] bus-util: do not reset the count returned by

View File

@ -1,4 +1,4 @@
From 96cc1035bde1f461481a46015c9b062db63010fe Mon Sep 17 00:00:00 2001
From 5486bfede7481152ce3b22ed4286791d53fea3b4 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Mon, 13 Jan 2025 17:06:21 +0100
Subject: [PATCH] core/manager: use FOREACH_ARRAY at one more place

View File

@ -1,4 +1,4 @@
From 4fd1473b44d8897fac1e2616405e06b7f074714f Mon Sep 17 00:00:00 2001
From 494158868273df13f4bace55a555683b579e2506 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Sat, 11 Jan 2025 18:38:49 +0100
Subject: [PATCH] core/manager: drop duplicate bus track deserialization

View File

@ -1,4 +1,4 @@
From 93666217ba14052dc4d5995b9a48d7ca72a55f28 Mon Sep 17 00:00:00 2001
From d3c951a20af778bdc065c94ee1d1540730b51e53 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Mon, 13 Jan 2025 16:42:34 +0100
Subject: [PATCH] bus-util: introduce bus_get_instance_id()

View File

@ -1,4 +1,4 @@
From 7763837ee1183b271e7fe26e1fd9bc761c3ee05c Mon Sep 17 00:00:00 2001
From 42933b1d439e7197e9fc6bc66a945932105c1a91 Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Mon, 13 Jan 2025 17:06:35 +0100
Subject: [PATCH] core: serialize API bus id and validate before deserializing

View File

@ -1,4 +1,4 @@
From 8b7655851a1ef704c07a6714aa2b9c5a314be168 Mon Sep 17 00:00:00 2001
From 18246c12768c55d28281a15dd26cbc777ef1789f Mon Sep 17 00:00:00 2001
From: Mike Yuan <me@yhndnzj.com>
Date: Mon, 13 Jan 2025 17:30:51 +0100
Subject: [PATCH] core/manager: restore bus track deserialization cleanup in

View File

@ -1,4 +1,4 @@
From 4286bf4290f32ca491785189354a62f95f81cdd6 Mon Sep 17 00:00:00 2001
From 02bdc612e1c1d9a484c758384ad6375c1ede5e9f Mon Sep 17 00:00:00 2001
From: Jan Macku <jamacku@redhat.com>
Date: Wed, 15 Jan 2025 15:06:46 +0100
Subject: [PATCH] shared/bus-util: add missing `set.h` include

View File

@ -1,4 +1,4 @@
From 811b8b6b794a306ce1aba8126df5f9fb004c45e0 Mon Sep 17 00:00:00 2001
From 511e1fad5fdac4b078fca5e2347ed5bac582e4b9 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Sat, 11 Jan 2025 05:27:44 +0900
Subject: [PATCH] udevadm-test: add missing oom check
@ -11,7 +11,7 @@ Resolves: RHEL-75774
1 file changed, 4 insertions(+)
diff --git a/src/udev/udevadm-test.c b/src/udev/udevadm-test.c
index 748bcaf364..34bc80ff4b 100644
index 574745c42c..fcd8b231cf 100644
--- a/src/udev/udevadm-test.c
+++ b/src/udev/udevadm-test.c
@@ -129,6 +129,10 @@ int test_main(int argc, char *argv[], void *userdata) {

Some files were not shown because too many files have changed in this diff Show More