Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

analyze: add inspect-elf verb to parse package metadata #21454

Merged
merged 2 commits into from
Dec 6, 2021

Conversation

bluca
Copy link
Member

@bluca bluca commented Nov 20, 2021

Parses and prints package metadata from executables, libraries and core files

$ systemd-analyze inspect-elf /tmp/core.fsverity.1000.f77dac5dc161402aa44e15b7dd9dcf97.58561.1637106137000000 ~/git/fsverity-utils/libfsverity.so.0
FILE         /TMP/CORE.FSVERITY.1000.F77DAC5DC161402AA44E15B7DD9DCF97.58561.1637106137000000
module name  /home/luca/git/fsverity-utils/fsverity
type         deb
name         fsverity-utils
version      1.3-1
architecture amd64
os           debian
debugInfoUrl https://debuginfod.debian.net
buildId      f70ffd61ea22aee78c33c56aeda61c63309a55e3
FILE         /HOME/LUCA/GIT/FSVERITY-UTILS/LIBFSVERITY.SO.0
type         deb
name         fsverity-utils
version      1.3-1
architecture amd64
os           debian
debugInfoUrl https://debuginfod.debian.net
buildId      bb9b8587ab7d114b0ddd762d8a1c030dee96fe2f
$ systemd-analyze inspect-elf /tmp/core.fsverity.1000.f77dac5dc161402aa44e15b7dd9dcf97.58561.1637106137000000 ~/git/fsverity-utils/libfsverity.so.0  --json=pretty
{
        "/home/luca/git/fsverity-utils/fsverity" : {
                "type" : "deb",
                "name" : "fsverity-utils",
                "version" : "1.3-1",
                "architecture" : "amd64",
                "os" : "debian",
                "debugInfoUrl" : "https://debuginfod.debian.net",
                "buildId" : "f70ffd61ea22aee78c33c56aeda61c63309a55e3"
        }
}
{
        "/home/luca/git/fsverity-utils/libfsverity.so.0" : {
                "type" : "deb",
                "name" : "fsverity-utils",
                "version" : "1.3-1",
                "architecture" : "amd64",
                "os" : "debian",
                "debugInfoUrl" : "https://debuginfod.debian.net",
                "buildId" : "bb9b8587ab7d114b0ddd762d8a1c030dee96fe2f"
        }
}

@bluca
Copy link
Member Author

bluca commented Nov 20, 2021

One issue is that libdw moves to the shared dir - should I make it a dlopen?

src/shared/meson.build Outdated Show resolved Hide resolved
@bluca
Copy link
Member Author

bluca commented Nov 21, 2021

Changed the processing to be done inside a fork. It's the first commit so it's easy to backport to v249-stable. Tomorrow I'll switch to dlopen() as well.

man/systemd-analyze.xml Outdated Show resolved Hide resolved
@poettering
Copy link
Member

Hmm, the field output is a bit different how we'd usually format this, i.e. see "coredumpctl info -1" for comparison. Also a bit confusing, i.e. it shows a field "type" that is not actually type of the ELF file, but the type of the packaging... not sure how to clean this up nicely.

Right now the format-table.h stuff is not particularly nice for outputing info about singular items, it's more focussed on output of many, and then one per line. That said, networkctl uses it anyway for outputting info about a single item.

I figure sooner or later we should add some explicit love for using format-table.h APIs to output single items, maybe called a "horizontal mode", because then the field names are not at the top, but on the left. This mode would be particularly relevant when mapping the output to JSON, because we'd have to determine the field names differently then. And we probably want to default to different output for the field names, i.e. not underline them, not uppercase them, and right-align them and suffix an implicit ":" and so on.

@poettering
Copy link
Member

So, systemd-coredump@.service is already havily sandboxed, and instantiated once for each crashing process. I am not sure why we would fork off another child off it? What am I missing?

@bluca
Copy link
Member Author

bluca commented Nov 22, 2021

Hmm, the field output is a bit different how we'd usually format this, i.e. see "coredumpctl info -1" for comparison. Also a bit confusing, i.e. it shows a field "type" that is not actually type of the ELF file, but the type of the packaging... not sure how to clean this up nicely.

type is what we defined here: https://systemd.io/COREDUMP_PACKAGE_METADATA/

So, systemd-coredump@.service is already havily sandboxed, and instantiated once for each crashing process. I am not sure why we would fork off another child off it? What am I missing?

See: #21454 (comment)
libdw appears to be crash-happy, so we should not bring down the whole coredump process if that happens, but simply skip adding the metadata/backtrace. Otherwise handling the core files aborts completely. Also you might get into loops: crash -> memory is corrupted so crash when analyzing it -> memory is corrupted so crash...

@bluca
Copy link
Member Author

bluca commented Nov 22, 2021

Right now the format-table.h stuff is not particularly nice for outputing info about singular items, it's more focussed on output of many, and then one per line. That said, networkctl uses it anyway for outputting info about a single item.

I figure sooner or later we should add some explicit love for using format-table.h APIs to output single items, maybe called a "horizontal mode", because then the field names are not at the top, but on the left. This mode would be particularly relevant when mapping the output to JSON, because we'd have to determine the field names differently then. And we probably want to default to different output for the field names, i.e. not underline them, not uppercase them, and right-align them and suffix an implicit ":" and so on.

That sounds good, but can it be done separately? There's quite some changes here already, and the table bit is just a tiny part of it

@bluca bluca changed the title analyze: add inspect-elf verb to parse package metadata analyze: add inspect-elf verb to parse package metadata, switch coredump ELF parsing to fork+dlopen Nov 22, 2021
@bluca
Copy link
Member Author

bluca commented Nov 22, 2021

Also moved to dlopen, so that we don't add a new mandatory dependency to libsystemd-shared.so

@bluca
Copy link
Member Author

bluca commented Nov 22, 2021

Nov 22 17:52:54 H systemd-analyze[262]: Parsing "/usr/bin/env" as ELF object failed: Operation not supported

@mrc0mmand would it be possible to get libdw1 and libelf1 installed in the CentOS CI builds? Thanks!

@mrc0mmand
Copy link
Member

Nov 22 17:52:54 H systemd-analyze[262]: Parsing "/usr/bin/env" as ELF object failed: Operation not supported

@mrc0mmand would it be possible to get libdw1 and libelf1 installed in the CentOS CI builds? Thanks!

That shouldn't be (hopefully) an issue, but by updating the image the CI will start failing because of #21441 (so far the issue kept the image updates gated). Anyway, I'll look into that the first thing tomorrow.

mrc0mmand added a commit to mrc0mmand/systemd-centos-ci that referenced this pull request Nov 23, 2021
mrc0mmand added a commit to systemd/systemd-centos-ci that referenced this pull request Nov 23, 2021
@mrc0mmand
Copy link
Member

