name: alpaca base: core24 adopt-info: alpaca summary: An Ollama client made with GTK4 and Adwaita description: | Alpaca is an Ollama client where you can manage and chat with multiple models, Alpaca provides an easy and begginer friendly way of interacting with local AI, everything is open source and powered by Ollama. platforms: amd64: confinement: strict grade: stable compression: lzo slots: dbus-alpaca: interface: dbus bus: session name: com.jeffser.Alpaca apps: alpaca: command: usr/bin/alpaca desktop: meta/gui/alpaca.desktop common-id: com.jeffser.Alpaca extensions: - gnome plugs: - network - network-bind - desktop - desktop-legacy - wayland - opengl - home - removable-media slots: - dbus-alpaca ollama: command: bin/ollama plugs: - home - removable-media - network - network-bind - opengl ollama-daemon: command: bin/ollama serve daemon: simple install-mode: enable restart-condition: on-failure plugs: - home - removable-media - network - network-bind - opengl parts: # Python dependencies python-deps: plugin: python source: . python-packages: - requests==2.31.0 - pillow==10.3.0 - pypdf==4.2.0 - pytube==15.0.0 - html2text==2024.2.26 # Ollama plugin ollama: plugin: dump source: https://github.com/ollama/ollama/releases/download/v0.3.10/ollama-linux-amd64.tgz # Alpaca app alpaca: plugin: meson source-type: git source: https://github.com/Jeffser/Alpaca.git source-tag: '2.0.2' source-depth: 1 meson-parameters: - --prefix=/snap/alpaca/current/usr build-packages: - meson - ninja-build - pkg-config - libcairo2-dev - libgtk-3-dev - libglib2.0-dev - gettext - desktop-file-utils - appstream override-pull: | craftctl default craftctl set version=$(git describe --tags --abbrev=0) override-build: | craftctl default sed -i '1c#!/usr/bin/env python3' $CRAFT_PART_INSTALL/snap/alpaca/current/usr/bin/alpaca stage-packages: - libnuma1 parse-info: - usr/share/metainfo/com.jeffser.Alpaca.metainfo.xml organize: snap/alpaca/current/usr: usr after: [python-deps]