Check-in [a7b0cd39a2]
Comment: | Remove remnant module .title/etc attributes, and .current category overwriting. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
a7b0cd39a295bb98bcd6873cf9743ad6 |
User & Date: | mario on 2015-04-17 21:14:32 |
Other Links: | manifest | tags |
2015-04-17
| ||
22:15 | Move PYZ shebang prefixing into `xpm` codebase. Simplifies local Makefile. Renamed PKG_PYZ into PKG_ZIP, and added extra target rules to Packfile. check-in: 9b93393d5e user: mario tags: trunk | |
21:14 | Remove remnant module .title/etc attributes, and .current category overwriting. check-in: a7b0cd39a2 user: mario tags: trunk | |
21:13 | Make .current a dynamic property for debugging. Skip load() update for category==None calls (doesn't happen with previous appstate). Undo default category setting. Now main.appstate_init values are used again. Don't position category liststore selection to #0. Enable "Format" station column. check-in: 99ee6c4ef4 user: mario tags: trunk | |
Modified PKG-INFO from [0051e89703] to [3db37af7c7].
1 2 3 4 5 6 7 8 9 10 | 1 2 3 4 5 6 7 8 9 10 11 12 | + + | Metadata-Version: 1.0 Name: streamtuner2 Version: 2.1.6 Summary: Streamtuner2 is an internet radio browser Home-page: http://fossil.include-once.org/streamtuner2/ Author: Mario Salzer Author-email: xmilky+st2@gmail.... License: Public Domain Description: Streamtuner2 lists radio directory services like Shoutcast, Xiph, Live365, MyOggRadio, Jamendo. It allows listening via any audio player, and recording of streams via streamripper. Platform: ALL Keywords: internet-radio, python, streaming, audio |
Modified Packfile from [1fe577eec6] to [3da3b35078].
| 1 2 3 4 5 6 7 8 9 10 11 12 | - - + + - - |
|
Modified README from [fe1c20a84a] to [3f020cac1d].
︙ | |||
30 31 32 33 34 35 36 37 38 39 40 41 42 43 | 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | + | installed per default. There's a few more Python packages required though: · python | python3 · pygtk | python-gi · python-requests · python-pyquery · python-lxml · python-imaging | pillow · python-keybinder (optional) · python-xdg (optional) Use your distro package manager with e.g.: sudo apt-get install python python-gtk2 python-xdg python-requests ... |
︙ | |||
55 56 57 58 59 60 61 | 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 | - + - - + + | manger, and are somewhat incomplete. (See "Dependencies" section.) PYZ --- Other users may wish to try the new Python archive (.PYZ) instead. Which |
︙ | |||
108 109 110 111 112 113 114 | 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | - - + + | Take note of any red error messages. If it's just one channel plugin that hangs at startup, you can alternatively disable it once: streamtuner2 -d xiph |
︙ | |||
150 151 152 153 154 155 156 157 158 159 160 161 162 163 | 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 | + + + | Or browse the contents fossil ui Alternatively there are git and svn exports. fossil export --svn Or via http://fossil.include-once.org/streamtuner2/git-fast-export You can send in patches, a fossil bundle, or set up your cloned repo publically per `fossil cgi`. Else just create an account on fossil.include-once.org, and send a mail, so I can elevate that account to developer/commit/push permissions quickly. (Fossil repos don't break. So dealing out sync access is a no-brainer.) |
︙ |
Modified channels/bookmarks.py from [8d733cb84a] to [d9e55cafbe].
︙ | |||
15 16 17 18 19 20 21 | 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 | - + - + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + | # Any bookmarked station will appear with a star ★ icon in other channels. # # Some feature extensions inject custom subcategories here. For example the # "search" feature adds its own result list here, as does the "timer" plugin. from config import * |
︙ |
Modified channels/configwin.py from [7180117d4f] to [913bf48a5c].
︙ | |||
21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | + + + | # Settings window # # Interacts with main.* window (gtkBuilder widgets) # and conf.* dictionary. # class configwin (AuxiliaryWindow): # control flags meta = plugin_meta() # Display win_config, pre-fill text fields from global conf. object def open(self, widget): if self.first_open: self.add_plugins() self.first_open = 0 self.win_config.resize(565, 625) |
︙ |
Modified channels/exportcat.py from [e085c85a05] to [2dd3da6db4].
︙ | |||
27 28 29 30 31 32 33 | 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | - | import action import re # provides another export window, and custom file generation - does not use action.save() class exportcat(): |
︙ |
Modified channels/file.py from [76d2506448] to [62f947846d].
︙ | |||
50 51 52 53 54 55 56 | 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | - + - - - + - - | # file browser / mp3 directory listings class file (ChannelPlugin): |
︙ |
Modified channels/global_key.py from [6c7e3b19fe] to [d213cc695c].
︙ | |||
25 26 27 28 29 30 31 32 | 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | + - | import random # register a key class global_key(object): # control attributes module = "global_key" |
︙ |
Modified channels/history.py from [7a53bd0585] to [140c84d35b].
︙ | |||
15 16 17 18 19 20 21 | 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | - + - - | from config import * from channels import * class history: |
︙ |
Modified channels/icast.py from [202f901cdd] to [e1a9b5a7b8].
︙ | |||
37 38 39 40 41 42 43 | 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | - + - - - | from channels import * import ahttp as http # Surfmusik sharing site class icast (ChannelPlugin): |
︙ |
Modified channels/internet_radio.py from [c485fff9cd] to [3b80b93221].
︙ | |||
34 35 36 37 38 39 40 | 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | - + - - - - - - - - | # streams and gui class internet_radio (ChannelPlugin): |
︙ |
Modified channels/itunes.py from [53ab5aa446] to [4b51b14809].
︙ | |||
36 37 38 39 40 41 42 | 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | - + - - - - + + + | from channels import * import ahttp as http # Surfmusik sharing site class itunes (ChannelPlugin): |
︙ | |||
73 74 75 76 77 78 79 | 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | - - - - | "Sports Radio", "Top 40", "'70s Retro", "'80s Flashback", "'90s Hits", ] |
︙ |
Modified channels/jamendo.py from [833b488235] to [55defe1856].
︙ | |||
50 51 52 53 54 55 56 | 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | - + - - - - - - - | # [+] http://api.jamendo.com/get2/stream/track/xspf/?playlist_id=171574&n=all&order=random # [+] http://api.jamendo.com/get2/stream/track/xspf/?album_id=%s&streamencoding=ogg2&n=all # # Seem to resolve to OGG Vorbis each. # class jamendo (ChannelPlugin): |
︙ |
Modified channels/links.py from [c05f5fe1bb] to [a70b7e1793].
︙ | |||
20 21 22 23 24 25 26 | 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | - - | # hooks into main.bookmarks class links (object): # plugin info module = "links" |
︙ |
Modified channels/live365.py from [e2484ab83b] to [7936759236].
︙ | |||
49 50 51 52 53 54 55 | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | - + - - - - - - | # # And using a HTML5 player direct URL now: # # /cgi-bin/play.pls?stationid=%s&direct=1&file=%s.pls # class live365(ChannelPlugin): |
︙ |
Modified channels/modarchive.py from [499e517889] to [b5a34220a3].
︙ | |||
36 37 38 39 40 41 42 | 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | - - + + - - + | # # Modarchive actually provides an API # http://modarchive.org/index.php?xml-api # (If only it wasn't XML based..) # class modarchive (ChannelPlugin): |
︙ |
Modified channels/myoggradio.py from [b090a1507b] to [cce93c4126].
︙ | |||
39 40 41 42 43 44 45 | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | - - - + + + - - - - - - | import copy from uikit import gtk # open source radio sharing stie class myoggradio(ChannelPlugin): |
︙ |
Modified channels/punkcast.py from [eea2622232] to [946f14f97b].
︙ | |||
30 31 32 33 34 35 36 | 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | - - - - - - - | from channels import * from config import __print__, dbg # basic.ch broadcast archive class punkcast (ChannelPlugin): |
︙ |
Modified channels/radiobrowser.py from [efa310538d] to [eb4063d5ff].
︙ | |||
54 55 56 57 58 59 60 | 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | - + - - + - - | # {"id":63,"name": "Energy Sachsen", "url":"http://www.energyradio.de/sachsen", # "homepage":"http://www.energy.de", "favicon":"http://www.energy.de/favicon.ico", # "tags":"Pop Dance RnB Techno","country":"Germany","subcountry":"","language":"German", # "votes":4,"negativevotes":10}, # class radiobrowser (ChannelPlugin): |
︙ |
Modified channels/shoutcast.py from [e812eed775] to [1fad5ce44e].
︙ | |||
46 47 48 49 50 51 52 | 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | - + - - + - - - | # POST http://www.shoutcast.com/Home/BrowseByGenre {genrename: Pop} # # We do need a catmap now too, but that's easy to aquire and will be kept # within the cache dirs. # class shoutcast(channels.ChannelPlugin): |
︙ |
Modified channels/surfmusik.py from [cab3938c1e] to [a963360d8b].
︙ | |||
38 39 40 41 42 43 44 | 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 | - - + - - + - + | from channels import * # Surfmusik sharing site class surfmusik (ChannelPlugin): |
︙ |
Modified channels/timer.py from [0abfc97e9b] to [f6d2128cb5].
︙ | |||
32 33 34 35 36 37 38 | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | - | # timed events (play/record) within bookmarks tab class timer: # plugin info module = "timer" |
︙ |
Modified channels/tunein.py from [6f7da7eac6] to [9721a1e7b7].
︙ | |||
31 32 33 34 35 36 37 | 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | - + - - - | import ahttp as http from xml.etree import ElementTree # TuneIn radio directory class tunein (ChannelPlugin): |
︙ |
Modified channels/ubuntuusers.py from [2d23392ed6] to [8e76324f70].
︙ | |||
27 28 29 30 31 32 33 | 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | - | import ahttp # UU Wiki radio list class ubuntuusers (ChannelPlugin): # description |
︙ |
Modified channels/xiph.py from [87b6bef7f2] to [df3676cdef].
︙ | |||
52 53 54 55 56 57 58 | 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | - + - - - - - + + - - - | # Xiph won't be updating the directory for another while. The original feature # request is now further delayed as summer of code project: # · https://trac.xiph.org/ticket/1958 # · https://wiki.xiph.org/Summer_of_Code_2015#Stream_directory_API # class xiph (ChannelPlugin): |
︙ |
Modified channels/youtube.py from [0f1183b76b] to [0b836cb39e].
︙ | |||
62 63 64 65 66 67 68 | 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | - + - - - - + | # # videoCat Music id= 10 # guideCat Music id= GCTXVzaWM channelid= UCBR8-60-B28hp2BmDPdntcQ # topicId Music mid= /m/0kpv0g # class youtube (ChannelPlugin): |
︙ | |||
288 289 290 291 292 293 294 | 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 | - + - + | # for /playlistItems elif "resourceId" in row["snippet"]: id = row["snippet"]["resourceId"]["videoId"] data.update(dict( url = "http://youtube.com/v/" + id, homepage = "http://youtu.be/" + id + ("?wadsworth=1" if conf.youtube_wadsworth else ""), |