Compare commits

..

16 Commits
main ... f36

Author SHA1 Message Date
Frederick Grose
4697b2de60 fedora-soas-common: Restore plymouth to initrd for boot animation.
Override the omission of the plymouth module for rebuilding the
initrd.  Copy the initrd image to the live boot image directory.
2023-02-02 14:19:11 -05:00
Kevin Fenzi
dfbad4bdf5 increase size of kde live a bit to have everything fit in rawhide
Signed-off-by: Kevin Fenzi <kevin@scrye.com>
2022-05-16 16:45:34 -07:00
Peter Robinson
efe8eb3fc8 IoT: Move F-36 to compose using the stable branch
Signed-off-by: Peter Robinson <pbrobinson@fedoraproject.org>
2022-05-12 13:22:39 +01:00
Chris Murphy
a69afdb7e0 increase boot partition size on Cloud base image
The /boot partition has been 1GiB on most other Fedora editions and spins for while. We recently had a developer run into this limitation.
2022-04-22 00:38:45 +00:00
Adam Williamson
7611eb3c6e Disable automount on KDE live images (#2073708)
It's mounting non-removable devices and causing problems for
anaconda. Note, KDE will still show a notification with a
button for mounting the device, and it shows in the file manager
where clicking on it mounts it; the behaviour is about the same
as Fedora 35 (slightly better, as the notification shows on
subsequent plugs of the same stick, which it did not in F35).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-04-21 16:59:02 -07:00
raveit65
8d939b753c Mate: use earlyoom instead of systemd-oomd-defaults 2022-04-01 13:05:55 +02:00
Christian Dersch
86b4eec9e5 astronomy: Exclude LabPlot for now due to #2044284 2022-03-21 20:54:56 +00:00
Miro Hrončok
24ba25bde9 Revert "Python Classroom: Share disk size declaration between disk and live"
This reverts commit 3459312f7b.

    BuildError: Failed to parse kickstart file '.../fedora-disk-python-classroom.ks' : The following problem occurred on line 12 of the kickstart file:

    The part/partition and autopart commands can't be used at the same time.
2022-03-17 17:52:16 +01:00
Miro Hrončok
3459312f7b Python Classroom: Share disk size declaration between disk and live
The disk image for aarch64 fails to build for not enough space,
see https://pagure.io/releng/failed-composes/issue/3206
2022-03-16 10:30:20 +00:00
Adam Williamson
5e908f8505 Disable updates harder in Workstation and Robotics (#2064077)
Just setting `download-updates=false` seems not to be enough any
more, we get update notifications in live images currently. This
should fix that and also disable the Updates pane on GNOME
Software in the live environment, which is a nice improvement.

https://gitlab.gnome.org/GNOME/gnome-software/-/issues/1683#note_1408750

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-03-15 08:36:35 -07:00
Dennis Gilmore
c2a28fe744 on arm disk images make sure there is not a console=tty0 bootarg
Appending console=tty0 is problematic for many arm use cases.
lets make sure we remove it so systems can just boot
https://bugzilla.redhat.com/show_bug.cgi?id=2022757

Signed-off-by: Dennis Gilmore <dennis@ausil.us>
2022-03-10 16:01:28 -06:00
Miro Hrončok
d56802ad50 Change the desktop background image of Python Classroom Lab to match Fedora Workstation
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2059699
2022-03-04 12:02:10 +01:00
Jens Petersen
e3d7bfead4 fedora-kde-minimization.ks: stop removing @input-methods
see discussion in https://pagure.io/fedora-kde/SIG/issue/156
2022-02-24 16:04:11 +00:00
Adam Williamson
31998a3290 Update to f36-backgrounds in cinnamon-common 2022-02-16 14:54:50 -08:00
Paul Whalen
798c350d03 Remove rng from enabled services in iot disk images
Signed-off-by: Paul Whalen <pwhalen@fedoraproject.org>
2022-02-12 17:43:11 -05:00
Tomas Hrcka
d05b776460 Branch f36 from rawhide
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2022-02-08 13:16:49 +01:00
70 changed files with 1177 additions and 884 deletions

View File

@@ -85,14 +85,14 @@ gtk-recordmydesktop
gconf-editor
dconf-editor
nautilus-open-terminal
iotop-c
iotop
htop
# Add favorite power-user tools
mc
vim
nano
wget2-wget
wget
# Add dependencies for the welcome screen
# (this makes it run also on non-GNOME systems)
@@ -111,7 +111,7 @@ firefox
# "EOF" is quoted so that variables are not expanded. Search for "here-document"
# in man bash.
cat >> /var/lib/livesys/livesys-session-extra << "EOF"
cat >> /etc/rc.d/init.d/livesys << "EOF"
# Create Test Day welcome screen
# Note that shebang must be written this way, else it is considered as comment

View File

@@ -1,23 +0,0 @@
%packages
fedora-release-budgie
# Exclude unwanted groups that fedora-live-base.ks pulls in
-@dial-up
-@input-methods
-@standard
# Install budgie environment
@^budgie-desktop-environment
# recommended apps
@budgie-desktop-apps
@libreoffice
libreoffice-draw
libreoffice-math
thunderbird
# Exclude unwanted packages from @anaconda-tools group
-gfs2-utils
-reiserfs-utils
%end

View File

@@ -14,6 +14,10 @@ fedora-release-cinnamon
@^cinnamon-desktop-environment
@libreoffice
exaile
parole
rhythmbox
# extra backgrounds
f36-backgrounds-extras-gnome
%end

View File

@@ -1,24 +0,0 @@
# This is a basic Fedora cloud spin designed to work with Azure.
# Inherit from cloud base
%include fedora-cloud-base.ks
%packages
# Fedora Cloud Base includes the qemu guest agent and it is not
# required for Azure: https://pagure.io/cloud-sig/issue/319
-qemu-guest-agent
WALinuxAgent
%end
%post --erroronfail
cat > /etc/ssh/sshd_config.d/50-client-alive-interval.conf << EOF
ClientAliveInterval 120
EOF
cat >> /etc/chrony.conf << EOF
# Azure's virtual time source:
# https://docs.microsoft.com/en-us/azure/virtual-machines/linux/time-sync#check-for-ptp-clock-source
refclock PHC /dev/ptp_hyperv poll 3 dpoll -2 offset 0
EOF
%end

View File

@@ -9,7 +9,7 @@
# 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 --location=mbr --append="no_timer_check console=ttyS0,38400n8d"
bootloader --timeout=0 --location=mbr --append="no_timer_check net.ifnames=0 console=ttyS0,38400n8d"
# redefine `services` here to drop cloud-init systemd unit enablements from
# fedora-cloud-base.ks since we don't use them.
@@ -18,9 +18,6 @@ services --enabled=sshd
%packages
# GCP provides its own guest environment.
google-compute-engine-guest-configs
# BZ 2193039: Ensure additional packages are present for ssh access management
google-compute-engine-oslogin
google-guest-agent
-cloud-init
# Fedora Cloud Base includes the qemu guest agent. GCP prefers
# that it not be installed https://pagure.io/cloud-sig/issue/319

View File

@@ -22,6 +22,12 @@ rootpw vagrant
bootloader --timeout=1 --location=mbr --append="no_timer_check console=tty1 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0"
%packages
# The default koji Vagrantfile configuration uses rsync to sync files between
# the vagrant host and the guest. It uses yum to verify that rsync is present
# and/or install it if it is not. It will fail without adding the yum compat
# layer for dnf
# TODO: Teach vagrant about dnf
dnf-yum
# rsync gets installed when the Vagrant box is first launched on the
# users setup. This can actually take a bit of time. Just fold it
# in to the base box disk image

View File

@@ -31,7 +31,8 @@ rootpw --lock --iscrypted locked
firewall --disabled
bootloader --timeout=1 --location=mbr --append="no_timer_check console=tty1 console=ttyS0,115200n8"
# We pass net.ifnames=0 because we always want to use eth0 here on all the cloud images.
bootloader --timeout=1 --location=mbr --append="no_timer_check net.ifnames=0 console=tty1 console=ttyS0,115200n8"
services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final
@@ -56,13 +57,6 @@ reboot
# Include packages for the cloud-server-environment group
@^cloud-server-environment
# Install the tracer dnf plugin to enable automatic reboots
# IF the user requests package updates
# AND requests a reboot
# AND the packages updated require a reboot.
# https://fedoraproject.org/wiki/Changes/Automatic_Cloud_Reboot_On_Updates
python3-dnf-plugin-tracer
# Don't include the kernel toplevel package since it pulls in
# kernel-modules. We're happy for now with kernel-core.
-kernel

View File

@@ -0,0 +1,29 @@
# Description: Packages for the NeuroFedora computational neuroscience lab image.
#
# Maintained by the NeuroFedora SIG:
# https://neuro.fedoraproject.org
# mailto:neuro-sig@lists.fedoraproject.org
%packages
fedora-release-compneuro
# Includes numpy, scipy, jupyter, pandas, scikit, scipy, statsmodels, sympy, matplotlib
@python-science
#Computational neuroscience packages
arbor
genesis-simulator
moose
nest
neuron
neuron-devel
python3
python3-brian2
python3-ipython
python3-lfpy
python3-nest
python3-netpyne
python3-neuron
python3-pynn
python3-steps
%end

View File

@@ -1,12 +1,12 @@
# See fedora-container-common.ks for details on how to hack on container image kickstarts
# This base is a stripped back Fedora image without python3.
# This base is a stripped back Fedora image without python3/dnf.
# If you need that use the standard base image.
%include fedora-container-common.ks
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps
dnf5
-tzdata
microdnf
%end
%post --erroronfail --log=/root/anaconda-post.log
@@ -33,6 +33,11 @@ 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/*

View File

@@ -5,10 +5,12 @@
%packages --excludedocs --instLangs=en --nocore --excludeWeakdeps
rootfiles
# https://communityblog.fedoraproject.org/modularity-dead-long-live-modularity/
fedora-repos-modular
tar # https://bugzilla.redhat.com/show_bug.cgi?id=1409920
vim-minimal
dnf5
dnf5-plugins
dnf
dnf-yum # https://fedorahosted.org/fesco/ticket/1312#comment:29
sudo
-glibc-langpack-en
-langpacks-en

View File

@@ -35,7 +35,6 @@ fedora-release-container
bash
coreutils
glibc-minimal-langpack
tzdata
rpm
util-linux-core
-kernel
@@ -84,6 +83,4 @@ echo "# fstab intentionally empty for containers" > /etc/fstab
rm -f /etc/machine-id
touch /etc/machine-id
echo "# resolv placeholder" > /etc/resolv.conf
chmod 644 /etc/resolv.conf
%end

View File

@@ -1,225 +0,0 @@
# Kickstart file for Fedora Toolbox
# See fedora-container-common.ks for details on how to hack on container image kickstarts
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
bootloader --disabled
timezone --isUtc Etc/UTC
timesource --ntp-disable
rootpw --lock --iscrypted locked
keyboard us
network --bootproto=dhcp --device=link --activate --onboot=on
reboot
# boot partitions are irrelevant as the final docker image is a tarball
zerombr
clearpart --all
autopart --noboot --nohome --noswap --nolvm
# Install packages
%packages --nocore
acl
bash
bash-completion
bc
bzip2
coreutils
coreutils-common
curl
default-editor
diffutils
dnf5
dnf5-plugins
-dosfstools
-e2fsprogs
fedora-release-toolbx
findutils
flatpak-spawn
fpaste
-fuse-libs
gawk
git
-glibc-minimal-langpack
glibc-all-langpacks
gnupg2
gnupg2-smime
grep
-grubby
gvfs-client
gzip
hostname
iproute
iputils
-kernel
keyutils
krb5-libs
less
libcap
-libss
lsof
man-db
man-pages
mesa-dri-drivers
mesa-vulkan-drivers
mtr
nss-mdns
openssh-clients
openssl
p11-kit
pam
pigz
-pinentry
procps-ng
psmisc
python3
rootfiles
rpm
rsync
sed
shadow-utils
-shared-mime-info
-sssd-client
sudo
# This is a weak dependency of systemd, we do not want
# this in the container; see
# https://github.com/containers/toolbox/issues/1410
-systemd-resolved
tar # https://bugzilla.redhat.com/show_bug.cgi?id=1409920
tcpdump
time
traceroute
tree
-trousers
tzdata
unzip
util-linux
util-linux-core
vim-minimal
vte-profile
vulkan-loader
wget2-wget
which
whois
words
-xkeyboard-config
xorg-x11-xauth
xz
zip
%end
# Pre-installation commands
%pre
# Copy README.md
cp /README.md /mnt/sysimage/README.md
# Remove macros.image-language-conf file
rm -f /mnt/sysimage/etc/rpm/macros.image-language-conf
# Remove 'tsflags=nodocs' line from dnf.conf
sed -i '/tsflags=nodocs/d' /mnt/sysimage/etc/dnf/dnf.conf
%end
%post --erroronfail --log=/root/anaconda-post.log
set -eux
# 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
echo "Import RPM GPG key"
releasever=$(rpm --eval '%{?fedora}')
# When building ELN containers, we don't have the %{fedora} macro
if [ -z $releasever ]; then
releasever=eln
fi
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
echo "# resolv placeholder" > /etc/resolv.conf
chmod 644 /etc/resolv.conf
# https://bugzilla.redhat.com/show_bug.cgi?id=1343138
# Fix /run/lock breakage since it's not tmpfs in docker
# This unmounts /run (tmpfs) and then recreates the files
# in the /run directory on the root filesystem of the container
#
# 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
rm -f /run/nologin # https://pagure.io/atomic-wg/issue/316
# Final pruning
rm -rfv /var/cache/* /var/log/* /tmp/*
# Check if specified files exist
declare -a files=(
# bash
"/usr/share/man/man1/bash.1*"
"/usr/share/man/man1/cd.1*"
"/usr/share/man/man1/export.1*"
# coreutils-common
"/usr/share/man/man1/cat.1*"
"/usr/share/man/man1/cp.1*"
"/usr/share/man/man1/ls.1*"
# gnupg2
"/usr/share/man/man1/gpg2.1*"
"/usr/share/man/man7/gnupg2.7*"
# psmisc
"/usr/share/man/fr/man1/pstree.1*"
"/usr/share/man/ko/man1/pstree.1*"
"/usr/share/man/man1/pstree.1*"
# rpm
"/usr/share/man/man8/rpm.8*"
"/usr/share/man/man8/rpm2cpio.8*"
# shadow-utils
"/usr/share/man/fr/man8/useradd.8*"
"/usr/share/man/ja/man8/useradd.8*"
"/usr/share/man/man8/useradd.8*"
# util-linux
"/usr/share/man/man1/cal.1.*"
"/usr/share/man/man1/getopt.1*"
"/usr/share/man/man1/hexdump.1*"
# util-linux-core
"/usr/share/man/man1/kill.1*"
"/usr/share/man/man8/mount.8*"
# xz
"/usr/share/man/fr/man1/xz.1*"
"/usr/share/man/ko/man1/xz.1*"
"/usr/share/man/man1/xz.1*"
)
ret_val=0
for file in "${files[@]}"; do
if ! compgen -G "$file" >/dev/null; then
echo "$file: No such file or directory" >&2
ret_val=1
break
fi
done
if [ "$ret_val" -ne 0 ]; then
false
fi
%end
# Perform any necessary post-installation configurations specific to Fedora Toolbox (nochroot environment)
# Post-installation commands
%post --nochroot --erroronfail --log=/mnt/sysimage/root/anaconda-post-nochroot.log
set -eux
# Clean up dnf cache
dnf clean all
%end

View File

@@ -6,11 +6,13 @@
fedora-release-designsuite
# Provides backup application
#deja-dup
deja-dup
deja-dup-nautilus
# Add extra gnome applications
#gnome-books
gnome-books
gnome-calendar
gnome-photos
gnome-pomodoro
gnome-todo
@@ -20,9 +22,11 @@ powerline-fonts
# removal of unneeded applications
-gnome-boxes
-eog
# temporarily removing conflicting application
-mypaint
-sparkleshare
-blender-luxcorerender
%end

View File

@@ -34,6 +34,8 @@ firstboot --reconfig
@hardware-support
kernel
# on 32bit arm make sure we only install one kernel
-kernel-lpae
# remove this in %post
dracut-config-generic
-dracut-config-rescue
@@ -57,9 +59,18 @@ glibc-all-langpacks
# Find the architecture we are on
arch=$(uname -m)
# 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_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
cp -P /usr/share/uboot/rpi_arm64/u-boot.bin /boot/efi/rpi-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}')
@@ -86,7 +97,7 @@ rm -f /var/lib/rpm/__db*
# when you are using fedora via serial console as you do not get any output post grub
# linux does a good job of knowing what consoles need to be enabled.
# https://bugzilla.redhat.com/show_bug.cgi?id=2022757
if [[ $arch == "aarch64" ]]; then
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
sed -i -e 's|console=tty0||g' /boot/loader/entries/*conf
fi

View File

@@ -1,5 +0,0 @@
%include fedora-disk-base.ks
%include fedora-disk-xbase.ks
%include fedora-budgie-common.ks
autopart --type=btrfs --noswap

View File

@@ -1,5 +0,0 @@
%include fedora-disk-base.ks
%include fedora-disk-xbase.ks
%include fedora-lxqt-common.ks
autopart --type=btrfs --noswap

6
fedora-disk-minimal.ks Normal file
View File

@@ -0,0 +1,6 @@
%include fedora-disk-base.ks
%include fedora-minimal-common.ks
services --enabled=sshd,NetworkManager,chronyd,initial-setup
autopart --type=plain --noswap

View File

@@ -1,5 +0,0 @@
%include fedora-disk-base.ks
%include fedora-disk-xbase.ks
%include fedora-phosh-common.ks
autopart --type=btrfs --noswap

View File

@@ -26,7 +26,8 @@ fedora-release-server
# setup systemd to boot to the right runlevel
echo -n "Setting default runlevel to multiuser text mode"
systemctl set-default multi-user.target
rm -f /etc/systemd/system/default.target
ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
echo .
%end

View File

@@ -7,7 +7,5 @@ autopart --type=btrfs --noswap
%packages
-initial-setup
-initial-setup-gui
gnome-initial-setup
anaconda-webui
%end

View File

@@ -17,6 +17,6 @@ glibc-all-langpacks
%post
# Explicitly set graphical.target as default as this is how initial-setup detects which version to run
systemctl set-default graphical.target
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
%end

View File

@@ -10,10 +10,8 @@ fedora-repos-eln
rootfiles
tar # https://bugzilla.redhat.com/show_bug.cgi?id=1409920
vim-minimal
dnf5
dnf5-plugins
dnf
dnf-yum # https://fedorahosted.org/fesco/ticket/1312#comment:29
sudo
-glibc-langpack-en
-langpacks-en
@@ -22,6 +20,10 @@ sudo
%post --erroronfail --log=/root/anaconda-post.log
set -eux
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-33-primary \
/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-34-primary \
/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-35-primary
# remove some extraneous files
rm -rf /var/cache/dnf/*
rm -rf /tmp/*

View File

@@ -32,10 +32,11 @@ reboot
# Packages
%packages
@core
dnf5
dnf
kernel
yum
nfs-utils
dnf-utils
# pull firmware packages out
-aic94xx-firmware
@@ -112,15 +113,21 @@ subscription-manager-cockpit
# rh-amazon-rhui-client
# Transitively required by grub2-tools-extra
langpacks-core-font-en
# Exclude all langpacks for now
-langpacks-*
# The langpacks-en package is pulled in by Anaconda and it seems filtering
# it out using langpacks-* is not sufficient. It needs to be filtered
# directly.
-langpacks-en
# We are building Fedora-ELN
fedora-release-eln
fedora-repos-eln
fedora-release
fedora-repos
# Add rng-tools as source of entropy
rng-tools
# TODO: Not available in Fedora-ELN yet.
# rng-tools
%end
@@ -135,7 +142,8 @@ passwd -l root
# setup systemd to boot to the right runlevel
echo -n "Setting default runlevel to multiuser text mode"
systemctl set-default multi-user.target
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

View File

@@ -21,11 +21,9 @@ thunar
gnome-keyring-pam
# Admin tools are handy to have
@admin-tools
wget2-wget
wget
# Better more popular browser
system-config-printer
# Install XFCE polkit
xfce-polkit
# save some space
-autofs

99
fedora-iot.ks Normal file
View File

@@ -0,0 +1,99 @@
# This is the kickstart for Fedora IoT disk images.
text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931
lang en_US.UTF-8
keyboard us
timezone --utc Etc/UTC
selinux --enforcing
rootpw --lock --iscrypted locked
bootloader --timeout=1 --append="modprobe.blacklist=vc4"
network --bootproto=dhcp --device=link --activate --onboot=on
services --enabled=NetworkManager,sshd
zerombr
clearpart --all --initlabel --disklabel=msdos
autopart --nohome --noswap --type=plain
# Equivalent of %include fedora-repo.ks
# 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
reboot
%post --erroronfail
# Find the architecture we are on
arch=$(uname -m)
if [[ $arch == "armv7l" ]]; then
arch="armhfp"
fi
# Setup Raspberry Pi firmware
if [[ $arch == "aarch64" ]] || [[ $arch == "armhfp" ]]; 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_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
cp -P /usr/share/uboot/rpi_arm64/u-boot.bin /boot/efi/rpi-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
# Set the origin to the "main ref", distinct from /updates/ which is where bodhi writes.
# We want consumers of this image to track the two week releases.
ostree admin set-origin --index 0 fedora-iot https://dl.fedoraproject.org/iot/repo/ "fedora/stable/${arch}/iot"
# Make sure the ref we're supposedly sitting on (according
# to the updated origin) exists.
ostree refs "fedora-iot:fedora/stable/${arch}/iot" --create "fedora-iot:fedora/stable/${arch}/iot"
# Remove the old ref so that the commit eventually gets cleaned up.
ostree refs "fedora-iot:fedora/stable/${arch}/iot" --delete
# delete/add the remote with new options to enable gpg verification
# and to point them at the cdn url
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'
# 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
# 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
# Remove any persistent NIC rules generated by udev
rm -vf /etc/udev/rules.d/*persistent-net*.rules
echo "Removing random-seed so it's not the same in every image."
rm -f /var/lib/systemd/random-seed
echo "Packages within this iot image:"
echo "-----------------------------------------------------------------------"
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
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.)"
rm -f /etc/NetworkManager/system-connections/*.nmconnection
# 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

@@ -6,9 +6,6 @@
@firefox
@kde-apps
@kde-media
@kde-pim
# Ensure we have Anaconda initial setup using kwin
@kde-spin-initial-setup
@libreoffice
# add libreoffice-draw and libreoffice-math (pagureio:fedora-kde/SIG#103)
libreoffice-draw
@@ -18,34 +15,48 @@ fedora-release-kde
-@admin-tools
# drop tracker stuff pulled in by gtk3 (pagureio:fedora-kde/SIG#124)
-tracker-miners
-tracker
# Not needed on desktops. See: https://pagure.io/fedora-kde/SIG/issue/566
-mariadb-server-utils
### The KDE-Desktop
# fedora-specific packages
plasma-welcome-fedora
### fixes
# use kde-print-manager instead of system-config-printer
-system-config-printer
# make sure mariadb lands instead of MySQL (hopefully a temporary hack)
mariadb-embedded
mariadb-connector-c
mariadb-server
# minimal localization support - allows installing the kde-l10n-* packages
kde-l10n
# Additional packages that are not default in kde-* groups, but useful
fuse
mediawriter
### space issues
# unwanted packages from @kde-desktop
# don't include these for now to fit on a cd
-desktop-backgrounds-basic
-kdeaccessibility*
-ktorrent # kget has also basic torrent features (~3 megs)
-digikam # digikam has duplicate functionality with gwenview (~28 megs)
-kipi-plugins # ~8 megs + drags in Marble
-krusader # ~4 megs
-k3b # ~15 megs
#-kdeplasma-addons # ~16 megs
# Additional packages that are not default in kde-* groups, but useful
#kdeartwork # only include some parts of kdeartwork
fuse
mediawriter
### space issues
# admin-tools
-gnome-disk-utility
# kcm_clock still lacks some features, so keep system-config-date around
#-system-config-date
# prefer kcm_systemd
-system-config-services
# prefer/use kusers
-system-config-users
## avoid serious bugs by omitting broken stuff
%end

View File

@@ -0,0 +1,7 @@
# remove input methods to free space
%packages
-scim*
-iok
%end

View File

@@ -13,8 +13,6 @@
# Maintainer: Christian Dersch <lupinix@fedoraproject.org>
# https://fedoraproject.org/wiki/User:Lupinix
# Co-Maintainer: JT Pennington <q5sys@fedoraproject.org>
# https://fedoraproject.org/wiki/User:q5sys
%include fedora-live-kde-base.ks
%include fedora-live-minimization.ks
@@ -35,7 +33,7 @@ part / --size 16000
astrometry
astrometry-tycho2
cdsclient
cfitsio-utils
fpack
psfex
scamp
sextractor
@@ -44,10 +42,10 @@ skyviewer
swarp
wcstools
# Observatory: KStars + INDI
# Observatory: KStars + INDI drivers
indi-3rdparty-drivers
indistarter
kstars
libindi
# misc. astronomy
#celestia
@@ -80,9 +78,11 @@ astropy-tools
ginga
python3-astropy
python3-astroML
python3-astroML-addons
python3-astroquery
python3-astroscrappy
python3-APLpy
python3-ATpy
python3-ccdproc
python3-fitsio
python3-gatspy
@@ -97,10 +97,7 @@ python3-matplotlib-tk
# Python IDE very useful for scientific use
# FTI with Python 3.12:
# https://bugzilla.redhat.com/show_bug.cgi?id=2220598
# can be restored when that is fixed
#python3-spyder
python3-spyder
# BOINC for distributed computing
boinc-client

View File

@@ -30,7 +30,14 @@ kernel
kernel-modules
kernel-modules-extra
# 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
# for now.
#memtest86+
@x86-baremetal-tools # memtest86+ is included
# The point of a live image is to install
anaconda
anaconda-install-env-deps
anaconda-live
@anaconda-tools
@@ -38,25 +45,236 @@ anaconda-live
# https://fedoraproject.org/wiki/Changes/RemoveDeviceMapperMultipathFromWorkstationLiveCD
-fcoe-utils
-device-mapper-multipath
-sdubby
# Need aajohan-comfortaa-fonts for the SVG rnotes images
aajohan-comfortaa-fonts
# Without this, initramfs generation during live image creation fails: #1242586
dracut-live
# syslinux is in @x86-baremetal-tools
# anaconda needs the locales available to run for different locales
glibc-all-langpacks
# provide the livesys scripts
livesys-scripts
# no longer in @core since 2018-10, but needed for livesys script
initscripts
chkconfig
%end
%post
# Enable livesys services
systemctl enable livesys.service
systemctl enable livesys-late.service
# FIXME: it'd be better to get this installed from a package
cat > /etc/rc.d/init.d/livesys << EOF
#!/bin/bash
#
# live: Init script for live image
#
# chkconfig: 345 00 99
# description: Init script for live image.
### BEGIN INIT INFO
# X-Start-Before: display-manager chronyd
### END INIT INFO
. /etc/init.d/functions
if ! strstr "\`cat /proc/cmdline\`" rd.live.image || [ "\$1" != "start" ]; then
exit 0
fi
if [ -e /.liveimg-configured ] ; then
configdone=1
fi
exists() {
which \$1 >/dev/null 2>&1 || return
\$*
}
livedir="LiveOS"
for arg in \`cat /proc/cmdline\` ; do
if [ "\${arg##rd.live.dir=}" != "\${arg}" ]; then
livedir=\${arg##rd.live.dir=}
continue
fi
if [ "\${arg##live_dir=}" != "\${arg}" ]; then
livedir=\${arg##live_dir=}
fi
done
# enable swapfile if it exists
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
fi
mountPersistentHome() {
# support label/uuid
if [ "\${homedev##LABEL=}" != "\${homedev}" -o "\${homedev##UUID=}" != "\${homedev}" ]; then
homedev=\`/sbin/blkid -o device -t "\$homedev"\`
fi
# if we're given a file rather than a blockdev, loopback it
if [ "\${homedev##mtd}" != "\${homedev}" ]; then
# mtd devs don't have a block device but get magic-mounted with -t jffs2
mountopts="-t jffs2"
elif [ ! -b "\$homedev" ]; then
loopdev=\`losetup -f\`
if [ "\${homedev##/run/initramfs/live}" != "\${homedev}" ]; then
action "Remounting live store r/w" mount -o remount,rw /run/initramfs/live
fi
losetup \$loopdev \$homedev
homedev=\$loopdev
fi
# if it's encrypted, we need to unlock it
if [ "\$(/sbin/blkid -s TYPE -o value \$homedev 2>/dev/null)" = "crypto_LUKS" ]; then
echo
echo "Setting up encrypted /home device"
plymouth ask-for-password --command="cryptsetup luksOpen \$homedev EncHome"
homedev=/dev/mapper/EncHome
fi
# and finally do the mount
mount \$mountopts \$homedev /home
# if we have /home under what's passed for persistent home, then
# we should make that the real /home. useful for mtd device on olpc
if [ -d /home/home ]; then mount --bind /home/home /home ; fi
[ -x /sbin/restorecon ] && /sbin/restorecon /home
if [ -d /home/liveuser ]; then USERADDARGS="-M" ; fi
}
findPersistentHome() {
for arg in \`cat /proc/cmdline\` ; do
if [ "\${arg##persistenthome=}" != "\${arg}" ]; then
homedev=\${arg##persistenthome=}
fi
done
}
if strstr "\`cat /proc/cmdline\`" persistenthome= ; then
findPersistentHome
elif [ -e /run/initramfs/live/\${livedir}/home.img ]; then
homedev=/run/initramfs/live/\${livedir}/home.img
fi
# if we have a persistent /home, then we want to go ahead and mount it
if ! strstr "\`cat /proc/cmdline\`" nopersistenthome && [ -n "\$homedev" ] ; then
action "Mounting persistent /home" mountPersistentHome
fi
if [ -n "\$configdone" ]; then
exit 0
fi
# add liveuser user with no passwd
action "Adding live user" useradd \$USERADDARGS -c "Live System User" liveuser
passwd -d liveuser > /dev/null
usermod -aG wheel liveuser > /dev/null
# Remove root password lock
passwd -d root > /dev/null
# turn off firstboot for livecd boots
systemctl --no-reload disable firstboot-text.service 2> /dev/null || :
systemctl --no-reload disable firstboot-graphical.service 2> /dev/null || :
systemctl stop firstboot-text.service 2> /dev/null || :
systemctl stop firstboot-graphical.service 2> /dev/null || :
# don't use prelink on a running live image
sed -i 's/PRELINKING=yes/PRELINKING=no/' /etc/sysconfig/prelink &>/dev/null || :
# turn off mdmonitor by default
systemctl --no-reload disable mdmonitor.service 2> /dev/null || :
systemctl --no-reload disable mdmonitor-takeover.service 2> /dev/null || :
systemctl stop mdmonitor.service 2> /dev/null || :
systemctl stop mdmonitor-takeover.service 2> /dev/null || :
# don't start cron/at as they tend to spawn things which are
# disk intensive that are painful on a live image
systemctl --no-reload disable crond.service 2> /dev/null || :
systemctl --no-reload disable atd.service 2> /dev/null || :
systemctl stop crond.service 2> /dev/null || :
systemctl stop atd.service 2> /dev/null || :
# turn off abrtd on a live image
systemctl --no-reload disable abrtd.service 2> /dev/null || :
systemctl stop abrtd.service 2> /dev/null || :
# Don't sync the system clock when running live (RHBZ #1018162)
sed -i 's/rtcsync//' /etc/chrony.conf
# Mark things as configured
touch /.liveimg-configured
# add static hostname to work around xauth bug
# https://bugzilla.redhat.com/show_bug.cgi?id=679486
# the hostname must be something else than 'localhost'
# https://bugzilla.redhat.com/show_bug.cgi?id=1370222
hostnamectl set-hostname "localhost-live"
EOF
# bah, hal starts way too late
cat > /etc/rc.d/init.d/livesys-late << EOF
#!/bin/bash
#
# live: Late init script for live image
#
# chkconfig: 345 99 01
# description: Late init script for live image.
. /etc/init.d/functions
if ! strstr "\`cat /proc/cmdline\`" rd.live.image || [ "\$1" != "start" ] || [ -e /.liveimg-late-configured ] ; then
exit 0
fi
exists() {
which \$1 >/dev/null 2>&1 || return
\$*
}
touch /.liveimg-late-configured
# read some variables out of /proc/cmdline
for o in \`cat /proc/cmdline\` ; do
case \$o in
ks=*)
ks="--kickstart=\${o#ks=}"
;;
xdriver=*)
xdriver="\${o#xdriver=}"
;;
esac
done
# if liveinst or textinst is given, start anaconda
if strstr "\`cat /proc/cmdline\`" liveinst ; then
plymouth --quit
/usr/sbin/liveinst \$ks
fi
if strstr "\`cat /proc/cmdline\`" textinst ; then
plymouth --quit
/usr/sbin/liveinst --text \$ks
fi
# configure X, allowing user to override xdriver
if [ -n "\$xdriver" ]; then
cat > /etc/X11/xorg.conf.d/00-xdriver.conf <<FOE
Section "Device"
Identifier "Videocard0"
Driver "\$xdriver"
EndSection
FOE
fi
EOF
chmod 755 /etc/rc.d/init.d/livesys
/sbin/restorecon /etc/rc.d/init.d/livesys
/sbin/chkconfig --add livesys
chmod 755 /etc/rc.d/init.d/livesys-late
/sbin/restorecon /etc/rc.d/init.d/livesys-late
/sbin/chkconfig --add livesys-late
# enable tmpfs for /tmp
systemctl enable tmp.mount
@@ -96,7 +314,7 @@ rm -f /boot/*-rescue*
# Disable network service here, as doing it in the services line
# fails due to RHBZ #1369794
systemctl disable network
/sbin/chkconfig network off
# Remove machine-id on pre generated images
rm -f /etc/machine-id
@@ -104,3 +322,17 @@ touch /etc/machine-id
%end
%post --nochroot
# For livecd-creator builds only (lorax/livemedia-creator handles this directly)
if [ -n "$LIVE_ROOT" ]; then
cp "$INSTALL_ROOT"/usr/share/licenses/*-release-common/* "$LIVE_ROOT/"
# only installed on x86, x86_64
if [ -f /usr/bin/livecd-iso-to-disk ]; then
mkdir -p "$LIVE_ROOT/LiveOS"
cp /usr/bin/livecd-iso-to-disk "$LIVE_ROOT/LiveOS"
fi
fi
%end

View File

@@ -1,17 +0,0 @@
# Description:
# - Fedora Live Spin with the Budgie Desktop Environment
#
# Maintainer(s):
# - Joshua Strobl <joshua@buddiesofbudgie.org>
%include fedora-live-base.ks
%include fedora-budgie-common.ks
part / --size 7750
%post
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="budgie"/' /etc/sysconfig/livesys
%end

View File

@@ -9,7 +9,7 @@
%include fedora-live-base.ks
%include fedora-cinnamon-common.ks
part / --size=9216
part / --size=8192
%post
# cinnamon configuration
@@ -21,8 +21,32 @@ PREFERRED=/usr/bin/cinnamon-session
DISPLAYMANAGER=/usr/sbin/lightdm
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="cinnamon"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys << EOF
# set up lightdm autologin
sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf
sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf
#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf
# set Cinnamon as default session, otherwise login will fail
sed -i 's/^#user-session=.*/user-session=cinnamon/' /etc/lightdm/lightdm.conf
# no updater applet in live environment
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
# and mark it as executable
chmod +x /home/liveuser/Desktop/liveinst.desktop
# this goes at the end after all other changes.
chown -R liveuser:liveuser /home/liveuser
restorecon -R /home/liveuser
EOF
%end

12
fedora-live-comp_neuro.ks Normal file
View File

@@ -0,0 +1,12 @@
# Description: The Workstation based NeuroFedora computational neuroscience lab image.
# https://fedoraproject.org/wiki/Changes/Comp_Neuro_Lab
#
# Maintained by the NeuroFedora SIG:
# https://neuro.fedoraproject.org
# 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

@@ -62,10 +62,10 @@ if [ -f `which powerline-daemon` ]; then
fi
FOE
#Override the favorite desktop application in Dash
sed -i "s/favorite-apps=."'*'"/favorite-apps=['firefox.desktop', 'shotwell.desktop', 'gimp.desktop', 'darktable.desktop','krita.desktop', 'inkscape.desktop', 'blender.desktop', 'libreoffice-writer.desktop', 'scribus.desktop', 'pitivi.desktop', 'nautilus.desktop', 'bijiben.desktop', 'anaconda.desktop', 'list-design-tutorials.desktop']/" /etc/rc.d/init.d/livesys
# rebuild schema cache with any overrides we installed
glib-compile-schemas /usr/share/glib-2.0/schemas
#Override the favorite desktop application in Dash
sed -i "s/favorite-apps=."'*'"/favorite-apps=['firefox.desktop', 'shotwell.desktop', 'gimp.desktop', 'darktable.desktop','krita.desktop', 'inkscape.desktop', 'blender.desktop', 'libreoffice-writer.desktop', 'scribus.desktop', 'pitivi.desktop', 'nautilus.desktop', 'bijiben.desktop', 'anaconda.desktop', 'list-design-tutorials.desktop']/" /etc/rc.d/init.d/livesys
%end

View File

@@ -1,12 +1,9 @@
# fedora-live-games.ks
#
# Maintainers:
# Maintainer:
# - Darryl T. Agostinelli <dagostinelli@gmail.com>
# https://fedoraproject.org/wiki/User:Dagostinelli
#
# - Richard Anaya <richard.anaya@gmail.com>
# https://fedoraproject.org/wiki/User:Richardanaya
#
# Former Maintainers:
# - Bruno Wolff III <bruno@wolff.to>
# https://fedoraproject.org/wiki/User:Bruno
@@ -17,7 +14,8 @@
%include fedora-live-xfce.ks
part / --size 15360
# The recommended part size for DVDs is too close to use for the games spin
part / --size 14336
%packages
@@ -26,7 +24,8 @@ part / --size 15360
-wine
# Remove libreoffice, we're here to have fun!
# Remove libreoffice since it just got added to livecd-desktop and
# will likely put the games spin over size and it is freeze time.
-libreoffice*
# Extra screensavers isn't much help for the games spin
@@ -44,17 +43,23 @@ armacycles-ad
asc
asc-music
astromenace
# beneath-a-steel-sky-cd scummvm games cut for size
boswars
bzflag
crossfire-client
extremetuxracer
# flight-of-the-amazon-queen-cd scummvm games cut for size
freeciv
freecol
freedoom
freedroidrpg
frozen-bubble
gl-117
# glob2 - currently broken
lincity-ng
#tmw - currently broken
#maniadrive - currently broken
#maniadrive-music - has been retired
megaglest
nethack-vultures
netpanzer
@@ -92,6 +97,7 @@ knights
lbrickbuster2
# liquidwar # Would pull in fluid-soundfont-lite-patches
lordsawar
# lure scummvm games cut for size
# machineball # Would pull in fluid-soundfont-lite-patches
nethack
openlierox
@@ -99,7 +105,7 @@ pachi
pioneers
quarry
# Ri-li cut for size
rogue
# rogue # recently abandoned. Someone picked it up. Waiting for approval.
# scorchwentbonkers # Would pull in fluid-soundfont-lite-patches
solarwolf
sopwith

View File

@@ -13,11 +13,8 @@
%include fedora-live-minimization.ks
%include fedora-i3-common.ks
# need a bigger /
part / --size 6000
%post
# i3 configuration
# xfce configuration
# create /etc/sysconfig/desktop (needed for installation)
@@ -26,17 +23,37 @@ PREFERRED=/usr/bin/i3
DISPLAYMANAGER=/usr/sbin/lightdm
EOF
cat >> /etc/rc.d/init.d/livesys << EOF
# deactivate xfconf-migration (#683161)
rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || :
# set up lightdm autologin
sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf
sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf
#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf
# set i3 as default session, otherwise login will fail
sed -i 's/^#user-session=.*/user-session=i3/' /etc/lightdm/lightdm.conf
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
# this goes at the end after all other changes.
chown -R liveuser:liveuser /home/liveuser
restorecon -R /home/liveuser
# setting the wallpaper
echo "/usr/bin/feh --bg-scale /usr/share/backgrounds/default.png" >> /home/liveuser/.profile
# echoing type liveinst to start the installer
echo "echo 'Please type liveinst and press Enter to start the installer'" >> /home/liveuser/.bashrc
# fixing the installer non opening bug
echo "xhost si:localuser:root" >> /home/liveuser/.profile
# Fix https://bugzilla.redhat.com/show_bug.cgi?id=2240823
cat > /etc/xdg/autostart/xfce-polkit.desktop <<EOF
[Desktop Entry]
Type=Application
Name=xfce-polkit
Exec=/usr/libexec/xfce-polkit
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="i3"/' /etc/sysconfig/livesys
%end

View File

@@ -12,7 +12,7 @@
%include fedora-live-kde.ks
# DVD size partition
part / --size 11264 --fstype ext4
part / --size 10240 --fstype ext4
#enable threaded irqs
bootloader --append="threadirqs"
@@ -63,20 +63,22 @@ thunderbird
%post
# Override livesys-kde settings
cat >> /var/lib/livesys/livesys-session-extra << EOF
#setup kickoff favorites
/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
JAMFAVORITESLIVE=/usr/share/applications/liveinst.desktop,$JAMFAVORITES
cat <<FOE >> /etc/skel/.config/kickoffrc
cat <<EOF >> /etc/skel/.config/kickoffrc
[Favorites]
FavoriteURLs=$JAMFAVORITES
FOE
EOF
# Override fedora-live-kde-base.ks settings
sed -i /etc/rc.d/init.d/livesys -res"#^(FavoriteURLs=).*#\1${JAMFAVORITESLIVE}#"
cat >> /etc/rc.d/init.d/livesys << EOF
/usr/sbin/usermod -a -G jackuser,audio liveuser
EOF

View File

@@ -19,7 +19,85 @@ cat > /root/.config/gtk-3.0/settings.ini << EOF
gtk-theme-name = Adwaita
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="kde"/' /etc/sysconfig/livesys
# add initscript
cat >> /etc/rc.d/init.d/livesys << EOF
# are we *not* able to use wayland sessions?
if strstr "\`cat /proc/cmdline\`" nomodeset ; then
PLASMA_SESSION_FILE="plasmax11.desktop"
else
PLASMA_SESSION_FILE="plasma.desktop"
fi
# set up autologin for user liveuser
if [ -f /etc/sddm.conf ]; then
sed -i 's/^#User=.*/User=liveuser/' /etc/sddm.conf
sed -i "s/^#Session=.*/Session=\${PLASMA_SESSION_FILE}/" /etc/sddm.conf
else
cat > /etc/sddm.conf << SDDM_EOF
[Autologin]
User=liveuser
Session=\${PLASMA_SESSION_FILE}
SDDM_EOF
fi
# add liveinst.desktop to favorites menu
mkdir -p /home/liveuser/.config/
cat > /home/liveuser/.config/kickoffrc << MENU_EOF
[Favorites]
FavoriteURLs=/usr/share/applications/firefox.desktop,/usr/share/applications/org.kde.dolphin.desktop,/usr/share/applications/systemsettings.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/liveinst.desktop
MENU_EOF
# show liveinst.desktop on desktop and in menu
sed -i 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
# set executable bit disable KDE security warning
chmod +x /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp -a /usr/share/applications/liveinst.desktop /home/liveuser/Desktop/
# Set akonadi backend
mkdir -p /home/liveuser/.config/akonadi
cat > /home/liveuser/.config/akonadi/akonadiserverrc << AKONADI_EOF
[%General]
Driver=QSQLITE3
AKONADI_EOF
# "Disable plasma-discover-notifier"
mkdir -p /home/liveuser/.config/autostart
cp -a /etc/xdg/autostart/org.kde.discover.notifier.desktop /home/liveuser/.config/autostart/
echo 'Hidden=true' >> /home/liveuser/.config/autostart/org.kde.discover.notifier.desktop
# Disable baloo
cat > /home/liveuser/.config/baloofilerc << BALOO_EOF
[Basic Settings]
Indexing-Enabled=false
BALOO_EOF
# Disable kres-migrator
cat > /home/liveuser/.kde/share/config/kres-migratorrc << KRES_EOF
[Migration]
Enabled=false
KRES_EOF
# Disable kwallet migrator
cat > /home/liveuser/.config/kwalletrc << KWALLET_EOL
[Migration]
alreadyMigrated=true
KWALLET_EOL
# Disable automount of 'known' devices
# https://bugzilla.redhat.com/show_bug.cgi?id=2073708
cat > /home/liveuser/.config/kded_device_automounterrc << AUTOMOUNTER_EOF
[General]
AutomountEnabled=false
AutomountOnLogin=false
AutomountOnPlugin=false
AUTOMOUNTER_EOF
# make sure to set the right permissions and selinux contexts
chown -R liveuser:liveuser /home/liveuser/
restorecon -R /home/liveuser/
EOF
%end

View File

@@ -9,9 +9,10 @@
%include fedora-live-kde-base.ks
%include fedora-live-minimization.ks
%include fedora-kde-minimization.ks
# DVD payload
part / --size=9000
part / --size=7500
%post
%end

View File

@@ -10,9 +10,6 @@
%include fedora-live-minimization.ks
%include fedora-lxde-common.ks
# increate the disk size for compose
part / --size 7168
%post
# LXDE and LXDM configuration
@@ -22,8 +19,46 @@ PREFERRED=/usr/bin/startlxde
DISPLAYMANAGER=/usr/sbin/lxdm
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="lxde"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys << EOF
# disable screensaver locking and make sure gamin gets started
cat > /etc/xdg/lxsession/LXDE/autostart << FOE
/usr/libexec/gam_server
@lxpanel --profile LXDE
@pcmanfm --desktop --profile LXDE
/usr/libexec/notification-daemon
FOE
# set up preferred apps
cat > /etc/xdg/libfm/pref-apps.conf << FOE
[Preferred Applications]
WebBrowser=firefox.desktop
MailClient=sylpheed.desktop
FOE
# set up auto-login for liveuser
sed -i 's/# autologin=.*/autologin=liveuser/g' /etc/lxdm/lxdm.conf
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
# create default config for clipit, otherwise it displays a dialog on startup
mkdir -p /home/liveuser/.config/clipit
cat > /home/liveuser/.config/clipit/clipitrc << FOE
[rc]
use_copy=true
save_uris=true
save_history=false
statics_show=true
single_line=true
FOE
# this goes at the end after all other changes.
chown -R liveuser:liveuser /home/liveuser
restorecon -R /home/liveuser
EOF
%end

View File

@@ -11,16 +11,47 @@
%include fedora-live-minimization.ks
%include fedora-lxqt-common.ks
# need a bigger /
part / --size 6000
%packages
dracut-config-generic
%end
%post
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="lxqt"/' /etc/sysconfig/livesys
# add initscript
cat >> /etc/rc.d/init.d/livesys << EOF
# set up autologin for user liveuser
if [ -f /etc/sddm.conf ]; then
sed -i 's/^#User=.*/User=liveuser/' /etc/sddm.conf
sed -i 's/^#Session=.*/Session=lxqt.desktop/' /etc/sddm.conf
else
cat > /etc/sddm.conf << SDDM_EOF
[Autologin]
User=liveuser
Session=lxqt.desktop
SDDM_EOF
fi
# show liveinst.desktop on desktop and in menu
sed -i 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp -a /usr/share/applications/liveinst.desktop /home/liveuser/Desktop/
# set up preferred apps
cat > /etc/xdg/libfm/pref-apps.conf << FOE
[Preferred Applications]
WebBrowser=qupzilla.desktop
FOE
# no updater applet in live environment
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
chown -R liveuser:liveuser /home/liveuser/
restorecon -R /home/liveuser/
EOF
%end

View File

@@ -7,10 +7,45 @@
%include fedora-mate-common.ks
%include fedora-live-minimization.ks
part / --size 9216
part / --size 8192
%post
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="mate"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys << EOF
# make the installer show up
if [ -f /usr/share/applications/liveinst.desktop ]; then
# Show harddisk install in shell dash
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop ""
fi
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
# and mark it as executable
chmod +x /home/liveuser/Desktop/liveinst.desktop
# rebuild schema cache with any overrides we installed
glib-compile-schemas /usr/share/glib-2.0/schemas
# set up lightdm autologin
sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf
sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf
#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf
# set MATE as default session, otherwise login will fail
sed -i 's/^#user-session=.*/user-session=mate/' /etc/lightdm/lightdm.conf
# Turn off PackageKit-command-not-found while uninstalled
if [ -f /etc/PackageKit/CommandNotFound.conf ]; then
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
fi
# no updater applet in live environment
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
# make sure to set the right permissions and selinux contexts
chown -R liveuser:liveuser /home/liveuser/
restorecon -R /home/liveuser/
EOF
%end

View File

@@ -4,6 +4,13 @@
%packages
# save some space
-mpage
-hplip
-isdn4k-utils
# scanning takes quite a bit of space :/
-xsane
-xsane-gimp
-sane-backends
%end

View File

@@ -1,30 +0,0 @@
# fedora-livecd-miraclewm.ks
#
# Description:
# - Fedora Live Spin with the tiling window manager Miracle
#
# Maintainer(s):
# - Matthew Kosarek <mattkae@fedoraproject.org>
# - Neal Gompa <ngompa@fedoraproject.org>
%include fedora-live-base.ks
%include fedora-live-minimization.ks
%include fedora-miraclewm-common.ks
%packages
# To be able to show installation instructions on background
nwg-wrapper
%end
%post
# create /etc/sysconfig/desktop (needed for installation)
cat > /etc/sysconfig/desktop <<EOF
PREFERRED=/usr/bin/miraclewm
DISPLAYMANAGER=/bin/sddm
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="miraclewm"/' /etc/sysconfig/livesys
%end

View File

@@ -1,6 +1,5 @@
# Maintained by lrossett and the Fedora Robotics SIG:
# https://docs.fedoraproject.org/en-US/robotics-sig/
# mailto:lrossett@redhat.com
# Maintained by the Fedora Robotics SIG:
# http://fedoraproject.org/wiki/SIGs/Robotics
# mailto:robotics@lists.fedoraproject.org
%include fedora-live-base.ks
@@ -16,6 +15,10 @@ part / --size 10752
# Add robotics development packages
@robotics-suite
pcl-devel
player-devel
stage-devel
mrpt-devel
# Add version control packages
git
@@ -86,9 +89,9 @@ mercurial
%end
# Rip the post-configuration from the live-desktop, set default shortcuts to IDEs
%post
# Extend the post-configuration from the live-desktop, set default shortcuts to IDEs
cat >> /var/lib/livesys/livesys-session-extra << EOF
cat >> /etc/rc.d/init.d/livesys << EOF
# disable screensaver locking
cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.screensaver.gschema.override << FOE
[org.gnome.desktop.screensaver]
@@ -101,6 +104,13 @@ cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.lockdown.gschema.override <
disable-lock-screen=true
FOE
# disable updates plugin
cat >> /usr/share/glib-2.0/schemas/org.gnome.software.gschema.override << FOE
[org.gnome.software]
allow-updates=false
download-updates=false
FOE
# make the installer show up
if [ -f /usr/share/applications/liveinst.desktop ]; then
# Show harddisk install in shell dash
@@ -118,5 +128,17 @@ fi
# rebuild schema cache with any overrides we installed
glib-compile-schemas /usr/share/glib-2.0/schemas
# set up auto-login
cat > /etc/gdm/custom.conf << FOE
[daemon]
AutomaticLoginEnable=True
AutomaticLogin=liveuser
FOE
# Turn off PackageKit-command-not-found while uninstalled
if [ -f /etc/PackageKit/CommandNotFound.conf ]; then
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
fi
EOF
%end

View File

@@ -12,7 +12,8 @@
%include fedora-live-minimization.ks
%include fedora-scientific-common.ks
part / --size 18000
# The recommended part size for DVDs is too close to use for the scientific spin
part / --size 15000
%post

View File

@@ -6,7 +6,6 @@
# Maintainers:
# Fabian Affolter <fab [AT] fedoraproject <dot> org>
# Joerg Simon <jsimon [AT] fedoraproject <dot> org>
# JT Pennington <jt [AT] fedoraproject <dot> org>
# Acknowledgements:
# Fedora LiveCD Xfce Spin team - some work here was and will be inherited,
# many thanks, especially to Christoph Wickert!
@@ -45,7 +44,6 @@ gnome-keyring-pam
-foomatic-db-ppds
-foomatic
-stix-fonts
-default-fonts-core-math
-ibus-typing-booster
-xfce4-sensors-plugin
-man-pages-*
@@ -61,6 +59,7 @@ gnome-keyring-pam
-binwalk
-bkhive
-bonesi
-bro
-cmospwd
-dnstop
-etherape
@@ -78,6 +77,7 @@ gnome-keyring-pam
-pdfcrack
-proxychains
-pyrit
-raddump
-rkhunter
-safecopy
-samdump2
@@ -101,7 +101,50 @@ PREFERRED=/usr/bin/startxfce4
DISPLAYMANAGER=/usr/sbin/lightdm
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="xfce"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys << EOF
mkdir -p /home/liveuser/.config/xfce4
cat > /home/liveuser/.config/xfce4/helpers.rc << FOE
MailReader=sylpheed-claws
FileManager=Thunar
WebBrowser=midori
FOE
# disable screensaver locking (#674410)
cat >> /home/liveuser/.xscreensaver << FOE
mode: off
lock: False
dpmsEnabled: False
FOE
# deactivate xfconf-migration (#683161)
rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || :
# deactivate xfce4-panel first-run dialog (#693569)
mkdir -p /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml
cp /etc/xdg/xfce4/panel/default.xml /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
# set up lightdm autologin
sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf
sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf
#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf
# set Xfce as default session, otherwise login will fail
sed -i 's/^#user-session=.*/user-session=xfce/' /etc/lightdm/lightdm.conf
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
# and mark it as executable (new Xfce security feature)
chmod +x /home/liveuser/Desktop/liveinst.desktop
# this goes at the end after all other changes.
chown -R liveuser:liveuser /home/liveuser
restorecon -R /home/liveuser
EOF
%end

View File

@@ -4,7 +4,7 @@
# - A Sugar environment that you can carry in your pocket
#
# Maintainers:
# - Chihurumnaya Ibiam <ibiam AT sugarlabs DOT org>
# - Chihurumnaya Ibiam <ibiamchihurumnaya AT gmail DOT com>
# - Alex Perez <aperez AT alexperez DOT com>
%include fedora-live-base.ks
@@ -13,15 +13,37 @@
%post
# Fix https://bugzilla.redhat.com/show_bug.cgi?id=2239137
cat > /etc/xdg/autostart/xfce-polkit.desktop <<EOF
[Desktop Entry]
Type=Application
Name=xfce-polkit
Exec=/usr/libexec/xfce-polkit
cat >> /etc/rc.d/init.d/livesys << EOF
# set up lightdm autologin
sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf
sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf
#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf
# set Sugar as default session, otherwise login will fail
sed -i 's/^#user-session=.*/user-session=sugar/' /etc/lightdm/lightdm.conf
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="soas"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys-late << EOF
# disable screensaver locking
cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.screensaver.gschema.override << FOE
[org.gnome.desktop.screensaver]
lock-enabled=false
FOE
# and hide the lock screen option
cat >> /usr/share/glib-2.0/schemas/org.gnome.desktop.lockdown.gschema.override << FOE
[org.gnome.desktop.lockdown]
disable-lock-screen=true
FOE
# rebuild schema cache with any overrides we installed
glib-compile-schemas /usr/share/glib-2.0/schemas
EOF
chmod 755 /etc/rc.d/init.d/livesys-late
/sbin/restorecon /etc/rc.d/init.d/livesys-late
/sbin/chkconfig --add livesys-late
%end

View File

@@ -1,34 +0,0 @@
# fedora-livecd-sway.ks
#
# Description:
# - Fedora Live Spin with the tiling window manager Sway
#
# Maintainer(s):
# - Aleksei Bavshin <alebastr89@gmail.com>
# - Jiří Konečný <jkonecny@redhat.com>
# - Anthony Rabbito <hello@anthonyrabbito.com>
# - Fabio Alessandro Locati <me@fale.io>
%include fedora-live-base.ks
%include fedora-live-minimization.ks
%include fedora-sway-common.ks
part / --size 6144
%packages
# To be able to show installation instructions on background
nwg-wrapper
%end
%post
# create /etc/sysconfig/desktop (needed for installation)
cat > /etc/sysconfig/desktop <<EOF
PREFERRED=/usr/bin/sway
DISPLAYMANAGER=/bin/sddm
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="sway"/' /etc/sysconfig/livesys
%end

View File

@@ -10,16 +10,93 @@
#
#include snippets/packagekit-cached-metadata.ks
part / --size 8576
%packages
gnome-initial-setup
anaconda-webui
%end
part / --size 7750
%post
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="gnome"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys << EOF
# disable gnome-software automatically downloading updates
cat >> /usr/share/glib-2.0/schemas/org.gnome.software.gschema.override << FOE
[org.gnome.software]
allow-updates=false
download-updates=false
FOE
# don't autostart gnome-software session service
rm -f /etc/xdg/autostart/gnome-software-service.desktop
# disable the gnome-software shell search provider
cat >> /usr/share/gnome-shell/search-providers/org.gnome.Software-search-provider.ini << FOE
DefaultDisabled=true
FOE
# don't run gnome-initial-setup
mkdir ~liveuser/.config
touch ~liveuser/.config/gnome-initial-setup-done
# suppress anaconda spokes redundant with gnome-initial-setup
cat >> /etc/sysconfig/anaconda << FOE
[NetworkSpoke]
visited=1
[PasswordSpoke]
visited=1
[UserSpoke]
visited=1
FOE
# make the installer show up
if [ -f /usr/share/applications/liveinst.desktop ]; then
# Show harddisk install in shell dash
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop ""
# need to move it to anaconda.desktop to make shell happy
mv /usr/share/applications/liveinst.desktop /usr/share/applications/anaconda.desktop
cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE
[org.gnome.shell]
favorite-apps=['firefox.desktop', 'org.gnome.Calendar.desktop', 'rhythmbox.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'anaconda.desktop']
FOE
# Make the welcome screen show up
if [ -f /usr/share/anaconda/gnome/fedora-welcome.desktop ]; then
mkdir -p ~liveuser/.config/autostart
cp /usr/share/anaconda/gnome/fedora-welcome.desktop /usr/share/applications/
cp /usr/share/anaconda/gnome/fedora-welcome.desktop ~liveuser/.config/autostart/
fi
# Disable GNOME welcome tour so it doesn't overlap with Fedora welcome screen
cat >> /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.override << FOE
welcome-dialog-last-shown-version='4294967295'
FOE
# Copy Anaconda branding in place
if [ -d /usr/share/lorax/product/usr/share/anaconda ]; then
cp -a /usr/share/lorax/product/* /
fi
fi
# rebuild schema cache with any overrides we installed
glib-compile-schemas /usr/share/glib-2.0/schemas
# set up auto-login
cat > /etc/gdm/custom.conf << FOE
[daemon]
AutomaticLoginEnable=True
AutomaticLogin=liveuser
FOE
# Turn off PackageKit-command-not-found while uninstalled
if [ -f /etc/PackageKit/CommandNotFound.conf ]; then
sed -i -e 's/^SoftwareSourceSearch=true/SoftwareSourceSearch=false/' /etc/PackageKit/CommandNotFound.conf
fi
# make sure to set the right permissions and selinux contexts
chown -R liveuser:liveuser /home/liveuser/
restorecon -R /home/liveuser/
EOF
%end

View File

@@ -26,8 +26,54 @@ PREFERRED=/usr/bin/startxfce4
DISPLAYMANAGER=/usr/sbin/lightdm
EOF
# set livesys session type
sed -i 's/^livesys_session=.*/livesys_session="xfce"/' /etc/sysconfig/livesys
cat >> /etc/rc.d/init.d/livesys << EOF
mkdir -p /home/liveuser/.config/xfce4
cat > /home/liveuser/.config/xfce4/helpers.rc << FOE
MailReader=sylpheed-claws
FileManager=Thunar
WebBrowser=firefox
FOE
# disable screensaver locking (#674410)
cat >> /home/liveuser/.xscreensaver << FOE
mode: off
lock: False
dpmsEnabled: False
FOE
# deactivate xfconf-migration (#683161)
rm -f /etc/xdg/autostart/xfconf-migration-4.6.desktop || :
# deactivate xfce4-panel first-run dialog (#693569)
mkdir -p /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml
cp /etc/xdg/xfce4/panel/default.xml /home/liveuser/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
# set up lightdm autologin
sed -i 's/^#autologin-user=.*/autologin-user=liveuser/' /etc/lightdm/lightdm.conf
sed -i 's/^#autologin-user-timeout=.*/autologin-user-timeout=0/' /etc/lightdm/lightdm.conf
#sed -i 's/^#show-language-selector=.*/show-language-selector=true/' /etc/lightdm/lightdm-gtk-greeter.conf
# set Xfce as default session, otherwise login will fail
sed -i 's/^#user-session=.*/user-session=xfce/' /etc/lightdm/lightdm.conf
# Show harddisk install on the desktop
sed -i -e 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp /usr/share/applications/liveinst.desktop /home/liveuser/Desktop
# no updater applet in live environment
rm -f /etc/xdg/autostart/org.mageia.dnfdragora-updater.desktop
# and mark it as executable (new Xfce security feature)
chmod +x /home/liveuser/Desktop/liveinst.desktop
# this goes at the end after all other changes.
chown -R liveuser:liveuser /home/liveuser
restorecon -R /home/liveuser
EOF
%end

View File

@@ -15,6 +15,9 @@
@lxde-media
@lxde-office
# FIXME: can be omitted once comps is updated
midori
# pam-fprint causes a segfault in LXDM when enabled
-fprintd-pam
@@ -46,7 +49,6 @@ metacity
-foomatic-db-ppds
-foomatic
-stix-fonts
-default-fonts-core-math
-ibus-typing-booster
-xscreensaver-extras
#-wqy-zenhei-fonts # FIXME: Workaround to save space, do this in comps

View File

@@ -20,6 +20,12 @@ fusion-icon
# blacklist applications which breaks mate-desktop
-audacious
# see https://bugzilla.redhat.com/show_bug.cgi?id=2068699
# and https://bugzilla.redhat.com/show_bug.cgi?id=1933494
# use earlyoom instead of systemd-oomd-defaults
earlyoom
-systemd-oomd-defaults
# office
@libreoffice

25
fedora-minimal-common.ks Normal file
View File

@@ -0,0 +1,25 @@
%packages
microdnf
-@standard
-initial-setup-gui
-generic-release*
-glibc-all-langpacks
-xkeyboard-config
# recommended by iproute, we don't want it in minimal
-iproute-tc
# recommended by gnutls, we don't want it in minimal
-trousers
glibc-langpack-en
iw
NetworkManager-wifi
%end
%post
# setup systemd to boot to the right runlevel
echo -n "Setting default runlevel to multiuser text mode"
rm -f /etc/systemd/system/default.target
ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
echo .
%end

View File

@@ -1,15 +0,0 @@
# fedora-livecd-miraclewm.ks
#
# Description:
# - Fedora Live Spin with the tiling window manager Miracle
#
# Maintainer(s):
# - Matthew Kosarek <mattkae@fedoraproject.org>
# - Neal Gompa <ngompa@fedoraproject.org>
%packages
fedora-release-miraclewm
@^miraclewm-desktop-environment
@firefox
initial-setup-gui-wayland-miraclewm
%end

View File

@@ -0,0 +1,27 @@
%include fedora-arm-base.ks
# server defaults to xfs for / so lets do so on arm also
part / --size=2500 --fstype xfs
%packages
# install the default groups for the server evironment since installing the environment is not working
@server-product
@standard
@headless-management
@container-management
@domain-client
-initial-setup-gui
-generic-release*
fedora-modular-release
%end
%post
# setup systemd to boot to the right runlevel
echo -n "Setting default runlevel to multiuser text mode"
rm -f /etc/systemd/system/default.target
ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
echo .
%end

View File

@@ -31,7 +31,7 @@ coreutils-single
util-linux
rpm
shadow-utils
dnf5
microdnf
glibc-minimal-langpack
grubby
kernel
@@ -56,9 +56,18 @@ sssd-client
# Find the architecture we are on
arch=$(uname -m)
# 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_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
cp -P /usr/share/uboot/rpi_arm64/u-boot.bin /boot/efi/rpi-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}')

View File

@@ -0,0 +1,30 @@
# Description: Common gnome based configuration for NeuroFedora spin images.
#
# Maintained by the NeuroFedora SIG:
# https://neuro.fedoraproject.org
# 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

@@ -1,13 +0,0 @@
# fedora-phosh-common.ks
#
# Description:
# - Fedora Disk image Spin with the phosh window manager
#
# Maintainer(s):
# - Kevin Fenzi <kevin@scrye.com>
%packages
# install env-group to resolve RhBug:1891500
@^phosh-desktop-environment
%end

View File

@@ -10,7 +10,7 @@
nano
openssh-clients
vim-enhanced
wget2-wget
wget
# Remove Pythons possibly recommended by tox
-python2
@@ -28,11 +28,7 @@ wget2-wget
-python3.7
-python3.8
-python3.9
-python3.10
-python3.11
-python3.12
-pypy
-pypy3.9
# Remove LaTeX, see https://bugzilla.redhat.com/show_bug.cgi?id=1862450
# and https://bugzilla.redhat.com/show_bug.cgi?id=1902354

View File

@@ -48,7 +48,7 @@ desktop-backgrounds-gnome
# Drop the Java plugin and Java
-icedtea-web
-*openjdk*
-java*
# No printing
-@printing

View File

@@ -3,7 +3,7 @@
# Exactly one of 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
# %include fedora-repo-not-rawhide.ks
%include fedora-repo-not-rawhide.ks

View File

@@ -61,10 +61,7 @@ julia
julia-doc
julia-devel
# FTI with Python 3.12:
# https://bugzilla.redhat.com/show_bug.cgi?id=2220598
# can be restored when that is fixed
#python3-spyder
python3-spyder
python3-spyder-kernels
@@ -136,6 +133,7 @@ tmux
rlwrap
hexchat
fig2ps
bibtex2html
hevea
#Include Mozilla Firefox

View File

@@ -1,204 +0,0 @@
# fedora-server-vm-full.ks (rel. 1.02)
# Kickstart file to build a Fedora Server Edition VM disk image.
# The image aims to resemble as close as technically possible the
# full features of a Fedora Server Edition in a virtual machine.
#
# The image uses GPT partition type as of default in Fedora 37.
#
# At first boot it opens a text mode basic configuration screen.
#
# This kickstart file is designed to be used with ImageFactory (in Koji).
#
# To build the image locally, you need to install ImageFactory and
# various additional helpers and configuration files.
# See Fedora Server Edition user documentation tutorial.
# Use text mode install
text
# Keyboard layouts
keyboard 'us'
# System language
lang en_US.UTF-8
# System timezone
# set time zone to GMT (Etcetera/UTC)
timezone Etc/UTC --utc
# Root password
rootpw --iscrypted --lock locked
# SELinux configuration
selinux --enforcing
# System bootloader configuration
bootloader --location=mbr --timeout=1 --append="console=tty1 console=ttyS0,115200n8"
# Network information
network --bootproto=dhcp --device=link --activate --onboot=on
# Firewall configuration
firewall --enabled --service=mdns
# System services
services --enabled="sshd,NetworkManager,chronyd,initial-setup"
# Run the Setup Agent on first boot
firstboot --reconfig
# Partition Information. Use GPT by default (since Fedora 37)
# Resemble the Partitioning used for Fedora Server Install media
clearpart --all --initlabel --disklabel=gpt
reqpart --add-boot
part pv.007 --size=4000 --grow
volgroup sysvg pv.007
logvol / --vgname=sysvg --size=4000 --grow --maxsize=16000 --fstype=xfs --name=root --label=sysroot
# Include URLs for network installation dynamically, dependent on Fedora release
# and imagefactory runtime environment
%include fedora-repo.ks
# Shutdown after installation
shutdown
##### begin package list #############################################
%packages --inst-langs=en
@server-product
@core
@headless-management
@standard
@networkmanager-submodules
# container management is an optional install item on disk media.
# Install options not available with VMs. So we don't include it
# despite trying to resemble a DVD installation as close as possible.
##@container-management
@domain-client
@guest-agents
# All arm-tools packages install on aarch64/armhfp only
# TODO: on a x86_64 devel environment are @arm-tools not available
# and cause a build error.
# @arm-tools
# Standard Fedora Package Groups
## dracut-config-generic ## included in =core=
glibc-all-langpacks
initial-setup
kernel-core
-dracut-config-rescue
-generic-release*
-initial-setup-gui
-kernel
-linux-firmware
-plymouth
# pulled in by @standard
-smartmontools
-smartmontools-selinux
%end
##### end package list ###############################################
##### begin kickstart post script ####################################
%post --erroronfail --log=/root/anaconda-post-1.log
# Find the architecture we are on
arch=$(uname -m)
# Import RPM GPG key, during installation saved in /etc/pki
echo "Import RPM GPG key"
releasever=$(rpm --eval '%{fedora}')
basearch=$(uname -i)
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
# See the systemd-random-seed.service man page that says:
# " It is recommended to remove the random seed from OS images intended
# for replication on multiple systems"
# The newly installed instance should make it's own
echo "Removing random-seed so it's not the same in every image."
rm -f /var/lib/systemd/random-seed
# When we build the image a networking config file gets left behind.
# Let's clean it up.
echo "Cleanup leftover networking configuration"
rm -f /etc/NetworkManager/system-connections/*.nmconnection
# Truncate the /etc/resolv.conf left over from NetworkManager during the
# kickstart because the DNS server is environment specific.
truncate -s 0 /etc/resolv.conf
echo "Cleaning repodata to save space."
dnf clean all
# linux-firmware is installed by default and is quite large. As of mid 2020:
# Total download size: 97 M
# Installed size: 268 M
# Not needed in virtual environment.
echo "Removing linux-firmware package."
rpm -e linux-firmware
# Will ever anybody see this?
echo "Packages within this disk image"
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
# Note that running rpm recreates the rpm db files which aren't needed or wanted
rm -f /var/lib/rpm/__db*
# Do we need a serial terminal with a VM?
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
# Anaconda adds console=tty0 to the grub boot line on all images. this is problematic
# when you are using fedora via serial console as you do not get any output post grub
# linux does a good job of knowing what consoles need to be enabled.
# https://bugzilla.redhat.com/show_bug.cgi?id=2022757
sed -i -e 's|console=tty0||g' /boot/loader/entries/*conf
fi
# Trigger lvm-devices-import.path and .service to create
# a new /etc/lvm/devices/system.devices for the root VG.
rm -f /etc/lvm/devices/system.devices
touch /etc/lvm/devices/auto-import-rootvg
# Remove machine-id on pre generated images
rm -f /etc/machine-id
touch /etc/machine-id
%end
##### end kickstart post script #####################################
##### begin custom post script (after base) #########################
%post
# When we build the image /var/log gets populated.
# Let's clean it up.
echo "Cleanup leftover in /var/log"
cd /var/log && find . -name \* -type f -delete
echo "Zeroing out empty space."
# Create zeros file with nodatacow and no compression
touch /var/tmp/zeros
chattr +C /var/tmp/zeros
# This forces the filesystem to reclaim space from deleted files
dd bs=1M if=/dev/zero of=/var/tmp/zeros || :
echo "(Don't worry -- that out-of-space error was expected.)"
# Force sync to disk
sync /
rm -f /var/tmp/zeros
sync /
# setup systemd to boot to the right runlevel
echo -n "Setting default runlevel to multiuser text mode"
systemctl set-default multi-user.target
echo .
%end
##### end custom post script ########################################

View File

@@ -4,7 +4,7 @@
# - A Sugar environment that you can carry in your pocket
#
# Maintainers:
# - Chihurumnaya Ibiam <ibiam AT sugarlabs DOT org>
# - Chihurumnaya Ibiam <ibiamchihurumnaya AT gmail DOT com>
# - Alex Perez <aperez AT alexperez DOT com>
firewall --enabled --service=mdns,presence
@@ -65,9 +65,6 @@ livecd-tools
-plymouth-system-theme
-plymouth-theme-charge
# Install XFCE polkit
xfce-polkit
%end
%post

View File

@@ -1,17 +0,0 @@
# fedora-livecd-sway.ks
#
# Description:
# - Fedora Live Spin with the tiling window manager Sway
#
# Maintainer(s):
# - Aleksei Bavshin <alebastr89@gmail.com>
# - Jiří Konečný <jkonecny@redhat.com>
# - Anthony Rabbito <hello@anthonyrabbito.com>
# - Fabio Alessandro Locati <me@fale.io>
%packages
fedora-release-sway
@^sway-desktop-environment
@firefox
@swaywm-extended
%end

View File

@@ -12,7 +12,4 @@
-gfs2-utils
-reiserfs-utils
# Exclude extra unwanted packages
-python3-botocore
%end

View File

@@ -19,7 +19,7 @@ fedora-release-xfce
@xfce-media
@xfce-office
wget2-wget
wget
system-config-printer
# save some space

View File

@@ -26,7 +26,7 @@ imsettings
%end
%post
cat >> /var/lib/livesys/livesys-session-extra << EOF
cat >> /etc/rc.d/init.d/livesys << EOF
#### setting env and start ibus-deamon ####
#mkdir /home/liveuser
cat >> /home/liveuser/.bash_profile << FOE

View File

@@ -1,9 +1,9 @@
[spins.lxqt.x86_64]
fas = [ "lupinix", "zsun", "farchord", "ngompa" ]
maintainers = [ "Christian Dersch", "Zamir SUN", "Steve Cossette", "Neal Gompa" ]
fas = [ "lupinix", "zsun" ]
maintainers = [ "Christian Dersch", "Zamir SUN" ]
[spins.lxqt.armhfp]
fas = [ "lupinix", "zsun", "farchord", "ngompa" ]
maintainers = [ "Christian Dersch", "Zamir SUN", "Steve Cossette", "Neal Gompa" ]
fas = [ "lupinix", "zsun" ]
maintainers = [ "Christian Dersch", "Zamir SUN" ]
[spins.xfce.x86_64]
fas = [ "nonamedotc", "kevin", "maxamillion" ]
@@ -13,17 +13,13 @@ fas = [ "nonamedotc", "kevin", "maxamillion" ]
maintainers = [ "Mukundan Ragavan", "Kevin Fenzi", "Adam Miller" ]
[spins.kde.x86_64]
fas = [ "rdieter", "marcdeop", "ngompa" ]
maintainers = [ "Rex Dieter", "Marc Deop", "Neal Gompa" ]
fas = [ "rdieter", "svahl" ]
maintainers = [ "Rex Dieter", "Sebastian Vahl" ]
[spins.cinnamon.x86_64]
fas = [ "grinnz" ]
maintainers = [ "Dan Book" ]
[spins.mate_compiz.x86_64]
fas = [ "raveit65" ]
maintainers = [ "Wolfgang Ulbrich" ]
[spins.lxde.x86_64]
fas = [ "cwickert", "mtasaka" ]
maintainers = [ "Christoph Wickert", "Mamoru TASAKA" ]
@@ -36,23 +32,27 @@ fas = [ "chimosky", "aperezbios" ]
maintainers = [ "Chihurumnaya Ibiam", "Alex Perez" ]
[spins.soas.armhfp]
fas = [ "chimosky", "aperezbios", ]
maintainers = [ "Chihurumnaya Ibiam", "Alex Perez" ]
maintainers = [ "Chihurumnaya Ibiam", "Alex Perez", ]
[labs.astronomy_kde.x86_64]
fas = [ "lupinix", "q5sys" ]
maintainers = [ "Christian Dersch", "JT Pennington" ]
fas = [ "lupinix" ]
maintainers = [ "Christian Dersch" ]
[labs.security.x86_64]
fas = [ "fab", "jsimon", "q5sys"]
maintainers = [ "Fabian Affolter", "Joerg Simon", "JT Pennington" ]
fas = [ "fab", "jsimon" ]
maintainers = [ "Fabian Affolter", "Joerg Simon" ]
[labs.comp_neuro.x86_64]
fas = [ "bt0dotninja", "dan1mal", "ankursinha", "neuro-sig" ]
maintainers = [ "Alberto Rodriguez Sanchez", "Danny Lee", "Ankur Sinha", "NeuroFedora SIG" ]
[labs.design_suite.x86_64]
fas = [ "luya" ]
maintainers = [ "Luya Tshimbalanga" ]
[labs.games.x86_64]
fas = [ "ngompa", "q5sys" ]
maintainers = [ "Neal Gompa", "JT Pennington" ]
fas = [ "dagostinelli" ]
maintainers = [ "Darryl T. Agostinelli" ]
[labs.jam_kde.x86_64]
fas = [ "q5sys" ]
@@ -71,53 +71,13 @@ fas = [ "scitech" ]
maintainers = [ "SciTech SIG" ]
[labs.robotics.x86_64]
fas = [ "lrossett", "robotics-sig" ]
maintainers = [ "Leonardo Rossetti", "Robotics SIG" ]
fas = [ "rmattes", "robotics-sig" ]
maintainers = [ "Rich Mattes", "Robotics SIG" ]
[spins.i3.x86_64]
fas = [ "jflory7", "defolos", "nasirhm", "odilhao", "x3mboy" ]
maintainers = [ "Justin Flory", "Dan Čermák", "Nasir Hussain", "Odilon Junior", "Eduard Lucena" ]
[eln]
fas = [ "sgallagh", "tdawson", "asamalik", "yselkowitz" ]
maintainers = [ "Stephen Gallagher", "Troy Dawson", "Adam Samalik", "Yaakov Selkowitz" ]
[spins.budgie.x86_64]
fas = [ "joshstrobl" ]
maintainers = [ "Joshua Strobl" ]
[spins.sway.x86_64]
fas = [ "alebastr", "jkonecny", "anthr76", "fale" ]
maintainers = [ "Aleksei Bavshin", "Jiří Konečný", "Anthony Rabbito", "Fabio Alessandro Locati" ]
[spins.miraclewm.x86_64]
fas = [ "mattkae", "ngompa" ]
maintainers = [ "Matthew Kosarek", "Neal Gompa" ]
[silverblue.x86_64]
fas = [ "siosm", "tpopela" ]
maintainers = [ "Timothée Ravier", "Tomáš Popela" ]
[silverblue.aarch64]
fas = [ "siosm", "tpopela" ]
maintainers = [ "Timothée Ravier", "Tomáš Popela" ]
[kinoite.x86_64]
fas = [ "siosm" ]
maintainers = [ "Timothée Ravier" ]
[kinoite.aarch64]
fas = [ "siosm" ]
maintainers = [ "Timothée Ravier" ]
[sericea.x86_64]
fas = [ "alebastr", "jkonecny", "anthr76", "fale" ]
maintainers = [ "Aleksei Bavshin", "Jiří Konečný", "Anthony Rabbito", "Fabio Alessandro Locati" ]
[sericea.aarch64]
fas = [ "alebastr", "jkonecny", "anthr76", "fale" ]
maintainers = [ "Aleksei Bavshin", "Jiří Konečný", "Anthony Rabbito", "Fabio Alessandro Locati" ]
[onyx.x86_64]
fas = [ "joshstrobl" ]
maintainers = [ "Joshua Strobl" ]
[onyx.aarch64]
fas = [ "joshstrobl" ]
maintainers = [ "Joshua Strobl" ]
fas = [ "sgallagh", "tdawson", "asamalik" ]
maintainers = [ "Stephen Gallagher", "Troy Dawson", "Adam Samalik" ]

View File

@@ -1,4 +1,4 @@
#!/usr/bin/python3
#!/usr/bin/python
# Given as input a comps definition and a .ks file, list
# the packages which would be installed. This list is
# NOT depsolved, it's merely a textual list of explicitly
@@ -11,40 +11,38 @@
import os
import sys
import getopt
import xml.etree.ElementTree as ElementTree
import xml.etree.cElementTree as ElementTree
import pykickstart
import pykickstart.parser
import pykickstart.version
def usage(ecode):
print("Usage: {} [--version=VERSION] COMPS.xml KICKSTART.ks".format(sys.argv[0]))
print("List packages installed by KICKSTART.")
print "Usage: %s [--version=VERSION] COMPS.xml KICKSTART.ks" % (sys.argv[0], )
print "List packages installed by KICKSTART."
sys.exit(ecode)
def main():
try:
opts, args = getopt.getopt(sys.argv[1:], 'h', ['help', 'version=', 'debug'])
except getopt.GetoptError as e:
opts,args = getopt.getopt(sys.argv[1:], 'h', ['help', 'version=', 'debug'])
except getopt.GetoptError, e:
usage(1)
version = None
debug = False
for o, a in opts:
for o,a in opts:
if o in ('-h', '--help'):
usage(0)
elif o in ('--debug',):
elif o in ('--debug', ):
debug = True
elif o in ('--version',):
elif o in ('--version', ):
version = a
if len(args) != 2:
usage(1)
comps_filename = args[0]
kickstart_filename = args[1]
if version:
version_cls = pykickstart.version.stringToVersion(version)
else:
@@ -57,10 +55,10 @@ def main():
working_directory = os.path.dirname(kickstart_filename)
if working_directory:
os.chdir(working_directory)
parser = pykickstart.parser.KickstartParser(version_cls)
parser.readKickstart(kickstart_filename)
comps_groups = comps.findall('group')
packages_for_group = {}
for group in comps_groups:
@@ -76,29 +74,27 @@ def main():
packages_for_group[group_id.text] = pkglist
pkg_list = set()
for group in parser.handler.packages.groupList:
if debug:
print("# Including {} packages from group '{}'".format(len(packages_for_group.get(group.name, [])),
group.name), file=sys.stderr)
for pkg in packages_for_group.get(group.name, []):
print >>sys.stderr, "# Including %d packages from group %r" % (len(packages_for_group[group.name]), group.name)
for pkg in packages_for_group[group.name]:
pkg_list.add(pkg)
if debug:
print("# Adding {} explicitly specified packages".format(len(parser.handler.packages.packageList)),
file=sys.stderr)
print >>sys.stderr, "# Adding %d explicitly specified packages" % (len(parser.handler.packages.packageList), )
for pkg in parser.handler.packages.packageList:
pkg_list.add(pkg)
if debug:
print("# Processing {} explicitly excluded packages".format(len(parser.handler.packages.excludedList)),
file=sys.stderr)
print >>sys.stderr, "# Processing %d explicitly excluded packages" % (len(parser.handler.packages.excludedList), )
for pkg in parser.handler.packages.excludedList:
pkg_list.discard(pkg)
if pkg in pkg_list:
pkg_list.remove(pkg)
for pkg in sorted(pkg_list):
print(pkg)
print "%s" % (pkg, )
sys.exit(0)
if __name__ == '__main__':
main()