forked from snapcrafters/snap-repo-template
-
Notifications
You must be signed in to change notification settings - Fork 2
/
snapcraft.yaml
138 lines (123 loc) · 3.43 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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
name: picard
summary: Picard is the official MusicBrainz tagger.
description: |
Picard supports the majority of audio file formats, is capable of using
audio fingerprints (AcoustIDs), performing CD lookups and disc ID submissions,
and it has excellent Unicode support. Additionally, there are several plugins
available that extend Picard's features.
grade: stable
confinement: strict
#icon: gui/picard.svg
base: core18
adopt-info: picard
assumes:
- command-chain
apps:
picard:
adapter: full
command: bin/picard
command-chain:
- bin/desktop-launch
environment:
DISABLE_WAYLAND: 1
QT_QPA_PLATFORMTHEME: gtk3
plugs:
- gsettings
- home
- network
- network-bind
- pulseaudio
- unity7
- x11
- optical-drive
- wayland
- desktop
- opengl
- removable-media
plugs:
# gtk-common-themes support
gtk-3-themes:
interface: content
target: $SNAP/data-dir/themes
default-provider: gtk-common-themes:gtk-3-themes
icon-themes:
interface: content
target: $SNAP/data-dir/icons
default-provider: gtk-common-themes:icon-themes
sound-themes:
interface: content
target: $SNAP/data-dir/sounds
default-provider: gtk-common-themes:sounds-themes
parts:
picard:
after:
- patching
- selective-checkout
source: https://github.com/metabrainz/picard.git
#source-depth: 1000
plugin: x-python
override-pull: |
snapcraftctl pull
"$SNAPCRAFT_STAGE"/scriptlets/selective-checkout \
--release-tag-prefix='release-' \
--stable-tag-pattern=^[[:digit:]].[[:digit:]].[[:digit:]]$ \
--force-stable
override-build: |
git apply --verbose "${SNAPCRAFT_STAGE}"/patching/localedir.patch
snapcraftctl build
stage-packages:
- libgettextpo0
- libchromaprint-tools
- python3-libdiscid
- python3-mutagen
- python3-pyqt5
- gettext
- qtwayland5
# gtk-common-themes support
- qt5-gtk-platformtheme
build-packages:
- appstream
# Part for supporting various desktop technologies
# Refer: https://github.com/ubuntu/snapcraft-desktop-helpers/blob/master/snapcraft.yaml
desktop-qt5:
source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
source-depth: 1
source-subdir: qt
plugin: make
make-parameters: ["FLAVOR=qt5"]
stage-packages:
- libxkbcommon0
- ttf-ubuntu-font-family
- dmz-cursor-theme
- light-themes
- adwaita-icon-theme
- gnome-themes-standard
- shared-mime-info
- libqt5gui5
- libgdk-pixbuf2.0-0
- libqt5svg5 # for loading icon themes which are svg
- try: [appmenu-qt5] # not available on core18
- locales-all
- xdg-user-dirs
- fcitx-frontend-qt5
# Code patching to fix another part, when it cannot be solved by other means
patching:
source: patching
plugin: dump
organize:
'*': patching/
prime:
- -*
# Check out the tagged release revision if it isn't promoted to the stable channel
# https://forum.snapcraft.io/t/selective-checkout-check-out-the-tagged-release-revision-if-it-isnt-promoted-to-the-stable-channel/10617
selective-checkout:
plugin: nil
build-packages:
- git
stage-snaps:
- selective-checkout
prime:
- -*
layout:
/usr/share/locale:
bind: $SNAP/share/locale