| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this change, "mkosi build" will automatically build systemd for the
current distro without any further configuration. If people want to do a
cross-distro build by default, they can still create mkosi.default, but I
assume that this is relatively rare.
If people have symlinked mkosi.default to one of the files in .mkosi/, they'll
need to adjust the symlink.
(Building without configuration would always fail, since systemd has many many
required dependencies. I think it's nicer to do the most commonly expected
thing by default, i.e. rebuild for the current distro.)
Mkosi is nowadays packaged for most distros, so recommend installing of distro
packages as the primary installation mechanism.
|
|
|
|
| |
We have 'nano' everywhere, and it's enough for a casual edit.
|
|
|
|
|
|
|
|
|
| |
... and /usr/bin/ path for a library package which provides an executable we
care about (libxslt).
This way the mkosi dependency list corresponds directly to the names which are
used in the dependency() and find_program() lines in meson.build. It also makes
the thing more resilient to package splits and renames.
|
|
|
|
|
|
| |
I think it was only used for building the python wrappers.
C.f. https://src.fedoraproject.org/rpms/systemd/c/ec9ca01d16bf6eda50b77f64dccf1caa06d29374?branch=rawhide.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
m4 was hugely popular in the past, because autotools, automake, flex, bison and
many other things used it. But nowadays it much less popular, and might not even
be installed in the buildroot. (m4 is small, so it doesn't make a big difference.)
(FWIW, Fedora dropped make from the buildroot now,
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot. I think it's
reasonable to assume that m4 will be dropped at some point too.)
The main reason to drop m4 is that the syntax is not very nice, and we should
minimize the number of different syntaxes that we use. We still have two
(configure_file() with @FOO@ and jinja2 templates with {{foo}} and the
pythonesque conditional expressions), but at least we don't need m4 (with
m4_dnl and `quotes').
|
|
|
|
| |
In preparation for subsequent changes.
|
|
|
|
|
|
|
|
|
|
|
| |
libfido2 was pulled in recently [1], and the dependency on libzstd has been
present for a long time.
nano is now the default editor in Fedora [2], but we still want to pull it in
to have an editor in minimal images.
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1949505
[2] https://fedoraproject.org/wiki/Changes/UseNanoByDefault
|
|
|
|
| |
It was added in e2c5e698c0, but nobody remembers why exactly.
|
|
|
|
|
|
| |
F34 was just released and should be fine for systemd builds.
Cloud-1.2 is the latest version.
|
| |
|
|
|
|
| |
Split out from #17919.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- HostonlyInitrd reduces the size of the initramfs which speeds up
QEMU boot times.
- Autologin and deleting the root password remove
the manual login step whenever starting the systemd-nspawn container
or QEMU vm.
- NetworkVeth passes --network-veth to the nspawn container when
using mkosi boot and emulates --network-veth with a tap device
and networkd's 80-vm-vt.network builtin network file when using
mkosi qemu. --network-veth makes it easier to test network and
resolved in mkosi's nspawn container or QEMU vm.
|
|
|
|
|
|
| |
It's often useful to have an editor available to edit some random
config file in the final image. Let's install some basic editors
that don't take up too much space.
|
|
|
|
| |
As suggested: https://github.com/systemd/systemd/pull/17741#issuecomment-743479834
|
|
|
|
| |
Useful for debugging purposes.
|
|
|
|
|
|
| |
Let's add a debugger to the mkosi images so we can debug coredumps
from inside mkosi qemu VMs (and hopefully in the future from
mkosi systemd-nspawn containers as well).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
--qemu-headless configures the generated image and mkosi's qemu
command to connect to the VM via the serial port. This allows
spawning a qemu VM within the user's terminal instead of spawning
a graphical GTK GUI. --qemu-headless sets TERM, COLUMNS and LINES
in serial-getty@ttyS0.service in the container which makes the
terminal in the VM behave almost equivalent to the one on the host.
This change makes testing changes to systemd using mkosi + QEMU a
lot easier compared to before as commands can be executed in the VM
from the comfort of one's terminal compared to the Linux console
available when running via the GTK GUI.
|
|
|
|
| |
find is needed by test_exec_dynamicuser.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
As long as the RPM version does not include a dep for it yet, we need to
add it manually, since we now link against it.
Follow-up for: 95f7ab2fe66cc3bb3a95eb8690114732eab30555
|
|
|
|
|
|
|
| |
We need to include ninja-build in the packages list because meson doesn't
depend on it (because it supports other backends too).
Also drop xz-devel, it's not crucial for the test.
|
|
|
|
|
| |
We want to build this image with as many deps turned on as we can make
happen, hence include libfido2 in the image.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
libzstd is a new dependency for systemd that's not in a stable release
yet, so it's not pulled in by the RPM package dependency. Manually
include it in the package section so the image mkosi produces works. It
can be removed when the RPM depends on it.
Additionally, a number of packages in the list appear to be pulled in
because they're dependencies in the systemd rpm, so remove them.
Finally, mkosi v5 adds the proper fs utilities for bootable images type
so drop that dependency as well.
|
| |
|
|
|
|
|
| |
Both hostname and uname utilities boil down to uname(2) syscall. Reduce
tests dependency footprint by using uname for checking hostname too.
|
|
|
|
| |
Since 6123dfaa72 this should not be necessary anymore.
|
|
|
|
|
| |
This saves ~24MB of space, see
https://fedoraproject.org/wiki/Changes/Remove_glibc-langpacks-all_from_buildroot.
|
|
|
|
|
|
|
| |
efsck to build
This is preparation for subsequent additions which link against these
libraries.
|
|
|
|
|
|
|
|
|
|
| |
Fedora minimization had some effect, hence add some required
dependencies explicitly so that we work anyway.
Also, the libtool is not used anymore, drop it.
Finally, the mkosi output format is called gpt_ext4 now, not raw_ext4
anymore.
|
| |
|
| |
|
|
|
|
|
| |
F29 is at beta now, but should be out within two or three weeks, by the time
next systemd release happens.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
These lines are generally out-of-date, incomplete and unnecessary. With
SPDX and git repository much more accurate and fine grained information
about licensing and authorship is available, hence let's drop the
per-file copyright notice. Of course, removing copyright lines of others
is problematic, hence this commit only removes my own lines and leaves
all others untouched. It might be nicer if sooner or later those could
go away too, making git the only and accurate source of authorship
information.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This part of the copyright blurb stems from the GPL use recommendations:
https://www.gnu.org/licenses/gpl-howto.en.html
The concept appears to originate in times where version control was per
file, instead of per tree, and was a way to glue the files together.
Ultimately, we nowadays don't live in that world anymore, and this
information is entirely useless anyway, as people are very welcome to
copy these files into any projects they like, and they shouldn't have to
change bits that are part of our copyright header for that.
hence, let's just get rid of this old cruft, and shorten our codebase a
bit.
|
|
|
|
|
| |
Our test-execute test uses 'hostname' to validate specifiers, hence it
should be available in our mkosi build too, so that the test can pass.
|
|
|
|
|
|
|
|
|
|
| |
Files which are installed as-is (any .service and other unit files, .conf
files, .policy files, etc), are left as is. My assumption is that SPDX
identifiers are not yet that well known, so it's better to retain the
extended header to avoid any doubt.
I also kept any copyright lines. We can probably remove them, but it'd nice to
obtain explicit acks from all involved authors before doing that.
|
|
|
|
|
|
|
|
|
|
|
| |
intltool is unnecessary since c81217920effddc93fb780cf8f9eb699d6fe1319.
But we still need gettext, because we use msgformat to generate .mo files.
(I tried to make meson depend on it, at least in Fedora:
https://bugzilla.redhat.com/show_bug.cgi?id=1545926, but that didn't fly,
and in Debian at least meson also has no dependency on the tools used by
its i18n module, so we need to add our own dependency anyway.)
Closes #8192.
|
|\
| |
| |
| | |
Trivial merge conflict resolved locally.
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
| |
This way these dirs will be created automatically if they are missing,
thus always guaranteeing optimal speedy behaviour.
(Well at least, after https://github.com/systemd/mkosi/pull/181 is
merged)
|
|
|
| |
This seems to be required since the move to meson.
|
|\
| |
| | |
WakeSystem= and other timer fixes.
|
| | |
|