Add snapcraft support

This commit is contained in:
Alberto Sottile 2019-05-01 00:05:02 +02:00
parent ca9e1875e9
commit d04f9ada7e
3 changed files with 44 additions and 5 deletions

View File

@ -1,6 +1,7 @@
include LICENSE
include syncplay/resources/*.desktop
include syncplay/resources/*.png
include syncplay/resources/*.mng
include syncplay/resources/*.lua
include syncplay/resources/*.rtf
include syncplay/resources/lua/intf/*.lua
include syncplay/resources/lua/intf/*.lua

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python3
import distutils.command.install_scripts
import os
import setuptools
from syncplay import projectURL, version as syncplay_version
@ -9,8 +9,11 @@ def read(fname):
with open(fname, 'r') as f:
return f.read()
installRequirements = read('requirements.txt').splitlines() +\
read('requirements_gui.txt').splitlines()
if os.getenv('SNAPCRAFT_PART_BUILD', None) is not None:
installRequirements = ["pyasn1"] + read('requirements.txt').splitlines()
else:
installRequirements = read('requirements.txt').splitlines() +\
read('requirements_gui.txt').splitlines()
setuptools.setup(
name="syncplay",
@ -61,4 +64,4 @@ setuptools.setup(
"Topic :: Internet",
"Topic :: Multimedia :: Video"
],
)
)

35
snapcraft.yaml Normal file
View File

@ -0,0 +1,35 @@
name: syncplay
summary: Syncplay
version: build
version-script: cat syncplay/__init__.py | awk '/version/ {gsub("\047", "", $3); print $NF}'
summary: Client/server to synchronize media playback on many computers
description: |
Syncplay synchronises the position and play state of multiple media players
so that the viewers can watch the same thing at the same time. This means that
when one person pauses/unpauses playback or seeks (jumps position) within their
media player then this will be replicated across all media players connected to
the same server and in the same 'room' (viewing session). When a new person
joins they will also be synchronised. Syncplay also includes text-based chat so
you can discuss a video as you watch it (or you could use third-party Voice over
IP software to talk over a video).
confinement: classic
icon: syncplay/resources/syncplay.png
grade: stable
parts:
syncplay:
plugin: python
source: .
stage-packages:
- python3-pyside
after: [desktop-qt4]
apps:
syncplay:
command: bin/desktop-launch $SNAP/usr/bin/python3 $SNAP/bin/syncplay
desktop: lib/python3.5/site-packages/syncplay/resources/syncplay.desktop
syncplay-server:
command: bin/syncplay-server
desktop: lib/python3.5/site-packages/syncplay/resources/syncplay-server.desktop