File: setup.py

package info (click to toggle)
coherence 0.6.6.2-8
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 2,436 kB
  • ctags: 4,206
  • sloc: python: 27,187; xml: 5,207; sh: 59; makefile: 26
file content (155 lines) | stat: -rw-r--r-- 6,616 bytes parent folder | download | duplicates (3)
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# -*- coding: utf-8 -*-

from coherence import __version__

try:
    from setuptools import setup, find_packages
    packages = find_packages()
    haz_setuptools = True
except:
    from distutils.core import setup

    import os

    packages = ['coherence',]

    def find_packages(path):
        for f in os.listdir(path):
            if f[0] == '.':
                continue
            if os.path.isdir(os.path.join(path,f)) == True:
                next_path = os.path.join(path,f)
                if '__init__.py' in os.listdir(next_path):
                    packages.append(next_path.replace(os.sep,'.'))
                find_packages(next_path)

    find_packages('coherence')
    haz_setuptools = False

packages.append('misc')

setup_args = {
    'name':"Coherence",
    'version':__version__,
    'description':"""Coherence - DLNA/UPnP framework for the digital living""",
    'long_description':"""Coherence is a framework written in Python,
providing a variety of UPnP MediaServer and UPnP MediaRenderer implementations
for instant use.

It includes an UPnP ControlPoint, which is accessible via D-Bus too.

Furthermore it enables your application to participate in
digital living networks, at the moment primarily the DLNA/UPnP universe.
Its objective and demand is to relieve your application from all the
membership/the UPnP related tasks as much as possible.

New in this %s - the Red-Nosed Reindeer Revolutions - release

 * new MediaServer backends that allow access to
   * Banshee - exports audio and video files from Banshees media db (http://banshee-project.org/)
   * FeedStore - a MediaServer serving generic RSS feeds
   * Playlist - exposes the list of video/audio streams from a m3u playlist (e.g. web TV listings published by french ISPs such as Free, SFR...)
   * YAMJ - serves the movie/TV series data files and metadata from a given YAMJ (Yet Another Movie Jukebox) library (http://code.google.com/p/moviejukebox/)
 * updates on Mirabeau - our "UPnP over XMPP" bridge
 * simplifications in the D-Bus API
 * a first implementation of an JSON/REST API
 * advancements of the GStreamer MediaRenderer, supporting now GStreamers playbin2
 * upgrade of the DVB-Daemon MediaServer
 * refinements in the transcoding section, having now the choice to use GStreamer pipelines or external processes like mencoder
 * more 'compatibility' improvements for different devices (e.g. Samsung TVs or Apache Felix)
 * and - as every time - the usual bugfixes and enhancements

Kudos go to:

 * Benjamin (lightyear) Kampmann,
 * Charlie (porthose) Smotherman
 * Dominik (schrei5) Ruf,
 * Frank (dev) Scholz,
 * Friedrich (frinring) Kossebau,
 * Jean-Michel (jmsizun) Sizun,
 * Philippe (philn) Normand,
 * Sebastian (sebp) Poelsterl,
 * Zaheer (zaheerm) Merali


""" % __version__,
    'author':"Frank Scholz",
    'author_email':'dev@coherence-project.org',
    'license' : "MIT",
    'packages':packages,
    'scripts' : ['bin/coherence','misc/Desktop-Applet/applet-coherence'],
    'url' : "http://coherence-project.org",
    'download_url' : 'http://coherence-project.org/download/Coherence-%s.tar.gz' % __version__,
    'keywords':['UPnP', 'DLNA', 'multimedia', 'gstreamer'],
    'classifiers' : ['Development Status :: 5 - Production/Stable',
                   'Environment :: Console',
                   'Environment :: Web Environment',
                   'License :: OSI Approved :: MIT License',
                   'Operating System :: OS Independent',
                   'Programming Language :: Python',
                ],
    'package_data' : {
        'coherence': ['upnp/core/xml-service-descriptions/*.xml',
                      'ui/icons/*.png',
                      'web/static/*.css','web/static/*.js'],
        'misc': ['Desktop-Applet/*.png',
                 'device-icons/*.png'],
    },
}

if haz_setuptools == True:
    setup_args['install_requires'] = []
    try:
        from configobj import ConfigObj
    except ImportError:
        setup_args['install_requires'].append('ConfigObj >= 4.3')
    try:
        import netifaces
    except ImportError:
        import sys
        if sys.platform in ('win32','sunos5'):
            setup_args['install_requires'].append('Netifaces >= 0.4')

    setup_args['entry_points'] = """
        [coherence.plugins.backend.media_server]
        FSStore = coherence.backends.fs_storage:FSStore
        MediaStore = coherence.backends.mediadb_storage:MediaStore
        ElisaMediaStore = coherence.backends.elisa_storage:ElisaMediaStore
        FlickrStore = coherence.backends.flickr_storage:FlickrStore
        AxisCamStore = coherence.backends.axiscam_storage:AxisCamStore
        BuzztardStore = coherence.backends.buzztard_control:BuzztardStore
        IRadioStore = coherence.backends.iradio_storage:IRadioStore
        LastFMStore = coherence.backends.lastfm_storage:LastFMStore
        AmpacheStore = coherence.backends.ampache_storage:AmpacheStore
        TrackerStore = coherence.backends.tracker_storage:TrackerStore
        DVBDStore = coherence.backends.dvbd_storage:DVBDStore
        AppleTrailersStore = coherence.backends.appletrailers_storage:AppleTrailersStore
        LolcatsStore = coherence.backends.lolcats_storage:LolcatsStore
        TEDStore = coherence.backends.ted_storage:TEDStore
        BBCStore = coherence.backends.bbc_storage:BBCStore
        SWR3Store = coherence.backends.swr3_storage:SWR3Store
        Gallery2Store = coherence.backends.gallery2_storage:Gallery2Store
        YouTubeStore = coherence.backends.youtube_storage:YouTubeStore
        MiroGuideStore = coherence.backends.miroguide_storage:MiroGuideStore
        ITVStore = coherence.backends.itv_storage:ITVStore
        PicasaStore = coherence.backends.picasa_storage:PicasaStore
        TestStore = coherence.backends.test_storage:TestStore
        PlaylistStore = coherence.backends.playlist_storage:PlaylistStore
        YamjStore = coherence.backends.yamj_storage:YamjStore
        BansheeStore = coherence.backends.banshee_storage:BansheeStore
        FeedStore = coherence.backends.feed_storage:FeedStore

        [coherence.plugins.backend.media_renderer]
        ElisaPlayer = coherence.backends.elisa_renderer:ElisaPlayer
        GStreamerPlayer = coherence.backends.gstreamer_renderer:GStreamerPlayer
        BuzztardPlayer = coherence.backends.buzztard_control:BuzztardPlayer

        [coherence.plugins.backend.binary_light]
        SimpleLight = coherence.backends.light:SimpleLight

        [coherence.plugins.backend.dimmable_light]
        BetterLight = coherence.backends.light:BetterLight
    """


setup(**setup_args)