Hi folks,
i’m loving GitAhead and i want to snap-it.
From their GitHub, I can download an *.sh file, make it executable. This file will extract all the dependencies and application in a GitAhead directory and create a GitAhead.desktop in the /home/user/.local/share/applications
.
This is the file tructure:
GitAhead.sh
|-GitAhead
|-indexer
|-...
|-libQt5Widgets.so.5
|-Plugins
| |-imageformats
| |-platforminputcontexts
| |-platforms
|-Resources
|-acknowledgments.html
|-credential.lua
|-emoji.json
I did not find any example for downloading an *.sh file and have the files available for the snap-package. As far I read the Docs, *.sh are not suported…
Also building the Package from source need a plugin (ninja) which is available with the meson
plugin for core18. Do i have to make various steps to build my App?
Since i’ve just started working and experimenting with snapcraft and the whole linux building craft, any help are highly appreciated.
my gitahead.yml looks something like this:
name: gitahead
base: core20
version: '0.1'
summary: GitAhead is a graphical Git client
description: |
GitAhead is a graphical Git client for Windows, Linux and macOS.
It features a fast native interface designed to
help you understand and manage your source code history.
grade: devel # must be 'stable' to release into candidate/stable channels
confinement: devmode # use 'strict' once you have the right plugs and slots
architectures:
- build-on: amd64
# - build-on: arm64
# - build-on: armhf
# - build-on: ppc64el
apps:
gitahead:
command: /usr/bin/gitahead
parts:
gitahead:
plugin: cmake
source: https://github.com/gitahead/gitahead.git
override-pull: |
snapcraftctl pull
snapcraftctl set-version "$(git describe --tags)"
The builds fails and i’m pritty sure i have to configure additional steps for make the whole building succeed.
Also i’ve created an build.sh script which will take care of my manually build. After it builds, i have an executable which i can just launch the App. If this approach is supported, Will this be easier for building my app?
git submodule init
git submodule update
cd dep/openssl/openssl
./config -fPIC
make
cd ../../..
mkdir -p build/release
cd build/release
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ../..
ninja
Thanks
Francesco