Internet radio browser GUI for music/video streams from various directory services.

⌈⌋ branch:  streamtuner2


Diff

Differences From Artifact [c3904fea2f]:

To Artifact [d044ffabbe]:



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
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
+






+
+
+
+
+
+
-
+

-
-
-
+
+
+
-
-

-
-
-
-
+
+
+
+






<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>Technical information</title>
<link rel="stylesheet" type="text/css" href="C.css">
<script type="text/javascript" src="highlight.pack.js"></script><script>
document.addEventListener('DOMContentLoaded', function() {
  var matches = document.querySelectorAll('code.syntax')
  for (var i = 0; i < matches.length; i++) {
    hljs.highlightBlock(matches[i]);
  }
<script type="text/javascript" src="jquery.js"></script><script type="text/javascript" src="jquery.syntax.js"></script><script type="text/javascript" src="yelp.js"></script>
}, false);</script><script type="text/javascript" src="yelp.js"></script>
</head>
<body><div class="page" role="main">
<div class="header"><div class="trails" role="navigation"><div class="trail">
<a class="trail" href="index.html" title="♪ Streamtuner2"><span class="media"><span class="media media-image"><img src="img/logo.png" class="media media-inline" alt="♪"></span></span> Streamtuner2 </a> › <a class="trail" href="index.html#footer" title="index#footer"></a> » </div></div></div>
<body><main><div class="page">
<header><div class="inner pagewide"><div class="trails" role="navigation"><div class="trail">
<a class="trail" href="index.html" title="♪ Streamtuner2"><span class="media"><span class="media media-image"><img src="img/logo.png" class="media media-inline" alt="♪"></span></span> Streamtuner2 </a> › <a class="trail" href="index.html#footer" title="index#footer"></a> » </div></div></div></header><article><div class="hgroup pagewide"><h1 class="title"><span class="title">Technical information</span></h1></div>
<div class="body">
<div class="hgroup"><h1 class="title"><span class="title">Technical information</span></h1></div>
<div class="region">
<div class="contents"></div>
<div id="dependecies" class="sect"><div class="inner">
<div class="hgroup"></div>
<div class="region"><div class="contents">
<div class="contents pagewide"></div>
<section id="dependecies"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="region"><div class="contents pagewide">
<div class="terms"><div class="inner">
<div class="title title-terms"><h3><span class="title">Dependencies</span></h3></div>
<div class="region"><dl class="terms">
<dd class="terms"><p class="p"><span class="link">Python 2.7 or 3.x</span></p></dd>
<dd class="terms"><p class="p"><span class="link">PyGtk or PyGI</span></p></dd>
<dd class="terms"><p class="p">Gtk2 or Gtk3</p></dd>
<dd class="terms"><p class="p"><span class="link">Requests/urllib3</span></p></dd>
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
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







-
+
-
-
-
+
+




+
+
+
+








-
-
-
+
+
+






-
-
+
+

-
-
-
+
+
+







-
+
-
-
-
+
+



+
+
+
+
-
-
+
+

-
-
-
+
+
+



-
+

-
+
-
-
-
+
<dd class="terms"><p class="p">Audacious/VLC or any other player</p></dd>
<dd class="terms"><p class="p">Streamripper or fIcy</p></dd>
<dd class="terms"><p class="p">youtube-dl</p></dd>
<dd class="terms"><p class="p">fonts: Symbola/Unifont for some UI parts</p></dd>
</dl></div>
</div></div>
</div></div>
</div></div>
</div></section><section id="config_files"><div class="inner">
<div id="config_files" class="sect"><div class="inner">
<div class="hgroup"><h2 class="title"><span class="title">Configuration files</span></h2></div>
<div class="region"><div class="contents">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Configuration files</span></h2></div>
<div class="region"><div class="contents pagewide">
<div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="file">/home/$USER/.config/streamtuner2/</span></dt>
<dd class="terms"><p class="p">Corresponds to the XDG_CONFIG_HOME setting. All ST2 configuration settings
            are contained within here and are in JSON format.</p></dd>
<dt class="terms"><span class="file">/home/$USER/.cache/streamtuner2/</span></dt>
<dd class="terms"><p class="p">Set from XDG_CACHE_HOME environment variable. Contains the
            channel cache/ and icons/. Symlinks in <span class="file">.config</span>
            remain for convenience.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/settings.json</span></dt>
<dd class="terms"><p class="p">General runtime options, plugin settings, and configured audio players.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/window.json</span></dt>
<dd class="terms"><p class="p">Saved window sizes, list widths.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/state.json</span></dt>
<dd class="terms"><p class="p">Last category in each channel tab.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/bookmarks.json</span></dt>
<dd class="terms"><p class="p">Is a separate cache file for your bookmarked/favourite radio stations.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/cache/***.json</span></dt>
<dd class="terms"><p class="p">JSON files for stream lists in each channel.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/icons/*.png</span></dt>
<dt class="terms"><span class="file">~/.cache/streamtuner2/cache/***.json</span></dt>
<dd class="terms"><p class="p">Channel cache, with station/stream lists in JSON files.</p></dd>
<dt class="terms"><span class="file">~/.cache/streamtuner2/icons/*.png</span></dt>
<dd class="terms"><p class="p">Holds downloaded favicons for station homepages.</p></dd>
<dt class="terms"><span class="file">~/.config/streamtuner2/plugins/*.py</span></dt>
<dd class="terms"><p class="p">Contain downloaded contrib/ plugins.</p></dd>
</dl></div></div></div>
<p class="p">On Windows the <span class="file">~/.config/</span> directory is called
	<span class="file">%APPDATA%</span> instead. The paths in there are equally
	structured.</p>
</div></div>
	structured. On Linux <span class="file">~/.cache/</span> is used to separate
        temporary from configuration data.</p>
</div></div>
<div id="install_dirs" class="sect"><div class="inner">
<div class="hgroup"><h2 class="title"><span class="title">Installation spread</span></h2></div>
<div class="region"><div class="contents"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
</div></section><section id="install_dirs"><div class="inner">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Installation spread</span></h2></div>
<div class="region"><div class="contents pagewide"><div class="terms"><div class="inner"><div class="region"><dl class="terms">
<dt class="terms"><span class="file">/usr/bin/streamtuner2</span></dt>
<dd class="terms"><p class="p">Associates the main binary.</p></dd>
<dt class="terms"><span class="file">/usr/share/streamtuner2/</span></dt>
<dd class="terms"><p class="p">Contains the individual ST2 python modules, and plugins in channels/. Also packages in pyquery/, but which is only used if the according modules aren't installed by the distribution.</p></dd>
<dt class="terms"><span class="file">/usr/share/doc/streamtuner2/</span></dt>
<dd class="terms"><p class="p">Contains the README, and Mallard/gnome-help/yelp files under help/.</p></dd>
</dl></div></div></div></div></div>
</div></div>
</div></section><section id="license"><div class="inner">
<div id="license" class="sect"><div class="inner">
<div class="hgroup"><h2 class="title"><span class="title">Public Domain</span></h2></div>
<div class="region"><div class="contents">
<div class="hgroup pagewide"><h2 class="title"><span class="title">Public Domain</span></h2></div>
<div class="region"><div class="contents pagewide">
<p class="p">The majority of code distributed with ST2 is placed into the Public Domain; meaning
        no licensing requirement and all code can be copied, modified
	and distributed unrestrictively.</p>
<div class="note" title="Note">
<svg width="24" height="24" version="1.1">
 <path class="yelp-svg-fill" d="m4 3h16c0.554 0 1 0.446 1 1v11h-6v6h-11c-0.554 0-1-0.446-1-1v-16c0-0.554 0.446-1 1-1z"></path>
 <path class="yelp-svg-fill" d="m17 16h4l-5 5v-4c0-0.554 0.446-1 1-1z"></path>
<div class="note" title="Note"><div class="inner"><div class="region"><div class="contents"><p class="p">The bundled kronos.py and requests/ library are NOT however.</p></div></div></div></div>
</div></div>
</svg><div class="inner"><div class="region"><div class="contents"><p class="p">The bundled kronos.py and requests/ library are NOT however.</p></div></div></div>
</div>
</div></div>
<div class="sect sect-links" role="navigation">
<div class="hgroup"></div>
<div class="contents"><div class="links guidelinks"><div class="inner">
</div></section><section class="links" role="navigation"><div class="inner">
<div class="hgroup pagewide"></div>
<div class="contents pagewide"><div class="links guidelinks"><div class="inner">
<div class="title"><h2><span class="title">More Information</span></h2></div>
<div class="region"><ul><li class="links "><a href="index.html#footer" title="index#footer"></a></li></ul></div>
</div></div></div>
</div>
</div></section>
</div>
<div class="clear"></div>
<div class="clear"></div></article><footer><div class="inner pagewide"></div></footer>
</div>
<div class="footer"></div>
</div></body>
</div></main></body>
</html>