-
Notifications
You must be signed in to change notification settings - Fork 3
/
Containerfile
37 lines (35 loc) · 1.63 KB
/
Containerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Location not final and subject to change!
FROM quay.io/fedora-ostree-desktops/kinoite:40
LABEL org.opencontainers.image.title="Fedora Kinoite"
LABEL org.opencontainers.image.description="Fedora Kinoite Live ISO"
LABEL org.opencontainers.image.source="https://github.com/travier/fedora-kinoite"
LABEL org.opencontainers.image.licenses="MIT"
LABEL quay.expires-after=""
# - Install Anaconda installer
# - Install GRUB cdboot bootloader
# - Install and enable livesys-scripts to start a live KDE session on boot
# - Install dracut-live dracut module for LiveISO support
# - Rebuild initramfs with LiveISO support
RUN rpm-ostree install \
anaconda \
anaconda-install-env-deps \
anaconda-live \
dracut-live \
grub2-efi-x64-cdboot \
livesys-scripts \
&& \
install -dm 0755 -o 0 -g 0 /usr/lib/dracut/dracut.conf.d && \
echo -e "# Add Live ISO (squashfs image) support\nadd_dracutmodules+=\" dmsquash-live \"" > /usr/lib/dracut/dracut.conf.d/20-atomic-liveiso.conf \
&& \
export KERNEL_VERSION="$(rpm -qa kernel --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}')" && \
stock_arguments=$(lsinitrd "/lib/modules/${KERNEL_VERSION}/initramfs.img" | grep '^Arguments: ' | sed 's/^Arguments: //') && \
mkdir -p /tmp/dracut /var/roothome && \
bash <(/usr/bin/echo "dracut $stock_arguments") && \
rm -rf /var/* /tmp/* && \
mv -v /boot/initramfs*.img "/lib/modules/${KERNEL_VERSION}/initramfs.img" \
&& \
systemctl enable livesys.service livesys-late.service \
&& \
sed -i 's/^livesys_session=.*/livesys_session="kde"/' /etc/sysconfig/livesys \
&& \
ostree container commit