Commit Graph

6062 Commits (ce9af251af5fca08ea206ef980005853a4dac36e)

Author SHA1 Message Date
Mikhail Novosyolov ce9af251af feat: support ZSTD-compressed kernel modules
Modern Linux kernels support zstd-compressed modules, which was added
by commit 73f3d1b48f50 ("lib: Add zstd modules").

Commit c3d7ef377eb ("kbuild: add support for zstd compressed modules")
added support of compressing modules with zstd to kernel Makefiles.

libkmod >= 28 built with libzstd is also required.
2021-05-04 15:55:19 +00:00
Harald Hoyer 4a76c187d0 docs: document how to run the test suite in podman on Fedora and Arch 2021-05-04 16:34:10 +02:00
Harald Hoyer 373eadaa9c style: make indent and let shfmt fail again
The bump of removed the `-d` option for `shfmt`. Readd it until upstream
is fixed.

See also:
https://github.com/luizm/action-sh-checker/issues/44
2021-05-04 15:39:55 +02:00
Jóhann B. Guðmundsson 0620677238 chore(tree): move package build files in their own directory
Creating pkgbuild directory and move relevant files there.
2021-05-04 15:39:34 +02:00
Harald Hoyer 82e780af25 test(NFS): let it run in an Arch container
`dhclient` on Arch does not understand the `--timeout` parameter.

`/etc/virc` does not need to be installed in tests. This is a debugging
leftover.
2021-05-04 13:47:03 +02:00
Harald Hoyer 7f63374713 fix: include `modules.builtin.alias` in the initramfs
Let's also resolve the compiled in aliases to builtin modules.
2021-05-04 13:34:16 +02:00
Harald Hoyer ece67c7e2d test(FULL SYSTEMD): try pacman rather than rpm on Arch
If there is no `rpm`, try `pacman` to get a full list of systemd files
to install into the real test root.
2021-05-04 13:23:56 +02:00
Harald Hoyer 50a01dd4b2 fix: install all depmod relevant configuration files
This is important for running `depmod` in the initrd.
2021-05-04 13:15:49 +02:00
Harald Hoyer 87c4c17850 fix: add `modules.builtin.modinfo` to the initramfs
This solves all issues, where builtin kernel modules are not recognized
as such.

Fixes: https://github.com/dracutdevs/dracut/issues/1146
Fixes: https://github.com/dracutdevs/dracut/issues/1099
2021-05-04 11:45:53 +02:00
Harald Hoyer 10f9e569c5 fix(crypt): install all crypto modules in the generic initrd
Just install all `=crypto` drivers in the generic initramfs, because who
are we to decide which combinations are allowed in current and future
`cryptsetup`. We only could install blacklist filter in the future, if
there are modules, which are definetely not used and are huge in size.
2021-05-04 11:25:55 +02:00
Harald Hoyer 33e27fab59 feat: also restore the initramfs from /lib/modules
Fallback to /lib/modules/$(uname -r)/initrd, if present and all other
files don't exist.
2021-05-04 11:25:32 +02:00
Harald Hoyer 625f11dca7 chore: skip rpmbuild, if there is no rpmbuild installed
On non-rpm distributions this does not make sense.
2021-05-04 10:39:41 +02:00
Harald Hoyer 44ca04c843 chore: fix indent-c path for src directory 2021-05-04 10:39:28 +02:00
Harald Hoyer 060e1f192e test: use `uname -m` to determine qemu-system
E.g. `uname -i` does not work in Arch Linux containers.
2021-05-04 10:14:08 +02:00
Jóhann B. Guðmundsson 7359ba8aca fix(systemd-sysusers): misc fixes and cleanup
- module-setup.sh file permission corrected
- comment section cleaned up
- removal of dependency on systemd module
- added inclution of the unit into the sysinit target
- removal of systemctl enablement of type unit
2021-05-04 10:05:25 +02:00
Jóhann B. Guðmundsson 9f9bf8a178 chore(tree): move src into their own src directory
Moving sources into their src directory
2021-05-04 10:02:04 +02:00
Jóhann B. Guðmundsson a02d17f7af chore(tree): move tools into their own directory
Moving tools into their own directory
2021-05-04 10:01:14 +02:00
Jóhann B. Guðmundsson a876c27085 chore(tree): move docs into the docs directory
Consolidating all the projects documentation into the docs
directory with the exception of news and readme.
2021-05-04 09:31:11 +02:00
Jóhann B. Guðmundsson 49717458e8 chore(tree): move kernel install files into its own directory
Move kernel install files into it's own directory within the tree.
2021-05-04 09:24:16 +02:00
Jóhann B. Guðmundsson e5ac28a5be chore(tree): move man pages into a man directory
Moving man pages into it's own man directory within the tree
2021-05-04 09:23:51 +02:00
Jóhann B. Guðmundsson b544bd6bfa chore(tree): move shell completion into a directory
Moving shell completion into it's own directory for a more organized and
cleaner tree.
2021-05-04 09:22:22 +02:00
Jóhann B. Guðmundsson 86b756346a fix(mdraid): remove dependency statements
mdadm 4.1 was released 2 years ago so it's safe to assume
that everyone are on 4.1.X branch now...
2021-05-03 13:44:29 +02:00
Jóhann B. Guðmundsson 12bef83cda fix(systemd-resolved): remove nss libraries
Removing inclution of nss libraries since they are part of
the systemd module now.
2021-05-03 10:16:48 +02:00
Jóhann B. Guðmundsson b3bbf5fb6a fix(systemd): include all nss libraries
Include all nss libraries so other modules dont have to.
2021-05-03 10:16:22 +02:00
Jóhann B. Guðmundsson 562cb77b5a fix(systemd-udevd): add udev id program files
Adding missing udev id program files
2021-05-03 10:14:37 +02:00
Stefan Berger 4bdd7eb23a fix(integrity): properly set up EVM when using an x509 cert
The current EVM script does not handle the EVM setup properly when X509
certificates are involved. In this patch we extend the setup and add
the necessary flags for support of EVM activation that include
x509 certificates, possibly in conjunction with an HMAC key. We also
first try activating EVM for x509 certificates using
EVM_ALLOW_METADATA_WRITES for newer kernels, then without it for older
ones that did not support this flag.

