-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfedora-custom.yaml
184 lines (165 loc) · 5.02 KB
/
fedora-custom.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
---
releasever: 40
basearch: x86_64
repos:
- fedora
- fedora-updates
# - fedora-updates-testing # remove after stable launch
- fedora-cisco-openh264
- rpmfusion-free
- rpmfusion-free-updates
# - rpmfusion-free-updates-testing # remove after stable launch
- rpmfusion-nonfree
- rpmfusion-nonfree-updates
# - rpmfusion-nonfree-updates-testing # remove after stable launch
- tailscale-stable
recommends: true
packages:
# boot
- efibootmgr
- grub2
- grub2-efi-x64
- shim
# dracut
- binutils # used during initramfs build for strip by rpm-ostree
- memstrack
- pigz
# kernel
- kernel
- kernel-modules
- kernel-modules-extra
# workstation-ostree-support
- nss-altfiles
- ostree-grub2
- rpm-ostree
# from silverblue
- distribution-gpg-keys
- fedora-release-silverblue
- fedora-repos-archive
- fedora-repos-ostree
- qgnomeplatform-qt5
- qgnomeplatform-qt6
# hardware codecs
- fwupd
- libva-intel-driver
- intel-media-driver
- mesa-va-drivers-freeworld
- mesa-vdpau-drivers-freeworld
# software codecs
- ffmpeg
- gstreamer1-plugins-bad-freeworld
- gstreamer1-plugins-ugly
- gstreamer1-vaapi
# - pipewire-codec-aptx
# desktop
- gnome-console
- gnome-shell-extension-appindicator
- gnome-shell-extension-caffeine
- gnome-tweaks
- plymouth
# printing
- hplip
# tools
- dnf5
- dnf5-plugins
- git-core
- git-core-doc
- glibc-langpack-en
- nvme-cli
- pciutils
- vim-default-editor
- wl-clipboard # command-line wayland clipboard utilities
- zstd # not sure if anything uses it
# rpmfusion
- rpmfusion-free-release
- rpmfusion-nonfree-release
# tailscale
- tailscale
exclude-packages:
- PackageKit
- PackageKit-glib
- braille-printer-app # removes quite a lot, recommended by cups-filters
- gdouros-symbola-fonts # gets recommended by ibus-typing-booster
- gnome-color-manager # gets recommended by gnome-control-centre
- gnome-tour # gets recommended by gnome-shell
- grubby # gets recommended by crypto-policies-scripts
- initscripts-service # gets recommended by audit
- qemu-user-static # not using other arch containers, recommended by containers-common-extra
- rygel # upnp media server, recommended by gnome-control-center
- sane-backends-drivers-cameras # gets recommended by sane-backends-libs
- systemd-networkd # gets recommended by systemd, we are using networkmanager
add-files:
- ["tailscale.repo", "/etc/yum.repos.d/tailscale.repo"]
- ["vscode.repo", "/etc/yum.repos.d/vscode.repo"]
# workstation-product-environment
include:
# mandatory groups
- comps/base-x.yaml
- comps/container-management.yaml
- comps/core.yaml
# - comps/firefox.yaml
- comps/fonts.yaml
- comps/gnome-desktop.yaml
- comps/guest-desktop-agents.yaml
- comps/hardware-support.yaml
# - comps/libreoffice.yaml
- comps/multimedia.yaml
- comps/networkmanager-submodules.yaml
# - comps/printing.yaml
- comps/workstation-product.yaml
check-groups:
filename: group
type: file
check-passwd:
filename: passwd
type: file
etc-group-members:
- wheel
ignore-removed-groups:
- root
ignore-removed-users:
- root
container-cmd:
- /usr/bin/bash
boot-location: modules
default-target: graphical.target
documentation: true
machineid-compat: false
# rpmdb: host
selinux: true
tmp-is-dir: true
postprocess:
# Taken from https://github.com/coreos/fedora-coreos-config/blob/aa4373201f415baff85701f7f96ab0583931af6c/overlay.d/05core/usr/lib/systemd/journald.conf.d/10-coreos-persistent.conf#L5
# Hardcode persistent journal by default. journald has this "auto" behaviour
# that only makes logs persistent if `/var/log/journal` exists, which it won't
# on first boot because `/var` isn't fully populated. We should be able to get
# rid of this once we move to sysusers and create the dir in the initrd.
- | #!/usr/bin/env bash
mkdir -p /usr/lib/systemd/journald.conf.d/
cat >/usr/lib/systemd/journald.conf.d/10-persistent.conf << EOF
[Journal]
Storage=persistent
EOF
- | #!/usr/bin/env bash
set -xeuo pipefail
# See: https://src.fedoraproject.org/rpms/glibc/pull-request/4
# Basically that program handles deleting old shared library directories
# mid-transaction, which never applies to rpm-ostree. This is structured as a
# loop/glob to avoid hardcoding (or trying to match) the architecture.
for x in /usr/sbin/glibc_post_upgrade.*; do
if test -f ${x}; then
ln -srf /usr/bin/true ${x}
fi
done
# Remove loader directory causing issues in Anaconda in unified core mode
# Will be obsolete once we start using bootupd
rm -rf /usr/lib/ostree-boot/loader
# Undo RPM scripts enabling units; we want the presets to be canonical
# https://github.com/projectatomic/rpm-ostree/issues/1803
rm -rf /etc/systemd/system/*
systemctl preset-all
rm -rf /etc/systemd/user/*
systemctl --user --global preset-all
# Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2218006
# systemctl enable nfs-client.target
postprocess-script: postprocess.sh