Commit graph

36 commits

Author SHA1 Message Date
Timothée Ravier
62b98b6903 comps-sync.py: Factor load_packages_from_comps_group 2023-09-27 10:53:32 +02:00
Timothée Ravier
dd8dd4c804 comps-sync.py: Pass regexp exclude list to is_exclude_listed 2023-09-27 10:41:44 +02:00
Timothée Ravier
e00b1c88fe comps-sync.py: Factor package manifest loading code 2023-09-27 10:41:44 +02:00
Timothée Ravier
4522a99c07 comps-sync.py: Fix a few Python lints 2023-08-14 16:19:10 +02:00
Aleksei Bavshin
d18f34f255
Move @base-x group to the variants that use X11 2023-07-17 22:33:02 -07:00
Joshua Strobl
d2e6b0afc1
Add ostree files for Fedora Onyx
See https://fedoraproject.org/wiki/Changes/Fedora_Onyx

Signed-off-by: Joshua Strobl <me@joshuastrobl.com>
2023-04-30 19:12:14 +03:00
BeatLink
789b0aec9e Add cinnamon variant
Updated from: https://pagure.io/workstation-ostree-config/pull-request/239
2023-03-13 15:28:02 +01:00
Timothée Ravier
636bb97493 Rawhide is now Fedora 39 2023-02-10 15:21:30 +01:00
Anthony Rabbito
44d4d094ae
Sericea: initial implementation for Sway desktop variant
Signed-off-by: Anthony Rabbito <hello@anthonyrabbito.com>
Co-authored-by: Aleksei Bavshin <alebastr@fedoraproject.org>
2023-01-14 21:37:20 -08:00
Timothée Ravier
c80c85ea3d
comps-sync.py: Support multiple comps groups for a desktop
Enable fetching packages from multiple comps groups for each desktop.
This is currently unused but this removes the constraints around having
all base packages for a given desktop in a single comps group.

This could also be used to get packages from other groups such as the
input-methods group for example.
2023-01-14 21:37:19 -08:00
Adam Williamson
fa798595cf comps-sync.py: handle arch-dependent package specs (#311)
comps allows for a package to be included in a group only on
specified arches, with a line like this:

      <packagereq arch="aarch64,x86_64" type="default">kio-gdrive</packagereq>

up till now, `comps-sync.py` effectively ignored this, treating
such a line exactly the same as this:

      <packagereq type="default">kio-gdrive</packagereq>

and attempting to include the package even when building on e.g.
ppc64le.

Solving this is unfortunately tricky due to exactly how libcomps
handles these arch restrictions. It does not expose the list of
arches as a property of each returned 'package' object when you
do a group search. Instead you're supposed to filter the group
search down to the arch(es) you are interested in, and it only
includes the appropriate packages for that arch. So all we can
do is run our queries multiple times, once for each arch we may
wish to build on, keep track of the results per arch as we go,
and do some fancy footwork to keep track of the mapping between
"archful" comps entries and the lists in the YAML files.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2022-10-31 16:35:40 -07:00
Timothée Ravier
6901df2808 Remove Pantheon (removed from Fedora) 2022-09-15 18:09:51 +02:00
b1d4141d14 Rawhide is now f38
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2022-08-09 14:16:14 +02:00
ecbfb4339c Rawhide is now f37
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2022-02-08 14:02:58 +01:00
2852268aab Rawhide is now f36
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2021-08-10 14:23:18 +02:00
29db52d114 Setup for rawhide being F35
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2021-02-09 14:48:30 +01:00
Tomas Popela
7e7cef09ac Replace black/white list with exclude/include list 2021-01-04 11:20:45 +01:00
Timothée Ravier
7eb5b51765 Add Mate desktop variant 2020-11-25 11:21:51 +00:00
f6f2ce56ba Setup for rawhide being F34
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2020-08-10 16:32:33 +02:00
Mohan Boddu
5d8df8b4b5 Setup for rawhide being F33
Signed-off-by: Mohan Boddu <mboddu@bhujji.com>
2020-02-11 09:42:21 -05:00
e7f257df8c Changes for Rawhide being F32
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2019-08-12 17:05:55 +02:00
Colin Walters
87b6aac201 comps-sync: Blacklist PackageKit globally
We were trying to be accurate by filtering by group but
PackageKit is spread across all of them and has various subpackages,
so just add a global regexp-based blacklist.

This doesn't actually drop PK yet because `gnome-software` hard
requires it, but is prep for fixing that.
2019-04-13 12:26:22 +00:00
Timothée Ravier
d2b8aa6080 Add Pantheon & DeepinDE variants 2019-04-07 14:22:26 +02:00
Timothée Ravier
49f86462ec comps-sync.py: remove unused varaibles and minor renaming 2019-04-07 12:41:05 +02:00
Timothée Ravier
af221374f2 comps-sync.py: cosmetic changes for clearer result output 2019-04-07 12:41:05 +02:00
Timothée Ravier
09669b418d comps-sync.py: use yaml format only
Do not use yaml.dump() as it does not use the same indentation logic as
the one we currently have in comps-sync-blacklist.yml.
2019-04-07 12:41:05 +02:00
Timothée Ravier
55ae6ad005 Add LXQt variant 2019-03-21 09:14:57 +01:00
9e1d930e99 Rawhide is f31
Signed-off-by: Tomas Hrcka <thrcka@redhat.com>
2019-02-19 09:06:02 +01:00
Dusty Mabe
4ec8cfa1b7
Rawhide being F30
Signed-off-by: Dusty Mabe <dusty@dustymabe.com>
2018-08-18 20:54:10 -04:00
Timothée Ravier
78432354e3 comps-sync.py: remove deplicate func def & fixup comment 2018-08-07 20:56:47 +02:00
Timothée Ravier
4f1ecaa978 Add XFCE variant 2018-08-04 15:37:50 -04:00
Timothée Ravier
5d89f49877 Add KDE variant (Kinoite) 2018-08-04 15:37:50 -04:00
Timothée Ravier
04c703cede Rework Silverblue to split packages common to all variants 2018-08-04 15:37:50 -04:00
Colin Walters
369c6d4e81 comps-sync pass 3: Subset of workstation
The mental model here is simpler if our base package set is truly a subset of
Workstation.

Extend `comps-sync` to also support deleting packages not in the Workstation
set.  The only exception here is that we still want `kernel-modules-extra`
which for some reason is only in `livecd-tools`...I don't understand that.
For now I added a `whitelist`.

The set of resulting changes here generally makes sense.  We lose some
random unnecessary stuff like `teamd` and `dracut-network`, and `mactel-boot`.
We gain things like the desktop background packages, `sshpass`, and some `qt`
bits.

```
+  NetworkManager-openconnect-gnome-1.2.4-9.fc28.x86_64 (fedora-rawhide)
-  NetworkManager-team-1:1.10.2-1.fc28.x86_64 (fedora-rawhide)
+  NetworkManager-ssh-1.2.7-1.fc28.x86_64 (fedora-rawhide)
+  NetworkManager-ssh-gnome-1.2.7-1.fc28.x86_64 (fedora-rawhide)
-  adobe-source-han-sans-cn-fonts-1.004-6.fc28.noarch (fedora-rawhide)
-  adobe-source-han-sans-tw-fonts-1.004-7.fc28.noarch (fedora-rawhide)
+  alsa-ucm-1.1.5-2.fc28.x86_64 (fedora-rawhide)
-  autogen-libopts-5.18.12-6.fc28.x86_64 (fedora-rawhide)
+  cyrus-sasl-plain-2.1.26-37.fc28.x86_64 (fedora-rawhide)
+  desktop-backgrounds-gnome-27.0.0-2.fc28.noarch (fedora-rawhide)
-  dmraid-1.0.0.rc16-37.fc28.x86_64 (fedora-rawhide)
-  dmraid-events-1.0.0.rc16-37.fc28.x86_64 (fedora-rawhide)
-  dracut-config-generic-046-92.git20180118.fc28.1.x86_64 (fedora-rawhide)
-  dracut-network-046-92.git20180118.fc28.1.x86_64 (fedora-rawhide)
-  fcoe-utils-1.0.32-3.fc27.x86_64 (fedora-rawhide)
+  f27-backgrounds-base-27.0.1-3.fc28.noarch (fedora-rawhide)
+  f27-backgrounds-gnome-27.0.1-3.fc28.noarch (fedora-rawhide)
-  fedora-productimg-workstation-27-2.fc28.x86_64 (fedora-rawhide)
-  gnutls-dane-3.6.2-1.fc28.x86_64 (fedora-rawhide)
-  gnutls-utils-3.6.2-1.fc28.x86_64 (fedora-rawhide)
-  hfsplus-tools-540.1.linux3-15.fc28.x86_64 (fedora-rawhide)
-  highlight-3.39-3.fc27.x86_64 (fedora-rawhide)
-  libconfig-1.5-9.fc28.x86_64 (fedora-rawhide)
+  libdnet-1.12-25.fc28.x86_64 (fedora-rawhide)
+  libmspack-0.6-0.2.alpha.fc28.x86_64 (fedora-rawhide)
-  libnl3-cli-3.4.0-3.fc28.x86_64 (fedora-rawhide)
+  libsane-hpaio-3.17.11-8.fc28.x86_64 (fedora-rawhide)
-  libteam-1.27-6.fc28.x86_64 (fedora-rawhide)
-  libvirt-client-4.0.0-1.fc28.x86_64 (fedora-rawhide)
-  lldpad-1.0.1-9.git036e314.fc28.x86_64 (fedora-rawhide)
-  mactel-boot-0.9-16.fc27.x86_64 (fedora-rawhide)
-  naver-nanum-fonts-common-3.020-20.20140930.fc28.noarch (fedora-rawhide)
-  naver-nanum-gothic-fonts-3.020-20.20140930.fc28.noarch (fedora-rawhide)
+  open-vm-tools-10.2.0-3.fc28.x86_64 (fedora-rawhide)
+  open-vm-tools-desktop-10.2.0-3.fc28.x86_64 (fedora-rawhide)
+  pinentry-gnome3-1.1.0-2.fc28.x86_64 (fedora-rawhide)
+  pulseaudio-module-x11-11.1-11.fc28.x86_64 (fedora-rawhide)
+  pulseaudio-utils-11.1-11.fc28.x86_64 (fedora-rawhide)
+  qt5-qtdeclarative-5.10.1-1.fc28.x86_64 (fedora-rawhide)
+  qt5-qtxmlpatterns-5.10.1-1.fc28.x86_64 (fedora-rawhide)
+  realmd-0.16.3-9.fc28.x86_64 (fedora-rawhide)
-  sgpio-1.2.0.10-20.fc28.x86_64 (fedora-rawhide)
+  sshpass-1.06-5.fc28.x86_64 (fedora-rawhide)
-  teamd-1.27-6.fc28.x86_64 (fedora-rawhide)
-  unbound-libs-1.6.8-3.fc28.x86_64 (fedora-rawhide)
-  vlgothic-fonts-20141206-10.fc28.noarch (fedora-rawhide)
+  virtualbox-guest-additions-5.2.6-4.fc28.x86_64 (fedora-rawhide)
+  xmlsec1-openssl-1.2.25-3.fc28.x86_64 (fedora-rawhide)
```
2018-02-27 11:35:44 -05:00
Colin Walters
d0b52b1f19 Extend comps-sync more, add font packages
`comps-sync.py` now has support for explicitly syncing *from* the
workstation comps.  In order to do this sanely though, we need a
"blacklist" of things we don't want to sync.

There are a few issues here:

 - desktop applications
 - dubious CLI apps
 - dnf
 - dubious misc things: e.g. `tcp_wrappers`, `crontabs`
 - arch-specific bits (not handled right now)
2018-02-24 11:16:00 -05:00
Colin Walters
092c1bdb78 Add comps-sync script, use it to trim package set
This script looks for packages not in comps at all, which
helps us lose things that were there only as dependencies.

Also, it now supports showing packages in the workstation environment
but not in the manifest.  (I'm not yet taking action on those though)

Some leaf packages do drop out. All of these I believe are right to stop
shipping by default with the possible exception of `media-player-info`...I'm not
sure if that was intentional or not. Anyways let's start this sync process.

```
-Installing 1344 packages:
+Installing 1335 packages:
-  bcache-tools-1.0.8-10.fc27.x86_64 (fedora-rawhide)
-  isomd5sum-1:1.2.2-1.fc28.x86_64 (fedora-rawhide)
-  kexec-tools-2.0.16-3.fc28.x86_64 (fedora-rawhide)
-  keybinder3-0.3.2-3.fc27.x86_64 (fedora-rawhide)
-  langtable-0.0.38-2.fc28.noarch (fedora-rawhide)
-  langtable-data-0.0.38-2.fc28.noarch (fedora-rawhide)
-  langtable-python3-0.0.38-2.fc28.noarch (fedora-rawhide)
-  lpsolve-5.5.2.0-16.fc27.x86_64 (fedora-rawhide)
-  media-player-info-23-1.fc28.noarch (fedora-rawhide)
```
2018-02-17 16:05:31 -05:00