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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
|
\documentclass[english,smaller,t]{beamer}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[right]{eurosym}
\usepackage{lmodern}
\newcommand{\noun}[1]{\textsc{#1}}
\usepackage[english]{babel}
\usepackage[babel]{csquotes}
\MakeAutoQuote{»}{«}
\pdfimageresolution150
\def\EUR{\,\euro}
%\usepackage{beamerthemesplit}
%\usetheme{Warsaw}
%\usetheme{Berkeley}
%\usetheme{Marburg}
%\usetheme{Goettingen}
%\usetheme{AnnArbor}
\usetheme{PaloAlto}
%\usecolortheme{beaver}
%\usecolortheme{dolphin}
\usecolortheme{wolverine}
\beamertemplatenumberedsquaresectiontoc
\beamertemplatetransparentcovered
\title[Surf Kiosk Display]{Surf Kiosk Display HowTo (v0.0.5)}
\institute[Debian Edu]{Debian Edu Dev Team}
\author[Debian Edu \\ Dev Team]{Mike Gabriel \\ Daniel Teichmann \\ Benjamin Schlüter \\ and others}
\date{Mar 2017}
\begin{document}
\frame{\titlepage}
%\frame{\tableofcontents}
\section[About]{About Surf Kiosk Display}
\frame[label=about]
{
\frametitle{About Surf Kiosk Display}
\framesubtitle{What can I use Surf Kiosk Display for?}
\begin{beamerboxesrounded}[shadow=true]{Setup WWW Presentation Screens or Info Terminals}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->A \textbf{Surf Kiosk Display} can be used to \textbf{provide controlled public internet access} while running in KIOSK mode \textbf{for passerbys and visitors}
\item<alert@+| uncover@+->At schools for example, it can be used to enable \textbf{students and visitors} to search the school homepage or research something for \textbf{classes}
\item<alert@+| uncover@+->At theaters or other venues, you can provide access to \textbf{a pre-configured set of websites} to e.g. make the \textbf{schedule for the next show} available
\item<alert@+| uncover@+->Surf Kiosk Display has been \textbf{designed for easy and secure access} to websites and web based information
\end{itemize}
}
\end{beamerboxesrounded}
}
\frame[label=extend]
{
\frametitle{About Surf Kiosk Display}
\framesubtitle{How can I extend Surf Kiosk Display?}
\begin{beamerboxesrounded}[shadow=true]{Combine Surf Kiosk Display with other FLOSS Components}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->Combine Surf Kiosk Display \textbf{with a display manager} (such as NoDM or LightDM) \textbf{that allows passwordless user login}
\item<alert@+| uncover@+->Combine it with a \textbf{PXE booted diskless system} such as LTSP for \textbf{deploying a farm of info displays} at your location
\item<alert@+| uncover@+->Combine with Xephyr (a \textbf{nested Xserver}) \textbf{while testing / preparing your setup}
\end{itemize}
}
\end{beamerboxesrounded}
}
\frame[label=howitworks]
{
\frametitle{About Surf Kiosk Display}
\framesubtitle{How does it work?}
\begin{beamerboxesrounded}[shadow=true]{Surf Kiosk Display runs as an X11 session manager}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->\textbf{Surf Kiosk Display} registers itself as an available \textbf{X session manager}. Make it the default (or the only session manager installed)
\item<alert@+| uncover@+->Open it with a \textbf{WWW\_URI} as start page. Combine it with a local \textbf{\texttt{tinyproxy}} to filter specific domains or URLs.
\item<alert@+| uncover@+->Surf Kiosk Display supports \textbf{host-specific configuration parameters}; you can run \textbf{various displays} presenting different WWW content \textbf{based on the same configuration} set
\end{itemize}
}
\end{beamerboxesrounded}
}
\section[Installation]{Installation}
\frame[label=debinstall]
{
\frametitle{Installation\,\ldots}
\framesubtitle{\ldots\,on a standalone Debian-like system.}
\begin{beamerboxesrounded}[shadow=true]{Installation: Debian GNU/Linux (and alike)}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->\textbf{Install a minimal} Debian (or derivative) \textbf{system without X11} / Graphical Login Manager
\item<alert@+| uncover@+->Install Surf Kiosk Display and NoDM: \\ \small \texttt{apt-get install surf-display nodm}
\item<alert@+| uncover@+->\textbf{Edit \texttt{/etc/default/nodm}}, set \texttt{NODM\_ENABLED=true} and \texttt{NODM\_USER=surf-display}. Create this user as a system user.
\item<alert@+| uncover@+->\textbf{Check that \texttt{surf-display} is the default X session manager}: \\ \small \texttt{update-alternatives \hbox{-}\hbox{-}config x-session-manager}
\item<alert@+| uncover@+->\textbf{Start NoDM}: \small \texttt{sudo invoke-rc.d nodm start}
\end{itemize}
}
\end{beamerboxesrounded}
}
\frame[label=rpminstall]
{
\frametitle{Installation\,\ldots}
\framesubtitle{\ldots\,on a standalone RPM-based system.}
\begin{beamerboxesrounded}[shadow=true]{Installation on Fedora, openSUSE or similar}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->The \textbf{Surf Kiosk Display} tool \textbf{has not been packaged for the RPM world}
\item<alert@+| uncover@+->\textbf{Please} contact distribution maintainers and \textbf{request packaging}
\end{itemize}
}
\end{beamerboxesrounded}
}
\frame[label=ltspchroot]
{
\frametitle{Installation\,\ldots}
\framesubtitle{\ldots\,in an LTSP chroot.}
\begin{beamerboxesrounded}[shadow=true]{Install LTSP based info screen farm running Surf Kiosk Display}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->Create a \textbf{minimal LTSP chroot}, uninstall or \textbf{disable the LTSP Display Manager} (aka LDM)
\item<alert@+| uncover@+->\textbf{Make} the LTSP \textbf{chroot bootable over PXE}: the system should boot into a text-based logon screen
\item<alert@+| uncover@+->All LTSP \textbf{client systems must have a dedicated hostnames} after PXE boot
\item<alert@+| uncover@+->Apply \textbf{installation steps for standalone hosts to} the LTSP \textbf{chroot}
\item<alert@+| uncover@+->\textbf{Set host-specific parameters} like standard WWW URI, display resolution, etc. via the \texttt{\$\{DISPLAYS[@]\}} associative array, \textbf{for examples see:} \\ \small \texttt{/etc/default/surf-display}
\end{itemize}
}
\end{beamerboxesrounded}
}
\section[Configuration]{Configuration}
\frame[label=systemconfig]
{
\frametitle{Configuration\,\ldots}
\framesubtitle{\ldots system-wide}
\begin{beamerboxesrounded}[shadow=true]{Configure Surf Kiosk Display -- system-wide}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->The \textbf{system-wide configuration} of Surf Kiosk Display is done \textbf{in \texttt{/etc/default/surf-display}}
\item<alert@+| uncover@+->You can \textbf{adapt various parameters}:
\begin{itemize}
\item<alert@+| uncover@+->\textbf{Basic options}:Pulseaudio support, uncluttering of the pointer device, screensaver options, slide transition options, etc.
\item<alert@+| uncover@+->\textbf{Default parameters}: Specific WWW URI, display resolution
\end{itemize}
\end{itemize}
}
\end{beamerboxesrounded}
}
\frame[label=userconfig]
{
\frametitle{Configuration\,\ldots}
\framesubtitle{\ldots on a per-user basis}
\begin{beamerboxesrounded}[shadow=true]{Configure Surf Kiosk Display -- on a per-user basis}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->The \textbf{per-user configuration} of Surf Kiosk Display is done \textbf{in \texttt{\$HOME/.surf-display/config}}
\item<alert@+| uncover@+->All \textbf{system-wide parameters can be overriden by the user}
\end{itemize}
}
\end{beamerboxesrounded}
}
\section[Testing]{Testing your Setup}
\frame[label=testing]
{
\frametitle{Testing Surf Kiosk Display\,\ldots}
\framesubtitle{\ldots using a nested Xserver}
\begin{beamerboxesrounded}[shadow=true]{Testing your Setup}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->\textbf{Install Surf Kiosk Display} locally \textbf{on your PC or notebook}; you can launch Surf Kiosk Display under your normal user account
\item<alert@+| uncover@+->\textbf{Use FAKE\_HOSTNAME variable to simulate a specifc display host} when testing infoscreen farm setups
\item<alert@+| uncover@+->Do a \textbf{graphical login with your normal user} account; when logged in, open two Terminal windows
\item<alert@+| uncover@+->Terminal 1: \textbf{Launch} a nested Xserver (like \textbf{Xephyr}): \\ \small \texttt{Xephyr -screen 1024x768 -ac :1}
\item<alert@+| uncover@+->Terminal 2, also under your normal user account: \\ \small \texttt{export DISPLAY=:1 \\ FAKE\_HOSTNAME=<display-host> surf-display}
\end{itemize}
}
\end{beamerboxesrounded}
}
\section[Authors]{Authors and Contributors}
\frame[label=label]
{
\frametitle{Authors, Contributors \& Sponsors}
\begin{beamerboxesrounded}[shadow=true]{Authors \& Contributors}
\parbox[t][2.4in][t]{3.5in}{
\begin{itemize}
\item<alert@+| uncover@+->Authors (and copyright holders): \\ \ \ \ \ Mike Gabriel <mike.gabriel@das-netzwerkteam.de> \\ \ \ \ \ Daniel Teichmann <daniel.letsplay007@gmail.com> \\ \ \ \ \ Benjamin Schlüter <bschlueter@posteo.de>
% \item<alert@+| uncover@+->Other contributors: \\ none, so far\,\ldots
\item<alert@+| uncover@+->Development sponsored by: \\ \ \ \ \ Katharineum zu Lübeck (Germany) \\ \ \ \ \ Fritz-Reuter-Schule Eckernförde (Germany) \\ \ \ \ \ Ernst-Barlach-Gymnasium Kiel (Germany)
\item<alert@+| uncover@+->Upstream code: \\ \ \ \ \ \scriptsize \url{https://code.it-zukunft-schule.de/cgit/surf-display/}
\end{itemize}
}
\end{beamerboxesrounded}
}
\end{document}
|