mirror of
https://pagure.io/fedora-kickstarts.git
synced 2025-12-11 09:30:30 +08:00
Compare commits
86 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9eade1e56 | ||
|
|
c7036c7f02 | ||
|
|
9a45c1d0a0 | ||
|
|
73b5f6e27a | ||
|
|
fae2af88cf | ||
|
|
d9276e3a93 | ||
|
|
db40229faa | ||
|
|
6c5f35da4a | ||
|
|
fa909b7d41 | ||
|
|
0ce8f9bccd | ||
|
|
5dd3492422 | ||
|
|
b3e0d1cd64 | ||
|
|
449198ec60 | ||
|
|
c0a78d9941 | ||
|
|
b4956c0502 | ||
|
|
127cfff29b | ||
|
|
d8d2e8e2d8 | ||
|
|
2b7b36d5fc | ||
|
|
19322f31e0 | ||
|
|
ce6d9afead | ||
|
|
e4b784272b | ||
|
|
65794f7902 | ||
|
|
11732dafb1 | ||
|
|
3adfb2feec | ||
|
|
b206bbdfaf | ||
|
|
3a50547d86 | ||
|
|
6ffaaf0518 | ||
|
|
a15bea78df | ||
|
|
137ea2f289 | ||
|
|
0d0b2c7810 | ||
|
|
c7ba31e580 | ||
|
|
86e5d6c6a8 | ||
|
|
5e4c7fec07 | ||
|
|
b7dd998453 | ||
|
|
b5c953f75b | ||
|
|
934ed0bdb5 | ||
|
|
9a6bb88767 | ||
|
|
3b72ea0c46 | ||
|
|
b9d0ab6de0 | ||
|
|
dd3688cc5a | ||
|
|
4a593753b3 | ||
|
|
0dab9e6b11 | ||
|
|
87078d7c91 | ||
|
|
77141af638 | ||
|
|
23d107947f | ||
|
|
e7575bafcd | ||
|
|
60da403a54 | ||
|
|
d70dbc4acc | ||
|
|
7a88f75074 | ||
|
|
b72916f21c | ||
|
|
e6f10b1732 | ||
|
|
79b3314839 | ||
|
|
40948707ee | ||
|
|
84d28df1b2 | ||
|
|
15f0a6b253 | ||
|
|
75e1c5987f | ||
|
|
d7ecb31ef2 | ||
|
|
948c7e7438 | ||
|
|
3186d62523 | ||
|
|
ed48111a5b | ||
|
|
951865e55a | ||
|
|
0edc478c0e | ||
|
|
1d4b051f51 | ||
|
|
bd334a8329 | ||
|
|
18cfaf0452 | ||
|
|
69ad343a95 | ||
|
|
64370b4362 | ||
|
|
590f0cb544 | ||
|
|
03980e7503 | ||
|
|
7a12645aeb | ||
|
|
9276cbd5c1 | ||
|
|
b59ce80332 | ||
|
|
547c84c848 | ||
|
|
e8619a6d85 | ||
|
|
78e8334021 | ||
|
|
b786aad2d5 | ||
|
|
c3477815b2 | ||
|
|
466ff409c4 | ||
|
|
d3042d4eee | ||
|
|
0929a3ff9d | ||
|
|
483a67ba69 | ||
|
|
f590dcc083 | ||
|
|
35fa93e69d | ||
|
|
64fac69876 | ||
|
|
7378056a8c | ||
|
|
28e8bddc65 |
24
README.md
24
README.md
@@ -1,13 +1,15 @@
|
|||||||
# fedora-kickstarts #
|
# fedora-kickstarts #
|
||||||
|
|
||||||
This project is used to manage the Fedora kickstart files used in composing Fedora release images.
|
This project is used to manage the Fedora kickstart files used in composing Fedora release images.
|
||||||
|
|
||||||
The master branch is used by rawhide and each release branch is used by that release.
|
The master branch is used by rawhide and each release branch is used by that release.
|
||||||
|
|
||||||
All changes should be made via the PR workflow.
|
All changes should be made via the PR workflow.
|
||||||
|
|
||||||
This project is packaged in Fedora as the spin-kickstarts package allowing users to see
|
This project is packaged in Fedora as the spin-kickstarts package allowing users to see
|
||||||
and modify the kickstart files for their local needs.
|
and modify the kickstart files for their local needs.
|
||||||
|
|
||||||
|
Maintainers for each image are listed in the `maintainers.toml` file.
|
||||||
|
|
||||||
## To make a release ##
|
## To make a release ##
|
||||||
|
|
||||||
@@ -24,6 +26,18 @@ and modify the kickstart files for their local needs.
|
|||||||
# Clean up the generated files:
|
# Clean up the generated files:
|
||||||
make clean
|
make clean
|
||||||
|
|
||||||
|
## Build logs ##
|
||||||
|
|
||||||
|
To see build logs go to
|
||||||
|
|
||||||
|
https://koji.fedoraproject.org/koji
|
||||||
|
|
||||||
|
"Packages" tab, and filter by Fedora-Workstation-Live for example.
|
||||||
|
|
||||||
|
Technical info about the officialy released images can be found at
|
||||||
|
|
||||||
|
https://kojipkgs.fedoraproject.org/compose/
|
||||||
|
|
||||||
# bug reports #
|
# bug reports #
|
||||||
|
|
||||||
Bugs should be reported to the spin-kickstarts bugzilla component:
|
Bugs should be reported to the spin-kickstarts bugzilla component:
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ lang en_US.UTF-8
|
|||||||
selinux --enforcing
|
selinux --enforcing
|
||||||
firewall --enabled --service=mdns,ssh
|
firewall --enabled --service=mdns,ssh
|
||||||
|
|
||||||
bootloader --location=mbr
|
bootloader --extlinux --location=mbr
|
||||||
|
|
||||||
part /boot/efi --size=80 --fstype vfat --asprimary
|
part /boot/efi --size=80 --fstype vfat --asprimary
|
||||||
part /boot --size=512 --fstype ext4 --asprimary
|
part /boot --size=512 --fstype ext4 --asprimary
|
||||||
@@ -11,7 +11,7 @@ part /boot --size=512 --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
|
||||||
|
|
||||||
services --enabled=sshd,NetworkManager,avahi-daemon,chronyd,initial-setup,zram-swap
|
services --enabled=sshd,NetworkManager,avahi-daemon,chronyd,initial-setup
|
||||||
|
|
||||||
%include fedora-repo.ks
|
%include fedora-repo.ks
|
||||||
|
|
||||||
@@ -19,7 +19,6 @@ services --enabled=sshd,NetworkManager,avahi-daemon,chronyd,initial-setup,zram-s
|
|||||||
@core
|
@core
|
||||||
@standard
|
@standard
|
||||||
@hardware-support
|
@hardware-support
|
||||||
zram
|
|
||||||
|
|
||||||
kernel
|
kernel
|
||||||
# remove this in %post
|
# remove this in %post
|
||||||
@@ -57,7 +56,7 @@ releasever=$(rpm --eval '%{fedora}')
|
|||||||
basearch=armhfp
|
basearch=armhfp
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
||||||
echo "Packages within this ARM disk image"
|
echo "Packages within this ARM disk image"
|
||||||
rpm -qa
|
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||||
rm -f /var/lib/rpm/__db*
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-kde-common.ks
|
%include fedora-kde-common.ks
|
||||||
|
|
||||||
part / --size=6300 --fstype ext4
|
part btrfs.007 --fstype="btrfs" --size=7000
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-lxde-common.ks
|
%include fedora-lxde-common.ks
|
||||||
|
|
||||||
part / --size=4000 --fstype ext4
|
part btrfs.007 --fstype="btrfs" --size=4300
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-lxqt-common.ks
|
%include fedora-lxqt-common.ks
|
||||||
|
|
||||||
part / --size=4400 --fstype ext4 --asprimary
|
part btrfs.007 --fstype="btrfs" --size=4400
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
# trojita not available on non-x86 platforms
|
# trojita not available on non-x86 platforms
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-mate-common.ks
|
%include fedora-mate-common.ks
|
||||||
|
|
||||||
part / --size=7168 --fstype ext4
|
part btrfs.007 --fstype="btrfs" --size=7168
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
%include fedora-arm-base.ks
|
%include fedora-arm-base.ks
|
||||||
%include fedora-minimal-common.ks
|
%include fedora-minimal-common.ks
|
||||||
|
|
||||||
part / --size=1400 --fstype ext4
|
part / --size=1500 --fstype ext4
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
-xkeyboard-config
|
-xkeyboard-config
|
||||||
|
|||||||
@@ -4,5 +4,27 @@
|
|||||||
|
|
||||||
# The ARM Workstion based Python Classroom Lab
|
# The ARM Workstion based Python Classroom Lab
|
||||||
|
|
||||||
%include fedora-arm-workstation.ks
|
%include fedora-arm-base.ks
|
||||||
|
%include fedora-arm-xbase.ks
|
||||||
|
%include fedora-workstation-common.ks
|
||||||
%include fedora-python-classroom-gnome-common.ks
|
%include fedora-python-classroom-gnome-common.ks
|
||||||
|
|
||||||
|
part btrfs.007 --fstype="btrfs" --size=7000
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
|
%packages
|
||||||
|
-initial-setup
|
||||||
|
-initial-setup-gui
|
||||||
|
-libvirt*
|
||||||
|
-gnome-boxes
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
# Most of the ARM X accelerated drivers need some level of CMA allocation
|
||||||
|
sed -i 's/\(append .*\)/\1 cma=256MB/' /boot/extlinux/extlinux.conf
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
part / --size=2500 --fstype xfs
|
part / --size=2500 --fstype xfs
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
|
fedora-release-server
|
||||||
# install the default groups for the server environment since installing the environment is not working
|
# install the default groups for the server environment since installing the environment is not working
|
||||||
@server-product
|
@server-product
|
||||||
@standard
|
@standard
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%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
|
part btrfs.007 --fstype="btrfs" --size=3400
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-workstation-common.ks
|
%include fedora-workstation-common.ks
|
||||||
|
|
||||||
part / --size=6200 --fstype ext4
|
part btrfs.007 --fstype="btrfs" --size=6200
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
-initial-setup
|
-initial-setup
|
||||||
|
|||||||
@@ -2,7 +2,10 @@
|
|||||||
%include fedora-arm-xbase.ks
|
%include fedora-arm-xbase.ks
|
||||||
%include fedora-xfce-common.ks
|
%include fedora-xfce-common.ks
|
||||||
|
|
||||||
part / --size=5000 --fstype ext4
|
part btrfs.007 --fstype="btrfs" --size=5200
|
||||||
|
btrfs none --label=fedora btrfs.007
|
||||||
|
btrfs /home --subvol --name=home LABEL=fedora
|
||||||
|
btrfs / --subvol --name=root LABEL=fedora
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
|||||||
@@ -8,12 +8,14 @@
|
|||||||
|
|
||||||
%packages
|
%packages
|
||||||
|
|
||||||
|
fedora-release-cinnamon
|
||||||
@networkmanager-submodules
|
@networkmanager-submodules
|
||||||
@cinnamon-desktop
|
@cinnamon-desktop
|
||||||
@libreoffice
|
@libreoffice
|
||||||
parole
|
parole
|
||||||
|
rhythmbox
|
||||||
|
|
||||||
# extra backgrounds
|
# extra backgrounds
|
||||||
f32-backgrounds-extras-gnome
|
f33-backgrounds-extras-gnome
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|||||||
@@ -1,36 +0,0 @@
|
|||||||
# PXE-to-Live Atomic: PXE boot directly into a running Atomic Host
|
|
||||||
# https://fedoraproject.org/wiki/Changes/AtomicHost
|
|
||||||
|
|
||||||
lang en_US.UTF-8
|
|
||||||
keyboard us
|
|
||||||
timezone America/New_York
|
|
||||||
zerombr
|
|
||||||
clearpart --all --initlabel
|
|
||||||
rootpw --lock --iscrypted locked
|
|
||||||
user --name=none
|
|
||||||
bootloader --timeout=1
|
|
||||||
network --bootproto=dhcp --device=link --activate
|
|
||||||
# We are only able to install atomic with separate /boot partition currently
|
|
||||||
part / --fstype="ext4" --size=6000
|
|
||||||
part /boot --size=500 --fstype="ext4"
|
|
||||||
shutdown
|
|
||||||
services --disabled=docker-storage-setup
|
|
||||||
services --enabled=NetworkManager,sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
|
||||||
|
|
||||||
ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=http://kojipkgs.fedoraproject.org/mash/atomic/22/ --ref=fedora-atomic/f22/x86_64/docker-host
|
|
||||||
|
|
||||||
%post
|
|
||||||
|
|
||||||
# Ensure the root password is locked, we use cloud-init
|
|
||||||
passwd -l root
|
|
||||||
userdel -r none
|
|
||||||
|
|
||||||
# We copy content of separate /boot partition to root part when building live squashfs image,
|
|
||||||
# and we don't want systemd to try to mount it when pxe booting
|
|
||||||
cat /dev/null > /etc/fstab
|
|
||||||
|
|
||||||
# Disable network service here, as doing it in the services line
|
|
||||||
# fails due to RHBZ #1369794
|
|
||||||
/sbin/chkconfig network off
|
|
||||||
|
|
||||||
%end
|
|
||||||
25
fedora-cloud-base-gcp.ks
Normal file
25
fedora-cloud-base-gcp.ks
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# This is a basic Fedora cloud spin designed to work with GCP.
|
||||||
|
# Note that GCP prefers UEFI so we'll need to make sure this image
|
||||||
|
# is created from a machine that is started in UEFI mode.
|
||||||
|
|
||||||
|
# Inherit from cloud base
|
||||||
|
%include fedora-cloud-base.ks
|
||||||
|
|
||||||
|
# Change serial port configuration to recommended default for GCP (ttyS0,38400n8d)
|
||||||
|
# Don't show bootloader as it's impossible for the user to get to it in time
|
||||||
|
# So we might as well not waste the 1 second on each boot.
|
||||||
|
# https://cloud.google.com/compute/docs/import/import-existing-image
|
||||||
|
bootloader --timeout=0 --append="no_timer_check net.ifnames=0 console=ttyS0,38400n8d"
|
||||||
|
|
||||||
|
#%packages
|
||||||
|
#%end
|
||||||
|
|
||||||
|
%post --erroronfail
|
||||||
|
cat <<EOF > /etc/NetworkManager/conf.d/gcp-mtu.conf
|
||||||
|
# In GCP it is recommended to use 1460 as the MTU.
|
||||||
|
# Set it to 1460 for all connections.
|
||||||
|
# https://cloud.google.com/network-connectivity/docs/vpn/concepts/mtu-considerations
|
||||||
|
[connection]
|
||||||
|
ethernet.mtu = 1460
|
||||||
|
EOF
|
||||||
|
%end
|
||||||
@@ -53,6 +53,12 @@ EOKEYS
|
|||||||
chmod 600 ~vagrant/.ssh/authorized_keys
|
chmod 600 ~vagrant/.ssh/authorized_keys
|
||||||
chown -R vagrant:vagrant ~vagrant/.ssh/
|
chown -R vagrant:vagrant ~vagrant/.ssh/
|
||||||
|
|
||||||
|
cat > /etc/ssh/sshd_config.d/10-vagrant-insecure-rsa-key.conf <<EOF
|
||||||
|
# For now the vagrant insecure key is an rsa key
|
||||||
|
# https://github.com/hashicorp/vagrant/issues/11783
|
||||||
|
PubkeyAcceptedKeyTypes=+ssh-rsa
|
||||||
|
EOF
|
||||||
|
|
||||||
# Further suggestion from @purpleidea (James Shubin) - extend key to root users as well
|
# Further suggestion from @purpleidea (James Shubin) - extend key to root users as well
|
||||||
mkdir -m 0700 -p /root/.ssh
|
mkdir -m 0700 -p /root/.ssh
|
||||||
cp /home/vagrant/.ssh/authorized_keys /root/.ssh/authorized_keys
|
cp /home/vagrant/.ssh/authorized_keys /root/.ssh/authorized_keys
|
||||||
|
|||||||
@@ -4,9 +4,6 @@
|
|||||||
# 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 Fedora install, this image has /tmp on disk
|
|
||||||
# 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).
|
||||||
#
|
#
|
||||||
# To do a local build, you'll need to install ImageFactory. See
|
# To do a local build, you'll need to install ImageFactory. See
|
||||||
@@ -37,7 +34,6 @@ firewall --disabled
|
|||||||
# We pass net.ifnames=0 because we always want to use eth0 here on all the cloud images.
|
# We pass net.ifnames=0 because we always want to use eth0 here on all the cloud images.
|
||||||
bootloader --timeout=1 --append="no_timer_check net.ifnames=0 console=tty1 console=ttyS0,115200n8"
|
bootloader --timeout=1 --append="no_timer_check net.ifnames=0 console=tty1 console=ttyS0,115200n8"
|
||||||
|
|
||||||
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
|
||||||
@@ -48,217 +44,78 @@ autopart --noboot --nohome --noswap --nolvm
|
|||||||
|
|
||||||
reboot
|
reboot
|
||||||
|
|
||||||
# Package list.
|
##### begin package list #############################################
|
||||||
# FIXME: instLangs does not work, so there's a hack below
|
%packages --instLangs=en
|
||||||
# (see https://bugzilla.redhat.com/show_bug.cgi?id=1051816)
|
|
||||||
# FIXME: instLangs bug has been fixed but now having instLangs
|
|
||||||
# with an arg causes no langs to get installed because of BZ1262040
|
|
||||||
# which yields the errors in BZ1261249. For now fix by not using
|
|
||||||
# --instLangs at all
|
|
||||||
#%packages --instLangs=en
|
|
||||||
%packages
|
|
||||||
|
|
||||||
kernel-core
|
# Include packages for the cloud-server-environment group
|
||||||
@^cloud-server-environment
|
@^cloud-server-environment
|
||||||
# Need to pull in the udev subpackage
|
|
||||||
systemd-udev
|
|
||||||
|
|
||||||
# after move away from grub2 - let's add 'which' back
|
# Don't include the kernel toplevel package since it pulls in
|
||||||
which
|
# kernel-modules. We're happy for now with kernel-core.
|
||||||
|
-kernel
|
||||||
|
kernel-core
|
||||||
|
|
||||||
# rescue mode generally isn't useful in the cloud context
|
# Don't include dracut-config-rescue. It will have dracut generate a
|
||||||
|
# "rescue" entry in the grub menu, but that also means there is a
|
||||||
|
# rescue kernel and initramfs that get created, which (currently) add
|
||||||
|
# about another 40MiB to the /boot/ partition. Also the "rescue" mode
|
||||||
|
# is generally not useful in the cloud.
|
||||||
-dracut-config-rescue
|
-dracut-config-rescue
|
||||||
|
|
||||||
# Some things from @core we can do without in a minimal install
|
# Plymouth provides a graphical boot animation. In the cloud we don't
|
||||||
-biosdevname
|
# need a graphical boot animation. This also means anaconda won't put
|
||||||
# Need to also add back plymouth in order to mask failure of
|
# rhgb/quiet on kernel command line
|
||||||
# systemd-vconsole-setup.service. BZ#1272684. Comment out for now
|
|
||||||
#-plymouth
|
|
||||||
-iprutils
|
|
||||||
# Now that BZ#1199868 is fixed kbd really gets removed but it breaks
|
|
||||||
# systemd-vconsole-setup.service on boot. Comment out for now
|
|
||||||
#-kbd
|
|
||||||
-uboot-tools
|
|
||||||
-kernel
|
|
||||||
# No need for plymouth. Also means anaconda won't put rhgb/quiet
|
|
||||||
# on kernel command line
|
|
||||||
-plymouth
|
-plymouth
|
||||||
|
|
||||||
|
# No need for firewalld for now. We don't have a firewall on by default.
|
||||||
|
-firewalld
|
||||||
|
|
||||||
|
# noswap on Cloud for now
|
||||||
|
-zram-generator-defaults
|
||||||
|
|
||||||
|
# Don't include the geolite2 databases, which end up with 66MiB
|
||||||
|
# in /usr/share/GeoIP
|
||||||
|
-geolite2-country
|
||||||
|
-geolite2-city
|
||||||
%end
|
%end
|
||||||
|
##### end package list ###############################################
|
||||||
|
|
||||||
|
|
||||||
|
##### begin kickstart post ###########################################
|
||||||
%post --erroronfail
|
%post --erroronfail
|
||||||
|
|
||||||
# Create grub.conf for EC2. This used to be done by appliance creator but
|
# linux-firmware is installed by default and is quite large. As of mid 2020:
|
||||||
# anaconda doesn't do it. And, in case appliance-creator is used, we're
|
# Total download size: 97 M
|
||||||
# overriding it here so that both cases get the exact same file.
|
# Installed size: 268 M
|
||||||
# Note that the console line is different -- that's because EC2 provides
|
# So far we've been fine shipping without it so let's continue.
|
||||||
# different virtual hardware, and this is a convenient way to act differently
|
# More discussion about this in #1234504.
|
||||||
echo -n "Creating grub.conf for pvgrub"
|
|
||||||
rootuuid=$( awk '$2=="/" { print $1 };' /etc/fstab )
|
|
||||||
mkdir /boot/grub
|
|
||||||
echo -e 'default=0\ntimeout=0\n\n' > /boot/grub/grub.conf
|
|
||||||
for kv in $( ls -1v /boot/vmlinuz* |grep -v rescue |sed s/.*vmlinuz-// ); do
|
|
||||||
echo "title Fedora ($kv)" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\troot (hd0,0)" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\tkernel /boot/vmlinuz-$kv ro root=$rootuuid no_timer_check console=hvc0 LANG=en_US.UTF-8" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\tinitrd /boot/initramfs-$kv.img" >> /boot/grub/grub.conf
|
|
||||||
echo
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
#link grub.conf to menu.lst for ec2 to work
|
|
||||||
echo -n "Linking menu.lst to old-style grub.conf for pv-grub"
|
|
||||||
ln -sf grub.conf /boot/grub/menu.lst
|
|
||||||
ln -sf /boot/grub/grub.conf /etc/grub.conf
|
|
||||||
|
|
||||||
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
|
||||||
passwd -l root
|
|
||||||
|
|
||||||
# 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 .
|
|
||||||
|
|
||||||
# this is installed by default but we don't need it in virt
|
|
||||||
# Commenting out the following for #1234504
|
|
||||||
# rpm works just fine for removing this, no idea why dnf can't cope
|
|
||||||
echo "Removing linux-firmware package."
|
echo "Removing linux-firmware package."
|
||||||
rpm -e linux-firmware
|
rpm -e linux-firmware
|
||||||
|
|
||||||
# Remove firewalld; was supposed to be optional in F18+, but is pulled in
|
# See the systemd-random-seed.service man page that says:
|
||||||
# in install/image building.
|
# " It is recommended to remove the random seed from OS images intended
|
||||||
echo "Removing firewalld."
|
# for replication on multiple systems"
|
||||||
# FIXME! clean_requirements_on_remove is the default with DNF, but may
|
|
||||||
# not work when package was installed by Anaconda instead of command line.
|
|
||||||
# Also -- check if this is still even needed with new anaconda -- disabled
|
|
||||||
# firewall should _not_ pull in this package.
|
|
||||||
# dnf -C -y remove "firewalld*" --setopt="clean_requirements_on_remove=1"
|
|
||||||
dnf -C -y erase "firewalld*"
|
|
||||||
|
|
||||||
# Another one needed at install time but not after that, and it pulls
|
|
||||||
# in some unneeded deps (like, newt and slang)
|
|
||||||
echo "Removing authconfig."
|
|
||||||
dnf -C -y erase authconfig
|
|
||||||
|
|
||||||
# instlang hack. (Note! See bug referenced above package list)
|
|
||||||
find /usr/share/locale -mindepth 1 -maxdepth 1 -type d -not -name en_US -exec rm -rf {} +
|
|
||||||
localedef --list-archive | grep -v ^en_US | xargs localedef --delete-from-archive
|
|
||||||
# this will kill a live system (since it's memory mapped) but should be safe offline
|
|
||||||
mv -f /usr/lib/locale/locale-archive /usr/lib/locale/locale-archive.tmpl
|
|
||||||
build-locale-archive
|
|
||||||
echo '%_install_langs C:en:en_US:en_US.UTF-8' >> /etc/rpm/macros.image-language-conf
|
|
||||||
|
|
||||||
|
|
||||||
echo -n "Getty fixes"
|
|
||||||
# although we want console output going to the serial console, we don't
|
|
||||||
# actually have the opportunity to login there. FIX.
|
|
||||||
# we don't really need to auto-spawn _any_ gettys.
|
|
||||||
sed -i '/^#NAutoVTs=.*/ a\
|
|
||||||
NAutoVTs=0' /etc/systemd/logind.conf
|
|
||||||
|
|
||||||
echo -n "Network fixes"
|
|
||||||
# initscripts don't like this file to be missing.
|
|
||||||
# and https://bugzilla.redhat.com/show_bug.cgi?id=1204612
|
|
||||||
cat > /etc/sysconfig/network << EOF
|
|
||||||
NETWORKING=yes
|
|
||||||
NOZEROCONF=yes
|
|
||||||
DEVTIMEOUT=10
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# simple eth0 config, again not hard-coded to the build hardware
|
|
||||||
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF
|
|
||||||
DEVICE="eth0"
|
|
||||||
BOOTPROTO="dhcp"
|
|
||||||
ONBOOT="yes"
|
|
||||||
TYPE="Ethernet"
|
|
||||||
PERSISTENT_DHCLIENT="yes"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# generic localhost names
|
|
||||||
cat > /etc/hosts << EOF
|
|
||||||
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
|
|
||||||
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
|
|
||||||
|
|
||||||
EOF
|
|
||||||
echo .
|
|
||||||
|
|
||||||
|
|
||||||
# Because memory is scarce resource in most cloud/virt environments,
|
|
||||||
# and because this impedes forensics, we are differing from the Fedora
|
|
||||||
# default of having /tmp on tmpfs.
|
|
||||||
echo "Disabling tmpfs for /tmp."
|
|
||||||
systemctl mask tmp.mount
|
|
||||||
|
|
||||||
# make sure firstboot doesn't start
|
|
||||||
echo "RUN_FIRSTBOOT=NO" > /etc/sysconfig/firstboot
|
|
||||||
|
|
||||||
# Uncomment this if you want to use cloud init but suppress the creation
|
|
||||||
# of an "ec2-user" account. This will, in the absence of further config,
|
|
||||||
# cause the ssh key from a metadata source to be put in the root account.
|
|
||||||
#cat <<EOF > /etc/cloud/cloud.cfg.d/50_suppress_ec2-user_use_root.cfg
|
|
||||||
#users: []
|
|
||||||
#disable_root: 0
|
|
||||||
#EOF
|
|
||||||
|
|
||||||
echo "Removing random-seed so it's not the same in every image."
|
echo "Removing random-seed so it's not the same in every image."
|
||||||
rm -f /var/lib/systemd/random-seed
|
rm -f /var/lib/systemd/random-seed
|
||||||
|
|
||||||
echo "Cleaning old dnf repodata."
|
|
||||||
# FIXME: clear history?
|
|
||||||
dnf clean all
|
|
||||||
truncate -c -s 0 /var/log/dnf.log
|
|
||||||
truncate -c -s 0 /var/log/dnf.rpm.log
|
|
||||||
|
|
||||||
echo "Import RPM GPG key"
|
echo "Import RPM GPG key"
|
||||||
releasever=$(rpm --eval '%{fedora}')
|
releasever=$(rpm --eval '%{fedora}')
|
||||||
basearch=$(uname -i)
|
basearch=$(uname -i)
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
||||||
|
|
||||||
echo "Packages within this cloud image:"
|
|
||||||
echo "-----------------------------------------------------------------------"
|
|
||||||
rpm -qa
|
|
||||||
echo "-----------------------------------------------------------------------"
|
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed/wanted
|
|
||||||
rm -f /var/lib/rpm/__db*
|
|
||||||
|
|
||||||
# FIXME: is this still needed?
|
|
||||||
echo "Fixing SELinux contexts."
|
|
||||||
touch /var/log/cron
|
|
||||||
touch /var/log/boot.log
|
|
||||||
# ignore return code because UEFI systems with vfat filesystems
|
|
||||||
# that don't support selinux will give us errors
|
|
||||||
/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
|
||||||
dd bs=1M if=/dev/zero of=/var/tmp/zeros || :
|
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.)"
|
||||||
|
|
||||||
# When we build the image with oz, dracut is used
|
# When we build the image a networking config file gets left behind.
|
||||||
# and sets up a ifcfg-en<whatever> for the device. We don't
|
# Let's clean it up.
|
||||||
# want to use this, we use eth0 so it is always the same.
|
echo "Cleanup leftover networking configuration"
|
||||||
# So we remove all these ifcfg-en<whatever> devices so
|
rm -f /etc/NetworkManager/system-connections/*.nmconnection
|
||||||
# The 'network' service can come up cleanly.
|
|
||||||
rm -f /etc/sysconfig/network-scripts/ifcfg-en*
|
|
||||||
|
|
||||||
# Enable network service here, as doing it in the services line
|
# Clear machine-id on pre generated images
|
||||||
# fails due to RHBZ #1369794
|
truncate -s 0 /etc/machine-id
|
||||||
/sbin/chkconfig network on
|
|
||||||
|
|
||||||
# Remove machine-id on pre generated images
|
|
||||||
rm -f /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
|
||||||
|
##### end kickstart post ############################################
|
||||||
|
|||||||
@@ -1,220 +0,0 @@
|
|||||||
# This is a Fedora 21 spin designed based on the Fedora Cloud Base Image
|
|
||||||
# but tailored specifically for Big Data processing out-of-the-box.
|
|
||||||
# Primarily, it builds on that image but adds extra packages, but over
|
|
||||||
# time may have additional focus.
|
|
||||||
#
|
|
||||||
# It's configured with cloud-init so it will take advantage of
|
|
||||||
# ec2-compatible metadata services for provisioning ssh keys. Cloud-init
|
|
||||||
# creates a user account named "fedora" with passwordless sudo access. The
|
|
||||||
# root password is empty and locked by default.
|
|
||||||
#
|
|
||||||
# Note that unlike the standard F20 install, this image has /tmp on disk
|
|
||||||
# rather than in tmpfs, since memory is usually at a premium.
|
|
||||||
|
|
||||||
text
|
|
||||||
lang en_US.UTF-8
|
|
||||||
keyboard us
|
|
||||||
timezone --utc Etc/UTC
|
|
||||||
|
|
||||||
selinux --enforcing
|
|
||||||
rootpw --lock --iscrypted locked
|
|
||||||
user --name=none
|
|
||||||
|
|
||||||
firewall --disabled
|
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
|
||||||
|
|
||||||
network --bootproto=dhcp --device=eth0 --activate --onboot=on
|
|
||||||
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
|
||||||
|
|
||||||
zerombr
|
|
||||||
clearpart --all
|
|
||||||
part / --size 3000 --fstype ext4
|
|
||||||
|
|
||||||
%include fedora-repo.ks
|
|
||||||
|
|
||||||
|
|
||||||
reboot
|
|
||||||
|
|
||||||
# Package list.
|
|
||||||
%packages
|
|
||||||
|
|
||||||
fedora-release-cloud
|
|
||||||
|
|
||||||
kernel-core
|
|
||||||
@core
|
|
||||||
@cloud-server
|
|
||||||
|
|
||||||
# Needed initially, but removed below.
|
|
||||||
firewalld
|
|
||||||
|
|
||||||
# rescue mode generally isn't useful in the cloud context
|
|
||||||
-dracut-config-rescue
|
|
||||||
|
|
||||||
# Some things from @core we can do without in a minimal install
|
|
||||||
-biosdevname
|
|
||||||
-plymouth
|
|
||||||
-NetworkManager
|
|
||||||
-iprutils
|
|
||||||
-kbd
|
|
||||||
-uboot-tools
|
|
||||||
-kernel
|
|
||||||
-grub2
|
|
||||||
|
|
||||||
%end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%post --erroronfail
|
|
||||||
|
|
||||||
# Create grub.conf for EC2. This used to be done by appliance creator but
|
|
||||||
# anaconda doesn't do it. And, in case appliance-creator is used, we're
|
|
||||||
# overriding it here so that both cases get the exact same file.
|
|
||||||
# Note that the console line is different -- that's because EC2 provides
|
|
||||||
# different virtual hardware, and this is a convenient way to act differently
|
|
||||||
echo -n "Creating grub.conf for pvgrub"
|
|
||||||
rootuuid=$( awk '$2=="/" { print $1 };' /etc/fstab )
|
|
||||||
mkdir /boot/grub
|
|
||||||
echo -e 'default=0\ntimeout=0\n\n' > /boot/grub/grub.conf
|
|
||||||
for kv in $( ls -1v /boot/vmlinuz* |grep -v rescue |sed s/.*vmlinuz-// ); do
|
|
||||||
echo "title Fedora ($kv)" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\troot (hd0,0)" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\tkernel /boot/vmlinuz-$kv ro root=$rootuuid no_timer_check console=hvc0 LANG=en_US.UTF-8" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\tinitrd /boot/initramfs-$kv.img" >> /boot/grub/grub.conf
|
|
||||||
echo
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
#link grub.conf to menu.lst for ec2 to work
|
|
||||||
echo -n "Linking menu.lst to old-style grub.conf for pv-grub"
|
|
||||||
ln -sf grub.conf /boot/grub/menu.lst
|
|
||||||
ln -sf /boot/grub/grub.conf /etc/grub.conf
|
|
||||||
|
|
||||||
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
|
||||||
passwd -l root
|
|
||||||
# remove the user anaconda forces us to make
|
|
||||||
userdel -r none
|
|
||||||
|
|
||||||
# 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 .
|
|
||||||
|
|
||||||
# this is installed by default but we don't need it in virt
|
|
||||||
# Commenting out the following for #1234504
|
|
||||||
# rpm works just fine for removing this, no idea why dnf can't cope
|
|
||||||
echo "Removing linux-firmware package."
|
|
||||||
rpm -e linux-firmware
|
|
||||||
|
|
||||||
# Remove firewalld; was supposed to be optional in F18+, but is required to
|
|
||||||
# be present for install/image building.
|
|
||||||
echo "Removing firewalld."
|
|
||||||
dnf -C -y remove firewalld --setopt="clean_requirements_on_remove=1"
|
|
||||||
|
|
||||||
# Another one needed at install time but not after that, and it pulls
|
|
||||||
# in some unneeded deps (like, newt and slang)
|
|
||||||
echo "Removing authconfig."
|
|
||||||
dnf -C -y remove authconfig --setopt="clean_requirements_on_remove=1"
|
|
||||||
|
|
||||||
echo -n "Getty fixes"
|
|
||||||
# although we want console output going to the serial console, we don't
|
|
||||||
# actually have the opportunity to login there. FIX.
|
|
||||||
# we don't really need to auto-spawn _any_ gettys.
|
|
||||||
sed -i '/^#NAutoVTs=.*/ a\
|
|
||||||
NAutoVTs=0' /etc/systemd/logind.conf
|
|
||||||
|
|
||||||
echo -n "Network fixes"
|
|
||||||
# initscripts don't like this file to be missing.
|
|
||||||
cat > /etc/sysconfig/network << EOF
|
|
||||||
NETWORKING=yes
|
|
||||||
NOZEROCONF=yes
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# For cloud images, 'eth0' _is_ the predictable device name, since
|
|
||||||
# we don't want to be tied to specific virtual (!) hardware
|
|
||||||
rm -f /etc/udev/rules.d/70*
|
|
||||||
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
|
|
||||||
|
|
||||||
# simple eth0 config, again not hard-coded to the build hardware
|
|
||||||
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF
|
|
||||||
DEVICE="eth0"
|
|
||||||
BOOTPROTO="dhcp"
|
|
||||||
ONBOOT="yes"
|
|
||||||
TYPE="Ethernet"
|
|
||||||
PERSISTENT_DHCLIENT="yes"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# generic localhost names
|
|
||||||
cat > /etc/hosts << EOF
|
|
||||||
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
|
|
||||||
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
|
|
||||||
|
|
||||||
EOF
|
|
||||||
echo .
|
|
||||||
|
|
||||||
|
|
||||||
# Because memory is scarce resource in most cloud/virt environments,
|
|
||||||
# and because this impedes forensics, we are differing from the Fedora
|
|
||||||
# default of having /tmp on tmpfs.
|
|
||||||
echo "Disabling tmpfs for /tmp."
|
|
||||||
systemctl mask tmp.mount
|
|
||||||
|
|
||||||
# make sure firstboot doesn't start
|
|
||||||
echo "RUN_FIRSTBOOT=NO" > /etc/sysconfig/firstboot
|
|
||||||
|
|
||||||
# Uncomment this if you want to use cloud init but suppress the creation
|
|
||||||
# of an "ec2-user" account. This will, in the absence of further config,
|
|
||||||
# cause the ssh key from a metadata source to be put in the root account.
|
|
||||||
#cat <<EOF > /etc/cloud/cloud.cfg.d/50_suppress_ec2-user_use_root.cfg
|
|
||||||
#users: []
|
|
||||||
#disable_root: 0
|
|
||||||
#EOF
|
|
||||||
|
|
||||||
echo "Removing random-seed so it's not the same in every image."
|
|
||||||
rm -f /var/lib/systemd/random-seed
|
|
||||||
|
|
||||||
echo "Cleaning old dnf repodata."
|
|
||||||
dnf history new
|
|
||||||
dnf clean all
|
|
||||||
truncate -c -s 0 /var/log/dnf.log
|
|
||||||
|
|
||||||
echo "Import RPM GPG key"
|
|
||||||
releasever=$(rpm --eval '%{fedora}')
|
|
||||||
basearch=$(uname -i)
|
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
|
||||||
|
|
||||||
echo "Packages within this cloud image:"
|
|
||||||
echo "-----------------------------------------------------------------------"
|
|
||||||
rpm -qa
|
|
||||||
echo "-----------------------------------------------------------------------"
|
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed/wanted
|
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
echo "Fixing SELinux contexts."
|
|
||||||
touch /var/log/cron
|
|
||||||
touch /var/log/boot.log
|
|
||||||
mkdir -p /var/cache/dnf
|
|
||||||
/usr/sbin/fixfiles -R -a restore
|
|
||||||
|
|
||||||
echo "Zeroing out empty space."
|
|
||||||
# This forces the filesystem to reclaim space from deleted files
|
|
||||||
dd bs=1M if=/dev/zero of=/var/tmp/zeros || :
|
|
||||||
rm -f /var/tmp/zeros
|
|
||||||
echo "(Don't worry -- that out-of-space error was expected.)"
|
|
||||||
|
|
||||||
# Enable network service here, as doing it in the services line
|
|
||||||
# fails due to RHBZ #1369794
|
|
||||||
/sbin/chkconfig network on
|
|
||||||
|
|
||||||
%end
|
|
||||||
|
|
||||||
@@ -1,215 +0,0 @@
|
|||||||
# This is a spin of the Fedora cloud image designed for trying out new
|
|
||||||
# images in rawhide. It won't be built for non-rawhide trees, let alone
|
|
||||||
# actual releases.
|
|
||||||
|
|
||||||
cmdline
|
|
||||||
lang en_US.UTF-8
|
|
||||||
keyboard us
|
|
||||||
timezone --utc Etc/UTC
|
|
||||||
|
|
||||||
auth --useshadow --passalgo=sha512
|
|
||||||
selinux --enforcing
|
|
||||||
rootpw --lock --iscrypted locked
|
|
||||||
user --name=none
|
|
||||||
|
|
||||||
firewall --disabled
|
|
||||||
|
|
||||||
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8"
|
|
||||||
|
|
||||||
network --bootproto=dhcp --device=eth0 --activate --onboot=on
|
|
||||||
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
|
|
||||||
|
|
||||||
zerombr
|
|
||||||
clearpart --all
|
|
||||||
part / --size 3000 --fstype ext4
|
|
||||||
|
|
||||||
%include fedora-repo.ks
|
|
||||||
|
|
||||||
|
|
||||||
reboot
|
|
||||||
|
|
||||||
# Package list.
|
|
||||||
%packages --excludedocs --instLangs=en_US
|
|
||||||
|
|
||||||
fedora-release-cloud
|
|
||||||
|
|
||||||
kernel-core
|
|
||||||
@core
|
|
||||||
@cloud-server
|
|
||||||
|
|
||||||
# rescue mode generally isn't useful in the cloud context
|
|
||||||
-dracut-config-rescue
|
|
||||||
|
|
||||||
# Needed initially, but removed below.
|
|
||||||
firewalld
|
|
||||||
|
|
||||||
# Some things from @core we can do without in a minimal install
|
|
||||||
-biosdevname
|
|
||||||
-plymouth
|
|
||||||
-NetworkManager
|
|
||||||
-iprutils
|
|
||||||
-kbd
|
|
||||||
-uboot-tools
|
|
||||||
-kernel
|
|
||||||
-grub2
|
|
||||||
|
|
||||||
%end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%post --erroronfail
|
|
||||||
|
|
||||||
# Create grub.conf for EC2. This used to be done by appliance creator but
|
|
||||||
# anaconda doesn't do it. And, in case appliance-creator is used, we're
|
|
||||||
# overriding it here so that both cases get the exact same file.
|
|
||||||
# Note that the console line is different -- that's because EC2 provides
|
|
||||||
# different virtual hardware, and this is a convenient way to act differently
|
|
||||||
echo -n "Creating grub.conf for pvgrub"
|
|
||||||
rootuuid=$( awk '$2=="/" { print $1 };' /etc/fstab )
|
|
||||||
mkdir /boot/grub
|
|
||||||
echo -e 'default=0\ntimeout=0\n\n' > /boot/grub/grub.conf
|
|
||||||
for kv in $( ls -1v /boot/vmlinuz* |grep -v rescue |sed s/.*vmlinuz-// ); do
|
|
||||||
echo "title Fedora ($kv)" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\troot (hd0,0)" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\tkernel /boot/vmlinuz-$kv ro root=$rootuuid no_timer_check console=hvc0 LANG=en_US.UTF-8" >> /boot/grub/grub.conf
|
|
||||||
echo -e "\tinitrd /boot/initramfs-$kv.img" >> /boot/grub/grub.conf
|
|
||||||
echo
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
#link grub.conf to menu.lst for ec2 to work
|
|
||||||
echo -n "Linking menu.lst to old-style grub.conf for pv-grub"
|
|
||||||
ln -sf grub.conf /boot/grub/menu.lst
|
|
||||||
ln -sf /boot/grub/grub.conf /etc/grub.conf
|
|
||||||
|
|
||||||
# older versions of livecd-tools do not follow "rootpw --lock" line above
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
|
|
||||||
passwd -l root
|
|
||||||
# remove the user anaconda forces us to make
|
|
||||||
userdel -r none
|
|
||||||
|
|
||||||
# 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 .
|
|
||||||
|
|
||||||
# this is installed by default but we don't need it in virt
|
|
||||||
# Commenting out the following for #1234504
|
|
||||||
# rpm works just fine for removing this, no idea why dnf can't cope
|
|
||||||
echo "Removing linux-firmware package."
|
|
||||||
rpm -e linux-firmware
|
|
||||||
|
|
||||||
# Remove firewalld; was supposed to be optional in F18+, but is required to
|
|
||||||
# be present for install/image building.
|
|
||||||
echo "Removing firewalld."
|
|
||||||
dnf -C -y remove "firewalld*" --setopt="clean_requirements_on_remove=1"
|
|
||||||
|
|
||||||
# Another one needed at install time but not after that, and it pulls
|
|
||||||
# in some unneeded deps (like, newt and slang)
|
|
||||||
echo "Removing authconfig."
|
|
||||||
dnf -C -y remove authconfig --setopt="clean_requirements_on_remove=1"
|
|
||||||
|
|
||||||
echo -n "Getty fixes"
|
|
||||||
# although we want console output going to the serial console, we don't
|
|
||||||
# actually have the opportunity to login there. FIX.
|
|
||||||
# we don't really need to auto-spawn _any_ gettys.
|
|
||||||
sed -i '/^#NAutoVTs=.*/ a\
|
|
||||||
NAutoVTs=0' /etc/systemd/logind.conf
|
|
||||||
|
|
||||||
echo -n "Network fixes"
|
|
||||||
# initscripts don't like this file to be missing.
|
|
||||||
cat > /etc/sysconfig/network << EOF
|
|
||||||
NETWORKING=yes
|
|
||||||
NOZEROCONF=yes
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# For cloud images, 'eth0' _is_ the predictable device name, since
|
|
||||||
# we don't want to be tied to specific virtual (!) hardware
|
|
||||||
rm -f /etc/udev/rules.d/70*
|
|
||||||
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
|
|
||||||
|
|
||||||
# simple eth0 config, again not hard-coded to the build hardware
|
|
||||||
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF
|
|
||||||
DEVICE="eth0"
|
|
||||||
BOOTPROTO="dhcp"
|
|
||||||
ONBOOT="yes"
|
|
||||||
TYPE="Ethernet"
|
|
||||||
PERSISTENT_DHCLIENT="yes"
|
|
||||||
EOF
|
|
||||||
|
|
||||||
# generic localhost names
|
|
||||||
cat > /etc/hosts << EOF
|
|
||||||
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
|
|
||||||
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
|
|
||||||
|
|
||||||
EOF
|
|
||||||
echo .
|
|
||||||
|
|
||||||
|
|
||||||
# Because memory is scarce resource in most cloud/virt environments,
|
|
||||||
# and because this impedes forensics, we are differing from the Fedora
|
|
||||||
# default of having /tmp on tmpfs.
|
|
||||||
echo "Disabling tmpfs for /tmp."
|
|
||||||
systemctl mask tmp.mount
|
|
||||||
|
|
||||||
# make sure firstboot doesn't start
|
|
||||||
echo "RUN_FIRSTBOOT=NO" > /etc/sysconfig/firstboot
|
|
||||||
|
|
||||||
# Uncomment this if you want to use cloud init but suppress the creation
|
|
||||||
# of an "ec2-user" account. This will, in the absence of further config,
|
|
||||||
# cause the ssh key from a metadata source to be put in the root account.
|
|
||||||
#cat <<EOF > /etc/cloud/cloud.cfg.d/50_suppress_ec2-user_use_root.cfg
|
|
||||||
#users: []
|
|
||||||
#disable_root: 0
|
|
||||||
#EOF
|
|
||||||
|
|
||||||
echo "Removing random-seed so it's not the same in every image."
|
|
||||||
rm -f /var/lib/systemd/random-seed
|
|
||||||
|
|
||||||
echo "Cleaning old dnf repodata."
|
|
||||||
dnf history new
|
|
||||||
dnf clean all
|
|
||||||
truncate -c -s 0 /var/log/dnf.log
|
|
||||||
|
|
||||||
echo "Import RPM GPG key"
|
|
||||||
releasever=$(rpm --eval '%{fedora}')
|
|
||||||
basearch=$(uname -i)
|
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
|
||||||
|
|
||||||
echo "Packages within this cloud image:"
|
|
||||||
echo "-----------------------------------------------------------------------"
|
|
||||||
rpm -qa
|
|
||||||
echo "-----------------------------------------------------------------------"
|
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed/wanted
|
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
echo "Fixing SELinux contexts."
|
|
||||||
touch /var/log/cron
|
|
||||||
touch /var/log/boot.log
|
|
||||||
mkdir -p /var/cache/dnf
|
|
||||||
chattr -i /boot/extlinux/ldlinux.sys
|
|
||||||
/usr/sbin/fixfiles -R -a restore
|
|
||||||
chattr +i /boot/extlinux/ldlinux.sys
|
|
||||||
|
|
||||||
echo "Zeroing out empty space."
|
|
||||||
# This forces the filesystem to reclaim space from deleted files
|
|
||||||
dd bs=1M if=/dev/zero of=/var/tmp/zeros || :
|
|
||||||
rm -f /var/tmp/zeros
|
|
||||||
echo "(Don't worry -- that out-of-space error was expected.)"
|
|
||||||
|
|
||||||
# Enable network service here, as doing it in the services line
|
|
||||||
# fails due to RHBZ #1369794
|
|
||||||
/sbin/chkconfig network on
|
|
||||||
|
|
||||||
%end
|
|
||||||
|
|
||||||
@@ -14,6 +14,7 @@ R
|
|||||||
julia
|
julia
|
||||||
|
|
||||||
#Computational neuroscience packages
|
#Computational neuroscience packages
|
||||||
|
arbor
|
||||||
auryn-mpich
|
auryn-mpich
|
||||||
auryn-openmpi
|
auryn-openmpi
|
||||||
bionetgen
|
bionetgen
|
||||||
@@ -26,9 +27,8 @@ gnuplot
|
|||||||
moose
|
moose
|
||||||
nest
|
nest
|
||||||
neuron
|
neuron
|
||||||
neurord
|
|
||||||
octave
|
octave
|
||||||
paraview
|
# paraview
|
||||||
python3
|
python3
|
||||||
python3-brian2
|
python3-brian2
|
||||||
python-brian2-doc
|
python-brian2-doc
|
||||||
@@ -42,6 +42,7 @@ python3-neo
|
|||||||
# python-nineml-doc
|
# python-nineml-doc
|
||||||
python3-PyLEMS
|
python3-PyLEMS
|
||||||
python-PyLEMS-doc
|
python-PyLEMS-doc
|
||||||
|
python3-steps
|
||||||
smoldyn
|
smoldyn
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|||||||
@@ -26,11 +26,6 @@ rm -rf /tmp/*
|
|||||||
# https://pagure.io/atomic-wg/issue/308
|
# https://pagure.io/atomic-wg/issue/308
|
||||||
printf "tsflags=nodocs\n" >>/etc/dnf/dnf.conf
|
printf "tsflags=nodocs\n" >>/etc/dnf/dnf.conf
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1576993
|
|
||||||
systemctl disable dnf-makecache.timer
|
|
||||||
|
|
||||||
#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
|
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1343138
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1343138
|
||||||
# Fix /run/lock breakage since it's not tmpfs in docker
|
# Fix /run/lock breakage since it's not tmpfs in docker
|
||||||
@@ -44,7 +39,6 @@ systemctl mask systemd-remount-fs.service dev-hugepages.mount sys-fs-fuse-connec
|
|||||||
# [/usr/lib/tmpfiles.d/systemd.conf:26] Failed to replace specifiers: /run/log/journal/%m
|
# [/usr/lib/tmpfiles.d/systemd.conf:26] Failed to replace specifiers: /run/log/journal/%m
|
||||||
#
|
#
|
||||||
umount /run
|
umount /run
|
||||||
systemd-tmpfiles --prefix=/run/ --prefix=/var/run/ --create --boot || true
|
|
||||||
rm /run/nologin # https://pagure.io/atomic-wg/issue/316
|
rm /run/nologin # https://pagure.io/atomic-wg/issue/316
|
||||||
|
|
||||||
# Final pruning
|
# Final pruning
|
||||||
|
|||||||
@@ -38,8 +38,6 @@ rpm
|
|||||||
shadow-utils
|
shadow-utils
|
||||||
sssd-client
|
sssd-client
|
||||||
util-linux
|
util-linux
|
||||||
# needed by Anaconda https://bugzilla.redhat.com/show_bug.cgi?id=1744115
|
|
||||||
systemd
|
|
||||||
-kernel
|
-kernel
|
||||||
-dosfstools
|
-dosfstools
|
||||||
-e2fsprogs
|
-e2fsprogs
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ keyboard us
|
|||||||
timezone US/Eastern
|
timezone US/Eastern
|
||||||
selinux --enforcing
|
selinux --enforcing
|
||||||
firewall --enabled --service=mdns
|
firewall --enabled --service=mdns
|
||||||
services --enabled=sshd,NetworkManager,chronyd,zram-swap
|
services --enabled=sshd,NetworkManager,chronyd
|
||||||
network --bootproto=dhcp --device=link --activate
|
network --bootproto=dhcp --device=link --activate
|
||||||
rootpw --lock --iscrypted locked
|
rootpw --lock --iscrypted locked
|
||||||
shutdown
|
shutdown
|
||||||
@@ -32,7 +32,6 @@ firstboot --reconfig
|
|||||||
@core
|
@core
|
||||||
@standard
|
@standard
|
||||||
@hardware-support
|
@hardware-support
|
||||||
zram
|
|
||||||
|
|
||||||
kernel
|
kernel
|
||||||
# remove this in %post
|
# remove this in %post
|
||||||
@@ -40,7 +39,6 @@ dracut-config-generic
|
|||||||
-dracut-config-rescue
|
-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-armv7
|
|
||||||
rng-tools
|
rng-tools
|
||||||
chrony
|
chrony
|
||||||
bcm283x-firmware
|
bcm283x-firmware
|
||||||
@@ -51,21 +49,32 @@ initial-setup
|
|||||||
-usb_modeswitch
|
-usb_modeswitch
|
||||||
-generic-release*
|
-generic-release*
|
||||||
|
|
||||||
# make sure all the locales are available for inital0-setup and anaconda to work
|
# make sure all the locales are available for inital-setup and anaconda to work
|
||||||
glibc-all-langpacks
|
glibc-all-langpacks
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
# Find the architecture we are on
|
||||||
|
arch=$(uname -m)
|
||||||
|
|
||||||
# Setup Raspberry Pi firmware
|
# Setup Raspberry Pi firmware
|
||||||
|
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
|
||||||
|
if [[ $arch == "aarch64" ]]; then
|
||||||
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||||
|
else
|
||||||
|
cp -P /usr/share/uboot/rpi_2/u-boot.bin /boot/efi/rpi2-u-boot.bin
|
||||||
|
cp -P /usr/share/uboot/rpi_3_32b/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
|
cp -P /usr/share/uboot/rpi_4_32b/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
releasever=$(rpm --eval '%{fedora}')
|
releasever=$(rpm --eval '%{fedora}')
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||||
echo "Packages within this disk image"
|
echo "Packages within this disk image"
|
||||||
rpm -qa
|
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||||
rm -f /var/lib/rpm/__db*
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
%include fedora-disk-base.ks
|
%include fedora-disk-base.ks
|
||||||
%include fedora-minimal-common.ks
|
%include fedora-minimal-common.ks
|
||||||
|
|
||||||
services --enabled=sshd,NetworkManager,chronyd,initial-setup,zram-swap
|
services --enabled=sshd,NetworkManager,chronyd,initial-setup
|
||||||
|
|
||||||
autopart --type=plain --noswap
|
autopart --type=plain --noswap
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
%include fedora-disk-base.ks
|
%include fedora-disk-base.ks
|
||||||
|
|
||||||
services --enabled=sshd,NetworkManager,chronyd,initial-setup,zram-swap
|
services --enabled=sshd,NetworkManager,chronyd,initial-setup
|
||||||
|
|
||||||
autopart --noswap
|
autopart --noswap
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
|
fedora-release-server
|
||||||
# install the default groups for the server environment since installing the environment is not working
|
# install the default groups for the server environment since installing the environment is not working
|
||||||
@server-product
|
@server-product
|
||||||
@standard
|
@standard
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
bootloader --append="cma=256MB"
|
bootloader --append="cma=256MB"
|
||||||
|
|
||||||
services --enabled=sshd,NetworkManager,chronyd,zram-swap
|
services --enabled=sshd,NetworkManager,chronyd
|
||||||
|
|
||||||
autopart --type=plain --noswap
|
autopart --type=btrfs --noswap
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
-initial-setup
|
-initial-setup
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
|
|
||||||
bootloader --append="cma=192MB"
|
bootloader --append="cma=192MB"
|
||||||
|
|
||||||
services --enabled=sshd,NetworkManager,chronyd,zram-swap
|
services --enabled=sshd,NetworkManager,chronyd
|
||||||
|
|
||||||
autopart --type=plain --noswap
|
autopart --type=btrfs --noswap
|
||||||
|
|
||||||
%packages
|
%packages
|
||||||
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ rootpw --lock --iscrypted locked
|
|||||||
bootloader --timeout=1 --append="net.ifnames=0 modprobe.blacklist=vc4"
|
bootloader --timeout=1 --append="net.ifnames=0 modprobe.blacklist=vc4"
|
||||||
|
|
||||||
network --bootproto=dhcp --device=link --activate --onboot=on
|
network --bootproto=dhcp --device=link --activate --onboot=on
|
||||||
services --enabled=NetworkManager,sshd,rngd,zram-swap
|
services --enabled=NetworkManager,sshd,rngd
|
||||||
|
|
||||||
zerombr
|
zerombr
|
||||||
clearpart --all --initlabel --disklabel=msdos
|
clearpart --all --initlabel --disklabel=msdos
|
||||||
@@ -26,9 +26,12 @@ reboot
|
|||||||
%post --erroronfail
|
%post --erroronfail
|
||||||
# Find the architecture we are on
|
# Find the architecture we are on
|
||||||
arch=$(uname -m)
|
arch=$(uname -m)
|
||||||
|
if [[ $arch == "armv7l" ]]; then
|
||||||
|
arch="armhfp"
|
||||||
|
fi
|
||||||
|
|
||||||
# Setup Raspberry Pi firmware
|
# Setup Raspberry Pi firmware
|
||||||
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
|
if [[ $arch == "aarch64" ]] || [[ $arch == "armhfp" ]]; then
|
||||||
if [[ $arch == "aarch64" ]]; then
|
if [[ $arch == "aarch64" ]]; then
|
||||||
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||||
@@ -81,7 +84,7 @@ rm -f /var/lib/systemd/random-seed
|
|||||||
|
|
||||||
echo "Packages within this iot image:"
|
echo "Packages within this iot image:"
|
||||||
echo "-----------------------------------------------------------------------"
|
echo "-----------------------------------------------------------------------"
|
||||||
rpm -qa
|
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||||
echo "-----------------------------------------------------------------------"
|
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*
|
||||||
|
|||||||
@@ -34,9 +34,7 @@ astrometry
|
|||||||
astrometry-tycho2
|
astrometry-tycho2
|
||||||
cdsclient
|
cdsclient
|
||||||
fpack
|
fpack
|
||||||
gcx
|
|
||||||
psfex
|
psfex
|
||||||
saoimage
|
|
||||||
scamp
|
scamp
|
||||||
sextractor
|
sextractor
|
||||||
siril
|
siril
|
||||||
@@ -54,7 +52,7 @@ indistarter
|
|||||||
kstars
|
kstars
|
||||||
|
|
||||||
# misc. astronomy
|
# misc. astronomy
|
||||||
celestia
|
#celestia
|
||||||
stellarium
|
stellarium
|
||||||
virtualplanet
|
virtualplanet
|
||||||
|
|
||||||
@@ -107,6 +105,10 @@ python3-matplotlib-tk
|
|||||||
# Python IDE very useful for scientific use
|
# Python IDE very useful for scientific use
|
||||||
python3-spyder
|
python3-spyder
|
||||||
|
|
||||||
|
# BOINC for distributed computing
|
||||||
|
boinc-client
|
||||||
|
boinc-manager
|
||||||
|
|
||||||
#Version control- a GUI for each as well
|
#Version control- a GUI for each as well
|
||||||
|
|
||||||
# Installing rapidsvn will also install subversion package
|
# Installing rapidsvn will also install subversion package
|
||||||
|
|||||||
@@ -52,6 +52,10 @@ anaconda
|
|||||||
anaconda-install-env-deps
|
anaconda-install-env-deps
|
||||||
anaconda-live
|
anaconda-live
|
||||||
@anaconda-tools
|
@anaconda-tools
|
||||||
|
# Anaconda has a weak dep on this and we don't want it on livecds, see
|
||||||
|
# https://fedoraproject.org/wiki/Changes/RemoveDeviceMapperMultipathFromWorkstationLiveCD
|
||||||
|
-fcoe-utils
|
||||||
|
-device-mapper-multipath
|
||||||
|
|
||||||
# Need aajohan-comfortaa-fonts for the SVG rnotes images
|
# Need aajohan-comfortaa-fonts for the SVG rnotes images
|
||||||
aajohan-comfortaa-fonts
|
aajohan-comfortaa-fonts
|
||||||
@@ -302,7 +306,7 @@ releasever=$(rpm --eval '%{fedora}')
|
|||||||
basearch=$(uname -i)
|
basearch=$(uname -i)
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
|
||||||
echo "Packages within this LiveCD"
|
echo "Packages within this LiveCD"
|
||||||
rpm -qa
|
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||||
rm -f /var/lib/rpm/__db*
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
|||||||
@@ -9,4 +9,4 @@
|
|||||||
%include fedora-comp-neuro-common.ks
|
%include fedora-comp-neuro-common.ks
|
||||||
%include fedora-neuro-gnome-common.ks
|
%include fedora-neuro-gnome-common.ks
|
||||||
|
|
||||||
part / --size 9656
|
part / --size 10240
|
||||||
|
|||||||
@@ -17,8 +17,8 @@ part / --size 14336
|
|||||||
@design-suite
|
@design-suite
|
||||||
|
|
||||||
# Provides backup application
|
# Provides backup application
|
||||||
deja-dup
|
#deja-dup
|
||||||
deja-dup-nautilus
|
#deja-dup-nautilus
|
||||||
|
|
||||||
# Add extra gnome applications
|
# Add extra gnome applications
|
||||||
gnome-books
|
gnome-books
|
||||||
@@ -32,17 +32,18 @@ powerline
|
|||||||
powerline-fonts
|
powerline-fonts
|
||||||
|
|
||||||
# Extra wallpapers
|
# Extra wallpapers
|
||||||
f32-backgrounds-extras-gnome
|
f33-backgrounds-extras-gnome
|
||||||
|
|
||||||
# removal of unneeded applications
|
# removal of unneeded applications
|
||||||
-gnome-boxes
|
-gnome-boxes
|
||||||
-eog
|
-eog
|
||||||
-rdesktop
|
-rdesktop
|
||||||
|
|
||||||
# temporarily removing conflicting application
|
# temporarily removing conflicting applications
|
||||||
-mypaint
|
|
||||||
-sparkleshare
|
|
||||||
-blender-luxcorerender
|
-blender-luxcorerender
|
||||||
|
-mypaint
|
||||||
|
-shutter
|
||||||
|
-sparkleshare
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ glaxium
|
|||||||
gnubg
|
gnubg
|
||||||
gnugo
|
gnugo
|
||||||
haxima
|
haxima
|
||||||
hedgewars
|
#hedgewars -- broken
|
||||||
kcheckers
|
kcheckers
|
||||||
knights
|
knights
|
||||||
lbrickbuster2
|
lbrickbuster2
|
||||||
@@ -140,7 +140,7 @@ wordwarvi
|
|||||||
xgalaxy
|
xgalaxy
|
||||||
# zasx # Would pull in fluid-soundfont-lite-patches
|
# zasx # Would pull in fluid-soundfont-lite-patches
|
||||||
|
|
||||||
# falling blocks games (small)
|
# falling blocks games (small)
|
||||||
|
|
||||||
amoebax
|
amoebax
|
||||||
crack-attack
|
crack-attack
|
||||||
@@ -165,13 +165,11 @@ vodovod
|
|||||||
|
|
||||||
# card games
|
# card games
|
||||||
|
|
||||||
#poker2d - dropped from F14 for being orphaned
|
|
||||||
PySolFC
|
PySolFC
|
||||||
|
|
||||||
# educational/simulation
|
# educational/simulation
|
||||||
|
|
||||||
bygfoot
|
#celestia - not currently building
|
||||||
celestia
|
|
||||||
planets
|
planets
|
||||||
tuxpaint
|
tuxpaint
|
||||||
tuxpaint-stamps
|
tuxpaint-stamps
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ nano
|
|||||||
|
|
||||||
# fedora jam theming (to be customized)
|
# fedora jam theming (to be customized)
|
||||||
fedora-jam-backgrounds
|
fedora-jam-backgrounds
|
||||||
|
fedora-jam-kde-theme
|
||||||
|
|
||||||
#Misc. Utils
|
#Misc. Utils
|
||||||
screen
|
screen
|
||||||
@@ -65,7 +66,7 @@ thunderbird
|
|||||||
#setup kickoff favorites
|
#setup kickoff favorites
|
||||||
/bin/mkdir -p /etc/skel/.config
|
/bin/mkdir -p /etc/skel/.config
|
||||||
|
|
||||||
JAMFAVORITES=/usr/share/applications/firefox.desktop,/usr/share/applications/qjackctl.desktop,/usr/share/applications/ardour5.desktop,/usr/share/applications/carla.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/org.kde.dolphin.desktop,/usr/share/applications/systemsettings.desktop,/usr/share/applications/org.kde.kontact.desktop
|
JAMFAVORITES=/usr/share/applications/firefox.desktop,/usr/share/applications/mozilla-thunderbird.desktop,/usr/share/applications/studio-controls.desktop,/usr/share/applications/ardour6.desktop,/usr/share/applications/carla.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/org.kde.dolphin.desktop,/usr/share/applications/systemsettings.desktop
|
||||||
JAMFAVORITESLIVE=/usr/share/applications/liveinst.desktop,$JAMFAVORITES
|
JAMFAVORITESLIVE=/usr/share/applications/liveinst.desktop,$JAMFAVORITES
|
||||||
|
|
||||||
cat <<EOF >> /etc/skel/.config/kickoffrc
|
cat <<EOF >> /etc/skel/.config/kickoffrc
|
||||||
@@ -82,3 +83,5 @@ cat >> /etc/rc.d/init.d/livesys << EOF
|
|||||||
EOF
|
EOF
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
%include fedora-mate-common.ks
|
%include fedora-mate-common.ks
|
||||||
%include fedora-live-minimization.ks
|
%include fedora-live-minimization.ks
|
||||||
|
|
||||||
part / --size 7168
|
part / --size 8192
|
||||||
|
|
||||||
%post
|
%post
|
||||||
cat >> /etc/rc.d/init.d/livesys << EOF
|
cat >> /etc/rc.d/init.d/livesys << EOF
|
||||||
|
|||||||
@@ -8,4 +8,4 @@
|
|||||||
%include fedora-python-classroom-gnome-common.ks
|
%include fedora-python-classroom-gnome-common.ks
|
||||||
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1695796
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1695796
|
||||||
part / --size 7168
|
part / --size 8192
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ if [ -f /usr/share/applications/liveinst.desktop ]; then
|
|||||||
|
|
||||||
cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE
|
cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE
|
||||||
[org.gnome.shell]
|
[org.gnome.shell]
|
||||||
favorite-apps=['firefox.desktop', 'evolution.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'org.gnome.Nautilus.desktop', 'anaconda.desktop']
|
favorite-apps=['firefox.desktop', 'org.gnome.Calendar.desktop', 'rhythmbox.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'anaconda.desktop']
|
||||||
FOE
|
FOE
|
||||||
|
|
||||||
# Make the welcome screen show up
|
# Make the welcome screen show up
|
||||||
|
|||||||
@@ -13,6 +13,9 @@
|
|||||||
%include fedora-live-minimization.ks
|
%include fedora-live-minimization.ks
|
||||||
%include fedora-xfce-common.ks
|
%include fedora-xfce-common.ks
|
||||||
|
|
||||||
|
# need a bigger /
|
||||||
|
part / --size 6144
|
||||||
|
|
||||||
%post
|
%post
|
||||||
# xfce configuration
|
# xfce configuration
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ wqy-microhei-fonts # a compact CJK font, to replace:
|
|||||||
-adobe-source-han-sans-cn-fonts # simplified Chinese
|
-adobe-source-han-sans-cn-fonts # simplified Chinese
|
||||||
-adobe-source-han-sans-tw-fonts # traditional Chinese
|
-adobe-source-han-sans-tw-fonts # traditional Chinese
|
||||||
|
|
||||||
-paratype-pt-sans-fonts # Cyrillic (already supported by DejaVu), huge
|
-pt-sans-fonts # Cyrillic (already supported by DejaVu), huge
|
||||||
#-stix-fonts # mathematical symbols
|
#-stix-fonts # mathematical symbols
|
||||||
|
|
||||||
# remove input methods to free space
|
# remove input methods to free space
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
%packages
|
%packages
|
||||||
|
fedora-release-matecompiz
|
||||||
@mate
|
@mate
|
||||||
compiz
|
compiz
|
||||||
compiz-plugins-main
|
compiz-plugins-main
|
||||||
@@ -15,10 +16,6 @@ emerald
|
|||||||
fusion-icon
|
fusion-icon
|
||||||
@networkmanager-submodules
|
@networkmanager-submodules
|
||||||
|
|
||||||
# some apps from mate-applications
|
|
||||||
caja-actions
|
|
||||||
mate-disk-usage-analyzer
|
|
||||||
|
|
||||||
# blacklist applications which breaks mate-desktop
|
# blacklist applications which breaks mate-desktop
|
||||||
-audacious
|
-audacious
|
||||||
|
|
||||||
@@ -38,11 +35,11 @@ nss-mdns
|
|||||||
-fedora-icon-theme
|
-fedora-icon-theme
|
||||||
-gnome-icon-theme
|
-gnome-icon-theme
|
||||||
-gnome-icon-theme-symbolic
|
-gnome-icon-theme-symbolic
|
||||||
|
-gnome-logs
|
||||||
-gnome-software
|
-gnome-software
|
||||||
-gnome-user-docs
|
-gnome-user-docs
|
||||||
|
|
||||||
-@mate-applications
|
-@mate-applications
|
||||||
-mate-icon-theme-faenza
|
|
||||||
|
|
||||||
# Help and art can be big, too
|
# Help and art can be big, too
|
||||||
-gnome-user-docs
|
-gnome-user-docs
|
||||||
|
|||||||
@@ -6,7 +6,8 @@ selinux --enforcing
|
|||||||
# Disabled for modular compose (for now)
|
# Disabled for modular compose (for now)
|
||||||
#firewall --enabled --service=mdns
|
#firewall --enabled --service=mdns
|
||||||
# Disabled for modular compose (for now)
|
# Disabled for modular compose (for now)
|
||||||
#services --enabled=sshd,NetworkManager,chronyd,initial-setup
|
#services --enabled=sshd,chronyd,initial-setup
|
||||||
|
services --enabled=NetworkManager
|
||||||
network --bootproto=dhcp --device=link --activate
|
network --bootproto=dhcp --device=link --activate
|
||||||
rootpw --lock --iscrypted locked
|
rootpw --lock --iscrypted locked
|
||||||
shutdown
|
shutdown
|
||||||
@@ -35,7 +36,7 @@ glibc-minimal-langpack
|
|||||||
grubby
|
grubby
|
||||||
kernel
|
kernel
|
||||||
sssd-client
|
sssd-client
|
||||||
dhcp-client
|
@networkmanager-submodules
|
||||||
-fedora-logos
|
-fedora-logos
|
||||||
-coreutils
|
-coreutils
|
||||||
-dosfstools
|
-dosfstools
|
||||||
@@ -53,14 +54,25 @@ dhcp-client
|
|||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
# Find the architecture we are on
|
||||||
|
arch=$(uname -m)
|
||||||
|
|
||||||
# Setup Raspberry Pi firmware
|
# Setup Raspberry Pi firmware
|
||||||
|
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
|
||||||
|
if [[ $arch == "aarch64" ]]; then
|
||||||
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||||
|
else
|
||||||
|
cp -P /usr/share/uboot/rpi_2/u-boot.bin /boot/efi/rpi2-u-boot.bin
|
||||||
|
cp -P /usr/share/uboot/rpi_3_32b/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||||
|
cp -P /usr/share/uboot/rpi_4_32b/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
releasever=$(rpm --eval '%{fedora}')
|
releasever=$(rpm --eval '%{fedora}')
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||||
echo "Packages within this disk image"
|
echo "Packages within this disk image"
|
||||||
rpm -qa
|
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||||
rm -f /var/lib/rpm/__db*
|
rm -f /var/lib/rpm/__db*
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,15 @@ wget
|
|||||||
-python35
|
-python35
|
||||||
-python36
|
-python36
|
||||||
-python37
|
-python37
|
||||||
|
-python38
|
||||||
|
-python2.7
|
||||||
|
-python3.5
|
||||||
|
-python3.6
|
||||||
|
-python3.7
|
||||||
|
-python3.8
|
||||||
-pypy
|
-pypy
|
||||||
|
|
||||||
|
# Remove LaTeX, see https://bugzilla.redhat.com/show_bug.cgi?id=1862450
|
||||||
|
-texlive-latex
|
||||||
|
|
||||||
%end
|
%end
|
||||||
|
|||||||
@@ -4,9 +4,9 @@
|
|||||||
@engineering-and-scientific
|
@engineering-and-scientific
|
||||||
|
|
||||||
# scilab
|
# scilab
|
||||||
scilab
|
## scilab
|
||||||
scilab-devel
|
## scilab-devel
|
||||||
scilab-doc
|
## scilab-doc
|
||||||
|
|
||||||
# Remove sagemath explicitly?
|
# Remove sagemath explicitly?
|
||||||
-sagemath
|
-sagemath
|
||||||
@@ -128,8 +128,8 @@ dia
|
|||||||
inkscape
|
inkscape
|
||||||
xzgv
|
xzgv
|
||||||
gimp
|
gimp
|
||||||
ggobi
|
## ggobi
|
||||||
ggobi-devel
|
## ggobi-devel
|
||||||
#g3data
|
#g3data
|
||||||
#Mayavi
|
#Mayavi
|
||||||
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ firewall --enabled --service=mdns,presence
|
|||||||
%packages
|
%packages
|
||||||
|
|
||||||
# == Core Sugar Platform ==
|
# == Core Sugar Platform ==
|
||||||
|
fedora-release-soas
|
||||||
@sugar-desktop
|
@sugar-desktop
|
||||||
|
|
||||||
# explicitly remove a bunch of extra stuff
|
# explicitly remove a bunch of extra stuff
|
||||||
@@ -38,6 +39,10 @@ firewall --enabled --service=mdns,presence
|
|||||||
-hyperv-daemons
|
-hyperv-daemons
|
||||||
-sane-backends
|
-sane-backends
|
||||||
-sane-backends-drivers-scanners
|
-sane-backends-drivers-scanners
|
||||||
|
-chkconfig
|
||||||
|
-dhcp-client
|
||||||
|
-gcc-gdb-plugin
|
||||||
|
-gcc
|
||||||
|
|
||||||
# Add some extra fonts
|
# Add some extra fonts
|
||||||
dejavu-sans-fonts
|
dejavu-sans-fonts
|
||||||
|
|||||||
@@ -12,6 +12,7 @@
|
|||||||
|
|
||||||
%packages
|
%packages
|
||||||
|
|
||||||
|
fedora-release-xfce
|
||||||
@networkmanager-submodules
|
@networkmanager-submodules
|
||||||
@xfce-desktop
|
@xfce-desktop
|
||||||
@xfce-apps
|
@xfce-apps
|
||||||
@@ -19,16 +20,12 @@
|
|||||||
@xfce-media
|
@xfce-media
|
||||||
@xfce-office
|
@xfce-office
|
||||||
|
|
||||||
# unlock default keyring. FIXME: Should probably be done in comps
|
|
||||||
gnome-keyring-pam
|
|
||||||
# Admin tools are handy to have
|
# Admin tools are handy to have
|
||||||
@admin-tools
|
@admin-tools
|
||||||
# Add some screensavers, people seem to like them
|
# Add some screensavers, people seem to like them
|
||||||
# Note that blank is still default.
|
# Note that blank is still default.
|
||||||
xscreensaver-extras
|
xscreensaver-extras
|
||||||
wget
|
wget
|
||||||
# Better more popular browser
|
|
||||||
#firefox
|
|
||||||
system-config-printer
|
system-config-printer
|
||||||
|
|
||||||
# save some space
|
# save some space
|
||||||
|
|||||||
@@ -59,6 +59,10 @@ maintainers = [ "Darryl T. Agostinelli" ]
|
|||||||
fas = [ "eeickmeyer" ]
|
fas = [ "eeickmeyer" ]
|
||||||
maintainers = [ "Erich Eickmeyer" ]
|
maintainers = [ "Erich Eickmeyer" ]
|
||||||
|
|
||||||
|
[labs.python_classroom.x86_64]
|
||||||
|
fas = [ "churchyard", "python-sig" ]
|
||||||
|
maintainers = [ "Miro Hrončok", "Python SIG" ]
|
||||||
|
|
||||||
[labs.scientific_kde.x86_64]
|
[labs.scientific_kde.x86_64]
|
||||||
fas = [ "scitech" ]
|
fas = [ "scitech" ]
|
||||||
maintainers = [ "SciTech SIG" ]
|
maintainers = [ "SciTech SIG" ]
|
||||||
|
|||||||
@@ -1,159 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
TOPDIR=/var/tmp
|
|
||||||
|
|
||||||
STATEFILE=$TOPDIR/nightlylivecdstatefile
|
|
||||||
# WARNING: MirrorManager must always give this mirror to the host running this script
|
|
||||||
STATEPATH=http://infrastructure.fedoraproject.org/pub/fedora/linux/development/13/x86_64/os/repodata/repomd.xml
|
|
||||||
|
|
||||||
getdatehash() {
|
|
||||||
DUMP=$(wget --no-cache -S $1 -O /dev/null 2>&1)
|
|
||||||
echo "$DUMP" | grep -q "HTTP/1.1 200 OK"
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
DATE=$(echo "$DUMP"|grep '^ Last-Modified'|sha1sum |awk {'print $1'})
|
|
||||||
else
|
|
||||||
echo "ERROR: $STATEPATH failed."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
getdatehash $STATEPATH
|
|
||||||
|
|
||||||
if [ -f $STATEFILE ]; then
|
|
||||||
OLDDATE=$(cat $STATEFILE)
|
|
||||||
if [ "$OLDDATE" == "$DATE" ]; then
|
|
||||||
# No change, exit
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Save date hash
|
|
||||||
echo "$DATE" > $STATEFILE
|
|
||||||
echo "Saving date hash: $DATE"
|
|
||||||
|
|
||||||
# Check for running livecd-creator and abort if it is running
|
|
||||||
if ps -ef |grep -v grep |grep -q livecd-creator; then
|
|
||||||
echo "ERROR: Another livecd-creator is still running. Aborting."
|
|
||||||
exit 255
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -d $TOPDIR/spin-kickstarts/ ]; then
|
|
||||||
cd $TOPDIR
|
|
||||||
git clone http://git.fedorahosted.org/git/spin-kickstarts.git
|
|
||||||
fi
|
|
||||||
|
|
||||||
# pull any git updates to kickstarts
|
|
||||||
|
|
||||||
cd $TOPDIR/spin-kickstarts/
|
|
||||||
git reset --hard
|
|
||||||
git pull
|
|
||||||
|
|
||||||
if [ ! -d $TOPDIR/nightly-composes ]; then
|
|
||||||
mkdir -p $TOPDIR/nightly-composes
|
|
||||||
fi
|
|
||||||
|
|
||||||
DATE=`date +%Y%m%d.%H`
|
|
||||||
|
|
||||||
# remove the previous days compose
|
|
||||||
find $TOPDIR/nightly-composes/ -name '*.iso' -exec rm -f '{}' \;
|
|
||||||
|
|
||||||
# loop though the valid spins
|
|
||||||
for i in `echo desktop design-suite xfce broffice.org kde electronic-lab games lxde soas security`
|
|
||||||
do
|
|
||||||
|
|
||||||
cd $TOPDIR/nightly-composes/
|
|
||||||
|
|
||||||
echo $i
|
|
||||||
|
|
||||||
if [ ! -d $TOPDIR/nightly-composes/$i ]; then
|
|
||||||
mkdir -p $TOPDIR/nightly-composes/$i
|
|
||||||
fi
|
|
||||||
if [ ! -d $TOPDIR/nightly-composes/$i/logs ]; then
|
|
||||||
mkdir -p $TOPDIR/nightly-composes/$i/logs
|
|
||||||
touch $TOPDIR/nightly-composes/$i/logs/SIZEHISTORY-i386
|
|
||||||
touch $TOPDIR/nightly-composes/$i/logs/SIZEHISTORY-x86_64
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd $i
|
|
||||||
|
|
||||||
# compose f13 not rawhide for now.
|
|
||||||
sed -i 's/rawhide/fedora-13/g' $TOPDIR/spin-kickstarts/*.ks
|
|
||||||
|
|
||||||
# debrand
|
|
||||||
# Note this is not needed for 'official' test spins
|
|
||||||
#sed -i 's/^-fedora-logos/fedora-logos/' $TOPDIR/spin-kickstarts/fedora-livecd-$i.ks
|
|
||||||
#sed -i 's/^generic-logos//' $TOPDIR/spin-kickstarts/fedora-livecd-$i.ks
|
|
||||||
|
|
||||||
echo "INFO: $i i386 live image compose starting"
|
|
||||||
setarch i386 livecd-creator -c $TOPDIR/spin-kickstarts/fedora-live*-$i.ks -f $i-i386-$DATE > logs/$DATE-i386.log 2>&1
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "ERROR: $i i386 live image failed to compose on $DATE"
|
|
||||||
mv logs/$DATE-i386.log logs/$DATE-FAILED-i386.log
|
|
||||||
else
|
|
||||||
du $TOPDIR/nightly-composes/$i/$i-i386-$DATE.iso >> logs/SIZEHISTORY-i386
|
|
||||||
tail -2 logs/SIZEHISTORY-i386
|
|
||||||
rm -f CHECKSUM-i386
|
|
||||||
sha256sum $i-i386-$DATE.iso > CHECKSUM-i386
|
|
||||||
cat CHECKSUM-i386
|
|
||||||
echo "INFO: $i i386 live image compose finished OK"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "INFO: $i x86_64 live image compose starting"
|
|
||||||
# Need to shorten the electronic-lab label to the 32 char limit
|
|
||||||
if [ "$i" = "electronic-lab" ]; then
|
|
||||||
livecd-creator -c $TOPDIR/spin-kickstarts/fedora-live*-$i.ks -f e-lab-x86_64-$DATE > logs/$DATE-x86_64.log 2>&1
|
|
||||||
else
|
|
||||||
livecd-creator -c $TOPDIR/spin-kickstarts/fedora-live*-$i.ks -f $i-x86_64-$DATE > logs/$DATE-x86_64.log 2>&1
|
|
||||||
fi
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "ERROR: $i x86_64 live image failed to compose on $DATE"
|
|
||||||
mv logs/$DATE-x86_64.log logs/$DATE-FAILED-x86_64.log
|
|
||||||
else
|
|
||||||
if [ "$i" = "electronic-lab" ]; then
|
|
||||||
du $TOPDIR/nightly-composes/$i/e-lab-x86_64-$DATE.iso >> logs/SIZEHISTORY-x86_64
|
|
||||||
tail -2 logs/SIZEHISTORY-x86_64
|
|
||||||
rm -f CHECKSUM-x86_64
|
|
||||||
sha256sum e-lab-x86_64-$DATE.iso > CHECKSUM-x86_64
|
|
||||||
cat CHECKSUM-x86_64
|
|
||||||
else
|
|
||||||
du $TOPDIR/nightly-composes/$i/$i-x86_64-$DATE.iso >> logs/SIZEHISTORY-x86_64
|
|
||||||
tail -2 logs/SIZEHISTORY-x86_64
|
|
||||||
rm -f CHECKSUM-x86_64
|
|
||||||
sha256sum $i-x86_64-$DATE.iso > CHECKSUM-x86_64
|
|
||||||
cat CHECKSUM-x86_64
|
|
||||||
fi
|
|
||||||
echo "INFO: $i x86_64 live image compose finished OK"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# remove old resize image
|
|
||||||
#rm -f /tmp/resize-image-*
|
|
||||||
done
|
|
||||||
|
|
||||||
# do aos spin
|
|
||||||
echo "INFO: aos i386 live image compose starting"
|
|
||||||
cd $TOPDIR/nightly-composes/aos/
|
|
||||||
setarch i386 livecd-creator -c $TOPDIR/spin-kickstarts/fedora-aos.ks -f aos-i386-$DATE > logs/$DATE-i386.log 2>&1
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "ERROR: aos i386 live image failed to compose on $DATE"
|
|
||||||
mv logs/$DATE-i386.log logs/$DATE-FAILED-i386.log
|
|
||||||
else
|
|
||||||
du $TOPDIR/nightly-composes/aos/aos-i386-$DATE.iso >> logs/SIZEHISTORY-i386
|
|
||||||
tail -2 logs/SIZEHISTORY-i386
|
|
||||||
rm -f CHECKSUM-i386
|
|
||||||
sha256sum aos-i386-$DATE.iso > CHECKSUM-i386
|
|
||||||
cat CHECKSUM-i386
|
|
||||||
echo "INFO: aos i386 live image compose finished OK"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "INFO: aos x86_64 live image compose starting"
|
|
||||||
livecd-creator -c $TOPDIR/spin-kickstarts/fedora-aos.ks -f aos-x86_64-$DATE > logs/$DATE-x86_64.log 2>&1
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
echo "ERROR: aos x86_64 live image failed to compose on $DATE"
|
|
||||||
mv logs/$DATE-x86_64.log logs/$DATE-FAILED-x86_64.log
|
|
||||||
else
|
|
||||||
du $TOPDIR/nightly-composes/aos/aos-x86_64-$DATE.iso >> logs/SIZEHISTORY-x86_64
|
|
||||||
tail -2 logs/SIZEHISTORY-x86_64
|
|
||||||
rm -f CHECKSUM-x86_64
|
|
||||||
sha256sum aos-x86_64-$DATE.iso > CHECKSUM-x86_64
|
|
||||||
cat CHECKSUM-x86_64
|
|
||||||
echo "INFO: aos x86_64 live image compose finished OK"
|
|
||||||
fi
|
|
||||||
Reference in New Issue
Block a user