forked from srbala/fedora-kickstarts
Compare commits
88 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
3c02bf385d | ||
|
62eddab5a6 | ||
|
97a4a34be9 | ||
|
dd059fb52b | ||
|
fa78bd6482 | ||
|
d57f0a2e2d | ||
|
2565b003d4 | ||
|
389bcb6c1e | ||
|
d61e280867 | ||
|
ebf2a08b9a | ||
|
8b76095ef1 | ||
|
06e4071407 | ||
|
0aba4ea78f | ||
|
40dbada72b | ||
|
1a67c48064 | ||
|
3e8cd74fc8 | ||
|
5b6b9e4d6a | ||
|
b95b0e11d0 | ||
|
4493473a0a | ||
|
41e571f0b0 | ||
|
7760932d53 | ||
|
ead98e05d6 | ||
|
6167c5112c | ||
|
119efae2f9 | ||
|
5a9491e5ad | ||
|
b668257940 | ||
|
057e710338 | ||
|
caafaa6c03 | ||
|
8c9a05ae16 | ||
|
ba79b12375 | ||
|
1b78636ab1 | ||
|
f15dd026fe | ||
|
e7742ffc33 | ||
|
007c54025d | ||
|
75d580c3fa | ||
|
0f69fe0d48 | ||
|
9e47cff172 | ||
|
d35eba9297 | ||
|
4393b884b3 | ||
|
30c4fddde7 | ||
|
32110a472e | ||
|
289081819e | ||
|
e9c9928c83 | ||
|
6338afb23c | ||
|
7243faa567 | ||
|
d38606ec42 | ||
|
1c64d4718a | ||
|
1b19a4c21b | ||
|
a8152f2e31 | ||
|
de0a80e24d | ||
|
fa047a1949 | ||
|
0c7d01ca5e | ||
|
e096cbed83 | ||
|
c8f435a6a0 | ||
|
00d0830aaf | ||
|
54d01cbd53 | ||
|
7e810e6fb7 | ||
|
09afeb926f | ||
|
34ce2e2165 | ||
|
d9fab6d0a9 | ||
|
d0ae69f8eb | ||
|
5571ec20dd | ||
|
685a19ff40 | ||
|
9bb254b865 | ||
|
f4a0c73bfe | ||
|
5bcdb60f13 | ||
|
88a9240267 | ||
|
407ca518cd | ||
|
b8a45187ae | ||
|
c6826272fc | ||
|
cf2a91f935 | ||
|
b49fdad2b6 | ||
|
f7dc6eacf4 | ||
|
2bbf715cd9 | ||
|
23b814089b | ||
|
19fb556f9f | ||
|
0996c4996e | ||
|
f7bef12438 | ||
|
4ed12a7027 | ||
|
d8b59962cd | ||
|
aefa165253 | ||
|
c8f098b393 | ||
|
839ef7acc0 | ||
|
1c70356e93 | ||
|
f1cac9d7b9 | ||
|
2a2faacda6 | ||
|
2094721562 | ||
|
8f0cb7faca |
@ -10,7 +10,7 @@ bootloader extlinux
|
|||||||
part /boot/fw --size=30 --fstype vfat --asprimary
|
part /boot/fw --size=30 --fstype vfat --asprimary
|
||||||
part /boot --size=512 --fstype ext4 --asprimary
|
part /boot --size=512 --fstype ext4 --asprimary
|
||||||
part swap --size=512 --fstype swap --asprimary
|
part swap --size=512 --fstype swap --asprimary
|
||||||
part / --size=3584 --fstype ext4 --asprimary
|
part / --size=2800 --fstype ext4 --asprimary
|
||||||
|
|
||||||
# make sure that initial-setup runs and lets us do all the configuration bits
|
# make sure that initial-setup runs and lets us do all the configuration bits
|
||||||
firstboot --reconfig
|
firstboot --reconfig
|
||||||
@ -23,24 +23,28 @@ services --enabled=sshd,NetworkManager,avahi-daemon,rsyslog,chronyd,initial-setu
|
|||||||
@core
|
@core
|
||||||
@standard
|
@standard
|
||||||
@hardware-support
|
@hardware-support
|
||||||
@dial-up
|
|
||||||
|
|
||||||
kernel
|
kernel
|
||||||
|
# remove this in %post
|
||||||
dracut-config-generic
|
dracut-config-generic
|
||||||
|
-dracut-config-rescue
|
||||||
# install tools needed to manage and boot arm systems
|
# install tools needed to manage and boot arm systems
|
||||||
@arm-tools
|
@arm-tools
|
||||||
|
-uboot-images-armv8
|
||||||
rng-tools
|
rng-tools
|
||||||
chrony
|
chrony
|
||||||
extlinux-bootloader
|
extlinux-bootloader
|
||||||
bcm283x-firmware
|
bcm283x-firmware
|
||||||
initial-setup
|
initial-setup
|
||||||
initial-setup-gui
|
initial-setup-gui
|
||||||
|
-iwl*
|
||||||
|
-ipw*
|
||||||
|
-trousers-lib
|
||||||
|
-usb_modeswitch
|
||||||
|
-iproute-tc
|
||||||
#lets resize / on first boot
|
#lets resize / on first boot
|
||||||
# dracut-modules-growroot
|
# dracut-modules-growroot
|
||||||
|
|
||||||
# remove this in %post
|
|
||||||
dracut-config-generic
|
|
||||||
|
|
||||||
# make sure all the locales are available for inital0-setup and anaconda to work
|
# make sure all the locales are available for inital0-setup and anaconda to work
|
||||||
glibc-all-langpacks
|
glibc-all-langpacks
|
||||||
|
|
||||||
|
@ -5,8 +5,5 @@
|
|||||||
part / --size=5690 --fstype ext4
|
part / --size=5690 --fstype ext4
|
||||||
|
|
||||||
%post
|
%post
|
||||||
echo -n "Enabling initial-setup gui mode on startup"
|
|
||||||
ln -s /usr/lib/systemd/system/initial-setup-graphical.service /etc/systemd/system/graphical.target.wants/initial-setup-graphical.service
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -3,8 +3,5 @@
|
|||||||
%include fedora-lxde-common.ks
|
%include fedora-lxde-common.ks
|
||||||
|
|
||||||
%post
|
%post
|
||||||
echo -n "Enabling initial-setup gui mode on startup"
|
|
||||||
ln -s /usr/lib/systemd/system/initial-setup-graphical.service /etc/systemd/system/graphical.target.wants/initial-setup-graphical.service
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -2,14 +2,13 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-lxqt-common.ks
|
%include fedora-lxqt-common.ks
|
||||||
|
|
||||||
|
part / --size=3800 --fstype ext4 --asprimary
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
# trojita not available on non-x86 platforms
|
# trojita not available on non-x86 platforms
|
||||||
-trojita
|
-trojita
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%post
|
%post
|
||||||
echo -n "Enabling initial-setup gui mode on startup"
|
|
||||||
ln -s /usr/lib/systemd/system/initial-setup-graphical.service /etc/systemd/system/graphical.target.wants/initial-setup-graphical.service
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -5,8 +5,5 @@
|
|||||||
part / --size=5500 --fstype ext4
|
part / --size=5500 --fstype ext4
|
||||||
|
|
||||||
%post
|
%post
|
||||||
echo -n "Enabling initial-setup gui mode on startup"
|
|
||||||
ln -s /usr/lib/systemd/system/initial-setup-graphical.service /etc/systemd/system/graphical.target.wants/initial-setup-graphical.service
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -1,27 +1,10 @@
|
|||||||
%include fedora-arm-base.ks
|
%include fedora-arm-base.ks
|
||||||
|
%include fedora-minimal-common.ks
|
||||||
|
|
||||||
part /boot --size=512 --fstype ext4
|
part /boot --size=512 --fstype ext4
|
||||||
part swap --size=256 --fstype swap
|
part swap --size=256 --fstype swap
|
||||||
part / --size=1279 --fstype ext4
|
part / --size=1250 --fstype ext4
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
-@standard
|
-xkeyboard-config
|
||||||
-@dial-up
|
|
||||||
-initial-setup-gui
|
|
||||||
-generic-release*
|
|
||||||
-glibc-all-langpacks
|
|
||||||
glibc-langpack-en
|
|
||||||
iw
|
|
||||||
NetworkManager-wifi
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%post
|
|
||||||
|
|
||||||
# setup systemd to boot to the right runlevel
|
|
||||||
echo -n "Setting default runlevel to multiuser text mode"
|
|
||||||
rm -f /etc/systemd/system/default.target
|
|
||||||
ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
|
||||||
|
|
||||||
|
@ -1,10 +1,9 @@
|
|||||||
%include fedora-arm-base.ks
|
%include fedora-arm-base.ks
|
||||||
|
|
||||||
# server defaults to xfs for / so lets do so on arm also
|
# server defaults to xfs for / so lets do so on arm also
|
||||||
part / --size=3000 --fstype xfs
|
part / --size=2500 --fstype xfs
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
-@dial-up
|
|
||||||
# install the default groups for the server evironment since installing the environment is not working
|
# install the default groups for the server evironment since installing the environment is not working
|
||||||
@server-product
|
@server-product
|
||||||
@standard
|
@standard
|
||||||
|
@ -2,9 +2,8 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-soas-common.ks
|
%include fedora-soas-common.ks
|
||||||
|
|
||||||
|
part / --size=3300 --fstype ext4 --asprimary
|
||||||
|
|
||||||
%post
|
%post
|
||||||
echo -n "Enabling initial-setup gui mode on startup"
|
|
||||||
ln -s /usr/lib/systemd/system/initial-setup-graphical.service /etc/systemd/system/graphical.target.wants/initial-setup-graphical.service
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -10,4 +10,7 @@
|
|||||||
# Most of the ARM X accelerated drivers need some level of CMA allocation
|
# Most of the ARM X accelerated drivers need some level of CMA allocation
|
||||||
sed -i 's/\(append .*\)/\1 cma=192MB/' /boot/extlinux/extlinux.conf
|
sed -i 's/\(append .*\)/\1 cma=192MB/' /boot/extlinux/extlinux.conf
|
||||||
|
|
||||||
|
# Explicitly set graphical.target as default as this is how initial-setup detects which version to run
|
||||||
|
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -5,8 +5,5 @@
|
|||||||
part / --size=4000 --fstype ext4
|
part / --size=4000 --fstype ext4
|
||||||
|
|
||||||
%post
|
%post
|
||||||
echo -n "Enabling initial-setup gui mode on startup"
|
|
||||||
ln -s /usr/lib/systemd/system/initial-setup-graphical.service /etc/systemd/system/graphical.target.wants/initial-setup-graphical.service
|
|
||||||
echo .
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
# dedicated for Docker containers, and uses docker-storage-setup to
|
# dedicated for Docker containers, and uses docker-storage-setup to
|
||||||
# dynamically resize storage on boot.
|
# dynamically resize storage on boot.
|
||||||
|
|
||||||
text
|
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
|
||||||
lang en_US.UTF-8
|
lang en_US.UTF-8
|
||||||
keyboard us
|
keyboard us
|
||||||
timezone --utc Etc/UTC
|
timezone --utc Etc/UTC
|
||||||
@ -14,11 +14,10 @@ timezone --utc Etc/UTC
|
|||||||
auth --useshadow --passalgo=sha512
|
auth --useshadow --passalgo=sha512
|
||||||
selinux --enforcing
|
selinux --enforcing
|
||||||
rootpw --lock --iscrypted locked
|
rootpw --lock --iscrypted locked
|
||||||
user --name=none
|
|
||||||
|
|
||||||
firewall --disabled
|
firewall --disabled
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 net.ifnames=0"
|
||||||
|
|
||||||
network --bootproto=dhcp --device=link --activate --onboot=on
|
network --bootproto=dhcp --device=link --activate --onboot=on
|
||||||
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
||||||
@ -31,28 +30,38 @@ part pv.01 --grow
|
|||||||
volgroup atomicos pv.01
|
volgroup atomicos pv.01
|
||||||
logvol / --size=3000 --fstype="xfs" --name=root --vgname=atomicos
|
logvol / --size=3000 --fstype="xfs" --name=root --vgname=atomicos
|
||||||
|
|
||||||
# Equivalent of %include fedora-repo.ks
|
# Equivalent of %include fedora-repo.ks; note this uses the Bodhi ref, which we reset below
|
||||||
ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=https://kojipkgs.fedoraproject.org/compose/atomic/rawhide/ --ref=fedora-atomic/rawhide/x86_64/docker-host
|
ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=https://kojipkgs.fedoraproject.org/atomic/26/ --ref=fedora/26/x86_64/updates/atomic-host
|
||||||
|
|
||||||
reboot
|
reboot
|
||||||
|
|
||||||
%post --erroronfail
|
%post --erroronfail
|
||||||
# See https://github.com/projectatomic/rpm-ostree/issues/42
|
# Set the origin to the "main ref", distinct from /updates/ which is where bodhi writes.
|
||||||
|
# We want consumers of this image to track the two week releases.
|
||||||
|
ostree admin set-origin --index 0 fedora-atomic https://kojipkgs.fedoraproject.org/atomic/26/ fedora/26/x86_64/atomic-host
|
||||||
|
|
||||||
|
# Make sure the ref we're supposedly sitting on (according
|
||||||
|
# to the updated origin) exists.
|
||||||
|
ostree refs fedora-atomic:fedora/26/x86_64/updates/atomic-host --create fedora-atomic:fedora/26/x86_64/atomic-host
|
||||||
|
|
||||||
|
# Remove the old ref so that the commit eventually gets
|
||||||
|
# cleaned up.
|
||||||
|
ostree refs fedora-atomic:fedora/26/x86_64/updates/atomic-host --delete
|
||||||
|
|
||||||
|
# delete/add the remote with new options to enable gpg verification
|
||||||
ostree remote delete fedora-atomic
|
ostree remote delete fedora-atomic
|
||||||
ostree remote add --set=gpg-verify=false fedora-atomic 'https://dl.fedoraproject.org/pub/fedora/linux/atomic/rawhide/'
|
ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-26-primary fedora-atomic 'https://kojipkgs.fedoraproject.org/atomic/26/'
|
||||||
|
|
||||||
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
||||||
passwd -l root
|
passwd -l root
|
||||||
# remove the user anaconda forces us to make
|
|
||||||
userdel -r none
|
|
||||||
|
|
||||||
# Work around https://bugzilla.redhat.com/show_bug.cgi?id=1193590
|
# Work around https://bugzilla.redhat.com/show_bug.cgi?id=1193590
|
||||||
cp /etc/skel/.bash* /var/roothome
|
cp /etc/skel/.bash* /var/roothome
|
||||||
|
|
||||||
# Configure docker-storage-setup to resize the partition table on boot
|
# Configure docker-storage-setup to resize the partition table on boot
|
||||||
# https://github.com/projectatomic/docker-storage-setup/pull/25
|
# https://github.com/projectatomic/docker-storage-setup/pull/25
|
||||||
echo 'GROWPART=true' > /etc/sysconfig/docker-storage-setup
|
echo 'GROWPART=true' >> /etc/sysconfig/docker-storage-setup
|
||||||
|
|
||||||
echo -n "Getty fixes"
|
echo -n "Getty fixes"
|
||||||
# although we want console output going to the serial console, we don't
|
# although we want console output going to the serial console, we don't
|
||||||
@ -124,6 +133,9 @@ dd bs=1M if=/dev/zero of=/var/tmp/zeros || :
|
|||||||
rm -f /var/tmp/zeros
|
rm -f /var/tmp/zeros
|
||||||
echo "(Don't worry -- that out-of-space error was expected.)"
|
echo "(Don't worry -- that out-of-space error was expected.)"
|
||||||
|
|
||||||
|
# For trac ticket https://pagure.io/atomic-wg/issue/128
|
||||||
|
rm -f /etc/sysconfig/network-scripts/ifcfg-ens3
|
||||||
|
|
||||||
echo "Adding Developer Mode GRUB2 menu item."
|
echo "Adding Developer Mode GRUB2 menu item."
|
||||||
/usr/libexec/atomic-devmode/bootentry add
|
/usr/libexec/atomic-devmode/bootentry add
|
||||||
|
|
||||||
@ -131,4 +143,10 @@ echo "Adding Developer Mode GRUB2 menu item."
|
|||||||
# fails due to RHBZ #1369794
|
# fails due to RHBZ #1369794
|
||||||
/sbin/chkconfig network off
|
/sbin/chkconfig network off
|
||||||
|
|
||||||
|
# Anaconda is writing an /etc/resolv.conf from the install environment.
|
||||||
|
# The system should start out with an empty file, otherwise cloud-init
|
||||||
|
# will try to use this information and may error:
|
||||||
|
# https://bugs.launchpad.net/cloud-init/+bug/1670052
|
||||||
|
truncate -s 0 /etc/resolv.conf
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -16,19 +16,12 @@
|
|||||||
pidgin
|
pidgin
|
||||||
hexchat
|
hexchat
|
||||||
transmission
|
transmission
|
||||||
parole
|
|
||||||
|
|
||||||
# mp3 support
|
# mp3 support
|
||||||
gstreamer1-plugin-mpg123
|
gstreamer1-plugins-ugly-free
|
||||||
|
|
||||||
# make sure we have a graphical installer
|
|
||||||
gnome-software # for update-notification
|
|
||||||
dnfdragora # for graphical (GTK and ncurses) package-management
|
|
||||||
libyui-mga-gtk # GTK3-frontend for dnfdragora (graphical use)
|
|
||||||
libyui-mga-ncurses # Ncurses-frontend for dnfdragora (text-mode use)
|
|
||||||
|
|
||||||
# extra backgrounds
|
# extra backgrounds
|
||||||
desktop-backgrounds-basic
|
desktop-backgrounds-basic
|
||||||
f25-backgrounds-extras-gnome
|
f26-backgrounds-extras-gnome
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
%include fedora-cloud-base.ks
|
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyAMA0,115200n8"
|
|
||||||
|
|
||||||
part /boot --fstype="ext4" --size=500
|
|
||||||
part /boot/efi --fstype="vfat" --size=100
|
|
||||||
|
|
||||||
%packages
|
|
||||||
efibootmgr
|
|
||||||
grub2-efi
|
|
||||||
shim
|
|
||||||
%end
|
|
@ -1,10 +0,0 @@
|
|||||||
%include fedora-cloud-base.ks
|
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
|
||||||
|
|
||||||
part prepboot --fstype="prepboot" --size=4
|
|
||||||
part /boot --fstype="ext4" --size=500
|
|
||||||
|
|
||||||
%packages
|
|
||||||
grub2
|
|
||||||
%end
|
|
@ -19,7 +19,7 @@ rootpw vagrant
|
|||||||
# even on VirtualBox virt, we get a primary network device with "eth0" as the name
|
# even on VirtualBox virt, we get a primary network device with "eth0" as the name
|
||||||
# This simplifies things and allows a single disk image for both supported Vagrant
|
# This simplifies things and allows a single disk image for both supported Vagrant
|
||||||
# platforms (virtualbox and kvm)
|
# platforms (virtualbox and kvm)
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0" --extlinux
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0"
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
# The default koji Vagrantfile configuration uses rsync to sync files between
|
# The default koji Vagrantfile configuration uses rsync to sync files between
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
# This is a basic Fedora 21 spin designed to work in OpenStack and other
|
# This is a basic Fedora cloud spin designed to work in OpenStack and other
|
||||||
# private cloud environments. It's configured with cloud-init so it will
|
# private cloud environments. It's configured with cloud-init so it will
|
||||||
# take advantage of ec2-compatible metadata services for provisioning ssh
|
# take advantage of ec2-compatible metadata services for provisioning ssh
|
||||||
# keys. Cloud-init creates a user account named "fedora" with passwordless
|
# keys. Cloud-init creates a user account named "fedora" with passwordless
|
||||||
# sudo access. The root password is empty and locked by default.
|
# sudo access. The root password is empty and locked by default.
|
||||||
#
|
#
|
||||||
# Note that unlike the standard F20 install, this image has /tmp on disk
|
# Note that unlike the standard Fedora install, this image has /tmp on disk
|
||||||
# rather than in tmpfs, since memory is usually at a premium.
|
# rather than in tmpfs, since memory is usually at a premium.
|
||||||
#
|
#
|
||||||
# This kickstart file is designed to be used with ImageFactory (in Koji).
|
# This kickstart file is designed to be used with ImageFactory (in Koji).
|
||||||
@ -32,24 +32,17 @@ timezone --utc Etc/UTC
|
|||||||
auth --useshadow --passalgo=sha512
|
auth --useshadow --passalgo=sha512
|
||||||
selinux --enforcing
|
selinux --enforcing
|
||||||
rootpw --lock --iscrypted locked
|
rootpw --lock --iscrypted locked
|
||||||
user --name=none
|
|
||||||
|
|
||||||
firewall --disabled
|
firewall --disabled
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8" --extlinux
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
||||||
|
|
||||||
network --bootproto=dhcp --device=link --activate --onboot=on
|
network --bootproto=dhcp --device=link --activate --onboot=on
|
||||||
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
||||||
|
|
||||||
zerombr
|
zerombr
|
||||||
clearpart --all
|
clearpart --all
|
||||||
#
|
autopart --noboot --nohome --noswap --nolvm
|
||||||
# We need to disable 64bit options here or extlinux won't work.
|
|
||||||
# See: http://www.syslinux.org/wiki/index.php/Filesystem#ext4
|
|
||||||
# and
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1369934
|
|
||||||
#
|
|
||||||
part / --fstype ext4 --grow --mkfsoptions="-O ^64bit"
|
|
||||||
|
|
||||||
%include fedora-repo.ks
|
%include fedora-repo.ks
|
||||||
|
|
||||||
@ -88,7 +81,9 @@ which
|
|||||||
#-kbd
|
#-kbd
|
||||||
-uboot-tools
|
-uboot-tools
|
||||||
-kernel
|
-kernel
|
||||||
-grub2
|
# No need for plymouth. Also means anaconda won't put rhgb/quiet
|
||||||
|
# on kernel command line
|
||||||
|
-plymouth
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
@ -122,12 +117,6 @@ ln -sf /boot/grub/grub.conf /etc/grub.conf
|
|||||||
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
||||||
passwd -l root
|
passwd -l root
|
||||||
# remove the user anaconda forces us to make
|
|
||||||
userdel -r none
|
|
||||||
|
|
||||||
# Kickstart specifies timeout in seconds; syslinux uses 10ths.
|
|
||||||
# 0 means wait forever, so instead we'll go with 1.
|
|
||||||
sed -i 's/^timeout 10/timeout 1/' /boot/extlinux/extlinux.conf
|
|
||||||
|
|
||||||
# setup systemd to boot to the right runlevel
|
# setup systemd to boot to the right runlevel
|
||||||
echo -n "Setting default runlevel to multiuser text mode"
|
echo -n "Setting default runlevel to multiuser text mode"
|
||||||
@ -242,21 +231,13 @@ echo "-----------------------------------------------------------------------"
|
|||||||
# Note that running rpm recreates the rpm db files which aren't needed/wanted
|
# Note that running rpm recreates the rpm db files which aren't needed/wanted
|
||||||
rm -f /var/lib/rpm/__db*
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
|
||||||
# This is a temporary workaround for
|
|
||||||
# <https://bugzilla.redhat.com/show_bug.cgi?id=1147998>
|
|
||||||
# where sfdisk seems to be messing up the mbr.
|
|
||||||
# Long-term fix is to address this in anaconda directly and remove this.
|
|
||||||
# <https://bugzilla.redhat.com/show_bug.cgi?id=1015931>
|
|
||||||
dd if=/usr/share/syslinux/mbr.bin of=/dev/vda
|
|
||||||
|
|
||||||
# FIXME: is this still needed?
|
# FIXME: is this still needed?
|
||||||
echo "Fixing SELinux contexts."
|
echo "Fixing SELinux contexts."
|
||||||
touch /var/log/cron
|
touch /var/log/cron
|
||||||
touch /var/log/boot.log
|
touch /var/log/boot.log
|
||||||
chattr -i /boot/extlinux/ldlinux.sys
|
# ignore return code because UEFI systems with vfat filesystems
|
||||||
/usr/sbin/fixfiles -R -a restore
|
# that don't support selinux will give us errors
|
||||||
chattr +i /boot/extlinux/ldlinux.sys
|
/usr/sbin/fixfiles -R -a restore || true
|
||||||
|
|
||||||
echo "Zeroing out empty space."
|
echo "Zeroing out empty space."
|
||||||
# This forces the filesystem to reclaim space from deleted files
|
# This forces the filesystem to reclaim space from deleted files
|
||||||
@ -275,5 +256,11 @@ rm -f /etc/sysconfig/network-scripts/ifcfg-ens3
|
|||||||
rm -f /etc/machine-id
|
rm -f /etc/machine-id
|
||||||
touch /etc/machine-id
|
touch /etc/machine-id
|
||||||
|
|
||||||
|
# Anaconda is writing an /etc/resolv.conf from the install environment.
|
||||||
|
# The system should start out with an empty file, otherwise cloud-init
|
||||||
|
# will try to use this information and may error:
|
||||||
|
# https://bugs.launchpad.net/cloud-init/+bug/1670052
|
||||||
|
truncate -s 0 /etc/resolv.conf
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ user --name=none
|
|||||||
|
|
||||||
firewall --disabled
|
firewall --disabled
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8" --extlinux
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
||||||
|
|
||||||
network --bootproto=dhcp --device=eth0 --activate --onboot=on
|
network --bootproto=dhcp --device=eth0 --activate --onboot=on
|
||||||
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
||||||
@ -97,10 +97,6 @@ passwd -l root
|
|||||||
# remove the user anaconda forces us to make
|
# remove the user anaconda forces us to make
|
||||||
userdel -r none
|
userdel -r none
|
||||||
|
|
||||||
# Kickstart specifies timeout in seconds; syslinux uses 10ths.
|
|
||||||
# 0 means wait forever, so instead we'll go with 1.
|
|
||||||
sed -i 's/^timeout 10/timeout 1/' /boot/extlinux/extlinux.conf
|
|
||||||
|
|
||||||
# setup systemd to boot to the right runlevel
|
# setup systemd to boot to the right runlevel
|
||||||
echo -n "Setting default runlevel to multiuser text mode"
|
echo -n "Setting default runlevel to multiuser text mode"
|
||||||
rm -f /etc/systemd/system/default.target
|
rm -f /etc/systemd/system/default.target
|
||||||
@ -209,9 +205,7 @@ echo "Fixing SELinux contexts."
|
|||||||
touch /var/log/cron
|
touch /var/log/cron
|
||||||
touch /var/log/boot.log
|
touch /var/log/boot.log
|
||||||
mkdir -p /var/cache/yum
|
mkdir -p /var/cache/yum
|
||||||
chattr -i /boot/extlinux/ldlinux.sys
|
|
||||||
/usr/sbin/fixfiles -R -a restore
|
/usr/sbin/fixfiles -R -a restore
|
||||||
chattr +i /boot/extlinux/ldlinux.sys
|
|
||||||
|
|
||||||
echo "Zeroing out empty space."
|
echo "Zeroing out empty space."
|
||||||
# This forces the filesystem to reclaim space from deleted files
|
# This forces the filesystem to reclaim space from deleted files
|
||||||
|
@ -14,7 +14,7 @@ user --name=none
|
|||||||
|
|
||||||
firewall --disabled
|
firewall --disabled
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8" --extlinux
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
||||||
|
|
||||||
network --bootproto=dhcp --device=eth0 --activate --onboot=on
|
network --bootproto=dhcp --device=eth0 --activate --onboot=on
|
||||||
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
||||||
@ -88,10 +88,6 @@ passwd -l root
|
|||||||
# remove the user anaconda forces us to make
|
# remove the user anaconda forces us to make
|
||||||
userdel -r none
|
userdel -r none
|
||||||
|
|
||||||
# Kickstart specifies timeout in seconds; syslinux uses 10ths.
|
|
||||||
# 0 means wait forever, so instead we'll go with 1.
|
|
||||||
sed -i 's/^timeout 10/timeout 1/' /boot/extlinux/extlinux.conf
|
|
||||||
|
|
||||||
# setup systemd to boot to the right runlevel
|
# setup systemd to boot to the right runlevel
|
||||||
echo -n "Setting default runlevel to multiuser text mode"
|
echo -n "Setting default runlevel to multiuser text mode"
|
||||||
rm -f /etc/systemd/system/default.target
|
rm -f /etc/systemd/system/default.target
|
||||||
|
94
fedora-disk-base.ks
Normal file
94
fedora-disk-base.ks
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
# fedora-disk-base.ks
|
||||||
|
#
|
||||||
|
# Defines the basics for all kickstarts in the fedora-live branch
|
||||||
|
# Does not include package selection (other then mandatory)
|
||||||
|
# Does not include localization packages or configuration
|
||||||
|
#
|
||||||
|
# Does includes "default" language configuration (kickstarts including
|
||||||
|
# this template can override these settings)
|
||||||
|
|
||||||
|
text
|
||||||
|
lang en_US.UTF-8
|
||||||
|
keyboard us
|
||||||
|
timezone US/Eastern
|
||||||
|
auth --useshadow --passalgo=sha512
|
||||||
|
selinux --enforcing
|
||||||
|
firewall --enabled --service=mdns
|
||||||
|
services --enabled=sshd,NetworkManager,chronyd
|
||||||
|
network --bootproto=dhcp --device=link --activate
|
||||||
|
rootpw --lock --iscrypted locked
|
||||||
|
shutdown
|
||||||
|
|
||||||
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
||||||
|
|
||||||
|
zerombr
|
||||||
|
clearpart --all --initlabel --disklabel=msdos
|
||||||
|
|
||||||
|
# make sure that initial-setup runs and lets us do all the configuration bits
|
||||||
|
firstboot --reconfig
|
||||||
|
|
||||||
|
%include fedora-repo.ks
|
||||||
|
|
||||||
|
%packages
|
||||||
|
@core
|
||||||
|
@standard
|
||||||
|
@hardware-support
|
||||||
|
|
||||||
|
kernel
|
||||||
|
# remove this in %post
|
||||||
|
dracut-config-generic
|
||||||
|
-dracut-config-rescue
|
||||||
|
# install tools needed to manage and boot arm systems
|
||||||
|
@arm-tools
|
||||||
|
-uboot-images-armv7
|
||||||
|
rng-tools
|
||||||
|
chrony
|
||||||
|
bcm283x-firmware
|
||||||
|
initial-setup
|
||||||
|
-iwl*
|
||||||
|
-ipw*
|
||||||
|
-trousers-lib
|
||||||
|
-usb_modeswitch
|
||||||
|
-iproute-tc
|
||||||
|
-generic-release*
|
||||||
|
|
||||||
|
# make sure all the locales are available for inital0-setup and anaconda to work
|
||||||
|
glibc-all-langpacks
|
||||||
|
|
||||||
|
# workaround for consequence of RHBZ #1324623: without this, with
|
||||||
|
# yum-based creation tools, compose fails due to conflict between
|
||||||
|
# libcrypt and libcrypt-nss. dnf does not seem to have the same
|
||||||
|
# issue, so this may be dropped when appliance-creator is ported
|
||||||
|
# to dnf.
|
||||||
|
libcrypt-nss
|
||||||
|
-libcrypt
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
|
||||||
|
# Setup Raspberry Pi firmware
|
||||||
|
cp -Pr /usr/share/bcm283x-firmware/* /boot/efi/
|
||||||
|
mv -f /boot/efi/config-64.txt /boot/efi/config.txt
|
||||||
|
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
|
|
||||||
|
releasever=$(rpm -q --qf '%{version}\n' fedora-release)
|
||||||
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||||
|
echo "Packages within this disk image"
|
||||||
|
rpm -qa
|
||||||
|
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||||
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
# remove random seed, the newly installed instance should make it's own
|
||||||
|
rm -f /var/lib/systemd/random-seed
|
||||||
|
|
||||||
|
dnf -y remove dracut-config-generic
|
||||||
|
|
||||||
|
# Disable network service here, as doing it in the services line
|
||||||
|
# fails due to RHBZ #1369794
|
||||||
|
/sbin/chkconfig network off
|
||||||
|
|
||||||
|
# Remove machine-id on pre generated images
|
||||||
|
rm -f /etc/machine-id
|
||||||
|
touch /etc/machine-id
|
||||||
|
|
||||||
|
%end
|
10
fedora-disk-minimal.ks
Normal file
10
fedora-disk-minimal.ks
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
%include fedora-disk-base.ks
|
||||||
|
%include fedora-minimal-common.ks
|
||||||
|
|
||||||
|
services --enabled=sshd,NetworkManager,chronyd,initial-setup
|
||||||
|
|
||||||
|
autopart --type=plain
|
||||||
|
|
||||||
|
%packages
|
||||||
|
-xkeyboard-config
|
||||||
|
%end
|
27
fedora-disk-server.ks
Normal file
27
fedora-disk-server.ks
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
%include fedora-disk-base.ks
|
||||||
|
|
||||||
|
services --enabled=sshd,NetworkManager,chronyd,initial-setup
|
||||||
|
|
||||||
|
autopart
|
||||||
|
|
||||||
|
%packages
|
||||||
|
# install the default groups for the server evironment since installing the environment is not working
|
||||||
|
@server-product
|
||||||
|
@standard
|
||||||
|
@headless-management
|
||||||
|
@container-management
|
||||||
|
@domain-client
|
||||||
|
-initial-setup-gui
|
||||||
|
-generic-release*
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
|
||||||
|
# setup systemd to boot to the right runlevel
|
||||||
|
echo -n "Setting default runlevel to multiuser text mode"
|
||||||
|
rm -f /etc/systemd/system/default.target
|
||||||
|
ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
|
||||||
|
echo .
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
19
fedora-disk-workstation.ks
Normal file
19
fedora-disk-workstation.ks
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
%include fedora-disk-base.ks
|
||||||
|
%include fedora-disk-xbase.ks
|
||||||
|
%include fedora-workstation-common.ks
|
||||||
|
|
||||||
|
bootloader --append="cma=256MB"
|
||||||
|
|
||||||
|
services --enabled=sshd,NetworkManager,chronyd
|
||||||
|
|
||||||
|
autopart --type=plain
|
||||||
|
|
||||||
|
%packages
|
||||||
|
-initial-setup
|
||||||
|
-initial-setup-gui
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
|
||||||
|
%end
|
21
fedora-disk-xbase.ks
Normal file
21
fedora-disk-xbase.ks
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
%packages
|
||||||
|
@base-x
|
||||||
|
@fonts
|
||||||
|
@input-methods
|
||||||
|
@multimedia
|
||||||
|
@printing
|
||||||
|
-@guest-desktop-agents
|
||||||
|
|
||||||
|
# Need aajohan-comfortaa-fonts for the SVG rnotes images
|
||||||
|
aajohan-comfortaa-fonts
|
||||||
|
|
||||||
|
# anaconda needs the locales available to run for different locales
|
||||||
|
glibc-all-langpacks
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
# Explicitly set graphical.target as default as this is how initial-setup detects which version to run
|
||||||
|
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
|
||||||
|
|
||||||
|
%end
|
@ -1,6 +0,0 @@
|
|||||||
%include fedora-docker-base.ks
|
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
|
||||||
|
|
||||||
part /boot --fstype="ext4" --size=500
|
|
||||||
part /boot/efi --fstype="vfat" --size=100
|
|
@ -1,64 +1,15 @@
|
|||||||
# This is a minimal Fedora install designed to serve as a Docker base image.
|
# See docker-base-common.ks for details on how to hack on docker image kickstarts
|
||||||
#
|
# This base is a stripped back Fedora image without python3/dnf.
|
||||||
# To keep this image minimal it only installs English language. You need to change
|
# If you need that use the standard base image.
|
||||||
# dnf configuration in order to enable other languages.
|
|
||||||
#
|
|
||||||
### Hacking on this image ###
|
|
||||||
# This kickstart is processed using Anaconda-in-ImageFactory (via Koji typically),
|
|
||||||
# but you can run imagefactory locally too.
|
|
||||||
#
|
|
||||||
# To do so, testing local changes, first you'll need a TDL file. I store one here:
|
|
||||||
# https://git.fedorahosted.org/cgit/fedora-atomic.git/tree/fedora-atomic-rawhide.tdl
|
|
||||||
#
|
|
||||||
# Then, once you have imagefactory and imagefactory-plugins installed, run:
|
|
||||||
#
|
|
||||||
# imagefactory --debug target_image --template /path/to/fedora-atomic-rawhide.tdl --parameter offline_icicle true --file-parameter install_script $(pwd)/fedora-docker-base.ks docker
|
|
||||||
#
|
|
||||||
|
|
||||||
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
|
%include fedora-docker-common.ks
|
||||||
bootloader --disabled
|
|
||||||
timezone --isUtc --nontp Etc/UTC
|
|
||||||
rootpw --lock --iscrypted locked
|
|
||||||
|
|
||||||
keyboard us
|
|
||||||
zerombr
|
|
||||||
clearpart --all
|
|
||||||
part / --fstype ext4 --grow
|
|
||||||
network --bootproto=dhcp --device=link --activate --onboot=on
|
|
||||||
reboot
|
|
||||||
|
|
||||||
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps
|
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps
|
||||||
bash
|
|
||||||
fedora-release
|
|
||||||
microdnf
|
microdnf
|
||||||
-kernel
|
|
||||||
-e2fsprogs
|
|
||||||
-libss # used by e2fsprogs
|
|
||||||
-fuse-libs
|
|
||||||
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%post --erroronfail --log=/root/anaconda-post.log
|
%post --erroronfail --log=/root/anaconda-post.log
|
||||||
set -eux
|
|
||||||
|
|
||||||
# Set install langs macro so that new rpms that get installed will
|
|
||||||
# only install langs that we limit it to.
|
|
||||||
LANG="en_US"
|
|
||||||
echo "%_install_langs $LANG" > /etc/rpm/macros.image-language-conf
|
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1400682
|
|
||||||
echo "Import RPM GPG key"
|
|
||||||
releasever=$(rpm -q --qf '%{version}\n' fedora-release)
|
|
||||||
basearch=$(uname -i)
|
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
|
||||||
|
|
||||||
echo "# fstab intentionally empty for containers" > /etc/fstab
|
|
||||||
|
|
||||||
# Remove machine-id on pre generated images
|
|
||||||
rm -fv /etc/machine-id
|
|
||||||
touch /etc/machine-id
|
|
||||||
|
|
||||||
# remove some random help txt files
|
# remove some random help txt files
|
||||||
rm -fv usr/share/gnupg/help*.txt
|
rm -fv usr/share/gnupg/help*.txt
|
||||||
|
|
||||||
@ -88,7 +39,7 @@ mv /usr/share/zoneinfo/UTC /etc/localtime
|
|||||||
rm -rfv /usr/share/zoneinfo
|
rm -rfv /usr/share/zoneinfo
|
||||||
|
|
||||||
# Final pruning
|
# Final pruning
|
||||||
rm -rfv var/cache/* var/log/* tmp/*
|
rm -rfv /var/cache/* /var/log/* /tmp/*
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
%include fedora-docker-base.ks
|
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
|
||||||
|
|
||||||
part prepboot --fstype="prepboot" --size=4
|
|
@ -1,67 +1,27 @@
|
|||||||
# This is a minimal Fedora install designed to serve as a Docker base image.
|
# See docker-base-common.ks for details on how to hack on docker image kickstarts
|
||||||
#
|
# This base is a standard Fedora image with python3 and dnf
|
||||||
# To keep this image minimal it only installs English language. You need to change
|
|
||||||
# dnf configuration in order to enable other languages.
|
|
||||||
#
|
|
||||||
### Hacking on this image ###
|
|
||||||
# This kickstart is processed using Anaconda-in-ImageFactory (via Koji typically),
|
|
||||||
# but you can run imagefactory locally too.
|
|
||||||
#
|
|
||||||
# To do so, testing local changes, first you'll need a TDL file. I store one here:
|
|
||||||
# https://git.fedorahosted.org/cgit/fedora-atomic.git/tree/fedora-atomic-rawhide.tdl
|
|
||||||
#
|
|
||||||
# Then, once you have imagefactory and imagefactory-plugins installed, run:
|
|
||||||
#
|
|
||||||
# imagefactory --debug target_image --template /path/to/fedora-atomic-rawhide.tdl --parameter offline_icicle true --file-parameter install_script $(pwd)/fedora-docker-base.ks docker
|
|
||||||
#
|
|
||||||
|
|
||||||
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
|
%include fedora-docker-common.ks
|
||||||
bootloader --disabled
|
|
||||||
timezone --isUtc --nontp Etc/UTC
|
|
||||||
rootpw --lock --iscrypted locked
|
|
||||||
|
|
||||||
keyboard us
|
|
||||||
zerombr
|
|
||||||
clearpart --all
|
|
||||||
part / --fstype ext4 --grow
|
|
||||||
network --bootproto=dhcp --device=link --activate --onboot=on
|
|
||||||
reboot
|
|
||||||
|
|
||||||
%packages --excludedocs --instLangs=en --nocore
|
%packages --excludedocs --instLangs=en --nocore
|
||||||
bash
|
|
||||||
tar # https://bugzilla.redhat.com/show_bug.cgi?id=1409920
|
|
||||||
fedora-release
|
|
||||||
rootfiles
|
rootfiles
|
||||||
|
tar # https://bugzilla.redhat.com/show_bug.cgi?id=1409920
|
||||||
vim-minimal
|
vim-minimal
|
||||||
dnf
|
dnf
|
||||||
dnf-yum # https://fedorahosted.org/fesco/ticket/1312#comment:29
|
dnf-yum # https://fedorahosted.org/fesco/ticket/1312#comment:29
|
||||||
sssd-client
|
sssd-client
|
||||||
#fakesystemd #TODO: waiting for review https://bugzilla.redhat.com/show_bug.cgi?id=1118740
|
|
||||||
-kernel
|
|
||||||
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%post --erroronfail --log=/root/anaconda-post.log
|
%post --erroronfail --log=/root/anaconda-post.log
|
||||||
set -eux
|
|
||||||
|
|
||||||
# Set install langs macro so that new rpms that get installed will
|
|
||||||
# only install langs that we limit it to.
|
|
||||||
LANG="en_US"
|
|
||||||
echo "%_install_langs $LANG" > /etc/rpm/macros.image-language-conf
|
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1400682
|
|
||||||
echo "Import RPM GPG key"
|
|
||||||
releasever=$(rpm -q --qf '%{version}\n' fedora-release)
|
|
||||||
basearch=$(uname -i)
|
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
|
||||||
|
|
||||||
echo "# fstab intentionally empty for containers" > /etc/fstab
|
|
||||||
|
|
||||||
# remove some extraneous files
|
# remove some extraneous files
|
||||||
rm -rf /var/cache/dnf/*
|
rm -rf /var/cache/dnf/*
|
||||||
rm -rf /tmp/*
|
rm -rf /tmp/*
|
||||||
|
|
||||||
|
# https://pagure.io/atomic-wg/issue/308
|
||||||
|
printf "tsflags=nodocs\n" >>/etc/dnf/dnf.conf
|
||||||
|
|
||||||
#Mask mount units and getty service so that we don't get login prompt
|
#Mask mount units and getty service so that we don't get login prompt
|
||||||
systemctl mask systemd-remount-fs.service dev-hugepages.mount sys-fs-fuse-connections.mount systemd-logind.service getty.target console-getty.service
|
systemctl mask systemd-remount-fs.service dev-hugepages.mount sys-fs-fuse-connections.mount systemd-logind.service getty.target console-getty.service
|
||||||
|
|
||||||
@ -69,11 +29,15 @@ systemctl mask systemd-remount-fs.service dev-hugepages.mount sys-fs-fuse-connec
|
|||||||
# Fix /run/lock breakage since it's not tmpfs in docker
|
# Fix /run/lock breakage since it's not tmpfs in docker
|
||||||
# This unmounts /run (tmpfs) and then recreates the files
|
# This unmounts /run (tmpfs) and then recreates the files
|
||||||
# in the /run directory on the root filesystem of the container
|
# in the /run directory on the root filesystem of the container
|
||||||
|
#
|
||||||
|
# We ignore the return code of the systemd-tmpfiles command because
|
||||||
|
# at this point we have already removed the /etc/machine-id and all
|
||||||
|
# tmpfiles lines with %m in them will fail and cause a bad return
|
||||||
|
# code. Example failure:
|
||||||
|
# [/usr/lib/tmpfiles.d/systemd.conf:26] Failed to replace specifiers: /run/log/journal/%m
|
||||||
|
#
|
||||||
umount /run
|
umount /run
|
||||||
systemd-tmpfiles --create --boot
|
systemd-tmpfiles --prefix=/run/ --prefix=/var/run/ --create --boot || true
|
||||||
|
rm /run/nologin # https://pagure.io/atomic-wg/issue/316
|
||||||
# Remove machine-id on pre generated images
|
|
||||||
rm -f /etc/machine-id
|
|
||||||
touch /etc/machine-id
|
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
68
fedora-docker-common.ks
Normal file
68
fedora-docker-common.ks
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
# This is the common bits between Fedora Docker base image.
|
||||||
|
#
|
||||||
|
# To keep this image minimal it only installs English language. You need to change
|
||||||
|
# dnf configuration in order to enable other languages.
|
||||||
|
#
|
||||||
|
# ## Hacking on this image ###
|
||||||
|
# This kickstart is processed using Anaconda-in-ImageFactory (via Koji typically),
|
||||||
|
# but you can run imagefactory locally too.
|
||||||
|
#
|
||||||
|
# To do so, testing local changes, first you'll need a TDL file. I store one here:
|
||||||
|
# https://git.fedorahosted.org/cgit/fedora-atomic.git/tree/fedora-atomic-rawhide.tdl
|
||||||
|
#
|
||||||
|
# Then, once you have imagefactory and imagefactory-plugins installed, run:
|
||||||
|
#
|
||||||
|
# ksflatten -c fedora-docker-base[-minimal].ks -o fedora-docker-base-test.ks
|
||||||
|
# imagefactory --debug target_image --template /path/to/fedora-atomic-rawhide.tdl --parameter offline_icicle true --file-parameter install_script $(pwd)/fedora-docker-base-test.ks docker
|
||||||
|
#
|
||||||
|
|
||||||
|
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
|
||||||
|
bootloader --disabled
|
||||||
|
timezone --isUtc --nontp Etc/UTC
|
||||||
|
rootpw --lock --iscrypted locked
|
||||||
|
keyboard us
|
||||||
|
network --bootproto=dhcp --device=link --activate --onboot=on
|
||||||
|
reboot
|
||||||
|
|
||||||
|
# boot partitions are irrelevant as the final docker image is a tarball
|
||||||
|
zerombr
|
||||||
|
clearpart --all
|
||||||
|
autopart --noboot --nohome --noswap --nolvm
|
||||||
|
|
||||||
|
%packages --excludedocs --instLangs=en --nocore
|
||||||
|
fedora-release
|
||||||
|
bash
|
||||||
|
-kernel
|
||||||
|
-dosfstools
|
||||||
|
-e2fsprogs
|
||||||
|
-fuse-libs
|
||||||
|
-gnupg2-smime
|
||||||
|
-libss # used by e2fsprogs
|
||||||
|
-libusbx
|
||||||
|
-pinentry
|
||||||
|
-shared-mime-info
|
||||||
|
-trousers
|
||||||
|
-xkeyboard-config
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post --erroronfail --log=/root/anaconda-post.log
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
# Set install langs macro so that new rpms that get installed will
|
||||||
|
# only install langs that we limit it to.
|
||||||
|
LANG="en_US"
|
||||||
|
echo "%_install_langs $LANG" > /etc/rpm/macros.image-language-conf
|
||||||
|
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1400682
|
||||||
|
echo "Import RPM GPG key"
|
||||||
|
releasever=$(rpm -q --qf '%{version}\n' fedora-release)
|
||||||
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||||
|
|
||||||
|
echo "# fstab intentionally empty for containers" > /etc/fstab
|
||||||
|
|
||||||
|
# Remove machine-id on pre generated images
|
||||||
|
rm -f /etc/machine-id
|
||||||
|
touch /etc/machine-id
|
||||||
|
|
||||||
|
%end
|
@ -65,9 +65,6 @@ wqy-microhei-fonts # a compact CJK font, to replace:
|
|||||||
-ibus*
|
-ibus*
|
||||||
-iok
|
-iok
|
||||||
|
|
||||||
# save some space (from @standard)
|
|
||||||
-make
|
|
||||||
|
|
||||||
# admin-tools
|
# admin-tools
|
||||||
-gnome-disk-utility
|
-gnome-disk-utility
|
||||||
# kcm_clock still lacks some features, so keep system-config-date around
|
# kcm_clock still lacks some features, so keep system-config-date around
|
||||||
|
@ -32,6 +32,9 @@ sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/li
|
|||||||
# set Cinnamon as default session, otherwise login will fail
|
# set Cinnamon as default session, otherwise login will fail
|
||||||
sed -i 's/^#user-session=.*/user-session=cinnamon/' /etc/lightdm/lightdm.conf
|
sed -i 's/^#user-session=.*/user-session=cinnamon/' /etc/lightdm/lightdm.conf
|
||||||
|
|
||||||
|
# no updater applet in live environment
|
||||||
|
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
|
||||||
|
|
||||||
# Show harddisk install on the desktop
|
# Show harddisk install on the desktop
|
||||||
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
|
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
|
||||||
mkdir /home/liveuser/Desktop
|
mkdir /home/liveuser/Desktop
|
||||||
|
@ -49,8 +49,8 @@ gnome-calendar
|
|||||||
gnome-photos
|
gnome-photos
|
||||||
|
|
||||||
# Extra wallpapers
|
# Extra wallpapers
|
||||||
f25-backgrounds-extras-base
|
f26-backgrounds-extras-base
|
||||||
f25-backgrounds-extras-gnome
|
f26-backgrounds-extras-gnome
|
||||||
|
|
||||||
|
|
||||||
# removal of unneeded applications
|
# removal of unneeded applications
|
||||||
|
@ -55,11 +55,9 @@ cat > /home/liveuser/.config/akonadi/akonadiserverrc << AKONADI_EOF
|
|||||||
Driver=QSQLITE3
|
Driver=QSQLITE3
|
||||||
AKONADI_EOF
|
AKONADI_EOF
|
||||||
|
|
||||||
# Disable plasma-pk-updates
|
# Disable plasma-pk-updates (bz #1436873 and 1206760)
|
||||||
sed -i \
|
echo "Removing plasma-pk-updates package."
|
||||||
-e "s|^X-KDE-PluginInfo-EnabledByDefault=true|X-KDE-PluginInfo-EnabledByDefault=false|g" \
|
rpm -e plasma-pk-updates
|
||||||
/usr/share/plasma/plasmoids/org.kde.plasma.pkupdates/metadata.desktop \
|
|
||||||
/usr/share/kservices5/plasma-applet-org.kde.plasma.pkupdates.desktop
|
|
||||||
|
|
||||||
# Disable baloo
|
# Disable baloo
|
||||||
cat > /home/liveuser/.config/baloofilerc << BALOO_EOF
|
cat > /home/liveuser/.config/baloofilerc << BALOO_EOF
|
||||||
|
@ -38,6 +38,9 @@ cat > /etc/xdg/libfm/pref-apps.conf << FOE
|
|||||||
WebBrowser=qupzilla.desktop
|
WebBrowser=qupzilla.desktop
|
||||||
FOE
|
FOE
|
||||||
|
|
||||||
|
# no updater applet in live environment
|
||||||
|
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
|
||||||
|
|
||||||
# make sure to set the right permissions and selinux contexts
|
# make sure to set the right permissions and selinux contexts
|
||||||
chown -R liveuser:liveuser /home/liveuser/
|
chown -R liveuser:liveuser /home/liveuser/
|
||||||
restorecon -R /home/liveuser/
|
restorecon -R /home/liveuser/
|
||||||
|
@ -21,6 +21,9 @@ fi
|
|||||||
mkdir /home/liveuser/Desktop
|
mkdir /home/liveuser/Desktop
|
||||||
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
|
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
|
||||||
|
|
||||||
|
# and mark it as executable
|
||||||
|
chmod +x /home/liveuser/Desktop/liveinst.desktop
|
||||||
|
|
||||||
# rebuild schema cache with any overrides we installed
|
# rebuild schema cache with any overrides we installed
|
||||||
glib-compile-schemas /usr/share/glib-2.0/schemas
|
glib-compile-schemas /usr/share/glib-2.0/schemas
|
||||||
|
|
||||||
@ -37,6 +40,9 @@ if [ -f /etc/PackageKit/CommandNotFound.conf ]; then
|
|||||||
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
|
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# no updater applet in live environment
|
||||||
|
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
|
||||||
|
|
||||||
# make sure to set the right permissions and selinux contexts
|
# make sure to set the right permissions and selinux contexts
|
||||||
chown -R liveuser:liveuser /home/liveuser/
|
chown -R liveuser:liveuser /home/liveuser/
|
||||||
restorecon -R /home/liveuser/
|
restorecon -R /home/liveuser/
|
||||||
|
@ -113,7 +113,6 @@ valgrind-openmpi
|
|||||||
libgomp
|
libgomp
|
||||||
python-pp
|
python-pp
|
||||||
mpi4py-openmpi
|
mpi4py-openmpi
|
||||||
python3-mpi4py-openmpi
|
|
||||||
|
|
||||||
#Version control- a GUI for each as well
|
#Version control- a GUI for each as well
|
||||||
|
|
||||||
|
@ -4,7 +4,11 @@
|
|||||||
|
|
||||||
%include fedora-live-base.ks
|
%include fedora-live-base.ks
|
||||||
%include fedora-workstation-common.ks
|
%include fedora-workstation-common.ks
|
||||||
%include snippets/packagekit-cached-metadata.ks
|
#
|
||||||
|
# Disable this for now as packagekit is causing compose failures
|
||||||
|
# by leaving a gpg-agent around holding /dev/null open.
|
||||||
|
#
|
||||||
|
#include snippets/packagekit-cached-metadata.ks
|
||||||
|
|
||||||
part / --size 6656
|
part / --size 6656
|
||||||
|
|
||||||
|
@ -9,38 +9,13 @@
|
|||||||
|
|
||||||
%packages
|
%packages
|
||||||
@lxqt
|
@lxqt
|
||||||
|
@lxqt-apps
|
||||||
|
@lxqt-media
|
||||||
@networkmanager-submodules
|
@networkmanager-submodules
|
||||||
|
|
||||||
# for nm applet
|
# for nm applet
|
||||||
gnome-keyring
|
gnome-keyring
|
||||||
|
|
||||||
# We have obconf-qt now
|
|
||||||
obconf-qt
|
|
||||||
-obconf
|
|
||||||
|
|
||||||
# No sddm-breeze, this pulls in huge parts of plasma, but use breeze for LXQt
|
|
||||||
breeze-gtk
|
|
||||||
plasma-breeze
|
|
||||||
-sddm-breeze
|
|
||||||
|
|
||||||
# no kwallet running by default
|
|
||||||
-qupzilla-kwallet
|
|
||||||
|
|
||||||
# Pull in some useful applications, use KDE ones if necessary
|
|
||||||
dnfdragora
|
|
||||||
dragon
|
|
||||||
kcalc
|
|
||||||
kwrite
|
|
||||||
lxappearance
|
|
||||||
lximage-qt
|
|
||||||
lxqt-sudo
|
|
||||||
pavucontrol-qt
|
|
||||||
psi-plus
|
|
||||||
qlipper
|
|
||||||
quassel
|
|
||||||
qpdfview-qt5
|
|
||||||
transmission-qt
|
|
||||||
trojita
|
|
||||||
yarock
|
|
||||||
|
|
||||||
# l10n
|
# l10n
|
||||||
lxqt-l10n
|
lxqt-l10n
|
||||||
@ -51,9 +26,6 @@ pavucontrol-qt-l10n
|
|||||||
# MP3
|
# MP3
|
||||||
gstreamer1-plugin-mpg123
|
gstreamer1-plugin-mpg123
|
||||||
|
|
||||||
# We want Qt GUI for libyui used by dnfdragora
|
|
||||||
libyui-mga-qt
|
|
||||||
|
|
||||||
# remove unneeded stuff to get a lightweight system
|
# remove unneeded stuff to get a lightweight system
|
||||||
# fonts (we make no bones about admitting we're english-only)
|
# fonts (we make no bones about admitting we're english-only)
|
||||||
wqy-microhei-fonts # a compact CJK font, to replace:
|
wqy-microhei-fonts # a compact CJK font, to replace:
|
||||||
@ -72,5 +44,9 @@ wqy-microhei-fonts # a compact CJK font, to replace:
|
|||||||
-ibus*
|
-ibus*
|
||||||
-iok
|
-iok
|
||||||
|
|
||||||
|
# Fix https://bugzilla.redhat.com/show_bug.cgi?id=1429132
|
||||||
|
# Why is this not pulled in by anaconda???
|
||||||
|
storaged
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
%packages
|
%packages
|
||||||
-PackageKit* # we switched to yumex, so we don't need this
|
-PackageKit* # we switched to yumex, so we don't need this
|
||||||
PackageKit-command-not-found # nifty for installing not-found cli-commands
|
|
||||||
firefox
|
firefox
|
||||||
@mate
|
@mate
|
||||||
compiz
|
compiz
|
||||||
@ -23,11 +22,6 @@ blueberry
|
|||||||
caja-actions
|
caja-actions
|
||||||
mate-disk-usage-analyzer
|
mate-disk-usage-analyzer
|
||||||
|
|
||||||
# more backgrounds
|
|
||||||
f25-backgrounds-base
|
|
||||||
f25-backgrounds-mate
|
|
||||||
f25-backgrounds-extras-base
|
|
||||||
|
|
||||||
# system tools
|
# system tools
|
||||||
system-config-printer
|
system-config-printer
|
||||||
system-config-printer-applet
|
system-config-printer-applet
|
||||||
@ -36,7 +30,7 @@ lightdm-gtk-greeter-settings
|
|||||||
# audio video
|
# audio video
|
||||||
parole
|
parole
|
||||||
exaile
|
exaile
|
||||||
gstreamer1-plugin-mpg123 # mp3 support
|
gstreamer1-plugins-ugly-free # mp3 support
|
||||||
|
|
||||||
# blacklist applications which breaks mate-desktop
|
# blacklist applications which breaks mate-desktop
|
||||||
-audacious
|
-audacious
|
||||||
@ -60,13 +54,9 @@ nss-mdns
|
|||||||
-brasero
|
-brasero
|
||||||
-colord
|
-colord
|
||||||
-fedora-icon-theme
|
-fedora-icon-theme
|
||||||
-GConf2
|
|
||||||
-gnome-bluetooth-libs
|
|
||||||
-gnome-icon-theme
|
-gnome-icon-theme
|
||||||
-gnome-icon-theme-symbolic
|
-gnome-icon-theme-symbolic
|
||||||
-gnome-software
|
-gnome-software
|
||||||
-gnome-themes
|
|
||||||
-gnome-themes-standard
|
|
||||||
-gnome-user-docs
|
-gnome-user-docs
|
||||||
|
|
||||||
-@mate-applications
|
-@mate-applications
|
||||||
|
19
fedora-minimal-common.ks
Normal file
19
fedora-minimal-common.ks
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
%packages
|
||||||
|
-@standard
|
||||||
|
-initial-setup-gui
|
||||||
|
-generic-release*
|
||||||
|
-glibc-all-langpacks
|
||||||
|
glibc-langpack-en
|
||||||
|
iw
|
||||||
|
NetworkManager-wifi
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
|
||||||
|
# setup systemd to boot to the right runlevel
|
||||||
|
echo -n "Setting default runlevel to multiuser text mode"
|
||||||
|
rm -f /etc/systemd/system/default.target
|
||||||
|
ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
|
||||||
|
echo .
|
||||||
|
|
||||||
|
%end
|
81
fedora-modular-disk-minimal.ks
Normal file
81
fedora-modular-disk-minimal.ks
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
text
|
||||||
|
lang en_US.UTF-8
|
||||||
|
keyboard us
|
||||||
|
timezone US/Eastern
|
||||||
|
auth --useshadow --passalgo=sha512
|
||||||
|
selinux --enforcing
|
||||||
|
# Disabled for modular compose (for now)
|
||||||
|
#firewall --enabled --service=mdns
|
||||||
|
# Disabled for modular compose (for now)
|
||||||
|
#services --enabled=sshd,NetworkManager,chronyd,initial-setup
|
||||||
|
network --bootproto=dhcp --device=link --activate
|
||||||
|
rootpw --lock --iscrypted locked
|
||||||
|
shutdown
|
||||||
|
|
||||||
|
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
||||||
|
|
||||||
|
zerombr
|
||||||
|
clearpart --all --initlabel --disklabel=msdos
|
||||||
|
autopart --type=plain
|
||||||
|
|
||||||
|
# make sure that initial-setup runs and lets us do all the configuration bits
|
||||||
|
firstboot --reconfig
|
||||||
|
|
||||||
|
%include fedora-repo.ks
|
||||||
|
|
||||||
|
%packages --excludedocs --excludeWeakdeps --nocore
|
||||||
|
bash
|
||||||
|
fedora-modular-release
|
||||||
|
filesystem
|
||||||
|
coreutils-single
|
||||||
|
util-linux
|
||||||
|
rpm
|
||||||
|
shadow-utils
|
||||||
|
microdnf
|
||||||
|
glibc-minimal-langpack
|
||||||
|
grubby
|
||||||
|
kernel
|
||||||
|
libcrypt
|
||||||
|
sssd-client
|
||||||
|
dhcp-client
|
||||||
|
-fedora-logos
|
||||||
|
-coreutils
|
||||||
|
-dosfstools
|
||||||
|
-e2fsprogs
|
||||||
|
-fuse-libs
|
||||||
|
-gnupg2-smime
|
||||||
|
-libss # used by e2fsprogs
|
||||||
|
-libusbx
|
||||||
|
-pinentry
|
||||||
|
-shared-mime-info
|
||||||
|
-trousers
|
||||||
|
-xkeyboard-config
|
||||||
|
-dracut
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
|
||||||
|
# Setup Raspberry Pi firmware
|
||||||
|
#cp -Pr /usr/share/bcm283x-firmware/* /boot/efi/
|
||||||
|
mv -f /boot/efi/config-64.txt /boot/efi/config.txt
|
||||||
|
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
|
|
||||||
|
releasever=$(rpm -q --qf '%{version}\n' fedora-modular-release)
|
||||||
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||||
|
echo "Packages within this disk image"
|
||||||
|
rpm -qa
|
||||||
|
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||||
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
# remove random seed, the newly installed instance should make it's own
|
||||||
|
rm -f /var/lib/systemd/random-seed
|
||||||
|
|
||||||
|
# Disable network service here, as doing it in the services line
|
||||||
|
# fails due to RHBZ #1369794
|
||||||
|
/sbin/chkconfig network off
|
||||||
|
|
||||||
|
# Remove machine-id on pre generated images
|
||||||
|
rm -f /etc/machine-id
|
||||||
|
touch /etc/machine-id
|
||||||
|
|
||||||
|
%end
|
70
fedora-modular-docker-base-minimal.ks
Normal file
70
fedora-modular-docker-base-minimal.ks
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
# See docker-base-common.ks for details on how to hack on docker image kickstarts
|
||||||
|
# This base is a stripped back Fedora image without python3/dnf.
|
||||||
|
# If you need that use the standard base image.
|
||||||
|
|
||||||
|
%include fedora-modular-docker-common.ks
|
||||||
|
|
||||||
|
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps
|
||||||
|
microdnf
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post --erroronfail --log=/root/anaconda-post.log
|
||||||
|
# remove some random help txt files
|
||||||
|
rm -fv usr/share/gnupg/help*.txt
|
||||||
|
|
||||||
|
# Pruning random things
|
||||||
|
rm usr/lib/rpm/rpm.daily
|
||||||
|
rm -rfv usr/lib64/nss/unsupported-tools/ # unsupported
|
||||||
|
|
||||||
|
# Statically linked crap
|
||||||
|
rm -fv usr/sbin/{glibc_post_upgrade.x86_64,sln}
|
||||||
|
ln usr/bin/ln usr/sbin/sln
|
||||||
|
|
||||||
|
# Remove some dnf info
|
||||||
|
rm -rfv /var/lib/dnf
|
||||||
|
|
||||||
|
# don't need icons
|
||||||
|
rm -rfv /usr/share/icons/*
|
||||||
|
|
||||||
|
#some random not-that-useful binaries
|
||||||
|
rm -fv /usr/bin/pinky
|
||||||
|
|
||||||
|
# we lose presets by removing /usr/lib/systemd but we do not care
|
||||||
|
rm -rfv /usr/lib/systemd
|
||||||
|
|
||||||
|
# if you want to change the timezone, bind-mount it from the host or reinstall tzdata
|
||||||
|
rm -fv /etc/localtime
|
||||||
|
mv /usr/share/zoneinfo/UTC /etc/localtime
|
||||||
|
rm -rfv /usr/share/zoneinfo
|
||||||
|
|
||||||
|
# Final pruning
|
||||||
|
rm -rfv /var/cache/* /var/log/* /tmp/*
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post --nochroot --erroronfail --log=/mnt/sysimage/root/anaconda-post-nochroot.log
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1343138
|
||||||
|
# Fix /run/lock breakage since it's not tmpfs in docker
|
||||||
|
# This unmounts /run (tmpfs) and then recreates the files
|
||||||
|
# in the /run directory on the root filesystem of the container
|
||||||
|
# NOTE: run this in nochroot because "umount" does not exist in chroot
|
||||||
|
umount /mnt/sysimage/run
|
||||||
|
# The file that specifies the /run/lock tmpfile is
|
||||||
|
# /usr/lib/tmpfiles.d/legacy.conf, which is part of the systemd
|
||||||
|
# rpm that isn't included in this image. We'll create the /run/lock
|
||||||
|
# file here manually with the settings from legacy.conf
|
||||||
|
# NOTE: chroot to run "install" because it is not in anaconda env
|
||||||
|
chroot /mnt/sysimage install -d /run/lock -m 0755 -o root -g root
|
||||||
|
|
||||||
|
|
||||||
|
# See: https://bugzilla.redhat.com/show_bug.cgi?id=1051816
|
||||||
|
# NOTE: run this in nochroot because "find" does not exist in chroot
|
||||||
|
KEEPLANG=en_US
|
||||||
|
for dir in locale i18n; do
|
||||||
|
find /mnt/sysimage/usr/share/${dir} -mindepth 1 -maxdepth 1 -type d -not \( -name "${KEEPLANG}" -o -name POSIX \) -exec rm -rfv {} +
|
||||||
|
done
|
||||||
|
|
||||||
|
%end
|
75
fedora-modular-docker-common.ks
Normal file
75
fedora-modular-docker-common.ks
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
# This is the common bits between Docker base images based on Modular Fedora.
|
||||||
|
#
|
||||||
|
# To keep this image minimal it only installs English language. You need to change
|
||||||
|
# dnf configuration in order to enable other languages.
|
||||||
|
#
|
||||||
|
# ## Hacking on this image ###
|
||||||
|
# This kickstart is processed using Anaconda-in-ImageFactory (via Koji typically),
|
||||||
|
# but you can run imagefactory locally too.
|
||||||
|
#
|
||||||
|
# To do so, testing local changes, first you'll need a TDL file. I store one here:
|
||||||
|
# https://pagure.io/fedora-atomic/raw/master/f/fedora-atomic-rawhide.tdl
|
||||||
|
#
|
||||||
|
# Then, once you have imagefactory and imagefactory-plugins installed, run:
|
||||||
|
#
|
||||||
|
# ksflatten -c fedora-modular-base[-minimal].ks -o fedora-modular-base-test.ks
|
||||||
|
# imagefactory --debug target_image --template /path/to/fedora-atomic-rawhide.tdl --parameter offline_icicle true --file-parameter install_script $(pwd)/fedora-modular-base-test.ks modular
|
||||||
|
#
|
||||||
|
|
||||||
|
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
|
||||||
|
bootloader --disabled
|
||||||
|
timezone --isUtc --nontp Etc/UTC
|
||||||
|
rootpw --lock --iscrypted locked
|
||||||
|
keyboard us
|
||||||
|
network --bootproto=dhcp --device=link --activate --onboot=on
|
||||||
|
reboot
|
||||||
|
|
||||||
|
# boot partitions are irrelevant as the final docker image is a tarball
|
||||||
|
zerombr
|
||||||
|
clearpart --all
|
||||||
|
autopart --noboot --nohome --noswap --nolvm
|
||||||
|
|
||||||
|
%packages --excludedocs --instLangs=en --nocore
|
||||||
|
fedora-modular-release
|
||||||
|
bash
|
||||||
|
coreutils-single
|
||||||
|
glibc-minimal-langpack
|
||||||
|
libcrypt
|
||||||
|
rpm
|
||||||
|
shadow-utils
|
||||||
|
sssd-client
|
||||||
|
util-linux
|
||||||
|
-kernel
|
||||||
|
-dosfstools
|
||||||
|
-e2fsprogs
|
||||||
|
-fuse-libs
|
||||||
|
-gnupg2-smime
|
||||||
|
-libss # used by e2fsprogs
|
||||||
|
-libusbx
|
||||||
|
-pinentry
|
||||||
|
-shared-mime-info
|
||||||
|
-trousers
|
||||||
|
-xkeyboard-config
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post --erroronfail --log=/root/anaconda-post.log
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
# Set install langs macro so that new rpms that get installed will
|
||||||
|
# only install langs that we limit it to.
|
||||||
|
LANG="en_US"
|
||||||
|
echo "%_install_langs $LANG" > /etc/rpm/macros.image-language-conf
|
||||||
|
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1400682
|
||||||
|
echo "Import RPM GPG key"
|
||||||
|
releasever=$(rpm -q --qf '%{version}\n' fedora-modular-release)
|
||||||
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||||
|
|
||||||
|
echo "# fstab intentionally empty for containers" > /etc/fstab
|
||||||
|
|
||||||
|
# Remove machine-id on pre generated images
|
||||||
|
rm -f /etc/machine-id
|
||||||
|
touch /etc/machine-id
|
||||||
|
|
||||||
|
%end
|
@ -6,6 +6,11 @@
|
|||||||
|
|
||||||
%packages
|
%packages
|
||||||
@python-classroom
|
@python-classroom
|
||||||
|
@python-science
|
||||||
|
nano
|
||||||
|
openssh-clients
|
||||||
|
vim-enhanced
|
||||||
|
wget
|
||||||
|
|
||||||
# Remove Pythons possibly recommended by tox
|
# Remove Pythons possibly recommended by tox
|
||||||
-python26
|
-python26
|
||||||
|
@ -7,6 +7,11 @@
|
|||||||
%include fedora-python-classroom-common.ks
|
%include fedora-python-classroom-common.ks
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
|
ninja-ide
|
||||||
|
emacs
|
||||||
|
python3-matplotlib-tk
|
||||||
|
python3-pillow-tk
|
||||||
|
|
||||||
# Remove extra gnome-y things
|
# Remove extra gnome-y things
|
||||||
-@graphical-internet
|
-@graphical-internet
|
||||||
-@games
|
-@games
|
||||||
@ -51,7 +56,6 @@
|
|||||||
|
|
||||||
# Dictionaries are big
|
# Dictionaries are big
|
||||||
-aspell-*
|
-aspell-*
|
||||||
-hunspell-*
|
|
||||||
-words
|
-words
|
||||||
|
|
||||||
# Help and art can be big, too
|
# Help and art can be big, too
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
repo --name=fedora --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
|
repo --name=fedora --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
|
||||||
repo --name=updates --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
|
repo --name=updates --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
|
||||||
#repo --name=updates-testing --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
|
#repo --name=updates-testing --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-testing-f$releasever&arch=$basearch
|
||||||
url --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
|
url --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
repo --name=rawhide --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=$basearch
|
repo --name=rawhide --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=$basearch
|
||||||
url --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=rawhide&arch=$basearch
|
url --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=$basearch
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
# Exactly one of the following should be uncommented
|
# Exactly one of the following should be uncommented
|
||||||
|
|
||||||
# For the master branch the following should be uncommented
|
# For the master branch the following should be uncommented
|
||||||
%include fedora-repo-rawhide.ks
|
# %include fedora-repo-rawhide.ks
|
||||||
|
|
||||||
# For non-master branches the following should be uncommented
|
# For non-master branches the following should be uncommented
|
||||||
# %include fedora-repo-not-rawhide.ks
|
%include fedora-repo-not-rawhide.ks
|
||||||
|
20
l10n/fedora-livecd-cinnamon-de_DE.ks
Normal file
20
l10n/fedora-livecd-cinnamon-de_DE.ks
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
# fedora-livecd-cinnamon-de_DE.ks
|
||||||
|
#
|
||||||
|
# Description:
|
||||||
|
# - German Fedora Live Spin with the Cinnamon Desktop Environment
|
||||||
|
#
|
||||||
|
# Maintainer(s):
|
||||||
|
# - Björn Esser <besser82@fedoraproject.org>
|
||||||
|
|
||||||
|
%include ../fedora-live-cinnamon.ks
|
||||||
|
|
||||||
|
lang de_DE.UTF-8
|
||||||
|
keyboard de-latin1-nodeadkeys
|
||||||
|
timezone Europe/Berlin
|
||||||
|
|
||||||
|
%packages
|
||||||
|
@german-support
|
||||||
|
# exclude input methods
|
||||||
|
-m17n*
|
||||||
|
-scim*
|
||||||
|
%end
|
Loading…
Reference in New Issue
Block a user