# Ollie KDE integration build system home := env_var('HOME') bin := home / '.local/bin' kde: @echo '=== Building ollie-kde (KF6) ===' cmake -B build-cmake -S . -DCMAKE_INSTALL_PREFIX=~/.local cmake --build build-cmake -j$(nproc) kde-kf5: @echo '=== Building ollie-kde (KF5) ===' cmake -B build-kf5 -S . -DOLLIE_KF5=ON -DCMAKE_INSTALL_PREFIX=~/.local cmake --build build-kf5 -j$(nproc) install-kde: @echo '=== Installing ollie-kde (KF6) ===' cmake --install build-cmake mkdir -p ~/.local/share/applications install -m644 gui/org.ollie.gui.desktop ~/.local/share/applications/ mkdir -p ~/.local/share/icons/hicolor/scalable/apps install -m644 gui/ollie.svg ~/.local/share/icons/hicolor/scalable/apps/ollie.svg mkdir -p ~/.local/share/kio/servicemenus install -m755 dolphin/ollie-actions.desktop ~/.local/share/kio/servicemenus/ install -m755 dolphin/ollie-ask ~/.local/bin/ install -m755 dolphin/ollie-session-here ~/.local/bin/ mkdir -p ~/.config/plasma-workspace/env install -m755 99-ollie.sh ~/.config/plasma-workspace/env/99-ollie.sh kbuildsycoca6 --noincremental 2>/dev/null; true kquitapp6 krunner 2>/dev/null; true @echo '=== KDE install complete. Restart Plasma to pick up plugins. ===' install-kde-kf5: @echo '=== Installing ollie-kde (KF5) ===' cmake --install build-kf5 mkdir -p ~/.local/share/applications install -m644 gui/org.ollie.gui.desktop ~/.local/share/applications/ mkdir -p ~/.local/share/icons/hicolor/scalable/apps install -m644 gui/ollie.svg ~/.local/share/icons/hicolor/scalable/apps/ollie.svg mkdir -p ~/.local/share/kio/servicemenus install -m755 dolphin/ollie-actions-kf5.desktop ~/.local/share/kio/servicemenus/ollie-actions.desktop install -m755 dolphin/ollie-ask ~/.local/bin/ install -m755 dolphin/ollie-session-here ~/.local/bin/ mkdir -p ~/.config/plasma-workspace/env install -m755 99-ollie-kf5.sh ~/.config/plasma-workspace/env/99-ollie-kf5.sh kbuildsycoca5 --noincremental 2>/dev/null; true kquitapp5 krunner 2>/dev/null; true @echo '=== KDE KF5 install complete. Restart Plasma to pick up plugins. ===' clean: rm -rf build-cmake build-kf5 uninstall: @echo '=== Uninstalling ollie-kde (KF6) ===' rm -f ~/.local/bin/ollie-gui rm -f ~/.local/bin/ollie-ask ~/.local/bin/ollie-session-here rm -f ~/.local/share/applications/org.ollie.gui.desktop rm -f ~/.local/share/icons/hicolor/scalable/apps/ollie.svg rm -f ~/.local/lib64/qt6/plugins/kf6/krunner/krunner_ollie.so rm -f ~/.local/lib64/qt6/plugins/kf6/ktexteditor/ollie_kate.so rm -f ~/.local/lib64/qt6/plugins/kf6/kio/kio_ollie.so rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop rm -f ~/.config/plasma-workspace/env/99-ollie.sh kbuildsycoca6 --noincremental 2>/dev/null; true kquitapp6 krunner 2>/dev/null; true @echo '=== KDE uninstall complete ===' uninstall-kf5: @echo '=== Uninstalling ollie-kde (KF5) ===' rm -f ~/.local/bin/ollie-gui rm -f ~/.local/bin/ollie-ask ~/.local/bin/ollie-session-here rm -f ~/.local/share/applications/org.ollie.gui.desktop rm -f ~/.local/share/icons/hicolor/scalable/apps/ollie.svg rm -f ~/.local/lib/qt5/plugins/kf5/krunner/krunner_ollie.so rm -f ~/.local/lib/qt5/plugins/ktexteditor/ollie_kate.so rm -f ~/.local/lib/qt5/plugins/kf5/kio/kio_ollie.so rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop rm -f ~/.local/share/kservices5/ollie.protocol rm -f ~/.config/plasma-workspace/env/99-ollie-kf5.sh kbuildsycoca5 --noincremental 2>/dev/null; true kquitapp5 krunner 2>/dev/null; true @echo '=== KDE KF5 uninstall complete ==='