Compare commits

..

25 Commits
f33 ... 0.29.2

Author SHA1 Message Date
Kevin Fenzi
028fd2edcd Merge #447 Remove exclusion of iproute-tc from fedora-arm-base. 2018-10-17 20:49:27 +00:00
Dusty Mabe
9e89057b4a fedora-atomic: split out kickstarts to fix vagrant
In the vagrant kickstarts we had something like

 %include fedora-atomic-vagrant.ks
 %include fedora-atomic-updates.ks

but both fedora-atomic-updates.ks and fedora-atomic-vagrant.ks
included fedora-atomic.ks which means we got duplicate things
in the flattened ks and we get errors. This splits it out a bit
farther so we don't get duplicates.
2018-10-12 17:21:18 -04:00
Paul Whalen
5f9a323aea Remove exclusion of iproute-tc from fedora-arm-base.
Signed-off-by: Paul Whalen <pwhalen@redhat.com>
2018-10-12 16:02:07 -04:00
Dusty Mabe
899bc45aa1 fedora-atomic: add updates and updates-testing kickstarts
This is so we can build media during the updates composes using the
updates and or testing refs. They include the base fedora-atomic.ks.
2018-10-11 13:12:50 -04:00
Peter Robinson
8c83a275ee Fix default partitioning on IoT images post SBSA fix in blivet
Signed-off-by: Peter Robinson <pbrobinson@fedoraproject.org>
2018-10-11 17:53:41 +01:00
Frederick Grose
847afdf7a0 livesys: continue instead of return in cmdline do loops.
return is an improper exit command for do loops.
From dracut.cmdline(7):
"The last value in the kernel command line is the value .. honored."
2018-10-02 18:59:04 -07:00
Frederick Grose
1fd9547603 fedora-soas: Include livecd-iso-to-disk in .iso filesystem.
Inject install code in lorax template live/x86.tmpl for livemedia-
  creator builds.
Also, remove wrong path for dracut;
give glib-compile-schemas the schemas directory;
update maintainers.
2018-10-02 15:36:36 -07:00
Amit Saha
4a677c7613 Update fedora-scientific-common.ks 2018-09-26 07:14:00 +00:00
Amit Saha
b8f8e39b7c Update fedora-scientific-common.ks
Workaround for https://pagure.io/releng/issue/7814
2018-09-26 02:56:12 +00:00
Kevin Fenzi
b8b9f532b6 Merge #438 Drop fedora-live-minimization use from cinnamon 2018-09-26 00:14:04 +00:00
Kevin Fenzi
de39b451c9 Merge #436 Update fedora-minimization.ks 2018-09-26 00:11:15 +00:00
Adam Williamson
249374e72b Drop fedora-live-minimization use from cinnamon
live-minimization is kinda old, and dates from the time we were
trying to fit in CD size. No-one cares much about that any more.
One of these exclusions (sane-backends) was contradictory for
Cinnamon lives and broke the compose since the recent dnf change
to fail compose on dependency issues (because the cinnamon comps
group explicitly includes sane-backends-drivers-scanners, but
this exclusion excludes one of its deps). To resolve that,
@grinnz is fine with just dropping the use of live-minimization
from the cinnamon images entirely, so this does that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-25 17:03:52 -07:00
Adam Williamson
5f600c3412 Update fedora-minimization.ks
All these packages used to be explicitly default or mandatory
in comps groups that were on live images, but no longer are.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-25 16:59:32 -07:00
Adam Williamson
a0ad041cc3 MATE: drop colord exclusion (required by foomatic)
foomatic requires colord. Before dnf-3.5.1-2.fc30, this meant
foomatic was being silently excluded from MATE images. Now it
means they fail to compose. Let's drop the exclusion so the
images compose again. If the MATE maintainers want to reduce
size, they will have to explicitly exclude foomatic (and be OK
with doing so, as it probably breaks printing).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-25 16:36:36 -07:00
Kevin Fenzi
97368dfb7b Merge #432 Move exclusions of trousers-lib and iproute-tc to minimal-common 2018-09-25 22:49:46 +00:00
Kevin Fenzi
1052911243 do not exclude foomatic-db-ppds anymore 2018-09-25 15:29:53 -07:00
Adam Williamson
5dc350ad94 Move exclusions of trousers-lib and iproute-tc to minimal-common
These are aiming to leave some weak dependencies out of minimal
images, it seems. From @core, gnutls recommends trousers which
requires trousers-lib, and iproute recommends iproute-tc.

However, both are *hard* dependencies of things that include
fedora-disk-base.ks. fedora-disk-workstation.ks includes
fedora-disk.base.ks and fedora-workstation-common.ks, so it
installs the Workstation package set, from which gnome-boxes
ultimately requires iproute-tc and NetworkManager-openconnect
ultimately requires trousers-lib.

Prior to the change I recently got merged into DNF, DNF would
silently drop gnome-boxes and NetworkManager-openconnect from
the Workstation disk image because of this. With the change, it
errors out on creation of the image.

To make the image compose again and actually include the right
packages, let's move the exclusions to fedora-minimal-common.ks,
where they make more sense anyway. This does mean the packages
will be pulled into other non-minimal images even if they're
not strictly required there, but that doesn't seem like a big
problem.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-09-25 15:04:16 -07:00
Peter Robinson
c6bc0981c7 Merge #423 Minor updates to Raspberry Pi firmware handling on ARMv7 2018-09-12 17:04:30 +00:00
Zamir SUN
29304129a0 LXQt: Add default editor
Signed-off-by: Zamir SUN <sztsian@gmail.com>
2018-09-09 22:18:41 +08:00
Peter Robinson
fcebc307ad Minor updates to Raspberry Pi firmware handling on ARMv7
Changes so we hangle the firmware more simply and in the same manner
across ARMv7 and aarch64. Enabling for UEFI on ARMv7 too.

Signed-off-by: Peter Robinson <pbrobinson@fedoraproject.org>
2018-09-06 11:58:38 +01:00
Dan Book
19a58f0fc6 Cinnamon - update background extras to f29 2018-09-02 14:52:25 -04:00
Peter Robinson
1ba38e3f1f drop swap from minimal image, it was missed in the zram PR
Signed-off-by: Peter Robinson <pbrobinson@fedoraproject.org>
2018-08-23 10:53:41 +01:00
Dan Book
2bad7a13cb Cinnamon - add parole media player 2018-08-21 14:03:41 -04:00
Amit Saha
46f3891c5c Update fedora-scientific-common.ks: Comment out julia
Comment out julia till https://koji.fedoraproject.org/koji/buildinfo?buildID=1135023 is fixed
2018-08-16 23:19:50 +00:00
Mohan Boddu
c5e43ec1f9 Branching F29 from rawhide
Signed-off-by: Mohan Boddu <mboddu@bhujji.com>
2018-08-13 13:36:18 -04:00
109 changed files with 1747 additions and 682 deletions

View File

@@ -1,15 +1,13 @@
# 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 ##
@@ -26,18 +24,6 @@ Maintainers for each image are listed in the `maintainers.toml` file.
# 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:

View File

@@ -1,17 +1,19 @@
#keyboard us
lang en_US.UTF-8 lang en_US.UTF-8
#keyboard us
auth --useshadow --passalgo=sha512
selinux --enforcing selinux --enforcing
firewall --enabled --service=mdns,ssh firewall --enabled --service=mdns,ssh
bootloader --extlinux --location=mbr bootloader --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
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
services --enabled=sshd,NetworkManager,avahi-daemon,chronyd,initial-setup services --enabled=sshd,NetworkManager,avahi-daemon,chronyd,initial-setup,zram-swap
%include fedora-repo.ks %include fedora-repo.ks
@@ -19,6 +21,7 @@ services --enabled=sshd,NetworkManager,avahi-daemon,chronyd,initial-setup
@core @core
@standard @standard
@hardware-support @hardware-support
zram
kernel kernel
# remove this in %post # remove this in %post
@@ -41,6 +44,7 @@ initial-setup-gui
# 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
%end %end
%post %post
@@ -48,15 +52,14 @@ glibc-all-langpacks
# Setup Raspberry Pi firmware # Setup Raspberry Pi firmware
cp -P /usr/share/uboot/rpi_2/u-boot.bin /boot/efi/rpi2-u-boot.bin 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_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
# work around for poor key import UI in PackageKit # work around for poor key import UI in PackageKit
rm -f /var/lib/rpm/__db* rm -f /var/lib/rpm/__db*
releasever=$(rpm --eval '%{fedora}') releasever=$(rpm -q --qf '%{version}\n' fedora-release)
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 --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn rpm -qa
# 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*
@@ -70,8 +73,13 @@ systemctl mask tmp.mount
dnf -y remove dracut-config-generic 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 # Remove machine-id on pre generated images
rm -f /etc/machine-id rm -f /etc/machine-id
touch /etc/machine-id touch /etc/machine-id
%end %end

View File

@@ -2,10 +2,7 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-kde-common.ks %include fedora-kde-common.ks
part btrfs.007 --fstype="btrfs" --size=7000 part / --size=6300 --fstype ext4
btrfs none --label=fedora btrfs.007
btrfs /home --subvol --name=home LABEL=fedora
btrfs / --subvol --name=root LABEL=fedora
%post %post

View File

@@ -2,10 +2,7 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-lxde-common.ks %include fedora-lxde-common.ks
part btrfs.007 --fstype="btrfs" --size=4300 part / --size=4000 --fstype ext4
btrfs none --label=fedora btrfs.007
btrfs /home --subvol --name=home LABEL=fedora
btrfs / --subvol --name=root LABEL=fedora
%post %post

View File

@@ -2,10 +2,7 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-lxqt-common.ks %include fedora-lxqt-common.ks
part btrfs.007 --fstype="btrfs" --size=4400 part / --size=4200 --fstype ext4 --asprimary
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

View File

