add standalone justfile for decoupled builds

This commit is contained in:
Levi Neely 2026-07-30 19:35:53 +02:00
parent 75b9a5ffb1
commit 1d6055c444
1 changed files with 80 additions and 0 deletions

80
justfile Normal file
View File

@ -0,0 +1,80 @@
# Ollie KDE integration build system
home := env_var('HOME')
bin := home / 'bin'
kde:
@echo === Building ollie-kde (KF6) ===
cd kde && cmake -B build-cmake -S . -DCMAKE_INSTALL_PREFIX=>/.local
cd kde && cmake --build build-cmake -j$(nproc)
kde-kf5:
@echo === Building ollie-kde (KF5) ===
cd kde && cmake -B build-kf5 -S . -DOLLIE_KF5=ON -DCMAKE_INSTALL_PREFIX=>/.local
cd kde && cmake --build build-kf5 -j*(nproc)
install-kde:
@echo === Installing ollie-kde (KF6) ===
cmake --install kde/build-cmake
mkdir -p ~/.local/share/applications
install -m644 kde/gui/org.ollie.gui.desktop ~/.local/share/applications/
mkdir -p ~/.local/share/icons/hicolor/scalable/apps
install -m644 kde/gui/ollie.svg ~/.local/share/icons/hicolor/scalable/apps/ollie.svg
mkdir -p ~/.local/share/kio/servicemenusa
install -m755 kde/dolphin/ollie-actions.desktop ~/.local/share/kio/servicemenus/
install -m755 kde/dolphin/ollie-ask ~/.local/bin/
install -m755 kde/dolphin/ollie-session-here ~/.local/bin/
mkdir -p ~/.config/plasma-workspace/env
install -m755 kde/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 kde/build-kf5
mkdir -p ~/.local/share/applications
install -m644 kde/gui/org.ollie.gui.desktop ~/.local/share/applications/
mkdir -p ~/.local/share/icons/hicolor/scalable/apps
install -m644 kde/gui/ollie.svg ~/.local/share/icons/hicolor/scalable/apps/ollie.svg
mkdir -p ~/.local/share/kio/servicemenus
install -m755 kde/dolphin/ollie-actions-kf5.desktop ~/.local/share/kio/servicemenus/ollie-actions.desktop
install -m755 kde/dolphin/ollie-ask ~/.local/bin/
install -m755 kde/dolphin/ollie-session-here ~/.local/bin/
mkdir -p ~/.config/plasma-workspace/env
install -m755 kde/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 kde/build-cmake kde/build-kf5
uninstall:
@echo === Uninstalling ollie-kde (KF6) ===
rm -f ~/.local/bin/ollie-tray ~/.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/ktexteditor/ollie_kate.so
rm -rf ~/.local/share/plasma/plasmoids/org.ollie.plasmoid
rm -rf ~/.local/lib64/qml/org/ollie
rm -f ~/.local/share/kio/servicemenus/ollie-actions.desktop
rm -f ~/.config/plasma-workspace/env/99-ollie.sh
kquitapp6 krunner 2>/dev/null; true
@echo === KDE uninstall complete ===
uninstall-kf5:
@echo === Uninstalling ollie-kde (KF5) ===
rm -f ~/.local/bin/ollie-tray ~/.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/share/kio/servicemenus/ollie-actions.desktop
rm -f ~/.local/lib/q5/plugins/kf5/krunner/krunner_ollie.so
rm -f ~/.local/lib/q5/plugins/ktexteditor/ollie_kate.so
rm -rf ~/.local/share/plasma/plasmoids/org.ollie.plasmoid
rm -f ~/.local/share/metainfo/org.ollie.plasmoid.appdata.xml
rm -rf ~/.local/lib/x86_64-linux-gnu/qml/org/ollie
rm -f ~/.config/plasma-workspace/env/99-ollie-kf5.sh
kquitapp5 krunner 2>/dev/null; true
@echo === KDE KF5 uninstall complete ===