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
Tags
No related merge requests found
Showing
with 176 additions and 0 deletions
\subsection{LAPACK}
"`LAPACK"' steht für "`Linear Algebra PACKage"' und ist eine Bibliothek von numerischen Algorithmen aus der linearen Algebra, insbesondere also für Matrixoperationen für sowohl reelle als auch komplexe Zahlen. Geschrieben ist sie in \texttt{Fortran}, aber sie kann auch in \texttt{C} und \texttt{C++} genutzt werden. Aufgrund von Längenbeschränkungen von Funktionsnamen in alten Fortranversionen sind alle Lapack-Funktionsnamen maximal sechs Buchstaben lang, wie z.B. DGESV zum Lösen eines allgemeinen linearen Gleichungssystems in doppelter Genauigkeit.
Sie gehört zu den Standard-Bibliotheken bei allen Numerikern.
\paragraph{Nutzung:}
Grundsätzlich ist die Bibliothek als Header im Programmquelltext einzubinden. In \texttt{C++} würde dies durch die Zeile
\begin{verbatim}
#include "<PFAD>/lapack.h"
\end{verbatim}
geschehen. Beim Kompilieren sind dann die Bibliotheken zu "`linken"'. (Das heißt, dass man dem Compiler entsprechende Flags mitgeben muss.)
\texttt{g++}-Benutzer würden eingeben:
\begin{verbatim}
g++ main.cpp -llapack
\end{verbatim}
LAPACK wird normaler Weise zusammen mit anderen Bibliotheken verwendet; insbesondere mit "`BLAS"' (Basic Linear Algebra Subprograms), dessen Funktionen in den Lapack-Funktionen verwendet werden. Hier müssen gegebenenfalls weitere Header eingebunden werden und weitere Compiler-Flags gesetzt werden. Genaueres erfährt man hierzu in den Dokumentationen.
\paragraph{Für Hilfe:}
LAPACK ist auf seiner Homepage \url{http://www.netlib.org/lapack/} nicht hinreichend dokumentiert. Zum tieferen Verständnis der Funktion sollte der Fortran-Sourcecode betrachtet werden. Alternativ findet man auch schon etliche Beispiele in der Manpage, die man über \texttt{man lapack} erreicht.
\subsection{LibreOffice}
LibreOffice ist ein Paket von Officeanwendungen. Es beinhaltet Programme zum Bearbeiten von Dokumenten, Tabellen, Datenbanken, mathematischen Formeln und Präsentationen sowie ein Zeichenprogramm.
\subsection{linux-firmware-nonfree}
Das Paket \texttt{linux-firmware-nonfree} installiert proprietäre Treiber (nicht freie\footnotemark Treiber). Wenn die Hardware im Laptop/Desktop-PC nicht von den freien Linux-Treibern unterstützt wird, ist es sinnvoll, diese zu installieren.
\footnotetext{Falls dir der Unterschied zwischen \enquote{frei} und \enquote{kostenlos} nicht klar ist, kannst du unter \mbox{\url{https://de.wikipedia.org/wiki/Freie_Software}} nachlesen, worum es bei dieser Unterscheidung geht.}
Doku/logos/gimp.png

143 KiB

Doku/logos/largeVLC.png

83.4 KiB

Doku/logos/mplayer_logo.png

16.1 KiB

Doku/logos/pidgin.png

218 KiB

#!/bin/bash
set -e
cat HEADER.tex $@ FOOTER.tex > tmp.tex
pdflatex tmp.tex
exit 0
\subsection{MPlayer}
MPlayer ist ein Programm, mit dem man Filme aus dem Terminal heraus abspielen kann. Es unterstützt
so gut wie alle Formate und funktioniert auch manchmal bei fehlerhaften Dateien, wo andere
Player aufgeben.
Um eine Videodatei mit MPlayer zu öffnen, kann man einfach \texttt{mplayer <Dateipfad>} eingeben.
Ein Vorteil von MPlayer ist, dass er sehr wenig Ballast in Form von Buttons und Symbolleisten
mitbringt. Es öffnet sich lediglich ein Fenster, in dem das Video zu sehen ist. Die Bedienung
erfolgt dann über Tastaturbefehle. Hier sind die wichtigsten:
\begin{tabular}{ | l | l | }
\hline
Leertaste & Pause\\
ESC & Abspielen beenden\\
f & Vollbild\\
$\leftarrow$ / $\rightarrow$ & zurück- und vorspulen\\
9 / 0 & leiser und lauter\\
{[} / {]} & langsamer und schneller abspielen\\
backspace & normale Geschwindigkeit\\
\hline
\end{tabular}
\subsection{openssh-server} \label{ch_sshd}
In dem Paket \texttt{openssh-server} ist ein Server für den auf Port 22 laufenden SSH-Dienst. Dann kannst du dich mit dem Kommandozeilenprogramm \texttt{ssh} oder unter Windows mit Putty von anderen Rechnern aus auf die Kommandozeile deines Rechners verbinden.
Du kannst dich auf diese Weise bspw. von unterwegs zu deinem Rechner zu Hause verbinden.
\textbf{Achtung:} Wenn du den Server falsch konfigurierst, was leider sehr schnell passiert, kann es passieren, dass Fremde Zugriff auf deinen Rechner bekommen!
Weitere Infos, insbesondere auch Konfigurationshinweise, finden sich auch unter\\\url{http://wiki.ubuntuusers.de/SSH#Der-SSH-Server}.
\subsection{p7zip-full}
P7zip packt und entpackt Archive der meisten häufig vorkommenden Formate (z.B. .7z, .tar.gz, zip, .iso, \dots{}).
Aufruf im Terminal mit:\\
\texttt{7z 'Argumente'}
Eine Übersicht der möglichen Argumente gibt es in
\texttt{man 7z}
\subsection{Pidgin}
Pidgin ist ein Programm zum Chatten, also ein Instant Messenger. Es unterstützt dabei so ziemlich alle Protokolle, von IRC bis Jabber\footnote{und damit auch den Facebook-Chat}. Du kannst also alle Accounts, die du in den verschiedenen Systemen hast, in einem Programm nutzen.
Pidgin startest du entweder über das Menü oder ein Terminal. Im Terminal schreibst du den Befehl \texttt{pidgin}. Im Menü klickst du auf dieses Logo: \includegraphics[height=1.5em]{logos/pidgin}
Pidgin legt in der Systemleiste\footnote{ganz unten rechts, neben Uhrzeit, Lautstärke und den ganzen anderen Logos} ein Symbol an, über das du es im Hintergrund laufen lassen kannst. Wenn es nicht dorthin minimiert ist, siehst du ein Fenster, in welchem du deinen Status wählen kannst und deine Freunde aufgelistet bekommst. Dort kannst du eine Unterhaltung starten, worauf sich ein übliches Chat-Fenster öffnet, in dem du den Nachrichtenverlauf siehst und neue Nachrichten eingeben kannst. Dabei können mehrere Gespräche in eigenen Fenstern oder in Tabs geöffnet sein.
\begin{center}
\includegraphics[width=0.95\linewidth]{screenshot/pidgin}
\end{center}
Über ein Plugin kannst du \enquote{Off-the-Record Messaging} (OTR) ermöglichen. OTR bietet dir die Möglichkeit Gespräche verschlüsselt zu führen, ohne dass die Server, an denen die Nachricht vorbei kommt, die Nachrichten nicht mitlesen kann. Dies müssen deine Gesprächspartner dazu natürlich ebenfalls benutzen.
%Auf der KISS\footnote{Kommunikation und Installation schöner Software, unsere Linux Workshops} wird es einen Vortrag zu Jabber und OTR geben, in dem die grundlegende Benutzung und Funktionsweise erläutert werden. Dabei wird zur Demonstration auch Pidgin verwendet. Wenn du die KISS verpasst, kannst du dir auf der Website der Video AG der Fachschaft\footnote{\url{https://videoag.fsmpi.rwth-aachen.de}} eine Aufzeichnung ansehen.
\subsection{postgresql}
PostgreSQL ist eine Datenbank, welche in der Vorlesung \enquote{Datenbanken und Informationssysteme} zur Anwendung der Vorlesungsinhalte genutzt werden kann.
Hilfe findet man unter \texttt{man postgres}.
\subsection{pwgen}
Pwgen ist ein Tool für die Kommandozeile zum Generieren von Passwörtern. Die generierten Passwörter werden im Terminal angezeigt.
Aufzurufen im Terminal mit: \texttt{pwgen 'Zeichenanzahl' 'Anzahl'}
Erstellung eines Passworts mit Acht Zeichen: \texttt{pwgen 8 1}
Mit \texttt{pwgen -s 'Zeichenanzahl'} kann man Passwörter mit erhöhter Sicherheit generieren.
Das Handbuch sowie weitere Optionen (z.B. keine Zahlen, Buchstaben, Sonderzeichen) können mittels \texttt{man pwgen} angezeigt werden.
Wenn du den Passwordmanager KeePassXC (oder eine andere Variante von KeePass) installiert hast, ist es praktischer, Passwörter direkt in KeePassXC zu generieren.
\subsection{python-matplotlib}\label{ch_matplotlib}
Matplotlib ist eine Bibliothek für Python, die insbesondere Tools zum Plotten von Funktionen und Datensätzen enthält. Sinnvollerweise nutzt man sie in Kombination mit NumPy (siehe Abschnitt \ref{ch_numpy}), welches die Datentypen bereit stellt, die Matplotlib benutzt.
Gerade bei der Analyse wissenschaftlicher Daten ist es unerlässlich, die Ergebnisse graphisch darzustellen. Wenn man Python (zusammen mit NumPy) dafür benutzen möchte, ist Matplotlib meist die Bibliothek der Wahl.
%Um in einem Python-Skript Matplotlib oder ein Untermodul zu verwenden, gibt es mehrere Möglichkeiten, die sich darin unterscheiden, wie die Bibliothek im weiteren Code aufgerufen wird. Zum Beispiel:
%
%\begin{verbatim}
%import matplotlib
%import matplotlib as mpl
%from matplotlib import *
%import matplotlib.pyplot as plt
%...
%\end{verbatim}
Die einfachste Verwendung folgt folgendem Schema:
\begin{verbatim}
import matplotlib.pyplot as plt
x = [1,2,3,4]
y = [2,3,5,8]
plt.plot(x, y)
plt.show()
\end{verbatim}
Weitere Beispiele und Tutorials findet man unter \url{https://matplotlib.org/tutorials/index.html}.
Zur Nutzung sind grundlegende Python-Kenntnisse erforderlich.
\subsection{python-numpy} \label{ch_numpy}
Numpy ist eine Bibliothek für Python, die diverse Datenstrukturen und Funktionen für effiziente numerische Berechnungen zur Verfügung stellt. Dazu gehören Matrixoperationen und komplizierte mathematische Funktionen, aber auch Tools zum Einlesen/Speichern von Datensätzen und vieles mehr.
NumPy ist extrem hilfreich in der Analyse wissenschaftlicher Daten und seine Verbreitung nimmt zu. Es ist sinnvoll, es in Kombination mit Matplotlib (siehe Abschnitt \ref{ch_matplotlib}) zu verwenden, welches Tools zur graphischen Darstellung bereitstellt. Als weitere Ergänzung zu NumPy bietet sich SciPy (siehe Abschnitt \ref{ch_scipy}) an, welches weitere, elaborierte Methoden zur wissenschaftlichen Datenanalyse liefert.
Um in einem Python-Skript NumPy oder ein Untermodul zu verwenden, gibt es mehrere Möglichkeiten, die sich darin unterscheiden, wie die Bibliothek im weiteren Code aufgerufen wird. Zum Beispiel:
\begin{verbatim}
import numpy
import numpy as np
from numpy import *
...
\end{verbatim}
Zur Nutzung sind grundlegende Python-Kenntnisse erforderlich.
\subsection{python-scipy} \label{ch_scipy}
Scipy ist eine Bibliothek für Python und stellt Bibliotheken für wissenschaftliche Berechnungen zur Verfügung, z.B. Statistik, Fouriertransformation und Autokorrelation. Es ist eine gute Ergänzung zu NumPy (siehe Abschnitt \ref{ch_numpy}).
Um in einem Python-Skript SciPy oder ein Untermodul zu verwenden, gibt es mehrere Möglichkeiten, die sich darin unterscheiden, wie die Bibliothek im weiteren Code aufgerufen wird. Zum Beispiel:
\begin{verbatim}
import scipy
import scipy as scp
from scipy import *
...
\end{verbatim}
Zur Nutzung sind grundlegende Python-Kenntnisse erforderlich.
\subsection{Seaborn}
Seaborn ist eine Pythonbibliothek zum Visualisieren statistischer Daten und basiert auf Matplotlib.
\subsection{python-sympy}
Sympy ist eine Bibliothek für Python, welche symbolische Berechnungen ermöglicht. Das bedeutet, dass man statt mit konkreten Zahlen mit Variablen rechnen kann.
Die vollständige Dokumentation findet man unter \url{http://sympy.org/en/index.html}.
Derzeit ist SymPy in keinem Studienfach notwendiger Bestandteil, da es nicht so mächtig ist wie kommerzielle Alternativen. Es gehört aber zu den (wenigen) vielversprechenden freien Alternativen und bietet eine bequeme Schnittstelle zu den effizienten nummerischen Methoden von Numpy.
% Existiert nicht mehr in den offiziellen Repositories!
\subsection{ROOT}
ROOT ist eine Sammlung von Software, die zur Analyse von Daten in der Teilchenphysik entwickelt wurde, aber heute viele zusätzliche Möglichkeiten, wie das Erstellen von Graphen oder Kurvenfitting, bietet.
ROOT kann über das Terminal oder über eine graphische Oberfläche bedient werden.
Grundsätzlich basiert ROOT auf C++, aber leider hat es die unangenehme Eigenschaft, ein wenig von der üblichen C++-Syntax abzuweichen, weswegen es standardmäßig mit seinem eigenen Interpreter daher kommt. Es ist grundsätzlich mit etwas Aufwand möglich, C++-Code zu schreiben, der ROOT-Bibliotheken benutzt.
%Unter Umständen kann es notwendig sein, eine neuere ROOT-Version zu verwenden, als die, die in den offiziellen Ubuntu-Paketquellen enthalten ist.
ROOT ist nicht mehr in den offiziellen Paketquellen von Ubuntu enthalten und muss daher "`von Hand"' von der CERN-Website (\url{http://root.cern.ch/drupal/}) heruntergeladen werden. Dort findet man dann auch die Installationsanleitung.
Aufzurufen im Terminal mit: \texttt{root}\\
Für Hilfe: \texttt{man root}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment