Write down what installing on Fedora takes

The README has Arch and Ubuntu on it, and the two things that differ on Fedora
are the two that decide whether anything works at all. The package names are
its own, and `systemctl --user enable --now ydotool` has nothing to enable
there: Fedora ships ydotool as a system service only, and its ydotoold holds a
root-owned socket at mode 600. The unit is green, the daemon is up, and every
paste is refused. The drop-in the README now spells out points ydotoold at
$XDG_RUNTIME_DIR/.ydotool_socket and hands it over by uid, which is the path
the client already looks at, so nothing has to carry YDOTOOL_SOCKET. Red Hat
closed the same report as NOTABUG in 2023, so this stays a step the user takes
rather than one a later package will take for them.

install.sh was asking whether the unit was up, which is the question that
answers wrongly here. It now asks whether the socket is one this user may write
to, which is what auto-paste actually needs, and it names which of the three
ways it failed: a socket handed to nobody, a daemon that put its socket
somewhere else, or no daemon at all. On Arch and everywhere else the answer is
the same one as before.

ffmpeg-free out of Fedora's own repositories is enough, against the usual
advice to reach for RPM Fusion. That build disables four video decoders, h264,
hevc, vc1 and vvc, and keeps every audio decoder it has, AAC among them, while
Dikte only ever asks a video file for its audio track.

The models that run on this machine ask for nothing either, which is worth
saying because it is now the way Dikte starts. The Ubuntu builds run on Fedora
unchanged; whisper.cpp transcribed a clip here without a package being added,
and llama.cpp came down in its Vulkan build and found the card. That last part
is not luck: kwin-libs requires libvulkan.so.1, so the loader is on every
Plasma desktop by way of the compositor, and it recommends the Mesa drivers
alongside itself.
This commit is contained in:
Icarus Murqin
2026-08-01 23:06:11 +03:00
parent fc333fcb8c
commit b5ef0040b4
3 changed files with 90 additions and 5 deletions
+35
View File
@@ -30,6 +30,41 @@ systemctl --user enable --now ydotool # needed for auto-paste
dikte # the settings window opens on first run
```
On Fedora KDE the packages are named differently, and `ydotool` takes one step
more:
```sh
sudo dnf install pipewire-utils wl-clipboard ydotool ffmpeg-free python3-pyqt6
```
Fedora ships `ydotool` as a system service rather than a user one, and
`ydotoold` then listens on a root-owned socket your session cannot write to, so
auto-paste fails with the daemon running. Point it instead at the path the
`ydotool` client already looks at, and hand the socket over:
```sh
sudo mkdir -p /etc/systemd/system/ydotool.service.d
printf '[Service]\nExecStart=\nExecStart=/usr/bin/ydotoold --socket-path=%s/.ydotool_socket --socket-own=%s:%s\n' \
"$XDG_RUNTIME_DIR" "$(id -u)" "$(id -g)" \
| sudo tee /etc/systemd/system/ydotool.service.d/override.conf >/dev/null
sudo systemctl daemon-reload
sudo systemctl enable --now ydotool
```
That runtime directory belongs to your login session, so after a reboot the
service restarts until you are logged in and only then settles. `ffmpeg-free`
out of Fedora's own repositories is enough, RPM Fusion not needed: what the
free build leaves out is H.264 and HEVC video decoding, and Dikte only ever
takes the audio track of a video file, whose AAC, MP3 and Opus decoders are all
there.
The models that run on this machine need nothing added either. Those releases
are built on Ubuntu and run here as they are, and KWin links `libvulkan.so.1`
itself, so a Plasma desktop already has the loader that decides whether
llama.cpp arrives in its Vulkan build, with the Mesa drivers alongside it.
whisper.cpp publishes no GPU build for Linux at all and transcribes on the
processor wherever it runs.
On Ubuntu/GNOME X11, recording uses PulseAudio and clipboard/paste use the X11
tools instead: