forked from flameshot-org/flameshot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
snapcraft.yaml
91 lines (88 loc) · 3.06 KB
/
snapcraft.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
---
name: flameshot
adopt-info: flameshot
base: core20
summary: Powerful yet simple to use screenshot software
description: |
A powerful open source screenshot and annotation tool for Linux, Flameshot
has a varied set of markup tools available, which include Freehand drawing,
Lines, Arrows, Boxes, Circles, Highlighting, Blur. Additionally, you can
customise the color, size and/or thickness of many of these image annotation
tools.
grade: stable # must be 'stable' to release into candidate/stable channels
confinement: strict # use 'strict' once you have the right plugs and slots
#confinement: devmode # use 'strict' once you have the right plugs and slot
compression: lzo
architectures:
- build-on: amd64
apps:
flameshot:
command: usr/local/bin/flameshot
desktop: usr/local/share/applications/org.flameshot.Flameshot.desktop
extensions:
- kde-neon
environment:
DISABLE_WAYLAND: 1
XDG_DATA_DIRS: $SNAP/share:$XDG_DATA_DIRS
QT_QPA_PLATFORMTHEME: gtk3
slots: [dbus-flameshot]
plugs:
- home
- removable-media
- network
- network-bind
- opengl
- x11
- wayland
- desktop
- desktop-legacy
- unity7
parts:
flameshot:
build-snaps:
- kde-frameworks-5-qt-5-15-core20
source: https://github.com/flameshot-org/flameshot.git
plugin: cmake
# This cannot be enabled until the KF5 toolkit in the snap is updated
#cmake-parameters:
# - -DUSE_WAYLAND_CLIPBOARD=1
source-type: git
override-pull: |
snapcraftctl pull
# remove release candidates
last_committed_tag="$(git tag -l --sort=-v:refname | grep -v rc | head -1)"
git_revno="$(git rev-list $(git describe --tags --abbrev=0)..HEAD --count)"
git_hash="$(git rev-parse --short HEAD)"
snapcraftctl set-version "${last_committed_tag}+git${git_revno}.${git_hash}"
override-build: |
snapcraftctl build
# Correct the Icon path
sed -i 's|^Exec=flameshot|Exec=/snap/bin/org.flameshot.Flameshot|' ${SNAPCRAFT_PART_INSTALL}/usr/local/share/applications/org.flameshot.Flameshot.desktop
sed -i 's|^Icon=.*|Icon=${SNAP}/usr/local/share/icons/hicolor/scalable/apps/org.flameshot.Flameshot.svg|' ${SNAPCRAFT_PART_INSTALL}/usr/local/share/applications/org.flameshot.Flameshot.desktop
sed -i 's/^\(Name\(\[.\+\]\)\?=.*\)$/\1 (Snappy Edition)/g' ${SNAPCRAFT_PART_INSTALL}/usr/local/share/applications/org.flameshot.Flameshot.desktop
build-packages:
- g++
- make
- qt5-default
- git
stage-packages:
- dbus-x11
- libgtk2.0-0
- openssl
- ca-certificates
- libxkbcommon0
- ttf-ubuntu-font-family
- dmz-cursor-theme
- light-themes
- adwaita-icon-theme
- gnome-themes-standard
- shared-mime-info
- libgdk-pixbuf2.0-0
slots:
# Depending on in which environment we're running we either need
# to use the system or session DBus so we also need to have one
# slot for each.
dbus-flameshot:
interface: dbus
bus: session
name: org.flameshot.Flameshot