Skip to content
Snippets Groups Projects
Verified Commit c9690db0 authored by Lars Frost's avatar Lars Frost
Browse files

Do monster commit

- Generates Doku on livefs
- Use customized calamares
- Fix package installation
parent 4bf810e0
Branches
No related tags found
No related merge requests found
\subsection{Haskell}
Haskell ist eine sehr mächtige funktionale Programmiersprache, welche zum einen in der Vorlesung \textsl{Programmierung} behandelt wird, zum anderen aber auch außerhalb der Vorlesung manchmal elegantere Lösungen für Probleme liefert als prozedurale Sprachen wie Java.
Ein Haskell-Programm (Endung \texttt{.hs}) kann entweder interaktiv mittels \texttt{ghci \textsl{beispiel}.hs} oder standalone mit \texttt{ghc \textsl{beispiel}.hs} aufgerufen werden.
Ein sehr ausführliches Tutorial zum Einstieg in Haskell findest du beispielsweise unter \\\url{https://en.wikibooks.org/wiki/Haskell}.
\subsection{GIMP}
GIMP, das GNU Image Manipulation Programm, ist ein Bildbearbeitungsprogramm. Es hat eine grafische Oberfläche und ist pixelbasiert. Während es einfache Bearbeitung durch den ungeübten Benutzer zulässt, ist es durchaus als angehende Alternative zum bekannten Photoshop angelegt und beinhaltet daher auch viele Profi-Funktionen.
Du kannst es über das Menü aufrufen oder über ein Terminal starten. Auf letzterem gibst du einfach \texttt{gimp} ein. Im Menü klickst du auf dieses Logo: \includegraphics[height=1.5em]{logos/gimp}
GIMP öffnet beim Start drei Fenster. Im großen Hauptfenster siehst du das zu bearbeitende Bild, sobald du eines geöffnet hast. Dort ist auch das Menü, welches dir alle Optionen zur Verfügung stellt. In einem weiteren Fenster findest du die Toolbox, in welcher du die Werkzeuge, mit denen du das Bild bearbeitest, auswählen kannst. In einem weiteren Fenster siehst du Layer und weitere Funktionen, mit denen du weitere Möglichkeiten hast. Öffnest du zum Beispiel ein Photo, lässt dich GIMP dort nicht einfach malen. Du kannst einen Layer, den du dann frei bearbeiten kannst, darüber legen. Öffnest du weitere Grafiken erhälst du nur weitere Hauptfenster und kannst die beiden anderen Fenster wiederverwenden.
\begin{center}
\includegraphics[width=0.95\linewidth]{screenshot/gimp}
\end{center}
\subsection{git}
Git ist ein dezentrales (nicht zwingend Server-basiertes) Versionsverwaltungssystem. Es eignet sich zur Verwaltung von Softwareprojekten, besonders wenn in Gruppen gearbeitet wird. Es wird hauptsächlich über die Kommandozeile bedient. Obwohl ein Verwaltungsserver nicht zwingend vorhanden sein muss, wird dennoch häufig einer verwendet.
Meistens bekommst du zum Arbeiten in einem Projekt eine URL. Mittels \texttt{git clone URL} holst du dir eine lokale Kopie des Arbeitsverzeichnisses, in dem du Änderungen tätigen kannst.\\
Nachdem du den Quelltext / die Dateien angepasst hast, kannst du mittels \texttt{git add DATEI} die Änderungen dem Git-System mitteilen.\\
Nachdem Git über Änderungen informiert wurde, kannst du diese mit \texttt{git commit} zu einer Beschreibung zusammenfassen.\\
Mittels \texttt{git push} kannst du diese Zusammenfassungen der Änderungen an den Server übertragen.\\
Bevor du anfängst an einem Projekt weiterzuarbeiten, solltest du alle Änderungen von anderen Mitarbeitern auf dem Server abfragen. Dies kannst du mittels \texttt{git pull} erledigen.\\
Wenn du wissen willst, welche Dateien sich bei dir geändert haben, kannst du \texttt{git status} verwenden um informiert zu werden.
Für Hilfe: \texttt{git help}. Im Internet findest du weitaus umfangreichere Tutorials, z.B. auf \\\url{http://git-scm.com/docs/gittutorial} (englisch).
\subsection{Gnome}
Gnome installiert die GNOME3 Desktop-Umgebung mit den GNOME Standard-Programmen uns stellt somit eine Alternative zum vorinstallierten KDE dar. GNOME kann nach der Installation im Login-Menü als Desktop Umgebung ausgewählt werden.
\subsection{gnuplot}
Gnuplot ist eine skriptbasierte Anwendung zum Plotten von zwei- oder dreidimensionalen Funktionen und Daten, die auch einen interaktiven Kommandozeilenmodus bietet.
Zum Lernen von gnuplot bietet sich \url{http://www.gnuplot.info/docs\_5.4/Gnuplot\_5\_4.pdf} an.
Gnuplot kann Graphen in mehreren Modi, z.B. graphisch in einem Fenster, als ASCII-Art in der Kommandozeile, als PDF, SVG und sogar als \LaTeX{}, ausgeben.
Aufzurufen im Terminal mit:\\
\texttt{gnuplot}
Mit den folgenden Anweisungen in gnuplot werden die Graphen von $(x/4)^2$, $\sin(x)$ und $1/x$ in den angegebenen Grenzen gezeichnet.
\begin{verbatim}
set title "Some Math Functions"
set xrange [-10:10]
set yrange [-2:2]
set zeroaxis
plot (x/4)**2, sin(x), 1/x
\end{verbatim}
Die Ausgabe sieht ähnlich wie die folgende aus:\\
\input{gnuplot_plot}
Mit den folgenden Anweisungen kann die Grafik auch in \LaTeX-Code exportiert werden.
\begin{verbatim}
set terminal cairolatex
set output "gnuplot_plot.tex"
\end{verbatim}
\textbf{Achtung:} Gnuplot ist leider keine freie Software im Sinne der FSFE\footnote{Free Software Foundation Europe}, obwohl es GNU im Namen trägt. Im Besonderen enthält seine Lizenz eine Klausel, welche de facto das Verändern und Weitergeben von gnuplot verhindert. Ein größtenteils kompatible, freie Alternative ist \texttt{pyxplot}.
File added
% GNUPLOT: LaTeX picture with Postscript
\begingroup
\makeatletter
\providecommand\color[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package color not loaded in conjunction with
terminal option `colourtext'%
}{See the gnuplot documentation for explanation.%
}{Either use 'blacktext' in gnuplot or load the package
color.sty in LaTeX.}%
\renewcommand\color[2][]{}%
}%
\providecommand\includegraphics[2][]{%
\GenericError{(gnuplot) \space\space\space\@spaces}{%
Package graphicx or graphics not loaded%
}{See the gnuplot documentation for explanation.%
}{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
\renewcommand\includegraphics[2][]{}%
}%
\providecommand\rotatebox[2]{#2}%
\@ifundefined{ifGPcolor}{%
\newif\ifGPcolor
\GPcolortrue
}{}%
\@ifundefined{ifGPblacktext}{%
\newif\ifGPblacktext
\GPblacktexttrue
}{}%
% define a \g@addto@macro without @ in the name:
\let\gplgaddtomacro\g@addto@macro
% define empty templates for all commands taking text:
\gdef\gplbacktext{}%
\gdef\gplfronttext{}%
\makeatother
\ifGPblacktext
% no textcolor at all
\def\colorrgb#1{}%
\def\colorgray#1{}%
\else
% gray or color?
\ifGPcolor
\def\colorrgb#1{\color[rgb]{#1}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
\expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
\expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
\expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
\expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
\expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
\expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
\expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
\expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
\else
% gray
\def\colorrgb#1{\color{black}}%
\def\colorgray#1{\color[gray]{#1}}%
\expandafter\def\csname LTw\endcsname{\color{white}}%
\expandafter\def\csname LTb\endcsname{\color{black}}%
\expandafter\def\csname LTa\endcsname{\color{black}}%
\expandafter\def\csname LT0\endcsname{\color{black}}%
\expandafter\def\csname LT1\endcsname{\color{black}}%
\expandafter\def\csname LT2\endcsname{\color{black}}%
\expandafter\def\csname LT3\endcsname{\color{black}}%
\expandafter\def\csname LT4\endcsname{\color{black}}%
\expandafter\def\csname LT5\endcsname{\color{black}}%
\expandafter\def\csname LT6\endcsname{\color{black}}%
\expandafter\def\csname LT7\endcsname{\color{black}}%
\expandafter\def\csname LT8\endcsname{\color{black}}%
\fi
\fi
\setlength{\unitlength}{0.0500bp}%
\ifx\gptboxheight\undefined%
\newlength{\gptboxheight}%
\newlength{\gptboxwidth}%
\newsavebox{\gptboxtext}%
\fi%
\setlength{\fboxrule}{0.5pt}%
\setlength{\fboxsep}{1pt}%
\definecolor{tbcol}{rgb}{1,1,1}%
\begin{picture}(7200.00,4320.00)%
\gplgaddtomacro\gplbacktext{%
\csname LTb\endcsname%%
\put(555,478){\makebox(0,0)[r]{\strut{}$-2$}}%
\csname LTb\endcsname%%
\put(555,866){\makebox(0,0)[r]{\strut{}$-1.5$}}%
\csname LTb\endcsname%%
\put(555,1254){\makebox(0,0)[r]{\strut{}$-1$}}%
\csname LTb\endcsname%%
\put(555,1642){\makebox(0,0)[r]{\strut{}$-0.5$}}%
\csname LTb\endcsname%%
\put(555,2030){\makebox(0,0)[r]{\strut{}$0$}}%
\csname LTb\endcsname%%
\put(555,2418){\makebox(0,0)[r]{\strut{}$0.5$}}%
\csname LTb\endcsname%%
\put(555,2806){\makebox(0,0)[r]{\strut{}$1$}}%
\csname LTb\endcsname%%
\put(555,3194){\makebox(0,0)[r]{\strut{}$1.5$}}%
\csname LTb\endcsname%%
\put(555,3582){\makebox(0,0)[r]{\strut{}$2$}}%
\csname LTb\endcsname%%
\put(656,239){\makebox(0,0){\strut{}$-10$}}%
\csname LTb\endcsname%%
\put(2211,239){\makebox(0,0){\strut{}$-5$}}%
\csname LTb\endcsname%%
\put(3766,239){\makebox(0,0){\strut{}$0$}}%
\csname LTb\endcsname%%
\put(5321,239){\makebox(0,0){\strut{}$5$}}%
\csname LTb\endcsname%%
\put(6876,239){\makebox(0,0){\strut{}$10$}}%
}%
\gplgaddtomacro\gplfronttext{%
\csname LTb\endcsname%%
\put(6074,3367){\makebox(0,0)[r]{\strut{}$(x/4)**2$}}%
\csname LTb\endcsname%%
\put(6074,3128){\makebox(0,0)[r]{\strut{}$sin(x)$}}%
\csname LTb\endcsname%%
\put(6074,2889){\makebox(0,0)[r]{\strut{}$1/x$}}%
\csname LTb\endcsname%%
\put(3766,3940){\makebox(0,0){\strut{}Some Math Functions}}%
}%
\gplbacktext
\put(0,0){\includegraphics[width={360.00bp},height={216.00bp}]{gnuplot_plot}}%
\gplfronttext
\end{picture}%
\endgroup
\subsection{gparted}
Gparted ist ein Programm zum Partitionieren von Laufwerken. Wahrscheinlich hast du es bereits bei der Installation deines GNU/Linux-Systems gesehen.
Doku/graph.png

36.6 KiB

\subsection{graphviz}
Graphviz ist ein Programm zur Erstellung von Graphen. Dazu nutzt es seine eigene Beschreibungssprache \enquote{DOT} welche im Klartext gespeichert wird. Das Speichern im Klartextformat ist hilfreich für Versionsverwaltungssystem wie git oder svn und ermöglicht das Lesen und Bearbeiten des Graphen auch ohne spezielle Software.\\
Eine ausführliche Einführung findest du unter \url{http://www.graphviz.org/pdf/dotguide.pdf}.
\begin{samepage}
Beispiel:\\
Datei beispiel.dot:
\begin{verbatim}
digraph G {
"start" -> "überprüfe eingabe" -> "zeige daten an" -> "ende";
"start" -> "initialisiere";
"start" -> "füttere katze" -> "nomnom" -> "ende";
"füttere katze" -> "katze schnurrt";
}
\end{verbatim}
wird mit dem Kommandozeilenaufruf \texttt{dot -T png beispiel.dot -o beispiel.png} zu\\
\includegraphics[scale=0.5]{graph}
\end{samepage}
\subsection{gufw}
Gufw stellt eine graphische Oberfläche für die Systemfirewall bereit. Hiermit lassen sich Regeln für Port- und IP-Filter bzw. entsprechende Freigaben zusammenklicken.
Es wird empfohlen, grundsätzlich alles zu Filtern, und nur bei Bedarf die benötigten Ports oder IPs freizugeben.
Achtung: Man kann sich damit seine Internetverbindung kaputt machen.
\\
Aufruf über Kommandozeile mit \texttt{gufw} und im \startmenu\ als \enquote{Firewall-Konfiguration} oder durch Suche nach Firewall.
\begin{center}
\includegraphics[width=0.95\linewidth]{screenshot/gufw}
\end{center}
Alternative: Konfiguration der Firewall über die Kommandozeile mit \texttt{sudo ufw [optionen]}.
\subsection{htop}
\texttt{htop} ist ein Kommandozeilenprogramm, das die aktuell laufenden Prozesse, die Prozessor- und Arbeitsspeicherauslastung sowie weitere Informationen anzeigt. Es erlaubt das Filtern nach Namen, Anzeigen als Baumstruktur, Sortieren nach verschiedenen Kriterien, Änderung der Priorität und Abschießen von Prozessen mit verschiedenen Signalen.
Alternativen hierzu sind \texttt{top} und \texttt{atop}.
\subsection{Inkscape}
Inkscape ist ein vektorbasiertes Bildbearbeitungs- und Zeichenprogramm mit grafischer Oberfläche. Der Standarddateityp ist SVG (Scalable Vector Graphics), was von den meisten Webbrowsern nativ dargestellt werden kann. Als Vektorformat ist SVG ebenfalls zur Druckaufbereitung sehr gut geeignet, wenn Poster, Skripte, Bücher etc. gedruckt werden müssen.
Auch Diagramme lassen sich gut mit Inkscape erstellen.
Inkscape ist kompatibel zu vielen anderen vektorbasierten Zeichenprogrammen wie zum Beispiel Adobe Illustrator oder AutoCAD.
Viele Zeichnungen in der Wikipedia wurden damit erstellt. Ein sinnvolle Tutorial findet sich unter \url{http://inkscape.org/doc/basic/tutorial-basic.de.html}
Inkscape kann im Terminal oder im \startmenu{} als \texttt{inkscape} aufgerufen werden.
\begin{center}
\includegraphics[width=0.8\linewidth]{screenshot/inkscape}
\end{center}
\subsection{ipython}
IPython ist eine bequeme und praktische Kommandozeile für Python, die zusätzliche Features wie Autovervollständigung bereitstellt.
Die Dokumentation beim Aufruf in der Kommandozeile (\texttt{ipython3} für python3 oder \texttt{ipython} für python2) ist selbsterklärend.
\subsection{KDE-Telepathy}
KDE-Telepathy ist der in KDE integrierte Multi-Messenger der verschiedene Chat-Protokolle wie z.B. XMPP, Skype und IRC in einer grafischen Oberfläche zusammenfasst.
Du kannst Telepathy über Internet $\rightarrow$ Telepathy-Kontaktliste starten. Dort kannst du nach dem ersten Start relativ intuitiv Konten anlegen. Wenn du später Kontakte hinzufügen oder ändern möchtest kannst du dieses über den Schraubenschlüssel $\rightarrow$ Instant-Messaging-Einstellungen machen.
Du musst nicht immer manuell die Kontaktliste öffnen, Telepathy wird automatisch beim Einloggen gestartet und läuft im Hintergrund.
\subsection{KeePassXC}
KeePassXC ist ein Passwortmanager, der Passwörter in einer verschlüsselten Datenbank durch ein Masterpasswort geschützt speichert.
So kann man für jeden passwortgeschützten Dienst ein eigenes, sicheres Passwort verwenden, ohne sich viele Passwörter merken zu müssen.
Außerdem kann KeePassXC sichere Passwörter zufällig generieren.
Durch ein Browser-Add-on oder durch eine Tastenkombination zum automatischen Einfügen von Passwörtern muss man Passwörter und Benutzernamen zudem beim Anmelden auf Webseiten nicht selbst eintippen.
Das von KeePassXC verwendete Format für verschlüsselte Datenbanken wird auch von KeePass2 verwendet, einem weit verbreiteten Passwortmanager für Windows.
\textbf{Beachte}: Wenn alle Passwörter in einer Datenbank liegen, sollte man davon natürlich ein Backup haben.
\subsection{Kile}
Kile ist ein Standard \LaTeX-Editor in KDE mit grafischer Oberfläche, welcher die wichtigsten Bibliotheken und Funktionen mitbringt.
\includegraphics[width=0.95\linewidth]{screenshot/kile}
\LaTeX\ ist eine mächtige Textsatzsprache, die sich zum Erstellen von Dokumenten eignet. Dokumente werden in Klartext erstellt und anschließend nach PDF compiliert. Das Speichern im Klartextformat ist hilfreich für Versionsverwaltungssysteme wie \textsl{git} oder \textsl{svn} und ermöglicht, das Dokument auch ohne spezielle Software zu lesen und zu bearbeiten.
Du kannst dir auch das \LaTeX-Kompendium\\
\url{https://de.wikibooks.org/wiki/LaTeX-Kompendium} anschauen.
Für weiterführende Informationen sei auch das englische \LaTeX Wikibook empfohlen:\\\url{http://en.wikibooks.org/wiki/LaTeX}.
Aufzurufen über die grafische Oberfläche oder im Terminal mit: \texttt{kile}
Weitere Informationen: \texttt{man kile}
\subsection{kopete}
Kopete ist ein Instant-Messenger, der verschiedene Protokolle wie IRC oder XMPP (Jabber, Facebook,\ldots) in einer Anwendung zusammenfasst. Mit dem Addon 'Off-the-Record Messaging' (OTR) können die Gespräche End-to-End verschlüsselt werden.
Wenn nicht mit dem System gestartet, aufzurufen im Terminal mit: \texttt{kopete}
Weitere Informationen: \texttt{man kopete}
\subsection{\LaTeX}
\LaTeX ist ein Textsatzsystem, mit dem man professionellen Textsatz durchführen kann. Diese Dokumentation ist zum Beispiel auch mit \LaTeX erstellt worden.
Zum Bearbeiten von \LaTeX-Dokumenten kann man entweder einen normale Texteditor oder eine spezielle Software wie zum Beispiel Texmaker, Texstudio oder Kile verwenden.
Der Hauptunterschied zwischen \LaTeX und \enquote{normalen} Textverarbeitungssystemen ist, dass \LaTeX-Dokummente wie ein Programm kompiliert werden. Dies ermöglicht es dem Textsatzsystem, Bilder, Abbildungen und Tabellen intelligent anzuordnen.
\LaTeX ist aufgrund seines guten Textsatzes bei (mathematischen) Formeln im universitären Umfeld weit verbreitet.
\subsection{lftp}
Lftp ist ein kommandozeilenbasierter FTP-Client, mit dem man Daten zwischen einem Client und einem FTP-Server verschieben kann.\\
Zusätzlich zu FTP kann lftp auch noch FTPS, HTTP, HTTPS, HFTP, FISH, SFTP und Bittorrent.
LFTP besitzt keine graphische Benutzeroberfläche und wird im Terminal mit \texttt{lftp} gestartet.
Es unterstützt im Gegensatz zu \texttt{ftp} Tab-Completion, d.h. man kann durch Drücken der Tabulator-Taste Dateinamen vervollständigen.
Zum Beenden drückt man entweder \texttt{Strg+D} oder gibt \texttt{exit} ein. Mit \texttt{help} kann die integrierte Hilfe angezeigt werden.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment