Skip to content
Snippets Groups Projects
Commit 5262065f authored by Ritesh Raj Sarraf's avatar Ritesh Raj Sarraf Committed by Walter Lozano
Browse files

Merge remote-tracking branch 'origin/apertis/v2024dev2' into...

Merge remote-tracking branch 'origin/apertis/v2024dev2' into proposed-updates/debian/bookworm/9af2cfc5

* origin/apertis/v2024dev2: (57 commits)
  Release systemd version 247.3-7+apertis2
  Enable tests on MR
  Refresh the automatically detected licensing information
  Release systemd version 247.3-7+apertis1
  Move debian/patches/meson*.patch to debian/patches/apertis/
  Release systemd version 247.3-6+apertis4
  meson: do not fail if rsync is not installed with meson 0.57.2
  meson.build: change operator combining bools from + to and
  Fix issue with journald and /var at shutdown
  Remove '-execdir +' usage for compatibility with rust-findutils
  Fix compilation on kernel 5.14+
  Refresh the automatically detected licensing information
  Release systemd version 247.3-6+apertis1
  Release systemd version 247.3-1apertis5
  Fix access to run/systemd/notify for systemd-logind in apparmor rule
  Release systemd version 247.3-1apertis4
  Fix the path to bootable binaries in efi entry
  Refresh patch for UEFI entries generator
  85-initrd: fix the args number
  Fix kernel-install call from update-initramfs
  ...
