This patch re-implements the pull step that will only build
development snapshots snaps if the latest tagged release has been
promoted to the stable channel. This ensures that there's always
a revision of the stable release snap available in the edge channel
for the publisher to promote to stable as currently the build
infrastructure only supports build on code push (but not new tagged
releases) at this time.
The implementation is inspired from the snapcrafters adopted snaps workflow,
documented in the following forum topic:
The automatic build and pubish process of snaps owned by the Snapcrafters - doc - snapcraft.io
https://forum.snapcraft.io/t/autopublishing-of-snapcrafters-organizations-snaps-how/7954/2
Refer the following forum topic for a possible solution proposal of this problem:
Proposal: Allow overriding the source-tag property for an one-time build in the build infrastructure - snapcraft - snapcraft.io
https://forum.snapcraft.io/t/proposal-allow-overriding-the-source-tag-property-for-an-one-time-build-in-the-build-infrastructure/10303
Signed-off-by: 林博仁(Buo-ren Lin) <Buo.Ren.Lin@gmail.com>
105 lines
2.6 KiB
YAML
105 lines
2.6 KiB
YAML
%YAML 1.1
|
|
---
|
|
# Snapcraft Recipe for gallery-dl
|
|
# ------------------------------
|
|
# This file is in the YAML data serialization format:
|
|
# http://yaml.org
|
|
# For the spec. of writing this file refer the following documentation:
|
|
# * The snapcraft format
|
|
# https://docs.snapcraft.io/the-snapcraft-format/8337
|
|
# * Snap Documentation
|
|
# https://docs.snapcraft.io
|
|
# * Topics under the doc category in the Snapcraft Forum
|
|
# https://forum.snapcraft.io/c/doc
|
|
# For support refer to the snapcraft section in the Snapcraft Forum:
|
|
# https://forum.snapcraft.io/c/snapcraft
|
|
name: gallery-dl
|
|
license: GPL-2.0
|
|
base: core18
|
|
summary: Download image-galleries and -collections from several image hosting sites
|
|
description: |
|
|
`gallery-dl` is a command-line program to download image-galleries and -collections from several image hosting sites (see [Supported Sites](https://github.com/mikf/gallery-dl/blob/master/docs/supportedsites.rst)). It is a cross-platform tool with many configuration options and powerful filenaming capabilities.
|
|
|
|
adopt-info: gallery-dl
|
|
confinement: strict
|
|
grade: stable
|
|
|
|
plugs:
|
|
# For `xdg-open` command access for opening OAuth authentication webpages
|
|
desktop:
|
|
|
|
# Storage access
|
|
home:
|
|
removable-media: # Non-A/C
|
|
|
|
# Network access
|
|
network:
|
|
|
|
# For network service for recieving OAuth callback tokens
|
|
network-bind:
|
|
|
|
# Configuration access
|
|
# FIXME: Waiting for the Snap Store autoconnection assertion
|
|
# https://forum.snapcraft.io/t/interface-auto-connection-request-for-the-gallery-dl-snap/10092
|
|
#personal-files:
|
|
#read:
|
|
#- $HOME/.config/gallery-dl
|
|
#- $HOME/.gallery-dl.conf
|
|
#system-files:
|
|
#read:
|
|
#- /etc/gallery-dl.conf
|
|
|
|
parts:
|
|
# Launcher programs to fix problems at runtime
|
|
launchers:
|
|
source: snap/local/launchers
|
|
plugin: dump
|
|
organize:
|
|
'*': bin/
|
|
|
|
selective-pull:
|
|
plugin: nil
|
|
build-packages:
|
|
- git
|
|
stage-snaps:
|
|
- selective-pull
|
|
|
|
gallery-dl:
|
|
after:
|
|
- selective-pull
|
|
|
|
source: .
|
|
override-pull: $SNAPCRAFT_STAGE/scriptlets/selective-pull
|
|
plugin: python
|
|
|
|
ffmpeg:
|
|
plugin: nil
|
|
stage-packages:
|
|
- ffmpeg
|
|
- libavcodec57
|
|
- libavdevice57
|
|
- libavfilter6
|
|
- libavformat57
|
|
- libavresample3
|
|
- libavutil55
|
|
- libpostproc54
|
|
- libpulse0
|
|
- libslang2
|
|
- libswresample2
|
|
- libswscale4
|
|
|
|
apps:
|
|
gallery-dl:
|
|
adapter: full
|
|
command-chain:
|
|
- bin/gallery-dl-launch
|
|
command: bin/gallery-dl
|
|
environment:
|
|
LANG: C.UTF-8
|
|
LC_ALL: C.UTF-8
|
|
|
|
# Satisfy FFmpeg's libpulsecommon dependency
|
|
LD_LIBRARY_PATH: $LD_LIBRARY_PATH:$SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/pulseaudio
|
|
|
|
HOME: $SNAP_USER_COMMON
|