The necessary deps should be in the prod Arch image (which also means #21441 will start showing quite often).

The shellcheck issue should be fixed after #21472 is merged.

@bluca
Copy link
Member Author

bluca commented Nov 23, 2021

The necessary deps should be in the prod Arch image (which also means #21441 will start showing quite often).

The shellcheck issue should be fixed after #21472 is merged.

Thank you! If moving the image forward causes issues, I've added a skip if we build without libdw in the test, so it can wait if needed

@poettering
Copy link
Member

Hmm, the field output is a bit different how we'd usually format this, i.e. see "coredumpctl info -1" for comparison. Also a bit confusing, i.e. it shows a field "type" that is not actually type of the ELF file, but the type of the packaging... not sure how to clean this up nicely.

type is what we defined here: https://systemd.io/COREDUMP_PACKAGE_METADATA/

Yeah, I understood that part. But it's confusing to show this without saying this is about packaging to the user. Because the user might expect details about ELF itself given the command is called "inspect-elf" (and I think we should some super basic stuff even, such as architecture and whether the user is looking at coredump or dynamic binary, or static binary or dynamic lib, if that's easy to get).

@poettering
Copy link
Member

I must say I'd probably display this something like this:

Name:         …
Size:         …
Type:         coredump
Architecture: x86-64
Build ID:     …
Packaging:    { … }

And then just show the raw (but prettified) JSON as field value. And I'd just output that with printf()...

@bluca
Copy link
Member Author

bluca commented Nov 23, 2021

I can change from a table to printf, no problem - but I'd keep this restricted to the packaging metadata (which include architecture). For the rest, there's already file, not sure we need the additional compllications (it would be complicated)?

@bluca
Copy link
Member Author

bluca commented Nov 30, 2021

Could you maybe drop the last commit from the series? I think we'll get bogged down in output details, and this functionality is somewhat separate from the other parts. I would prefer to get the rest merged and start testing it. We can figure out the user interface separately.

Ok, I've applied fixes for your comments, and also opened #21580 with the first part (without the new elf parse function and analyze command). We can keep this one for the command, since all the discussion on the output format is already here. PTAL!

@bluca bluca added please-review and removed reviewed/needs-rework 🔨 PR has been reviewed and needs another round of reworks labels Nov 30, 2021
@bluca
Copy link
Member Author

bluca commented Nov 30, 2021

Could you maybe drop the last commit from the series? I think we'll get bogged down in output details, and this functionality is somewhat separate from the other parts. I would prefer to get the rest merged and start testing it. We can figure out the user interface separately.

Ok, I've applied fixes for your comments, and also opened #21580 with the first part (without the new elf parse function and analyze command). We can keep this one for the command, since all the discussion on the output format is already here. PTAL!

The other PR is the same commits as this one, minus the last 4, so you can look at the diff-of-diff here if that makes it easier.

@bluca bluca changed the title analyze: add inspect-elf verb to parse package metadata, switch coredump ELF parsing to fork+dlopen analyze: add inspect-elf verb to parse package metadata Nov 30, 2021
Parse the packaging metadata from an ELF object, if any, and
print a pretty table following the spec defined at:
https://systemd.io/COREDUMP_PACKAGE_METADATA/
Parses and prints package metadata from executables, libraries and core files

$ systemd-analyze inspect-elf /tmp/core ../fsverity-utils/fsverityb /bin/bash --json=off --no-pager
__________________________
           path: /tmp/core
        elfType: coredump
elfArchitecture: AMD x86-64

    module name: /tmp/crash
           type: deb
           name: hello
        version: 1.0
   architecture: amd64
             os: debian
      osVersion: 11
        buildId: b33541096a09c29a0ba4ec5c69364a2711b7c269

    module name: /usr/lib/x86_64-linux-gnu/libc-2.31.so
           type: deb
           name: hello
        version: 1.0
   architecture: amd64
             os: debian
      osVersion: 11
        buildId: 54eef5ce96cf37cb175b0d93186836ca1caf470c

    module name: /usr/lib/x86_64-linux-gnu/ld-2.31.so
           type: deb
           name: hello
        version: 1.0
   architecture: amd64
             os: debian
      osVersion: 11
        buildId: 32438eb3b034da54caf58c7a65446639f7cfe274
__________________________________________________________________
           path: /home/luca/git/systemd/../fsverity-utils/fsverity
        elfType: executable
elfArchitecture: AMD x86-64

           type: deb
           name: fsverity-utils
        version: 1.3-1
   architecture: amd64
             os: debian
   debugInfoUrl: https://debuginfod.debian.net
        buildId: 05b899e6ee0d3653e20458719b202ed3ca8d566f
_________________________
           path: /bin/bash
        elfType: executable
elfArchitecture: AMD x86-64

        buildId: 4fef260f60e257d2dbd4126bf8add83837aea190
$
$ systemd-analyze inspect-elf /tmp/core ../fsverity-utils/fsverity /bin/bash /tmp/core.test-condition.1000.f9b9a84a9fd1482c9702d6afa6f6934b.37640.1637083078000000 --json=pretty --no-pager
{
	"elfType" : "coredump",
	"elfArchitecture" : "AMD x86-64",
	"/home/bluca/git/fsverity-utils/fsverity" : {
		"type" : "deb",
		"name" : "fsverity-utils",
		"version" : "1.3-1",
		"buildId" : "7c895ecd2a271f93e96268f479fdc3c64a2ec4ee"
	},
	"/home/bluca/git/fsverity-utils/libfsverity.so.0" : {
		"type" : "deb",
		"name" : "fsverity-utils",
		"version" : "1.3-1",
		"buildId" : "b5e428254abf14237b0ae70ed85fffbb98a78f88"
	}
}
{
	"elfType" : "executable",
	"elfArchitecture" : "AMD x86-64",
	"/home/bluca/git/systemd/../fsverity-utils/fsverity" : {
		"type" : "deb",
		"name" : "fsverity-utils",
		"version" : "1.3-1",
		"buildId" : "7c895ecd2a271f93e96268f479fdc3c64a2ec4ee"
	}
}
{
	"elfType" : "executable",
	"elfArchitecture" : "AMD x86-64",
	"/bin/bash" : {
		"buildId" : "3313b4cb119dcce16927a9b6cc61dcd97dfc4d59"
	}
}
{
	"elfType" : "coredump",
	"elfArchitecture" : "AMD x86-64"
}
@keszybz
Copy link
Member

keszybz commented Dec 6, 2021

OK, let's merge this. It would be nice to sandbox this, but it's not any worse than calling gdb on the binary or many of the other commands. that we do. Maybe @evverx can add a fuzzer, so we'll see if it is easy to trigger some undefined behaviour ;)

@keszybz keszybz merged commit ec1574c into systemd:main Dec 6, 2021
@bluca bluca deleted the inspect_elf branch December 6, 2021 11:47
@evverx
Copy link
Member

evverx commented Dec 6, 2021

Maybe @evverx can add a fuzzer

I added a fuzzer in google/oss-fuzz#6944 and reported a couple of bugs it found. Apart from that the elfutils project started to fix bugs found by ASan and some patches that should make it easier to run the tests under ASan are on the way: https://sourceware.org/pipermail/elfutils-devel/2021q4/004429.html. As far as I can tell, it should be integrated into their buildbot eventually as well. Also I set up a cron job sending elfutils to Coverity Scan daily so if anyone is interested in helping to fix those bugs, the report can be found at https://scan.coverity.com/projects/evverx-elfutils.

@evverx
Copy link
Member

evverx commented Dec 6, 2021

It's disturbing that changes related to package metadata seem to require rolling out a json parser somewhere in elfutils though :-) Frankly this whole feature doesn't look like it's worth it in my opinion

@keszybz
Copy link
Member

keszybz commented Dec 6, 2021

@evverx did you have a fuzzer for this code in systemd? I know I said that it should be fuzzed elsewhere, but now I think it would make sense to also add a fuzzer here.

@evverx
Copy link
Member

evverx commented Dec 6, 2021

I think I can try to resurrect the fuzz target I used to exercise systemd codepaths on one of my VMs but due to dlopen it can't be integrated into the CI directly unfortunately. Plus for it to work elfutils should be built along with systemd as well so even if there weren't dlopen if would be fragile at best.

@evverx
Copy link
Member

evverx commented Jan 14, 2022

@keszybz I tried to resurrect the systemd fuzzer the other day but unfortunately it doesn't compile anymore because apparently something has changed in src/shared/elf-utils.c.

Anyway, at this point that part of the elfutils project is tested much better than systemd: it's run under ASan/UBsan and Valgrind on various architectures on a regular basis, it's fuzzed on OSS-Fuzz on both 32-bit and 64-bit platforms and so on. All issues were reported and fixed (basically all commits starting with libdwfl: ... at https://sourceware.org/git/?p=elfutils.git;a=shortlog fix issues found by the fuzzer). I think once the next version is released fork will be essentially pointless).

I was also wrong about elfutils not being fuzzed ever. According to https://www.cvedetails.com/product/27413/Elfutils-Project-Elfutils.html?vendor_id=13228 every other part of elfutils was actually fuzzed one way or another.

evverx added a commit to evverx/systemd that referenced this pull request Jan 14, 2022
This is the fuzzer from
systemd#21454 (comment).
I finally got it to compile.

The fuzzer isn't supposed to be merged because it's kind of kludgy
due to that part of the code not being test-friendly in general.
But it should be enough to start fuzzing parse_elf. Happy fuzzing!

To get it to work either elfutils has to be compiled with libFuzzer
and passed via LD_LIBRARY_PATH='path-to-libelf;path-to-libdw' or
a corpus of some kind should be prepared to keep it going.
@evverx evverx mentioned this pull request Jan 14, 2022
@evverx
Copy link
Member

evverx commented Jan 14, 2022

The fuzzer is in #22121.

kyllikki pushed a commit to pexip/os-systemd that referenced this pull request Nov 10, 2023
systemd (252.17-1~deb12u1) bookworm; urgency=medium
.
  * New upstream version 252.17. Fixes minor security issue in arm64
    and riscv64 systemd-boot (EFI) with device tree blobs loading:
    GHSA-6m6p-rjcq-334c
.
systemd (252.16-1~deb12u1) bookworm; urgency=medium
.
  * New upstream version 252.16
  * Refresh patches for v252.16
.
systemd (252.14-1~deb12u1) bookworm; urgency=medium
.
  * New upstream version 252.14
  * Refresh patches for 252.14
.
systemd (252.12-1~deb12u1) bookworm; urgency=medium
.
  * New upstream version 252.12
  * Refresh patches for v252.12
.
systemd (252.11-1~deb12u1) bookworm; urgency=medium
.
  * Upload to bookworm.
.
systemd (252.11-1) unstable; urgency=medium
.
  * New upstream version 252.11
  * Refresh patches
.
systemd (252.6-1) unstable; urgency=medium
.
  * Update timedated autopkgtest. We no longer support /etc/timezone, as
    /etc/localtime is always available (cherry picked from commit
    6ef7bb0ce0f89e732a8b95624af059e52c3712b5)
  * Stop supporting /etc/timezone and just rely on /etc/localtime
  * systemd-boot: update on package upgrade, if installed
  * Override Lintian warning in systemd-coredump
  * d/watch: restrict to v252.x for bookworm
  * New upstream version 252.6
  * Refresh patches
  * systemd-boot: enable on install (Closes: #1031118)
.
systemd (252.5-2) unstable; urgency=medium
.
  * Fix boot-and-services autopkgtest.
.
systemd (252.5-1) unstable; urgency=medium
.
  [ Nick Rosbrook ]
  * debian/tests: remove systemd-fsckd autopkgtest. This test never runs
    in Debian autopkgtest because of missing machine isolation
    requirements, and it nevers runs in Ubuntu because:  SKIP: root file
    system is being checked by initramfs already Since the test is not
    providing any good feedback, and generally has not been maintained,
    let's just remove it.
.
  [ Luca Boccassi ]
  * New upstream version 252.5
  * Drop patches merged in v252.5
  * Refresh patches
  * Set default status format to 'combined': show both unit name and
    description in logs/boot messages
.
systemd (252.4-2) unstable; urgency=medium
.
  [ Michael Biebl ]
  * Refresh patches
  * Tweak description of systemd and systemd-sysv package.
    Remove redundancy and de-emphasize sysvinit.
  * autopkgtest: add psmsic to upstream suite.
    Needed for the killall binary.
    See systemd/systemd#24569
  * autopkgtest: add xkb-data, locales and locales-all to upstream suite.
    Use locales-all so all necessary locales can be installed into the test
    image without having to generate them on-the-fly.
    See systemd/systemd#23709
  * autopkgtest: prefer knot-dnssecutils over knot-dnsutils for upstream
    suite.
    The kzonecheck utility required by TEST-75-RESOLVED was split out from
    knot-dnsutils into knot-dnssecutils so update the test dependencies
    accordingly. Keep knot-dnsutils as alternative dependency to make
    backports easier.
  * Cherry-pick upstream fixes for TEST-74-AUX-UTILS
  * Cherry-pick upstream fix for TEST-73-LOCALE
  * Skip firstboot --prompt-keymap check in TEST-74-AUX-UTILS.
    This test requires compatible keymaps from kbd which are not available
    in Debian.
.
  [ Luca Boccassi ]
  * autopkgtest: add netlabel-tools to networkd-test.py suite.
    The netlabelctl tool is needed to test the NetLabel integration.
    See systemd/systemd#23888
  * autopkgtest: add bsdutils to upstream suite.
    The logger utility is now used in TEST-04-JOURNAL.
    See systemd/systemd#23086
  * autopkgtest: add knot, knot-dnsutils, bind9-dnsutils, bind9-host to
    upstream suite.
    Needed by TEST-75-RESOLVED.
    See systemd/systemd#23104
  * autopkgtest: add jq to upstream suite.
    Needed by TEST-58-REPART.
    See systemd/systemd#24572
  * autopkgtest: add mtools to upstream suite.
    Needed by TEST-58-REPART.
    See systemd/systemd#24944
  * autopkgtest: add erofs-utils to upstream suite.
    Needed by TEST-58-REPART.
    See systemd/systemd#25686
.
systemd (252.4-1) unstable; urgency=medium
.
  * Enable p11kit. Backport patch to dlopen-ify p11kit support and enable
    it. (Closes: #1023635)
  * New upstream version 252.4. (Closes: #1026831 and fixes CVE-2022-4415)
  * Refresh patches
  * Bump Standards-Version to 4.6.2, no changes
.
systemd (252.3-2) unstable; urgency=medium
.
  * Skip flaky test_resolved_domain_restricted_dns in networkd-test.py.
    This test is part of DnsmasqClientTest and does not work reliably under
    LXC/debci, so skip it for the time being. (Closes: #1025908)
.
systemd (252.3-1) unstable; urgency=medium
.
  * New upstream version 252.3
  * Rebase patches
.
systemd (252.2-2) unstable; urgency=medium
.
  * Keep policykit-1 as alternative dependency to polkitd for systemd.
    This will make backports easier.
  * Update remaining policykit-1 (test) dependencies and prefer polkitd.
    Keep the policykit-1 dependency as alternative for easier backports.
    (Closes: #1025591)
.
systemd (252.2-1) unstable; urgency=medium
.
  [ Helmut Grohne ]
  * Explicitly B-D on libcrypt-dev (Closes: #1024646)
.
  [ Nick Rosbrook ]
  * Add handling for /etc/default/locale to firstboot. The TEST-74-AUX-
    UTILS upstream test revealed that firstboot does not currently handle
    Debian's /etc/default/locale.
.
  [ Luca Boccassi ]
  * Build depend on dh-package-notes, sequence was removed. Only the
    makefile is in use now, no files are generated at build time as
    --package-metadata from the linkers is used now
  * New upstream version 252.2
  * Refresh patches
.
systemd (252.1-1) unstable; urgency=medium
.
  * d/watch: switch back to stable repository
  * New upstream version 252.1 (Closes: #1023607 #1023515)
  * Drop patches merged upstream
  * Refresh patches
  * Suggest polkitd instead of policykit-1 (deprecated)
.
systemd (252-3) unstable; urgency=medium
.
  * Backport patches to fix tmpfiles error and missing /dev/serial/by-
    id/usb-* (Closes: #1023311)
  * Drop :native suffix from python3-pyparsing build dependency (Closes:
    #1023442)
  * Enable support for libqrencode. dlopen() feature so no additional cost.
    Allows printing out recovery keys in QR format.
.
systemd (252-2) unstable; urgency=medium
.
  [ Jochen Sprickerhof ]
  * Let dh_installsysusers fix the /var/log/journal permissions.
    dh_installsysusers adds a systemd-sysusers in #DEBHELPER#. Otherwise
    it fails with: /usr/lib/tmpfiles.d/systemd.conf:28: Failed to resolve
    group 'systemd-journal'. Regression of fa0aade329. (Closes: #1023248)
  * Move restarting units after #DEBHELPER#. This makes sure that systemd-
    sysusers was executed as well as systemd-tmpfiles to setup proper
    permissions for /var/log/journal before systemd-journald is being
    restarted.
.
systemd (252-1) unstable; urgency=medium
.
  * Use systemd-sysusers to setup systemd users and groups
  * New upstream version 252
  * Drop patches merged upstream
  * libsystemd0: set symbols version to 252
  * Drop unused lintian override
.
systemd (252~rc3-2) unstable; urgency=medium
.
  * Upload to unstable.
.
systemd (252~rc3-1) experimental; urgency=medium
.
  * New upstream version 252~rc3
  * Refresh patches
  * Backport patches to fix tests without machine-id. Drop out-of-tree
    patch and backport upstream fixes.
.
systemd (252~rc2-1) experimental; urgency=medium
.
  [ Jan Kiszka ]
  * Enable systemd-boot for riscv64. Tested against U-Boot 2022.10 as UEFI
    provider on the RZ/Five. Signed-off-by: Jan Kiszka
    <jan.kiszka@siemens.com>
.
  [ Helmut Grohne ]
  * Conditionalize installation of cryptsetup plugins in stage1 using dh-
    exec (Closes: #1021821)
.
  [ Michael Biebl ]
  * Install sysusers.d and tmpfiles.d man pages in standalone packages
    (Closes: #1021933)
.
  [ Luca Boccassi ]
  * d/watch: switch to non-stable repo
  * New upstream version 252~rc2
  * Drop patches merged upstream
  * Refresh patches
  * Update symbols file
  * Update Lintian overrides
  * autopkgtest: update expected output of localectl
.
systemd (251.6-1) unstable; urgency=medium
.
  * New upstream version 251.6
  * Rebase patches
  * Use dh_installsystemd to enable machines.target in systemd-container
.
systemd (251.5-3) unstable; urgency=medium
.
  * Update symbol versions for the v251 release
  * ata_id: fix getting Response Code from SCSI Sense Data (Closes: #1021579)
  * logind: do not emit beep in wall messages (Closes: #1019510)
  * logind: remember our idle state and use it to detect idle level
    transitions (Closes: #963135)
  * logind: fix getting property OnExternalPower via D-Bus (Closes: #1021644)
.
systemd (251.5-2) unstable; urgency=medium
.
  [ Luca Boccassi ]
  * Build and install libcryptsetup token plugins.
    The interfaces are now mature and enabled in Debian/Ubuntu in
    libcryptsetup, so enable and ship the plugins
.
  [ Michael Biebl ]
  * salsa-ci: drop no longer needed workaround for lintian false positives
  * udev: fix regression in udev-builtin path_id when processing NVME devices
    (Closes: #1021547)
.
  [ наб ]
  * systemd-sysv.postinst: which -> command -v
.
systemd (251.5-1) unstable; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 251.5
  * Install NEWS.Debian file into all binary packages.
    While it increases the disk footprint a little, it ensures that NEWS
    entries are reliably shown by apt-listchanges.
  * Handle removal of /var/log/README.
    Remove /var/log/README symlink when the systemd package is purged.
    This symlink is created via tmpfiles and documents that /var/log no
    longer contains the traditional syslog text files. (Closes: #877414)
  * Rebase patches
.
  [ наб ]
  * debian/extra/kernel/postinst.d/systemd-boot: prefix with zz-
    Since we explicitly (though this is hidden by indirection through
    85-initrd.install) depend on /boot/initrd.img-$1 existing or not existing,
    hard-order ourselves at the end. The zz- prefix matches grub.
  * debian/extra/kernel-install.d/85-initrd.install: install default initrd
    with versioned basename.
    This fixes #1020396 in a superior way by using
    $KERNEL_INSTALL_STAGING_AREA, available since systemd v251.
    By just copying the file we both simplify our code, but defer to
    90-loaderentry to correctly permission it, and simply never generate an
    unversioned initrd in the first place! (Closes: #1020396)
  * debian/extra/kernel-install.d/85-initrd.install: explicitly ignore unknown
    verbs
  * debian/extra/kernel/postrm.d/systemd-boot: prefix with zz-
    Doesn't actually matter, but the kernel handbook says we must and we
    already renamed postinst. (Closes: #1014581)
.
  [ Luca Boccassi ]
  * Enable firstboot, disabled by default on Debian.
    Currently the first-boot conditions are not met by any Debian
    image (/etc/machine-id with content uninitialized, so we can
    just enable the build and ship it in the main package.
    This lets image builders (eg: cloud images) tinker with it.
    https://www.freedesktop.org/software/systemd/man/machine-id.html#First%20Boot%20Semantics
    (Closes: #844528)
.
systemd (251.4-3) unstable; urgency=medium
.
  * resolv.conf: take backup as a fallback in case resolved/resolv.conf
    is not available, and restore on uninstall, which is necessary for
    piuparts checks.
.
systemd (251.4-2) unstable; urgency=medium
.
  [ Johannes Schauer Marin Rodrigues ]
  * use systemd-sysusers instead of adduser. This allows dropping the
    dependency on adduser (reducing the dependency set) and in turn allows
    for DPKG_ROOT support of systemd.
  * debian/systemd.postinst: add --root argument to systemctl and
    systemd-* calls for DPKG_ROOT support
.
  [ Luca Boccassi ]
  * resolved: use DPKG_ROOT and make postinst shellcheck-happy
  * resolved: switch from .links to postinst/rm
  * Update Lintian overrides for new incompatible syntax
.
systemd (251.4-1) unstable; urgency=medium
.
  * New upstream version 251.4
  * Rebase patches
  * Rebuild against fixed dh-nss to avoid duplicates in /etc/nsswitch.conf
    (Closes: #1017096)
.
systemd (251.3-2) unstable; urgency=medium
.
  [ Luca Boccassi ]
  * libnss-systemd: also let userdbd manage passwords.
    As of upstream commit:
    systemd/systemd@f43a19ecd6e3415e
    in v249 userdbd can also synthesize shadow/gshadow records,
    so add the shadow config to nsswitch.conf on installation.
    (Closes: #1004326)
  * homed: make PAM rules higher priority than unix users.
    Make sure homed is tried first when logging in. This is required
    after adding nss-systemd support for 'shadow' in /etc/nsswitch.conf.
    See Arch bug: https://bugs.archlinux.org/task/72967
.
  [ Gioele Barabucci ]
  * d/control: Use dh_installnss
  * d/libnss-myhostname.nss: Install NSS service `myhostname` via dh_installnss
  * d/libnss-mymaschines.nss: Install NSS service `mymaschines` via dh_installnss
  * d/libnss-resolve.nss: Install NSS service `resolve` via dh_installnss
  * d/libnss-systemd.nss: Install NSS service `systemd` via dh_installnss
.
systemd (251.3-2~exp2) experimental; urgency=medium
.
  * Note in systemd.NEWS that resolved has moved to a new package
  * systemd-resolved: move conffile from systemd. Copied from systemd-
    timesyncd
.
systemd (251.3-2~exp1) experimental; urgency=medium
.
  * Split systemd-resolved into its own package which takes over
    /etc/resolv.conf (Closes: #939904)
.
systemd (251.3-1) unstable; urgency=medium
.
  * New upstream version 251.3
  * Rebase patches
.
systemd (251.2-8) unstable; urgency=medium
.
  * autopkgtest: install openssl for upstream test.
    Install openssl explicitly and do not rely on other packages, like
    swtpm-libs, to pull this dependency for us.
    Used by TEST-50-DISSECT, which otherwise just silently skips the test.
  * Add versioned dependency on init-system-helpers to systemd-homed.
    Ensure that we have a version of deb-systemd-helper which properly
    handles loops in Also= dependencies. (Closes: #1014115)
  * Demote shlibs dependencies of libsystemd0 from Pre-Depends to Depends.
    As systemctl, which is quasi-essential, no longer links against
    libsystemd0, we do not need those strict requirements anymore.
  * Work around some more dh_installman issues
.
systemd (251.2-7) unstable; urgency=medium
.
  [ Luca Boccassi ]
  * sd-boot: add kernel hooks scripts
.
  [ Andrea Pappacoda ]
  * sd-boot: add initramfs hook (Closes: #826045)
.
  [ Michael Biebl ]
  * sd-boot: exit early in initramfs and kernel hook scripts if package is
    removed but not purged
  * Do not fail with older binutils.
    Test if the linker supports --no-warn-execstack and --no-warn-rwx-segments
    before using those flags. (Closes: #1013967)
.
systemd (251.2-6) unstable; urgency=medium
.
  [ Helmut Grohne ]
  * Mark systemd-userdbd and systemd-homed as !stage1 (Closes: #1012738)
.
  [ Luca Boccassi ]
  * Remove unused Lintian overrides
  * Stop overriding the build directory name.
    We don't do a separate udeb build anymore, so there's no need
    to specify a separate build directory.
  * Use execute_before_/after_ instead of override_
  * Add nodoc profile support.
    Co-authored-by: Michael Biebl <biebl@debian.org>
.
  [ Michael Biebl ]
  * Do not fail EFI build with newer binutils (Closes: #1013482)
  * shared/microhttp-util: silence gcc warning
  * Clarify NEWS message about systemd-boot split (Closes: #1013340)
.
systemd (251.2-5) unstable; urgency=medium
.
  * Tweak description of systemd-homed package
  * Move shlibs dependencies of libsystemd-shared from Pre-Depends to Depends
    (Closes: #1012637)
  * Add versioned Breaks against sicherboot for the systemd-boot split
    (Closes: #1012625)
  * Drop old Conflicts against hal from udev.
    The hal package has been gone for several release cycles, so this
    Conflicts should not be necessary anymore.
.
systemd (251.2-4) unstable; urgency=medium
.
  * Use try-restart in systemd-binfmt dpkg trigger
  * Fix bashism in kernel-install
  * Upload to unstable
.
systemd (251.2-3) experimental; urgency=medium
.
  [ Luca Boccassi ]
  * Add systemd-userdbd package. This can be used to synthetize dynamic
    user/groups, and can be useful by itself. It will also be used by
    homed.
  * Add systemd-homed package (Closes: #976960)
  * Add systemd-boot-efi multiarch package. Allows EFI binaries for
    different architectures to be co-installed. Useful when the EFI has a
    different architecture, or to manipulate images. The userspace tooling
    doesn't need to match the EFI binaries. Also allows one to reduce the
    number of packages and dependencies needed when i386 is not a full
    architecture, but a subset for libraries and for EFI support.
.
  [ Michael Biebl ]
  * Move homectl and userdbctl to /usr/bin
  * Install libsystemd-shared into rootpkglibdir
  * Split out libsystemd-shared into its own package. Since libsystem-
    shared is an internal implementation detail, do not generate a shlibs
    file for it. This means dh_shlibdeps needs to be told explicitly where
    it can find libsystemd-shared. Mark this new package as Multi-Arch:
    same. (Closes: #990547)
  * Split out systemd-boot into its own package
  * Add NEWS entry for the systemd-boot package split
.
systemd (251.2-2) unstable; urgency=medium
.
  * sha256: fix compilation on efi-ia32
.
systemd (251.2-1) unstable; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 251.2
    - logind: do not print wall messages to local pseudoterminals
      (Closes: #1012155)
  * Rebase patches
  * Fix parsing of command line options in fsckd (Closes: #1009032)
  * Do not require a valid version when parsing sd-boot loader entries
    (Closes: #993292)
  * Add dpkg file trigger for systemd-binfmt to update binfmt registrations
  * Use a single NEWS file shipped in the main systemd package
.
  [ Luca Boccassi ]
  * autopkgtest: add cryptsetup-initramfs for upstream suite.
    Needed for systemd/systemd#23517
.
systemd (251.1-1) unstable; urgency=medium
.
  [ Luca Boccassi ]
  * Switch from gnutls to openssl. Upstream is slowly phasing out gnutls.
    Start switching to openssl. Drops support for '--trust' in the
    journal-gatewayd and journal-remote programs.
  * New upstream version 251.1
  * Add systemd-journal-remote.NEWS to inform about dropping --trust
.
  [ Michael Biebl ]
  * Enable pager Hyperlink ANSI sequence support. This requires less ≥
    563. Add a versioned Breaks accordingly.
  * Drop unnecessary version constraints / dependencies
  * Update liblz4-dev Build-Depends as per meson.build
.
systemd (251-2) unstable; urgency=medium
.
  * Salsa CI: suppress lintian false positive on dbgsym.
  * Upload to unstable.
.
systemd (251-1) experimental; urgency=medium
.
  * New upstream version 251. For a full list of changes, see:
    https://github.com/systemd/systemd/releases/tag/v251
  * Refresh patches
  * Revert manual removal of ndisc test case, merged upstream
  * Bump Standards-Version to 4.6.1, no changes
.
systemd (251~rc3-2) experimental; urgency=medium
.
  * Backport removal of ndisc test case, breaks build on armhf/armel.
.
systemd (251~rc3-1) experimental; urgency=medium
.
  * autopkgtest: add allow-stderr to boot-and-services. Sometimes we see
    some ignored logs, don't fail the test run if that happens
  * autopkgtest: disable networkd in rebooting tests. It seems that on
    Semaphore CI, running in Bullseye images, having both Network-Manager
    and systemd-networkd enabled causes 'systemctl start network-
    online.target' to get stuck, and fail the run. Disable networkd in
    those tests. See: systemd/systemd#22991
  * autopkgtest: mark networkd-test.py as breaks-testbed. It will modify
    the network configuration, which will often make the network stop
    working. Mark it as breaks-testbed so that a new runner is started.
  * autopkgtest: ignore rng-tools-debian failure in boot-and-services. It
    seems sometimes it fails, which has happened on jammy-amd64:
    https://bugs.debian.org/969568
  * New upstream version 251~rc3
  * Drop sd-device-always-translate-sysname-to-sysfs-filename.patch,
    merged upstream
  * Rebase patches
  * Update lintian-overrides for false positives
.
systemd (251~rc2-2) experimental; urgency=medium
.
  * sd-device: always translate sysname to sysfs filename
.
systemd (251~rc2-1) experimental; urgency=medium
.
  * New upstream version 251~rc2
  * Rebase patches
  * Update symbols file for libsystemd0
.
systemd (251~rc1-3) experimental; urgency=medium
.
  [ Luca Boccassi ]
  * autopkgtest: install swtpm and tpm2-tools for upstream suite.
    Required by systemd/systemd#22563
.
  [ Michael Biebl ]
  * Do not ship /usr/lib/tmpfiles.d/systemd-resolve.conf in systemd.
    It potentially creates a broken symlink if systemd-resolved is not
    enabled. For now the symlink to stub-resolv.conf needs to be created
    manually. (Closes: #1007018)
  * hwdb: fix parsing options (Closes: #1008989)
.
systemd (251~rc1-2) experimental; urgency=medium
.
  [ Michael Biebl ]
  * Revert "Ignore libsystemd-core in dh_shlibdeps"
    This reverts commit c1d5ad5ac989376aa8100dea9ad9d7af0f0408d9.
    We need the shlibs dependencies of libsystemd-shared and
    libsystemd-core.
  * Adjust library search path for dh_shlibdeps.
    libsystemd-core uses libsystemd-shared but doesn't have RUNPATH or
    RPATH set. So tell dh_shlibdeps where it can find the library.
.
  [ Luca Boccassi ]
  * autopkgtest: update unit-config test for new relative symlinking.
    Required by systemd/systemd#22649
  * autopkgtest: install libnss packages for unit-tests suite.
    Required to enable nss tests:
    systemd/systemd#21975
  * autopkgtest: install libnss packages for upstream suite.
    Required to enable nss tests:
    systemd/systemd#21975
  * autopkgtest: install python3-pexpect and screen for upstream suite.
    Required for new test:
    systemd/systemd#21838
.
systemd (251~rc1-1) experimental; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 251~rc1
  * Rebase patches
  * Update symbols file for libsystemd0
  * Install shell completions for oomctl in systemd-oomd
.
  [ Luca Boccassi ]
  * Ignore libsystemd-core in dh_makeshlibs
  * Ignore libsystemd-core in dh_shlibdeps
  * Add libsystemd-core to shlibs.local.in
.
systemd (250.4-1) unstable; urgency=medium
.
  [ Dimitri John Ledkov ]
  * udev-udeb: ship modprobe.d snippet to force scsi_mod.scan=sync in d-i.
.
  [ Luca Boccassi ]
  * Build with dh_package_notes
  * New upstream version 250.4
  * Drop patches merged upstream
  * Remove unneeded ${shlibs:Depends}
  * autopkgtest: add libdw-dev to unit-tests job.
  * Rebase patches on top of v250.4
.
systemd (250.3-2) unstable; urgency=medium
.
  [ Yu Watanabe ]
  * upstream-ci: logind test: use drop-in config
  * upstream-ci: logind test: also show logs of systemd-suspend.service
  * upstream-ci: logind test: make sure the fake lid switch processed by
    udevd. Also, wait for other uevents, which possibly triggered by the
    lid switch, being processed.
  * upstream-ci: logind test: fix drop-in config.
.
  [ Luca Boccassi ]
  * Add myself to Uploaders
  * systemd-tests: ignore hardening-no-relro too. Test binaries, we don't
    care about hardening flags
  * Backport patches to fix build reproducibility. EFI binaries have the
    path embedded which breaks reproducibility, backport patches from
    upstream to fix it.
.
  [ Michael Biebl ]
  * Add Recommends: dbus-user-session to libpam-systemd. For a fully
    functioning systemd --user instance we want dbus-user-session
    installed.
  * Report status of dbus-user-session in systemd reportbug template. Most
    users will likely file bugs for systemd --user related issues against
    the main systemd package and not libpam-systemd.
.
systemd (250.3-1) unstable; urgency=medium
.
  [ Luca Boccassi ]
  * Update d/copyright listing for debian/*
    Fixes Lintian warning: update-debian-copyright
  * d/copyright: remove unused GPL-2 stanza
  * d/watch: bump to version 4
  * d/control: drop redundant Section/Priority fields.
    Fixes Lintian warning: installable-field-mirrors-source
  * d/control: extend descriptions of libudev and libsystemd
  * systemd-oomd: add dependency on adduser.
    Needed by postinst script.
  * systemd-oomd: fix description-synopsis-starts-with-article Lintian warning
  * systemd-standalone-*: copy manpages too
  * Lintian: ignore very-long-line-length-in-source-file.
    It's not a useful check, and it flags test data and such.
  * Lintian: ignore source-contains-data-from-ieee-data-oui-db.
    Data formats are not compatible, this is for hwdb.
  * Lintian: ignore systemd-service-file-missing-install-key.
    If we don't add [Install], it's because we don't want it and the units are
    events-driven or enabled statically.
  * Lintian: ignore spare-manual-page.
    Lintian is not really good at associating manpages to package contents,
    so just ignore this, as we have and will keep adding docs related
    to unit types and so on.
  * Lintian: ignore package-supports-alternative-init-but-no-init.d-script.
    Well, duh!
  * Lintian: ignore package-contains-documentation-outside-usr-share-doc.
    False positives on test data and a web page.
  * Lintian: ignore current set of package-contains-empty-directory.
    These are shipped to provide a skeleton installation.
  * Update Lintian override for
    systemd-service-file-refers-to-unusual-wantedby-target
  * Lintian: ignore systemd: shared-library-lacks-prerequisites false positive
    on EFI binary
  * Lintian: ignore maintainer-script-calls-systemctl in more packages
  * Lintian: ignore executable-not-elf-or-script false positives for EFI
    binaries
  * Lintian: ignore spellcheck false positives
  * Lintian: ignore hardening-no-fortify-functions for test binaries
  * Ignore blhc false positives.
    blhc hits false positives due to EFI PE-COFF binaries,
    c++ fuzzing binaries and meson flags listings, ignore them.
  * Add d/gitlab-ci.yml.
    Disable unit tests, as some are failing due to the build environment.
.
  [ Michael Biebl ]
  * New upstream version 250.3
    - network: wireguard: do not add routes to AllowedIPs= by default.
      (Closes: #1003955)
  * Add Recommends: libdw1 to systemd-coredump.
    Starting with v250, systemd-coredump will use libdw/libelf via dlopen()
    rather than directly linking against it. It is not a hard dependency but
    we want to have it installed by default.
    While hard-coding the library name is not ideal, we currently don't have
    better means to derive this information automatically. (Closes: #1003879)
.
systemd (250.2-3) unstable; urgency=medium
.
  [ Luca Boccassi ]
  * Build with and suggest fido2 and tpm libraries.
    These are used via dlopen only if available by some tools like
    systemd-cryptsetup, systemd-cryptenroll and systemd-repart,
    with graceful fallbacks if they are not found.
    Build-depend on them so that the features get compiled in
    (apart from stage1 builds), and add appropriate Suggests.
    (Closes: #991129, #1003383)
  * Disable libcryptsetup-plugins.
    They are new, and might not even be supported by libcryptsetup yet
  * Build-depend on libssl-dev.
    Required to use libfido2-dev until #1003699 is fixed
.
  [ Michael Biebl ]
  * Don't stop systemd-oomd.socket during upgrades.
    This works around an issue in systemd which doesn't process multiple
    units that are passed to systemctl as a single transaction with the
    correct ordering. (Closes: #1003641)
.
systemd (250.2-2) unstable; urgency=medium
.
  * Ship systemd-oomd.socket in correct systemd-oomd package
  * Don't install dbus-org.freedesktop.oom1.service symlink (Closes: #1003580)
.
systemd (250.2-1) unstable; urgency=medium
.
  * New upstream version 250.2
    - shared/rm-rf: loop over nested directories instead of recursing.
      Fixes uncontrolled recursion in systemd-tmpfiles.
      (CVE-2021-3997, Closes: #1003467)
  * test: explicitly configure oomd stuff via dropins
  * autopkgtest: add systemd-oomd dependency to upstream test.
    We want systemd-oomd to be tested via the upstream provided
    TEST-55-OOMD.
  * Rebase patches
  * Upload to unstable
.
systemd (250.1-2) experimental; urgency=medium
.
  [ Lukas Märdian ]
  * d/rules: Enable build of systemd-oomd
  * d/control: Ship oomd in a systemd-oomd package.
    Deploying the default configuration as used in Fedora.
  * Start systemd-oomd.service after package installation
.
  [ Michael Biebl ]
  * oomd: move oomctl to bindir
  * Enable systemd-repart and ship it in the main systemd package.
    Add fdisk as test dependency, needed by test-repart which calls sfdisk.
  * test-repart: append /sbin and /usr/sbin to $PATH= so sfdisk can be found
.
systemd (250.1-1) experimental; urgency=medium
.
  * New upstream version 250.1
  * Rebase patches
.
systemd (250-2) experimental; urgency=medium
.
  * Drop separate udeb build.
    The only real benefit from a separate build apparently is that udev does
    not get a dependency on libacl and libselinux. But we have udebs for
    those dependencies anyway.
    Dropping the separate build basically cuts the build times in half and
    simplifies debian/rules quite a bit.
    It also brings udev as used in d-i closer to what is actually used in
    the installed system, which is a good thing.
  * Cherry-pick various fixes targeted for v250-stable
.
systemd (250-1) experimental; urgency=medium
.
  * New upstream version 250
  * Rebase patches
  * Update symbol versions for the v250 release
.
systemd (250~rc3-1) experimental; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 250~rc3
  * Switch debian-branch to experimental
  * Bump meson Build-Depends to (>= 0.53.2)
  * Rebase patches
  * Update symbols file for libsystemd0
  * Update removal of upstream provided license files
  * Use -Durlify=false instead of shipping an upstream revert patch
  * Explicitly disable OpenSSL support.
    We don't want to pick up an OpenSSL dependency in a tainted build
    environment and pull a second crypto stack into systemd's dependencies.
  * autopkgtest: install dbus-user-session for upstream test.
    Required by TEST-43-PRIVATEUSER-UNPRIV and TEST-20-MAINPIDGAMES.
  * Revert "Temporarily disable LTO"
  * Small updates to debian/copyright
  * Remove dbus introspection files
.
  [ Luca Boccassi ]
  * autopkgtest: install libdw and libelf for upstream test.
    Pulled in via dlopen since systemd/systemd#21454
.
systemd (249.7-1) unstable; urgency=medium
.
  * New upstream version 249.7
  * Rebase patches
.
systemd (249.6-3) unstable; urgency=medium
.
  * scope: count successful cgroup additions when delegating via D-Bus
    (Closes: #999745)
.
systemd (249.6-2) unstable; urgency=medium
.
  * Consider dbus-broker in systemd-logind.service Condition check
    (Closes: #999569)
  * Temporarily disable LTO.
    This is a test to see if it fixes the failure to build reproducibly on
    arm*.
  * sysusers: split up systemd.conf (Closes: #990349)
.
systemd (249.6-1) unstable; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 249.6
  * Rebase patches
  * test: use kbd-mode-map we ship in one more test case
  * Bump Standards-Version to 4.6.0
  * Drop obsolete C/R upstart from systemd-sysv
  * Drop obsolete dpkg (>= 1.19.3) | systemd-sysv dependency from udev.
    It was added to ensure we have a dpkg with --notify-await which is now
    satisfied by a dpkg from oldstable.
  * Make the C/R against systemd versioned in
    systemd-standalone-{sysusers,tmpfiles}
    Those were added to facilitate an upgrade from bullseye. The version
    makes it more explicit.
  * Drop obsolete migration code for RAMTMP, TPMTIME and UTC
.
  [ Luca Boccassi ]
  * Depend on default-dbus-system-bus | dbus-system-bus.
    Allows users to install only a single system bus implementation.
    Prefer the default (dbus-daemon).
.
systemd (249.5-2) unstable; urgency=medium
.
  [ Helmut Grohne ]
  * Fix FTCBFS: Annotate python3-jinja2 dependency with :native
    (Closes: #996501)
.
  [ Michael Biebl ]
  * hwdb: Allow console users access to media* nodes (Closes: #996749)
.
systemd (249.5-1) unstable; urgency=medium
.
  * New upstream version 249.5
  * Rebase patches
  * Update debian/copyright
  * Clean up lintian overrides
.
systemd (249.4-2) unstable; urgency=medium
.
  * Upload to unstable
  * Remove unused initialize_coredump() function
  * Fix #993738 by pulling the patches from upstream PR#20603
.
systemd (249.4-1) experimental; urgency=medium
.
  * New upstream version 249.4
  * Rebase patches
.
systemd (249.3-4) experimental; urgency=medium
.
  * Add Conflicts/Replaces: systemd to systemd-standalone-{sysusers,tmpfiles}
    This allows upgrades from older systemd versions which do not have
    Provides: systemd-{sysusers,tmpfiles}. (Closes: #992376)
.
systemd (249.3-3) experimental; urgency=medium
.
  * Use C/R/P for systemd-sysusers and systemd-tmpfiles.
    It's an interface/facility that can only be provided by a single package
    at a time.
.
systemd (249.3-2) experimental; urgency=medium
.
  * Provide standalone binaries for sysusers and tmpfiles (Closes: #946456)
  * Fix test dependencies of upstream test.
    After splitting out the standalone binaries for sysusers and tmpfiles
    into separate packages (which conflict with the main systemd package),
    we can no longer use the '@' notation in the upstream test.
    This reverts commit 5eeeb1b562a1a9802df105091bda4741c263336d and also
    adds systemd-tests and systemd-timesyncd to the upstream test
    dependencies.
.
systemd (249.3-1) experimental; urgency=medium
.
  * New upstream version 249.3
  * Rebase patches
  * Remove obsolete systemd-resolve compat symlink
.
systemd (249.2-2) experimental; urgency=medium
.
  * Remove obsolete upgrade code from maintainer scripts
  * Clean up old versions from maintscript files
  * Drop obsolete systemd Breaks/Replaces
  * Drop obsolete python-dbusmock Breaks
  * Turn versioned systemd-shim Breaks into unversioned Conflicts.
    There never was a fixed systemd-shim version before it was removed from
    the archive.
  * Drop patches which are no longer needed after bullseye
  * Stop setting up device symlinks for CD-RW/DVD drives.
    Those udev rules were a Debian specific workaround that were mainly
    added for compat with older software which wasn't able to automatically
    discover those types of devices. Those rules didn't provide
    stable/predictable names though, so remove them. (Closes: #991639)
  * autopkgtest: add systemd-timesyncd dependency to timedated test.
    We need systemd-timesyncd in the timedated test, not just an arbitrary
    provider of time-daemon.
  * autopkgtest: clean up dependencies of boot-smoke test.
    A lot of the dependencies are not needed but were originally added to
    avoid a testbed reset and make it possible to reuse the testbed of the
    upstream test. This turned out to be a maintenance problem and the
    dependencies were not updated accordingly. Instead of trying to keep the
    two tests in sync, trim down the boot-smoke dependencies to its bare
    minimum.
.
systemd (249.2-1) experimental; urgency=medium
.
  * New upstream version 249.2
  * Rebase patches
.
systemd (249.1-1) experimental; urgency=medium
.
  * New upstream version 249.1
    - basic/unit-name: do not use strdupa() on a path (CVE-2021-33910)
.
systemd (249-1) experimental; urgency=medium
.
  * New upstream version 249
  * Rebase patches
  * Update symbol versions for the v249 release
  * Fix removal of systemd-hwdb-update.service.
    As we don't support factory-reset, we don't need this service.
    In Debian, the hwdb binary database is updated via a dpkg file trigger.
.
systemd (249~rc3-1) experimental; urgency=medium
.
  * New upstream version 249~rc3
  * Rebase patches
.
systemd (249~rc2-1) experimental; urgency=medium
.
  * New upstream version 249~rc2
  * Rebase patches
.
systemd (249~rc1-1) experimental; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 249~rc1
  * Rebase patches
  * Replace m4 Build-Depends with python3-jinja2
  * Update symbols file for libsystemd0
  * test: do not run 'meson configure' if NO_BUILD is set
  * test: drop the mawk-incompatible expression
  * Add gawk <!nocheck> to Build-Depends.
    It is used in tools/check-directives.sh which is run during "meson test".
  * autopkgtest: add udev dependency to unit-tests.
    Without a properly set up hwdb the test-sd-hwdb test is skipped.
.
  [ Luca Boccassi ]
  * autopkgtest: add dependency on dosfstools for upstream test.
    Needed to create EFI partition (vfat)
.
systemd (248.3-1) experimental; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 248.3
  * Rebase patches
.
  [ Dan Streetman ]
  * d/t: replace 'root-unittests' shell script with simple call to upstream script.
    The upstream test runner script is much better, as it only prints failing test
    output, and gives a summary of the test results at the end.
.
systemd (248.2-1) experimental; urgency=medium
.
  * New upstream version 248.2
.
systemd (248.1-1) experimental; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 248.1
  * Rebase patches
  * d/e/checkout-upstream: switch to main branch
  * Update make-fbdev-blacklist to not blacklist hyperv_fb
.
  [ Luca Boccassi ]
  * systemd.install: catch all files installed in usr/bin and bin.
    At the moment, individual binaries are mentioned specifically in the
    install file.  When new binaries are added, manual work is needed to get
    them packaged, which affects the upstream autopkgtest-based CI.
    Change systemd.install to instead pick up everything from usr/bin and bin.
  * upstream suite: add build-dep on vim-tiny.
    Required by some of the images in the upstream test suite
.
  [ Zbigniew Jędrzejewski-Szmek ]
  * Let "upstream" test use upstream test runner
.
  [ Dan Streetman ]
  * Slight adjustments to previous patch for deny/black-list naming.
    Also add in two vars used by the integration runner script
  * d/t/upstream: use NO_BUILD=1.
    Also don't bother sed-modifying test-functions file, as the NO_BUILD
    changes remove the need for that.
  * d/t/control: install all binary packages for upstream test.
    With the change to just call the upstream script to run the integration
    tests, the packages to test need to be installed so the test-function
    script can list out the files each package contains, and copy those files
    into each nspawn and/or qemu testbed. Without all packages installed,
    some tests fail; specifically TEST-30 currently requires systemd-timesyncd
    which was not previously installed for the 'upstream' test suite.
    This changes the control file to just install all binary packages, using
    the '@' notation.
  * d/t/boot-smoke: update test to avoid false negatives
.
  [ Frantisek Sumsal ]
  * upstream-ci: fix test_no_failed() check.
    Without `--plain` `systemctl` prints a circle (●) in the first column
    for each failed service, which with the current code interferes with
    attempted journal listing for each such service.
.
systemd (248-1) experimental; urgency=medium
.
  [ Balint Reczey ]
  * New upstream version 248
    - add support for answering DNSSEC questions on the stub resolver
      (Closes: #988132)
    - turn off DNSSEC validation when timesyncd resolves hostnames
      (Closes: #898530)
    - add networkd/nspawn nftables backend
      (Closes: #934584)
    - support ipv6 for masquerade and dnat in nspawn and networkd
      (Closes: #934676)
  * Refresh patches
  * debian/rules: Enable new systemd-sysext tool
  * debian/rules: Build support for flushing of the nscd caches
  * debian/rules: Build translations for debs but not for udebs
  * debian/rules: Build without TPM2 support.
    This is a new feature and needs further review.
  * Ship systemd-cryptenroll in systemd package
  * Update symbols file for libsystemd0
  * debian/tests/control: Upstream test depends on attr
  * debian/udev.postinst: Create the sgx system group.
    Intel SGX enclave device nodes are now owned by this group.
  * debian/rules: Don't ship README files in (/usr)/lib/*.d.
    README files are typically shipped in /usr/share/doc.
  * Revert "pager: stop disabling urlification under a pager"
    Debian and Ubuntu do not yet have a less version that supports
    urlification. This requires less 563 or later.
.
systemd (247.9-4) unstable; urgency=medium
.
  * Revert "tests/udev-test.pl: add multiple device test"
    Follow-up to make sure the udev autopkgtest passes successfully again
    after reverting the multipath symlink race fix.
  * test: Fix flakiness in TEST-10-ISSUE-2467
  * autopktest: Fix timedated test dependencies.
    Add an explicit systemd-timesyncd dependency as it is required by the
    timedated test.
  * autopkgtest: Merge configuration of logind test with timedated and related
    tests.
    They share the same restrictions and merging them avoids a bit of
    duplication.
  * Revert "test: disable DnsmasqClientTest.test_resolved_etc_hosts in
    networkd-test.py"
    Let's see if this test is still flaky on debci.
  * networkd-test: fix resolved_domain_restricted_dns.
    Cherry-pick upstream commit which hopefully fixes the flakiness in
    DnsmasqClientTest.test_resolved_domain_restricted_dns.
.
systemd (247.9-3) unstable; urgency=medium
.
  * Revert multipath symlink race fix.
    Revert upstream commits which caused a regression in udev resulting in
    long delays when processing partitions with the same label.
    (Closes: #993738)
.
systemd (247.9-2) unstable; urgency=medium
.
  * Demote systemd-timesyncd from Depends to Recommends.
    This avoids a dependency cycle between systemd and systemd-timesyncd and
    thus makes dist upgrades more predictable and robust.
    It also allows minimal, systemd based containers where no NTP client is
    strictly necessary.
    To ensure that systemd-timesyncd is installed in a default installation
    created by d-i, bump its priority to standard. (Closes: #986651, #993947)
.
systemd (247.9-1) unstable; urgency=medium
.
  [ Michael Biebl ]
  * New upstream version 247.9
  * Rebase patches
  * Fix removal of systemd-hwdb-update.service.
    As we don't support factory-reset, we don't need this service.
    In Debian, the hwdb binary database is updated via a dpkg file trigger.
.
  [ Balint Reczey ]
  * debian/rules: Don't ship README files in (/usr)/lib/*.d.
    README files are typically shipped in /usr/share/doc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

None yet

7 participants