mirror of
https://github.com/systemd/systemd
synced 2025-11-21 01:34:44 +01:00
Compare commits
12 Commits
fd99d9d1cb
...
a35780d5d0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a35780d5d0 | ||
|
|
bdcfd54b1a | ||
|
|
c6ebb98e3c | ||
|
|
03936a55a1 | ||
|
|
0fe45b98dd | ||
|
|
b97fccf0ce | ||
|
|
b12cd57f6d | ||
|
|
5b45dd60cf | ||
|
|
5d946798ba | ||
|
|
2dc0e6cd73 | ||
|
|
6dfbaa8063 | ||
|
|
9dde7d9ae8 |
@ -26,8 +26,11 @@ SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
17. Update IRC topic (`/msg chanserv TOPIC #systemd Version NNN released | Online resources https://systemd.io/`)
|
||||
18. [FINAL] Create an empty -stable branch: `git push systemd origin/main:refs/heads/v${version}-stable`.
|
||||
19. [FINAL] Build and upload the documentation (on the -stable branch): `ninja -C build doc-sync`
|
||||
20. [FINAL] Change the Github Pages branch to the newly created branch (https://github.com/systemd/systemd/settings/pages) and set the 'Custom domain' to 'systemd.io'
|
||||
21. [FINAL] Update version number in `meson.version` to the devel version of the next release (e.g. from `256` to `257~devel`)
|
||||
20. [FINAL] Create a new `ci/v${version}-stable` branch for deb package builds on https://salsa.debian.org/systemd-team/systemd
|
||||
21. [FINAL] Switch `.semaphore/semaphore-runner.sh` and `mkosi/mkosi.conf.d/debian-ubuntu/mkosi.conf.d/pkgenv.conf` to the new `ci/v${version}-stable` branch on the -stable branch
|
||||
22. [FINAL] Change the Github Pages branch to the newly created branch (https://github.com/systemd/systemd/settings/pages) and set the 'Custom domain' to 'systemd.io'
|
||||
23. [FINAL] Update version number in `meson.version` to the devel version of the next release (e.g. from `256` to `257~devel`)
|
||||
24. [FINAL] Build and upload the documentation (on the main branch): `ninja -C build doc-sync`
|
||||
|
||||
# Steps to a Successful Stable Release
|
||||
|
||||
|
||||
@ -821,6 +821,20 @@ mouse:usb:v22d4p1308:name:Laview Technology Mionix Avior 7000:*
|
||||
mouse:usb:v0e8fp00a7:name:DaKai 2.4G RX:*
|
||||
MOUSE_DPI=*800@126 1600@126
|
||||
|
||||
##########################################
|
||||
# Nulea
|
||||
##########################################
|
||||
|
||||
# Note: it is possible that other devices may use the same wireless dongle,
|
||||
# as such this could require revisiting if it causes issues with other mice
|
||||
# Nulea M501 Wireless Trackball (USB Receiver)
|
||||
mouse:usb:v25a7pfa61:name:Compx 2.4G Receiver Mouse:*
|
||||
ID_INPUT_TRACKBALL=1
|
||||
|
||||
# Nulea M501 Wireless Trackball (Bluetooth)
|
||||
mouse:bluetooth:v000ep3412:name:Nulea BT5.0 Mouse:*
|
||||
ID_INPUT_TRACKBALL=1
|
||||
|
||||
##########################################
|
||||
# Oklick
|
||||
##########################################
|
||||
|
||||
@ -98,11 +98,12 @@ lrwxrwxrwx. 1 root root 19 May 10 4711.user-privileged -> foobar.user-privileg
|
||||
users in groups. Specifically, for every pair of user/group where the user shall be a member of a group a
|
||||
file named
|
||||
<literal><replaceable>username</replaceable>:<replaceable>groupname</replaceable>.membership</literal>
|
||||
should be created, i.e. the textual UNIX user name, followed by a colon, followed by the textual UNIX
|
||||
group name, suffixed by <literal>.membership</literal>. The contents of these files are currently not
|
||||
read, and the files should be created empty. The mere existence of these files is enough to affect a
|
||||
user/group membership. If a program provides user and/or group record files in the searched directories,
|
||||
it should always also create such files, both for primary and auxiliary group memberships.</para>
|
||||
must be created, i.e. the textual UNIX user name, followed by a colon, followed by the textual UNIX group
|
||||
name, suffixed by <literal>.membership</literal>. The contents of these files are currently not read,
|
||||
however it is recommended to create them containing an empty JSON object
|
||||
(i.e. <literal>{}</literal>). The mere existence of these files is enough to affect a user/group
|
||||
membership. If a program provides user and/or group record files in the searched directories, it must
|
||||
always also create such files, both for primary and auxiliary group memberships.</para>
|
||||
|
||||
<para>Note that static user/group records generally do not override conflicting records in
|
||||
<filename>/etc/passwd</filename> or <filename>/etc/group</filename> or other account databases. In fact,
|
||||
|
||||
@ -1067,7 +1067,6 @@ node /org/freedesktop/login1/user/_1000 {
|
||||
readonly b IdleHint = ...;
|
||||
readonly t IdleSinceHint = ...;
|
||||
readonly t IdleSinceHintMonotonic = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly b Linger = ...;
|
||||
};
|
||||
interface org.freedesktop.DBus.Peer { ... };
|
||||
|
||||
@ -24,7 +24,10 @@ __systemd_osc_context_escape() {
|
||||
}
|
||||
|
||||
__systemd_osc_context_common() {
|
||||
printf ";user=%s;hostname=%s;machineid=%s;bootid=%s;pid=%s" "$USER" "$HOSTNAME" "$(</etc/machine-id)" "$(</proc/sys/kernel/random/boot_id)" "$$"
|
||||
if [ -f /etc/machine-id ]; then
|
||||
printf ";machineid=%s" "$(</etc/machine-id)"
|
||||
fi
|
||||
printf ";user=%s;hostname=%s;bootid=%s;pid=%s" "$USER" "$HOSTNAME" "$(</proc/sys/kernel/random/boot_id)" "$$"
|
||||
}
|
||||
|
||||
__systemd_osc_context_precmdline() {
|
||||
|
||||
@ -1232,7 +1232,7 @@ static int settle_scope(
|
||||
return 0;
|
||||
}
|
||||
|
||||
static bool normalize_separator(char c) {
|
||||
static char normalize_separator(char c) {
|
||||
if (IN_SET(c, '-', '+', '_'))
|
||||
return '_';
|
||||
|
||||
|
||||
@ -1668,6 +1668,7 @@ static int method_set_user_linger(sd_bus_message *message, void *userdata, sd_bu
|
||||
return r;
|
||||
|
||||
if (manager_add_user_by_uid(m, uid, &u) >= 0) {
|
||||
(void) user_send_changed(u, "Linger");
|
||||
r = user_start(u);
|
||||
if (r < 0) {
|
||||
user_add_to_gc_queue(u);
|
||||
@ -1685,6 +1686,7 @@ static int method_set_user_linger(sd_bus_message *message, void *userdata, sd_bu
|
||||
/* Make sure that disabling lingering will terminate the user tracking if no sessions pin it. */
|
||||
u->gc_mode = USER_GC_BY_PIN;
|
||||
user_add_to_gc_queue(u);
|
||||
(void) user_send_changed(u, "Linger");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -367,7 +367,7 @@ static const sd_bus_vtable user_vtable[] = {
|
||||
SD_BUS_PROPERTY("IdleHint", "b", property_get_idle_hint, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||
SD_BUS_PROPERTY("IdleSinceHint", "t", property_get_idle_since_hint, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||
SD_BUS_PROPERTY("IdleSinceHintMonotonic", "t", property_get_idle_since_hint, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||
SD_BUS_PROPERTY("Linger", "b", property_get_linger, 0, 0),
|
||||
SD_BUS_PROPERTY("Linger", "b", property_get_linger, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
|
||||
|
||||
SD_BUS_METHOD("Terminate", NULL, NULL, bus_user_method_terminate, SD_BUS_VTABLE_UNPRIVILEGED),
|
||||
SD_BUS_METHOD_WITH_ARGS("Kill",
|
||||
|
||||
@ -590,7 +590,10 @@ testcase_list_users_sessions_seats() {
|
||||
assert_eq "$(loginctl list-users --no-legend | awk '$2 == "logind-test-user" { print $3 }')" no
|
||||
assert_eq "$(loginctl list-users --no-legend | awk '$2 == "logind-test-user" { print $4 }')" active
|
||||
|
||||
loginctl enable-linger logind-test-user
|
||||
systemd-run --quiet --service-type=notify --unit=test-linger-signal-wait --pty \
|
||||
-p Environment=SYSTEMD_LOG_LEVEL=debug \
|
||||
-p ExecStartPost="loginctl enable-linger logind-test-user" \
|
||||
busctl --timeout=30 wait "/org/freedesktop/login1/user/_$(id -ru logind-test-user)" org.freedesktop.DBus.Properties PropertiesChanged | grep -qF '"Linger" b true'
|
||||
assert_eq "$(loginctl list-users --no-legend | awk '$2 == "logind-test-user" { print $3 }')" yes
|
||||
|
||||
for s in $(loginctl list-sessions --no-legend | grep tty | awk '$3 == "logind-test-user" { print $1 }'); do
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user