====== Betriebssystem Linux ====== Es wird die [[Linux]] Distribution [[Devuan]] Daedalus installiert, als graphische Oberfläche kommt XFCE zum Einsatz. Vor Herausgabe eines Computers: [[Checkliste abarbeiten]] ===== Features ===== * Geringer Resourcenverbrauch * Sprachumschaltung im Anmeldebildschirm * Tastaturumschaltung je Programm Weitere geplante Features: * Lokale Sprachlernprogramme Da es manchmal nachgefragt wird, gibt es auch einige Informationen zu [[Ubuntu]] und [[Mint]]. Eine weitere in Betracht zu ziehende Oberfläche ist [[Mate]]. TODO ===== Basisinstallation ===== * Installation von NetInst-USB-Stick * Bei Tasksel auswählen * Debian Desktop Environment * XFCE * [[SSH]] Server * Standard-Systemwerkzeuge * Automatikauswahl für Paketabhängigkeiten einstellen APT::Install-Recommends "0"; APT::Install-Suggests "0"; * ''sources.list'' anpassen, z.B.: deb http://deb.devuan.org/merged daedalus main non-free-firmware deb http://deb.devuan.org/merged daedalus-security main non-free-firmware deb http://deb.devuan.org/merged daedalus-updates main non-free-firmware * Nachinstallieren * ''apt-get install joe ntpdate inkscape scribus'' * Firmware-Linux * Locales konfigurieren * Benutzermanager: ''gnome-system-tools'' * Icons: ''apt-get install gnome-extra-icons gnome-icon-theme-extras'' * Bevorzugte Anwendungen einstellen * Browser Startseite auf fhpi einstellen aptitude install policykit-1-gnome Im Menü fehlt das Icon für //Suspend//. Das kann man korrigieren indem man einen Link in ''hicolor/48x48/apps'' anlegt: cd /usr/share/icons/hicolor/48x48/apps ln -s xfsm-suspend.png system-suspend.png ===== Erweiterte Installation ===== * Inkscape: Vektorgraphiken bearbeiten * Scribus: Desktop-Publishing * Build-Essential: Basis für die Programmierumgebung (z.B. C) aptitude install geany inkscape scribus build-essential Firefox benutzbar machen aptitude install xul-ext-adblock-plus xul-ext-cookie-monster xul-ext-noscript Damit z.B. Handys als USB-Laufwerk gemountet werden können, sind noch weitere Pakete erforderlich, ob ''jmtpfs'' wirklich benötigt wird ist nochmals zu klären: aptitude install gvfs-backends jmtpfs gmtp libmtp-runtime Mit dem Programm ''gmpt'' (direkt aufrufen) kann man direkt Dateien vom Telefon herunterladen. Insbesonders kann auf ein Aquaris Ubuntu Phone zugegriffen werden. Weitere ggf. interessante Software: * FreeCAD * LibreCAD (2D) * OpenSCAD - 3D Modeller per Kommandosprache * Blender Software für das Internet aptitude install thunderbird hexchat hexchat-otr mumble gajim Als Twitter-Client kann z.B. ''corebird'' verwendet werden. Dieser kann auch mehrere Accounts verwalten! ===== Konfigurationstips ===== Bildschirm nie sperren, das ist z.B. bei den Foyer-PCs sinnvoll, da man dort sowieso kein Kennwort benötigt und die Benutzer in der Bildschirmschonerabfrage mangels Kennwort hängen bleiben: * Einstellungen * Energieverwaltung * Sicherheit * Nie XFCE: Script beim beenden der Session, z.B. zum Aufräumen #!/bin/bash # Add your own pre-session logic here /usr/bin/xfce4-session # Add your own logout logic here # clear Firefox rm ~/.mozilla/firefox/*.default/*.sqlite LightDM-Panel einstellen indicators=~clock;~spacer;~host;~spacer;~session;~power ==== Sprachumschaltung der Oberfläche ==== Sprachumschaltung: Die Sprachauswahl sollte im LightDM oben rechts angezeigt werden. Zuvor müssen natürlich die gewünschten Sprachen über ''locales'' installiert worden sein: dpkg-reconfigure locales Die Standardsprache des Systems ist in ''/etc/default/locale'' eingestellt. TODO Dies ist eine Baustelle ;-) * Konfiguration unter ''/etc/lightdm'' * Ob die Sprachauswahl im Anmeldebildschirm (''lightdm-greeter'') angezeigt wird, hängt von der Einstellung in ''/etc/lightdm/lightdm-gtk-greeter.conf'' ab. * Autologin: ''lightdm.conf'': ''autologin-user=matrose'' einstellen Es gibt ein Verzeichnis ''/var/lib/lightdm/data'', dort ist ein ''lightdm''-Verzeichnis, sowie anscheinend für jeden Benutzer (der sich einmal angemendel hat?) ein Verzeichnis. Welche Daten dort gespeichert werden sollen ist unbekannt. Die Sprache für das Menü ergibt sich aus der Einstellung in ''~/.dmrc''. Wenn sie dort einmal hinterlegt ist, ist nicht klar, wann eine Änderung dort hinterlegt wird. Zu erwarten wäre, daß die Auswahl im Greeter dort abgelegt würde. **Forschungsergebnis:** Wenn eine andere als die Standardsprache aus dem Menü ausgewählt wird, dann funktioniert die Umschaltung. ''.dmrc'' wird geschrieben. Wenn die Auswahl auf der Standardsprache gelassen wird, dann erfolgt keine Umschaltung, ''.dmrc'' wird nicht geändert. #!/bin/bash # workaround for session language selection in lightdm greeter # use .dmrc or accountsservice data (if accounts-daemon is running) # we need this only if lightdm is being used if pidof lightdm then # if accountsservice is used, get info from there. # if not, use .dmrc if pidof accounts-daemon then LANGFILE="/var/lib/AccountsService/users/$USER" else LANGFILE="$HOME/.dmrc" fi # extract, fix and export $LANG TEMPLANG=$(cat "$LANGFILE" | grep ^Language= | cut -d '=' -f 2 | sed 's/utf8/UTF8/') [ ! -z "$TEMPLANG" ] && export LANG=$TEMPLANG # convert $LANG to $LANGUAGE and export TEMPLANGUAGE="$(echo $LANG | cut -d '@' -f 1 | cut -d '.' -f 1):$(echo $LANG | cut -d '@' -f 1 | cut -d '.' -f 1 | cut -d '_' -f 1)" [ ! -z "$TEMPLANGUAGE" ] && export LANGUAGE=$TEMPLANGUAGE fi ==== Umschaltung der Tastaturbelegung ==== Die auf der Systemkonsole verwendete Tastaturbelegung wird eingestellt mit dpkg-reconfigure console-data Oben rechts im Panel ist eine Flagge, die die aktuelle Tastaturbelegung für das gerade laufende Programm anzeigt. Wechsel kann durch anklicken der Flagge erfolgen. Das zugehörige Paket für diese Funktion ist ''xfce4-xkb-plugin''. In der Standardkonfiguration ist diese Funktin nicht aktiviert. * Panel anklicken * Zur Leiste hinzufügen * Für Arabisch steht keine Flagge zur Verfügung, Workaround: cd /usr/share/xfce4/xkb/flags ln -s sy.svg ara.svg ==== Entfernen von Systemd ==== Zuerst an dieser Stelle der Hinweis auf [[https://devuan.org/|Devuan]], das ist ein Fork von Debian, der ohne Systemd auskommt. Ansonsten ist die gestellte Aufgabe, die Abhängigkeit von wichtigen Paketen von systemd zu lösen oder Alternativen zu suchen. * Vorbereitungen Package: systemd-sysv Pin: release o=Debian Pin-Priority: -1 * Umstellen auf SysV-Init apt-get install sysvinit-core * Neustarten shutdown -r now * systemd entfernen apt-get purge systemd * Aufräumarbeiten deluser systemd-timesync deluser systemd-network deluser systemd-resolve deluser systemd-bus-proxy delgroup systemd-journal rm -Rf /var/log/journal Wenn der Network-Manager nicht benutzt werden soll (z.B. Abhängigkeit zu pam-systemd) kann für die Verwaltung der WLAN-Verbindungen ''wicd'' benutzt werden. === Compilieren von eudev === Quelltexte als tgz unter: https://dev.gentoo.org/~blueness/eudev/ Fork mit Unterstützung für Debian: https://github.com/anto/eudev Voraussetzungen apt-get install autoconf automake build-essential git gperf libtool pkg-config xsltproc Übersetzen git clone https://github.com/gentoo/eudev.git cd eudev ./autoconf ./configure make Während des autoconf-Laufes wird eine Internetverbindung benötigt, weil die Erstellung der manpages irgendwelches Docbook-Zubehör herunterladen will. WTF? === Einstellungen für Mozilla === Noscript abgewöhnen nach Hause zu telefonieren: This feature, enabled by default, can be disabled by unchecking "NoScript Options|Advanced|ABE|WAN IP ∈ LOCAL".