%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][1]). It is a cross-platform tool with many configuration options and powerful filenaming capabilities.
[1] : https://github.com/mikf/gallery-dl/blob/master/docs/supportedsites.rst
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 receiving OAuth callback tokens
network-bind :
# Configuration access
config-gallery-dl :
interface : personal-files
read :
- $HOME/.config/gallery-dl
- $HOME/.gallery-dl.conf
etc-gallery-dl :
interface : system-files
read :
- /etc/gallery-dl.conf
dot-netrc :
interface : personal-files
read :
- $HOME/.netrc
parts :
# Launcher programs to fix problems at runtime
launchers :
source : snap/local/launchers
plugin : dump
organize :
'*' : bin/
# 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 :
source : https://github.com/Lin-Buo-Ren/selective-checkout.git
source-tag : v2.0.0
plugin : dump
build-packages :
# Scriptlet dependencies
- curl
- git
- jq
- sed
stage :
- scriptlets/selective-checkout
prime :
- -*
gallery-dl :
after :
- selective-checkout
source : .
override-pull : |
snapcraftctl pull
$SNAPCRAFT_STAGE/scriptlets/selective-checkout
plugin : python
build-packages :
- make
python-packages :
- youtube_dl
override-build : |
# build manpages and bash completion
make man completion
snapcraftctl build
ffmpeg :
plugin : nil
stage-packages :
- ffmpeg
- libslang2
apps :
gallery-dl :
adapter : full
command-chain :
- bin/gallery-dl-launch
command : bin/gallery-dl
completer : share/bash-completion/completions/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