-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcom.github.zbcoding.Impasto.yml
More file actions
71 lines (61 loc) · 2.83 KB
/
Copy pathcom.github.zbcoding.Impasto.yml
File metadata and controls
71 lines (61 loc) · 2.83 KB
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
app-id: com.github.zbcoding.Impasto
runtime: org.gnome.Platform
runtime-version: '50'
sdk: org.gnome.Sdk
command: impasto
# Flathub's convention; without it bundles land on the flatpak-builder default, "master".
branch: stable
# ponytail: this packages the self-contained linux-x64 publish output rather than
# compiling from source inside the sandbox. flatpak-builder runs offline, so a source
# build needs a generated nuget-sources.json (flatpak-builder-tools/dotnet) regenerated
# on every dependency change. Do that when submitting to Flathub, which requires it;
# for our own release assets the prebuilt zip is equivalent and far less machinery.
# Same reason this is x86_64-only: it follows whatever `impasto-linux-x64.zip` contains.
finish-args:
- --share=ipc
- --socket=wayland
- --socket=fallback-x11
- --device=dri
# Printing (Image > Print).
- --socket=cups
# Everything else goes through the file chooser portal.
- --filesystem=xdg-pictures
- --filesystem=xdg-documents
- --filesystem=xdg-download
modules:
- name: impasto
buildsystem: simple
sources:
# Produced by: dotnet publish Impasto/Impasto.csproj -c Release -r linux-x64
# --self-contained true -p:PublishDir=$PWD/release
# && cd release && zip -r ../impasto-linux-x64.zip * -x "*.pdb"
- type: archive
path: impasto-linux-x64.zip
strip-components: 0
dest: app
- type: dir
path: xdg
dest: xdg
- type: script
dest-filename: impasto
commands:
- exec /app/lib/impasto/Impasto "$@"
build-commands:
- install -d /app/lib/impasto /app/share/applications /app/share/metainfo /app/share/icons
- cp -r app/. /app/lib/impasto/
- chmod +x /app/lib/impasto/Impasto
- install -Dm755 impasto /app/bin/impasto
# The desktop/metainfo templates carry intltool's leading-underscore markers and
# name the autotools launcher script; neither applies inside the flatpak.
- sed -e 's/^_//' -e 's/^TryExec=.*/TryExec=impasto/' -e 's/^Exec=.*/Exec=impasto %F/'
xdg/com.github.zbcoding.Impasto.desktop.in
> /app/share/applications/com.github.zbcoding.Impasto.desktop
- sed 's|<\(/\?\)_|<\1|g' xdg/com.github.zbcoding.Impasto.metainfo.xml.in
> /app/share/metainfo/com.github.zbcoding.Impasto.metainfo.xml
# The app's own icons ship inside the publish output; hoist them to the
# standard location so the shell can resolve Icon=com.github.zbcoding.Impasto.
- cp -r /app/lib/impasto/icons/hicolor /app/share/icons/
- install -Dm644 xdg/impasto.1 /app/share/man/man1/impasto.1
post-install:
- desktop-file-validate /app/share/applications/com.github.zbcoding.Impasto.desktop
- appstreamcli validate --no-net /app/share/metainfo/com.github.zbcoding.Impasto.metainfo.xml