We add support for additional EVM activation bits to be set, such
as EVM_SETUP_COMPLETE (0x80000000) via the config file and
EVM_ACTIVATION_BITS variable.

To avoid error messages related to unloading the HMAC key if none is
used, only attempt to unload the HMAC key if one was actually set.

We add documentation about the variables that can be set in the EVM
config file.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
Cc: Roberto Sassu <roberto.sassu@huawei.com>
2021-05-03 08:13:48 +00:00
Jóhann B. Guðmundsson 8f99fadabe fix(tpm2-tss): add tpm2 requirement 2021-05-03 10:08:51 +02:00
Jóhann B. Guðmundsson 8743b07356 feat(tpm2-tss): introducing the tpm2-tss module
Introducing the tpm2-tss module
2021-05-03 10:08:51 +02:00
Jóhann B. Guðmundsson 69f4e7cdc3 fix(udev-rules): remove sourcing of network link files
Removing sourcing of network link files from the udev-rules module.
What always should be included should be placed in the systemd-network
module and other modules that provide/require spesific link files
should add them, themselves via their relevant include section.
2021-05-03 10:07:48 +02:00
Jóhann B. Guðmundsson fd883a58d1 fix(systemd-udev): use global vars instead of fixed path 2021-04-30 10:18:02 +02:00
Harald Hoyer 851a801178 ci: switch to action-sh-checker v0.2.0
See also:
https://github.com/luizm/action-sh-checker/pull/40#issuecomment-829260125
2021-04-29 16:09:02 +02:00
Harald Hoyer 1ffbcadad4 ci: remove label cron job
With the event called pull_request_target added to GitHub Actions, the
cron job can be removed.

See:
https://www.jclem.net/posts/labeling-prs-on-public-github-repositories
2021-04-29 14:57:44 +02:00
Jóhann B. Guðmundsson f35d479d2b fix(dracut): adding missing globalvars for udev
Adding missing global variables for udev
udevconfdir --> /etc/udev
udevrulesdir --> /usr/lib/udev/rules.d
udevrulesconfdir --> /etc/udev/rules.d
2021-04-29 14:39:51 +02:00
Jóhann B. Guðmundsson 3534789cc4 feat(systemd-udevd): introducing the systemd-udevd module
Introducing the systemd-udevd module
2021-04-29 14:39:21 +02:00
Jóhann B. Guðmundsson 57eefcf705 fix(network): use wicked unit instead of find_binary
dracut-install triggers "ERROR: installing '/usr/lib/wicked/bin/*'"
when find_binary is being used to determine if wicked is installed
so let's just check for the wicked type service unit instead.
2021-04-28 13:21:57 +02:00
Harald Hoyer 3c244c7ca3 fix(multipath): stop multipath before udev db cleanup
All device-mapper based devices, including device-mapper-multipath,
do reuse the udev db from the initramfs after switching to the root fs.