parents d4a6fbce 9af2cfc5
No related branches found
No related tags found
1 merge request!87Update from debian/bookworm for apertis/v2024dev2
Showing
with 1530 additions and 5 deletions
boot*
target
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files: *
Copyright: 1989, 1991, Free Software Foundation, Inc.
License: GPL-2 or LGPL-2.1
Files: .ycm_extra_conf.py
Copyright: interest in the
License: Unlicense
Files: debian/*
Copyright: 2010-2013 Tollef Fog Heen <tfheen@debian.org>
2013-2018 Michael Biebl <biebl@debian.org>
2013 Michael Stapelberg <stapelberg@debian.org>
License: LGPL-2.1+
Files: debian/extra/systemd.py
debian/extra/udev.py
Copyright: 2009, 2014-2016, Canonical Ltd.
License: LGPL-2.1+
Files: debian/extra/tmpfiles.d/*
Copyright: 2010-2013 Tollef Fog Heen <tfheen@debian.org>
2013-2018 Michael Biebl <biebl@debian.org>
2013 Michael Stapelberg <stapelberg@debian.org>
License: GPL-2+
Files: debian/lib.systemd.systemd-logind
Copyright: 2015-2017, Collabora Ltd.
License: MPL-2.0
Files: debian/tests/boot-and-services
debian/tests/build-login
debian/tests/storage
debian/tests/systemd-fsckd
debian/tests/udev
debian/tests/unit-config
Copyright: 2009, 2014-2016, Canonical Ltd.
License: LGPL-2.1+
Files: hwdb.d/*
Copyright: no-info-found
License: Expat
Files: man/systemd-fsckd.service.xml
Copyright: 2015, Canonical
License: LGPL-2.1+
Files: modprobe.d/*
Copyright: no-info-found
License: LGPL-2.1+
Files: network/*
Copyright: no-info-found
License: LGPL-2.1+
Files: presets/*
Copyright: no-info-found
License: LGPL-2.1+
Files: rules.d/*
Copyright: no-info-found
License: LGPL-2.1+
Files: shell-completion/*
Copyright: no-info-found
License: LGPL-2.1+
Files: shell-completion/bash/coredumpctl
shell-completion/bash/hostnamectl
shell-completion/bash/journalctl
shell-completion/bash/localectl
shell-completion/bash/loginctl
shell-completion/bash/systemd-analyze
shell-completion/bash/timedatectl
shell-completion/bash/udevadm
Copyright: 2010, Ran Benita
License: LGPL-2.1+
Files: src/*
Copyright: no-info-found
License: LGPL-2.1+
Files: src/basic/*
Copyright: no-info-found
License: public-domain
Files: src/basic/linux/*
Copyright: no-info-found
License: GPL-2+
Files: src/basic/linux/btrfs.h
Copyright: 2007, Oracle.
License: GPL-2
Files: src/basic/linux/if.h
Copyright: UCB 1982-1988
License: GPL-2+
Files: src/basic/linux/if_arp.h
Copyright: UCB 1986-1988
License: GPL-2+
Files: src/basic/linux/if_macsec.h
Copyright: 2015, Sabrina Dubroca <sd@queasysnail.net>
License: GPL-2+
Files: src/basic/linux/if_tun.h
Copyright: 1999, 2000, Maxim Krasnyansky <max_mk@yahoo.com>
License: GPL-2+
Files: src/basic/sparse-endian.h
Copyright: 2012, Josh Triplett <josh@joshtriplett.org>
License: Expat
Files: src/basic/utf8.c
Copyright: 2000, Red Hat, Inc.
1999, Tom Tromey
License: LGPL-2+
Files: src/boot/efi/sha256.c
Copyright: blurb: / 2007-2019, Free Software Foundation, Inc.
License: LGPL-2.1+
Files: src/fsckd/*
Copyright: 2015, Canonical
License: LGPL-2.1+
Files: src/journal/*
Copyright: 2012, B. Poettering
License: LGPL-2.1+
Files: src/journal/journald.conf
Copyright: no-info-found
License: LGPL-2.1+
Files: src/journal/lookup3.c
Copyright: no-info-found
License: public-domain
Files: src/network/networkd.conf
src/network/org.freedesktop.network1.conf
src/network/org.freedesktop.network1.policy
src/network/org.freedesktop.network1.service
Copyright: no-info-found
License: LGPL-2.1+
Files: src/shared/*
Copyright: 1995-2004, Miquel van Smoorenburg
License: LGPL-2+
Files: src/shared/linux/*
Copyright: 2008, Red Hat, Inc.
2008, Ian Kent <raven@themaw.net>
License: GPL-2
Files: src/shared/linux/bpf.h
Copyright: 2011-2014, PLUMgrid, http:plumgrid.com
License: GPL-2
Files: src/shared/linux/dm-ioctl.h
Copyright: 2004-2009, Red Hat, Inc.
2001-2003, Sistina Software (UK) Limited.
License: LGPL
Files: src/shared/linux/nl80211.h
Copyright: 2018, 2019, Intel Corporation
2015-2017, Intel Deutschland GmbH
2008, Michael Wu <flamingice@sourmilk.net>
2008, Michael Buesch <m@bues.ch>
2008, Luis Carlos Cobo <luisca@cozybit.com>
2008, Jouni Malinen <jouni.malinen@atheros.com>
2008, Colin McCabe <colin@cozybit.com>
2008, 2009, Luis R. Rodriguez <lrodriguez@atheros.com>
2006-2010, Johannes Berg <johannes@sipsolutions.net>
License: ISC
Files: src/systemd/sd-dhcp-client.h
src/systemd/sd-dhcp-lease.h
src/systemd/sd-dhcp-option.h
src/systemd/sd-dhcp-server.h
src/systemd/sd-dhcp6-client.h
src/systemd/sd-dhcp6-lease.h
src/systemd/sd-ndisc.h
src/systemd/sd-radv.h
Copyright: 2013-2015, 2017, Intel Corporation.
License: LGPL-2.1+
Files: src/systemd/sd-ipv4acd.h
src/systemd/sd-ipv4ll.h
Copyright: 2014, Axis Communications AB.
License: LGPL-2.1+
Files: src/test/test-systemd-tmpfiles.py
Copyright: no-info-found
License: LGPL-2.1+
Files: src/udev/mtd_probe/*
Copyright: 2010, - Maxim Levitsky
License: GPL-2+
Files: src/udev/scsi_id/scsi.h
Copyright: IBM Corp. 2003
License: GPL-2
Files: src/udev/udev-ctrl.c
Copyright: no-info-found
License: LGPL-2.1+
Files: src/udev/udevadm-control.c
Copyright: no-info-found
License: GPL-2+
Files: src/udev/v4l_id/*
Copyright: 2009, Filippo Argiolas <filippo.argiolas@gmail.com>
License: GPL-2+
Files: src/vconsole/90-vconsole.rules.in
Copyright: no-info-found
License: LGPL-2.1+
Files: sysctl.d/*
Copyright: no-info-found
License: LGPL-2.1+
Files: sysusers.d/*
Copyright: no-info-found
License: LGPL-2.1+
Files: test/fuzz/*
Copyright: no-info-found
License: LGPL-2.1+
Files: test/test-path/*
Copyright: no-info-found
License: LGPL-2.1+
Files: test/units/*
Copyright: no-info-found
License: LGPL-2.1+
Files: tmpfiles.d/*
Copyright: no-info-found
License: LGPL-2.1+
Files: tools/*
Copyright: 2014, The Chromium OS Authors.
License: BSD-3-clause
Files: tools/catalog-report.py
Copyright: no-info-found
License: Expat
Files: units/*
Copyright: no-info-found
License: LGPL-2.1+
Files: .mkosi/* catalog/* catalog/systemd.bg.catalog.in catalog/systemd.fr.catalog.in catalog/systemd.hu.catalog.in catalog/systemd.it.catalog.in catalog/systemd.pt_BR.catalog.in catalog/systemd.zh_CN.catalog.in catalog/systemd.zh_TW.catalog.in docs/* docs/fonts/* hwdb.d/pci.ids man/* man/environment.d.xml man/journal-remote.conf.xml man/networkd.conf.xml man/standard-conf.xml man/systemd-machine-id-commit.service.xml man/tmpfiles.d.xml man/udev.xml shell-completion/bash/systemctl.in src/analyze/* src/basic/gunicode.c src/basic/gunicode.h src/basic/gunicode.c src/basic/gunicode.h src/basic/raw-clone.h src/basic/smack-util.c src/basic/smack-util.h src/basic/smack-util.c src/basic/smack-util.h src/boot/* src/boot/efi/crc32.c src/boot/efi/shim.c src/boot/efi/shim.h src/boot/efi/shim.c src/boot/efi/shim.h src/core/dbus-swap.c src/core/dbus-swap.h src/core/swap.h src/core/dbus-swap.c src/core/dbus-swap.h src/core/swap.h src/core/dbus-swap.c src/core/dbus-swap.h src/core/swap.h src/core/ima-setup.c src/core/ima-setup.h src/core/ima-setup.c src/core/ima-setup.h src/core/killall.c src/core/load-fragment.c src/core/namespace.h src/core/smack-setup.c src/core/smack-setup.h src/core/smack-setup.c src/core/smack-setup.h src/core/triggers.systemd.in src/fsck/* src/import/import-pubring.gpg src/libsystemd-network/* src/libsystemd-network/arp-util.c src/libsystemd-network/arp-util.h src/libsystemd-network/sd-ipv4acd.c src/libsystemd-network/sd-ipv4ll.c src/libsystemd-network/test-ipv4ll.c src/libsystemd-network/arp-util.c src/libsystemd-network/arp-util.h src/libsystemd-network/sd-ipv4acd.c src/libsystemd-network/sd-ipv4ll.c src/libsystemd-network/test-ipv4ll.c src/libsystemd-network/arp-util.c src/libsystemd-network/arp-util.h src/libsystemd-network/sd-ipv4acd.c src/libsystemd-network/sd-ipv4ll.c src/libsystemd-network/test-ipv4ll.c src/libsystemd-network/arp-util.c src/libsystemd-network/arp-util.h src/libsystemd-network/sd-ipv4acd.c src/libsystemd-network/sd-ipv4ll.c src/libsystemd-network/test-ipv4ll.c src/libsystemd-network/arp-util.c src/libsystemd-network/arp-util.h src/libsystemd-network/sd-ipv4acd.c src/libsystemd-network/sd-ipv4ll.c src/libsystemd-network/test-ipv4ll.c src/libsystemd/sd-hwdb/* src/libudev/libudev-queue.c src/network/* src/network/netdev/* src/network/netdev/wireguard.c src/network/networkd-brvlan.c src/network/networkd-brvlan.h src/network/networkd-brvlan.c src/network/networkd-brvlan.h src/network/networkd-conf.c src/network/networkd-conf.h src/network/networkd-conf.c src/network/networkd-conf.h src/network/networkd-nexthop.c src/network/networkd-nexthop.h src/network/networkd-sriov.c src/network/networkd-sriov.h src/network/networkd-nexthop.c src/network/networkd-nexthop.h src/network/networkd-sriov.c src/network/networkd-sriov.h src/network/networkd-nexthop.c src/network/networkd-nexthop.h src/network/networkd-sriov.c src/network/networkd-sriov.h src/network/networkd-nexthop.c src/network/networkd-nexthop.h src/network/networkd-sriov.c src/network/networkd-sriov.h src/network/tc/* src/pstore/pstore.c src/shared/sleep-config.c src/shutdown/* src/sleep/sleep.c src/sulogin-shell/* src/test/* src/test/test-conf-files.c src/test/test-list.c src/test/test-sched-prio.c src/test/test-udev.c src/tty-ask-password-agent/* src/udev/* src/udev/ata_id/* src/vconsole/* test/* test/fuzz/fuzz-dhcp6-client/* test/sd-script.py test/test-exec-deserialization.py test/test-resolve/* test/test-resolve/kyhwana.org.pkts test/test-resolve/org~20200417.pkts test/test-resolve/root.pkts test/test-resolve/vdwaa.nl~20200417.pkts test/test-resolve/zbyszek@fedoraproject.org.pkts test/udev-test.pl tools/chromiumos/gen_autosuspend_rules.py
Copyright: 2008-2015 Kay Sievers <kay@vrfy.org>
2010-2015 Lennart Poettering
2012-2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
2013-2015 Tom Gundersen <teg@jklm.no>
2013-2015 Daniel Mack
2010-2015 Harald Hoyer
2013-2015 David Herrmann
2013, 2014 Thomas H.P. Andersen
2013, 2014 Daniel Buch
2014 Susant Sahani
2009-2015 Intel Corporation
2000, 2005 Red Hat, Inc.
2009 Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2010 ProFUSION embedded systems
2010 Maarten Lankhorst
1995-2004 Miquel van Smoorenburg
1999 Tom Tromey
2011 Michal Schmidt
2012 B. Poettering
2012 Holger Hans Peter Freyther
2012 Dan Walsh
2012 Roberto Sassu
2013 David Strauss
2013 Marius Vollmer
2013 Jan Janssen
2013 Simon Peeters
License: LGPL-2.1+
Files: src/basic/linux/can/* src/basic/linux/if_bonding.h src/basic/linux/libc-compat.h src/basic/linux/wireguard.h src/shared/linux/ethtool.h
Copyright: 2004-2009 Red Hat, Inc.
2011-2014 PLUMgrid
2001-2003 Sistina Software (UK) Limited.
2008 Ian Kent <raven@themaw.net>
1998 David S. Miller >davem@redhat.com>
2001 Jeff Garzik <jgarzik@pobox.com>
2006-2010 Johannes Berg <johannes@sipsolutions.net
2008 Michael Wu <flamingice@sourmilk.net>
2008 Luis Carlos Cobo <luisca@cozybit.com>
2008 Michael Buesch <m@bues.ch>
2008, 2009 Luis R. Rodriguez <lrodriguez@atheros.com>
2008 Jouni Malinen <jouni.malinen@atheros.com>
2008 Colin McCabe <colin@cozybit.com>
2018-2019 Intel Corporation
2007 Oracle.
2009 Wolfgang Grandegger <wg@grandegger.com>
1999 Thomas Davis <tadavis@lbl.gov>
2015 Sabrina Dubroca <sd@queasysnail.net>
1999-2000 Maxim Krasnyansky <max_mk@yahoo.com>
2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>
License: GPL-2 with Linux-syscall-note exception
Files: src/udev/scsi_id/* src/udev/scsi_id/scsi_id.c
Copyright: 2003 IBM Corp.
License: GPL-2+
Files: src/udev/udev-builtin-blkid.c src/udev/udev-builtin-input_id.c src/udev/udev-builtin-kmod.c src/udev/udev-builtin-usb_id.c src/udev/udev-event.h src/udev/udevadm-test.c src/udev/udev-event.h src/udev/udevadm-test.c src/udev/udevd.c
Copyright: 2003-2012 Kay Sievers <kay@vrfy.org>
2003-2004 Greg Kroah-Hartman <greg@kroah.com>
2004 Chris Friesen <chris_friesen@sympatico.ca>
2004, 2009, 2010 David Zeuthen <david@fubar.dk>
2005, 2006 SUSE Linux Products GmbH
2003 IBM Corp.
2007 Hannes Reinecke <hare@suse.de>
2009 Canonical Ltd.
2009 Scott James Remnant <scott@netsplit.com>
2009 Martin Pitt <martin.pitt@ubuntu.com>
2009 Piter Punk <piterpunk@slackware.com>
2009, 2010 Lennart Poettering
2009 Filippo Argiolas <filippo.argiolas@gmail.com>
2010 Maxim Levitsky
2011 ProFUSION embedded systems
2011 Karel Zak <kzak@redhat.com>
2014 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
2014 David Herrmann <dh.herrmann@gmail.com>
2014 Carlos Garnacho <carlosg@gnome.org>
License: GPL-2+
......@@ -1220,6 +1220,89 @@ systemd (247.9-1) unstable; urgency=medium
-- Michael Biebl <biebl@debian.org> Sun, 15 Aug 2021 21:10:56 +0200
systemd (247.3-7+apertis2) apertis; urgency=medium
[ Dylan Aïssi ]
* Refresh the automatically detected licensing information
[ Walter Lozano ]
* Enable tests on MR
-- Walter Lozano <walter.lozano@collabora.com> Sat, 21 Jan 2023 08:44:24 -0300
systemd (247.3-7+apertis1) apertis; urgency=medium
* Merge from Debian Bullseye. Remaining changes:
- Fix bashisms in various scripts
- Add systemd-boot package
- AppArmor: Add systemd-logind profile
- Don’t build against libdw, since 0.158 isn’t available in target.
- Add /usr to non-unmountable list.
- Fix debian/control syntax.
- Switch to OpenSSL, drop systemd-journal-remote and its dependency on
libmicrohttpd-dev
- Fix syntax in kernel-install.
- Remove bashisms from the entry directory plugin
- Fix bashisms in kernel-install scripts.
- kernel-install: allow to create $BOOT/$MACHINE_ID.
- Fix kernel-install call from update-initramfs.
- 85-initrd: fix the args number
- Refresh patch for UEFI entries generator.
- Fix the path to bootable binaries in efi entry.
- Fix access to run/systemd/notify for systemd-logind in apparmor rule
- Fix compilation on kernel 5.14+
- Remove '-execdir +' usage for compatibility with rust-findutils
- Fix issue with journald and /var at shutdown
- meson: change operator combining bools from + to and
- meson: do not fail if rsync is not installed with meson 0.57.2
* Move debian/patches/meson*.patch to debian/patches/apertis/
-- Dylan Aïssi <dylan.aissi@collabora.com> Tue, 10 May 2022 18:04:34 +0200
systemd (247.3-6+apertis4) apertis; urgency=medium
* meson: change operator combining bools from + to and
* meson: do not fail if rsync is not installed with meson 0.57.2
-- Vignesh Raman <vignesh.raman@collabora.com> Fri, 25 Mar 2022 16:14:40 +0530
systemd (247.3-6+apertis3) apertis; urgency=medium
* systemd-journal-flush: Add a requirement on var.mount
-- Detlev Casanova <detlevi.casanova@collabora.com> Wed, 26 Jan 2022 15:53:23 -0500
systemd (247.3-6+apertis2) apertis; urgency=medium
* d/p/basic-linux-Sync-if_arp.h-with-Linux-5.14.patch:
Fix compilation on kernel 5.14+
* Remove '-execdir +' usage for compatibility with rust-findutils
-- Ryan Gonzalez <ryan.gonzalez@collabora.com> Thu, 13 Jan 2022 15:27:00 -0600
systemd (247.3-6+apertis1) apertis; urgency=medium
* Merge from Debian Bullseye. Remaining changes:
* Fix bashisms in various scripts
* Add systemd-boot package
* AppArmor: Add systemd-logind profile
* Don’t build against libdw, since 0.158 isn’t available in target.
* Add /usr to non-unmountable list.
* Fix debian/control syntax.
* Switch to OpenSSL, drop systemd-journal-remote and its dependency on
libmicrohttpd-dev
* Fix syntax in kernel-install.
* Remove bashisms from the entry directory plugin
* Fix bashisms in kernel-install scripts.
* kernel-install: allow to create $BOOT/$MACHINE_ID.
* Fix kernel-install call from update-initramfs.
* 85-initrd: fix the args number
* Refresh patch for UEFI entries generator.
* Fix the path to bootable binaries in efi entry.
* Fix access to run/systemd/notify for systemd-logind in apparmor rule
-- Ariel D'Alessandro <ariel.dalessandro@collabora.com> Mon, 16 Aug 2021 21:15:04 -0300
systemd (247.3-6) unstable; urgency=high
* Non-maintainer upload (acked by maintainers)
......@@ -1288,6 +1371,82 @@ systemd (247.3-2) unstable; urgency=medium
-- Michael Biebl <biebl@debian.org> Sat, 06 Mar 2021 22:32:14 +0100
systemd (247.3-1apertis5) apertis; urgency=medium
* Fix access to run/systemd/notify for systemd-logind in apparmor rule
-- Frédéric Danis <frederic.danis@collabora.com> Mon, 14 Jun 2021 15:06:35 +0200
systemd (247.3-1apertis4) apertis; urgency=medium
* Fix bashisms in kernel-install scripts.
Remove negotiation from `-z` to test for non-emptiness instead of
previously added version reversing those tests logic.
* kernel-install: allow to create $BOOT/$MACHINE_ID.
Commit [cf73f650890](https://github.com/systemd/systemd/commit/cf73f650890)
provides script `00-entry-directory.install` which creates the entry
directory only if `$BOOT/$MACHINE_ID` folder exists.
This part was moved out of `kernel-install` script and may introduce
the problem during upgrade since before Apertis v2022dev2 we do kernel
install with `$MACHINE_ID` generated in a build time. Later we remove
`/etc/machine-id` file allowing to generate an unique machine ID during
first boot, so there will be no directory `$BOOT/$MACHINE_ID` with a new
ID preventing from new entry generation during kernel upgrade in runtime.
Hence remove the part checking the `$BOOT/$MACHINE_ID` existence and
allow to create the proper entry in any case, returning the previous
`kernel-install` behaviour.
* Fix kernel-install call from update-initramfs.
Fix parameters assignment in `kernel-install` while calling
from `update-initramfs` or any package update except kernel.
* 85-initrd: fix the args number
`kernel-install` pass 5 args to modules anyway, so empty argument
do not allow to install the initrd file into boot entry directory.
Since we do not pass the initrd name via options module
`90-loaderentry.install` also skip the initrd copying and setup.
* Refresh patch for UEFI entries generator.
Update names for entry directories variables and fix options count.
* Fix the path to bootable binaries in efi entry
`stat` doesn't work well inside of the systemd-nspawn container
created by Debos returning "?" instead of mountpoint.
Fall back to the provided directory, since we have separate
partition for "/boot/efi".
This change allow to use correct paths for kernel and initrd
for entry generation.
-- Denis Pynkin <denis.pynkin@collabora.com> Mon, 03 May 2021 23:16:58 +0000
systemd (247.3-1apertis3) apertis; urgency=medium
* Fix syntax in kernel-install.
Fixed syntax of kernel-install script introduced during
the merge with newer version from bullseye.
* Remove bashisms from the entry directory plugin
- Use [ not [[ and -n to test for non-emptiness
-- Denis Pynkin <denis.pynkin@collabora.com> Mon, 26 Apr 2021 23:21:30 +0300
systemd (247.3-1apertis2) apertis; urgency=medium
[ Sjoerd Simons ]
* Fix debian/control syntax.
[ Walter Lozano ]
* Switch to OpenSSL, drop systemd-journal-remote and its dependency on
libmicrohttpd-dev
-- Emanuele Aina <emanuele.aina@collabora.com> Wed, 24 Mar 2021 10:11:04 +0000
systemd (247.3-1apertis1) apertis; urgency=medium
* Merge from Debian Bullseye. Remaining changes:
+ Fix bashisms in various scripts
+ Add systemd-boot package
+ AppArmor: Add systemd-logind profile
+ Don’t build against libdw, since 0.158 isn’t available in target.
* Add /usr to non-unmountable list.
-- Sjoerd Simons <sjoerd@collabora.com> Tue, 16 Mar 2021 21:06:54 +0100
systemd (247.3-1) unstable; urgency=medium
[ Michael Biebl ]
......@@ -2291,6 +2450,155 @@ systemd (242-1) experimental; urgency=medium
-- Michael Biebl <biebl@debian.org> Wed, 08 May 2019 01:33:56 +0200
systemd (241-7~deb10u6co2) apertis; urgency=medium
* Add /usr to non-unmountable list.
For Apertis we don't support `/usr` being a seperate partition, the only time
`/usr` is on a mountpoint is when using ostree images (where it is a bind mount
and which use a merged-usr layout). So also add `/usr` to the list of paths that
are considered unmountable even with split-usr support enabled in systemd.
-- Denis Pynkin <denis.pynkin@collabora.com> Wed, 10 Mar 2021 02:09:16 +0300
systemd (241-7~deb10u6co1) apertis; urgency=medium
[ Ritesh Raj Sarraf ]
* Merge changes from Debian Buster. Remaining changes:
+ Fix syntax error in shell script
+ Fix new bashisms introduced on update.
+ AppArmor: Fix conflict with chaiwala-apparmor-profiles
+ AppArmor: Add systemd-logind profile
+ Don’t build against libdw, since 0.158 isn’t available in target.
+ Drop patch apertis/0101-basic-cap-list-parse-print-numerical-capabilities.patch
+ Drop patch apertis/0102-basic-capability-util-let-cap_last_cap-return-unsign.patch
+ Drop patch apertis/0103-basic-cap-list-reduce-scope-of-variables.patch
[ Denis Pynkin ]
* Force the call of systemd-journal-flush before `/var` unmount.
The problem with failed `/var` unmount placed on separate partition
have a long story: https://github.com/systemd/systemd/issues/867
According messages after the fix integrated into upstream -- there are
some corner cases which aren't fully fixed by patches adding [relinquish
options](https://gitlab.apertis.org/pkg/systemd/-/merge_requests/26)
In case of ostree-based images we have a similar issue since `/var` is
bind-mounted in initramfs. Systemd is trying to unmount `/var` on
shutdown, however `ExecStop=` command from `systemd-journal-flush`
service is not executed during shutdown.
By adding `PartOf=var.mount` into service file we force the
`systemd-journal-flush.service` to be called prior the `/var` unmount.
This allow to unlock the bind-mount, since `journald` have a chance to
re-link it's journal into `/run` with `journalctl
--smart-relinquish-var` call.
* Handle new capabilities gracefully (PR 16424)
Backported PR 16424 to avoid message
'Failed to parse bus message: Invalid argument'
with an updated kernel using new capabilities.
[ Frédéric Danis ]
* systemd-boot: backport fix of menu ordering with boot counting
systemd-boot selects the last valid entry by default, not the first, which
prevent correct rollback.
[ Martyn Welch ]
* journald: Backport support for --relinquish and --smart-relinquish options.
Newer version of systemd-journald support the --relinquish and
--smart-relinquish options that enable cleaner handling of mounts at
shutdown as journald can be told to close any logging under
/var/log/journal so that the /var filesystem can be unmounted should it be
on a separate partition.
Backport this feature as it enables shutdown without failures, a highly
desirable trait in embedded products using systemd.
-- Ritesh Raj Sarraf <ritesh.sarraf@collabora.com> Tue, 09 Mar 2021 15:58:45 +0530
systemd (241-7~deb10u4co5) apertis; urgency=medium
* Force the call of systemd-journal-flush before `/var` unmount.
The problem with failed `/var` unmount placed on separate partition
have a long story: https://github.com/systemd/systemd/issues/867
According messages after the fix integrated into upstream -- there are
some corner cases which aren't fully fixed by patches adding [relinquish
options](https://gitlab.apertis.org/pkg/systemd/-/merge_requests/26)
In case of ostree-based images we have a similar issue since `/var` is
bind-mounted in initramfs. Systemd is trying to unmount `/var` on
shutdown, however `ExecStop=` command from `systemd-journal-flush`
service is not executed during shutdown.
By adding `PartOf=var.mount` into service file we force the
`systemd-journal-flush.service` to be called prior the `/var` unmount.
This allow to unlock the bind-mount, since `journald` have a chance to
re-link it's journal into `/run` with `journalctl
--smart-relinquish-var` call.
-- Denis Pynkin <denis.pynkin@collabora.com> Tue, 17 Nov 2020 23:54:02 +0300
systemd (241-7~deb10u4co4) apertis; urgency=medium
* Handle new capabilities gracefully (PR 16424)
Backported PR 16424 to avoid message
'Failed to parse bus message: Invalid argument'
with an updated kernel using new capabilities.
-- Denis Pynkin <denis.pynkin@collabora.com> Sun, 01 Nov 2020 17:54:06 +0300
systemd (241-7~deb10u4co3) apertis; urgency=medium
* systemd-boot: backport fix of menu ordering with boot counting
systemd-boot selects the last valid entry by default, not the first, which
prevent correct rollback.
-- Frédéric Danis <frederic.danis@collabora.com> Wed, 23 Sep 2020 17:32:23 +0200
systemd (241-7~deb10u4co2) apertis; urgency=medium
* journald: Backport support for --relinquish and --smart-relinquish options.
Newer version of systemd-journald support the --relinquish and
--smart-relinquish options that enable cleaner handling of mounts at
shutdown as journald can be told to close any logging under
/var/log/journal so that the /var filesystem can be unmounted should it be
on a separate partition.
Backport this feature as it enables shutdown without failures, a highly
desirable trait in embedded products using systemd.
-- Martyn Welch <martyn@hades.welchs.me.uk> Fri, 21 Aug 2020 14:16:45 +0100
systemd (241-7~deb10u4co1) apertis; urgency=medium
* Merge changes from Debian Buster. Remaining changes:
+ Fix syntax error in shell script
+ Fix new bashisms introduced on update.
+ AppArmor: Fix conflict with chaiwala-apparmor-profiles
+ AppArmor: Add systemd-logind profile
+ Don’t build against libdw, since 0.158 isn’t available in target.
-- Ritesh Raj Sarraf <ritesh.sarraf@collabora.com> Tue, 26 May 2020 11:41:53 +0000
systemd (241-7~deb10u1co4) apertis; urgency=medium
* AppArmor: Fix conflict with chaiwala-apparmor-profiles
-- Frédéric Danis <frederic.danis@collabora.com> Thu, 19 Dec 2019 11:15:14 +0100
systemd (241-7~deb10u1co3) apertis; urgency=medium
* AppArmor: Add systemd-logind profile
-- Frédéric Danis <frederic.danis@collabora.com> Mon, 16 Dec 2019 11:35:22 +0100
systemd (241-7~deb10u1co2) apertis; urgency=medium
* Don’t build against libdw, since 0.158 isn’t available in target.
-- Andrej Shadura <andrewsh@debian.org> Thu, 12 Sep 2019 12:50:38 +0200
systemd (241-7~deb10u1co1) apertis; urgency=medium
* Merge from Debian. Remaining changes:
+ Sync changes from Debian Buster
+ Fix syntax error in shell script
+ Fix new bashisms introduced on update.
-- Andrej Shadura <andrewsh@debian.org> Thu, 12 Sep 2019 12:00:35 +0200
systemd (241-7) unstable; urgency=medium
[ Michael Biebl ]
......@@ -2327,6 +2635,26 @@ systemd (241-6) unstable; urgency=medium
-- Michael Biebl <biebl@debian.org> Mon, 08 Jul 2019 11:27:51 +0200
systemd (241-5co3) apertis; urgency=medium
* Fix new bashisms introduced on update.
-- Frederic Dalleau <frederic.dalleau@collabora.com> Thu, 15 Aug 2019 15:47:38 +0000
systemd (241-5co2) apertis; urgency=medium
* Fix syntax error in shell script
-- Ritesh Raj Sarraf <ritesh.sarraf@collabora.com> Mon, 12 Aug 2019 20:34:33 +0530
systemd (241-5co1) apertis; urgency=medium
[ Ritesh Raj Sarraf ]
* Refresh patches
* Sync changes from Debian Buster
-- Ritesh Raj Sarraf <ritesh.sarraf@collabora.com> Thu, 08 Aug 2019 04:20:28 +0000
systemd (241-5) unstable; urgency=medium
* Revert "Add check to switch VTs only between K_XLATE or K_UNICODE"
......@@ -2513,6 +2841,36 @@ systemd (240-6) unstable; urgency=high
-- Martin Pitt <mpitt@debian.org> Mon, 18 Feb 2019 13:54:04 +0000
systemd (240-5co3) apertis; urgency=medium
* d/patches/disable-failing-tests.patch
- Disable tests failing in Bosch's build environment (APERTIS-6048)
- test-netlink, test-stat-util
-- Ritesh Raj Sarraf <ritesh.sarraf@collabora.com> Tue, 21 May 2019 09:43:06 +0530
systemd (240-5co2) apertis; urgency=medium
* Uncomment code for initramfs compatibility.
Forgot to uncomment this code by occasion.
-- Denis Pynkin <denis.pynkin@collabora.com> Thu, 14 Feb 2019 13:58:11 +0000
systemd (240-5co1) apertis; urgency=medium
* Add patches removing bashisms from kernel-install.
Adapt kernel-install and parts for /bin/sh.
* Call `kernel-install` on kernel install and remove.
Set appropriate symlinks for kernel-install script to copy the kernel
and initramfs to EFI partition with generation of EFI loader entry
during kernel package install anr remove them on deinstallation.
* Add systemd-boot binary package.
Move all stuff related to EFI boot into separate package.
* Call `kernel-install` on changes in initramfs.
Allow to update the EFI loader entry on changes in initramfs.
-- Denis Pynkin <denis.pynkin@collabora.com> Wed, 13 Feb 2019 16:43:19 +0000
systemd (240-5) unstable; urgency=medium
[ Felipe Sateler ]
......
......@@ -43,7 +43,7 @@ Build-Depends: debhelper-compat (= 13),
libbz2-dev <!stage1>,
zlib1g-dev <!stage1> | libz-dev <!stage1>,
libcurl4-openssl-dev <!stage1>,
libmicrohttpd-dev <!stage1>,
libssl-dev <!stage1>,
libpcre2-dev <!stage1>,
libgcrypt20-dev,
libkmod-dev (>= 15),
......@@ -51,7 +51,7 @@ Build-Depends: debhelper-compat (= 13),
libmount-dev (>= 2.30),
libfdisk-dev (>= 2.33),
libseccomp-dev (>= 2.3.1) [amd64 arm64 armel armhf i386 mips mipsel mips64 mips64el x32 powerpc ppc64 ppc64el riscv64 s390x],
libdw-dev (>= 0.158) <!stage1>,
# libdw-dev (>= 0.158) <!stage1>,
libpolkit-gobject-1-dev <!stage1>,
libzstd-dev (>= 1.4.0),
libtss2-dev <!stage1>,
......
......@@ -22,9 +22,9 @@ cp -p /etc/udev/udev.conf "$DESTDIR/etc/udev/"
# copy .link files containing interface naming definitions
mkdir -p "$DESTDIR/lib/systemd/network/"
find -L /lib/systemd/network -name '*.link' -execdir cp -pt "$DESTDIR/lib/systemd/network/" '{}' +
find -L /lib/systemd/network -name '*.link' -print0 | xargs -0r cp -pt "$DESTDIR/lib/systemd/network/"
if [ -d /etc/systemd/network ]; then
find -L /etc/systemd/network -name '*.link' -execdir cp -pt "$DESTDIR/lib/systemd/network/" '{}' +
find -L /etc/systemd/network -name '*.link' -print0 | xargs -0r cp -pt "$DESTDIR/lib/systemd/network/"
fi
mkdir -p "$DESTDIR/lib/udev/rules.d/"
......
......@@ -10,7 +10,7 @@ INITRD_SRC="/boot/initrd.img-$KERNEL_VERSION"
[ "$COMMAND" = add ] || exit 0
if [ "$#" -ge 5 ]; then
if [ "$#" -gt 5 ]; then
# Explicit initrd paths were passed, fall through to default 90-loaderentry.install handling;
# we'd be either injecting an unwanted image or, worse, overriding a user-provided one
exit 0
......
#!/bin/sh
case "$DPKG_MAINTSCRIPT_PACKAGE" in
linux-image-*)
exit 0
;;
*)
kernel-install add "$1"
;;
esac
# vim:syntax=apparmor
#
# Copyright (C) 2015-2017 Collabora Ltd.
#
# SPDX-License-Identifier: MPL-2.0
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# This profile is fairly permissive: systemd-logind is very much a trusted
# process anyway (it has CAP_MAC_ADMIN and CAP_SYS_ADMIN) so there's
# little point in trying to restrict it extensively: it's mainly here so
# we can identify logind as a D-Bus peer in other profiles.
#
# We put it in enforcing mode so that we have a consistent story (saying
# everything is enforcing is simpler than listing exceptions), and
# it could potentially also mitigate attacks in which logind could be
# tricked into reading and trusting files that it shouldn't.
#include <tunables/global>
/lib/systemd/systemd-logind flags=(attach_disconnected) {
#include <abstractions/base>
#include <abstractions/dbus-strict>
#include <abstractions/nameservice>
capability sys_admin,
capability mac_admin,
capability audit_control,
capability chown,
capability kill,
capability dac_read_search,
capability dac_override,
capability fowner,
capability sys_tty_config,
/lib/systemd/systemd-logind mr,
dbus bind bus=system name=org.freedesktop.login1,
dbus (send, receive) bus=system,
network netlink,
mount fstype=tmpfs -> /run/user/*/,
/dev/dri/* rw,
/dev/input/* rw,
/dev/tty* rw,
/etc/systemd/** r,
/etc/udev/** r,
/proc/** r,
/run/systemd/notify w,
/run/systemd/seats/{,*} rw,
/run/systemd/sessions/{,*} rw,
/run/systemd/users/{,*} rw,
/run/systemd/inhibit/{,*} rw,
/run/nologin rw,
"/run/.#nologin*" rw,
/run/utmp rwk,
/run/systemd/shutdown/scheduled rw,
"/run/systemd/shutdown/.#scheduled*" rw,
/run/udev/** r,
/run/user/*/ w,
/var/lib/systemd/linger/{,**} r,
/sys/** r,
}
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Wed, 10 Mar 2021 01:58:37 +0300
Subject: [PATCH] Add /usr to non-unmountable list
Debians systemd has split-usr enabled as both Debian and in principle Apertis
support both a split and a merged-usr setup. This mostly adds search paths to
system (e.g. to look at both `/bin/` and `/usr/bin`) however it also means that
if `/usr` is a mountpoint system will try to unmount it. Unfortunately this causes
issues at shutdown for systems with a merged-usr layout as basic libraries (e.g. libc)
are located in `/usr` making it impossible to unmount.
For Apertis we don't support `/usr` being a seperate partition, the only time
`/usr` is on a mountpoint is when using ostree images (where it is a bind mount
and which use a merged-usr layout). So also add `/usr` to the list of paths that
are considered unmountable even with split-usr support enabled in systemd.
Adding `/usr` to the non-unmountable list allows to avoid problems with
unmounting it for Apertis images.
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
---
src/shutdown/umount.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/shutdown/umount.c b/src/shutdown/umount.c
index 3a72a13..970c055 100644
--- a/src/shutdown/umount.c
+++ b/src/shutdown/umount.c
@@ -500,9 +500,7 @@ static int delete_md(MountPoint *m) {
static bool nonunmountable_path(const char *path) {
return path_equal(path, "/")
-#if ! HAVE_SPLIT_USR
|| path_equal(path, "/usr")
-#endif
|| path_startswith(path, "/run/initramfs");
}
From eddc14ee54896149a9b6293255352185669abcd6 Mon Sep 17 00:00:00 2001
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Mon, 3 May 2021 23:04:26 +0000
Subject: Fix the path to bootable binaries in efi entry
`stat` doesn't work well due `coreutils-gplv2`
created by Debos returning "?" instead of mount point.
Fall back to the provided directory, since we have separate
partition for "/boot/efi".
This change allow to use correct paths for kernel and initrd
for entry generation.
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
---
src/kernel-install/90-loaderentry.install | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/kernel-install/90-loaderentry.install b/src/kernel-install/90-loaderentry.install
index 0c73007..c61bf2b 100644
--- a/src/kernel-install/90-loaderentry.install
+++ b/src/kernel-install/90-loaderentry.install
@@ -20,6 +20,11 @@ MACHINE_ID=$KERNEL_INSTALL_MACHINE_ID
BOOT_ROOT=${ENTRY_DIR_ABS%/$MACHINE_ID/$KERNEL_VERSION}
BOOT_MNT=$(stat -c %m $BOOT_ROOT)
+# stat doesn't work well due `coreutils-gplv2`
+# returning "?" instead of mount point.
+# Fall back to the provided directory, since we have separate
+# partition for "/boot/efi"
+mountpoint "$BOOT_MNT" || BOOT_MNT="$BOOT_ROOT"
ENTRY_DIR=${ENTRY_DIR_ABS#$BOOT_MNT}
if [ $COMMAND = "remove" ]; then
--
2.20.1
From 48877ecd94ff71c03e3d880601fb0ba067f11a35 Mon Sep 17 00:00:00 2001
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Mon, 3 May 2021 02:28:43 +0300
Subject: Remove bashisms from the UEFI entries generator
- Use [ not [[ and -z to test for non-emptiness
- Use shell lists instead of arrays
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
Signed-off-by: Frederic Dalleau <frederic.dalleau@collabora.com>
---
src/kernel-install/90-loaderentry.install | 75 +++++++++++++----------
1 file changed, 42 insertions(+), 33 deletions(-)
diff --git a/src/kernel-install/90-loaderentry.install b/src/kernel-install/90-loaderentry.install
index d096745..12d7b6e 100644
--- a/src/kernel-install/90-loaderentry.install
+++ b/src/kernel-install/90-loaderentry.install
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/sh
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
@@ -8,11 +8,11 @@ ENTRY_DIR_ABS="$3"
KERNEL_IMAGE="$4"
INITRD_OPTIONS_START="5"
-if ! [[ $KERNEL_INSTALL_MACHINE_ID ]]; then
+if [ -z "$KERNEL_INSTALL_MACHINE_ID" ]; then
exit 0
fi
-if ! [[ -d "$ENTRY_DIR_ABS" ]]; then
+if ! [ -d "$ENTRY_DIR_ABS" ]; then
exit 0
fi
@@ -22,48 +22,47 @@ BOOT_ROOT=${ENTRY_DIR_ABS%/$MACHINE_ID/$KERNEL_VERSION}
BOOT_MNT=$(stat -c %m $BOOT_ROOT)
ENTRY_DIR=${ENTRY_DIR_ABS#$BOOT_MNT}
-if [[ $COMMAND == remove ]]; then
+if [ $COMMAND = "remove" ]; then
rm -f "$BOOT_ROOT/loader/entries/$MACHINE_ID-$KERNEL_VERSION.conf"
rm -f "$BOOT_ROOT/loader/entries/$MACHINE_ID-$KERNEL_VERSION+"*".conf"
exit 0
fi
-if ! [[ $COMMAND == add ]]; then
+if ! [ $COMMAND = "add" ]; then
exit 1
fi
-if ! [[ $KERNEL_IMAGE ]]; then
+if [ -z "$KERNEL_IMAGE" ]; then
exit 1
fi
-if [[ -f /etc/os-release ]]; then
+if [ -f /etc/os-release ]; then
. /etc/os-release
-elif [[ -f /usr/lib/os-release ]]; then
+elif [ -f /usr/lib/os-release ]; then
. /usr/lib/os-release
fi
-if ! [[ $PRETTY_NAME ]]; then
+if [ -z "$PRETTY_NAME" ]; then
PRETTY_NAME="Linux $KERNEL_VERSION"
fi
-if [[ -f /etc/kernel/cmdline ]]; then
- read -r -d '' -a BOOT_OPTIONS < /etc/kernel/cmdline
-elif [[ -f /usr/lib/kernel/cmdline ]]; then
- read -r -d '' -a BOOT_OPTIONS < /usr/lib/kernel/cmdline
-else
- declare -a BOOT_OPTIONS
-
- read -r -d '' -a line < /proc/cmdline
- for i in "${line[@]}"; do
- [[ "${i#initrd=*}" != "$i" ]] && continue
- [[ "${i#BOOT_IMAGE=*}" != "$i" ]] && continue
- BOOT_OPTIONS+=("$i")
- done
+if [ -f /etc/kernel/cmdline ]; then
+ read -r BOOT_OPTIONS < /etc/kernel/cmdline
+elif [ -f /usr/lib/kernel/cmdline ]; then
+ read -r BOOT_OPTIONS < /usr/lib/kernel/cmdline
+elif [ -f "/proc/cmdline" ]; then
+ BOOT_OPTIONS=$(
+ cat /proc/cmdline | tr ' ' '\n' | \
+ while read -r i; do
+ [ "${i#initrd=*}" != "$i" ] && continue
+ echo -n " $i"
+ done
+ )
fi
-if [[ -f /etc/kernel/tries ]]; then
+if [ -f /etc/kernel/tries ]; then
read -r TRIES </etc/kernel/tries
- if ! [[ "$TRIES" =~ ^[0-9]+$ ]] ; then
+ if [ -z "${TRIES##*[!0-9]*}" ] ; then
echo "/etc/kernel/tries does not contain an integer." >&2
exit 1
fi
@@ -79,11 +78,20 @@ cp "$KERNEL_IMAGE" "$ENTRY_DIR_ABS/linux" &&
exit 1
}
-INITRD_OPTIONS=( "${@:${INITRD_OPTIONS_START}}" )
+shift $INITRD_OPTIONS_START
+INITRD_OPTIONS=""
+while [ $# -gt 0 ] ; do
+ if [ -z "$INITRD_OPTIONS" ] ; then
+ INITRD_OPTIONS="$1"
+ else
+ INITRD_OPTIONS="$INITRD_OPTIONS\n$1"
+ fi
+ shift
+done
-for initrd in "${INITRD_OPTIONS[@]}"; do
- if [[ -f "${initrd}" ]]; then
- initrd_basename="$(basename ${initrd})"
+echo "${INITRD_OPTIONS}" | while read initrd; do
+ if [ -f "${initrd}" ]; then
+ initrd_basename=$(basename "${initrd}")
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
echo "Installing $ENTRY_DIR_ABS/${initrd_basename}"
cp "${initrd}" "$ENTRY_DIR_ABS/${initrd_basename}" &&
@@ -97,7 +105,7 @@ done
# If no initrd option is supplied, fall back to "initrd" which is
# the name used by dracut when generating it in its kernel-install hook
-[[ ${#INITRD_OPTIONS[@]} == 0 ]] && INITRD_OPTIONS=( initrd )
+[ -z "${INITRD_OPTIONS}" ] && INITRD_OPTIONS=initrd
mkdir -p "${LOADER_ENTRY%/*}" || {
echo "Could not create loader entry directory '${LOADER_ENTRY%/*}'." >&2
@@ -110,11 +118,12 @@ mkdir -p "${LOADER_ENTRY%/*}" || {
echo "title $PRETTY_NAME"
echo "version $KERNEL_VERSION"
echo "machine-id $MACHINE_ID"
- echo "options ${BOOT_OPTIONS[*]}"
+ echo "options ${BOOT_OPTIONS}"
echo "linux $ENTRY_DIR/linux"
- for initrd in "${INITRD_OPTIONS[@]}"; do
- [[ -f $ENTRY_DIR_ABS/$(basename ${initrd}) ]] && \
- echo "initrd $ENTRY_DIR/$(basename ${initrd})"
+ echo "${INITRD_OPTIONS}" | while read initrd; do
+ initrd_basename=$(basename "${initrd}")
+ [ -f "$ENTRY_DIR_ABS/${initrd_basename}" ] && \
+ echo "initrd $ENTRY_DIR/${initrd_basename}"
done
:
} > "$LOADER_ENTRY" || {
--
2.29.3
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Thu, 24 Jan 2019 22:40:46 +0300
Subject: Remove bashisms from the depmod wrapper
- Use [ not [[ and -n to test for non-emptiness
- Use for loop instead of comma expansion
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
[ Rebased to the latest master, amended the rm call ]
Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk>
---
src/kernel-install/50-depmod.install | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/src/kernel-install/50-depmod.install b/src/kernel-install/50-depmod.install
index 3850eac..2b026da 100644
--- a/src/kernel-install/50-depmod.install
+++ b/src/kernel-install/50-depmod.install
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/sh
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
@@ -8,11 +8,11 @@ ENTRY_DIR_ABS="$3"
KERNEL_IMAGE="$4"
INITRD_OPTIONS_START="5"
-[[ $KERNEL_VERSION ]] || exit 1
+[ -n $KERNEL_VERSION ] || exit 1
case "$COMMAND" in
add)
- [[ -d "/lib/modules/${KERNEL_VERSION}/kernel" ]] || exit 0
+ [ -d "/lib/modules/${KERNEL_VERSION}/kernel" ] || exit 0
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
echo "Running depmod -a ${KERNEL_VERSION}"
exec depmod -a "${KERNEL_VERSION}"
@@ -20,8 +20,19 @@ case "$COMMAND" in
remove)
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
echo "Removing /lib/modules/${KERNEL_VERSION}/modules.dep and associated files"
- exec rm -f /lib/modules/"${KERNEL_VERSION}"/modules.{alias{,.bin},builtin.bin,dep{,.bin},devname,softdep,symbols{,.bin}}
- ;;
+ for d in alias \
+ alias.bin \
+ builtin.bin \
+ dep \
+ dep.bin \
+ devname \
+ softdep \
+ symbols \
+ symbols.bin
+ do
+ rm -f "/lib/modules/$2/modules.$d"
+ done
+ ;;
*)
exit 0
esac
From 2b89d2fe0193b36fa892ccc368e81efa8e854bb9 Mon Sep 17 00:00:00 2001
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Mon, 26 Apr 2021 23:00:48 +0300
Subject: Remove bashisms from the entry directory plugin
- Use [ not [[ and -z to test for non-emptiness
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
---
src/kernel-install/00-entry-directory.install | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/kernel-install/00-entry-directory.install b/src/kernel-install/00-entry-directory.install
index 21c09fa..e2fc396 100644
--- a/src/kernel-install/00-entry-directory.install
+++ b/src/kernel-install/00-entry-directory.install
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#/bin/sh
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
@@ -8,11 +8,11 @@ ENTRY_DIR_ABS="$3"
KERNEL_IMAGE="$4"
INITRD_OPTIONS_START="5"
-if ! [[ $KERNEL_INSTALL_MACHINE_ID ]]; then
+if [ -z "$KERNEL_INSTALL_MACHINE_ID" ]; then
exit 0
fi
-if [[ $COMMAND != add ]]; then
+if [ "$COMMAND" != "add" ]; then
exit 0
fi
--
2.20.1
From 2b3c1bccc61217f9800fa6b6f7af1007dd6c27e3 Mon Sep 17 00:00:00 2001
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Mon, 3 May 2021 03:12:29 +0300
Subject: Reworked kernel-install script
- Removed bashisms -- script is adapted for running with `/bin/sh`
- Add support of calling the script without passing the kernel image.
- Allow to use name prefix while detecting the action.
If the name of (sym)link to 'kernel-install' script ends with
'installkernel' or 'removekernel' -- the action 'add' or 'remove' is
assumed. This change allow to use file names like `zz_installkernel`
to force it to run last during the kernel installing or removing.
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
Signed-off-by: Frederic Dalleau <frederic.dalleau@collabora.com>
---
src/kernel-install/kernel-install | 100 +++++++++++++++++-------------
1 file changed, 56 insertions(+), 44 deletions(-)
diff --git a/src/kernel-install/kernel-install b/src/kernel-install/kernel-install
index e7457e9..6729168 100755
--- a/src/kernel-install/kernel-install
+++ b/src/kernel-install/kernel-install
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/sh
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
# SPDX-License-Identifier: LGPL-2.1-or-later
@@ -33,22 +33,18 @@ usage()
dropindirs_sort()
{
local suffix=$1; shift
- local -a files
local f d i
- readarray -t files <<<"$(
- for d in "$@"; do
- for i in "$d/"*"$suffix"; do
- if [[ -e "$i" ]]; then
- echo "${i##*/}"
- fi
- done
- done | sort -Vu
- )"
-
- for f in "${files[@]}"; do
+ for d in "$@"; do
+ for i in "$d/"*"$suffix"; do
+ if [ -e "$i" ]; then
+ echo "${i##*/}"
+ fi
+ done
+ done | sort -u | \
+ while read f; do
for d in "$@"; do
- if [[ -e "$d/$f" ]]; then
+ if [ -e "$d/$f" ]; then
echo "$d/$f"
continue 2
fi
@@ -59,51 +55,64 @@ dropindirs_sort()
export LC_COLLATE=C
for i in "$@"; do
- if [ "$i" == "--help" -o "$i" == "-h" ]; then
+ if [ "$i" = "--help" -o "$i" = "-h" ]; then
usage
exit 0
fi
done
KERNEL_INSTALL_VERBOSE=0
-if [ "$1" == "--verbose" -o "$1" == "-v" ]; then
+if [ "$1" = "--verbose" -o "$1" = "-v" ]; then
shift
KERNEL_INSTALL_VERBOSE=1
fi
export KERNEL_INSTALL_VERBOSE
-if [[ "${0##*/}" == 'installkernel' ]]; then
+INITRD_OPTIONS=""
+if [ "${0%installkernel}" != "${0}" ]; then
COMMAND='add'
# make install doesn't pass any parameter wrt initrd handling
- INITRD_OPTIONS=()
+ KERNEL_VERSION="$1"
+ KERNEL_IMAGE="$2"
+elif [ "${0%removekernel}" != "${0}" ]; then
+ COMMAND='remove'
+ KERNEL_VERSION="$1"
+ KERNEL_IMAGE="$2"
else
COMMAND="$1"
shift
- INITRD_OPTIONS=( "${@:3}" )
+ KERNEL_VERSION="$1"
+ KERNEL_IMAGE="$2"
+ while [ $# -gt 2 ] ; do
+ if [ -z "$INITRD_OPTIONS" ] ; then
+ INITRD_OPTIONS="$3"
+ else
+ INITRD_OPTIONS="$INITRD_OPTIONS\n$3"
+ fi
+ shift
+ done
fi
-KERNEL_VERSION="$1"
-KERNEL_IMAGE="$2"
# Reuse directory created without a machine ID present if it exists.
-if [[ -d /efi/Default ]] || [[ -d /boot/Default ]] || [[ -d /boot/efi/Default ]]; then
+if [ -d /efi/Default ] || [ -d /boot/Default ] || [ -d /boot/efi/Default ]; then
MACHINE_ID="Default"
-elif [[ -f /etc/machine-id ]]; then
+elif [ -f /etc/machine-id ]; then
read MACHINE_ID < /etc/machine-id
else
MACHINE_ID="Default"
fi
-if [[ ! $COMMAND ]] || [[ ! $KERNEL_VERSION ]]; then
+if [ -z "$COMMAND" ] || [ -z "$KERNEL_VERSION" ]; then
echo "Not enough arguments" >&2
exit 1
fi
-if [[ -d /efi/loader/entries ]] || [[ -d /efi/$MACHINE_ID ]]; then
+if [ -d /efi/loader/entries ] || [ -d /efi/$MACHINE_ID ]; then
ENTRY_DIR_ABS="/efi/$MACHINE_ID/$KERNEL_VERSION"
-elif [[ -d /boot/loader/entries ]] || [[ -d /boot/$MACHINE_ID ]]; then
+elif [ -d /boot/loader/entries ] || [ -d /boot/$MACHINE_ID ]; then
ENTRY_DIR_ABS="/boot/$MACHINE_ID/$KERNEL_VERSION"
-elif [[ -d /boot/efi/loader/entries ]] || [[ -d /boot/efi/$MACHINE_ID ]]; then
+elif [ -d /boot/efi/loader/entries ] || [ -d /boot/efi/$MACHINE_ID ]; then
ENTRY_DIR_ABS="/boot/efi/$MACHINE_ID/$KERNEL_VERSION"
elif mountpoint -q /efi; then
ENTRY_DIR_ABS="/efi/$MACHINE_ID/$KERNEL_VERSION"
@@ -117,51 +126,53 @@ export KERNEL_INSTALL_MACHINE_ID=$MACHINE_ID
ret=0
-readarray -t PLUGINS <<<"$(
+
+plugins_list(){
dropindirs_sort ".install" \
"/etc/kernel/install.d" \
"/usr/lib/kernel/install.d"
-)"
+}
case $COMMAND in
add)
- if [[ ! "$KERNEL_IMAGE" ]]; then
- echo "Command 'add' requires an argument" >&2
- exit 1
+ # According to man page 2-nd parameter could be skipped
+ if [ -z "$KERNEL_IMAGE" ]; then
+ KERNEL_IMAGE="/boot/vmlinuz-$KERNEL_VERSION"
fi
- if [[ ! -f "$KERNEL_IMAGE" ]]; then
+ if [ ! -f "$KERNEL_IMAGE" ]; then
echo "Kernel image argument ${KERNEL_IMAGE} not a file" >&2
exit 1
fi
- for f in "${PLUGINS[@]}"; do
- if [[ -x $f ]]; then
+ plugins_list | while read f; do
+ if [ -x "$f" ]; then
+
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
- echo "+$f add $KERNEL_VERSION $ENTRY_DIR_ABS $KERNEL_IMAGE ${INITRD_OPTIONS[@]}"
- "$f" add "$KERNEL_VERSION" "$ENTRY_DIR_ABS" "$KERNEL_IMAGE" "${INITRD_OPTIONS[@]}"
+ echo "+$f add $KERNEL_VERSION $ENTRY_DIR_ABS $KERNEL_IMAGE ${INITRD_OPTIONS}"
+ "$f" add "$KERNEL_VERSION" "$ENTRY_DIR_ABS" "$KERNEL_IMAGE" "${INITRD_OPTIONS}"
x=$?
- if [[ $x == $SKIP_REMAINING ]]; then
+ if [ $x = $SKIP_REMAINING ]; then
ret=0
break
fi
- ((ret+=$x))
+ ret=`expr $ret + $?`
fi
done
;;
remove)
- for f in "${PLUGINS[@]}"; do
- if [[ -x $f ]]; then
+ plugins_list | while read f; do
+ if [ -x "$f" ]; then
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
echo "+$f remove $KERNEL_VERSION $ENTRY_DIR_ABS"
"$f" remove "$KERNEL_VERSION" "$ENTRY_DIR_ABS"
x=$?
- if [[ $x == $SKIP_REMAINING ]]; then
+ if [ $x = $SKIP_REMAINING ]; then
ret=0
break
fi
- ((ret+=$x))
+ ret=`expr $ret + $x`
fi
done
@@ -169,7 +180,7 @@ case $COMMAND in
echo "Removing $ENTRY_DIR_ABS"
rm -rf "$ENTRY_DIR_ABS"
- ((ret+=$?))
+ ret=`expr $ret + $?`
;;
*)
@@ -179,3 +190,4 @@ case $COMMAND in
esac
exit $ret
+
--
2.29.3
From: Chris Packham <chris.packham@alliedtelesis.co.nz>
Date: Fri, 10 Sep 2021 09:51:36 +1200
Subject: basic/linux: Sync if_arp.h with Linux 5.14
ARPHRD_MCTP was added in 5.14. Sync if_arp.h to pick up the definition
Fixes #20694
---
src/basic/linux/if_arp.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/basic/linux/if_arp.h b/src/basic/linux/if_arp.h
index c3cc5a9..4783af9 100644
--- a/src/basic/linux/if_arp.h
+++ b/src/basic/linux/if_arp.h
@@ -54,6 +54,7 @@
#define ARPHRD_X25 271 /* CCITT X.25 */
#define ARPHRD_HWX25 272 /* Boards with X.25 in firmware */
#define ARPHRD_CAN 280 /* Controller Area Network */
+#define ARPHRD_MCTP 290
#define ARPHRD_PPP 512
#define ARPHRD_CISCO 513 /* Cisco HDLC */
#define ARPHRD_HDLC ARPHRD_CISCO
From f462882b9f851adb9bd0a420f2b3e5912bbfb712 Mon Sep 17 00:00:00 2001
From: Denis Pynkin <denis.pynkin@collabora.com>
Date: Sun, 2 May 2021 21:47:16 +0300
Subject: kernel-install: allow to create $BOOT/$MACHINE_ID
Commit cf73f650890 provides script `00-entry-directory.install` which
creates the entry directory only if `$BOOT/$MACHINE_ID` folder exists.
This part was moved out of `kernel-install` script and may introduce
the problem during upgrade since before Apertis v2022dev2 we do kernel
install with `$MACHINE_ID` generated in a build time. Later we remove
`/etc/machine-id` file allowing to generate an unique machine ID during
first boot, so there will be no directory `$BOOT/$MACHINE_ID` with a new
ID preventing from new entry generation during kernel upgrade in runtime.
Hence remove the part checking the `$BOOT/$MACHINE_ID` existence and
allow to create the proper entry in any case, returning the previous
`kernel-install` behaviour.
Signed-off-by: Denis Pynkin <denis.pynkin@collabora.com>
---
src/kernel-install/00-entry-directory.install | 8 --------
1 file changed, 8 deletions(-)
diff --git a/src/kernel-install/00-entry-directory.install b/src/kernel-install/00-entry-directory.install
index e2fc396..f753794 100644
--- a/src/kernel-install/00-entry-directory.install
+++ b/src/kernel-install/00-entry-directory.install
@@ -16,14 +16,6 @@ if [ "$COMMAND" != "add" ]; then
exit 0
fi
-# If the boot dir exists (e.g. $ESP/<machine-id>),
-# create the entry directory ($ESP/<machine-id>/<kernel-version>).
-# This is the only function of this plugin.
-MACHINE_ID_DIR="${ENTRY_DIR_ABS%/*}"
-if ! [ -d "$MACHINE_ID_DIR" ]; then
- exit 0
-fi
-
if [ "$KERNEL_INSTALL_VERBOSE" -gt 0 ]; then
echo "+mkdir -v -p $ENTRY_DIR_ABS"
exec mkdir -v -p "$ENTRY_DIR_ABS"
--
2.29.3
From 7c5fd25119a495009ea62f79e5daec34cc464628 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Mon, 12 Apr 2021 14:03:32 +0200
Subject: [PATCH] meson: do not fail if rsync is not installed with meson
0.57.2
https://github.com/mesonbuild/meson/issues/8641
Our CI started to fail. Even if the change is reverted in meson,
we need a quick workaround here.
---
man/meson.build | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/man/meson.build b/man/meson.build
index 3cae8446cd..f9c4b83dc8 100644
--- a/man/meson.build
+++ b/man/meson.build
@@ -184,17 +184,20 @@ html = custom_target(
depends : html_pages,
command : ['echo'])
-run_target(
- 'doc-sync',
- depends : man_pages + html_pages,
- command : ['rsync', '-rlv',
- '--delete-excluded',
- '--include=man',
- '--include=*.html',
- '--exclude=*',
- '--omit-dir-times',
- meson.current_build_dir(),
- get_option('www-target')])
+rsync = find_program('rsync', required : false)
+if rsync.found()
+ run_target(
+ 'doc-sync',
+ depends : man_pages + html_pages,
+ command : [rsync, '-rlv',
+ '--delete-excluded',
+ '--include=man',
+ '--include=*.html',
+ '--exclude=*',
+ '--omit-dir-times',
+ meson.current_build_dir(),
+ get_option('www-target')])
+endif
############################################################
--
2.30.2
From c29537f39e4f413a6cbfe9669fa121bdd6d8b36f Mon Sep 17 00:00:00 2001
From: Dan Streetman <ddstreet@canonical.com>
Date: Fri, 3 Sep 2021 12:43:33 -0400
Subject: [PATCH] meson.build: change operator combining bools from + to and
upstream meson stopped allowing combining boolean with the plus
operator, and now requires using the logical and operator
reference:
https://github.com/mesonbuild/meson/commit/43302d3296baff6aeaf8e03f5d701b0402e37a6c
Fixes: #20632
---
meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index 6e1a8b1e50..0fe996adba 100644
--- a/meson.build
+++ b/meson.build
@@ -35,7 +35,7 @@ conf.set10('BUILD_MODE_DEVELOPER', get_option('mode') == 'developer',
want_ossfuzz = get_option('oss-fuzz')
want_libfuzzer = get_option('llvm-fuzz')
-if want_ossfuzz + want_libfuzzer > 1
+if want_ossfuzz and want_libfuzzer
error('only one of oss-fuzz or llvm-fuzz can be specified')
endif
--
2.30.2
From: Detlev Casanova <detlev.casanova@collabora.com>
Date: Wed, 26 Jan 2022 15:30:42 -0500
Subject: systemd-journal-flush: Add a requirement on var.mount.
On some systems (like ostree), /var is already mounted (bind) when systemd
starts and is not in /etc/fstab, so there is no var.mount file (fragment)
generated by systemd-fstab-generator
var.mount unit still exists: it instantiated via /proc/self/mountinfo
RequiresMountsFor= does not add Requires= dependencies for .mount units if
there is no corresponding fragment file (it still adds them After=, though -
see unit_add_mount_dependencies() in unit.c)
=> systemd-journal-flush.service will have After=var.mount but no
Requires=var.mount.
=> On shutdown, nothing causes systemd-journal-flush.service to be stopped as
it does not require var.mount.
See https://github.com/systemd/systemd/issues/867#issuecomment-890768048
for details
This patch adds the Require= for var.mount. It fixes the unmounting of
/var at shutdown and doesn't influence systems that let systemd mount
/var.
Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
---
units/systemd-journal-flush.service | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/units/systemd-journal-flush.service b/units/systemd-journal-flush.service
index 1a71592..e258866 100644
--- a/units/systemd-journal-flush.service
+++ b/units/systemd-journal-flush.service
@@ -11,7 +11,7 @@
Description=Flush Journal to Persistent Storage
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
DefaultDependencies=no
-Requires=systemd-journald.service
+Requires=systemd-journald.service var.mount
After=systemd-journald.service systemd-remount-fs.service
Before=systemd-tmpfiles-setup.service
RequiresMountsFor=/var/log/journal
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment