Skip to content

Commit 07c9f40

Browse files
committed
feat: add codecs from negativo
also removes additions from here that are already in the base image like bootc, wl-clipboard
1 parent 7c4bc2e commit 07c9f40

2 files changed

Lines changed: 69 additions & 57 deletions

File tree

build_files/base/04-packages.sh

Lines changed: 67 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,35 @@ echo "::group:: ===$(basename "$0")==="
55
set -ouex pipefail
66

77
# All DNF-related operations should be done here whenever possible
8+
#
9+
# use negativo17 for 3rd party packages with higher priority than default
10+
if ! grep -q fedora-multimedia <(dnf5 repolist); then
11+
# Enable or Install Repofile
12+
dnf5 config-manager setopt fedora-multimedia.enabled=1 ||
13+
dnf5 config-manager addrepo --from-repofile="https://negativo17.org/repos/fedora-multimedia.repo"
14+
fi
15+
# Set higher priority
16+
dnf5 config-manager setopt fedora-multimedia.priority=90
17+
18+
# use override to replace mesa and others with less crippled versions
19+
OVERRIDES=(
20+
"intel-gmmlib"
21+
"intel-mediasdk"
22+
"intel-vpl-gpu-rt"
23+
"libheif"
24+
"libva"
25+
"libva-intel-media-driver"
26+
"mesa-dri-drivers"
27+
"mesa-filesystem"
28+
"mesa-libEGL"
29+
"mesa-libGL"
30+
"mesa-libgbm"
31+
"mesa-va-drivers"
32+
"mesa-vulkan-drivers"
33+
)
34+
35+
dnf5 distro-sync --skip-unavailable -y --repo='fedora-multimedia' "${OVERRIDES[@]}"
36+
dnf5 versionlock add "${OVERRIDES[@]}"
837

938
# shellcheck source=build_files/shared/copr-helpers.sh
1039
source /ctx/build_files/shared/copr-helpers.sh
@@ -14,15 +43,14 @@ source /ctx/build_files/shared/copr-helpers.sh
1443
# malicious COPRs from injecting fake versions of Fedora packages.
1544
# Fedora packages are installed first in bulk (safe).
1645
# COPR packages are installed individually with isolated enablement.
17-
1846
# Base packages from Fedora repos - common to all versions
1947
FEDORA_PACKAGES=(
2048
adcli
2149
adw-gtk3-theme
2250
adwaita-fonts-all
23-
bash-color-prompt
51+
alsa-firmware
52+
alsa-tools-firmware
2453
bcache-tools
25-
bootc
2654
borgbackup
2755
containerd
2856
cryfs
@@ -32,40 +60,55 @@ FEDORA_PACKAGES=(
3260
fastfetch
3361
firewall-config
3462
fish
63+
flatpak-spawn
3564
foo2zjs
3665
fuse-encfs
3766
gcc
3867
git-credential-libsecret
3968
glow
4069
gnome-tweaks
70+
google-noto-sans-cjk-fonts
71+
grub2-tools-extra
4172
gum
42-
hplip
73+
gvfs-nfs
74+
htop
4375
ibus-mozc
76+
ibus-unikey
4477
ifuse
4578
igt-gpu-tools
4679
input-remapper
80+
intel-vaapi-driver
4781
iwd
4882
jetbrains-mono-fonts-all
4983
just
5084
krb5-workstation
85+
libcamera-gstreamer
86+
libcamera-tools
5187
libgda
5288
libgda-sqlite
53-
libimobiledevice
89+
libimobiledevice-utils
5490
libratbag-ratbagd
5591
libsss_autofs
92+
libva-utils
5693
libxcrypt-compat
5794
lm_sensors
95+
lshw
5896
make
59-
mesa-libGLU
6097
mozc
98+
mtools
6199
nautilus-gsconnect
100+
net-tools
101+
ocl-icd
62102
oddjob-mkhomedir
63103
opendyslexic-fonts
104+
openrgb-udev-rules
64105
openssh-askpass
106+
pam-u2f
107+
pam_yubico
108+
pamu2fcfg
109+
pipewire-libs-extra
65110
powerstat
66111
powertop
67-
printer-driver-brlaser
68-
pulseaudio-utils
69112
python3-pip
70113
python3-pygit2
71114
rclone
@@ -76,56 +119,22 @@ FEDORA_PACKAGES=(
76119
samba-winbind-clients
77120
samba-winbind-modules
78121
setools-console
79-
sssd-ad
80-
sssd-krb5
81-
sssd-nfs-idmap
82-
switcheroo-control
83-
tmux
84-
usbip
85-
usbmuxd
86-
waypipe
87-
wireguard-tools
88-
wl-clipboard
89-
xdg-terminal-exec
90-
xprop
91-
zenity
92-
zsh
93-
adw-gtk3-theme
94-
gvfs-nfs
95-
ibus-unikey
96-
ibus-mozc
97-
98-
alsa-firmware
99-
alsa-tools-firmware
100-
flatpak-spawn
101-
pipewire-libs-extra
102-
oversteer-udev
103-
google-noto-sans-cjk-fonts
104-
grub2-tools-extra
105-
htop
106-
intel-vaapi-driver
107-
libcamera-gstreamer
108-
libcamera-tools
109-
libimobiledevice-utils
110-
libva-utils
111-
lshw
112-
mtools
113-
net-tools
114-
ocl-icd
115-
openrgb-udev-rules
116-
oversteer-udev
117-
pam-u2f
118-
pam_yubico
119-
pamu2fcfg
120-
pipewire-libs-extra
121122
smartmontools
122123
solaar-udev
123124
squashfs-tools
125+
sssd-ad
126+
sssd-krb5
124127
symlinks
125128
tcpdump
129+
tmux
126130
traceroute
131+
usbip
127132
vim
133+
waypipe
134+
xdg-terminal-exec
128135
yubikey-manager
136+
zenity
137+
zsh
129138
)
130139

131140
if [[ "${IMAGE_NAME}" =~ nvidia ]]; then
@@ -156,8 +165,6 @@ dnf config-manager addrepo --from-repofile=https://pkgs.tailscale.com/stable/fed
156165
dnf config-manager setopt tailscale-stable.enabled=0
157166
dnf -y install --enablerepo='tailscale-stable' tailscale
158167

159-
dnf config-manager addrepo --from-repofile=https://negativo17.org/repos/fedora-multimedia.repo
160-
dnf config-manager setopt fedora-multimedia.enabled=0
161168
dnf -y install --enablerepo=fedora-multimedia \
162169
-x PackageKit* \
163170
ffmpeg libavcodec @multimedia gstreamer1-plugins-{bad-free,bad-free-libs,good,base} lame{,-libs} libjxl ffmpegthumbnailer
@@ -166,7 +173,9 @@ dnf -y install --enablerepo=fedora-multimedia \
166173
copr_install_isolated "che/nerd-fonts" "nerd-fonts"
167174

168175
# From ublue-os/packages
169-
copr_install_isolated "ublue-os/packages" "uupd"
176+
copr_install_isolated "ublue-os/packages" \
177+
"uupd" \
178+
"oversteer-udev"
170179

171180
# Version-specific COPR packages
172181
# case "$FEDORA_MAJOR_VERSION" in
@@ -182,21 +191,22 @@ copr_install_isolated "ublue-os/packages" "uupd"
182191

183192
# Packages to exclude - common to all versions
184193
EXCLUDED_PACKAGES=(
194+
default-fonts-cjk-sans
185195
fedora-bookmarks
186196
fedora-chromium-config
187197
fedora-chromium-config-gnome
198+
fedora-third-party
188199
firefox
189200
firefox-langpacks
190201
gnome-extensions-app
191202
gnome-shell-extension-background-logo
203+
gnome-software
192204
gnome-software-rpm-ostree
193205
gnome-terminal-nautilus
206+
google-noto-sans-cjk-vf-fonts
194207
podman-docker
195-
yelp
196208
totem-video-thumbnailer
197-
gnome-software
198-
google-noto-sans-cjk-vf-fonts
199-
default-fonts-cjk-sans
209+
yelp
200210
)
201211

202212
# Version-specific package exclusions

build_files/base/20-tests.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ done
5757
# these packages are supposed to be removed
5858
# and are considered footguns
5959
UNWANTED_PACKAGES=(
60+
fedora-flathub-remote
6061
fedora-logos
62+
fedora-third-party
6163
firefox
6264
gnome-software
6365
gnome-software-rpm-ostree

0 commit comments

Comments
 (0)