summaryrefslogtreecommitdiffstats
path: root/src/update-done (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-09-23tmpfiles: rework empty_directory() to also use chase_symlinks()Lennart Poettering1-8/+15
2022-09-23tmpfiles: move symlink creation into its own function, and modernizeLennart Poettering1-45/+94
Let's ensure it also operates based on O_PATH, like fifo/device node/… creation.
2022-09-23tmpfiles: whenever creating an inode, immediately O_PATH open it to pin itLennart Poettering1-118/+165
let's make things a bit less racy: whenever we create an inode, immediately open it via O_PATH, compare type and continue operations with the acquired fd.
2022-09-23fs-util: add mknodat_atomic()Lennart Poettering2-6/+12
2022-09-23fs-util: make mkfifo_atomic() just a shortcut for mkfifoat_atomic()Lennart Poettering2-30/+9
2022-09-23fs-util: replace symlink_atomic() by symlinkat_atomic()Lennart Poettering3-8/+9
2022-09-23tmpfiles: allow prefixing uid/gid/mode with ":" to only apply on creationLennart Poettering1-37/+56
In some cases it is useful to specify the access mode/uid/gid for inodes we create without also enforcing them on existing inodes. Let's add a new flag for that: if the uid/gid/mode specificaitons are prefixed with ":", then they only apply to creation, not otherwise. This is specifically useful for provisioning SSH keys later. Those we'd like to provision like this: <snip> d /root :0700 root root - d /root/.ssh :0700 root root - f^ /root/.ssh/authorized_keys - - - - ssh.authorized_keys </snip> While /root/ + /root/.ssh/ being owned by root is pretty uncontroversial the access mode of /root/ and /root/.ssh/ might not be. Hence we should only have a default mode defined that is used when we create the dir, but not otherwise.
2022-09-23tmpfiles: generalize CreationMode and pass it everywhereLennart Poettering1-72/+140
For some purposes we had CreationMode which indicates whether an inode was created by us, or is pre-existing. Let's generalize that for *all* operations. This is later useful to conditionalize certain operations on that (and makes the codebase more systematic)
2022-09-23tmpfiles: rebreak some commentsLennart Poettering1-16/+10
2022-09-23networkctl: re-order entries in status commandYu Watanabe1-69/+71
Also fixes "Speed:" field, which may show empty value.
2022-09-23test-network: fix matching stringYu Watanabe1-2/+2
This partially reverts 5515f2169cb5980996044eabb5f1b35e00fd81eb. As the commit changes 'networkctl list', not 'networkctl status'.
2022-09-23networkctl: use "-" for empty LLDP entriesYu Watanabe1-5/+6
2022-09-23udev: support by-path devlink for multipath nvme block devicesYu Watanabe2-8/+54
If multipath feature is enabled, nvme block devices may belong to the "nvme-subsystem" subsystem, instead of "nvme" subsystem. (What a confusing name...) Then, the syspath is something like the following, /sys/devices/virtual/nvme-subsystem/nvme-subsys0/nvme0n1 Hence, we need to find the 'real parent' device, such as /sys/devices/pci0000:00/0000:00:1c.4/0000:3c:00.0/nvme/nvme0 Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2031810. Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2124964. Replaces #24748.
2022-09-23kbd-model-map: add a mapping for switched czech qwerty/usAdam Williamson1-0/+1
See https://bugzilla.redhat.com/show_bug.cgi?id=2121106 for the background on this. One of Fedora's QA folks ran an install and chose two keyboard layouts: Czech (qwerty) and US. Due to the sad details of how the whole logic flow for trying to decide what kbd layout best matches a given xkb config works (see details in the bug comments), we wound up deciding the best- matching kbd layout for this situation was cz-us-qwertz, which is a czech/us switched layout, but is qwertz, not qwerty. This seems like a poor outcome. Adding this line should result in us picking cz-qwerty in this case. Which may be the 'legacy' cz-qwerty.map from upstream kbd project (which is switched cz/us), or may be the auto-converted xkb layout (which obviously isn't switched). But either way, at least its primary mode is Czech qwerty, which seems like a *better* choice than a layout whose primary mode is Czech qwertz. Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-09-22man/portablectl: fix references to optionsAntonio Alvarez Feijoo1-2/+2
2022-09-22update TODOLennart Poettering1-20/+16
2022-09-22measure: clarify we actually try to calculate for all four banks by defaultLennart Poettering1-1/+1
2022-09-22measure: make --public-key= optional if "sign" is calledLennart Poettering2-11/+35
We can derive the public key from the private key, so let's do that, to make things a bit easier.
2022-09-22measure: allow pre-calculating PCR values for multiple boot phasesLennart Poettering3-29/+234
2022-09-22units: add pcrphase unitsLennart Poettering3-0/+51
2022-09-22boot: add new pcrphase tool to measure barrier strings into PCR 11Lennart Poettering7-1/+426
2022-09-22tpm2-util: add helper for determining enabled/used PCR banksLennart Poettering2-0/+81
2022-09-22tpm2-util: split out code that checks if bank has 24 pcrs into helper ↵Lennart Poettering1-25/+35
function of its own Just some refactoring, not change in behaviour.
2022-09-22tpm2-util: pick up Esys_PCR_Extend() symbol tooLennart Poettering2-0/+3
2022-09-22repart: Add --split option to generate split artifactsDaan De Meyer3-24/+268
For use with sysupdate or other systemd tooling, it's useful to be able to generate split artifacts from disk images, where each partition is written to a separate file. Let's support this with a --split switch for repart and a SplitName= configuration option. --split enables split artifacts generation, and SplitName= configures for which partition to generate split artifacts, and which suffix to add to the split artifact name. For SplitName=, we add support for some extra specifiers, more specifically the partition Type UUID and the partition UUID.
2022-09-22shared: Add GPT_PARTITION_TYPE_UUID_TO_STRING_HARDER()Daan De Meyer1-0/+3
2022-09-22shared: Add specifier_uint64()Daan De Meyer2-0/+7
2022-09-22systemctl: Fix style nitDaan De Meyer1-1/+1
2022-09-22run: make --working-directory= work for --scope tooLennart Poettering1-0/+3
This sounds like a more user-friendly alternative to #24780
2022-09-22Revert "systemd-run: refuse --working-directory option with --scope"Lennart Poettering1-4/+0
This reverts commit 780c8055378589e5a7d419789761c35d05295291.
2022-09-22shared: Add specifier_id128() and specifier_uuid()Daan De Meyer2-14/+28
2022-09-22README: drop the LGTM badgeFrantisek Sumsal1-1/+0
2022-09-22systemctl: Improve link directory separator error messageDaan De Meyer1-1/+2
Let's suggest users try ./<filename> when they encounter this error.
2022-09-22shared/format-table: use empty_string instead of hardcoding "-" for invalid ↵Zbigniew Jędrzejewski-Szmek1-7/+7
values As requested in https://github.com/systemd/systemd/pull/24708#discussion_r973607866.
2022-09-22shared/format-table: use enum instead of Table.empty_stringZbigniew Jędrzejewski-Szmek16-34/+51
All users were setting this to some static string (usually "-"), so let's simplify things by not doing strdup, but instead limiting callers to a fixed set of values. In preparation for the next commit, the function is renamed from "empty" to "replacement", because it'll be used for more than empty fields. I didn't do the whole string-table setup, because it's all used internally in one file and this way we can immediately assert if an invalid value is passed in. Some callers were (void)ing the error, others were ignoring it, and others propagating. It's nicer to remove the boilerplate.
2022-09-22systemd-run: refuse --working-directory option with --scopeJoost Heitbrink1-0/+4
systemd-run's man page says the following about the working directory of the process: "If a command is run as transient scope unit, it will be executed by systemd-run itself as parent process and will thus inherit the execution environment of the caller." This means working directory assignment does not work, as evidenced by the following invocation: ```bash $ systemd-run --scope --property=WorkingDirectory=/tmp/ bash -c 'echo $(pwd)' Unknown assignment: WorkingDirectory=/tmp/ ``` However, using the shorthand switch --working-directory silently ignores this instead of giving a similar error. ```bash systemd-run --scope --user --working-directory=/tmp/ bash -c 'echo $(pwd)' Running scope as unit: run-r19cc32e744e64285814dbf2204637a2b.scope /home/test/projects/systemd ``` This commit fixes this by explicitly generating an error instead of silently ignoring the switch: ```bash $ systemd-run --scope --working-directory=/tmp/ bash -c 'echo $(pwd)' --working-directory is not supported in --scope mode. ```
2022-09-22man: don't mention Socket files in Scope man pageJoost Heitbrink1-1/+1
2022-09-21Fix inverted rotation in the Positivo DUO #24769 (#24770)Edson Juliano Drosdeck1-0/+9
hwdb: Fix inverted rotation in the Positivo DUO Fixes: #24769
2022-09-21stub: fix conditionalization of initrd assemblyLennart Poettering1-1/+1
We forgot to conditionalize this on pcrsig/pcrpkey too. So if you have ne creds or sysext configured we actually wouldn't pass pcrsig/pcrpkey along. Let's fix that.
2022-09-21sd-gpt: adjust comments and use UINT64_C()Zbigniew Jędrzejewski-Szmek1-8/+12
2022-09-21docs/DPS: use the SD_GPT_* constants here tooZbigniew Jędrzejewski-Szmek3-151/+151
2022-09-21networkctl: use "-" for empty fieldsZbigniew Jędrzejewski-Szmek2-3/+3
This looks nicer. Some fields were already using "-" as fallback, e.g. Speed, so this makes things more consistent too.
2022-09-21hostnamectl,localectl: use "(unset)" in empty fieldsZbigniew Jędrzejewski-Szmek3-5/+5
"n/a" is more ambiguous: not available or not set or maybe we didn't check it. Let's just say directly that the field is not set.
2022-09-21repart: Add squashfs supportDaan De Meyer2-10/+78
To make this work, we have to set up everything in a temporary directory tree that we can pass to mksquashfs as a single directory. To make the most common scenario more efficient, we skip the temporary setup directory if we only get a single source tree destined to root in the squashfs filesystem.
2022-09-21shared: Add squashfs support to make_filesystem()Daan De Meyer6-8/+32
The caveat is that the caller has to provide a source directory to initialize the squashfs filesystem from.
2022-09-21kernel-install.8: fix -h/-v ordering in SYNOPSISнаб1-1/+1
2022-09-21kernel-install/90-loaderentry: fix chownнаб1-2/+2