build-sys: add mkosi hookup (#3731)

This adds a build script and a settings file for "mkosi", a tool for putting
together full, bootable disk images for container managers of EFI systems and
VMs.

With these files it's enough to type "mkosi" in the project directory to
generate a bootable Fedora 24 OS image with a version of systemd compiled fresh
from the working tree.

See https://github.com/systemd/mkosi
This commit is contained in:
Lennart Poettering 2016-07-16 02:00:44 +02:00 committed by Zbigniew Jędrzejewski-Szmek
parent 2f27e2c556
commit 1b0ff615c7
2 changed files with 98 additions and 0 deletions

26
mkosi.build Executable file
View File

@ -0,0 +1,26 @@
#!/bin/sh -x
# This file is part of systemd.
#
# Copyright 2016 Lennart Poettering
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# systemd is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
# This is a build script for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Simply invoke "mkosi" in the project directory to build an OS image.
git clean -dfqx
./autogen.sh c
make -j `nproc`
make install

72
mkosi.default Normal file
View File

@ -0,0 +1,72 @@
# This file is part of systemd.
#
# Copyright 2016 Lennart Poettering
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# systemd is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with systemd; If not, see <http://www.gnu.org/licenses/>.
# This is a settings file for OS image generation using mkosi (https://github.com/systemd/mkosi).
# Simply invoke "mkosi" in the project directory to build an OS image.
[Distribution]
Distribution=fedora
Release=24
[Output]
Format=raw_btrfs
Bootable=yes
[Partitions]
RootSize=2G
[Packages]
Cache=/var/tmp/dnf-cache
BuildPackages=
audit-libs-devel
autoconf
automake
bzip2-devel
cryptsetup-devel
dbus-devel
docbook-style-xsl
elfutils-devel
gcc
git
gnu-efi
gnu-efi-devel
gnutls-devel
gperf
intltool
iptables-devel
kmod-devel
libacl-devel
libblkid-devel
libcap-devel
libcurl-devel
libgcrypt-devel
libidn-devel
libmicrohttpd-devel
libmount-devel
libseccomp-devel
libselinux-devel
libtool
libxkbcommon-devel
libxslt
lz4-devel
make
pam-devel
pkgconfig
python3-devel
python3-lxml
qrencode-devel
xz-devel