Therefore device-mapper devices have to be correctly initialized before
the udev daemon is stopped, to have the correct entries in the udev db.

See also https://bugzilla.redhat.com/show_bug.cgi?id=1949076
2021-04-28 13:19:33 +02:00
Jóhann B. Guðmundsson abfd547a85 fix(network-legacy): add missing options to dhclient.conf
Adding the following commonly used options to dhclient.conf
- netbios-name-servers
- netbios-scope
- ntp-servers
- dhcp6.domain-search
- dhcp6.fqdn
- dhcp6.name-servers
- dhcp6.sntp-servers
2021-04-28 09:03:48 +02:00
Jóhann B. Guðmundsson ba92d1fcad fix(systemd-verity): incorrect reference to cryptsetup target
Incorrect include of remote-cryptsetup.target in hostonly.
Corrected to point to remote-veritysetup.target
2021-04-27 15:05:12 +02:00
Jóhann B. Guðmundsson 0267f3c355 fix(systemd-verity): re-naming module to veritysetup
Renaming the module from systemd-verity to systemd-veritysetup to be inline
with the systemd-cryptsetup module.
2021-04-27 15:05:12 +02:00
Jóhann B. Guðmundsson 3d4dea58f9 feat(systemd-verity): introducing the systemd-verity module
Introducing the systemd-verity module.
2021-04-27 10:32:24 +02:00
Harald Hoyer ec18a3eb83 ci: reorder the tests 2021-04-26 17:31:54 +02:00
Harald Hoyer bb6770f1a4 fix(iscsi): add iscsid.service requirements
Since Fedora 34, iscsid.service requires:
- iscsi-init.service
- iscsi-shutdown.service
- a non-empty /var/lib/iscsi/nodes/.dracut
2021-04-26 15:34:24 +02:00
Harald Hoyer 2c5bb67d83 test(ISCSI): fix the watchdog loop
Test for `pidof tgtd` and not the shell background jobs.
2021-04-26 14:13:41 +02:00
Kairui Song 3fdc734a5c fix: search for btrfs devices from actual mount poiont
Currently when dracut search for btrfs device used for initramfs, it
assumes the mount points passed in with "--mount" are all mounted with
given mount path. If user want the device to be mounted to a different
location in initramfs, this will not be true.

eg. with "--mount '/dev/mapper/vol /sysroot btrfs rw,relatime,subvolid=256,subvol=/root'"
and having '/dev/mapper/vol' currently mounted on '/', will raise an
error:
    ERROR: cannot access '/sysroot': No such file or directory

So search for actual mount point of given device.

Signed-off-by: Kairui Song <kasong@redhat.com>
2021-04-26 13:41:15 +02:00
Harald Hoyer b92af86bd5 test: don't fail on modprobe btrfs in create-root.sh 2021-04-26 13:13:59 +02:00
Harald Hoyer f5721c5921 ci: run all Fedora CI in a matrix
Also automatically cancel it, if the PR is updated
2021-04-26 12:48:27 +02:00
Harald Hoyer 0eb87d7810 fix(iscsi): only rely on socket activiation
Only rely on socket activation. This speeds up in case iscsi isn't used
and also prevents failures, where iscsiuio stopping somehow disables
iscsi.
2021-04-26 11:12:31 +02:00
Jóhann B. Guðmundsson 5eb736103d feat(systemd-initrd): add initrd-usr-fs.target
Adding a new systemd initrd-usr-fs.target to the systemd-initrd module
2021-04-23 11:19:58 +02:00
Jóhann B. Guðmundsson aaea54c732 fix: quotes in systemd modules
Fixing quotes around *.conf in systemd modules
2021-04-23 10:56:51 +02:00
Jóhann B. Guðmundsson 2f217abdb3 refactor: check() in systemd modules
Refactoring require_binaries in check() for systemd modules
2021-04-23 10:48:54 +02:00