docs/gimme-shellter

annotate GimmeShellter.tex @ 4:3f0be9972d35

rewrote filesizes; added more content
author meillo@marmaro.de
date Thu, 06 Dec 2007 14:44:09 +0100
parents 867ffbcccf28
children 52725a5ea7d9
rev   line source
meillo@1 1 % @file
meillo@1 2 % @brief Vortrag: Mein Umzug in die Shell
meillo@1 3 % @author markus schnalke <meillo@marmaro.de>
meillo@1 4 % @since 2007-09-25
meillo@1 5
meillo@1 6
meillo@1 7 \documentclass{beamer}
meillo@1 8
meillo@1 9 \usepackage[utf8]{inputenc}
meillo@1 10 \usepackage{ngerman}
meillo@1 11 \usepackage{graphicx}
meillo@1 12 \usepackage[automark]{scrpage2}
meillo@1 13
meillo@1 14 \title{Gimme Shell(ter)}
meillo@1 15 \author{markus schnalke}
meillo@1 16 \date{}
meillo@1 17
meillo@1 18 \begin{document}
meillo@1 19
meillo@1 20
meillo@1 21 \frame{
meillo@1 22 \vspace{8em}
meillo@1 23 \begin{center}
meillo@2 24 {\huge Gimme Shell}{\tiny (ter)}
meillo@1 25
meillo@2 26 {Mein Umzug in die Shell}
meillo@1 27
meillo@1 28 \vspace{6em}
meillo@1 29
meillo@1 30 { \tiny
meillo@2 31 markus schnalke \textless{}meillo@marmaro.de\textgreater{}
meillo@1 32 }
meillo@1 33
meillo@1 34
meillo@1 35 \end{center}
meillo@1 36 }
meillo@1 37
meillo@1 38
meillo@1 39
meillo@1 40
meillo@1 41
meillo@1 42 \section{Vorwort}
meillo@1 43 \frame{ \frametitle{Vorwort}
meillo@1 44
meillo@1 45 \begin{block}{}
meillo@1 46 Dass meine Zukunft in der Shell stattfinden soll, war mir schon lange klar.
meillo@1 47 \end{block}
meillo@1 48
meillo@1 49 \begin{block}{}
meillo@1 50 Bis ich jedoch soweit war, war es ein langer Weg.
meillo@1 51 \end{block}
meillo@1 52
meillo@1 53 \begin{block}{}
meillo@1 54 Und keinesfalls möchte ich behaupten, dass ich am Ziel wäre, denn es gibt kein Ziel. Es gibt nur vorwärts.
meillo@1 55 \end{block}
meillo@1 56
meillo@1 57 }
meillo@1 58
meillo@1 59
meillo@1 60
meillo@2 61 \section{Ziele}
meillo@2 62 \frame{ \frametitle{Ziele}
meillo@2 63 Dieser Vortrag soll zeigen, dass man auch ohne X komfortabel arbeiten kann.
meillo@1 64
meillo@1 65 \vspace{1em}
meillo@4 66 \pause
meillo@1 67
meillo@4 68 Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben.
meillo@4 69
meillo@4 70 \vspace{1em}
meillo@4 71 \pause
meillo@4 72
meillo@2 73 Ich möchte motivieren, mal Urlaub in der Shell zu machen.
meillo@1 74
meillo@1 75 \vspace{1em}
meillo@4 76 \pause
meillo@1 77
meillo@4 78 Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind.
meillo@1 79
meillo@1 80 \vspace{1em}
meillo@4 81 \pause
meillo@1 82
meillo@2 83 Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen.
meillo@1 84 }
meillo@1 85
meillo@1 86
meillo@1 87
meillo@1 88
meillo@1 89
meillo@1 90 % \centerline{ \includegraphics[width=20em]{pics/observer_big.png} }
meillo@1 91
meillo@1 92
meillo@1 93
meillo@1 94 \section{Motivation}
meillo@1 95 \frame{ \frametitle{Motivation}
meillo@1 96 \begin{itemize}
meillo@1 97 \item Weil es cool ist {\scriptsize \textit{*hehe*}}
meillo@1 98 \end{itemize}
meillo@1 99 \pause
meillo@1 100 \begin{itemize}
meillo@1 101 \item effektiveres Arbeiten möglich
meillo@1 102 \item konfigurierbarer
meillo@1 103 \item ressourcenschonender
meillo@1 104 \end{itemize}
meillo@1 105 \pause
meillo@1 106 \begin{itemize}
meillo@1 107 \item Vorteile von \texttt{screen}
meillo@1 108 \item \texttt{ssh} von überall
meillo@1 109 \item auch ohne \texttt{X} daheim
meillo@1 110 \end{itemize}
meillo@1 111
meillo@1 112 \pause
meillo@1 113 \begin{block}{}
meillo@1 114 \textbf{Konzentration auf das Wesentliche!}
meillo@1 115
meillo@1 116 Näher an der UNIX-Philosophie
meillo@1 117 \end{block}
meillo@1 118 }
meillo@1 119
meillo@1 120
meillo@1 121
meillo@1 122
meillo@1 123
meillo@1 124 \section{Die UNIX-Philosophie}
meillo@1 125 \frame{ \frametitle{Die UNIX-Philosophie}
meillo@1 126 \begin{block}{}
meillo@2 127 DER Grund UNIX$^{\dagger}$ zu verwenden
meillo@1 128
meillo@1 129 ``Pro UNIX'' statt ``Anti Windows''
meillo@1 130 \end{block}
meillo@1 131
meillo@1 132 \pause
meillo@1 133
meillo@1 134 \begin{block}{}
meillo@1 135 Welche wirklichen Vorteile bietet Gnome gegenüber der Windows-Oberfläche?
meillo@1 136
meillo@1 137 \vspace{0.3em}
meillo@1 138
meillo@1 139 Richtig, keine!
meillo@1 140
meillo@1 141 \vspace{0.3em}
meillo@1 142
meillo@2 143 An der Basis seid ihr zu UNIX gewechselt, weshalb denn nicht auch an der Oberfläche? \\
meillo@2 144 \pause
meillo@3 145 Oder: \textit{An der Oberfläche seid ihr zu UNIX gewechselt, weshalb denn nicht auch an der Basis?}
meillo@1 146 \end{block}
meillo@1 147
meillo@1 148 \pause
meillo@1 149
meillo@1 150 \begin{block}{}
meillo@1 151 UNIX ist mehr als Ubuntu!
meillo@1 152
meillo@2 153 \textbf{Um UNIX zu verstehen, muss man seine Philosophie kennen!}
meillo@1 154 \end{block}
meillo@1 155 }
meillo@1 156
meillo@1 157
meillo@1 158
meillo@1 159 \frame{ \frametitle{Die UNIX-Philosophie}
meillo@1 160 \begin{itemize}
meillo@3 161 \item klein ist schön
meillo@3 162 \item genau eine Sache gut machen
meillo@3 163 \item früher Prototyp
meillo@3 164 \item Portabilität vor Effizienz
meillo@3 165 \item Daten in ASCII-Files speichern
meillo@3 166 \item Code borgen
meillo@3 167 \item alles automatisieren
meillo@3 168 \item CLI statt GUI
meillo@3 169 \item Programme als Filter
meillo@1 170 \end{itemize}
meillo@2 171
meillo@2 172 \pause
meillo@2 173
meillo@2 174 \begin{block}{siehe auch}
meillo@2 175 \begin{itemize}
meillo@2 176 \item
meillo@4 177 \item http://www.cat-v.org/
meillo@2 178 \item Rob Pike
meillo@2 179 \end{itemize}
meillo@2 180 \end{block}
meillo@1 181 }
meillo@1 182
meillo@1 183
meillo@1 184
meillo@1 185
meillo@1 186 \section{GUI vs. CLI}
meillo@1 187 \frame{ \frametitle{GUI vs. CLI}
meillo@1 188 \begin{block}{GUI-Programme \dots}
meillo@1 189 \begin{itemize}
meillo@1 190 \item haben hässlichen Code
meillo@1 191 \item sind aufgebläht
meillo@1 192 \item schränken ein
meillo@1 193 \item laufen nur mit X
meillo@1 194 \end{itemize}
meillo@1 195 \end{block}
meillo@1 196
meillo@1 197 \pause
meillo@1 198
meillo@1 199 \begin{block}{CLI-Programme \dots}
meillo@1 200 \begin{itemize}
meillo@1 201 \item sind kleiner
meillo@1 202 \item sind besser konfigurierbar
meillo@1 203 \item sind älter und ausgereifter
meillo@1 204 \item sind portabler (und damit auch öfter portiert)
meillo@1 205 \end{itemize}
meillo@1 206 \end{block}
meillo@1 207
meillo@2 208 \pause
meillo@2 209
meillo@2 210 { \scriptsize (Natürlich gilt das nicht zwangsläufig, die Wahrscheinlichkeit ist aber groß.) }
meillo@1 211 }
meillo@1 212
meillo@1 213
meillo@4 214 \subsection{CLI und CURSES}
meillo@4 215 \frame{ \frametitle{CLI und CURSES}
meillo@4 216 \begin{block}{CLI --- CURSES --- GUI}
meillo@4 217 \begin{itemize}
meillo@4 218 \item CLI: \texttt{cat cli.txt | mail -s CLI lugu}
meillo@4 219 \item CURSES: \texttt{mutt}
meillo@4 220 \item GUI: \texttt{Menu \textgreater{} Applications \textgreater{} Evolution}
meillo@4 221 \end{itemize}
meillo@4 222 \end{block}
meillo@1 223
meillo@4 224 \begin{block}{CURSES}
meillo@4 225 \begin{itemize}
meillo@4 226 \item CURSES ist \emph{nicht} CLI
meillo@4 227 \item sondern Text User Interface
meillo@4 228 \item Ich bin hier nicht immer ganz konsequent.
meillo@4 229 \end{itemize}
meillo@4 230 \end{block}
meillo@4 231 }
meillo@4 232
meillo@4 233
meillo@4 234
meillo@4 235 \subsection{GUIs als Frontend}
meillo@1 236 \frame{ \frametitle{GUIs als Frontend}
meillo@1 237
meillo@1 238 \begin{block}{}
meillo@1 239 GUIs sollen laut UNIX-Philosophie nur Frontends sein.
meillo@1 240 \end{block}
meillo@1 241
meillo@2 242 \pause
meillo@2 243
meillo@1 244 \begin{block}{Beispiele}
meillo@1 245 \begin{itemize}
meillo@1 246 \item Programm: \texttt{nmap}
meillo@1 247 \item Frontends: \texttt{nmapfe} (GTK), \texttt{knmap} (Qt)
meillo@1 248 \end{itemize}
meillo@1 249
meillo@1 250 \begin{itemize}
meillo@1 251 \item Programm: \texttt{libparted}
meillo@1 252 \item Frontends: \texttt{parted} (curses), \texttt{gparted} (GTK), \texttt{qtparted} (Qt)
meillo@1 253 \end{itemize}
meillo@1 254 \end{block}
meillo@1 255 }
meillo@1 256
meillo@1 257
meillo@1 258
meillo@4 259 \subsection{Größe von User-Interfaces}
meillo@1 260 \frame{ \frametitle{Größe von User-Interfaces}
meillo@1 261
meillo@1 262
meillo@1 263 { \scriptsize
meillo@1 264 \begin{itemize}
meillo@1 265 \item Package: \textbf{libparted1.7-1}
meillo@1 266 \item Size: 198,554
meillo@1 267 \item Depends: libc6 ($>$= 2.3.6-6), libuuid1
meillo@1 268 \end{itemize}
meillo@1 269 }
meillo@1 270
meillo@1 271 \pause
meillo@1 272
meillo@1 273
meillo@1 274 { \scriptsize
meillo@1 275 \begin{itemize}
meillo@1 276 \item Package: \textbf{parted}
meillo@1 277 \item Size: 56,268
meillo@1 278 \item Depends: libc6 ($>$= 2.3.6-6), libncurses5 ($>$= 5.4-5), libparted1.7-1 ($>$= 1.7.1-1), libreadline5 ($>$= 5.2)
meillo@1 279 \end{itemize}
meillo@1 280 }
meillo@1 281
meillo@1 282 \pause
meillo@1 283
meillo@1 284 { \scriptsize
meillo@1 285 \begin{itemize}
meillo@1 286 \item Package: \textbf{gparted}
meillo@1 287 \item Size: 452,616
meillo@1 288 \item Depends: libatk1.0-0 ($>$= 1.12.2), libc6 ($>$= 2.3.6-6), libcairo2 ($>$= 1.2.4), libfontconfig1 ($>$= 2.3.0), libfreetype6 ($>$= 2.2), libgcc1 ($>$= 1:4.1.1-12), libglib2.0-0 ($>$= 2.10.0), libglibmm-2.4-1c2a, libgtk2.0-0 ($>$= 2.8.0), libgtkmm-2.4-1c2a, libice6 ($>$= 1:1.0.0), libpango1.0-0 ($>$= 1.12.3), libparted1.7-1 ($>$= 1.7.1-1), libpng12-0 ($>$= 1.2.8rel), libsigc++-2.0-0c2a ($>$= 2.0.2), libsm6, libstdc++6 ($>$= 4.1.1-12), libuuid1, libx11-6, libxcursor1 ($>$$>$ 1.1.2), libxext6, libxfixes3, libxi6, libxinerama1, libxrandr2, libxrender1, zlib1g ($>$= 1:1.2.1), gksu, menu
meillo@1 289 \end{itemize}
meillo@1 290 }
meillo@1 291 }
meillo@1 292
meillo@1 293
meillo@1 294
meillo@1 295
meillo@4 296 \section{Programme vergleichen}
meillo@4 297 \frame{ \frametitle{Programme vergleichen}
meillo@4 298 \begin{block}{Weshalb die Programmgröße beachten?}
meillo@3 299 \begin{itemize}
meillo@3 300 \item Kleine Programme sind: flexibler, portabler, einfacher zu verstehen, bugfreier (vgl. UNIX-Philosophie)
meillo@4 301 \item Die Paketgröße gibt indirekt Aufschluss auf den Codeumfang
meillo@3 302 \item Der Codeumfang im Verhältnis zu den Features wirft Überlegungen zur Qualität des Codes auf
meillo@4 303 \end{itemize}
meillo@4 304 \end{block}
meillo@4 305
meillo@4 306 \begin{block}{}
meillo@4 307 Dies ist nur als Anhaltspunkt zu sehen!
meillo@4 308 \end{block}
meillo@4 309 }
meillo@4 310
meillo@4 311
meillo@4 312
meillo@4 313 \subsection{Messmethoden}
meillo@4 314 \frame{ \frametitle{Messmethoden}
meillo@4 315 \begin{block}{Paketgröße}
meillo@4 316 \begin{itemize}
meillo@4 317 \item \texttt{apt-cache show \textless{}paket\textgreater{} | grep \^{}Size}
meillo@4 318 \item einfach auszulesen
meillo@4 319 \item Problem: Dokumentation ist oft auch im Paket enthalten
meillo@3 320 \end{itemize}
meillo@3 321 \end{block}
meillo@3 322
meillo@3 323 \pause
meillo@3 324
meillo@4 325 \begin{block}{Source-Filesizes}
meillo@3 326 \begin{itemize}
meillo@4 327 \item \texttt{du -c *.[ch]} (je nach Sprache)
meillo@4 328 \item Quellcode muss vorliegen (\texttt{apt-get source})
meillo@4 329 \item Problem: \texttt{\{} vs. \texttt{begin}
meillo@4 330 \end{itemize}
meillo@4 331 \end{block}
meillo@4 332
meillo@4 333 \pause
meillo@4 334
meillo@4 335 \begin{block}{Source Lines Of Code}
meillo@4 336 \begin{itemize}
meillo@4 337 \item \texttt{sloccount} von David A. Wheeler
meillo@4 338 \item Sprachen werden ``gleicher bewertet''
meillo@3 339 \end{itemize}
meillo@3 340 \end{block}
meillo@3 341 }
meillo@3 342
meillo@3 343
meillo@3 344
meillo@1 345
meillo@4 346
meillo@4 347
meillo@1 348 \section{Mein Weg}
meillo@1 349 \frame{ \frametitle{Mein Weg}
meillo@1 350 \begin{block}{2005}
meillo@1 351 Fluxbox, Firefox, Kate, Sylpheed Claws, gFTP, Gaim, vlc, k3b, gThumb, OOo, Grip, XMMS, \dots
meillo@1 352 \end{block}
meillo@1 353
meillo@1 354 \pause
meillo@1 355
meillo@1 356 \begin{block}{2006}
meillo@4 357 Auslöseer:\\ Artikel ``Mein Umzug in die Shell'' von Gregor Oelze auf linuxlog
meillo@1 358 \end{block}
meillo@1 359
meillo@1 360 \pause
meillo@1 361
meillo@1 362 \begin{block}{2007}
meillo@1 363 dwm + \textit{screen}, Iceweasel + \textit{w3m}, \textit{vim}, \textit{mutt}, \textit{ncftp}, \textit{weechat + bitlbee}, mplayer, \textit{wodim + growisofs}, gqview + qiv, OOo, \textit{jack}, \textit{cplay}, \dots
meillo@1 364 \end{block}
meillo@2 365
meillo@2 366 \pause
meillo@2 367
meillo@2 368 \begin{block}{}
meillo@2 369 {\scriptsize Nachzulesen auf http://marmaro.de/lue }
meillo@2 370 \end{block}
meillo@1 371 }
meillo@1 372
meillo@1 373
meillo@2 374 \section{Programme}
meillo@2 375
meillo@2 376 \subsection{Editor}
meillo@2 377 \frame{ \frametitle{Editor}
meillo@3 378 \begin{block}{vi(m)}
meillo@2 379 \begin{itemize}
meillo@2 380 \item Der Editor schlechthin
meillo@2 381 \item Auf jedem UNIX-System vorhanden
meillo@4 382 \item meist in Form eines Klons
meillo@3 383 \item darf ruhig angepasst werden: \texttt{.vimrc}
meillo@3 384 \item Die meisten User verwenden viel zu wenige seiner Möglichkeiten!
meillo@2 385 \end{itemize}
meillo@2 386 \end{block}
meillo@2 387
meillo@2 388 \pause
meillo@2 389
meillo@2 390 \begin{block}{Alternativen}
meillo@2 391 \begin{itemize}
meillo@2 392 \item \texttt{vim} (7350k) Der bekannteste (und beste?) vi-Klon.
meillo@2 393 \item \texttt{nvi} (290k) Reimplementierung des orginal vi. Weniger Features; u.a. kein Syntax-Highlighting.
meillo@4 394 \item \texttt{emacs} (5.89e37) \dots
meillo@2 395 \end{itemize}
meillo@2 396 \end{block}
meillo@2 397 }
meillo@2 398
meillo@2 399
meillo@2 400
meillo@2 401 \subsection{Mailclient}
meillo@2 402 \frame{ \frametitle{Mailclient}
meillo@2 403 \begin{block}{mutt}
meillo@2 404 \begin{itemize}
meillo@3 405 \item ``The mail client, that sucks less''
meillo@2 406 \item sehr konfigurierbar
meillo@2 407 \item Kombination mit \texttt{fetchmail}, \texttt{procmail}, \texttt{masqmail}
meillo@2 408 \item \dots
meillo@2 409 \item Debian-Paket: 1810k
meillo@2 410 \end{itemize}
meillo@2 411 \end{block}
meillo@2 412
meillo@2 413 \pause
meillo@2 414
meillo@2 415 \begin{block}{Alternativen}
meillo@2 416 \begin{itemize}
meillo@2 417 \item \texttt{mailx} (155k) einfaches Mailprogramm
meillo@3 418 \item \texttt{pine} () (nicht mehr in Debian??)
meillo@3 419 \item \texttt{mutt-ng} () Neue Features für mutt
meillo@2 420 \end{itemize}
meillo@2 421 \end{block}
meillo@2 422 }
meillo@2 423
meillo@2 424
meillo@2 425
meillo@2 426 \subsection{Browser}
meillo@2 427 \frame{ \frametitle{Browser}
meillo@2 428 \begin{block}{w3m}
meillo@2 429 \begin{itemize}
meillo@2 430 \item Textbrowser
meillo@4 431 \item hat Caret-Navigation
meillo@2 432 \item kein JavaScript
meillo@4 433 \item Inline-Bilder mit \texttt{w3m-img}
meillo@3 434 \item Debian-Paket: 1100k
meillo@2 435 \end{itemize}
meillo@2 436 \end{block}
meillo@2 437
meillo@2 438 \pause
meillo@2 439
meillo@2 440 \begin{block}{Alternativen}
meillo@2 441 \begin{itemize}
meillo@2 442 \item \texttt{lynx} (1860k) der Dinosaurier
meillo@2 443 \item \texttt{links} (380k) lynx-Klon
meillo@2 444 \item \texttt{elinks} (1190k) hat auch JavaScript-Unterstützung
meillo@2 445 \item \texttt{links2} (2080k) bietet textuellen und grafischen Modus
meillo@2 446 \item \texttt{dillo} (360k) rein grafisch, layoutet aber wie Textbrowser
meillo@2 447 \end{itemize}
meillo@2 448 \end{block}
meillo@2 449 }
meillo@2 450
meillo@2 451
meillo@2 452
meillo@2 453 \subsection{Musikplayer}
meillo@2 454 \frame{ \frametitle{Musikplayer}
meillo@2 455 \begin{block}{cplay}
meillo@2 456 \begin{itemize}
meillo@2 457 \item Frontend für mpg123, ogg123, \dots
meillo@2 458 \item sehr simpel, aber meist ausreichend
meillo@2 459 \item vi-like Bedienung
meillo@3 460 \item Remote-Control via FIFO
meillo@2 461 \item Debian-Paket: 41k
meillo@2 462 \end{itemize}
meillo@2 463 \end{block}
meillo@2 464
meillo@2 465 \pause
meillo@2 466
meillo@2 467 \begin{block}{Alternativen}
meillo@2 468 \begin{itemize}
meillo@2 469 \item \texttt{moc} (190k) sehr einfach, etwas instabil
meillo@2 470 \item \texttt{cmus} (124k) sehr featurereich
meillo@2 471 \item \texttt{mpd+ncmpc} (127k+85k) Client-Server-Architektur
meillo@2 472 \end{itemize}
meillo@2 473 \end{block}
meillo@2 474 }
meillo@2 475
meillo@2 476
meillo@2 477
meillo@3 478 \subsection{Filemanager}
meillo@3 479 \frame{ \frametitle{Filemanager}
meillo@3 480 \begin{block}{coreutils}
meillo@3 481 \begin{itemize}
meillo@3 482 \item cd, mv, cp, rm, mkdir, rmdir, \dots
meillo@4 483 \item man braucht eine gewisse Übersicht im Filesystem
meillo@3 484 \item letztendlich aber einfach am schnellsten
meillo@3 485 \item \dots
meillo@3 486 \item überall vorhanden
meillo@3 487 \end{itemize}
meillo@3 488 \end{block}
meillo@3 489
meillo@3 490 \pause
meillo@3 491
meillo@3 492 \begin{block}{Alternativen}
meillo@3 493 \begin{itemize}
meillo@3 494 \item \texttt{mc} (2140k) Alleskönner mit schrecklicher Bedienung
meillo@3 495 \item \texttt{vifm} (63k) \texttt{mc} mit vi-Bedienung; noch zu wenige Features
meillo@3 496 \end{itemize}
meillo@3 497 \end{block}
meillo@3 498 }
meillo@3 499
meillo@3 500
meillo@3 501
meillo@2 502 \subsection{FTP-Client}
meillo@2 503 \frame{ \frametitle{FTP-Client}
meillo@2 504 \begin{block}{ncftp}
meillo@2 505 \begin{itemize}
meillo@2 506 \item toller FTP-Client
meillo@4 507 \item hatte nur früher ein curses-Interface (\texttt{ncftp2})
meillo@3 508 \item ncftpget, ncftpput, \dots
meillo@2 509 \item \dots
meillo@2 510 \item Debian-Paket: 500k
meillo@2 511 \end{itemize}
meillo@2 512 \end{block}
meillo@2 513
meillo@2 514 \pause
meillo@2 515
meillo@2 516 \begin{block}{Alternativen}
meillo@2 517 \begin{itemize}
meillo@3 518 \item \texttt{ftp} (50k) wenig Komfort
meillo@3 519 \item \texttt{lftp} (540k) (kenne ich leider nicht)
meillo@4 520 \item \texttt{mc} (2140k) er kann auch ftp
meillo@2 521 \end{itemize}
meillo@2 522 \end{block}
meillo@2 523 }
meillo@2 524
meillo@2 525
meillo@2 526
meillo@2 527 \subsection{Chatten}
meillo@2 528 \frame{ \frametitle{Chatten}
meillo@3 529 \begin{block}{weechat-curses}
meillo@2 530 \begin{itemize}
meillo@2 531 \item ein IRC-Client
meillo@3 532 \item Reimplementierung von irssi
meillo@2 533 \item Debian-Paket: 580k
meillo@2 534 \end{itemize}
meillo@2 535 \end{block}
meillo@2 536
meillo@2 537 \pause
meillo@2 538
meillo@2 539 \begin{block}{Alternativen}
meillo@2 540 \begin{itemize}
meillo@4 541 \item \texttt{irssi} (1060k) populärer IRC-Client
meillo@3 542 \item \texttt{sic} (6k) liest stdin, schreibt stdout
meillo@3 543 \item \texttt{centericq} (1260k) sehr bekannter ICQ-Client
meillo@2 544 \end{itemize}
meillo@2 545 \end{block}
meillo@2 546
meillo@2 547 \pause
meillo@2 548
meillo@2 549 \begin{block}{bitlbee}
meillo@2 550 \begin{itemize}
meillo@2 551 \item bitlbee ist ein IM-to-IRC-Gateway
meillo@2 552 \item den IRC-Client für ICQ und Jabber verwenden
meillo@2 553 \item Debian-Paket: 315k
meillo@2 554 \end{itemize}
meillo@2 555 \end{block}
meillo@2 556 }
meillo@2 557
meillo@2 558
meillo@2 559
meillo@2 560 \subsection{Framebuffer}
meillo@2 561 \frame{ \frametitle{Framebuffer}
meillo@2 562 \begin{block}{fbi}
meillo@2 563 \begin{itemize}
meillo@2 564 \item \texttt{fbi} zeigt Bilder im Framebuffer
meillo@2 565 \item \texttt{fbgs} zeigt PDF- und PS-Dokumente im Framebuffer
meillo@2 566 \item Debian-Paket: 54k (enthält \texttt{fbgs})
meillo@2 567 \end{itemize}
meillo@2 568 \end{block}
meillo@2 569
meillo@2 570 \pause
meillo@2 571
meillo@2 572 \begin{block}{mplayer}
meillo@2 573 \begin{itemize}
meillo@2 574 \item \texttt{mplayer -vo fbdev} zeigt Filme im Framebuffer
meillo@2 575 \item kann auch über libaa, libcaca und Ähnliches ausgeben
meillo@2 576 \item Debian-Paket: 4400k
meillo@2 577 \end{itemize}
meillo@2 578 \end{block}
meillo@2 579
meillo@2 580 % \pause
meillo@2 581 %
meillo@2 582 % \begin{block}{Alternativen}
meillo@2 583 % \begin{itemize}
meillo@2 584 % \item keine bekannt
meillo@2 585 % \end{itemize}
meillo@2 586 % \end{block}
meillo@2 587 }
meillo@2 588
meillo@2 589
meillo@2 590
meillo@2 591 \subsection{screen}
meillo@2 592 \frame{ \frametitle{screen}
meillo@2 593 \begin{block}{screen}
meillo@2 594 \begin{itemize}
meillo@2 595 \item Terminal-Multiplexer
meillo@2 596 \item Unersetzbares Tool für Shelluser
meillo@2 597 \item \dots
meillo@2 598 \item Debian-Paket: 590k
meillo@2 599 \end{itemize}
meillo@2 600 \end{block}
meillo@2 601 %
meillo@2 602 % \pause
meillo@2 603 %
meillo@2 604 % \begin{block}{Alternativen}
meillo@2 605 % \begin{itemize}
meillo@2 606 % \item keine bekannt
meillo@2 607 % \end{itemize}
meillo@2 608 % \end{block}
meillo@2 609 }
meillo@2 610
meillo@2 611
meillo@2 612
meillo@2 613 \subsection{Window-Manager}
meillo@2 614 \frame{ \frametitle{Window-Manager}
meillo@2 615 \begin{block}{dwm}
meillo@2 616 \begin{itemize}
meillo@3 617 \item dynamic window manager
meillo@3 618 \item seit September 2006
meillo@3 619 \item von Anselm R. Garbe (wmii)
meillo@3 620 \item http://dwm.suckless.org
meillo@2 621 \item Debian-Paket: 20k
meillo@2 622 \end{itemize}
meillo@2 623 \end{block}
meillo@2 624
meillo@2 625 \pause
meillo@2 626
meillo@2 627 \begin{block}{Alternativen}
meillo@2 628 \begin{itemize}
meillo@2 629 \item \texttt{larswm} (110k)
meillo@2 630 \item \texttt{ratpoison} (170k)
meillo@2 631 \item \texttt{ion2} (330k)
meillo@2 632 \item \texttt{icewm} (700k)
meillo@2 633 \end{itemize}
meillo@2 634 \end{block}
meillo@2 635 }
meillo@2 636
meillo@2 637
meillo@2 638
meillo@2 639
meillo@3 640 \frame{ \frametitle{dwm}
meillo@3 641 \begin{block}{Features}
meillo@3 642 \begin{itemize}
meillo@3 643 \item minimalistisch, nur das Nötig(st)e
meillo@3 644 \item Tagging statt Workspaces
meillo@3 645 \item Konfiguration durch Quellcode editieren und neu kompilieren
meillo@3 646 \item Quellcode kann an einem Abend verstanden werden
meillo@3 647 \item aktive Entwicklung
meillo@3 648 \end{itemize}
meillo@3 649 \end{block}
meillo@2 650
meillo@3 651 \pause
meillo@3 652
meillo@3 653 \begin{block}{Ziele}
meillo@3 654 \begin{itemize}
meillo@3 655 \item 2kLOC
meillo@3 656 \item portables C
meillo@3 657 \item guter Code (Refactoring)
meillo@4 658 \item sehr standardkonform (aber: broken apps)
meillo@3 659 \item Erweiterung mit Patches
meillo@3 660 \item
meillo@3 661 \end{itemize}
meillo@3 662 \end{block}
meillo@3 663 }
meillo@3 664
meillo@3 665
meillo@3 666
meillo@3 667
meillo@3 668 \section{suckless-Projekt}
meillo@3 669 \frame{ \frametitle{suckless-Projekt}
meillo@3 670 \begin{block}{Community}
meillo@3 671 \begin{itemize}
meillo@3 672 \item http://suckless.org
meillo@3 673 \item kleine aktive Community
meillo@3 674 \item Patches als fester Bestandteil
meillo@3 675 \item Mailingliste ist Pflicht
meillo@3 676 \item einfach mitmachen!
meillo@3 677 \item
meillo@3 678 \end{itemize}
meillo@3 679 \end{block}
meillo@3 680
meillo@3 681 \pause
meillo@3 682
meillo@3 683 \begin{block}{Mein dwm}
meillo@3 684 \begin{itemize}
meillo@3 685 \item ein Patchset
meillo@4 686 \item http://prog.marmaro.de/dwm-meillo
meillo@3 687 \end{itemize}
meillo@3 688 \end{block}
meillo@2 689 }
meillo@2 690
meillo@1 691
meillo@1 692
meillo@1 693
meillo@4 694 \section{Soll erfüllt?}
meillo@4 695 \frame{ \frametitle{Soll erfüllt?}
meillo@4 696 Dieser Vortrag soll zeigen, dass man auch ohne X komfortabel arbeiten kann.
meillo@4 697
meillo@4 698 \vspace{1em}
meillo@4 699 \pause
meillo@4 700
meillo@4 701 Ich möchte motivieren, mal Urlaub in der Shell zu machen.
meillo@4 702
meillo@4 703 \vspace{1em}
meillo@4 704 \pause
meillo@4 705
meillo@4 706 Ich möchte die ``Angst'' vor der textbasierten Benutzerschnittstelle nehmen. Auch will ich hierzu Einstiegshilfen geben.
meillo@4 707
meillo@4 708 \vspace{1em}
meillo@4 709 \pause
meillo@4 710
meillo@4 711 Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind.
meillo@4 712
meillo@4 713 \vspace{1em}
meillo@4 714 \pause
meillo@4 715
meillo@4 716 Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen.
meillo@4 717
meillo@4 718 }
meillo@1 719
meillo@1 720
meillo@1 721 \section{Zusammenfassung}
meillo@1 722 \frame{ \frametitle{Zusammenfassung}
meillo@4 723 Ja, man kann auch ohne X komfortabel arbeiten.
meillo@4 724
meillo@4 725 \vspace{1em}
meillo@4 726 \pause
meillo@4 727
meillo@4 728 Macht mal Urlaub in der Shell.
meillo@4 729
meillo@4 730 \vspace{1em}
meillo@4 731 \pause
meillo@4 732
meillo@4 733 Man muss die CLI nicht fürchten.
meillo@4 734
meillo@4 735 \vspace{1em}
meillo@4 736 \pause
meillo@4 737
meillo@4 738 Es soll klar werden, dass und warum Kommandozeilenprogramme oft besser als ihre grafischen Pendants sind.
meillo@4 739
meillo@4 740 \vspace{1em}
meillo@4 741 \pause
meillo@4 742
meillo@4 743 Und als zentrales Ziel soll dieser Vortrag Gründe darstellen, weshalb es sich lohnt, in die Shell umzuziehen.
meillo@1 744
meillo@1 745 }
meillo@1 746
meillo@1 747
meillo@1 748 \section{Fragen}
meillo@1 749 \frame{ \frametitle{Fragen?}
meillo@1 750 \vspace{5ex}
meillo@1 751 \centerline{\huge ?}
meillo@1 752 }
meillo@1 753
meillo@1 754
meillo@4 755
meillo@4 756 \section{Links}
meillo@4 757 \frame{ \frametitle{Links auf einen Blick}
meillo@4 758 \begin{itemize}
meillo@4 759 \item http://suckless.org
meillo@4 760 \item http://pimpmyshell.de (Projekt von Gregor Oelze)
meillo@4 761 \item http://cat-v.org (Website von Uriel)
meillo@4 762 \item http://marmaro.de/lue
meillo@4 763 \item http://prog.marmaro.de/dwm-meillo
meillo@4 764 \item
meillo@4 765 \item
meillo@4 766 \end{itemize}
meillo@4 767
meillo@4 768 }
meillo@4 769
meillo@4 770
meillo@4 771
meillo@4 772
meillo@4 773 \section{Danke}
meillo@4 774 \frame{% \frametitle{Abschließend}
meillo@1 775 \begin{block}{Verwendete Software}
meillo@1 776 \begin{itemize}
meillo@1 777 \item Debian GNU/Linux
meillo@1 778 \item \LaTeX-Beamer und \texttt{pdflatex}
meillo@1 779 \item Vim
meillo@1 780 \item qiv und ImageMagick
meillo@1 781 \item Mercurial
meillo@1 782 \end{itemize}
meillo@1 783 \end{block}
meillo@1 784
meillo@4 785 { \tiny $\dagger$ UNIX is a registered trademark of The Open Group. }
meillo@2 786
meillo@3 787 \pause
meillo@3 788
meillo@1 789 \begin{block}{}
meillo@1 790 \vspace{3ex}
meillo@1 791 \centerline{\textbf{Danke für eure Aufmerksamkeit}}
meillo@1 792 \end{block}
meillo@1 793 }
meillo@1 794
meillo@1 795
meillo@1 796 \end{document}