diff --git a/MANIFEST.in b/MANIFEST.in index f3809a6..29917cb 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -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 \ No newline at end of file +include syncplay/resources/lua/intf/*.lua diff --git a/setup.py b/setup.py index 91b2602..358e9ee 100644 --- a/setup.py +++ b/setup.py @@ -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" ], -) \ No newline at end of file +) diff --git a/snapcraft.yaml b/snapcraft.yaml new file mode 100644 index 0000000..b92af89 --- /dev/null +++ b/snapcraft.yaml @@ -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