remove Makefile (consolidated into root justfile)

This commit is contained in:
Levi Neely 2026-07-19 13:02:47 +02:00
parent 51af575e48
commit d0caaa1f63
1 changed files with 0 additions and 225 deletions

225
Makefile
View File

@ -1,225 +0,0 @@
# kde-ollie Makefile
# Build order: cmake (KDE tools only — daemon is now in ../dbus)
BUILD_DIR := build-cmake
.PHONY: all clean run install uninstall \
kf5 kf5-install kf5-uninstall \
krunner-install dolphin-install plasmoid-install plasmoid-uninstall \
tray data tools-install tools-uninstall
all: build data
# Build KDE tools (tray, krunner, kate, plasmoid)
build:
cmake -B $(BUILD_DIR) -S .
cmake --build $(BUILD_DIR) -j$$(nproc)
# Build using KF5/Qt5 (for Plasma 5.27)
KF5_BUILD_DIR := build-kf5
kf5:
cmake -B $(KF5_BUILD_DIR) -S . -DOLLIE_KF5=ON
cmake --build $(KF5_BUILD_DIR) -j$$(nproc)
# --- KF6 Install (default) ---
install: build
@echo "=== Installing ollie-kde (KF6) ==="
# Remove stale copies from old install path
rm -f /usr/local/bin/ollie-ask /usr/local/bin/ollie-session-here
# Binaries
install -m755 $(BUILD_DIR)/ollie-tray /usr/bin/
install -m755 $(BUILD_DIR)/ollie-gui /usr/bin/
# Desktop file and icon
mkdir -p /usr/share/applications
install -m644 gui/org.ollie.gui.desktop /usr/share/applications/
mkdir -p /usr/share/icons/hicolor/scalable/apps
install -m644 gui/ollie.svg /usr/share/icons/hicolor/scalable/apps/ollie.svg
# KRunner plugin
mkdir -p /usr/lib64/qt6/plugins/kf6/krunner
install -m755 $(BUILD_DIR)/lib/kf6/krunner/krunner_ollie.so \
/usr/lib64/qt6/plugins/kf6/krunner/
# Kate plugin
mkdir -p /usr/lib64/qt6/plugins/kf6/ktexteditor
install -m755 $(BUILD_DIR)/lib/ktexteditor/ollie_kate.so \
/usr/lib64/qt6/plugins/kf6/ktexteditor/
# Plasmoid QML plugin library + metadata
mkdir -p /usr/lib64/qt6/qml/org/ollie/private
install -m755 $(BUILD_DIR)/org/ollie/private/ollie-plasmoid-pluginplugin.so \
/usr/lib64/qt6/qml/org/ollie/private/libollie-plasmoid-pluginplugin.so
install -m644 $(BUILD_DIR)/org/ollie/private/ollie-plasmoid-plugin.qmltypes \
/usr/lib64/qt6/qml/org/ollie/private/
install -m755 $(BUILD_DIR)/lib/libollie-plasmoid-plugin.so /usr/lib64/
printf 'module org.ollie.private\nplugin ollie-plasmoid-pluginplugin\ntypeinfo ollie-plasmoid-plugin.qmltypes\ndepends QtQuick\n' | \
tee /usr/lib64/qt6/qml/org/ollie/private/qmldir > /dev/null
# Plasmoid package (system-wide, matching lib install paths)
kpackagetool6 -g -t Plasma/Applet -u plasmoid/ 2>/dev/null || \
kpackagetool6 -g -t Plasma/Applet -i plasmoid/
# Dolphin service menus + helper scripts
mkdir -p ~/.local/share/kio/servicemenus
rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop
install -m755 dolphin/ollie-actions.desktop ~/.local/share/kio/servicemenus/
install -m755 dolphin/ollie-ask /usr/bin/
install -m755 dolphin/ollie-session-here /usr/bin/
# Finalize
ldconfig
kquitapp6 krunner 2>/dev/null; true
@echo ""
@echo "=== Installation complete (KF6) ==="
@echo "Restart Kate, KRunner, and plasmashell to pick up plugins."
uninstall:
@echo "=== Uninstalling ollie-kde ==="
rm -f /usr/bin/ollie-tray /usr/bin/ollie-gui
rm -f /usr/share/applications/org.ollie.gui.desktop
rm -f /usr/share/icons/hicolor/scalable/apps/ollie.svg
rm -f /usr/lib64/libollie-plasmoid-plugin.so
rm -f /usr/lib64/qt6/plugins/kf6/krunner/krunner_ollie.so
rm -f /usr/lib64/qt6/plugins/kf6/ktexteditor/ollie_kate.so
rm -rf /usr/lib64/qt6/qml/org/ollie
kpackagetool6 -g -t Plasma/Applet -r org.ollie.plasmoid 2>/dev/null; true
rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop
rm -f /usr/bin/ollie-ask /usr/bin/ollie-session-here
ldconfig
kquitapp6 krunner 2>/dev/null; true
@echo "=== Uninstall complete ==="
# --- Individual component installs ---
krunner-install:
mkdir -p /usr/lib64/qt6/plugins/kf6/krunner
install -m755 $(BUILD_DIR)/lib/kf6/krunner/krunner_ollie.so \
/usr/lib64/qt6/plugins/kf6/krunner/
kquitapp6 krunner 2>/dev/null; true
@echo "KRunner plugin installed. Restart krunner or re-login."
dolphin-install:
mkdir -p ~/.local/share/kio/servicemenus
rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop
install -m755 dolphin/ollie-actions.desktop ~/.local/share/kio/servicemenus/
install -m755 dolphin/ollie-ask /usr/bin/
install -m755 dolphin/ollie-session-here /usr/bin/
@echo "Dolphin menus installed. Restart Dolphin or re-open context menu."
plasmoid-install:
kpackagetool6 -g -t Plasma/Applet -u plasmoid/ 2>/dev/null || \
kpackagetool6 -g -t Plasma/Applet -i plasmoid/
mkdir -p /usr/lib64/qt6/qml/org/ollie/private
install -m755 $(BUILD_DIR)/org/ollie/private/ollie-plasmoid-pluginplugin.so \
/usr/lib64/qt6/qml/org/ollie/private/libollie-plasmoid-pluginplugin.so
install -m644 $(BUILD_DIR)/org/ollie/private/ollie-plasmoid-plugin.qmltypes \
/usr/lib64/qt6/qml/org/ollie/private/
install -m755 $(BUILD_DIR)/lib/libollie-plasmoid-plugin.so /usr/lib64/
printf 'module org.ollie.private\nplugin ollie-plasmoid-pluginplugin\ntypeinfo ollie-plasmoid-plugin.qmltypes\ndepends QtQuick\n' | \
tee /usr/lib64/qt6/qml/org/ollie/private/qmldir > /dev/null
ldconfig
@echo "Plasmoid installed. Restart plasmashell or add widget."
plasmoid-uninstall:
kpackagetool6 -g -t Plasma/Applet -r org.ollie.plasmoid 2>/dev/null; true
rm -rf /usr/lib64/qt6/qml/org/ollie
rm -f /usr/lib64/libollie-plasmoid-plugin.so
ldconfig
@echo "Plasmoid uninstalled."
# --- KF5 Install ---
kf5-install:
@echo "=== Installing ollie-kde (KF5) ==="
# Binaries
install -m755 $(KF5_BUILD_DIR)/ollie-tray /usr/bin/
install -m755 $(KF5_BUILD_DIR)/ollie-gui /usr/bin/
# Desktop file and icon
mkdir -p /usr/share/applications
install -m644 gui/org.ollie.gui.desktop /usr/share/applications/
mkdir -p /usr/share/icons/hicolor/scalable/apps
install -m644 gui/ollie.svg /usr/share/icons/hicolor/scalable/apps/ollie.svg
# KRunner plugin
mkdir -p /usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/krunner
install -m755 $(KF5_BUILD_DIR)/lib/krunner_ollie.so \
/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/krunner/
# Kate plugin
mkdir -p /usr/lib/x86_64-linux-gnu/qt5/plugins/ktexteditor
install -m755 $(KF5_BUILD_DIR)/lib/ollie_kate.so \
/usr/lib/x86_64-linux-gnu/qt5/plugins/ktexteditor/
# Plasmoid QML plugin
mkdir -p /usr/lib/x86_64-linux-gnu/qt5/qml/org/ollie/private
install -m755 $(KF5_BUILD_DIR)/lib/libollieprivateplugin.so \
/usr/lib/x86_64-linux-gnu/qt5/qml/org/ollie/private/
install -m644 plasmoid/plugin/qmldir \
/usr/lib/x86_64-linux-gnu/qt5/qml/org/ollie/private/
# Plasmoid package (direct install — kpackagetool5 -u doesn't overwrite)
mkdir -p /usr/share/plasma/plasmoids/org.ollie.plasmoid/contents/ui
cp plasmoid/metadata-kf5.json /usr/share/plasma/plasmoids/org.ollie.plasmoid/metadata.json
cp plasmoid/contents/ui/main-kf5.qml /usr/share/plasma/plasmoids/org.ollie.plasmoid/contents/ui/main.qml
rm -f /usr/share/plasma/plasmoids/org.ollie.plasmoid/contents/ui/main-kf5.qml
# Dolphin service menus + helper scripts
mkdir -p ~/.local/share/kio/servicemenus
rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop
install -m755 dolphin/ollie-actions-kf5.desktop ~/.local/share/kio/servicemenus/ollie-actions.desktop
install -m755 dolphin/ollie-ask /usr/bin/
install -m755 dolphin/ollie-session-here /usr/bin/
# Finalize
ldconfig
kquitapp5 krunner 2>/dev/null; true
@echo ""
@echo "=== Installation complete (KF5) ==="
@echo "Restart Kate, KRunner, and plasmashell to pick up plugins."
kf5-uninstall:
@echo "=== Uninstalling ollie-kde (KF5) ==="
rm -f /usr/bin/ollie-tray
rm -f /usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/krunner/krunner_ollie.so
rm -f /usr/lib/x86_64-linux-gnu/qt5/plugins/ktexteditor/ollie_kate.so
rm -rf /usr/lib/x86_64-linux-gnu/qt5/qml/org/ollie
kpackagetool5 -t Plasma/Applet -r org.ollie.plasmoid 2>/dev/null; true
rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop
rm -f /usr/bin/ollie-ask /usr/bin/ollie-session-here
ldconfig
kquitapp5 krunner 2>/dev/null; true
@echo "=== Uninstall complete (KF5) ==="
# --- Data (prompts, skills, tools) ---
data:
@echo "=== Installing kde data ==="
mkdir -p $(HOME)/.config/ollie/skills
mkdir -p $(HOME)/.config/ollie/tools
rm -rf $(HOME)/.config/ollie/prompts
mkdir -p $(HOME)/.config/ollie/prompts
cp -rf prompts/* $(HOME)/.config/ollie/prompts
cp -rf skills/* $(HOME)/.config/ollie/skills
cp -rf tools/_lib $(HOME)/.config/ollie/tools/_lib
cp -rf tools/* $(HOME)/.config/ollie/tools
# --- GUI Tools (standalone install) ---
GUI_TOOLS := gui_accessibility gui_activities gui_apps gui_brightness \
gui_clipboard gui_files gui_input gui_notify \
gui_screenshot gui_shortcuts gui_windows
tools-install:
@echo "=== Installing GUI automation tools ==="
mkdir -p $(HOME)/.config/ollie/tools
@for t in $(GUI_TOOLS); do \
install -m755 tools/$$t $(HOME)/.config/ollie/tools/$$t; \
echo " installed: $$t"; \
done
@echo "=== Done. Tools available in next ollie session. ==="
tools-uninstall:
@echo "=== Removing GUI automation tools ==="
@for t in $(GUI_TOOLS); do \
rm -f $(HOME)/.config/ollie/tools/$$t; \
echo " removed: $$t"; \
done
@echo "=== Done ==="
# --- Development helpers ---
tray: build
./$(BUILD_DIR)/ollie-tray
clean:
rm -rf $(BUILD_DIR) $(KF5_BUILD_DIR)