| 152 |
152 |
|
# =====================================================================
|
| 153 |
153 |
|
# Package additions — full Alloy stack per docs/STACK.md
|
| 154 |
154 |
|
#
|
|
155 |
+ |
# Two kinds of line live here and they are not the same kind of
|
|
156 |
+ |
# decision. The curated picks are STACK.md's, each one a position the
|
|
157 |
+ |
# docs defend. The "session prerequisites" group below is not curated
|
|
158 |
+ |
# at all: fedora-bootc is a *server* base, so pieces a graphical
|
|
159 |
+ |
# session simply cannot work without are absent and have to be named
|
|
160 |
+ |
# explicitly. Treating that group as if it were a matter of taste is
|
|
161 |
+ |
# how the image shipped with no audio stack at all — see the group's
|
|
162 |
+ |
# own comment. Add to it when something is required; add to the
|
|
163 |
+ |
# curated groups only with a STACK.md entry behind it.
|
|
164 |
+ |
#
|
| 155 |
165 |
|
# Sources noted per group. Anything absent from both Fedora main and
|
| 156 |
166 |
|
# Terra is downloaded directly (Nerd Fonts, in the layer above). The
|
| 157 |
167 |
|
# `flatpak` client is installed as the `sandboxed` level of the isolation
|
| 228 |
238 |
|
# and is also the install path for ungoogled-chromium.
|
| 229 |
239 |
|
podman \
|
| 230 |
240 |
|
flatpak \
|
|
241 |
+ |
# -----------------------------------------------------------------
|
|
242 |
+ |
# Session prerequisites — not curated picks. See the header above.
|
|
243 |
+ |
# fedora-bootc is a server base; everything in this group is
|
|
244 |
+ |
# something the shipped configuration already assumes exists.
|
|
245 |
+ |
# -----------------------------------------------------------------
|
|
246 |
+ |
# Audio. The base has no sound stack whatsoever: no pipewire, no
|
|
247 |
+ |
# wireplumber, and so no `pactl`, which crates/alloy/src/audio.rs
|
|
248 |
+ |
# shells out to for every reading and every write. `alloy audio`
|
|
249 |
+ |
# is documented as shipped (docs/CONSOLE.md) but had nothing to
|
|
250 |
+ |
# front. Established by probing quay.io/fedora/fedora-bootc:43
|
|
251 |
+ |
# directly (rpm -q, and `pactl` absent from PATH), not observed on
|
|
252 |
+ |
# hardware — the QEMU punch list is where that gets confirmed. The
|
|
253 |
+ |
# Fn-key volume binds, mpv, and anything playerctl controls have
|
|
254 |
+ |
# the same hole under them.
|
|
255 |
+ |
#
|
|
256 |
+ |
# pulseaudio-utils is what actually carries /usr/bin/pactl (the
|
|
257 |
+ |
# pipewire-pulseaudio package is the daemon-side compat shim, not
|
|
258 |
+ |
# the CLI). Both are needed. No preset lines accompany these:
|
|
259 |
+ |
# Fedora's own 90-default-user.preset already socket-activates
|
|
260 |
+ |
# pipewire and pipewire-pulse, and `systemctl preset-all` below
|
|
261 |
+ |
# picks that up.
|
|
262 |
+ |
pipewire \
|
|
263 |
+ |
wireplumber \
|
|
264 |
+ |
pipewire-pulseaudio \
|
|
265 |
+ |
pulseaudio-utils \
|
|
266 |
+ |
# wl-clipboard. The sway config exec's `wl-paste --watch cliphist
|
|
267 |
+ |
# store` twice at session start (docs/STACK.md#clipboard-history),
|
|
268 |
+ |
# and wl-copy is how anything gets back out of the history. cliphist
|
|
269 |
+ |
# was installed without it, so both watchers failed at every login
|
|
270 |
+ |
# and the clipboard history could never be populated or pasted from.
|
|
271 |
+ |
wl-clipboard \
|
|
272 |
+ |
# git. Not in the base. aliases.nu ships six git aliases, helix's
|
|
273 |
+ |
# diff gutters need it, docs/STACK.md sells EDITOR=hx on git commit
|
|
274 |
+ |
# messages, and the stated audience is developers. The full package
|
|
275 |
+ |
# rather than git-core: the extra weight is documentation and the
|
|
276 |
+ |
# perl helpers, which is the difference between a git that works
|
|
277 |
+ |
# and a git that works when you ask it a question.
|
|
278 |
+ |
git \
|
|
279 |
+ |
# xdg-user-dirs. Without it a new account gets a bare home and no
|
|
280 |
+ |
# ~/Documents, ~/Downloads or ~/Pictures, which is what the GTK
|
|
281 |
+ |
# file-chooser portal and yazi both open into.
|
|
282 |
+ |
xdg-user-dirs \
|
| 231 |
283 |
|
&& dnf clean all
|
| 232 |
284 |
|
|
| 233 |
285 |
|
# distrobox is pinned. v2 is a Go rewrite, at rc.3 as of 2026-06-29, and
|