@@ -2,10 +2,7 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-mate-common.ks %include fedora-mate-common.ks
part btrfs.007 --fstype="btrfs" --size=7168 part / --size=6000 --fstype ext4
btrfs none --label=fedora btrfs.007
btrfs /home --subvol --name=home LABEL=fedora
btrfs / --subvol --name=root LABEL=fedora
%post %post

View File

@@ -1,7 +1,8 @@
%include fedora-arm-base.ks %include fedora-arm-base.ks
%include fedora-minimal-common.ks %include fedora-minimal-common.ks
part / --size=1500 --fstype ext4 part /boot --size=512 --fstype ext4
part / --size=1256 --fstype ext4
%packages %packages
-xkeyboard-config -xkeyboard-config

View File

@@ -4,27 +4,5 @@
# The ARM Workstion based Python Classroom Lab # The ARM Workstion based Python Classroom Lab
%include fedora-arm-base.ks %include fedora-arm-workstation.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

View File

@@ -4,7 +4,6 @@
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

View File

@@ -2,10 +2,7 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-soas-common.ks %include fedora-soas-common.ks
part btrfs.007 --fstype="btrfs" --size=3400 part / --size=3300 --fstype ext4 --asprimary
btrfs none --label=fedora btrfs.007
btrfs /home --subvol --name=home LABEL=fedora
btrfs / --subvol --name=root LABEL=fedora
%post %post

View File

@@ -2,16 +2,11 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-workstation-common.ks %include fedora-workstation-common.ks
part btrfs.007 --fstype="btrfs" --size=6200 part / --size=6200 --fstype ext4
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
-initial-setup-gui -initial-setup-gui
-libvirt*
-gnome-boxes
%end %end

View File

@@ -4,7 +4,6 @@
@input-methods @input-methods
@multimedia @multimedia
@printing @printing
epiphany
%end %end
%post %post

View File

@@ -2,10 +2,7 @@
%include fedora-arm-xbase.ks %include fedora-arm-xbase.ks
%include fedora-xfce-common.ks %include fedora-xfce-common.ks
part btrfs.007 --fstype="btrfs" --size=5200 part / --size=4700 --fstype ext4
btrfs none --label=fedora btrfs.007
btrfs /home --subvol --name=home LABEL=fedora
btrfs / --subvol --name=root LABEL=fedora
%post %post

View File

@@ -0,0 +1,27 @@
# ./fedora-atomic-testing-base.ks - for building media from the testing
# refs (fedora/29/${basearch}/testing/atomic-host)
ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=https://kojipkgs.fedoraproject.org/compose/atomic/repo/ --ref=fedora/29/${basearch}/testing/atomic-host
%post --erroronfail
# Find the architecture we are on
arch=$(uname -m)
# Set the origin to the "main stable ref", distinct from /testing/ 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://dl.fedoraproject.org/atomic/repo/ "fedora/29/${arch}/atomic-host"
# Make sure the ref we're supposedly sitting on (according
# to the updated origin) exists.
ostree refs "fedora-atomic:fedora/29/${arch}/testing/atomic-host" --create "fedora-atomic:fedora/29/${arch}/atomic-host"
# Remove the old ref so that the commit eventually gets
# cleaned up.
ostree refs "fedora-atomic:fedora/29/${arch}/testing/atomic-host" --delete
# delete/add the remote with new options to enable gpg verification
# and to point them at the cdn url
ostree remote delete fedora-atomic
ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-29-primary fedora-atomic 'https://dl.fedoraproject.org/atomic/repo/'
%end

6
fedora-atomic-testing.ks Normal file
View File

@@ -0,0 +1,6 @@
# ./fedora-atomic-testing.ks - for building base cloud media
# from the testing refs (fedora/29/${basearch}/testing/atomic-host)
%include fedora-atomic.ks
%include fedora-atomic-testing-base.ks

View File

@@ -0,0 +1,27 @@
# ./fedora-atomic-updates-base.ks - for building media from the updates
# refs (fedora/29/${basearch}/updates/atomic-host)
ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=https://kojipkgs.fedoraproject.org/compose/atomic/repo/ --ref=fedora/29/${basearch}/updates/atomic-host
%post --erroronfail
# Find the architecture we are on
arch=$(uname -m)
# Set the origin to the "main stable 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://dl.fedoraproject.org/atomic/repo/ "fedora/29/${arch}/atomic-host"
# Make sure the ref we're supposedly sitting on (according
# to the updated origin) exists.
ostree refs "fedora-atomic:fedora/29/${arch}/updates/atomic-host" --create "fedora-atomic:fedora/29/${arch}/atomic-host"
# Remove the old ref so that the commit eventually gets
# cleaned up.
ostree refs "fedora-atomic:fedora/29/${arch}/updates/atomic-host" --delete
# delete/add the remote with new options to enable gpg verification
# and to point them at the cdn url
ostree remote delete fedora-atomic
ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-29-primary fedora-atomic 'https://dl.fedoraproject.org/atomic/repo/'
%end

6
fedora-atomic-updates.ks Normal file
View File

@@ -0,0 +1,6 @@
# ./fedora-atomic-updates.ks - for building base cloud media
# from the updates refs (fedora/29/${basearch}/updates/atomic-host)
%include fedora-atomic.ks
%include fedora-atomic-updates-base.ks

View File

@@ -0,0 +1,6 @@
# ./fedora-atomic-vagrant-testing.ks - for building media from the testing
# refs (fedora/29/${basearch}/testing/atomic-host) for vagrant
%include fedora-atomic-vagrant.ks
%include fedora-atomic-testing-base.ks

View File

@@ -0,0 +1,6 @@
# ./fedora-atomic-vagrant-updates.ks - for building media from the updates
# refs (fedora/29/${basearch}/updates/atomic-host) for vagrant
%include fedora-atomic-vagrant.ks
%include fedora-atomic-updates-base.ks

37
fedora-atomic-vagrant.ks Normal file
View File

@@ -0,0 +1,37 @@
# Like the Atomic Host cloud image, but tuned for vagrant: enable the
# vagrant user, disable cloud-init.
%include fedora-atomic.ks
user --name=vagrant --password=vagrant
rootpw vagrant
# The addition of the net.ifnames=0 and biosdevnames=0 option ensures that
# 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
# platforms (virtualbox and kvm)
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0"
%post --erroronfail
# Work around cloud-init being both disabled and enabled; need
# to refactor to a common base.
systemctl mask cloud-init cloud-init-local cloud-config cloud-final
# The inherited cloud %post locks the passwd, but we want it
# unlocked for vagrant, just like downstream.
passwd -u root
# Vagrant setup
sed -i 's,Defaults\\s*requiretty,Defaults !requiretty,' /etc/sudoers
echo 'vagrant ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/vagrant-nopasswd
sed -i 's/.*UseDNS.*/UseDNS no/' /etc/ssh/sshd_config
mkdir -m 0700 -p ~vagrant/.ssh
cat > ~vagrant/.ssh/authorized_keys << EOKEYS
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key
EOKEYS
chmod 600 ~vagrant/.ssh/authorized_keys
chown -R vagrant:vagrant ~vagrant/.ssh/
%end

157
fedora-atomic.ks Normal file
View File

