aurora/build_scripts/base/16-override-install.sh
renner 1a4be9911d
chore: cleanup systemd services, move to presets (#2892)
* chore: cleanup systemd services, move to presets

Preset files are cooler [1] and we should be able to get rid of a little
bit of complexity on the ISOs as we simply delete the preset file to
undo things we don't want to have on the ISO (uupd, tailscale ...)
instead of playing catch-up with the image [2].

Also we don't need to enable the *service* of rpm-ostree-countme, we
want to have the *timer* enabled, which is already done by default in
Fedora. The rpm-ostreed-automatic.timer is a leftover from ublue-os/main
days as we enable that for those images but disable it here as we use
uupd.

The Bazaar service got deleted and the need for that got completely
eliminated upstream recently.

[1] https://www.freedesktop.org/software/systemd/man/latest/systemd.preset.html
[2] https://github.com/get-aurora-dev/iso/issues/100

* chore: also do DX

* sunshine

we should make this a seperate thing as we want to still have this
disabled on the live iso

* deal with homebrew nonsense

* prefix with 89

so they can be overriden by others via preset files but still have more
priority over Fedora ones

* split fedora flatpak related services

so we can more easily keep this configuration active
2026-09-19 19:44:08 +00:00

64 lines
2.7 KiB
Bash
Executable file

#!/usr/bin/bash
echo "::group:: ===$(basename "$0")==="
set -eoux pipefail
# HACK for https://github.com/ublue-os/aurora/issues/2624 https://bugs.kde.org/show_bug.cgi?id=523540
mv /usr/bin/plasma-welcome /usr/bin/plasma-welcome-original
# Copy Files to Container
rsync -rvKl /ctx/system_files/shared/ /
# this removes the enablement for brew-up{d,gr}ade.timer, we use uupd
rm -f /usr/lib/systemd/system-preset/01-homebrew.preset
# this adds bootc and ostree to the initramfs
cp /usr/share/doc/bootc/baseimage/dracut/usr/lib/dracut.conf.d/10-bootc-base.conf /usr/lib/dracut/dracut.conf.d/
# Footgun, See: https://github.com/ublue-os/main/issues/598
rm -f /usr/bin/chsh /usr/bin/lchsh
# Add linuxbrew to the list of paths usable by `sudo`
# not a sudoers.d override because we want to get updates from upstream and not break everything
sed -Ei "s/secure_path = (.*)/secure_path = \1:\/home\/linuxbrew\/.linuxbrew\/bin/" /etc/sudoers
# https://github.com/ublue-os/main/pull/334
ln -s "/usr/share/fonts/google-noto-sans-cjk-fonts" "/usr/share/fonts/noto-cjk"
# KDE Documentation is available online
rm -rf /usr/share/doc/HTML
rm -f /usr/lib64/qt6/plugins/kf6/krunner/krunner_appstream.so
# xdg-mime doesn't natively support using /usr/share/applications/mimeapps.list and would instead change /root/.config/mimeapps.list, so we do a little
# trickery to change default applications
XDG_CONFIG_HOME=/usr/share/applications xdg-mime default org.mozilla.thunderbird.desktop x-scheme-handler/mailto
XDG_CONFIG_HOME=/usr/share/applications xdg-mime default io.github.kolunmi.Bazaar.desktop application/vnd.flatpak.ref
rm -f /etc/profile.d/gnome-ssh-askpass.{csh,sh} # This shouldn't be pulled in
# Make Samba usershares work OOTB
mkdir -p /var/lib/samba/usershares
chown -R root:usershares /var/lib/samba/usershares
firewall-offline-cmd --service=samba --service=samba-client
setsebool -P samba_enable_home_dirs=1
setsebool -P samba_export_all_ro=1
setsebool -P samba_export_all_rw=1
sed -i '/^\[homes\]/,/^\[/{/^\[homes\]/d;/^\[/!d}' /etc/samba/smb.conf
# So we can bind offline docs to a shortcut
ln -s /usr/share/applications/dev.getaurora.offline-docs.desktop /usr/share/kglobalaccel/
# Meta+Enter rules
desktop-file-edit --set-key=X-KDE-Shortcuts --set-value='Ctrl+Alt+T,Meta+Return' /usr/share/applications/org.kde.konsole.desktop
ln -sf /usr/share/applications/org.kde.konsole.desktop /usr/share/kglobalaccel/org.kde.konsole.desktop
# we don't want them to show up graphically
for file in htop nvtop; do
if [[ -f "/usr/share/applications/${file}.desktop" ]]; then
desktop-file-edit --set-key=Hidden --set-value=true /usr/share/applications/${file}.desktop
fi
done
echo "::endgroup::"