Compare commits

..

34 Commits
f41 ... f43

Author SHA1 Message Date
raveit65
d1bbfe1211 add Mate spin to maintainer.toml 2025-09-30 23:58:43 +02:00
Wolfgang Ulbrich
70a40e6c09 Mate: bump root size to try and fix build 2025-09-30 16:41:29 +00:00
Adam Williamson
1dee99f2c9 astronomy: drop python3-ATpy
ATpy was retired:
https://src.fedoraproject.org/rpms/ATpy/c/cb5d588
the commit notes that astropy is the replacement; it's already
included, so that's fine.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2025-08-26 12:29:08 -07:00
Dan Book
e081be9992 Cinnamon spin: drop rhythmbox and obsolete extra backgrounds, add exaile (f43) 2025-08-21 02:36:57 -04:00
Samyak Jain
e1c6b11b78 Branch Fedora 43 from Rawhide
Signed-off-by: Samyak Jain <samyak.jn11@gmail.com>
2025-08-11 16:26:53 +05:30
Adam Williamson
71dffbe915 fedora-live-base: drop 'anaconda'
See https://pagure.io/fedora-kiwi-descriptions/pull-request/203 -
same change, same justification. This only pulls in anaconda-gui
and anaconda-tui, and we do not necessarily want those now that
anaconda-webui exists.

Lives that really need to use GTK UI not web UI can include
anaconda-gui in their own manifests.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2025-07-31 08:38:36 -07:00
Ankur Sinha (Ankur Sinha Gmail)
d59f4195df feat: drop comp-neuro lab
Signed-off-by: Ankur Sinha (Ankur Sinha Gmail) <sanjay.ankur@gmail.com>
2025-07-23 16:50:47 +00:00
Adam Williamson
08cc5d8884 Bump sway root size to fix build
It seems like this worked for Cinnamon and Games, and Sway has
the same problem, so let's do it there too.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2025-07-23 08:31:28 -07:00
Adam Williamson
0cfc3295ba Cinnamon: bump root size to try and fix build
Cinnamon image build is failing at the moment, and I see this in
the logs:

2025-07-22T15:44:31+0000 [260] INFO RPM callback start %posttrans scriptlet "kernel-core-0:6.16.0-0.rc7.58.fc43.x86_64"
2025-07-22T15:44:31+0000 [260] INFO [scriptlet] grub2-probe: error: ../grub-core/kern/fs.c:123:unknown filesystem.
2025-07-22T15:44:38+0000 [260] INFO [scriptlet] dracut[W]: Running in hostonly mode in a container!
2025-07-22T15:44:38+0000 [260] INFO [scriptlet] dracut[E]: No '/dev/log' or 'logger' included for syslog logging
2025-07-22T15:45:09+0000 [260] INFO [scriptlet] dracut[E]: No '/dev/log' or 'logger' included for syslog logging
2025-07-22T15:46:20+0000 [260] INFO [scriptlet] cp:
2025-07-22T15:46:20+0000 [260] INFO [scriptlet] error copying '/var/tmp/dracut.dGGDh1v/initramfs.img' to '/boot/initramfs-0-rescue-bc1937eee2a84a8bb3c665a062c4566f.img': No space left on device
2025-07-22T15:46:20+0000 [260] INFO [scriptlet] dracut[F]: Creation of /boot/initramfs-0-rescue-bc1937eee2a84a8bb3c665a062c4566f.img failed
2025-07-22T15:46:20+0000 [260] INFO [scriptlet] /usr/lib/kernel/install.d/51-dracut-rescue.install failed with exit status 1.
2025-07-22T15:46:20+0000 [260] WARNING [rpm] %posttrans(kernel-core-6.16.0-0.rc7.58.fc43.x86_64) scriptlet failed, exit status 1
2025-07-22T15:46:20+0000 [260] INFO RPM callback stop %posttrans scriptlet "kernel-core-0:6.16.0-0.rc7.58.fc43.x86_64" return code 1

I *think* that's probably the issue. So let's try bumping the
root fs size and see if it helps.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2025-07-22 11:12:52 -07:00
Adam Williamson
3e9a228db5 games: bump root size, update some lines
This bumps the root size because image build is currently failing
and I *think* it's a space issue causing kernel-core %post to
fail. If it doesn't work we can revert the space bump.

Also:

* Drop some commented-out lines for packages that have been retired
* Update the comment for leaving out libreoffice
* Add back rogue, since it's building now

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2025-07-22 11:09:40 -07:00
Anton Medvedev
ba34c74b4a rewrite list-packages-for-ks.py script to python3
Signed-off-by: Anton Medvedev <amedvede@redhat.com>
2025-05-28 12:05:58 +00:00
Timothée Ravier
16dd11b611 maintainers: Remove PPC64LE Atomic Desktops
See: https://fedoraproject.org/wiki/Changes/AtomicDesktopsNoPpc64le
2025-03-10 11:54:46 +01:00
Kevin Fenzi
3112149d65 Remove @neuro-sig from notifications/maintainers
The compose-tracker app doesn't handle groups, so it ends up notifying
@neuro (a user) instead. Drop this so they don't keep getting
notifications they don't care about.

Signed-off-by: Kevin Fenzi <kevin@scrye.com>
2025-02-05 12:08:46 -08:00
Simon de Vlieger
c8791014ed minimal: drop
Remove the `fedora-disk-minimal.ks` file. Fedora Minimal disk images
are not built by ImageFactory/oz. Having this file here is confusing.

Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
2025-01-07 21:36:03 +01:00
Simon de Vlieger
e875df9b80 iot: drop
Remove the `fedora-iot.ks` file. Fedora IoT disk images are not built by
ImageFactory/oz. Having this file here is confusing.

Signed-off-by: Simon de Vlieger <supakeen@redhat.com>
2025-01-07 21:31:35 +01:00
Adam Williamson
4ecca276e8 scientific_kde live: bump root size
Compose is failing, needs "At least 668MB more space", so let's
give it another 1000MB.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-11-20 17:32:13 -08:00
Adam Williamson
2b5fc6b2c6 comp_neuro live: bump root size
Compose is failing, needs "At least 149MB more space", so let's
give it a gig.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-11-20 17:31:17 -08:00
Neal Gompa
f34fc22406 maintainers: Reassign Games lab to myself and q5sys
The previous maintainers have been inactive on the Games SIG and
lab spin for a couple of years and the most recent keepalive was
answered by JT Pennington.

Thus, reassign to myself as de facto Games SIG chair and JT Pennington
as the last responder for the lab spin.

Reference: https://pagure.io/fedora-pgm/schedule/issue/160
2024-11-08 11:31:22 -05:00
Adam Williamson
c6c1a42cb0 Bump Jam_KDE root size a bit
It's failing on Rawhide and F41 because it's running out of
space. It's a few hundred megs over, so let's give it an extra
gig.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-10-19 15:16:47 -07:00
Timothée Ravier
b2f4ab4a3a fedora-kde-common: Remove mariadb-server-utils
This package depends on Perl and is not needed for desktop use cases.

See: https://pagure.io/fedora-kde/SIG/issue/566
2024-10-11 13:36:31 +02:00
Fabian Affolter
41dcd0a870 Security: Remove raddump 2024-10-04 14:02:26 +00:00
Fabian Affolter
53529140a4 Security: Remove bro 2024-10-04 14:02:26 +00:00
JT Pennington
9ea1fad3c8 Update fedora-live-astronomy_kde.ks
add co-maintainer
2024-10-04 13:42:05 +00:00
JT Pennington
a1b275fd30 Update maintainers.toml 2024-10-04 13:42:05 +00:00
Mamoru TASAKA
2a6485f10a lxde: increase disk size for compose
Installed file size is already near limit, and
on rawhide (F42), now compose began to fail at
kernel posttrans scriptlet due to disk size shortage.

So now let's increase size by 20%.
2024-10-03 00:23:50 +09:00
Miro Hrončok
97db030843 Do not pull in pypy3.9 to the Python Classroom Lab, 3.10 is already there 2024-09-17 17:22:21 +02:00
Adam Williamson
c1a0eda13b Bump workstation root size a bit more
ppc64le live compose for the F41 Beta candidate failed with
"needs 110MB more space on the / filesystem". Here's 384M for a
little bit of headroom.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2024-09-11 17:42:31 -07:00
Kevin Fenzi
5220de9de2 Merge #1054 Design Suite: temporarily drop deja-dup support 2024-09-03 18:52:01 +00:00
Luya Tshimbalanga
a2dbd83cf6 Design Suite: drop unused deja-dup-nautilus 2024-09-02 09:58:09 -07:00
Luya Tshimbalanga
40d13b5b31 Design Suite: temporarily drop deja-dup support 2024-09-02 09:44:58 -07:00
Mamoru TASAKA
3d7df42f17 astronomy: change fpack deps
fpack (which was subpackage of cfitsio.src) was renamed to
cfitsio-utils per:
712e385e26

Change fpack deps accordingly.
2024-08-29 23:42:28 +09:00
Neal Gompa
5ee5afac70 Workstation: Drop botocore to shrink the image 2024-08-28 14:17:39 -04:00
Neal Gompa
4cfcb783a1 Add initial configuration for MiracleWM spin
Reference: https://fedoraproject.org/wiki/Changes/FedoraMiracle
2024-08-22 12:00:56 -04:00
Tomáš Hrčka
a085b22db0 Update fedora-server-vm-full.ks
Original author: https://bugzilla.redhat.com/show_bug.cgi?id=2247872#c39
2024-08-14 17:15:42 +00:00
20 changed files with 57 additions and 253 deletions

View File

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

View File

@@ -1,29 +0,0 @@
# 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,6 +0,0 @@
%include fedora-disk-base.ks
%include fedora-minimal-common.ks
services --enabled=sshd,NetworkManager,chronyd,initial-setup
autopart --type=plain --noswap

View File

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

View File

@@ -1,88 +0,0 @@
# 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/41/${basearch}/iot
reboot
%post --erroronfail
# Find the architecture we are on
arch=$(uname -m)
# Setup Raspberry Pi firmware
if [[ $arch == "aarch64" ]]; then
cp -P /usr/share/uboot/rpi_arm64/u-boot.bin /boot/efi/rpi-u-boot.bin
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/41/${arch}/iot"
# Make sure the ref we're supposedly sitting on (according
# to the updated origin) exists.
ostree refs "fedora-iot:fedora/41/${arch}/iot" --create "fedora-iot:fedora/41/${arch}/iot"
# Remove the old ref so that the commit eventually gets cleaned up.
ostree refs "fedora-iot:fedora/41/${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

@@ -13,6 +13,8 @@
# 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
@@ -81,7 +83,6 @@ python3-astroML
python3-astroquery
python3-astroscrappy
python3-APLpy
python3-ATpy
python3-ccdproc
python3-fitsio
python3-gatspy

View File

@@ -31,7 +31,6 @@ kernel-modules
kernel-modules-extra
# The point of a live image is to install
anaconda
anaconda-install-env-deps
anaconda-live
@anaconda-tools

View File

@@ -9,7 +9,7 @@
%include fedora-live-base.ks
%include fedora-cinnamon-common.ks
part / --size=8192
part / --size=9216
%post
# 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://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

@@ -17,8 +17,7 @@
%include fedora-live-xfce.ks
# The recommended part size for DVDs is too close to use for the games spin
part / --size 14336
part / --size 15360
%packages
@@ -27,8 +26,7 @@ part / --size 14336
-wine
# Remove libreoffice since it just got added to livecd-desktop and
# will likely put the games spin over size and it is freeze time.
# Remove libreoffice, we're here to have fun!
-libreoffice*
# Extra screensavers isn't much help for the games spin
@@ -46,12 +44,10 @@ 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
@@ -59,9 +55,6 @@ freedroidrpg
frozen-bubble
# glob2 - currently broken
lincity-ng
#tmw - currently broken
#maniadrive - currently broken
#maniadrive-music - has been retired
megaglest
nethack-vultures
netpanzer
@@ -99,7 +92,6 @@ 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
@@ -107,7 +99,7 @@ pachi
pioneers
quarry
# Ri-li cut for size
# rogue # recently abandoned. Someone picked it up. Waiting for approval.
rogue
# scorchwentbonkers # Would pull in fluid-soundfont-lite-patches
solarwolf
sopwith

View File

@@ -7,7 +7,7 @@
%include fedora-mate-common.ks
%include fedora-live-minimization.ks
part / --size 8192
part / --size 9216
%post
# set livesys session type

View File

@@ -12,7 +12,7 @@
%include fedora-live-minimization.ks
%include fedora-scientific-common.ks
part / --size 17000
part / --size 18000
%post

View File

@@ -61,7 +61,6 @@ gnome-keyring-pam
-binwalk
-bkhive
-bonesi
-bro
-cmospwd
-dnstop
-etherape
@@ -79,7 +78,6 @@ gnome-keyring-pam
-pdfcrack
-proxychains
-pyrit
-raddump
-rkhunter
-safecopy
-samdump2

View File

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

View File

@@ -12,6 +12,11 @@
part / --size 8576
%packages
gnome-initial-setup
anaconda-webui
%end
%post
# set livesys session type

View File

@@ -1,23 +0,0 @@
%packages
dnf5
-@standard
-initial-setup-gui
-generic-release*
-glibc-all-langpacks
# 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"
systemctl set-default multi-user.target
echo .
%end

View File

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

@@ -162,6 +162,10 @@ if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
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

View File

@@ -20,6 +20,10 @@ maintainers = [ "Rex Dieter", "Marc Deop", "Neal Gompa" ]
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" ]
@@ -35,24 +39,20 @@ fas = [ "chimosky", "aperezbios", ]
maintainers = [ "Chihurumnaya Ibiam", "Alex Perez" ]
[labs.astronomy_kde.x86_64]
fas = [ "lupinix" ]
maintainers = [ "Christian Dersch" ]
fas = [ "lupinix", "q5sys" ]
maintainers = [ "Christian Dersch", "JT Pennington" ]
[labs.security.x86_64]
fas = [ "fab", "jsimon", "q5sys"]
maintainers = [ "Fabian Affolter", "Joerg Simon", "JT Pennington" ]
[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 = [ "dagostinelli", "richardanaya" ]
maintainers = [ "Darryl T. Agostinelli", "Richard Anaya" ]
fas = [ "ngompa", "q5sys" ]
maintainers = [ "Neal Gompa", "JT Pennington" ]
[labs.jam_kde.x86_64]
fas = [ "q5sys" ]
@@ -100,9 +100,6 @@ maintainers = [ "Timothée Ravier", "Tomáš Popela" ]
[silverblue.aarch64]
fas = [ "siosm", "tpopela" ]
maintainers = [ "Timothée Ravier", "Tomáš Popela" ]
[silverblue.ppc64le]
fas = [ "siosm", "tpopela" ]
maintainers = [ "Timothée Ravier", "Tomáš Popela" ]
[kinoite.x86_64]
fas = [ "siosm" ]
@@ -110,9 +107,6 @@ maintainers = [ "Timothée Ravier" ]
[kinoite.aarch64]
fas = [ "siosm" ]
maintainers = [ "Timothée Ravier" ]
[kinoite.ppc64le]
fas = [ "siosm" ]
maintainers = [ "Timothée Ravier" ]
[sericea.x86_64]
fas = [ "alebastr", "jkonecny", "anthr76", "fale" ]
@@ -120,9 +114,6 @@ maintainers = [ "Aleksei Bavshin", "Jiří Konečný", "Anthony Rabbito", "Fabio
[sericea.aarch64]
fas = [ "alebastr", "jkonecny", "anthr76", "fale" ]
maintainers = [ "Aleksei Bavshin", "Jiří Konečný", "Anthony Rabbito", "Fabio Alessandro Locati" ]
[sericea.ppc64le]
fas = [ "alebastr", "jkonecny", "anthr76", "fale" ]
maintainers = [ "Aleksei Bavshin", "Jiří Konečný", "Anthony Rabbito", "Fabio Alessandro Locati" ]
[onyx.x86_64]
fas = [ "joshstrobl" ]
@@ -130,6 +121,3 @@ maintainers = [ "Joshua Strobl" ]
[onyx.aarch64]
fas = [ "joshstrobl" ]
maintainers = [ "Joshua Strobl" ]
[onyx.ppc64le]
fas = [ "joshstrobl" ]
maintainers = [ "Joshua Strobl" ]

View File

@@ -1,4 +1,4 @@
#!/usr/bin/python
#!/usr/bin/python3
# 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,38 +11,40 @@
import os
import sys
import getopt
import xml.etree.cElementTree as ElementTree
import xml.etree.ElementTree as ElementTree
import pykickstart
import pykickstart.parser
import pykickstart.version
def usage(ecode):
print "Usage: %s [--version=VERSION] COMPS.xml KICKSTART.ks" % (sys.argv[0], )
print "List packages installed by KICKSTART."
print("Usage: {} [--version=VERSION] COMPS.xml KICKSTART.ks".format(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, e:
opts, args = getopt.getopt(sys.argv[1:], 'h', ['help', 'version=', 'debug'])
except getopt.GetoptError as 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:
@@ -55,10 +57,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:
@@ -74,27 +76,29 @@ def main():
packages_for_group[group_id.text] = pkglist
pkg_list = set()
for group in parser.handler.packages.groupList:
if debug:
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]:
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, []):
pkg_list.add(pkg)
if debug:
print >>sys.stderr, "# Adding %d explicitly specified packages" % (len(parser.handler.packages.packageList), )
print("# Adding {} explicitly specified packages".format(len(parser.handler.packages.packageList)),
file=sys.stderr)
for pkg in parser.handler.packages.packageList:
pkg_list.add(pkg)
if debug:
print >>sys.stderr, "# Processing %d explicitly excluded packages" % (len(parser.handler.packages.excludedList), )
print("# Processing {} explicitly excluded packages".format(len(parser.handler.packages.excludedList)),
file=sys.stderr)
for pkg in parser.handler.packages.excludedList:
if pkg in pkg_list:
pkg_list.remove(pkg)
pkg_list.discard(pkg)
for pkg in sorted(pkg_list):
print "%s" % (pkg, )
print(pkg)
sys.exit(0)
if __name__ == '__main__':
main()