@@ -0,0 +1,157 @@
# Fedora Atomic Host is the Fedora version of the "Atomic Host" pattern
# from [Project Atomic](http://www.projectatomic.io/).
# This kickstart is used for cloud/virt images, and uses cloud-init
# to bootstrap authentication, just like Fedora Cloud Base. (Also note the
# fedora-atomic-vagrant.ks kickstart inherits from this).
# One very important thing to understand is that this image contains the same
# OSTree commit as will be used on bare metal installations - Fedora Atomic Host
# also has an ISO. One difference though is that cloud-init isn't enabled for
# bare metal. When processing this kickstart then, Anaconda isn't actually
# installing packages - it's just replicating a "pre-assembled" tree from
# rpm-ostree.
# Basically, the `ostreesetup` verb replaces the traditional `%packages`
# section. For example, `rpm-ostree status` can show you the same checksum and
# version from an ISO install and this cloud image - it's the same bits.
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
lang en_US.UTF-8
keyboard us
timezone --utc Etc/UTC
auth --useshadow --passalgo=sha512
selinux --enforcing
rootpw --lock --iscrypted locked
# Explicitly disable firewall since cloud providers generally provide
# higher level firewall constructs (i.e. security groups).
firewall --disabled
# console=ttyAMA0 and console=hvc0 as kernel boot parameter to see
# kernel boot messages on serial console as well on aarch64 and
# ppc64le respectively.
# https://pagure.io/atomic-wg/issue/347
bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 console=ttyAMA0 console=hvc0 net.ifnames=0"
network --bootproto=dhcp --device=link --activate --onboot=on
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
zerombr
clearpart --all
# Implement: https://pagure.io/atomic-wg/issue/281
# The bare metal layout currently inherits from fedora server and is in
# https://github.com/rhinstaller/anaconda/blob/master/pyanaconda/installclasses/fedora_atomic_host.py
# However, the disk size is currently just 6GB for the cloud image (defined in pungi-fedora). So the
# "15GB, rest unallocated" model doesn't make sense. The Vagrant box is 40GB (apparently a number of
# Vagrant boxes come big and rely on thin provisioning).
# In both cases, it's simplest to just fill all the disk space.
#
# Use reqpart to create hardware platform specific partitions
# https://pagure.io/atomic-wg/issue/299
reqpart --add-boot
part pv.01 --grow
volgroup atomicos pv.01
# Start from 3GB as we did before, since we just need a size. But we do --grow to fill all space.
logvol / --size=3000 --grow --fstype="xfs" --name=root --vgname=atomicos
# Equivalent of %include fedora-repo.ks
# Pull from the ostree repo that was created during the compose
ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=https://kojipkgs.fedoraproject.org/compose/atomic/repo/ --ref=fedora/29/${basearch}/atomic-host
reboot
%post --erroronfail
# See https://github.com/projectatomic/rpm-ostree/issues/42
# Set the ostree repo to the location we want users to upgrade from
# This location is where the compose gets synced to after the compose
# is done.
ostree remote delete fedora-atomic
ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-29-primary fedora-atomic 'https://kojipkgs.fedoraproject.org/atomic/repo/'
# older versions of livecd-tools do not follow "rootpw --lock" line above
# https://bugzilla.redhat.com/show_bug.cgi?id=964299
passwd -l root
# Work around https://bugzilla.redhat.com/show_bug.cgi?id=1193590
cp /etc/skel/.bash* /var/roothome
# Configure docker-storage-setup to resize the partition table on boot
# and extend the root filesystem to fill it.
# https://pagure.io/atomic-wg/issue/343
echo 'GROWPART=true' >> /etc/sysconfig/docker-storage-setup
echo 'ROOT_SIZE=+100%FREE' >> /etc/sysconfig/docker-storage-setup
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
# Remove any persistent NIC rules generated by udev
rm -vf /etc/udev/rules.d/*persistent-net*.rules
# And ensure that we will do DHCP on eth0 on startup
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF
DEVICE="eth0"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Ethernet"
PERSISTENT_DHCLIENT="yes"
EOF
# 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
# 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 "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*
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.)"
# 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."
/usr/libexec/atomic-devmode/bootentry add
# Disable network service here, as doing it in the services line
# fails due to RHBZ #1369794
/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

View File

@@ -8,14 +8,12 @@
%packages %packages
fedora-release-cinnamon
@networkmanager-submodules @networkmanager-submodules
@cinnamon-desktop @cinnamon-desktop
@libreoffice @libreoffice
parole parole
rhythmbox
# extra backgrounds # extra backgrounds
f33-backgrounds-extras-gnome f29-backgrounds-extras-gnome
%end %end

View File

@@ -0,0 +1,36 @@
# 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

View File

@@ -1,25 +0,0 @@
# 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

View File

@@ -53,12 +53,6 @@ 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

View File

@@ -4,6 +4,9 @@
# 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
@@ -26,6 +29,7 @@ lang en_US.UTF-8
keyboard us keyboard us
timezone --utc Etc/UTC timezone --utc Etc/UTC
auth --useshadow --passalgo=sha512
selinux --enforcing selinux --enforcing
rootpw --lock --iscrypted locked rootpw --lock --iscrypted locked
@@ -34,6 +38,7 @@ 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
@@ -44,78 +49,217 @@ autopart --noboot --nohome --noswap --nolvm
reboot reboot
##### begin package list ############################################# # Package list.
%packages --instLangs=en # FIXME: instLangs does not work, so there's a hack below
# (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
# Include packages for the cloud-server-environment group
@^cloud-server-environment
# Don't include the kernel toplevel package since it pulls in
# kernel-modules. We're happy for now with kernel-core.
-kernel
kernel-core kernel-core
@^cloud-server-environment
# Need to pull in the udev subpackage
systemd-udev
# Don't include dracut-config-rescue. It will have dracut generate a # after move away from grub2 - let's add 'which' back
# "rescue" entry in the grub menu, but that also means there is a which
# rescue kernel and initramfs that get created, which (currently) add
# about another 40MiB to the /boot/ partition. Also the "rescue" mode # rescue mode generally isn't useful in the cloud context
# is generally not useful in the cloud.
-dracut-config-rescue -dracut-config-rescue
# Plymouth provides a graphical boot animation. In the cloud we don't # Some things from @core we can do without in a minimal install
# need a graphical boot animation. This also means anaconda won't put -biosdevname
# rhgb/quiet on kernel command line # Need to also add back plymouth in order to mask failure of
# 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
# linux-firmware is installed by default and is quite large. As of mid 2020: # Create grub.conf for EC2. This used to be done by appliance creator but
# Total download size: 97 M # anaconda doesn't do it. And, in case appliance-creator is used, we're
# Installed size: 268 M # overriding it here so that both cases get the exact same file.
# So far we've been fine shipping without it so let's continue. # Note that the console line is different -- that's because EC2 provides
# More discussion about this in #1234504. # 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
# 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
# See the systemd-random-seed.service man page that says: # Remove firewalld; was supposed to be optional in F18+, but is pulled in
# " It is recommended to remove the random seed from OS images intended # in install/image building.
# for replication on multiple systems" echo "Removing firewalld."
# 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.
# yum -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 -q --qf '%{version}\n' fedora-release)
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 a networking config file gets left behind. # When we build the image with oz, dracut is used
# Let's clean it up. # and sets up a ifcfg-en<whatever> for the device. We don't
echo "Cleanup leftover networking configuration" # want to use this, we use eth0 so it is always the same.
rm -f /etc/NetworkManager/system-connections/*.nmconnection # So we remove all these ifcfg-en<whatever> devices so
# The 'network' service can come up cleanly.
rm -f /etc/sysconfig/network-scripts/ifcfg-en*
# Clear machine-id on pre generated images # Enable network service here, as doing it in the services line
truncate -s 0 /etc/machine-id # fails due to RHBZ #1369794
/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 ############################################

221
fedora-cloud-bigdata.ks Normal file
View File

@@ -0,0 +1,221 @@
# 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
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
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."
yum -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."
yum -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 yum repodata."
yum history new
yum clean all
truncate -c -s 0 /var/log/yum.log
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 "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/yum
/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

View File

@@ -0,0 +1,215 @@
# 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."
yum -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."
yum -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 yum repodata."
yum history new
yum clean all
truncate -c -s 0 /var/log/yum.log
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 "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/yum
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

View File

@@ -1,48 +0,0 @@
# Description: Packages for the NeuroFedora computational neuroscience lab image.
#
# Maintained by the NeuroFedora SIG:
# https://fedoraproject.org/wiki/SIGs/NeuroFedora
# mailto:neuro-sig@lists.fedoraproject.org
%packages
# Includes numpy, scipy, jupyter, pandas, scikit, scipy, statsmodels, sympy, matplotlib
@python-science
# Add julia and R
R
julia
#Computational neuroscience packages
arbor
auryn-mpich
auryn-openmpi
bionetgen
calcium-calculator
COPASI
qalculate
getdp
genesis-simulator
gnuplot
moose
nest
neuron
octave
# paraview
python3
python3-brian2
python-brian2-doc
python3-ipython
python3-nest
python3-neuron
python3-libNeuroML
python3-neo
# Currently broken in rawhide
# python3-nineml
# python-nineml-doc
python3-PyLEMS
python-PyLEMS-doc
python3-steps
smoldyn
%end

View File

@@ -11,9 +11,10 @@ text
lang en_US.UTF-8 lang en_US.UTF-8
keyboard us keyboard us
timezone US/Eastern timezone US/Eastern
auth --useshadow --passalgo=sha512
selinux --enforcing selinux --enforcing
firewall --enabled --service=mdns firewall --enabled --service=mdns
services --enabled=sshd,NetworkManager,chronyd services --enabled=sshd,NetworkManager,chronyd,zram-swap
network --bootproto=dhcp --device=link --activate network --bootproto=dhcp --device=link --activate
rootpw --lock --iscrypted locked rootpw --lock --iscrypted locked
shutdown shutdown
@@ -32,6 +33,7 @@ firstboot --reconfig
@core @core
@standard @standard
@hardware-support @hardware-support
zram
kernel kernel
# remove this in %post # remove this in %post
@@ -39,6 +41,7 @@ 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
@@ -49,32 +52,20 @@ initial-setup
-usb_modeswitch -usb_modeswitch
-generic-release* -generic-release*
# make sure all the locales are available for inital-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
%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
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 -q --qf '%{version}\n' fedora-release)
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 --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn rpm -qa
# 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*

View File

@@ -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 services --enabled=sshd,NetworkManager,chronyd,initial-setup,zram-swap
autopart --type=plain --noswap autopart --type=plain --noswap

View File

@@ -1,23 +1,19 @@
%include fedora-disk-base.ks %include fedora-disk-base.ks
services --enabled=sshd,NetworkManager,chronyd,initial-setup services --enabled=sshd,NetworkManager,chronyd,initial-setup,zram-swap
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
@core
@headless-management @headless-management
@hardware-support @hardware-support
@networkmanager-submodules @networkmanager-submodules
@container-management @container-management
@domain-client @domain-client
@guest-agents
@server-hardware-support
-initial-setup-gui -initial-setup-gui
-generic-release* -generic-release*
%end %end

View File

@@ -4,9 +4,9 @@
bootloader --append="cma=256MB" bootloader --append="cma=256MB"
services --enabled=sshd,NetworkManager,chronyd services --enabled=sshd,NetworkManager,chronyd,zram-swap
autopart --type=btrfs --noswap autopart --type=plain --noswap
%packages %packages
-initial-setup -initial-setup

View File

@@ -1,17 +0,0 @@
%include fedora-disk-base.ks
%include fedora-disk-xbase.ks
%include fedora-xfce-common.ks
bootloader --append="cma=192MB"
services --enabled=sshd,NetworkManager,chronyd
autopart --type=btrfs --noswap
%packages
%end
%post
%end

View File

@@ -1,8 +1,8 @@
# See fedora-container-common.ks for details on how to hack on container image kickstarts # 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. # This base is a stripped back Fedora image without python3/dnf.
# If you need that use the standard base image. # If you need that use the standard base image.
%include fedora-container-common.ks %include fedora-docker-common.ks
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps %packages --excludedocs --instLangs=en --nocore --excludeWeakdeps
microdnf microdnf

View File

@@ -1,9 +1,9 @@
# See fedora-container-common.ks for details on how to hack on container image kickstarts # 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 # This base is a standard Fedora image with python3 and dnf
%include fedora-container-common.ks %include fedora-docker-common.ks
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps %packages --excludedocs --instLangs=en --nocore
rootfiles rootfiles
# https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/ # https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/
fedora-repos-modular fedora-repos-modular
@@ -12,10 +12,7 @@ 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
sudo
-glibc-langpack-en
-cracklib-dicts
-langpacks-en
%end %end
%post --erroronfail --log=/root/anaconda-post.log %post --erroronfail --log=/root/anaconda-post.log
@@ -26,6 +23,11 @@ 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
@@ -39,21 +41,7 @@ printf "tsflags=nodocs\n" >>/etc/dnf/dnf.conf
# [/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
rm -rfv /var/cache/* /var/log/* /tmp/*
%end
%post --nochroot --erroronfail --log=/mnt/sysimage/root/anaconda-post-nochroot.log
set -eux
# 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 %end

View File

@@ -1,4 +1,4 @@
# This is the common bits between Fedora Container base image. # This is the common bits between Fedora Docker base image.
# #
# To keep this image minimal it only installs English language. You need to change # To keep this image minimal it only installs English language. You need to change
# dnf configuration in order to enable other languages. # dnf configuration in order to enable other languages.
@@ -12,8 +12,8 @@
# #
# Then, once you have imagefactory and imagefactory-plugins installed, run: # Then, once you have imagefactory and imagefactory-plugins installed, run:
# #
# ksflatten -c fedora-container-base[-minimal].ks -o fedora-container-base-test.ks # 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-container-base-test.ks docker # 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 text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
@@ -29,11 +29,12 @@ zerombr
clearpart --all clearpart --all
autopart --noboot --nohome --noswap --nolvm autopart --noboot --nohome --noswap --nolvm
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps %packages --excludedocs --instLangs=en --nocore
fedora-release-container fedora-release
bash bash
coreutils coreutils-single
glibc-minimal-langpack glibc-minimal-langpack
libcrypt
rpm rpm
shadow-utils shadow-utils
sssd-client sssd-client
@@ -48,7 +49,6 @@ util-linux
-shared-mime-info -shared-mime-info
-trousers -trousers
-xkeyboard-config -xkeyboard-config
-grubby
%end %end
@@ -60,12 +60,9 @@ set -eux
LANG="en_US" LANG="en_US"
echo "%_install_langs $LANG" > /etc/rpm/macros.image-language-conf echo "%_install_langs $LANG" > /etc/rpm/macros.image-language-conf
# https://bugzilla.redhat.com/show_bug.cgi?id=1727489
echo 'LANG="C.UTF-8"' > /etc/locale.conf
# https://bugzilla.redhat.com/show_bug.cgi?id=1400682 # https://bugzilla.redhat.com/show_bug.cgi?id=1400682
echo "Import RPM GPG key" echo "Import RPM GPG key"
releasever=$(rpm --eval '%{fedora}') releasever=$(rpm -q --qf '%{version}\n' fedora-release)
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 "# fstab intentionally empty for containers" > /etc/fstab echo "# fstab intentionally empty for containers" > /etc/fstab

View File

@@ -5,13 +5,18 @@ lang en_US.UTF-8
keyboard us keyboard us
timezone --utc Etc/UTC timezone --utc Etc/UTC
auth --useshadow --passalgo=sha512
selinux --enforcing selinux --enforcing
rootpw --lock --iscrypted locked rootpw --lock --iscrypted locked
bootloader --timeout=1 --append="net.ifnames=0 modprobe.blacklist=vc4" # Add most common consoles console=ttyAMA0 console=ttyS0 console=ttyS1 as kernel boot parameter
bootloader --timeout=1 --append="console=tty1 console=ttyS0,115200n8 console=ttyS1,115200n8 console=ttyAMA0,115200n8 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 services --enabled=NetworkManager,sshd,rngd,initial-setup,zram-swap
# tell Initial Setup to run in the reconfig mode
firstboot --reconfig --enable
zerombr zerombr
clearpart --all --initlabel --disklabel=msdos clearpart --all --initlabel --disklabel=msdos
@@ -19,47 +24,39 @@ autopart --nohome --noswap --type=plain
# Equivalent of %include fedora-repo.ks # Equivalent of %include fedora-repo.ks
# Pull from the ostree repo that was created during the compose # Pull from the ostree repo that was created during the compose
ostreesetup --nogpg --osname=fedora-iot --remote=fedora-iot --url=https://kojipkgs.fedoraproject.org/compose/iot/repo/ --ref=fedora/stable/${basearch}/iot ostreesetup --nogpg --osname=fedora-iot --remote=fedora-iot --url=https://kojipkgs.fedoraproject.org/compose/iot/repo/ --ref=fedora/29/${basearch}/iot
reboot 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 == "armhfp" ]]; then if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; 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
else else
cp -P /usr/share/uboot/rpi_2/u-boot.bin /boot/efi/rpi2-u-boot.bin cp -P /usr/share/uboot/rpi_2/u-boot.bin /boot/fw/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_3_32b/u-boot.bin /boot/fw/rpi3-u-boot.bin
cp -P /usr/share/uboot/rpi_4_32b/u-boot.bin /boot/efi/rpi4-u-boot.bin
fi fi
fi fi
# Set the origin to the "main ref", distinct from /updates/ which is where bodhi writes. # 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. # We want consumers of this image to track the two week releases.
ostree admin set-origin --index 0 fedora-iot https://dl.fedoraproject.org/iot/repo/ "fedora/stable/${arch}/iot" ostree admin set-origin --index 0 fedora-iot https://kojipkgs.fedoraproject.org/iot/29/ "fedora/29/${arch}/iot"
# Make sure the ref we're supposedly sitting on (according # Make sure the ref we're supposedly sitting on (according
# to the updated origin) exists. # to the updated origin) exists.
ostree refs "fedora-iot:fedora/stable/${arch}/iot" --create "fedora-iot:fedora/stable/${arch}/iot" ostree refs "fedora-iot:fedora/29/${arch}/iot" --create "fedora-iot:fedora/29/${arch}/iot"
# Remove the old ref so that the commit eventually gets cleaned up. # Remove the old ref so that the commit eventually gets cleaned up.
ostree refs "fedora-iot:fedora/stable/${arch}/iot" --delete ostree refs "fedora-iot:fedora/29/${arch}/iot" --delete
# delete/add the remote with new options to enable gpg verification # delete/add the remote with new options to enable gpg verification
# and to point them at the cdn url # and to point them at the cdn url
ostree remote delete fedora-iot ostree remote delete fedora-iot
ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/ --set=contenturl=mirrorlist=https://ostree.fedoraproject.org/iot/mirrorlist fedora-iot 'https://ostree.fedoraproject.org/iot' ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-29-primary fedora-iot 'https://dl.fedoraproject.org/iot/repo/'
# We're getting a stray console= from somewhere, work around it
rpm-ostree kargs --delete=console=tty0
# 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
@@ -68,6 +65,13 @@ passwd -l root
# 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
echo -n "Network fixes"
# initscripts don't like this file to be missing.
cat > /etc/sysconfig/network << EOF
NETWORKING=yes
NOZEROCONF=yes
EOF
# Remove any persistent NIC rules generated by udev # Remove any persistent NIC rules generated by udev
rm -vf /etc/udev/rules.d/*persistent-net*.rules rm -vf /etc/udev/rules.d/*persistent-net*.rules
# And ensure that we will do DHCP on eth0 on startup # And ensure that we will do DHCP on eth0 on startup
@@ -84,7 +88,7 @@ rm -f /var/lib/systemd/random-seed
echo "Packages within this iot image:" echo "Packages within this iot image:"
echo "-----------------------------------------------------------------------" echo "-----------------------------------------------------------------------"
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn rpm -qa
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*
@@ -98,6 +102,13 @@ echo "(Don't worry -- that out-of-space error was expected.)"
# For trac ticket https://pagure.io/atomic-wg/issue/128 # For trac ticket https://pagure.io/atomic-wg/issue/128
rm -f /etc/sysconfig/network-scripts/ifcfg-ens3 rm -f /etc/sysconfig/network-scripts/ifcfg-ens3
echo "Adding Developer Mode GRUB2 menu item."
/usr/libexec/atomic-devmode/bootentry add
# Disable network service here, as doing it in the services line
# fails due to RHBZ #1369794
/sbin/chkconfig network off
# Anaconda is writing an /etc/resolv.conf from the install environment. # Anaconda is writing an /etc/resolv.conf from the install environment.
# The system should start out with an empty file, otherwise cloud-init # The system should start out with an empty file, otherwise cloud-init
# will try to use this information and may error: # will try to use this information and may error:

View File

@@ -6,7 +6,6 @@
@kde-media @kde-media
@kde-office @kde-office
@networkmanager-submodules @networkmanager-submodules
fedora-release-kde
### The KDE-Desktop ### The KDE-Desktop

View File

@@ -34,7 +34,9 @@ astrometry
astrometry-tycho2 astrometry-tycho2
cdsclient cdsclient
fpack fpack
gcx
psfex psfex
saoimage
scamp scamp
sextractor sextractor
siril siril
@@ -52,7 +54,7 @@ indistarter
kstars kstars
# misc. astronomy # misc. astronomy
#celestia celestia
stellarium stellarium
virtualplanet virtualplanet
@@ -105,10 +107,6 @@ 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

View File

@@ -10,6 +10,7 @@
lang en_US.UTF-8 lang en_US.UTF-8
keyboard us keyboard us
timezone US/Eastern timezone US/Eastern
auth --useshadow --passalgo=sha512
selinux --enforcing selinux --enforcing
firewall --enabled --service=mdns firewall --enabled --service=mdns
xconfig --startxonboot xconfig --startxonboot
@@ -44,32 +45,22 @@ kernel-modules-extra
# This was added a while ago, I think it falls into the category of # This was added a while ago, I think it falls into the category of
# "Diagnosis/recovery tool useful from a Live OS image". Leaving this untouched # "Diagnosis/recovery tool useful from a Live OS image". Leaving this untouched
# for now. # for now.
#memtest86+ memtest86+
@x86-baremetal-tools # memtest86+ is included
# The point of a live image is to install # The point of a live image is to install
anaconda anaconda
anaconda-install-env-deps anaconda-install-env-deps
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
# Without this, initramfs generation during live image creation fails: #1242586 # Without this, initramfs generation during live image creation fails: #1242586
dracut-live dracut-live
# syslinux is in @x86-baremetal-tools syslinux
# anaconda needs the locales available to run for different locales # anaconda needs the locales available to run for different locales
glibc-all-langpacks glibc-all-langpacks
# no longer in @core since 2018-10, but needed for livesys script
initscripts
chkconfig
%end %end
%post %post
@@ -111,7 +102,13 @@ for arg in \`cat /proc/cmdline\` ; do
fi fi
done done
# enable swapfile if it exists # enable swaps unless requested otherwise
swaps=\`blkid -t TYPE=swap -o device\`
if ! strstr "\`cat /proc/cmdline\`" noswap && [ -n "\$swaps" ] ; then
for s in \$swaps ; do
action "Enabling swap partition \$s" swapon \$s
done
fi
if ! strstr "\`cat /proc/cmdline\`" noswap && [ -f /run/initramfs/live/\${livedir}/swap.img ] ; then if ! strstr "\`cat /proc/cmdline\`" noswap && [ -f /run/initramfs/live/\${livedir}/swap.img ] ; then
action "Enabling swap file" swapon /run/initramfs/live/\${livedir}/swap.img action "Enabling swap file" swapon /run/initramfs/live/\${livedir}/swap.img
fi fi
@@ -222,7 +219,7 @@ touch /.liveimg-configured
# https://bugzilla.redhat.com/show_bug.cgi?id=679486 # https://bugzilla.redhat.com/show_bug.cgi?id=679486
# the hostname must be something else than 'localhost' # the hostname must be something else than 'localhost'
# https://bugzilla.redhat.com/show_bug.cgi?id=1370222 # https://bugzilla.redhat.com/show_bug.cgi?id=1370222
hostnamectl set-hostname "localhost-live" echo "localhost-live" > /etc/hostname
EOF EOF
@@ -302,11 +299,11 @@ EOF
# work around for poor key import UI in PackageKit # work around for poor key import UI in PackageKit
rm -f /var/lib/rpm/__db* rm -f /var/lib/rpm/__db*
releasever=$(rpm --eval '%{fedora}') releasever=$(rpm -q --qf '%{version}\n' --whatprovides system-release)
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 --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn rpm -qa
# 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*
@@ -345,19 +342,8 @@ cp $INSTALL_ROOT/usr/share/licenses/*-release/* $LIVE_ROOT/
# only works on x86, x86_64 # only works on x86, x86_64
if [ "$(uname -i)" = "i386" -o "$(uname -i)" = "x86_64" ]; then if [ "$(uname -i)" = "i386" -o "$(uname -i)" = "x86_64" ]; then
# For livecd-creator builds if [ ! -d $LIVE_ROOT/LiveOS ]; then mkdir -p $LIVE_ROOT/LiveOS ; fi
if [ ! -d $LIVE_ROOT/LiveOS ]; then mkdir -p $LIVE_ROOT/LiveOS ; fi cp /usr/bin/livecd-iso-to-disk $LIVE_ROOT/LiveOS
cp /usr/bin/livecd-iso-to-disk $LIVE_ROOT/LiveOS
# For lorax/livemedia-creator builds
sed -i '
/## make boot.iso/ i\
# Add livecd-iso-to-disk script to .iso filesystem at /LiveOS/\
<% f = "usr/bin/livecd-iso-to-disk" %>\
%if exists(f):\
install ${f} ${LIVEDIR}/${f|basename}\
%endif\
' /usr/share/lorax/templates.d/99-generic/live/x86.tmpl
fi fi
%end %end

View File

@@ -9,7 +9,7 @@
%include fedora-live-base.ks %include fedora-live-base.ks
%include fedora-cinnamon-common.ks %include fedora-cinnamon-common.ks
part / --size=8192 part / --size=6144
%post %post
# cinnamon configuration # cinnamon configuration

View File

@@ -1,12 +0,0 @@
# Description: The Workstation based NeuroFedora computational neuroscience lab image.
# https://fedoraproject.org/wiki/Changes/Comp_Neuro_Lab
#
# Maintained by the NeuroFedora SIG:
# https://fedoraproject.org/wiki/SIGs/NeuroFedora
# mailto:neuro-sig@lists.fedoraproject.org
%include fedora-live-workstation.ks
%include fedora-comp-neuro-common.ks
%include fedora-neuro-gnome-common.ks
part / --size 10240

View File

@@ -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,19 +32,14 @@ powerline
powerline-fonts powerline-fonts
# Extra wallpapers # Extra wallpapers
f33-backgrounds-extras-gnome # f26-backgrounds-extras-base
# f26-backgrounds-extras-gnome
# removal of unneeded applications # removal of unneeded applications
-gnome-boxes -gnome-boxes
-eog -eog
-rdesktop -rdesktop
# temporarily removing conflicting applications
-blender-luxcorerender
-mypaint
-shutter
-sparkleshare
%end %end
%post %post

View File

@@ -1,16 +1,8 @@
# fedora-live-games.ks # fedora-livedvd-games.ks
# #
# Maintainer: # Maintainer(s):
# - Darryl T. Agostinelli <dagostinelli@gmail.com>
# https://fedoraproject.org/wiki/User:Dagostinelli
#
# Former Maintainers:
# - Bruno Wolff III <bruno@wolff.to> # - Bruno Wolff III <bruno@wolff.to>
# https://fedoraproject.org/wiki/User:Bruno # - Formerly maintained by Rahul Sundaram
#
# - Rahul Sundaram <sundaram@fedoraproject.org>
# https://fedoraproject.org/wiki/User:Sundaram
#
%include fedora-live-xfce.ks %include fedora-live-xfce.ks
@@ -45,6 +37,7 @@ asc-music
astromenace astromenace
# beneath-a-steel-sky-cd scummvm games cut for size # beneath-a-steel-sky-cd scummvm games cut for size
boswars boswars
btanks
bzflag bzflag
crossfire-client crossfire-client
extremetuxracer extremetuxracer
@@ -55,20 +48,20 @@ freedoom
freedroidrpg freedroidrpg
frozen-bubble frozen-bubble
gl-117 gl-117
# glob2 - currently broken glob2
lincity-ng lincity-ng
#tmw - currently broken tmw
#maniadrive - currently broken #maniadrive - currently broken
#maniadrive-music - has been retired #maniadrive-music - has been retired
megaglest megaglest
nethack-vultures nethack-vultures
netpanzer netpanzer
neverball #neverball #cut for size
nogravity nogravity
#pinball # Would pull in fluid-soundfont-lite-patches #pinball # Would pull in fluid-soundfont-lite-patches
scorched3d scorched3d
# supertux # Crashing # supertux # Crashing
supertuxkart #supertuxkart #remove for size
ultimatestunts ultimatestunts
warzone2100 warzone2100
wesnoth wesnoth
@@ -91,11 +84,12 @@ glaxium
gnubg gnubg
gnugo gnugo
haxima haxima
#hedgewars -- broken hedgewars
kcheckers kcheckers
knights knights
lbrickbuster2 lbrickbuster2
# liquidwar # Would pull in fluid-soundfont-lite-patches # liquidwar # Would pull in fluid-soundfont-lite-patches
londonlaw
lordsawar lordsawar
# lure scummvm games cut for size # lure scummvm games cut for size
# machineball # Would pull in fluid-soundfont-lite-patches # machineball # Would pull in fluid-soundfont-lite-patches
@@ -105,8 +99,9 @@ pachi
pioneers pioneers
quarry quarry
# Ri-li cut for size # Ri-li cut for size
# rogue # recently abandoned. Someone picked it up. Waiting for approval. rogue
# scorchwentbonkers # Would pull in fluid-soundfont-lite-patches # scorchwentbonkers # Would pull in fluid-soundfont-lite-patches
seahorse-adventures
solarwolf solarwolf
sopwith sopwith
stormbaancoureur stormbaancoureur
@@ -118,6 +113,7 @@ xblast
auriferous auriferous
alienblaster alienblaster
# duel3 # Would pull in fluid-soundfont-lite-patches # duel3 # Would pull in fluid-soundfont-lite-patches
lmarbles
powermanga powermanga
# raidem # Would pull in fluid-soundfont-lite-patches # raidem # Would pull in fluid-soundfont-lite-patches
# raidem-music # Would pull in fluid-soundfont-lite-patches # raidem-music # Would pull in fluid-soundfont-lite-patches
@@ -134,13 +130,14 @@ KoboDeluxe
Maelstrom Maelstrom
methane methane
njam njam
seahorse-adventures
shippy shippy
tecnoballz tecnoballz
wordwarvi 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
@@ -155,7 +152,9 @@ pingus
# puzzles (small) # puzzles (small)
escape
# gbrainy Removed for space - only game that pulls in mono # gbrainy Removed for space - only game that pulls in mono
magicor
mirrormagic mirrormagic
pipenightdreams pipenightdreams
pipepanic pipepanic
@@ -165,11 +164,15 @@ vodovod
# card games # card games
#poker2d - dropped from F14 for being orphaned
PySolFC PySolFC
# educational/simulation # educational/simulation
#celestia - not currently building bygfoot
celestia
childsplay
gcompris
planets planets
tuxpaint tuxpaint
tuxpaint-stamps tuxpaint-stamps
@@ -178,13 +181,15 @@ tuxtype2
# kde based games # kde based games
taxipilot taxipilot
# compilations (we are avoiding compilations, rare exceptions)
bsd-games
# utilities # utilities
games-menus games-menus
# Note some stuff I don't want pulled into the games spin.
# No compilations of games as I want to only include games that at least
# someone thought were good within a genre.
# Nothing should be downloading data to play. # Nothing should be downloading data to play.
-autodownloader -autodownloader

View File

@@ -7,7 +7,9 @@
# Web: https://fedoraproject.org/wiki/Fedora_jam # Web: https://fedoraproject.org/wiki/Fedora_jam
# Web: insert spinspacke when created # Web: insert spinspacke when created
# Maintainer: Erich Eickmeyer <erich@ericheickmeyer.com> # Maintainer: Jørn Lomax <northlomax@gmail.com>
# https://fedoraproject.org/wiki/User:jvlomax
# Brendan Jones <brendan.jones.it@gmail.com>
%include fedora-live-kde.ks %include fedora-live-kde.ks
@@ -18,10 +20,123 @@ part / --size 10240 --fstype ext4
bootloader --append="threadirqs" bootloader --append="threadirqs"
%packages %packages
@audio
#pipewire #alsa
pipewire alsa-firmware
alsa-tools
alsa-utils
alsamixergui
alsa-plugins-jack
alsa-plugins-pulseaudio
alsa-plugins-usbstream
alsa-plugins-samplerate
alsa-plugins-upmix
alsa-plugins-vdownmix
a2jmidid
aj-snapshot
#jack
jack-audio-connection-kit
jack-audio-connection-kit-dbus
qjackctl
jackctlmmc
ffado
#pulse
pulseaudio-module-jack
pavucontrol
#midi
qsynth
fluidsynth
fluid-soundfont-gm
fluidsynth-dssi
timidity++
qmidiarp
vmpk
harmonyseq
#synthesis
hydrogen
bristol
monobristol
zynaddsubfx
yoshimi
swami
Add64
synthv1
samplv1
drumkv1
ams
#guitar
rakarrack
guitarix
tuxguitar
sooperlooper
#recodring and DAW
audacity
ardour5
rosegarden4
seq24
muse
qtractor
non-session-manager
non-daw
non-sequencer
non-mixer
# audio-plugins
calf
dssi
jack-rack
ladspa
#ladpsa plugins
ladspa-amb-plugins
ladspa-autotalent-plugins
ladspa-blop-plugins
ladspa-cmt-plugins
ladspa-fil-plugins
ladspa-mcp-plugins
ladspa-rev-plugins
ladspa-swh-plugins
ladspa-tap-plugins
ladspa-vco-plugins
#lv2 plugins
lv2
lv2-avw-plugins
lv2-invada-plugins
lv2-kn0ck0ut
lv2-ll-plugins
lv2-swh-plugins
lv2-vocoder-plugins
lv2-zynadd-plugins
lv2dynparam
lv2-abGate
lv2-c++-tools
lv2-samplv1
lv2-synthv1
lv2-drumkv1
lv2-triceratops
lv2-newtonator
lv2-x42-plugins
lv2-fomp-plugins
lv2-sorcer
lv2-fabla
lv2-artyfx-plugins
#dssi
nekobee-dssi
whysynth-dssi
xsynth-dssi
hexter-dssi
zynjacku
zita-at1
zita-rev1
#sound analasys, none of these are packaged yet #sound analasys, none of these are packaged yet
#praat bug_id=666656 #praat bug_id=666656
@@ -32,15 +147,35 @@ emacs
emacs-color-theme emacs-color-theme
vim vim
nano nano
mscore
lilypond
frescobaldi
mup
#audio utilities #audio utilities
jamin
lash
jack_capture
jaaa
jmeters
qastools
arpage
realTimeConfigQuickScan
rtirq
#patchage
#ladish #not packaged yet
japa
radium-compressor
# fedora jam theming (to be customized) # fedora jam theming (to be customized)
kfaenza-icon-theme
fedora-jam-backgrounds fedora-jam-backgrounds
fedora-jam-kde-theme fedora-jam-kde-theme
#Misc. Utils #Misc. Utils
screen screen
shutter
-ksnapshot
multimedia-menus multimedia-menus
kernel-tools kernel-tools
@@ -49,15 +184,12 @@ kernel-tools
firefox firefox
thunderbird thunderbird
#remove packages not needed #remove packages not need
-akregator #-kdesdk-umbrello
-kaddressbook #-kdesdk-kcachegrindy
-kmail
-kontact #-kdesdk-kompare
-korganizer #-kdepim
-non-mixer
-non-session-manager
-non-sequencer
%end %end
@@ -66,7 +198,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/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 JAMFAVORITES=/usr/share/applications/firefox.desktop,/usr/share/applications/qjackctl.desktop,/usr/share/applications/qtractor.desktop,/usr/share/applications/frescobaldi.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/kde4/dolphin.desktop,/usr/share/applications/systemsettings.desktop,/usr/share/applications/pavucontrol.desktop,/usr/share/applications/kde4/kfmclient_html.desktop,/usr/share/applications/kde4/Kontact.desktop,/usr/share/applications/kde4/ktp-contactlist.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

View File

@@ -12,7 +12,7 @@
%include fedora-kde-minimization.ks %include fedora-kde-minimization.ks
# DVD payload # DVD payload
part / --size=7000 part / --size=6500
%post %post
%end %end

View File

@@ -11,10 +11,6 @@
%include fedora-live-minimization.ks %include fedora-live-minimization.ks
%include fedora-lxqt-common.ks %include fedora-lxqt-common.ks
%packages
dracut-config-generic
%end
%post %post
# add initscript # add initscript
cat >> /etc/rc.d/init.d/livesys << EOF cat >> /etc/rc.d/init.d/livesys << EOF
@@ -45,8 +41,6 @@ FOE
# no updater applet in live environment # no updater applet in live environment
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
dnf -y remove dracut-config-generic
# 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/

View File

@@ -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 8192 part / --size 6144
%post %post
cat >> /etc/rc.d/init.d/livesys << EOF cat >> /etc/rc.d/init.d/livesys << EOF

View File

@@ -5,7 +5,5 @@
# The Workstion based Python Classroom Lab # The Workstion based Python Classroom Lab
%include fedora-live-workstation.ks %include fedora-live-workstation.ks
%include fedora-live-minimization.ks
%include fedora-python-classroom-gnome-common.ks %include fedora-python-classroom-gnome-common.ks
# https://bugzilla.redhat.com/show_bug.cgi?id=1695796
part / --size 8192

View File

@@ -27,12 +27,9 @@ mercurial
-@graphical-internet -@graphical-internet
-@games -@games
-@sound-and-video -@sound-and-video
-@dial-up
-@input-methods
-@standard
# Add a web browser # Add a web browser
@firefox firefox
# Remove office suite # Remove office suite
-libreoffice-* -libreoffice-*
@@ -44,11 +41,9 @@ mercurial
# Drop things that pull in perl # Drop things that pull in perl
-linux-atm -linux-atm
# No printing or scanning # No printing
-foomatic-db-ppds -foomatic-db-ppds
-foomatic -foomatic
-sane-backends-drivers-scanners
-libsane-hpaio
# Dictionaries are big # Dictionaries are big
-aspell-* -aspell-*
@@ -57,7 +52,6 @@ mercurial
# Help and art can be big, too # Help and art can be big, too
-gnome-user-docs -gnome-user-docs
-gnome-getting-started-docs
-evolution-help -evolution-help
-desktop-backgrounds-basic -desktop-backgrounds-basic
-*backgrounds-extras -*backgrounds-extras
@@ -66,6 +60,7 @@ mercurial
-krb5-auth-dialog -krb5-auth-dialog
-krb5-workstation -krb5-workstation
-pam_krb5 -pam_krb5
-quota
-nano -nano
-dos2unix -dos2unix
-finger -finger
@@ -74,8 +69,10 @@ mercurial
-mtr -mtr
-pinfo -pinfo
-rsh -rsh
-nfs-utils
-ypbind -ypbind
-yp-tools -yp-tools
-rpcbind
-acpid -acpid
-ntsysv -ntsysv
@@ -118,7 +115,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', 'org.qt-project.qtcreator.desktop', 'arduino.desktop', 'gnome-terminal.desktop','nautilus.desktop', 'anaconda.desktop'] favorite-apps=['firefox.desktop', 'eclipse.desktop', 'arduino.desktop', 'gnome-terminal.desktop','nautilus.desktop', 'anaconda.desktop']
FOE FOE
fi fi

View File

@@ -10,7 +10,7 @@
# #
#include snippets/packagekit-cached-metadata.ks #include snippets/packagekit-cached-metadata.ks
part / --size 7680 part / --size 6656
%post %post
@@ -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', 'org.gnome.Calendar.desktop', 'rhythmbox.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'anaconda.desktop'] favorite-apps=['firefox.desktop', 'evolution.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'org.gnome.Nautilus.desktop', 'anaconda.desktop']
FOE FOE
# Make the welcome screen show up # Make the welcome screen show up

View File

@@ -13,9 +13,6 @@
%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

View File

@@ -19,7 +19,7 @@ gnome-keyring
# l10n # l10n
@lxqt-l10n lxqt-l10n
lximage-qt-l10n lximage-qt-l10n
obconf-qt-l10n obconf-qt-l10n
pavucontrol-qt-l10n pavucontrol-qt-l10n
@@ -27,7 +27,7 @@ pavucontrol-qt-l10n
# MP3 # MP3
gstreamer1-plugin-mpg123 gstreamer1-plugin-mpg123
# Text Editor # Editor
enki enki
# remove unneeded stuff to get a lightweight system # remove unneeded stuff to get a lightweight system
@@ -38,15 +38,14 @@ 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
-pt-sans-fonts # Cyrillic (already supported by DejaVu), huge -paratype-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
-@input-methods -@input-methods
-scim* -scim*
-m17n* -m17n*
# Temporary include ibus to workaround RHBZ 1633225 -ibus*
# -ibus*
-iok -iok
# Fix https://bugzilla.redhat.com/show_bug.cgi?id=1429132 # Fix https://bugzilla.redhat.com/show_bug.cgi?id=1429132

View File

@@ -1,5 +1,4 @@
%packages %packages
fedora-release-matecompiz
@mate @mate
compiz compiz
compiz-plugins-main compiz-plugins-main
@@ -16,6 +15,10 @@ 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
@@ -35,11 +38,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

View File

@@ -0,0 +1,70 @@
# See fedora-modular-container-common.ks for details on how to hack on container 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-container-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 container
# 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

View File

@@ -0,0 +1,38 @@
# See fedora-modular-container-common.ks for details on how to hack on container image kickstarts
# This base is a standard Fedora image with python3 and dnf
%include fedora-modular-container-common.ks
%packages --excludedocs --instLangs=en --nocore
rootfiles
tar # https://bugzilla.redhat.com/show_bug.cgi?id=1409920
vim-minimal
dnf
dnf-yum # https://pagure.io/fesco/ticket/1312#comment:29
sssd-client
%end
%post --erroronfail --log=/root/anaconda-post.log
# remove some extraneous files
rm -rf /var/cache/dnf/*
rm -rf /tmp/*
#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
# Fix /run/lock breakage since it's not tmpfs in container
# This unmounts /run (tmpfs) and then recreates the files
# 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
systemd-tmpfiles --prefix=/run/ --prefix=/var/run/ --create --boot || true
%end

View File

@@ -0,0 +1,75 @@
# This is the common bits between Container 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 container image is a tarball
zerombr
clearpart --all
autopart --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

View File

@@ -2,12 +2,12 @@ text
lang en_US.UTF-8 lang en_US.UTF-8
keyboard us keyboard us
timezone US/Eastern timezone US/Eastern
auth --useshadow --passalgo=sha512
selinux --enforcing 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,chronyd,initial-setup #services --enabled=sshd,NetworkManager,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,8 +35,9 @@ microdnf
glibc-minimal-langpack glibc-minimal-langpack
grubby grubby
kernel kernel
libcrypt
sssd-client sssd-client
@networkmanager-submodules dhcp-client
-fedora-logos -fedora-logos
-coreutils -coreutils
-dosfstools -dosfstools
@@ -54,25 +55,13 @@ sssd-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
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 -q --qf '%{version}\n' fedora-modular-release)
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 --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn rpm -qa
# 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*

View File

@@ -1,30 +0,0 @@
# Description: Common gnome based configuration for NeuroFedora spin images.
#
# Maintained by the NeuroFedora SIG:
# https://fedoraproject.org/wiki/SIGs/NeuroFedora
# mailto:neuro-sig@lists.fedoraproject.org
# Please specify the individual package sets in their own ks files:
# - fedora-comp-neuro-common.ks
%packages
@firefox
# Editors
emacs
vim-X11
# This is no longer workstation
-@workstation-product
# No Workstation backgrounds
#-desktop-backgrounds-basic
#-*backgrounds-extras
%end
%post
#Override the favorite desktop application in Dash
sed -i "s/favorite-apps=."'*'"/favorite-apps=['firefox.desktop', 'org.gnome.Terminal.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.gedit.desktop', 'anaconda.desktop']/" /etc/rc.d/init.d/livesys
%end

View File

@@ -13,23 +13,10 @@ vim-enhanced
wget wget
# Remove Pythons possibly recommended by tox # Remove Pythons possibly recommended by tox
-python2
-python26 -python26
-python27
-python33 -python33
-python34 -python34
-python35 -python35
-python36
-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

View File

@@ -7,6 +7,7 @@
%include fedora-python-classroom-common.ks %include fedora-python-classroom-common.ks
%packages %packages
ninja-ide
emacs emacs
python3-matplotlib-tk python3-matplotlib-tk
python3-pillow-tk python3-pillow-tk

View File

@@ -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

View File

@@ -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
@@ -28,6 +28,14 @@ armadillo-devel
ddd ddd
valgrind valgrind
#python 2 tools/libraries not included from the groups
python2-tools
python-ipython
python-ipython-console
python-ipython-notebook
sympy
python-networkx
python-pandas
#python 3 and tools/libraries not included from the groups #python 3 and tools/libraries not included from the groups
python3 python3
@@ -43,6 +51,8 @@ python3-networkx
python3-pandas python3-pandas
# matplotlib backends # matplotlib backends
python-matplotlib-qt4
python-matplotlib-tk
python3-matplotlib-qt4 python3-matplotlib-qt4
python3-matplotlib-tk python3-matplotlib-tk
@@ -56,20 +66,19 @@ gcc-gfortran
# GUI for R # GUI for R
rkward rkward
# GUI for Octave
qtoctave
# julia # julia
julia # Comment out till https://koji.fedoraproject.org/koji/buildinfo?buildID=1135023 is fixed
julia-doc # julia
julia-devel # julia-doc
# IDEs for the IDE folks # IDEs for the IDE folks
@eclipse @eclipse
# Workaround for: https://pagure.io/releng/issue/7814
# Workaround for https://pagure.io/releng/issue/7814
-eclipse-linuxtools-vagrant -eclipse-linuxtools-vagrant
spyder
python3-spyder
python3-spyder-kernels
#writing & publishing #writing & publishing
emacs emacs
@@ -90,8 +99,9 @@ openmpi
openmpi-devel openmpi-devel
valgrind-openmpi valgrind-openmpi
libgomp libgomp
python-pp
mpi4py-openmpi
python3-mpi4py-openmpi python3-mpi4py-openmpi
python3-mpi4py-mpich
#Version control- a GUI for each as well #Version control- a GUI for each as well
@@ -113,6 +123,7 @@ libotf
#root #root
root root
root-gui-fitpanel root-gui-fitpanel
root-python
#Multiple jobs/clustering system #Multiple jobs/clustering system
# torque # torque
@@ -128,8 +139,8 @@ dia
inkscape inkscape
xzgv xzgv
gimp gimp
## ggobi ggobi
## ggobi-devel ggobi-devel
#g3data #g3data
#Mayavi #Mayavi

View File

@@ -9,13 +9,6 @@
firewall --enabled --service=mdns,presence firewall --enabled --service=mdns,presence
%packages %packages
# == Core Sugar Platform ==
fedora-release-soas
@sugar-desktop
# explicitly remove a bunch of extra stuff
-openbox
-@fonts -@fonts
-@dial-up -@dial-up
-@multimedia -@multimedia
@@ -37,12 +30,7 @@ fedora-release-soas
-abrt-cli -abrt-cli
-ibus* -ibus*
-hyperv-daemons -hyperv-daemons
-sane-backends -webkit2gtk3-plugin-process-gtk2
-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
@@ -52,12 +40,38 @@ aajohan-comfortaa-fonts
sil-abyssinica-fonts sil-abyssinica-fonts
vlgothic-fonts vlgothic-fonts
# == Core Sugar Platform ==
@sugar-desktop
-sugar-ruler
sugar-cp-updater
lightdm
lightdm-gtk
# Write breaks unless we do this (we don't need it anyway) # Write breaks unless we do this (we don't need it anyway)
# enable for testing in the F17 dev cycle
@input-methods @input-methods
# Needed for wifi, bluetooth and WWAN connection support # Needed for wifi, bluetooth and WWAN connection support
@networkmanager-submodules @networkmanager-submodules
# == Platform Components ==
# from http://wiki.sugarlabs.org/go/0.94/Platform_Components
alsa-plugins-pulseaudio
alsa-utils
gstreamer1-plugins-base
gstreamer1-plugins-good
gstreamer1-plugins-bad-free
gstreamer-plugins-espeak
pulseaudio
pulseaudio-utils
# explicitly remove openbox and hopefully deal with what firstboot wants
-openbox
# remove deps that come from god knows where
-sane-backends
-sane-backends-drivers-scanners
# Usefulness for DSL connections as per: # Usefulness for DSL connections as per:
# http://bugs.sugarlabs.org/ticket/1951 # http://bugs.sugarlabs.org/ticket/1951
rp-pppoe rp-pppoe
@@ -69,24 +83,63 @@ livecd-tools
# Get the Sugar boot screen # Get the Sugar boot screen
-plymouth-system-theme -plymouth-system-theme
-plymouth-theme-charge -plymouth-theme-charge
sugar-logos
%end %end
%post %post
# Rebuild initrd for Sugar boot screen
KERNEL_VERSION=$(rpm -q kernel --qf '%{version}-%{release}.%{arch}\n')
/usr/sbin/plymouth-set-default-theme sugar
dracut -f /boot/initramfs-$KERNEL_VERSION.img $KERNEL_VERSION
# Note that running rpm recreates the rpm db files which aren't needed or wanted
rm -f /var/lib/rpm/__db*
# Get proper release naming in the control panel # Get proper release naming in the control panel
cat >> /boot/olpc_build << EOF cat >> /boot/olpc_build << EOF
Sugar on a Stick Sugar on a Stick
EOF EOF
cat /etc/fedora-release >> /boot/olpc_build cat /etc/fedora-release >> /boot/olpc_build
# Rebuild initrd for Sugar boot screen # Add our activities to the favorites
KERNEL_VERSION=$(rpm -q kernel --qf '%{version}-%{release}.%{arch}\n') cat > /usr/share/sugar/data/activities.defaults << EOF
/usr/sbin/plymouth-set-default-theme sugar org.laptop.WebActivity
dracut -N -f /boot/initramfs-$KERNEL_VERSION.img $KERNEL_VERSION org.laptop.HelpActivity
org.laptop.Chat
# Note that running rpm recreates the rpm db files which aren't needed or wanted org.laptop.sugar.ReadActivity
rm -f /var/lib/rpm/__db* org.laptop.sugar.GetBooksActivity
org.laptop.AbiWordActivity
org.laptop.TurtleArtActivity
org.laptop.Calculate
org.laptop.Clock
org.laptop.ImageViewerActivity
org.laptop.Memorize
org.laptop.physics
org.laptop.Pippy
org.laptop.RecordActivity
org.laptop.Oficina
org.laptop.StopWatchActivity
org.laptop.community.Finance
org.laptop.community.TypingTurtle
org.laptop.sugar.Jukebox
org.laptop.Words
org.eq.FotoToon
org.gnome.Labyrinth
com.laptop.Ruler
org.sugarlabs.AbacusActivity
org.sugarlabs.IRC
org.sugarlabs.InfoSlicer
org.sugarlabs.PortfolioActivity
org.sugarlabs.StoryActivity
org.sugarlabs.VisualMatchActivity
com.garycmartin.Moon
mulawa.Countries
tv.alterna.Clock
vu.lux.olpc.Maze
vu.lux.olpc.Speak
EOF
cat > /etc/sysconfig/desktop <<EOF cat > /etc/sysconfig/desktop <<EOF
PREFERRED=/usr/bin/sugar PREFERRED=/usr/bin/sugar
@@ -112,4 +165,14 @@ automatic=true
EOF EOF
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas
# For lorax/livemedia-creator builds.
sed -i '
/## make boot.iso/ i\
# Add livecd-iso-to-disk script to .iso filesystem at /LiveOS/\
<% f = "usr/bin/livecd-iso-to-disk" %>\
%if exists(f):\
install ${f} ${LIVEDIR}/${f|basename}\
%endif\
' /usr/share/lorax/templates.d/99-generic/live/x86.tmpl
%end %end

View File

@@ -8,7 +8,6 @@
# Make sure to sync any additions / removals done here with # Make sure to sync any additions / removals done here with
# workstation-product-environment in comps # workstation-product-environment in comps
@base-x @base-x
@container-management
@core @core
@firefox @firefox
@fonts @fonts

View File

@@ -12,7 +12,6 @@
%packages %packages
fedora-release-xfce
@networkmanager-submodules @networkmanager-submodules
@xfce-desktop @xfce-desktop
@xfce-apps @xfce-apps
@@ -20,12 +19,16 @@ fedora-release-xfce
@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

View File

@@ -11,7 +11,7 @@ timezone Europe/Zurich
%packages %packages
-gnome-blog -gnome-blog
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -11,7 +11,7 @@ timezone Europe/Berlin
%packages %packages
-gnome-blog -gnome-blog
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard fr-latin9
timezone Europe/Paris timezone Europe/Paris
%packages %packages
langpacks-fr @french-support
# exclude input methods: # exclude input methods:
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard jp
timezone Asia/Tokyo timezone Asia/Tokyo
%packages %packages
langpacks-ja @japanese-support
# exclude input methods except ibus: # exclude input methods except ibus:
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard us
timezone Europe/Amsterdam timezone Europe/Amsterdam
%packages %packages
langpacks-nl @dutch-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard br-abnt2
timezone America/Sao_Paulo timezone America/Sao_Paulo
%packages %packages
langpacks-pt_BR @brazilian-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard pt-latin1
timezone Europe/Lisbon timezone Europe/Lisbon
%packages %packages
langpacks-pt @portuguese-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard ru
timezone Europe/Moscow timezone Europe/Moscow
%packages %packages
langpacks-ru @russian-support
hunspell-ru hunspell-ru
# exclude input methods # exclude input methods

View File

@@ -13,7 +13,7 @@ keyboard de-latin1-nodeadkeys
timezone Europe/Berlin timezone Europe/Berlin
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard jp
timezone Asia/Tokyo timezone Asia/Tokyo
%packages %packages
langpacks-ja @japanese-support
# exclude input methods except ibus: # exclude input methods except ibus:
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard sg-latin1-nodeadkeys
timezone Europe/Zurich timezone Europe/Zurich
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard de-latin1-nodeadkeys
timezone Europe/Berlin timezone Europe/Berlin
%packages %packages
langpacks-de @german-support
# don't install unnecessary input methods # don't install unnecessary input methods
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard fr-latin9
timezone Europe/Paris timezone Europe/Paris
%packages %packages
langpacks-fr @french-support
# exclude input methods: # exclude input methods:
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard jp
timezone Asia/Tokyo timezone Asia/Tokyo
%packages %packages
langpacks-ja @japanese-support
# exclude input methods except ibus: # exclude input methods except ibus:
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard us
timezone Europe/Amsterdam timezone Europe/Amsterdam
%packages %packages
langpacks-nl @dutch-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard pt-latin1
timezone Europe/Lisbon timezone Europe/Lisbon
%packages %packages
langpacks-pt @portuguese-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard ru
timezone Europe/Moscow timezone Europe/Moscow
%packages %packages
langpacks-ru @russian-support
hunspell-ru hunspell-ru
# exclude input methods # exclude input methods

View File

@@ -13,7 +13,7 @@ keyboard sg-latin1-nodeadkeys
timezone Europe/Zurich timezone Europe/Zurich
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-ibus* -ibus*

View File

@@ -13,7 +13,7 @@ keyboard de-latin1-nodeadkeys
timezone Europe/Berlin timezone Europe/Berlin
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-ibus* -ibus*

View File

@@ -13,7 +13,7 @@ keyboard fr-latin9
timezone Europe/Paris timezone Europe/Paris
%packages %packages
langpacks-fr @french-support
# exclude input methods: # exclude input methods:
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard jp
timezone Asia/Tokyo timezone Asia/Tokyo
%packages %packages
langpacks-ja @japanese-support
# exclude input methods except ibus: # exclude input methods except ibus:
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard ru
timezone Europe/Moscow timezone Europe/Moscow
%packages %packages
langpacks-ru @russian-support
hunspell-ru hunspell-ru
# exclude input methods # exclude input methods

View File

@@ -3,14 +3,14 @@
# Maintainer(s): # Maintainer(s):
# - Fabian Affolter <fab at fedoraproject.org> # - Fabian Affolter <fab at fedoraproject.org>
%include ../fedora-live-xfce.ks %include ../fedora-livecd-xfce.ks
lang de_DE lang de_DE
keyboard sg-latin1-nodeadkeys keyboard sg-latin1-nodeadkeys
timezone Europe/Zurich timezone Europe/Zurich
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -3,14 +3,14 @@
# Maintainer(s): # Maintainer(s):
# - Fabian Affolter <fab at fedoraproject.org> # - Fabian Affolter <fab at fedoraproject.org>
%include ../fedora-live-xfce.ks %include ../fedora-livecd-xfce.ks
lang de_DE.UTF-8 lang de_DE.UTF-8
keyboard de-latin1-nodeadkeys keyboard de-latin1-nodeadkeys
timezone Europe/Berlin timezone Europe/Berlin
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -6,14 +6,14 @@
# Maintainer(s): # Maintainer(s):
# - Matthieu Saulnier <fantom@fedoraproject.org> # - Matthieu Saulnier <fantom@fedoraproject.org>
%include ../fedora-live-xfce.ks %include ../fedora-livecd-xfce.ks
lang fr_FR.UTF-8 lang fr_FR.UTF-8
keyboard fr-latin9 keyboard fr-latin9
timezone Europe/Paris timezone Europe/Paris
%packages %packages
langpacks-fr @french-support
# exclude input methods: # exclude input methods:
-m17n* -m17n*
-scim* -scim*

View File

@@ -13,7 +13,7 @@ keyboard jp
timezone Asia/Tokyo timezone Asia/Tokyo
%packages %packages
langpacks-ja @japanese-support
# exclude input methods except ibus: # exclude input methods except ibus:
-m17n* -m17n*
-scim* -scim*

View File

@@ -3,14 +3,14 @@
# Maintainer(s): # Maintainer(s):
# - Jeroen van Meeuwen <kanarip a fedoraunity.org> # - Jeroen van Meeuwen <kanarip a fedoraunity.org>
%include ../fedora-live-xfce.ks %include ../fedora-livecd-xfce.ks
lang nl_NL lang nl_NL
keyboard us keyboard us
timezone Europe/Amsterdam timezone Europe/Amsterdam
%packages %packages
langpacks-nl @dutch-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -3,14 +3,14 @@
# Maintainer(s): # Maintainer(s):
# - Pedro Silva <pedrofsilva a netcabo.pt> # - Pedro Silva <pedrofsilva a netcabo.pt>
%include ../fedora-live-xfce.ks %include ../fedora-livecd-xfce.ks
lang pt_PT.UTF-8 lang pt_PT.UTF-8
keyboard pt-latin1 keyboard pt-latin1
timezone Europe/Lisbon timezone Europe/Lisbon
%packages %packages
langpacks-pt @portuguese-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -3,14 +3,14 @@
# Maintainer(s): # Maintainer(s):
# - Sergey Mihailov <sergey.mihailov at gmail.com> # - Sergey Mihailov <sergey.mihailov at gmail.com>
%include ../fedora-live-xfce.ks %include ../fedora-livecd-xfce.ks
lang ru_RU.UTF-8 lang ru_RU.UTF-8
keyboard ru keyboard ru
timezone Europe/Moscow timezone Europe/Moscow
%packages %packages
langpacks-ru @russian-support
hunspell-ru hunspell-ru
# exclude input methods # exclude input methods

View File

@@ -10,7 +10,7 @@ keyboard sg-latin1
timezone Europe/Zurich timezone Europe/Zurich
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard de-latin1-nodeadkeys
timezone Europe/Berlin timezone Europe/Berlin
%packages %packages
langpacks-de @german-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard us
timezone Europe/Amsterdam timezone Europe/Amsterdam
%packages %packages
langpacks-nl @dutch-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

View File

@@ -10,7 +10,7 @@ keyboard pt-latin1
timezone Europe/Lisbon timezone Europe/Lisbon
%packages %packages
langpacks-pt @portuguese-support
# exclude input methods # exclude input methods
-m17n* -m17n*
-scim* -scim*

Some files were not shown because too many files have changed in this diff Show More