<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://railpulse.de/m_codicatipps/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Codica</id>
	<title>CodicaTipps - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://railpulse.de/m_codicatipps/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Codica"/>
	<link rel="alternate" type="text/html" href="https://railpulse.de/codicatipps/Spezial:Beitr%C3%A4ge/Codica"/>
	<updated>2026-11-12T07:22:45Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23211</id>
		<title>Flutter</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23211"/>
		<updated>2026-11-10T06:37:34Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* immutable state */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
* [https://flutter.dev/ Flutter] ist ein [[Open Source]]-Framework, um native [[Android]]-, [[iOS]]-, [[Linux]]-, [[MacOS]]-  und [[Windows]]- sowie Web-Anwendungen zu bauen.&lt;br /&gt;
** mit [https://docs.fluxbuilder.com/ Fluxbuilder ]&lt;br /&gt;
&lt;br /&gt;
Als Programmiersprache wird [[Dart]] genutzt. Die Benutzerelemente sehen zwar aus wie native Elemente; sie werden aber auf Pixelbasis von den Flutter-Komponenten selbst errechnet.&lt;br /&gt;
&lt;br /&gt;
== Projektstruktur ==&lt;br /&gt;
&lt;br /&gt;
Zur grundsätzlichen Struktur eines Dart-Projekts (package) siehe&lt;br /&gt;
* https://dart.dev/tools/pub/create-packages&lt;br /&gt;
* https://dart.dev/tools/pub/package-layout &lt;br /&gt;
&lt;br /&gt;
Ein Package umfasst ein oder mehrere Libraries. Eine Library ist üblicherweise ein Dart-File (Ausnahme: Einbindung anderern [generierter] Dateien mittels &amp;lt;code&amp;gt;part&amp;lt;/code&amp;gt;-Direktive).&lt;br /&gt;
Libraries im lib/-Verzeichnis sind public, wogegen solche im lib/src-Verzeichnis privat sind.&lt;br /&gt;
&lt;br /&gt;
Wenn man Flutter benutzt kann man die Struktur durch&lt;br /&gt;
  flutter create&lt;br /&gt;
erzeugen lassen.&lt;br /&gt;
&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
=== State Management ===&lt;br /&gt;
&lt;br /&gt;
Das State Management ist ähnlich demjenigen von [[React]] und [[React Native]], allerdings klassenbasiert. Die neueren funktionsbasierten Hooks (useXXX) aus der React-Welt gibt es in Flutter nicht. Dafür gibt es viele ähnliche App-State-Management-Libraries, teilweise Übertragungen aus der React-Welt wie [[Redux]] und [[MobX]].&lt;br /&gt;
&lt;br /&gt;
Das State-Management erfolgt (ohne Library-Ergänzung) mit &lt;br /&gt;
* StatefulWidget oder&lt;br /&gt;
* InheritedWidget.&lt;br /&gt;
&lt;br /&gt;
Man kann sich [https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1 für eine App drei Schichten] vorstellen:&lt;br /&gt;
* UI (möglichst keine Logik, keine veränderbaren Daten)&lt;br /&gt;
* App State-Management (nur Logik und Daten)&lt;br /&gt;
* Business Logic (nur Logik und Daten, Persistenz, Netzwerk-Zugriff ...)&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1&lt;br /&gt;
* BLoC&lt;br /&gt;
* GetIt&lt;br /&gt;
&lt;br /&gt;
=== immutable state ===&lt;br /&gt;
&lt;br /&gt;
Benütze so oft als möglich &amp;quot;final&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
=== Layout ===&lt;br /&gt;
&lt;br /&gt;
https://dev.to/gochev/flutter-layout-complete-guide-58fo&lt;br /&gt;
&lt;br /&gt;
== Deployment ==&lt;br /&gt;
&lt;br /&gt;
=== Deployment einer Linux-Desktop-Anwendung ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://fastforge.dev/getting-started fastforge] kann man u.a. .deb-Pakete erstellen.&lt;br /&gt;
* Für make_config.yaml siehe https://github.com/fastforgedev/fastforge/blob/main/packages/flutter_app_packager/lib/src/makers/deb/make_deb_config.dart&lt;br /&gt;
&lt;br /&gt;
Mit [https://pub.dev/documentation/flutter_build_debian/latest/ flutter_build_debian] kann man sich ein .deb-Paket zur Installation auf Debian/Ubuntu/Derivaten erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://docs.flutter.dev/platform-integration/linux/building&lt;br /&gt;
* https://medium.com/@fluttergems/packaging-and-distributing-flutter-desktop-apps-the-missing-guide-part-3-linux-24ef8d30a5b4&lt;br /&gt;
* https://pub.dev/packages/fastforge&lt;br /&gt;
** https://fastforge.dev/&lt;br /&gt;
&lt;br /&gt;
== Besonderheiten ==&lt;br /&gt;
&lt;br /&gt;
=== Dateizugriff auf Media-Dateien beschränkt ===&lt;br /&gt;
&lt;br /&gt;
Beim Auflisten des Inhalts eines Verzeichnisses erscheinen Dateien nicht. Das liegt daran, dass standardmäßig unter [[Android]] keine Berechtigungen erlaubt sind, andere Dateien als Media-Dateien (JPEG, PDF etc) zu lesen.&lt;br /&gt;
&lt;br /&gt;
Man muss die Berechtigungen sowohl in die Manifest.xml eintragen als auch vom Benutzer anfordern. Siehe Permission.request in plugin permission_handler.&lt;br /&gt;
In Frage kommen insbesondere:&lt;br /&gt;
* READ_MEDIA_IMAGES&lt;br /&gt;
* READ_MEDIA_VIDEO&lt;br /&gt;
* READ_MEDIA_AUDIO&lt;br /&gt;
oder&lt;br /&gt;
* [https://developer.android.com/training/data-storage/manage-all-files MANAGE_EXTERNAL_STORAGE]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/dart-lang/sdk/issues/44848&lt;br /&gt;
&lt;br /&gt;
=== JSON ===&lt;br /&gt;
&lt;br /&gt;
==== JSON serialization ====&lt;br /&gt;
&lt;br /&gt;
Dart hilft beim Einpacken von Daten in JSON und dem Auspacken. Allerdings ist es nicht [[JavaScript]] oder [[TypeScript]], das ein first-class-Handling von [[JSON]] ermöglichen.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Libraries sind&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/dart_mappable dart_mappable] vom Author von [[Jaspr]]&lt;br /&gt;
* json_serializable&lt;br /&gt;
* built_value&lt;br /&gt;
* deep_pick&lt;br /&gt;
* [https://pub.dev/packages/equatable equatable]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://codewithandrea.com/articles/parse-json-dart/&lt;br /&gt;
&lt;br /&gt;
==== Weitere Libraries für Behandlung von JSON in Dart/Flutter ====&lt;br /&gt;
Weitere hilfreiche Libraries mit JSON&lt;br /&gt;
* [https://pub.dev/packages/json_path json_path]&lt;br /&gt;
* [https://pub.dev/packages/rfc_6901 rfc_6901 - JSONPointer Implementierung] - kann JSON-Strukturen bearbeiten&lt;br /&gt;
* [https://pub.dev/packages/flutter_json_view flutter_json_view] - kann JSON-Strukturen anzeigen&lt;br /&gt;
&lt;br /&gt;
== Libraries ==&lt;br /&gt;
&lt;br /&gt;
=== AppState-Libraries ===&lt;br /&gt;
&lt;br /&gt;
Sehr einfache AppState-Libraries sind&lt;br /&gt;
&lt;br /&gt;
*  get_it und&lt;br /&gt;
*  watch_it&lt;br /&gt;
&lt;br /&gt;
=== UI-Libraries ===&lt;br /&gt;
&lt;br /&gt;
* https://forui.dev/docs&lt;br /&gt;
* https://flutter-shadcn-ui.mariuti.com/&lt;br /&gt;
&lt;br /&gt;
=== Datenbank ===&lt;br /&gt;
&lt;br /&gt;
==== SurrealDB ====&lt;br /&gt;
&lt;br /&gt;
[[SurrealDB]] kann mit dem Package [https://github.com/duhanbalci/surrealdb_flutter surrealdb von Duhanbalci] genutzt werden. Das Package kann von [https://pub.dev/packages/surrealdb pub.dev] installiert werden:&lt;br /&gt;
  flutter pub add surrealdb&lt;br /&gt;
&lt;br /&gt;
===== Problem mit Websocket-Subprotokoll =====&lt;br /&gt;
Stand Jan. 2025 gibt es noch ein Problem mit einem &amp;quot;Subprotokoll&amp;quot; der Websocket-Schnittstelle. Näheres dazu unter dem [https://github.com/duhanbalci/surrealdb_flutter/issues/26 (allerdings geschlossenen) Issue auf GitHub].&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
* Couchbase Lite &lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_dart] - alle Plattformen außer Web&lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_flutter] nur für Android&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/documentation/wilt/latest/wilt/Wilt-class.html Wilt] - CouchDB client for server and flutter-based mobile&lt;br /&gt;
* [https://pub.dev/packages/sporran Sporran] basiert auf Wilt, kann aber auch lokal arbeiten und wie [[PouchDB]] mit einer entfernten Instanz synchronisieren. Wohl nur für Web-Plattform.&lt;br /&gt;
&lt;br /&gt;
==== Weitere Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[Sembast]]&lt;br /&gt;
* sqflite - SQLLite für Flutter&lt;br /&gt;
* Floor - basiert auf sqflite&lt;br /&gt;
** https://quashbugs.com/blog/exploring-flutters-floor-library-for-efficient-data-persistence&lt;br /&gt;
* Hive&lt;br /&gt;
&lt;br /&gt;
=== Dart auf Serverseite ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Dart]]&lt;br /&gt;
&lt;br /&gt;
=== Offline-First ===&lt;br /&gt;
&lt;br /&gt;
Insbesondere mobile Apps müssen damit zurechtkommen, dass Datenänderungen nicht sofort zum zentralen Server oder zum Client kommen. Auch dafür gibt &lt;br /&gt;
es Libraries, die helfen, wenn die Datenbank das nicht selbst tut (z.B. bei [[PouchDB]]):&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/fast_sync_hive_dao FastSync]&lt;br /&gt;
** https://pub.dev/packages/fast_sync_client&lt;br /&gt;
* https://code.zeba.academy/offline-apps-flutter-syncing-data-handling-connectivity-issues/ - Anleitung mit Hilfe der lokalen Datenbank [[Sembast]]&lt;br /&gt;
* https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync - Anleitung mit Hilfe von SQLite, Supabase und PowerSync&lt;br /&gt;
* https://flutterdata.dev/&lt;br /&gt;
** https://github.com/flutterdata/flutter_data&lt;br /&gt;
* https://dev.to/anurag_dev/implementing-offline-first-architecture-in-flutter-part-1-local-storage-with-conflict-resolution-4mdl&lt;br /&gt;
* https://www.dhiwise.com/post/navigating-offline-database-in-flutter-a-comprehensive-guide&lt;br /&gt;
* https://pub.dev/packages/offline_sync&lt;br /&gt;
&lt;br /&gt;
== IDE etc. ==&lt;br /&gt;
&lt;br /&gt;
*  https://dartpad.dev/ - einfache Dart/Flutter-Schnipsel ausprobieren&lt;br /&gt;
* Visual Studio Code mit der Flutter-Erweiterung&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/Solido/awesome-flutter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternativen zu Flutter ==&lt;br /&gt;
&lt;br /&gt;
* [[ReactJs]]&lt;br /&gt;
* [[React Native]] &lt;br /&gt;
** Expo&lt;br /&gt;
* [https://pub.dev/packages/jaspr Jaspr] - a web framework for dart, similar to flutter, but renders via HTML/CSS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Softwareentwicklung]] &lt;br /&gt;
[[Category:Android]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=FRITZ!Box&amp;diff=23210</id>
		<title>FRITZ!Box</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=FRITZ!Box&amp;diff=23210"/>
		<updated>2026-11-09T21:05:52Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Fritz!Box API */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Fritz!Box von AVM sind recht weitgehend konfigurierbar DSL-Router, die teilweise auch WLAN und/oder DECT-Telefonie können. Auch für recht alte Modelle erscheint noch regelmäßig ein Update der Software. Schließlich kann auch verhältnismäßig einfach selbst bearbeitete Firmware installiert werden.&lt;br /&gt;
&lt;br /&gt;
Unterstützung gibt es eine Menge im Netz, zum Einen auf den Seiten von AVM.&lt;br /&gt;
Zum Anderen von verschiedensten Quellen, z.B.&lt;br /&gt;
* [https://blog.thesen.eu/wenn-die-namen-aus-dem-telefonbuch-nicht-auf-dem-dect-mobilteil-an-einer-fritzbox-erscheinen/ Codes zum Ändern der Art der Übertragung von Rufnummern von der Fritz!Box zum DECT-Telefon]&lt;br /&gt;
&lt;br /&gt;
Ab vermutlich Version 7.0 des Fritz!OS soll auch der Cat-iq 2.0-Standard&amp;lt;ref&amp;gt;http://www.connect.de/ratgeber/interview-mit-eric-kamperschroer-810072-4650.html&amp;lt;/ref&amp;gt; unterstützt werden. Damit sollen auch Telefone anderer Hersteller unkomplizierter auf das Telefonbuch und den Anrufbeantworter der Fritz!Box zugreifen können. &lt;br /&gt;
&lt;br /&gt;
Die aktuellen Fritz!Fons C4, C5 und M2 von AVM sind zwar strahlungsarm (ECODECT). Sie unterstützen aber den strahlungsfreien Modus im Standby (ECO-Mode Plus) nicht.&lt;br /&gt;
&lt;br /&gt;
== Stromverbrauch der Fritz!Box ==&lt;br /&gt;
&lt;br /&gt;
AVM macht zu den einzelnen Fritzboxen Angaben zum durchschnittlichen und maximalen Stromverbrauch auf https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590-AX/138_Stromverbrauch-der-FRITZ-Box/ . Das jeweilige Modell ist oben rechts auszuwählen.&lt;br /&gt;
&lt;br /&gt;
== WLAN ==&lt;br /&gt;
&lt;br /&gt;
=== per DECT ein/ausschalten ===&lt;br /&gt;
&lt;br /&gt;
Das WLAN lässt sich auch von einem angeschlossenen DECT-Telefon an- und abschalten:&amp;lt;ref&amp;gt;http://www.gigaset.com/de_de/cms/home/kundenservice/privatkunden/kompatibilitaet/compat/list/CompatEntry/ROUTERFRITZBOX7490.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* WLAN einschalten mit #96*1* &lt;br /&gt;
* WLAN ausschalten mit #96*0*&lt;br /&gt;
&lt;br /&gt;
=== Fritzbox als WLAN Repeater ===&lt;br /&gt;
&lt;br /&gt;
Alte Fritzboxen lassen sich unproblematisch als WLAN Repeater weiternutzen. Bei neueren&lt;br /&gt;
geht es oft nur, wenn die beiden Fritzboxen per LAN-Kabel verbunden sind und nicht nur &lt;br /&gt;
per WLAN.&lt;br /&gt;
&lt;br /&gt;
So ist es beispielsweise bei &lt;br /&gt;
* der Fritz!box 7690 und&lt;br /&gt;
* der Fritz!box 5690 Pro&lt;br /&gt;
&lt;br /&gt;
Siehe die [https://fritz.com/en/apps/knowledge-base/FRITZ-Box-7590-AX/3361_Which-FRITZ-products-support-Mesh/ Tabelle auf fritz.com]&lt;br /&gt;
&lt;br /&gt;
== Telefonie ==&lt;br /&gt;
&lt;br /&gt;
=== Anrufbeantworter ===&lt;br /&gt;
&lt;br /&gt;
Üblicherweise kommt man mit &amp;lt;code&amp;gt;**600&amp;lt;/code&amp;gt; den Anrufbeantworter von einem angeschlossenen DECT-Telefon o.Ä. erreichen.&lt;br /&gt;
Die Navigation im Anrufbeantworter kann man mit entsprechenden Zahlen durchführen.&lt;br /&gt;
&lt;br /&gt;
Etwas versteckt ist das Abhören alter Nachrichten. Dafür muss man &#039;&#039;&#039;zweimal&#039;&#039;&#039; die &amp;lt;code&amp;gt;1&amp;lt;/code&amp;gt;-Taste drücken.&lt;br /&gt;
&lt;br /&gt;
=== Rufnummernunterdrückung fallweise ===&lt;br /&gt;
&lt;br /&gt;
* Möchte man, dass die eigene Rufnummer generell beim Angerufenen nicht angezeigt wird (anonymes Anrufen), kann man dies in der Benutzeroberfläche der Fritzbox einstellen: &amp;lt;cite&amp;gt;Telefonie -&amp;gt; Telefoniegeräte -&amp;gt; Icon zum Bearbeiten des Telefons anklicken -&amp;gt; Merkmale des Telefoniegeräts -&amp;gt; Haken bei &amp;quot;Eigene Rufnummer unterdrücken (CLIR).&amp;quot;&amp;lt;/cite&amp;gt;&lt;br /&gt;
* Möchte man dagegen, dass normalerweise die Rufnummer übermittelt wird, dies aber bei einzelnen Anrufen unterdrückt wird, setzt man den o.a. Haken nicht und wählt bei den anonymen Anrufen vor der eigentlichen Nummer ein &amp;lt;code&amp;gt;*31#&amp;lt;/code&amp;gt;.&amp;lt;ref&amp;gt;Vgl. https://www.easybell.de/hilfe/fragen/fragen-zum-telefonanschluss/antwort/dauerhafte-oder-fallweise-rufnummernunterdrueckung-einstellen-clir.html&amp;lt;/ref&amp;gt;&amp;lt;small&amp;gt;Also nicht wie bei anderen Telefonen mit &amp;lt;code&amp;gt;#31#&amp;lt;/code&amp;gt;.&amp;lt;ref&amp;gt;Vgl. https://praxistipps.chip.de/androidiphone-rufnummen-uebermittlung-gezielt-unterdruecken_13551&amp;lt;/ref&amp;gt;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== VoIP ==&lt;br /&gt;
&lt;br /&gt;
Das Telefonieren über Internet (Voice Over IP) funktioniert nur, wenn auch das Internet funktioniert. Daher muss zunächst das Internet (DSL o.Ä.) in der Fritz!Box funktionieren. Erst dann kann man sich um die Einrichtung von VoIP kümmern.&lt;br /&gt;
&lt;br /&gt;
=== VoIP mit sipgate ===&lt;br /&gt;
&lt;br /&gt;
Die Fritz!Box hat ein eigenes Profil für den VoIP-Anbieter [http://sipgate.de sipgate]:&lt;br /&gt;
&lt;br /&gt;
* In der Fritz!Box-Weboberfläche Telefonie/Eigene Rufnummern/Neue Rufnummer auswählen.&lt;br /&gt;
* Sipgate auswählen&lt;br /&gt;
* Die SIP-ID (findet man, wenn man sich auf sipgate.de einloggt) als Benutzername angeben&lt;br /&gt;
* Das Passwort (findet man ebenfalls auf sipgate.de) eingeben&lt;br /&gt;
* Dann zweimal auf Weiter&lt;br /&gt;
* Möglicherweise muss man bei Telefonie/Anschlusseinstellungen noch das Häkchen bei &amp;quot;Nutzung von Internettelefonie aus dem Heimnetz unterbinden&amp;quot; löschen&lt;br /&gt;
&lt;br /&gt;
=== VoIP mit o2 (früher HanseNet/Alice) ===&lt;br /&gt;
&lt;br /&gt;
Die Angaben, die man in der Fritz!Box unter Telefonie/Eigene Rufnummern/Neue Rufnummer/anderer Anbieter angeben muss lauten:&lt;br /&gt;
&lt;br /&gt;
* Rufnummer für die Anmeldung: 0VVNNNNNNN &lt;br /&gt;
* Interne Rufnummer in der Fritz!Box: 0VVNNNNNNN &lt;br /&gt;
* Anzeigename (optional): o2&lt;br /&gt;
* Benutzername: LLVVNNNNNNNNN (entspricht dem &amp;quot;SIP Benutzernamen&amp;quot; in der O2-Terminologie.)&lt;br /&gt;
* Passwort: (entspricht dem &amp;quot;SIP Passwort&amp;quot; in der O2-Terminologie)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
VV steht dabei für die Vorwahl in Deutschland ohne 0, z.B. 711 für Stuttgart,&lt;br /&gt;
NNNN für die Telefonnummer ohne Vorwahl,&lt;br /&gt;
LL für die Ländervorwahl ohne Null oder voranstehendes +, z.B. 49 für Deutschland&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Netzwerkgeschwindigkeit mit iperf messen ==&lt;br /&gt;
&lt;br /&gt;
Den eingebauten  iperf-Server der Fritz!Box startet man über die versteckte Seite http://fritz.box/support.lua .&amp;lt;ref&amp;gt;https://linuxundich.de/gnu-linux/netzwerk-performance-mit-in-fritzbox-integriertem-iperf-testen/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Logs erstellen ==&lt;br /&gt;
&lt;br /&gt;
Auf http://fritz.box/capture.html kann das loggen gestartet werden.&amp;lt;ref&amp;gt;Siehe https://praxistipps.chip.de/fritzbox-datenverkehr-mitschneiden_9989&amp;lt;/ref&amp;gt; Angeschaut werden können die Logfiles dann mit Wireshark.&lt;br /&gt;
&lt;br /&gt;
== Fritz!Box und Ipv6 ==&lt;br /&gt;
&lt;br /&gt;
=== Problem: kein Zugriff trotz Portfreigabe ===&lt;br /&gt;
Bei der Umstellung von IPv4 auf IPv6 ändern sich für einen hinter einer Fritzbox im lokalen Netz sitzenden Server nach meinem Verständnis im Wesentlichen zwei Dinge:&lt;br /&gt;
&lt;br /&gt;
# Der Rechner erhält eine global sichtbare IP-Adresse. D.h. aber nicht, dass man aus dem Internet auch auf diesen Rechner zugreifen kann, dafür gibt es weiterhin die Möglichkeit einer (Port-)Freigabe.&lt;br /&gt;
# Der Rechner bekommt seine global sichtbare IP-Adresse im Normalfall nicht von der Fritzbox zugeteilt, sondern errechnet sie selbst innerhalb eines bestimmten Rahmens ([https://www.elektronik-kompendium.de/sites/net/1902141.htm SLAAC]). Mit [https://www.elektronik-kompendium.de/sites/net/1902141.htm DHCPv6] kann man das aber wohl auch anders handhaben ([https://www.elektronik-kompendium.de/sites/net/1902141.htm Stateful Address Connfiguration - SAC]).&lt;br /&gt;
&lt;br /&gt;
Zu 1.: Die Portfreigabe in der Fritzbox hat gegenüber IPv4 bei IPv6 nur die Aufgabe, ein Loch für Adresse plus Port in die Firewall der Fritzbox zu schnitzen. Bei IPv4 hat die Fritzbox zusätzlich die Zieladresse des IP-Pakets von der Fritzbox-Adresse in die lokale IP-Adresse des Rechners geändert.&lt;br /&gt;
&lt;br /&gt;
Zu 2.: Es gibt verschiedene Wege, die eigene IP-Adresse zu errechnen. Üblicherweise wird wohl aus Datenschutzgründen&amp;lt;ref&amp;gt;Vgl. https://www.elektronik-kompendium.de/sites/net/1902131.htm#:~:text=Stateless%20Address%20Autoconfiguration%20(SLAAC)%20ist,zentral%20vergeben%20und%20gespeichert%20wird&amp;lt;/ref&amp;gt; ein zufallsorientiertes Verfahren eingesetzt. Aber man kann z.B. auf Basis der MAC-Adresse des Netzwerkadapters auch eine [https://xinux.net/index.php/Ipv6_slaac#EUI-64_Verfahren  modifizierte EUI 64-Adresse] errechnen; diese bleibt dann unverändert.&lt;br /&gt;
&lt;br /&gt;
=== Lösung: unveränderliche IPv6-Adresse ===&lt;br /&gt;
Diese unveränderliche IPv6-Adresse ist auch die Lösung, wenn trotz Portfreigaben an der Fritzbox, IPv6-Pakete nicht den lokalen Rechner erreichen. Denn ohne diese EUI 64-Adresse ist in der Fritzbox möglicherweise nur eine Portfreigabe für die früher erzeugte, nicht aber für die aktuelle IPv6-Adresse enthalten. Vgl. [https://oglimmer.medium.com/hosting-a-website-at-home-behind-a-fritzbox-with-ipv6-enabled-9aa725cebb76 Artikel von oglimmer auf Medium].&lt;br /&gt;
&lt;br /&gt;
Möglicherweise muss man auch den [https://nocksoft.de/tutorials/dyndns-fuer-ipv6-server-hinter-fritzbox-konfigurieren/ DNS-Rebind-Schutz] für die jeweilige Domain, die mit der IPv6-Adresse verknüpft wird, (z.B. per DynDNS) in der Fritzbox deaktivieren.&lt;br /&gt;
&lt;br /&gt;
Bei mir hat geholfen:&lt;br /&gt;
* In der Fritzbox unter Heimnetz -&amp;gt; Netzwerk -&amp;gt; Netzwerkeinstellungen -&amp;gt; IPv6-Einstellungen -&amp;gt; DHCPv6 in der Fritzbox aktivieren -&amp;gt; DNS-Server, Präfix und IPv6-Adresse zuweisen.&lt;br /&gt;
* Außerdem ist sinnvoll einen [[DynDNS]]-Server zu nutzen, um trotz sich ändernder Präfixe der IPv6-Adresse (wird der Fritzbox von Zeit zu Zeit zugewiesen) immer einen Zugriff auf den lokalen Server vom Internet aus zu erhalten. Siehe&lt;br /&gt;
** https://nocksoft.de/tutorials/dyndns-fuer-ipv6-server-hinter-fritzbox-konfigurieren/&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://oglimmer.medium.com/hosting-a-website-at-home-behind-a-fritzbox-with-ipv6-enabled-9aa725cebb76&lt;br /&gt;
* https://www.elektronik-kompendium.de/sites/net/1902131.htm#:~:text=Stateless%20Address%20Autoconfiguration%20(SLAAC)%20ist,zentral%20vergeben%20und%20gespeichert%20wird&lt;br /&gt;
* https://blog.lohr.dev/ipv6-port-sharing-using-fritzbox&lt;br /&gt;
* https://www.sidorenko.io/post/2016/12/ipv6-with-prefix-delegation-routeros-and-fritzbox/&lt;br /&gt;
* https://www.keithh.com/network/ipv6-setup/&lt;br /&gt;
* https://en.avm.de/service/knowledge-base/dok/FRITZ-Box-7590/573_Configuring-IPv6-in-the-FRITZ-Box/&lt;br /&gt;
* https://en.avm.de/service/knowledge-base/dok/FRITZ-Box-7340-int/845_Setting-up-IPv6-port-sharing-in-the-FRITZ-Box/&lt;br /&gt;
* https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590/1239_IPv6-Subnetz-in-FRITZ-Box-einrichten/&lt;br /&gt;
* [https://www.elektronik-kompendium.de/sites/raspberry-pi/1912171.htm Einrichtung feste IPv6 für Raspberry]&lt;br /&gt;
&lt;br /&gt;
== Fritz!Box 6490 Cable ==&lt;br /&gt;
&lt;br /&gt;
=== Einrichtung an Vodafone Kabel ===&lt;br /&gt;
&lt;br /&gt;
Nicht jede Fritz!Box 6490 Cable läuft bei jedem Provider. &amp;lt;ref&amp;gt;Vgl. https://avm.de/service/fritzbox/fritzbox-6490-cable/wissensdatenbank/publication/show/3270_Kann-die-FRITZ-Box-an-jedem-Kabelanschluss-eingesetzt-werden/.&amp;lt;/ref&amp;gt; Nur die Fritz!Box 6490 mit der Artikelnummer 20002778, die Fritz!Box 6590 und die Fritz!Box 6430 können an jedem Kabelanschluss eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://forum.vodafone.de/t5/Internet-Ger%C3%A4te/Eigene-Fritz-Box-6490-Einrichten/td-p/1298105&lt;br /&gt;
* https://kabel.vodafone.de/hilfe_und_service/faq/article/question/was-muss-ich-zur-endgeraetefreiheit-wissen&lt;br /&gt;
* https://forum.vodafone.de/t5/Internet-Ger%C3%A4te/Probleme-beim-Hitron-CVE-30360-Bridgemode-Gigabit-LAN-Anschluss/td-p/1167997&lt;br /&gt;
&lt;br /&gt;
* https://avm.de/service/freie-routerwahl/faqs-zur-freien-routerwahl/&lt;br /&gt;
&lt;br /&gt;
Zum möglicherweise funktionierenden aber komplizierten Debranding der Fritzbox 6490 Cable:&lt;br /&gt;
* https://www.ip-forum.eu/howto-aendern-des-branding-und-installieren-der-retail-firmware-bei-fritz-box-cable-160&lt;br /&gt;
* https://thomasheinz.net/unitymedia-fritzbox-6490-an-vodafone-kabel-deutschland-anschluss-betreiben/&lt;br /&gt;
&lt;br /&gt;
=== TvHeadend und Fritz!Box 6490 ===&lt;br /&gt;
Siehe [[Tvheadend]]&lt;br /&gt;
&lt;br /&gt;
== Fritz!Box 7490 hinter Hitron Bridge ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://avm.de/service/fritzbox/fritzbox-7490/wissensdatenbank/publication/show/16_FRITZ-Box-fuer-Betrieb-am-Kabelanschluss-einrichten/&lt;br /&gt;
* https://www.workshop-heimnetzwerk.de/fritzbox-an-kabelmodem-anschliessen.php&lt;br /&gt;
&lt;br /&gt;
== Fritz!Box API ==&lt;br /&gt;
&lt;br /&gt;
Die Fritz!Box kennt mehrere APIs:&lt;br /&gt;
*  TR-064 ist die Haupt-API&lt;br /&gt;
** [https://www.schlaue-huette.de/apis-co/fritz-tr064/ Aktivieren der TR064-Schnitstelle]&lt;br /&gt;
** [https://administrator.de/wissen/powershell-fritzbox-tr-064-netzwerk-konfigurieren-auslesen-303474.html Nutzen der TR-064 über die PowerShell]&lt;br /&gt;
** [https://blog.pregos.info/2015/11/07/anwesenheitserkennung-fuer-smarthome-mit-der-fritzbox-via-tr-064/ Prüfung, ob Gerät verfügbar] auf Basis von [[PHP]]&lt;br /&gt;
** [https://github.com/sky321/fritz_TR-064 Sammlung verschiedener Skripte zu TR-064]&lt;br /&gt;
** Libraries&lt;br /&gt;
*** https://fritzconnection.readthedocs.io/en/1.9.1/sources/introduction.html - Commandline-Tool auf Basis von [[Python]]&lt;br /&gt;
**** Logs können geparst werden von [https://docs.rs/fritzbox_logs/latest/fritzbox_logs/ Fritzbox_logs]&lt;br /&gt;
*** https://www.npmjs.com/package/@seydx/fritzbox&lt;br /&gt;
**** basiert auf https://gitlab.com/ulfalfa/fritzbox (das selbst wohl nicht mehr gepflegt wird)&lt;br /&gt;
*** [https://github.com/tik9/fritzbox Bash-Scripte für TR-064]&lt;br /&gt;
*** [https://github.com/mirthas/FritzTR064 FritzTR064] auf Basis von [Java] (archiviert)&lt;br /&gt;
&lt;br /&gt;
* das [https://avm.de/service/schnittstellen/ AHA-HTTP-Interface] ermöglicht auch die Steuerung der Home-Automationsteile der Fritz!Box-Welt.&lt;br /&gt;
** [https://www.heise.de/select/ct/2016/7/1459414791794586 Anleitung zum Skripten der Heimautomation in der c&#039;t]&lt;br /&gt;
** [https://github.com/andig/fritzapi Nodejs Modul für die FritzBox-API] (eingeschränkter Funktionsumfang, dafür einfach zu bedienen)&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://avm.de/service/schnittstellen/&lt;br /&gt;
&lt;br /&gt;
== Problembehebung ==&lt;br /&gt;
&lt;br /&gt;
=== DSL-Zugang funktioniert nicht ===&lt;br /&gt;
&lt;br /&gt;
Das kann mit der [https://www.telekom.de/hilfe/hilfe-bei-stoerungen/leitungspruefung?execution1207470=e2s2 Telekom-Leitungsprüfung] gemessen werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Router]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
[[Category:Telefon]]&lt;br /&gt;
[[Category:Internet]]&lt;br /&gt;
[[Category:Netzwerk]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=NGINX&amp;diff=23209</id>
		<title>NGINX</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=NGINX&amp;diff=23209"/>
		<updated>2026-11-08T13:19:11Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Besondere Konfigurationen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;NGINX ist ein Open Source Web-Server, eine Alternative zu [[Apache]].&lt;br /&gt;
&lt;br /&gt;
== Besondere Konfigurationen ==&lt;br /&gt;
&lt;br /&gt;
=== Aussperren von bestimmten Usern ===&lt;br /&gt;
&lt;br /&gt;
Eine Vielzahl von Mac OS X 10.15.7 - Rechnern scheint von Hackern gekapert zu sein. Um deren Anfrage auf die eigene Seite abzuwehren,&lt;br /&gt;
bedarf es zwei Direktiven in der Nginx-Konfiguration. Im &amp;lt;code&amp;gt;http { ... }&amp;lt;/code&amp;gt;-Teil ein mapping:&lt;br /&gt;
&lt;br /&gt;
  map $http_user_agent $dh_block_user_agent {&lt;br /&gt;
    default 0;&lt;br /&gt;
    &amp;quot;~*(Intel Mac OS X 10_15_7)&amp;quot; 1;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
Und bei jeder &amp;lt;code&amp;gt;server { ... }&amp;lt;/code&amp;gt;-Beschreibung:&lt;br /&gt;
&lt;br /&gt;
 if ($dh_block_user_agent) {&lt;br /&gt;
   return 403;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
=== Reverse Proxy mit Websockets ===&lt;br /&gt;
&lt;br /&gt;
* https://www.kernelhost.com/de/blog/nginx-reverse-proxy-einrichten&lt;br /&gt;
&lt;br /&gt;
== Fehlersuche ==&lt;br /&gt;
&lt;br /&gt;
=== Erweitertes Logging ===&lt;br /&gt;
In /etc/nginx/nginx.conf kann folgende Direktive aufgenommen werden:&lt;br /&gt;
  error_log /path/to/log debug;&lt;br /&gt;
Damit werden in die Logdatei z.B. auch Rewrites geschrieben. &lt;br /&gt;
&lt;br /&gt;
Das Logging kann auf bestimmte Client beschränkt werden:&amp;lt;ref&amp;gt; Vgl. http://nginx.org/en/docs/debugging_log.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  events {&lt;br /&gt;
    debug_connection 192.168.1.1;&lt;br /&gt;
    debug_connection 192.168.10.0/24;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
Das Log wird dann sehr voll; man kann die Ausgabe daher auch filtern, etwa so:&lt;br /&gt;
&lt;br /&gt;
  tail -f /var/log/nginx/access.log /var/log/nginx/error.log | egrep -v &#039;(free:|delete|reusable connection|malloc|recv: fd:|event timer del:|http keepalive|post event|close http|recv()|hc busy|tcp_nodelay|writev:|write old buf|write new buf|content phase:|http log handler|add cleanup:|http write filter|posix_memalign|event timer add:|access phase:|generic phase:|epoll add event|http wait request handler)&#039;&lt;br /&gt;
&lt;br /&gt;
=== Nginx-Konfiguration auflisten ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  sudo nginx -T&lt;br /&gt;
zeigt nginx die derzeit genutzte Konfiguration an.&lt;br /&gt;
&lt;br /&gt;
=== Rewrite Regeln überprüfen ===&lt;br /&gt;
&lt;br /&gt;
Siehe das [https://nginx.viraptor.info/ Online-Tool von Viraptor ]&lt;br /&gt;
&lt;br /&gt;
== Alternativen ==&lt;br /&gt;
&lt;br /&gt;
* Apache httpd&lt;br /&gt;
* [[Caddyserver]]&lt;br /&gt;
* npx serve&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
* [https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/ Häufige Fehler bei der Konfiguration von NGINX]&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Internet]]&lt;br /&gt;
[[Category:Server-Software]]&lt;br /&gt;
[[Category:Plattformübergreifende Software]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Informationstechnik&amp;diff=23208</id>
		<title>Informationstechnik</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Informationstechnik&amp;diff=23208"/>
		<updated>2026-11-05T05:41:25Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* QR Codes erzeugen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Siehe [[oldCt:Informationstechnik]]&lt;br /&gt;
&lt;br /&gt;
== Desktopsystem ==&lt;br /&gt;
&lt;br /&gt;
* [[Desktop]]&lt;br /&gt;
* [[:Category:DesktopSoftware]]&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Schau mal, was [https://solar.lowtechmagazine.com/ mit weniger Technik geht].&lt;br /&gt;
&lt;br /&gt;
=== Notebooks ===&lt;br /&gt;
&lt;br /&gt;
[[Notebook]]&lt;br /&gt;
* [[Subnotebook]]&lt;br /&gt;
&lt;br /&gt;
=== Flüster-PCs ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Flüster-PC]].&lt;br /&gt;
&lt;br /&gt;
=== HTPC ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[HTPC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== PC-Tower ===&lt;br /&gt;
&lt;br /&gt;
* [[HP-Compaq dx2300 Microtower]]&lt;br /&gt;
&lt;br /&gt;
=== Mikrocontroller ===&lt;br /&gt;
&lt;br /&gt;
[[Mikrocontroller]]&lt;br /&gt;
&lt;br /&gt;
=== Router ===&lt;br /&gt;
* [[Netzwerk#Router]]&lt;br /&gt;
&lt;br /&gt;
=== Hifi ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Audio#Audio-Hardware]]&lt;br /&gt;
&lt;br /&gt;
=== Telefon ===&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Telefon#Handymodelle]]&lt;br /&gt;
&lt;br /&gt;
=== TV-Monitor ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kabelfernsehen]]&lt;br /&gt;
&lt;br /&gt;
==== Anforderungen ====&lt;br /&gt;
* mindestens 22 Zoll (58 cm), besser: 32 Zoll (81 cm)&lt;br /&gt;
* HDReady (720p Voll-, 1080p Halbbild) , besser FullHD (1080p Vollbild)&lt;br /&gt;
* Kontrast: 50000:1&lt;br /&gt;
* Reaktionszeit: 6,5 ms&lt;br /&gt;
* Helligkeit: 400 cd/m2&lt;br /&gt;
* Betrachtungswinkel: 178/178 °&lt;br /&gt;
&lt;br /&gt;
==== Einzelne Modelle ====&lt;br /&gt;
&lt;br /&gt;
* Der [http://www.aoc-europe.com AOC] i2353h hat zwar nur eine Reaktionszeit von 17 ms, eignet sich aber lt. [[ct]] 20/2011 S. 58 zum Videoschauen.&lt;br /&gt;
** [http://www.prad.de/new/monitore/test/2011/test-aoc-i2353fh-teil4.html Testbericht AOC i2353h]&lt;br /&gt;
&lt;br /&gt;
=== Kabel-Receiver ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kabelfernsehen]]&lt;br /&gt;
&lt;br /&gt;
==== Anforderungen ====&lt;br /&gt;
* DVB-C (HD)&lt;br /&gt;
* PVR (Aufnahme z.B. auf interne Festplatte) oder PVR-ready (Aufnahme auf externes Speichergerät)&lt;br /&gt;
* EPG (elektronische Programmzeitschrift)&lt;br /&gt;
* 1080p-Upscaling&lt;br /&gt;
* CI+ (bei Kabel Deutschland schon für den Empfang freier privater TV-Sender erforderlich)&lt;br /&gt;
&lt;br /&gt;
==== Beispiele ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.comag.de/ ComAG] DKR 900 HD CI+ (rd. 100 €)&lt;br /&gt;
** [http://receiver-support.net/index.php?page=Thread&amp;amp;threadID=4078 Innenleben des Comag DKR 900 HD CI+]&lt;br /&gt;
** [http://www.comag.tv/board/index.php?page=Thread&amp;amp;threadID=6317 Aufnahmeproblem 1], [http://netcologneforum.de/viewtopic.php?f=15&amp;amp;t=1615 Aufnahmeproblem 2]&lt;br /&gt;
** [http://www.amazon.de/exec/obidos/ASIN/B004QO59OI/testberichte_sub1-21/ref=nosim&amp;amp;ascsubtag=4310_268380_4f591731#R2JNS6TYX57A6P Aufhängerproblem]&lt;br /&gt;
* [http://www.triax-hirschmann.at/Hirschmann%20Products/Receiver/DVB-C.aspx Hirschmann]&lt;br /&gt;
** [http://www.triax-hirschmann.at/upload/c-hd_822-pi_6-10_web.pdf C-HD 822], rd. 180 €&lt;br /&gt;
** C-HD 100, rd. 130 €&lt;br /&gt;
* [http://www.octagon-germany.de/ Octagon], &amp;lt;small&amp;gt;Siehe auch [http://www.octagon-forum.com/index.php? Octagon-Forum], [http://www.dreambox.info/forumdisplay.php/octagon_receiver-807.html Dreambox.info-Forum]&amp;lt;/small&amp;gt;&lt;br /&gt;
** [http://www.ac-sat-corner.eu/Octagon-SF-1008C-HD-Intelligence-SE-Kabel-Full-HD-CI-Linux Octagon SF 1008C HD Intelligence SE+], Linux, LAN, CI+, 170 €&lt;br /&gt;
** [http://www.ac-sat-corner.eu/Octagon-SF-1028P-HD-Noblence-FULL-HD-Twin-Kabel-Receiver-Linux-PVR Octagon SF-1028P HD Noblence FULL HD Twin Kabel Receiver Linux PVR], Linux, LAN, TwinTuner, nur CI, kein CI+, 350 € &lt;br /&gt;
* [http://www.techno-com.de/shopjtl/OPENSAT-AZbox-Elite-HDTV-Linux-Multi-Combo-Tuner-Tunerbestueckung-nach-Wahl OpenSat AZBox], 200 €, Linux, nur CI, kein CI+&lt;br /&gt;
* [http://www.cs-multimedia.de/Giga-Blue-HD-800-SE-Linux-Sat-Hybrid-DVB-C-DVB-T-HDTV-Receiver Gigablue HD 800 mit DVB-C Tuner], 220 €, Linux, PVReady&lt;br /&gt;
&lt;br /&gt;
===== Kathrein =====&lt;br /&gt;
* [http://www.kathrein.de/de/sat/index.htm Kathrein UFC 965 CI+], kein LAN/WLAN, [http://www.idealo.de/preisvergleich/OffersOfProduct/3638301_-ufc-965-ci-kathrein.html 155 €]&lt;br /&gt;
** [http://www.kathrein.de/de/sat/produkte/doc/9364055.pdf Bedienungsanleitung]&lt;br /&gt;
&lt;br /&gt;
===== Vantage =====&lt;br /&gt;
* [http://www.amazon.de/exec/obidos/ASIN/B00477RGP4/testberichte_sub1-21/ref=nosim&amp;amp;ascsubtag=3792_257778_4efd31a2#R31SEYI4WCX3KY Vantage VT-1000c], 130 €, CI+, 1080p, PVReady&lt;br /&gt;
* [http://www.vantage-digital.com/hd-receiver/vt-100c.html Vantage VT-100C], LAN, 1080p, HbbTV, TwinTuner, DLNA, in verschiedenen Versionen, z.B. mit 320 GB für [http://www.idealo.de/preisvergleich/OffersOfProduct/3268401_-vt-100c-320gb-vantage-digital.html 270 €], &lt;br /&gt;
* [http://www.testberichte.de/p/vantage-tests/vt-1c-testbericht.html VT-1C+], [http://www.cyberport.de/?DEEP=C002-10G&amp;amp;APID=14 380 €], CI+, 1080p, LAN, HbbTV,&lt;br /&gt;
&lt;br /&gt;
===== Humax =====&lt;br /&gt;
** [http://www.humax-digital.de/products/product_stb_cable_pr-hd2000c.asp Humax PR HD 2000 C], KEIN PVReady, CI+&lt;br /&gt;
** [http://www.testberichte.de/p/humax-tests/icord-cable-testbericht.html Humax iCord, Cable], 380€, CI+, LAN, WLAN-USB-Adapter, TwinTuner&lt;br /&gt;
&lt;br /&gt;
===== Lenuss =====&lt;br /&gt;
* [http://www.lenuss-digital.com/de/produkte/l4/produktmerkmale.html Lenuss L4], 380 €, TwinTuner, CI+&lt;br /&gt;
===== Samsung =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.samsung.com/de/consumer/tv-audio-video/set-top-box/set-top-box/STB-E7500/EN Samsung STB-E7500], LAN, CI+, TwinTuner, 500GB für [http://www.idealo.de/preisvergleich/OffersOfProduct/3228028_-stb-e7500-samsung.html 330 €]&lt;br /&gt;
* STB-E7900 wie STB-E7500 nur mit 1 TB für [http://www.idealo.de/preisvergleich/OffersOfProduct/3228037_-stb-e7900-samsung.html 300 €]&lt;br /&gt;
&lt;br /&gt;
===== Schwaiger =====&lt;br /&gt;
* [http://www.schwaiger.de/index.php?id=74&amp;amp;product_id=1584 Schwaiger DSR606], CI+, LAN, PVR, HbbTV, Linux, [http://www.idealo.de/preisvergleich/OffersOfProduct/3563209_-dsr606-schwaiger.html 220 €]&lt;br /&gt;
&lt;br /&gt;
===== Vu+ =====&lt;br /&gt;
* [http://www.testberichte.de/p/vu-tests/uno-testbericht.html Vu+ Uno], ca. 300 € + 60 € Wechseltuner; [[Linux]]-Betriebssystem, LAN, nur CI, kein CI+&lt;br /&gt;
&lt;br /&gt;
===== DreamBox =====&lt;br /&gt;
* [http://www.amazon.de/exec/obidos/ASIN/B005COYNYS/testberichte_sub1-21/ref=nosim&amp;amp;ascsubtag=3792_298598_4efd3701#R1H84H6QBWBPME Dream-MultiMedia DM 7020 HD], 550 €, nur CI, kein CI+&lt;br /&gt;
** Die Dreambox funktioniert angeblich auch mit Kabel Deutschland.&amp;lt;ref&amp;gt;http://forum.digitalfernsehen.de/forum/dreambox/293873-frage-zu-kartenversion-kabel-deutschland-dreambox.html&amp;lt;/ref&amp;gt;,&amp;lt;ref&amp;gt;https://www.kdgforum.de/viewtopic.php?f=19&amp;amp;t=20413&amp;amp;start=10&amp;lt;/ref&amp;gt;, &amp;lt;ref&amp;gt;http://www.sat-ulc.eu/showthread.php?t=393717&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [http://www.testberichte.de/tv-video-und-dvd/2713/tv-receiver.html Testberichte]&lt;br /&gt;
&lt;br /&gt;
==== Alternative [[Linux]]-PC ====&lt;br /&gt;
&lt;br /&gt;
* [http://linuxundich.de/de/ubuntu/terratec-cinergy-c-dvb-c-unter-ubuntu-lucid-10-04/ Erfahrungen mit DVB-C und Me TV]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Linux#TV]]&lt;br /&gt;
* [[Raspberry Pi]]&lt;br /&gt;
&lt;br /&gt;
==== Mögliche Hardware für PC (Notebook) ====&lt;br /&gt;
&lt;br /&gt;
===== DVB-C-Sticks =====&lt;br /&gt;
* [http://www.tt-pc.de/2697/PRODUKTE_fuer_PC.html TechnoTrend CT-3650 CI] DVB-C/-T USB2.0-Receiver mit CI (bei [http://www.reichelt.de/DVB-C-Karten/TT-CT-3650-CI/index.html?;ACTION=3;LA=2;ARTICLE=99030;GROUPID=3754;artnr=TT+CT-3650+CI;SID=13TuO2an8AAAIAAHsMIX400a88a721943a8e49daf831d3574be4a reichelt] für 80 €&lt;br /&gt;
* [http://www.technotrend.eu/  	TechnoTrend TT-TVStick CT2-4400] für USB 2.0, DVB-C, DVB-T2 [http://www.dvbshop.net/Technotrend-TT-TV-Stick-CT2-4400-DVB-C-T-T2-USB-20-HDTV?jtl=id 43 €]&lt;br /&gt;
** Mit [http://www.tt-downloads.de/Linux/linux_ct2-4400_ct2-4500ci_ct2-4650ci.pdf Linux-Treibern], siehe [http://www.linuxtv.org/wiki/index.php/TechnoTrend_TT-TVStick_CT2-4400 diese Anleitung]&lt;br /&gt;
** Mit [http://dvblogic.com/de/software/linux-ubuntu-x86-32/ Software DVBLink zur Nutzung eines Ubuntu-TV-Servers]&lt;br /&gt;
* [http://sundtek.com/shop/Digital-TV-Sticks/Sundtek-MediaTV-Pro-DVB-CT-Radio-AnalogTV.html#review SundTek DVB-C/T-USB-Stick] 80 €, unterstützt offiziell [[Linux]]&lt;br /&gt;
&lt;br /&gt;
===== DVB-T-Sticks =====&lt;br /&gt;
* [http://www.hauppauge.de/site/support/support_linux.html Hauppauge WinTV - Serie]&lt;br /&gt;
* [http://nakorpi.bplaced.net/pcvdr/spezial2.htm Logilink VG0002A - USB-DVB-T-Stick]&lt;br /&gt;
** läuft ab Kernel 3.7 out-of-the-box (evtl. linux-firmware bzw. linux-firmware-non-free zusätzlich installieren); der Kernel lässt sich als sog. Mainline-Kernel auch einfach mit früheren Ubuntu-Versionen nutzen&lt;br /&gt;
** [http://linbay.blogspot.de/2012/11/realtek-rtl2832u-dvb-t-on-ubuntu-1210.html Anleitung zur Installation unter Ubuntu 12.10 Quantal]&lt;br /&gt;
** [http://wiki.ubuntuusers.de/MSI_DigiVox_mini_II#Installation-unter-Maverick-10-10 Anleitung zur Installation unter Ubuntu]&lt;br /&gt;
** [http://nakorpi.bplaced.net/pcvdr/spezial2.htm Der Logilink VG0002A hat den RTL2832U-Chip und ist baugleich mit MSI DIGIVOX mini Deluxe]&lt;br /&gt;
** [http://www.linuxtv.org/wiki/index.php/MSI_DigiVox_mini_II_V3.0 Beschreibung RTL2832-Driver]&lt;br /&gt;
** [http://doc.ubuntu-fr.org/af9015 Beschreibung AF9015-Driver] (französisch)&lt;br /&gt;
&lt;br /&gt;
===== PC/Notebook =====&lt;br /&gt;
&lt;br /&gt;
* Vorteilhaft ist Notebook, da bereits standardmäßig&lt;br /&gt;
** wenig Stromverbrauch,&lt;br /&gt;
** geringer Platzverbrauch und &lt;br /&gt;
** meist leise.&lt;br /&gt;
&lt;br /&gt;
* Größe: maximal 13,3 &amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Prozessoren: Mobilprozessoren, (Intel Atom und AMD C-Series scheiden allerdings wegen zu geringer Performance aus)&lt;br /&gt;
* Grafik: auf Motherboard oder auf Prozessorchip reicht aus&lt;br /&gt;
* HDMI-Anschluss&lt;br /&gt;
* USB 2.0, besser USB 3.0&lt;br /&gt;
* RAM: mindesten 4 GB&lt;br /&gt;
* Festplatte: kleine SSD (ca. 100 GB) sinnvoll (schnelleres Booten) plus 500 GB-Festplatte (ggf. extern)&lt;br /&gt;
* Bluetooth (um Sofa-Tastatur anzubinden)&lt;br /&gt;
* LAN-Schnittstelle (verhindert WLAN-Elektosmog)&lt;br /&gt;
&lt;br /&gt;
* möglich: DVD-Player - das dürfte aber eher bald aus der Mode kommen&lt;br /&gt;
&lt;br /&gt;
=== Projektoren ===&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.golem.de/1107/85218.html BenQ MS500] &lt;br /&gt;
| im Abstand von 2 m 1,33 m Bilddiagonale &lt;br /&gt;
| Bilddiagonalen von 0,61 bis 7,62 Metern&lt;br /&gt;
| 800x600 (SVGA)&lt;br /&gt;
| 33 dB(A) &lt;br /&gt;
| Kontrast 4000:1&lt;br /&gt;
| 300 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.golem.de/1107/85218.html BenQ MX501] &lt;br /&gt;
| im Abstand von 2 m 1,33 m Bilddiagonale &lt;br /&gt;
| Bilddiagonalen von 0,61 bis 7,62 Metern&lt;br /&gt;
| 1024x768 (XGA)&lt;br /&gt;
| 33 dB(A) &lt;br /&gt;
| Kontrast 4000:1&lt;br /&gt;
| 500 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Messgeräte ===&lt;br /&gt;
&lt;br /&gt;
==== Peaktech 3315 USB ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://www.peaktech.de/PeakTech-P-3315-Digitalmultimeter-4.000-Counts-600V-AC-DC-10A-AC-DC-mit-USB-RS-232/P-3315 Peaktech 3315 USB Multimeter]&lt;br /&gt;
** https://www.makerconnect.de/index.php?threads/messger%C3%A4t-mit-usb.3323/&lt;br /&gt;
** [https://docs.google.com/viewer?url=http%3A%2F%2Fwww.mikrocontroller.net%2Fattachment%2F34649%2FPeaktech_3315_interface.pdf Beschreibung des Protokolls des Multimeters]&lt;br /&gt;
** [https://www.mikrocontroller.net/topic/98208 Forum-Diskussion zum Protokoll auf der USB-Schnittstelle] u.a. mit kleinem Linux-Programm zum Konvertieren nach CSV&lt;br /&gt;
** https://www.happy-light.de/index.html?common/messen.htm&lt;br /&gt;
** https://github.com/JochiSt/LabDeviceControl/blob/main/PeakTech_3315/PeakTech_DMM3315.py&lt;br /&gt;
&lt;br /&gt;
== Druck ==&lt;br /&gt;
&lt;br /&gt;
=== 3D-Druckservice ===&lt;br /&gt;
&lt;br /&gt;
* Sculpteo&lt;br /&gt;
* [http://www.shapeways.com/ ShapeWays]&lt;br /&gt;
* [http://i.materialise.com/ I.Materialise]&lt;br /&gt;
* [http://www.cloudfab.com/ CloudFab]&lt;br /&gt;
* [http://www.fabtory.de/printing_de/ 3D-Fabtory]&lt;br /&gt;
* [http://www.makeyourproduct.com/de/index.htm makeYourProduct.com]&lt;br /&gt;
* http://www.3ddruckerei.de/&lt;br /&gt;
* [http://pages.rapidobject-shop.com/252-0-Service.html Vorgefertigte Objekte bei rapidobjects]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 3D-Drucksoftware ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.tinkercad.com/ TinkerCAD.com] - freies Online-3D-Modellierwerkzeug&lt;br /&gt;
* [http://www.heise.de/tr/artikel/3D-Design-fuer-alle-1332328.html EndlessForms]&lt;br /&gt;
&lt;br /&gt;
=== 3D-Drucker ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.idealo.de/preisvergleich/OffersOfProduct/6575667_-i3-mega-s-anycubic.html Anycubic i3 Mega S]&lt;br /&gt;
&lt;br /&gt;
== Betriebssysteme ==&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
* [[Linux-Tipps]]&lt;br /&gt;
** [[OpenSuse]]&lt;br /&gt;
** [[Debian]]&lt;br /&gt;
** [[Mail unter Linux]]&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* Siehe [[oldCt:Informationstechnik]]&lt;br /&gt;
* [[Windows]]&lt;br /&gt;
** [[:Category:Windows-Tipps]]&lt;br /&gt;
** [[Windows-Tastenkürzel]]&lt;br /&gt;
** [[FTP-Server unter Windows]]&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== BSD ===&lt;br /&gt;
&lt;br /&gt;
* [http://desktopbsd.net/index.php?id=31 DesktopBSD]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Netzwerk ==&lt;br /&gt;
&lt;br /&gt;
* [[Netzwerk]]&lt;br /&gt;
** [[Samba]]&lt;br /&gt;
** [[WebDAV]]&lt;br /&gt;
&lt;br /&gt;
== Internet ==&lt;br /&gt;
&lt;br /&gt;
=== Internetzugang ===&lt;br /&gt;
&lt;br /&gt;
Für den Internetzugang über Modem/ISDN findet sich eine Anbieterübersicht bei [http://www.heise.de/itarif/ heise.de].&lt;br /&gt;
&lt;br /&gt;
Sofern man von Alice.DSL ein [http://wiki.mhilfe.de/index.php?title=Siemens_C2-010-I Siemens-Modem] geliefert bekommt, ist diese [http://wiki.mhilfe.de/index.php?title=Siemens_C2-010-I_als_Router_konfigurieren Anleitung zur Routerkonfiguration] oder die [http://wiki.mhilfe.de/index.php?title=Routersetup_in_3_Minuten Schnellvariante] ein Gewinn. Siehe auch das [http://www.alice-wiki.de/Siemens_C2-010-I Alice-Wiki], die [http://www.dokom21.de/mstream.ashx?id=143644 Siemens-Kurzanleitung].&lt;br /&gt;
&lt;br /&gt;
Anleitungen finden sich auch für [http://hilfe.telekom.de/hsp/cms/content/HSP/de/3388/theme-21313652/theme-2000178/theme-66139236/theme-2001151/theme-2001545 T-Sinus 154 DSL Basic 3].&lt;br /&gt;
&lt;br /&gt;
=== Webbrowser ===&lt;br /&gt;
&lt;br /&gt;
* [[Opera]] ist [[plattformübergreifend]] verfügbar.&lt;br /&gt;
* [[Firefox]] ist ebenfalls  [[plattformübergreifend]] verfügbar. Es werden eine Vielzahl von Plugins angeboten, z.B.&lt;br /&gt;
** [http://ffpimp.com/?p=42 Screenshot Pimp] zum Speichern kompletter Webseiten (nicht nur des sichtbaren Teils) als Bilddatei (.PNG).&lt;br /&gt;
&lt;br /&gt;
* Googles Chrome-Browser gibt es derzeit nur für Windows (an Linux- und Mac OS-Ports wird jedoch gearbeitet); er übermittelt Daten an Google. Eine Variante namens [[Iron]], die auf die Datenübermittlung verzichtet, wird von [http://www.srware.net/software_srware_iron_news.php SRware] angeboten.&lt;br /&gt;
&lt;br /&gt;
=== Passwortmanager ===&lt;br /&gt;
&lt;br /&gt;
Die Unix-Philosophie bei den Passwortmanagern (Konfiguration in Textdateien und Keep It Simple Stupid - KISS) verspricht der [https://www.passwordstore.org/ Passwortmanager Pass].&lt;br /&gt;
&lt;br /&gt;
=== Sicherheit im Internet ===&lt;br /&gt;
==== Mediennutzung durch Kinder / Jugendliche ====&lt;br /&gt;
&lt;br /&gt;
* www.klicksafe.de&lt;br /&gt;
* www.schau-hin.info&lt;br /&gt;
* www.jugendschutz.net&lt;br /&gt;
* www.handysektor.de&lt;br /&gt;
* www.oliver.basener.de&lt;br /&gt;
&lt;br /&gt;
=== Remote Desktop ===&lt;br /&gt;
&lt;br /&gt;
* [[Remote Desktop]]&lt;br /&gt;
&lt;br /&gt;
=== Webhosting ===&lt;br /&gt;
&lt;br /&gt;
* [[Webhosting]]&lt;br /&gt;
** [[Dynamisches DNS]]&lt;br /&gt;
&lt;br /&gt;
=== Online Zusammenarbeit ===&lt;br /&gt;
&lt;br /&gt;
==== Online Umfrage ====&lt;br /&gt;
&lt;br /&gt;
Das ursprünglich sehr erfolgreiche Doodle wurde allmählich immmer umfangreicher und durch Werbung so belastet, dass es kein wirkliches Tool mehr ist, um einfache Online-Umfragen abzuhalten.&lt;br /&gt;
&lt;br /&gt;
Alternativen sind:&lt;br /&gt;
&lt;br /&gt;
* https://dud-poll.inf.tu-dresden.de/ - DuD-Poll funktioniert ohne Werbung und Anmeldung. Man kann sich aber anmelden.&lt;br /&gt;
&lt;br /&gt;
==== Online Office ====&lt;br /&gt;
* [https://de.wikipedia.org/wiki/OnlyOffice OnlyOffice] bietet Integration mit NextCloud an. Basis sind die Microsoft Office - Dateiformate (docx, xlsx, pptx).&lt;br /&gt;
* Collabora Office integriert ebenfalls mit [[NextCloud]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Google Docs (Text, Tabellen)&lt;br /&gt;
* [http://www.zoho.com/index.html ZOHO] bietet eine komplette Online Office Suite.&lt;br /&gt;
* [http://baseportal.de/ BasePortal] stellt (mit Werbung kostenlos) einen Datenbankserver mit eigener Web-Programmierumgebung zur Verfügung.&lt;br /&gt;
* Mit [http://www.thinklinkr.com/ thinklinkr] gibt es einen Online-Gliederungseditor, der Im-/Export von und nach [[OPML]] unterstützt. Außerdem bietet er Export in das [[Word]]-Format. &amp;lt;small&amp;gt;Allerdings funktioniert thinklinkr nicht mit [[Internet Explorer]] 7; zusätzlich wird dann Google [[Chrome]] Frame benötigt.&amp;lt;/small&amp;gt;&lt;br /&gt;
* [http://workspace.officelive.com/ Microsoft Office Live], [http://www.skydrive.com SkyDrive.com]&lt;br /&gt;
* [https://www.microsoft.com/de-de/microsoft-365/free-office-online-for-the-web?ocid=cmm0tj1uoig Microsoft (Web-) Office] - kostenlose Schmalversion von Microsoft 365&lt;br /&gt;
&lt;br /&gt;
* [http://prezi.com/ Prezi] ist ein Online-Dienst für Präsentationen.&lt;br /&gt;
&lt;br /&gt;
* [http://ethercalc.net/ Ethercalc] ist eine [[Open Source]]-Anwendung, die auf einem eigenen Server betrieben werden kann.&lt;br /&gt;
&lt;br /&gt;
* WebODF - kooperatives Editieren von [[ODF | Open Document Format]]-Dokumenten.&lt;br /&gt;
** [[Owncloud]] Documents&lt;br /&gt;
** [http://webodf.org/start/ Anleitung zur Stand-Alone-Benutzung von WebODF]&lt;br /&gt;
&lt;br /&gt;
==== Online Bildbearbeitung ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://aviary.com/blog Aviary.com] bietet kostenlos eine Online-Bildbearbeitung an.&lt;br /&gt;
* Siehe auch [[Fotografie]].&lt;br /&gt;
&lt;br /&gt;
* [http://draw.labs.autodesk.com/ADDraw/draw.html AutoDesk Project Draw:] Vektorgrafik&lt;br /&gt;
* [http://live.yworks.com/graphity/ Graphity]&lt;br /&gt;
&lt;br /&gt;
==== Online CAD ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.autocad360.com AutoCAD 360], kostenlos, Export nach .DWG und .PDF&lt;br /&gt;
* TinkerCAD, benötigt [[WebGL]]&lt;br /&gt;
* [https://openjscad.xyz/docs/ OpenJsCAD]&lt;br /&gt;
&lt;br /&gt;
==== Synchronisation und Dokumentenmanagement ====&lt;br /&gt;
&lt;br /&gt;
* [[Synchronisation Web-PC-Handy]]&lt;br /&gt;
* [[DMS]]&lt;br /&gt;
* [https://one.ubuntu.com/features/ Ubuntu One] &amp;lt;small&amp;gt;(s. auch [[Ubuntu]])&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Online-Speicher&lt;br /&gt;
* DropBox - der Standard&lt;br /&gt;
* [http://www.wuala.com/de/pricing/ Wuala] 1 GB kostenlos, aus der Schweiz&lt;br /&gt;
* [https://spideroak.com/ Spideroak]  2GB kostenlos&lt;br /&gt;
* [http://www.box.net/pricing/ box.net] zwar 5GB kostenlos, aber kein kostenloser Passwortschutz&lt;br /&gt;
* HiDrive bietet 5GB freien Speicherplatz im Netz&lt;br /&gt;
&lt;br /&gt;
==== Remote File Access ====&lt;br /&gt;
&lt;br /&gt;
===== WebDAV =====&lt;br /&gt;
&lt;br /&gt;
Siehe [[WebDAV]]&lt;br /&gt;
&lt;br /&gt;
===== DropBox =====&lt;br /&gt;
&lt;br /&gt;
Mit DropBox kann man seine Dateien mit verschiedenen Geräten synchronisieren lassen.&lt;br /&gt;
&lt;br /&gt;
* Z.B. DropSync für Android&lt;br /&gt;
&lt;br /&gt;
Mit [https://write-box.appspot.com/ write-box] kann man Textdateien im Webeditor editieren und sie in DropBox speichern.&lt;br /&gt;
&lt;br /&gt;
Open-Source-Alternativen zu [[Dropbox]] können mit &lt;br /&gt;
* [[OwnCloud]] oder&lt;br /&gt;
* [[SeaFile]]&lt;br /&gt;
aufgebaut werden.&lt;br /&gt;
&lt;br /&gt;
=== Soziale Netzwerke ===&lt;br /&gt;
&lt;br /&gt;
Alternativen zu den kommerziellen [[Facebook]]s und [[Twitter]]s gibt es, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [https://joindiaspora.com/ JoinDiaspora.com], ein dezentrales soziales Netzwerk basierend auf Open Source Software und Verschlüsselung mittels [[GPG]]&lt;br /&gt;
&lt;br /&gt;
=== Geodaten ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Geoinformationssystem]]&lt;br /&gt;
&lt;br /&gt;
=== Suchmaschinen ===&lt;br /&gt;
* Suchmaschinen gibt es u.a. von [[Google]] und [[Microsoft]].&lt;br /&gt;
* [[Google]] bietet nun auch einen Auskunftsdienst über die bei ihm getätigten Suchanfragen namens [http://google.com/insights/search/?hl=de Google Insights Search] an.&lt;br /&gt;
* [https://duckduckgo.com/ DuckDuckGo] verspricht eine anonymere Suche als die herkömmlichen Suchmaschinen von Google und Microsoft.&lt;br /&gt;
&lt;br /&gt;
=== Soziale Netzwerke ===&lt;br /&gt;
&lt;br /&gt;
* Größtes Problem bei Sozialen Netzwerken ist der [[Datenschutz|Schutz persönlicher Daten]]&lt;br /&gt;
** [http://www.spiegel.de/netzwelt/web/0,1518,667331,00.html Anleitung zum Datenschutz bei Facebook]&lt;br /&gt;
&lt;br /&gt;
== Mobilfunk ==&lt;br /&gt;
&lt;br /&gt;
=== Massenüberwachung ===&lt;br /&gt;
&lt;br /&gt;
Heutzutage ist [https://www.golem.de/news/etsi-ueberwachungsstandards-fuer-den-5g-polizeifunk-2512-203657.html jedes Smartphone technisch überwachbar]. Die entsprechenden Standards gelten weltweit. In demokratischen Staaten gibt es rechtliche Hürden; in autoritären Staaten gibt es diese nicht. Damit gibt es in solchen Staaten keine Hürden.&lt;br /&gt;
&lt;br /&gt;
== Spracherzeugung ==&lt;br /&gt;
&lt;br /&gt;
Neben Text-To-Speech (TTS), für das es inzwischen eine ganze Menge auch [[Open Source]]-Programme gibt, gibt es auch Forschung an der computerbasierten Erzeugung von Gesang (Singing Synthesis).&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* UTACO-Projekt von Amazon&lt;br /&gt;
* [https://speechresearch.github.io/deepsinger/ DeepSinger]&lt;br /&gt;
* https://link.springer.com/chapter/10.1007/978-3-642-23220-6_23&lt;br /&gt;
* [https://github.com/MTG/WGANSing WGANSing] mit Anleitung zum Installieren, Trainieren und Nutzen.&lt;br /&gt;
&lt;br /&gt;
Häufig wird dazu das Format [https://www.musicxml.com/ MusicXML] genutzt.&lt;br /&gt;
&lt;br /&gt;
== Softwareentwicklung ==&lt;br /&gt;
&lt;br /&gt;
* Siehe [[Softwareentwicklung]]&lt;br /&gt;
** [[Java]]&lt;br /&gt;
** [[GIS]]&lt;br /&gt;
&lt;br /&gt;
== Anwendungen ==&lt;br /&gt;
=== Plattformübergreifende Software ===&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== Geschäftssoftware ===&lt;br /&gt;
==== Dokumentenmanagementsystem ====&lt;br /&gt;
===== Allgemeines =====&lt;br /&gt;
* [http://www.heise.de/open/artikel/Dokumentenmanagement-mit-Open-Source-221973.html Einführung in Dokumentenmanagentsystem (DMS)] mit Open Source (heise-Artikel)&lt;br /&gt;
* [http://www.documanager.de/ Portal zu DMS]&lt;br /&gt;
* [http://www.documanager.de/magazin/artikel_2099.html Dokumentenmanagement-Praxishandbuch]&lt;br /&gt;
* Um eine komplette Open Source-Lösung für DMS zu erreichen, bedarf es eines [http://www.claraocr.org/de/ocr/ocr-software/open-source-ocr.html Open Source OCR].&lt;br /&gt;
** [http://www.openkm.com/ OpenKM] verspricht ein [[Open Source]]-[[DMS]] zu sein, das auch [[OCR]] integriert.&lt;br /&gt;
** Mit einer Kette aus [[ImageMagick]] und [[Tesseract]] lässt sich [http://kaffeeringe.de/2942/ocr-mit-tesseract-und-imagemagick/ das papierlose Büro angeblich] beginnen.&lt;br /&gt;
** Auch [[Cuneiform]] scheint eine recht zuverlässige Open-Source-[[OCR]] zu sein.&lt;br /&gt;
** Mit [http://wiki.ubuntuusers.de/ExactImage#hocr2pdf hocr2pdf] können Sandwich-PDFs erstellt werden: markierbarer/durchsuchbarer Text auf Bild. Der Text muss dazu im hOCR-Format vorliegen, was u.a. [[Tesseract]] beherrscht.&lt;br /&gt;
** Die Kombination aus [[Tesseract]] und [https://sourceforge.net/projects/gimagereader/ gImageReader] bietet OCR, hOCR und Sandwich-PDF mit GUI-Unterstützung.&amp;lt;ref&amp;gt;Vgl. https://www.linux-magazin.de/ausgaben/2017/06/bitparade/2/&amp;lt;/ref&amp;gt;&lt;br /&gt;
** Mit [http://tika.apache.org/ Apache Tika] lassen sich die Metadaten und der Inhalt eines Dokuments getrennt erfassen.&lt;br /&gt;
** Auch [https://www.naps2.com/ Naps2] scheint beim Scannen und anschließendem [[OCR]] zu helfen.&lt;br /&gt;
* [https://www.bitfarm-archiv.de/dokumentenmanagement/glossar/revisionssichere-archivierung.html Steuerrechtliche Anforderungen an die Revisionssicherheit eines elektronischen DMS]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Einzelne DMS =====&lt;br /&gt;
Folgende Systeme sind (im Wesentlichen) [[Open Source]]:&lt;br /&gt;
* [http://www.alfresco.com/ Alfresco] &lt;br /&gt;
** kann auch [[SharePoint]] ersetzen&amp;lt;ref&amp;gt;http://docs.alfresco.com/3.4/index.jsp&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [http://www.agorum.com/startseite/produkte/dms-ecm-agorum-core-open-source/schnellvergleich-agorum-core-versionen.html Agorum core]&lt;br /&gt;
* [http://www.archivista.ch/de/pages/support/downloads.php Archivista] (auch mit umfangreichem [http://www.archivista.ch/de/pages/support/handbuch.php Handbuch])&lt;br /&gt;
* [http://www.bitfarm-archiv.de/dokumentenmanagement/kosten-lizenzierung.html Bitfarm]&lt;br /&gt;
* [https://www.ecodms.de/index.php/de/ EcoDMS], aus Deutschland, zwar Open Source, aber nur für Privatgebrauch kostenlos, Lizenz einmalig rd. 50 €&lt;br /&gt;
* [https://www.krystaldms.in/community/features.php KrystalDMS] bietet eine - eingeschränkte - Community-Edition.&lt;br /&gt;
* [https://www.logicaldoc.com/de/produktvergleich LogicalDOC] mit erheblichen Einschränkungen in der freien &amp;quot;Community&amp;quot;-Ausgabe&lt;br /&gt;
* [https://www.mayan-edms.com/ MayanEDMS], Open Source als Sicherheitsfeature wird als Verkaufsargument genannt.&lt;br /&gt;
* [https://www.opendocman.com/ OpenDocMan]&lt;br /&gt;
* [https://gitlab.gnome.org/World/OpenPaperwork/paperwork Paperwork] ist ein &amp;quot;DMS&amp;quot;, das das Scannen und das Verwalten von gescannten Dokumenten übernimmt.&lt;br /&gt;
** [https://www.linux-magazin.de/ausgaben/2017/06/bitparade/6/ Installationsanleitung zu Paperwork]&lt;br /&gt;
* [https://www.seeddms.org/index.php?id=3 SeedDMS], Nachfolger von LetoDMS&lt;br /&gt;
* [http://www.xinco.org/index_de.php Xinco DMS] ([[Java]]-basiert)&lt;br /&gt;
&lt;br /&gt;
==== Reporting ====&lt;br /&gt;
&lt;br /&gt;
DataWareHouse, Business Intelligence sind Schlagworte für Software, die Unternehmensdaten für Entscheider aufbereiten soll.&lt;br /&gt;
&lt;br /&gt;
Siehe [http://www.isreport.de/business-intelligence/reportingstrategie-daemmt-informationsflut.html Artikel zur Reportingstrategie].&lt;br /&gt;
&lt;br /&gt;
[[Open Source]]-Berichtstools:&lt;br /&gt;
&lt;br /&gt;
* [[Java-Tipps#JasperReports JasperReports]]&lt;br /&gt;
* BIRT&lt;br /&gt;
* Pentaho Reporting&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
* [[Multimedia]]&lt;br /&gt;
** [[GIMP]]&lt;br /&gt;
* [[Flash]]&lt;br /&gt;
&lt;br /&gt;
=== eBooks ===&lt;br /&gt;
&lt;br /&gt;
* Ein offener Standard für das Dateiformat von eBooks ist [[wikipedia:EPUB | EPub]].&lt;br /&gt;
* Ebooks im [[EPub]]-Format gibt es u.a. von &lt;br /&gt;
** [http://www.gutenberg.org/wiki/DE_Hauptseite Projekt Gutenberg] (frei)&lt;br /&gt;
** [http://www.beam-ebooks.de/kostenlos.php5 Beam-ebooks] (teilweise kostenlos)&lt;br /&gt;
** [http://www.ebook.de/de/category/59011/gratis_ebooks.html Ebooks.de (libri.de)] (teilweise kostenlos)&lt;br /&gt;
** [https://www.pageplace.de/de/ Telekom PagePlace] (teilweise auch gratis)&lt;br /&gt;
&lt;br /&gt;
==== Ebook Reader ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.tolino.de/de/service/ Tolino Shine], u.a. von Thalia, Telekom und Hugendubel&lt;br /&gt;
** Mit [[Android]], das [http://allesebook.de/firmware-software-updates/anleitung-tolino-shine-root-zugriff-inkl-google-play-32350/ auch gerootet werden] kann&lt;br /&gt;
* [http://de.kobo.com/devices#ereaders Kobo Glo] und Derivate&lt;br /&gt;
&lt;br /&gt;
=== Finanzen ===&lt;br /&gt;
&lt;br /&gt;
[[Finanzsoftware]]&lt;br /&gt;
&lt;br /&gt;
=== Mobile Anwendungen ===&lt;br /&gt;
&lt;br /&gt;
==== Offline Reader ====&lt;br /&gt;
* [http://www.deep-shadows.com/hax/ReadManiac/index.htm ReadManiac] (J2ME)&lt;br /&gt;
* [http://www.olivetree.com/smartphone/symbian60-2/ BibleReader] (verschiedene Mobilplattformen) &lt;br /&gt;
* [http://smartsam.de/product.php?prod_id=10251 ReadM] (unterschiedliche Formate: DOC, TXT, PRC und TCR; Symbian s60-series)&lt;br /&gt;
* [http://code.plkr.org/docs/ Plucker] (nur für Palm) - [http://www2.parc.com/isl/members/janssen/pubs/plucker-tour/ Tour]; das Plucker Document Format wird in der Dokumentation beschrieben; diese kann auf der [http://www.plkr.org/dl Download-Seite] heruntergeladen werden.&lt;br /&gt;
* [http://www.mobipocket.com/en/DownloadSoft/ProductDetailsReader.asp MobiPocket]&lt;br /&gt;
* Sitescooper ([http://www.mobileread.com/forums/showthread.php?t=1492 Tutorial], [http://www.awprofessional.com/articles/article.asp?p=29050&amp;amp;rl=1 Kurzeinführung])&lt;br /&gt;
* Mit [http://en.wikipedia.org/wiki/Open_eBook Open eBook] gibt es einen offenen Standard für das Dateiformat eines eBooks. Dieser hat sich bisher jedoch (noch) nicht durchgesetzt (Stand: Mai 2007).&lt;br /&gt;
&lt;br /&gt;
=== Modelleisenbahn ===&lt;br /&gt;
&lt;br /&gt;
[[Modelleisenbahn]]&lt;br /&gt;
&lt;br /&gt;
=== QR-Codes ===&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.linux-community.de/ausgaben/linuxuser/2013/06/qr-codes-unter-linux-erzeugen-und-lesen/&lt;br /&gt;
* [[Programmierprojekte#Mobiler_Peer_2_Peer_Dateiaustausch]]&lt;br /&gt;
&lt;br /&gt;
==== QR Codes erzeugen ==== &lt;br /&gt;
QR-Codes können Barcodes ersetzen. Sie besitzen eine Redundanz. Der Fehlerkorrekturmechanismus kann auch genutzt werden, um Bilder tatsächlich unterzuschieben. Siehe&lt;br /&gt;
* [http://research.swtch.com/qart QArt], mit einer [http://research.swtch.com/qr/draw Online-Demo eines QArt-Generators]&lt;br /&gt;
* [http://code-bude.net/2013/10/17/qrcoder-eine-open-source-qr-code-implementierung-in-csharp/ QRCoder]- eine [[Open Source]]-[[Java]]-Anwendung zur Erzeugung diverser QR-Codes.&lt;br /&gt;
* https://pub.dev/packages/qr_image_exporter&lt;br /&gt;
&lt;br /&gt;
Die QR-Codes können auch genutzt werden, um Zahlungsdaten auf Rechnungen zu drucken:&lt;br /&gt;
&lt;br /&gt;
* [http://www.europeanpaymentscouncil.eu/index.cfm/knowledge-bank/epc-documents/quick-response-code-guidelines-to-enable-data-capture-for-the-initiation-of-a-sepa-credit-transfer/ Empfehlungen des halbstaatlichen European Payments Council]&lt;br /&gt;
* [http://www.stuzza.at/de/qr-code-generator.html Österreichischer SEPA-QR-Code-Generator]&lt;br /&gt;
** [http://www.stuzza.at/de/download/qr-code.html Seite mit Überprüfungstool für QR-Code]&lt;br /&gt;
* [http://qrcode.tec-it.com/de/SEPA QR-Code-Generator (wohl) nach SEPA-Empfehlung]&lt;br /&gt;
* [https://www.girocode.de/demo/ GiroCode] - scheint mit SEPA-Empfehlung kompatibel zu sein&lt;br /&gt;
* [http://www.bezahlcode.de/der-bezahlcode/ BezahlCode - Generator] - nicht mit EPC-Empfehlungen kompatibel&amp;lt;ref&amp;gt;Siehe http://www.zahlungsverkehrsfragen.de/ueberweisung/sepa-zahlschein .&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Alternative PSD2 API:&lt;br /&gt;
** https://docs.payabl.com/docs/android-instant-bank-transfer&lt;br /&gt;
&lt;br /&gt;
==== QR Codes lesen ====&lt;br /&gt;
&lt;br /&gt;
Ein einfaches Tool, um unter Linux vor die PC-Kamera gehaltene QR-Codes auszulesen ist &amp;lt;code&amp;gt;zbarcam&amp;lt;/code&amp;gt;. Dieses muss mit &lt;br /&gt;
  sudo aptitude install zbar-tools &lt;br /&gt;
installiert werden.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann das Online-Tool https://zxing.org/w/decode.jspx genutzt werden. &lt;br /&gt;
&lt;br /&gt;
Für [[Android]] bietet zxing.org den &amp;quot;Barcode Scanner&amp;quot;, der auch QR-Codes liest und im [[F-Droid]]-Store verfügbar ist.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://minhazav.medium.com/qr-and-barcode-scanner-using-html-and-javascript-2cdc937f793d&lt;br /&gt;
&lt;br /&gt;
== Telefon ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[Telefon]]&lt;br /&gt;
&lt;br /&gt;
== IT-Recht ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[IT-Recht]]&lt;br /&gt;
&lt;br /&gt;
== Digitale Souveränität ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
* [[Open Source]]&lt;br /&gt;
&lt;br /&gt;
=== Unabhängigkeit von Clouddiensten allgemein ===&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://european-alternatives.eu/&lt;br /&gt;
&lt;br /&gt;
==== Virtuelle Maschinen ====&lt;br /&gt;
&lt;br /&gt;
Statt Amazon AWS etc.&lt;br /&gt;
&lt;br /&gt;
* Hetzner&lt;br /&gt;
&lt;br /&gt;
=== Mailserver ===&lt;br /&gt;
&lt;br /&gt;
* Proton Mail - ein Schweizer Cloudanbieter&lt;br /&gt;
&lt;br /&gt;
=== DateiServer ===&lt;br /&gt;
&lt;br /&gt;
* yourstorage von Hetzner&lt;br /&gt;
* Proton Drive&lt;br /&gt;
&lt;br /&gt;
=== DNS ===&lt;br /&gt;
&lt;br /&gt;
* https://quad9.net/de/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Lebens-Tipps]]&lt;br /&gt;
[[Category:OldCt]]&lt;br /&gt;
[[Category:Java]]&lt;br /&gt;
[[Category:Serversoftware]]&lt;br /&gt;
[[Category:Netzwerk]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23207</id>
		<title>Dart</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23207"/>
		<updated>2026-11-04T21:07:22Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Dart im Backend */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dart ist eine Programmiersprache, die plattformübergreifend kompiliert werden kann:&lt;br /&gt;
* Apps&lt;br /&gt;
** Android&lt;br /&gt;
** iOS&lt;br /&gt;
* Web&lt;br /&gt;
** JavaScript&lt;br /&gt;
** WASM&lt;br /&gt;
* Desktop&lt;br /&gt;
** Linux&lt;br /&gt;
** MacOS&lt;br /&gt;
** Windows&lt;br /&gt;
&lt;br /&gt;
== Dart im Frontend ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
&lt;br /&gt;
* [[Flutter]]&lt;br /&gt;
* Jaspr&lt;br /&gt;
&lt;br /&gt;
== Dart im Backend ==&lt;br /&gt;
&lt;br /&gt;
=== ServerPod ===&lt;br /&gt;
&lt;br /&gt;
Man kann NGINX als reverse proxy für Serverpod nutzen:&lt;br /&gt;
&lt;br /&gt;
* https://swimmieios.medium.com/get-serverpod-running-on-your-vps-with-plesk-cfa132afed63&lt;br /&gt;
&lt;br /&gt;
=== Webserver ===&lt;br /&gt;
* [https://pub.dev/packages/relic Relic] - ein WebServer, Basis für ServerPod, Nachfolger von Shelf&lt;br /&gt;
** [https://docs.dartrelic.dev/ Dokumentation zu Relic]&lt;br /&gt;
&lt;br /&gt;
== Dart-App für die Kommandozeile ==&lt;br /&gt;
&lt;br /&gt;
* https://www.freecodecamp.org/news/learn-command-line-interface-cli-development-with-dart-from-zero-to-a-fully-published-developer-tool/&lt;br /&gt;
&lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;br /&gt;
[[Category:Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Informationstechnik&amp;diff=23206</id>
		<title>Informationstechnik</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Informationstechnik&amp;diff=23206"/>
		<updated>2026-11-03T05:52:24Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* QR Codes erzeugen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Siehe [[oldCt:Informationstechnik]]&lt;br /&gt;
&lt;br /&gt;
== Desktopsystem ==&lt;br /&gt;
&lt;br /&gt;
* [[Desktop]]&lt;br /&gt;
* [[:Category:DesktopSoftware]]&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Schau mal, was [https://solar.lowtechmagazine.com/ mit weniger Technik geht].&lt;br /&gt;
&lt;br /&gt;
=== Notebooks ===&lt;br /&gt;
&lt;br /&gt;
[[Notebook]]&lt;br /&gt;
* [[Subnotebook]]&lt;br /&gt;
&lt;br /&gt;
=== Flüster-PCs ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Flüster-PC]].&lt;br /&gt;
&lt;br /&gt;
=== HTPC ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[HTPC]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== PC-Tower ===&lt;br /&gt;
&lt;br /&gt;
* [[HP-Compaq dx2300 Microtower]]&lt;br /&gt;
&lt;br /&gt;
=== Mikrocontroller ===&lt;br /&gt;
&lt;br /&gt;
[[Mikrocontroller]]&lt;br /&gt;
&lt;br /&gt;
=== Router ===&lt;br /&gt;
* [[Netzwerk#Router]]&lt;br /&gt;
&lt;br /&gt;
=== Hifi ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Audio#Audio-Hardware]]&lt;br /&gt;
&lt;br /&gt;
=== Telefon ===&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Telefon#Handymodelle]]&lt;br /&gt;
&lt;br /&gt;
=== TV-Monitor ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kabelfernsehen]]&lt;br /&gt;
&lt;br /&gt;
==== Anforderungen ====&lt;br /&gt;
* mindestens 22 Zoll (58 cm), besser: 32 Zoll (81 cm)&lt;br /&gt;
* HDReady (720p Voll-, 1080p Halbbild) , besser FullHD (1080p Vollbild)&lt;br /&gt;
* Kontrast: 50000:1&lt;br /&gt;
* Reaktionszeit: 6,5 ms&lt;br /&gt;
* Helligkeit: 400 cd/m2&lt;br /&gt;
* Betrachtungswinkel: 178/178 °&lt;br /&gt;
&lt;br /&gt;
==== Einzelne Modelle ====&lt;br /&gt;
&lt;br /&gt;
* Der [http://www.aoc-europe.com AOC] i2353h hat zwar nur eine Reaktionszeit von 17 ms, eignet sich aber lt. [[ct]] 20/2011 S. 58 zum Videoschauen.&lt;br /&gt;
** [http://www.prad.de/new/monitore/test/2011/test-aoc-i2353fh-teil4.html Testbericht AOC i2353h]&lt;br /&gt;
&lt;br /&gt;
=== Kabel-Receiver ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Kabelfernsehen]]&lt;br /&gt;
&lt;br /&gt;
==== Anforderungen ====&lt;br /&gt;
* DVB-C (HD)&lt;br /&gt;
* PVR (Aufnahme z.B. auf interne Festplatte) oder PVR-ready (Aufnahme auf externes Speichergerät)&lt;br /&gt;
* EPG (elektronische Programmzeitschrift)&lt;br /&gt;
* 1080p-Upscaling&lt;br /&gt;
* CI+ (bei Kabel Deutschland schon für den Empfang freier privater TV-Sender erforderlich)&lt;br /&gt;
&lt;br /&gt;
==== Beispiele ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.comag.de/ ComAG] DKR 900 HD CI+ (rd. 100 €)&lt;br /&gt;
** [http://receiver-support.net/index.php?page=Thread&amp;amp;threadID=4078 Innenleben des Comag DKR 900 HD CI+]&lt;br /&gt;
** [http://www.comag.tv/board/index.php?page=Thread&amp;amp;threadID=6317 Aufnahmeproblem 1], [http://netcologneforum.de/viewtopic.php?f=15&amp;amp;t=1615 Aufnahmeproblem 2]&lt;br /&gt;
** [http://www.amazon.de/exec/obidos/ASIN/B004QO59OI/testberichte_sub1-21/ref=nosim&amp;amp;ascsubtag=4310_268380_4f591731#R2JNS6TYX57A6P Aufhängerproblem]&lt;br /&gt;
* [http://www.triax-hirschmann.at/Hirschmann%20Products/Receiver/DVB-C.aspx Hirschmann]&lt;br /&gt;
** [http://www.triax-hirschmann.at/upload/c-hd_822-pi_6-10_web.pdf C-HD 822], rd. 180 €&lt;br /&gt;
** C-HD 100, rd. 130 €&lt;br /&gt;
* [http://www.octagon-germany.de/ Octagon], &amp;lt;small&amp;gt;Siehe auch [http://www.octagon-forum.com/index.php? Octagon-Forum], [http://www.dreambox.info/forumdisplay.php/octagon_receiver-807.html Dreambox.info-Forum]&amp;lt;/small&amp;gt;&lt;br /&gt;
** [http://www.ac-sat-corner.eu/Octagon-SF-1008C-HD-Intelligence-SE-Kabel-Full-HD-CI-Linux Octagon SF 1008C HD Intelligence SE+], Linux, LAN, CI+, 170 €&lt;br /&gt;
** [http://www.ac-sat-corner.eu/Octagon-SF-1028P-HD-Noblence-FULL-HD-Twin-Kabel-Receiver-Linux-PVR Octagon SF-1028P HD Noblence FULL HD Twin Kabel Receiver Linux PVR], Linux, LAN, TwinTuner, nur CI, kein CI+, 350 € &lt;br /&gt;
* [http://www.techno-com.de/shopjtl/OPENSAT-AZbox-Elite-HDTV-Linux-Multi-Combo-Tuner-Tunerbestueckung-nach-Wahl OpenSat AZBox], 200 €, Linux, nur CI, kein CI+&lt;br /&gt;
* [http://www.cs-multimedia.de/Giga-Blue-HD-800-SE-Linux-Sat-Hybrid-DVB-C-DVB-T-HDTV-Receiver Gigablue HD 800 mit DVB-C Tuner], 220 €, Linux, PVReady&lt;br /&gt;
&lt;br /&gt;
===== Kathrein =====&lt;br /&gt;
* [http://www.kathrein.de/de/sat/index.htm Kathrein UFC 965 CI+], kein LAN/WLAN, [http://www.idealo.de/preisvergleich/OffersOfProduct/3638301_-ufc-965-ci-kathrein.html 155 €]&lt;br /&gt;
** [http://www.kathrein.de/de/sat/produkte/doc/9364055.pdf Bedienungsanleitung]&lt;br /&gt;
&lt;br /&gt;
===== Vantage =====&lt;br /&gt;
* [http://www.amazon.de/exec/obidos/ASIN/B00477RGP4/testberichte_sub1-21/ref=nosim&amp;amp;ascsubtag=3792_257778_4efd31a2#R31SEYI4WCX3KY Vantage VT-1000c], 130 €, CI+, 1080p, PVReady&lt;br /&gt;
* [http://www.vantage-digital.com/hd-receiver/vt-100c.html Vantage VT-100C], LAN, 1080p, HbbTV, TwinTuner, DLNA, in verschiedenen Versionen, z.B. mit 320 GB für [http://www.idealo.de/preisvergleich/OffersOfProduct/3268401_-vt-100c-320gb-vantage-digital.html 270 €], &lt;br /&gt;
* [http://www.testberichte.de/p/vantage-tests/vt-1c-testbericht.html VT-1C+], [http://www.cyberport.de/?DEEP=C002-10G&amp;amp;APID=14 380 €], CI+, 1080p, LAN, HbbTV,&lt;br /&gt;
&lt;br /&gt;
===== Humax =====&lt;br /&gt;
** [http://www.humax-digital.de/products/product_stb_cable_pr-hd2000c.asp Humax PR HD 2000 C], KEIN PVReady, CI+&lt;br /&gt;
** [http://www.testberichte.de/p/humax-tests/icord-cable-testbericht.html Humax iCord, Cable], 380€, CI+, LAN, WLAN-USB-Adapter, TwinTuner&lt;br /&gt;
&lt;br /&gt;
===== Lenuss =====&lt;br /&gt;
* [http://www.lenuss-digital.com/de/produkte/l4/produktmerkmale.html Lenuss L4], 380 €, TwinTuner, CI+&lt;br /&gt;
===== Samsung =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.samsung.com/de/consumer/tv-audio-video/set-top-box/set-top-box/STB-E7500/EN Samsung STB-E7500], LAN, CI+, TwinTuner, 500GB für [http://www.idealo.de/preisvergleich/OffersOfProduct/3228028_-stb-e7500-samsung.html 330 €]&lt;br /&gt;
* STB-E7900 wie STB-E7500 nur mit 1 TB für [http://www.idealo.de/preisvergleich/OffersOfProduct/3228037_-stb-e7900-samsung.html 300 €]&lt;br /&gt;
&lt;br /&gt;
===== Schwaiger =====&lt;br /&gt;
* [http://www.schwaiger.de/index.php?id=74&amp;amp;product_id=1584 Schwaiger DSR606], CI+, LAN, PVR, HbbTV, Linux, [http://www.idealo.de/preisvergleich/OffersOfProduct/3563209_-dsr606-schwaiger.html 220 €]&lt;br /&gt;
&lt;br /&gt;
===== Vu+ =====&lt;br /&gt;
* [http://www.testberichte.de/p/vu-tests/uno-testbericht.html Vu+ Uno], ca. 300 € + 60 € Wechseltuner; [[Linux]]-Betriebssystem, LAN, nur CI, kein CI+&lt;br /&gt;
&lt;br /&gt;
===== DreamBox =====&lt;br /&gt;
* [http://www.amazon.de/exec/obidos/ASIN/B005COYNYS/testberichte_sub1-21/ref=nosim&amp;amp;ascsubtag=3792_298598_4efd3701#R1H84H6QBWBPME Dream-MultiMedia DM 7020 HD], 550 €, nur CI, kein CI+&lt;br /&gt;
** Die Dreambox funktioniert angeblich auch mit Kabel Deutschland.&amp;lt;ref&amp;gt;http://forum.digitalfernsehen.de/forum/dreambox/293873-frage-zu-kartenversion-kabel-deutschland-dreambox.html&amp;lt;/ref&amp;gt;,&amp;lt;ref&amp;gt;https://www.kdgforum.de/viewtopic.php?f=19&amp;amp;t=20413&amp;amp;start=10&amp;lt;/ref&amp;gt;, &amp;lt;ref&amp;gt;http://www.sat-ulc.eu/showthread.php?t=393717&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [http://www.testberichte.de/tv-video-und-dvd/2713/tv-receiver.html Testberichte]&lt;br /&gt;
&lt;br /&gt;
==== Alternative [[Linux]]-PC ====&lt;br /&gt;
&lt;br /&gt;
* [http://linuxundich.de/de/ubuntu/terratec-cinergy-c-dvb-c-unter-ubuntu-lucid-10-04/ Erfahrungen mit DVB-C und Me TV]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Linux#TV]]&lt;br /&gt;
* [[Raspberry Pi]]&lt;br /&gt;
&lt;br /&gt;
==== Mögliche Hardware für PC (Notebook) ====&lt;br /&gt;
&lt;br /&gt;
===== DVB-C-Sticks =====&lt;br /&gt;
* [http://www.tt-pc.de/2697/PRODUKTE_fuer_PC.html TechnoTrend CT-3650 CI] DVB-C/-T USB2.0-Receiver mit CI (bei [http://www.reichelt.de/DVB-C-Karten/TT-CT-3650-CI/index.html?;ACTION=3;LA=2;ARTICLE=99030;GROUPID=3754;artnr=TT+CT-3650+CI;SID=13TuO2an8AAAIAAHsMIX400a88a721943a8e49daf831d3574be4a reichelt] für 80 €&lt;br /&gt;
* [http://www.technotrend.eu/  	TechnoTrend TT-TVStick CT2-4400] für USB 2.0, DVB-C, DVB-T2 [http://www.dvbshop.net/Technotrend-TT-TV-Stick-CT2-4400-DVB-C-T-T2-USB-20-HDTV?jtl=id 43 €]&lt;br /&gt;
** Mit [http://www.tt-downloads.de/Linux/linux_ct2-4400_ct2-4500ci_ct2-4650ci.pdf Linux-Treibern], siehe [http://www.linuxtv.org/wiki/index.php/TechnoTrend_TT-TVStick_CT2-4400 diese Anleitung]&lt;br /&gt;
** Mit [http://dvblogic.com/de/software/linux-ubuntu-x86-32/ Software DVBLink zur Nutzung eines Ubuntu-TV-Servers]&lt;br /&gt;
* [http://sundtek.com/shop/Digital-TV-Sticks/Sundtek-MediaTV-Pro-DVB-CT-Radio-AnalogTV.html#review SundTek DVB-C/T-USB-Stick] 80 €, unterstützt offiziell [[Linux]]&lt;br /&gt;
&lt;br /&gt;
===== DVB-T-Sticks =====&lt;br /&gt;
* [http://www.hauppauge.de/site/support/support_linux.html Hauppauge WinTV - Serie]&lt;br /&gt;
* [http://nakorpi.bplaced.net/pcvdr/spezial2.htm Logilink VG0002A - USB-DVB-T-Stick]&lt;br /&gt;
** läuft ab Kernel 3.7 out-of-the-box (evtl. linux-firmware bzw. linux-firmware-non-free zusätzlich installieren); der Kernel lässt sich als sog. Mainline-Kernel auch einfach mit früheren Ubuntu-Versionen nutzen&lt;br /&gt;
** [http://linbay.blogspot.de/2012/11/realtek-rtl2832u-dvb-t-on-ubuntu-1210.html Anleitung zur Installation unter Ubuntu 12.10 Quantal]&lt;br /&gt;
** [http://wiki.ubuntuusers.de/MSI_DigiVox_mini_II#Installation-unter-Maverick-10-10 Anleitung zur Installation unter Ubuntu]&lt;br /&gt;
** [http://nakorpi.bplaced.net/pcvdr/spezial2.htm Der Logilink VG0002A hat den RTL2832U-Chip und ist baugleich mit MSI DIGIVOX mini Deluxe]&lt;br /&gt;
** [http://www.linuxtv.org/wiki/index.php/MSI_DigiVox_mini_II_V3.0 Beschreibung RTL2832-Driver]&lt;br /&gt;
** [http://doc.ubuntu-fr.org/af9015 Beschreibung AF9015-Driver] (französisch)&lt;br /&gt;
&lt;br /&gt;
===== PC/Notebook =====&lt;br /&gt;
&lt;br /&gt;
* Vorteilhaft ist Notebook, da bereits standardmäßig&lt;br /&gt;
** wenig Stromverbrauch,&lt;br /&gt;
** geringer Platzverbrauch und &lt;br /&gt;
** meist leise.&lt;br /&gt;
&lt;br /&gt;
* Größe: maximal 13,3 &amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Prozessoren: Mobilprozessoren, (Intel Atom und AMD C-Series scheiden allerdings wegen zu geringer Performance aus)&lt;br /&gt;
* Grafik: auf Motherboard oder auf Prozessorchip reicht aus&lt;br /&gt;
* HDMI-Anschluss&lt;br /&gt;
* USB 2.0, besser USB 3.0&lt;br /&gt;
* RAM: mindesten 4 GB&lt;br /&gt;
* Festplatte: kleine SSD (ca. 100 GB) sinnvoll (schnelleres Booten) plus 500 GB-Festplatte (ggf. extern)&lt;br /&gt;
* Bluetooth (um Sofa-Tastatur anzubinden)&lt;br /&gt;
* LAN-Schnittstelle (verhindert WLAN-Elektosmog)&lt;br /&gt;
&lt;br /&gt;
* möglich: DVD-Player - das dürfte aber eher bald aus der Mode kommen&lt;br /&gt;
&lt;br /&gt;
=== Projektoren ===&lt;br /&gt;
&lt;br /&gt;
{|border=&amp;quot;1&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| [http://www.golem.de/1107/85218.html BenQ MS500] &lt;br /&gt;
| im Abstand von 2 m 1,33 m Bilddiagonale &lt;br /&gt;
| Bilddiagonalen von 0,61 bis 7,62 Metern&lt;br /&gt;
| 800x600 (SVGA)&lt;br /&gt;
| 33 dB(A) &lt;br /&gt;
| Kontrast 4000:1&lt;br /&gt;
| 300 €&lt;br /&gt;
|-&lt;br /&gt;
| [http://www.golem.de/1107/85218.html BenQ MX501] &lt;br /&gt;
| im Abstand von 2 m 1,33 m Bilddiagonale &lt;br /&gt;
| Bilddiagonalen von 0,61 bis 7,62 Metern&lt;br /&gt;
| 1024x768 (XGA)&lt;br /&gt;
| 33 dB(A) &lt;br /&gt;
| Kontrast 4000:1&lt;br /&gt;
| 500 €&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Messgeräte ===&lt;br /&gt;
&lt;br /&gt;
==== Peaktech 3315 USB ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://www.peaktech.de/PeakTech-P-3315-Digitalmultimeter-4.000-Counts-600V-AC-DC-10A-AC-DC-mit-USB-RS-232/P-3315 Peaktech 3315 USB Multimeter]&lt;br /&gt;
** https://www.makerconnect.de/index.php?threads/messger%C3%A4t-mit-usb.3323/&lt;br /&gt;
** [https://docs.google.com/viewer?url=http%3A%2F%2Fwww.mikrocontroller.net%2Fattachment%2F34649%2FPeaktech_3315_interface.pdf Beschreibung des Protokolls des Multimeters]&lt;br /&gt;
** [https://www.mikrocontroller.net/topic/98208 Forum-Diskussion zum Protokoll auf der USB-Schnittstelle] u.a. mit kleinem Linux-Programm zum Konvertieren nach CSV&lt;br /&gt;
** https://www.happy-light.de/index.html?common/messen.htm&lt;br /&gt;
** https://github.com/JochiSt/LabDeviceControl/blob/main/PeakTech_3315/PeakTech_DMM3315.py&lt;br /&gt;
&lt;br /&gt;
== Druck ==&lt;br /&gt;
&lt;br /&gt;
=== 3D-Druckservice ===&lt;br /&gt;
&lt;br /&gt;
* Sculpteo&lt;br /&gt;
* [http://www.shapeways.com/ ShapeWays]&lt;br /&gt;
* [http://i.materialise.com/ I.Materialise]&lt;br /&gt;
* [http://www.cloudfab.com/ CloudFab]&lt;br /&gt;
* [http://www.fabtory.de/printing_de/ 3D-Fabtory]&lt;br /&gt;
* [http://www.makeyourproduct.com/de/index.htm makeYourProduct.com]&lt;br /&gt;
* http://www.3ddruckerei.de/&lt;br /&gt;
* [http://pages.rapidobject-shop.com/252-0-Service.html Vorgefertigte Objekte bei rapidobjects]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 3D-Drucksoftware ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.tinkercad.com/ TinkerCAD.com] - freies Online-3D-Modellierwerkzeug&lt;br /&gt;
* [http://www.heise.de/tr/artikel/3D-Design-fuer-alle-1332328.html EndlessForms]&lt;br /&gt;
&lt;br /&gt;
=== 3D-Drucker ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.idealo.de/preisvergleich/OffersOfProduct/6575667_-i3-mega-s-anycubic.html Anycubic i3 Mega S]&lt;br /&gt;
&lt;br /&gt;
== Betriebssysteme ==&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
* [[Linux-Tipps]]&lt;br /&gt;
** [[OpenSuse]]&lt;br /&gt;
** [[Debian]]&lt;br /&gt;
** [[Mail unter Linux]]&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
* Siehe [[oldCt:Informationstechnik]]&lt;br /&gt;
* [[Windows]]&lt;br /&gt;
** [[:Category:Windows-Tipps]]&lt;br /&gt;
** [[Windows-Tastenkürzel]]&lt;br /&gt;
** [[FTP-Server unter Windows]]&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== BSD ===&lt;br /&gt;
&lt;br /&gt;
* [http://desktopbsd.net/index.php?id=31 DesktopBSD]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Netzwerk ==&lt;br /&gt;
&lt;br /&gt;
* [[Netzwerk]]&lt;br /&gt;
** [[Samba]]&lt;br /&gt;
** [[WebDAV]]&lt;br /&gt;
&lt;br /&gt;
== Internet ==&lt;br /&gt;
&lt;br /&gt;
=== Internetzugang ===&lt;br /&gt;
&lt;br /&gt;
Für den Internetzugang über Modem/ISDN findet sich eine Anbieterübersicht bei [http://www.heise.de/itarif/ heise.de].&lt;br /&gt;
&lt;br /&gt;
Sofern man von Alice.DSL ein [http://wiki.mhilfe.de/index.php?title=Siemens_C2-010-I Siemens-Modem] geliefert bekommt, ist diese [http://wiki.mhilfe.de/index.php?title=Siemens_C2-010-I_als_Router_konfigurieren Anleitung zur Routerkonfiguration] oder die [http://wiki.mhilfe.de/index.php?title=Routersetup_in_3_Minuten Schnellvariante] ein Gewinn. Siehe auch das [http://www.alice-wiki.de/Siemens_C2-010-I Alice-Wiki], die [http://www.dokom21.de/mstream.ashx?id=143644 Siemens-Kurzanleitung].&lt;br /&gt;
&lt;br /&gt;
Anleitungen finden sich auch für [http://hilfe.telekom.de/hsp/cms/content/HSP/de/3388/theme-21313652/theme-2000178/theme-66139236/theme-2001151/theme-2001545 T-Sinus 154 DSL Basic 3].&lt;br /&gt;
&lt;br /&gt;
=== Webbrowser ===&lt;br /&gt;
&lt;br /&gt;
* [[Opera]] ist [[plattformübergreifend]] verfügbar.&lt;br /&gt;
* [[Firefox]] ist ebenfalls  [[plattformübergreifend]] verfügbar. Es werden eine Vielzahl von Plugins angeboten, z.B.&lt;br /&gt;
** [http://ffpimp.com/?p=42 Screenshot Pimp] zum Speichern kompletter Webseiten (nicht nur des sichtbaren Teils) als Bilddatei (.PNG).&lt;br /&gt;
&lt;br /&gt;
* Googles Chrome-Browser gibt es derzeit nur für Windows (an Linux- und Mac OS-Ports wird jedoch gearbeitet); er übermittelt Daten an Google. Eine Variante namens [[Iron]], die auf die Datenübermittlung verzichtet, wird von [http://www.srware.net/software_srware_iron_news.php SRware] angeboten.&lt;br /&gt;
&lt;br /&gt;
=== Passwortmanager ===&lt;br /&gt;
&lt;br /&gt;
Die Unix-Philosophie bei den Passwortmanagern (Konfiguration in Textdateien und Keep It Simple Stupid - KISS) verspricht der [https://www.passwordstore.org/ Passwortmanager Pass].&lt;br /&gt;
&lt;br /&gt;
=== Sicherheit im Internet ===&lt;br /&gt;
==== Mediennutzung durch Kinder / Jugendliche ====&lt;br /&gt;
&lt;br /&gt;
* www.klicksafe.de&lt;br /&gt;
* www.schau-hin.info&lt;br /&gt;
* www.jugendschutz.net&lt;br /&gt;
* www.handysektor.de&lt;br /&gt;
* www.oliver.basener.de&lt;br /&gt;
&lt;br /&gt;
=== Remote Desktop ===&lt;br /&gt;
&lt;br /&gt;
* [[Remote Desktop]]&lt;br /&gt;
&lt;br /&gt;
=== Webhosting ===&lt;br /&gt;
&lt;br /&gt;
* [[Webhosting]]&lt;br /&gt;
** [[Dynamisches DNS]]&lt;br /&gt;
&lt;br /&gt;
=== Online Zusammenarbeit ===&lt;br /&gt;
&lt;br /&gt;
==== Online Umfrage ====&lt;br /&gt;
&lt;br /&gt;
Das ursprünglich sehr erfolgreiche Doodle wurde allmählich immmer umfangreicher und durch Werbung so belastet, dass es kein wirkliches Tool mehr ist, um einfache Online-Umfragen abzuhalten.&lt;br /&gt;
&lt;br /&gt;
Alternativen sind:&lt;br /&gt;
&lt;br /&gt;
* https://dud-poll.inf.tu-dresden.de/ - DuD-Poll funktioniert ohne Werbung und Anmeldung. Man kann sich aber anmelden.&lt;br /&gt;
&lt;br /&gt;
==== Online Office ====&lt;br /&gt;
* [https://de.wikipedia.org/wiki/OnlyOffice OnlyOffice] bietet Integration mit NextCloud an. Basis sind die Microsoft Office - Dateiformate (docx, xlsx, pptx).&lt;br /&gt;
* Collabora Office integriert ebenfalls mit [[NextCloud]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Google Docs (Text, Tabellen)&lt;br /&gt;
* [http://www.zoho.com/index.html ZOHO] bietet eine komplette Online Office Suite.&lt;br /&gt;
* [http://baseportal.de/ BasePortal] stellt (mit Werbung kostenlos) einen Datenbankserver mit eigener Web-Programmierumgebung zur Verfügung.&lt;br /&gt;
* Mit [http://www.thinklinkr.com/ thinklinkr] gibt es einen Online-Gliederungseditor, der Im-/Export von und nach [[OPML]] unterstützt. Außerdem bietet er Export in das [[Word]]-Format. &amp;lt;small&amp;gt;Allerdings funktioniert thinklinkr nicht mit [[Internet Explorer]] 7; zusätzlich wird dann Google [[Chrome]] Frame benötigt.&amp;lt;/small&amp;gt;&lt;br /&gt;
* [http://workspace.officelive.com/ Microsoft Office Live], [http://www.skydrive.com SkyDrive.com]&lt;br /&gt;
* [https://www.microsoft.com/de-de/microsoft-365/free-office-online-for-the-web?ocid=cmm0tj1uoig Microsoft (Web-) Office] - kostenlose Schmalversion von Microsoft 365&lt;br /&gt;
&lt;br /&gt;
* [http://prezi.com/ Prezi] ist ein Online-Dienst für Präsentationen.&lt;br /&gt;
&lt;br /&gt;
* [http://ethercalc.net/ Ethercalc] ist eine [[Open Source]]-Anwendung, die auf einem eigenen Server betrieben werden kann.&lt;br /&gt;
&lt;br /&gt;
* WebODF - kooperatives Editieren von [[ODF | Open Document Format]]-Dokumenten.&lt;br /&gt;
** [[Owncloud]] Documents&lt;br /&gt;
** [http://webodf.org/start/ Anleitung zur Stand-Alone-Benutzung von WebODF]&lt;br /&gt;
&lt;br /&gt;
==== Online Bildbearbeitung ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://aviary.com/blog Aviary.com] bietet kostenlos eine Online-Bildbearbeitung an.&lt;br /&gt;
* Siehe auch [[Fotografie]].&lt;br /&gt;
&lt;br /&gt;
* [http://draw.labs.autodesk.com/ADDraw/draw.html AutoDesk Project Draw:] Vektorgrafik&lt;br /&gt;
* [http://live.yworks.com/graphity/ Graphity]&lt;br /&gt;
&lt;br /&gt;
==== Online CAD ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.autocad360.com AutoCAD 360], kostenlos, Export nach .DWG und .PDF&lt;br /&gt;
* TinkerCAD, benötigt [[WebGL]]&lt;br /&gt;
* [https://openjscad.xyz/docs/ OpenJsCAD]&lt;br /&gt;
&lt;br /&gt;
==== Synchronisation und Dokumentenmanagement ====&lt;br /&gt;
&lt;br /&gt;
* [[Synchronisation Web-PC-Handy]]&lt;br /&gt;
* [[DMS]]&lt;br /&gt;
* [https://one.ubuntu.com/features/ Ubuntu One] &amp;lt;small&amp;gt;(s. auch [[Ubuntu]])&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Online-Speicher&lt;br /&gt;
* DropBox - der Standard&lt;br /&gt;
* [http://www.wuala.com/de/pricing/ Wuala] 1 GB kostenlos, aus der Schweiz&lt;br /&gt;
* [https://spideroak.com/ Spideroak]  2GB kostenlos&lt;br /&gt;
* [http://www.box.net/pricing/ box.net] zwar 5GB kostenlos, aber kein kostenloser Passwortschutz&lt;br /&gt;
* HiDrive bietet 5GB freien Speicherplatz im Netz&lt;br /&gt;
&lt;br /&gt;
==== Remote File Access ====&lt;br /&gt;
&lt;br /&gt;
===== WebDAV =====&lt;br /&gt;
&lt;br /&gt;
Siehe [[WebDAV]]&lt;br /&gt;
&lt;br /&gt;
===== DropBox =====&lt;br /&gt;
&lt;br /&gt;
Mit DropBox kann man seine Dateien mit verschiedenen Geräten synchronisieren lassen.&lt;br /&gt;
&lt;br /&gt;
* Z.B. DropSync für Android&lt;br /&gt;
&lt;br /&gt;
Mit [https://write-box.appspot.com/ write-box] kann man Textdateien im Webeditor editieren und sie in DropBox speichern.&lt;br /&gt;
&lt;br /&gt;
Open-Source-Alternativen zu [[Dropbox]] können mit &lt;br /&gt;
* [[OwnCloud]] oder&lt;br /&gt;
* [[SeaFile]]&lt;br /&gt;
aufgebaut werden.&lt;br /&gt;
&lt;br /&gt;
=== Soziale Netzwerke ===&lt;br /&gt;
&lt;br /&gt;
Alternativen zu den kommerziellen [[Facebook]]s und [[Twitter]]s gibt es, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [https://joindiaspora.com/ JoinDiaspora.com], ein dezentrales soziales Netzwerk basierend auf Open Source Software und Verschlüsselung mittels [[GPG]]&lt;br /&gt;
&lt;br /&gt;
=== Geodaten ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Geoinformationssystem]]&lt;br /&gt;
&lt;br /&gt;
=== Suchmaschinen ===&lt;br /&gt;
* Suchmaschinen gibt es u.a. von [[Google]] und [[Microsoft]].&lt;br /&gt;
* [[Google]] bietet nun auch einen Auskunftsdienst über die bei ihm getätigten Suchanfragen namens [http://google.com/insights/search/?hl=de Google Insights Search] an.&lt;br /&gt;
* [https://duckduckgo.com/ DuckDuckGo] verspricht eine anonymere Suche als die herkömmlichen Suchmaschinen von Google und Microsoft.&lt;br /&gt;
&lt;br /&gt;
=== Soziale Netzwerke ===&lt;br /&gt;
&lt;br /&gt;
* Größtes Problem bei Sozialen Netzwerken ist der [[Datenschutz|Schutz persönlicher Daten]]&lt;br /&gt;
** [http://www.spiegel.de/netzwelt/web/0,1518,667331,00.html Anleitung zum Datenschutz bei Facebook]&lt;br /&gt;
&lt;br /&gt;
== Mobilfunk ==&lt;br /&gt;
&lt;br /&gt;
=== Massenüberwachung ===&lt;br /&gt;
&lt;br /&gt;
Heutzutage ist [https://www.golem.de/news/etsi-ueberwachungsstandards-fuer-den-5g-polizeifunk-2512-203657.html jedes Smartphone technisch überwachbar]. Die entsprechenden Standards gelten weltweit. In demokratischen Staaten gibt es rechtliche Hürden; in autoritären Staaten gibt es diese nicht. Damit gibt es in solchen Staaten keine Hürden.&lt;br /&gt;
&lt;br /&gt;
== Spracherzeugung ==&lt;br /&gt;
&lt;br /&gt;
Neben Text-To-Speech (TTS), für das es inzwischen eine ganze Menge auch [[Open Source]]-Programme gibt, gibt es auch Forschung an der computerbasierten Erzeugung von Gesang (Singing Synthesis).&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* UTACO-Projekt von Amazon&lt;br /&gt;
* [https://speechresearch.github.io/deepsinger/ DeepSinger]&lt;br /&gt;
* https://link.springer.com/chapter/10.1007/978-3-642-23220-6_23&lt;br /&gt;
* [https://github.com/MTG/WGANSing WGANSing] mit Anleitung zum Installieren, Trainieren und Nutzen.&lt;br /&gt;
&lt;br /&gt;
Häufig wird dazu das Format [https://www.musicxml.com/ MusicXML] genutzt.&lt;br /&gt;
&lt;br /&gt;
== Softwareentwicklung ==&lt;br /&gt;
&lt;br /&gt;
* Siehe [[Softwareentwicklung]]&lt;br /&gt;
** [[Java]]&lt;br /&gt;
** [[GIS]]&lt;br /&gt;
&lt;br /&gt;
== Anwendungen ==&lt;br /&gt;
=== Plattformübergreifende Software ===&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== Geschäftssoftware ===&lt;br /&gt;
==== Dokumentenmanagementsystem ====&lt;br /&gt;
===== Allgemeines =====&lt;br /&gt;
* [http://www.heise.de/open/artikel/Dokumentenmanagement-mit-Open-Source-221973.html Einführung in Dokumentenmanagentsystem (DMS)] mit Open Source (heise-Artikel)&lt;br /&gt;
* [http://www.documanager.de/ Portal zu DMS]&lt;br /&gt;
* [http://www.documanager.de/magazin/artikel_2099.html Dokumentenmanagement-Praxishandbuch]&lt;br /&gt;
* Um eine komplette Open Source-Lösung für DMS zu erreichen, bedarf es eines [http://www.claraocr.org/de/ocr/ocr-software/open-source-ocr.html Open Source OCR].&lt;br /&gt;
** [http://www.openkm.com/ OpenKM] verspricht ein [[Open Source]]-[[DMS]] zu sein, das auch [[OCR]] integriert.&lt;br /&gt;
** Mit einer Kette aus [[ImageMagick]] und [[Tesseract]] lässt sich [http://kaffeeringe.de/2942/ocr-mit-tesseract-und-imagemagick/ das papierlose Büro angeblich] beginnen.&lt;br /&gt;
** Auch [[Cuneiform]] scheint eine recht zuverlässige Open-Source-[[OCR]] zu sein.&lt;br /&gt;
** Mit [http://wiki.ubuntuusers.de/ExactImage#hocr2pdf hocr2pdf] können Sandwich-PDFs erstellt werden: markierbarer/durchsuchbarer Text auf Bild. Der Text muss dazu im hOCR-Format vorliegen, was u.a. [[Tesseract]] beherrscht.&lt;br /&gt;
** Die Kombination aus [[Tesseract]] und [https://sourceforge.net/projects/gimagereader/ gImageReader] bietet OCR, hOCR und Sandwich-PDF mit GUI-Unterstützung.&amp;lt;ref&amp;gt;Vgl. https://www.linux-magazin.de/ausgaben/2017/06/bitparade/2/&amp;lt;/ref&amp;gt;&lt;br /&gt;
** Mit [http://tika.apache.org/ Apache Tika] lassen sich die Metadaten und der Inhalt eines Dokuments getrennt erfassen.&lt;br /&gt;
** Auch [https://www.naps2.com/ Naps2] scheint beim Scannen und anschließendem [[OCR]] zu helfen.&lt;br /&gt;
* [https://www.bitfarm-archiv.de/dokumentenmanagement/glossar/revisionssichere-archivierung.html Steuerrechtliche Anforderungen an die Revisionssicherheit eines elektronischen DMS]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Einzelne DMS =====&lt;br /&gt;
Folgende Systeme sind (im Wesentlichen) [[Open Source]]:&lt;br /&gt;
* [http://www.alfresco.com/ Alfresco] &lt;br /&gt;
** kann auch [[SharePoint]] ersetzen&amp;lt;ref&amp;gt;http://docs.alfresco.com/3.4/index.jsp&amp;lt;/ref&amp;gt;&lt;br /&gt;
* [http://www.agorum.com/startseite/produkte/dms-ecm-agorum-core-open-source/schnellvergleich-agorum-core-versionen.html Agorum core]&lt;br /&gt;
* [http://www.archivista.ch/de/pages/support/downloads.php Archivista] (auch mit umfangreichem [http://www.archivista.ch/de/pages/support/handbuch.php Handbuch])&lt;br /&gt;
* [http://www.bitfarm-archiv.de/dokumentenmanagement/kosten-lizenzierung.html Bitfarm]&lt;br /&gt;
* [https://www.ecodms.de/index.php/de/ EcoDMS], aus Deutschland, zwar Open Source, aber nur für Privatgebrauch kostenlos, Lizenz einmalig rd. 50 €&lt;br /&gt;
* [https://www.krystaldms.in/community/features.php KrystalDMS] bietet eine - eingeschränkte - Community-Edition.&lt;br /&gt;
* [https://www.logicaldoc.com/de/produktvergleich LogicalDOC] mit erheblichen Einschränkungen in der freien &amp;quot;Community&amp;quot;-Ausgabe&lt;br /&gt;
* [https://www.mayan-edms.com/ MayanEDMS], Open Source als Sicherheitsfeature wird als Verkaufsargument genannt.&lt;br /&gt;
* [https://www.opendocman.com/ OpenDocMan]&lt;br /&gt;
* [https://gitlab.gnome.org/World/OpenPaperwork/paperwork Paperwork] ist ein &amp;quot;DMS&amp;quot;, das das Scannen und das Verwalten von gescannten Dokumenten übernimmt.&lt;br /&gt;
** [https://www.linux-magazin.de/ausgaben/2017/06/bitparade/6/ Installationsanleitung zu Paperwork]&lt;br /&gt;
* [https://www.seeddms.org/index.php?id=3 SeedDMS], Nachfolger von LetoDMS&lt;br /&gt;
* [http://www.xinco.org/index_de.php Xinco DMS] ([[Java]]-basiert)&lt;br /&gt;
&lt;br /&gt;
==== Reporting ====&lt;br /&gt;
&lt;br /&gt;
DataWareHouse, Business Intelligence sind Schlagworte für Software, die Unternehmensdaten für Entscheider aufbereiten soll.&lt;br /&gt;
&lt;br /&gt;
Siehe [http://www.isreport.de/business-intelligence/reportingstrategie-daemmt-informationsflut.html Artikel zur Reportingstrategie].&lt;br /&gt;
&lt;br /&gt;
[[Open Source]]-Berichtstools:&lt;br /&gt;
&lt;br /&gt;
* [[Java-Tipps#JasperReports JasperReports]]&lt;br /&gt;
* BIRT&lt;br /&gt;
* Pentaho Reporting&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
* [[Multimedia]]&lt;br /&gt;
** [[GIMP]]&lt;br /&gt;
* [[Flash]]&lt;br /&gt;
&lt;br /&gt;
=== eBooks ===&lt;br /&gt;
&lt;br /&gt;
* Ein offener Standard für das Dateiformat von eBooks ist [[wikipedia:EPUB | EPub]].&lt;br /&gt;
* Ebooks im [[EPub]]-Format gibt es u.a. von &lt;br /&gt;
** [http://www.gutenberg.org/wiki/DE_Hauptseite Projekt Gutenberg] (frei)&lt;br /&gt;
** [http://www.beam-ebooks.de/kostenlos.php5 Beam-ebooks] (teilweise kostenlos)&lt;br /&gt;
** [http://www.ebook.de/de/category/59011/gratis_ebooks.html Ebooks.de (libri.de)] (teilweise kostenlos)&lt;br /&gt;
** [https://www.pageplace.de/de/ Telekom PagePlace] (teilweise auch gratis)&lt;br /&gt;
&lt;br /&gt;
==== Ebook Reader ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.tolino.de/de/service/ Tolino Shine], u.a. von Thalia, Telekom und Hugendubel&lt;br /&gt;
** Mit [[Android]], das [http://allesebook.de/firmware-software-updates/anleitung-tolino-shine-root-zugriff-inkl-google-play-32350/ auch gerootet werden] kann&lt;br /&gt;
* [http://de.kobo.com/devices#ereaders Kobo Glo] und Derivate&lt;br /&gt;
&lt;br /&gt;
=== Finanzen ===&lt;br /&gt;
&lt;br /&gt;
[[Finanzsoftware]]&lt;br /&gt;
&lt;br /&gt;
=== Mobile Anwendungen ===&lt;br /&gt;
&lt;br /&gt;
==== Offline Reader ====&lt;br /&gt;
* [http://www.deep-shadows.com/hax/ReadManiac/index.htm ReadManiac] (J2ME)&lt;br /&gt;
* [http://www.olivetree.com/smartphone/symbian60-2/ BibleReader] (verschiedene Mobilplattformen) &lt;br /&gt;
* [http://smartsam.de/product.php?prod_id=10251 ReadM] (unterschiedliche Formate: DOC, TXT, PRC und TCR; Symbian s60-series)&lt;br /&gt;
* [http://code.plkr.org/docs/ Plucker] (nur für Palm) - [http://www2.parc.com/isl/members/janssen/pubs/plucker-tour/ Tour]; das Plucker Document Format wird in der Dokumentation beschrieben; diese kann auf der [http://www.plkr.org/dl Download-Seite] heruntergeladen werden.&lt;br /&gt;
* [http://www.mobipocket.com/en/DownloadSoft/ProductDetailsReader.asp MobiPocket]&lt;br /&gt;
* Sitescooper ([http://www.mobileread.com/forums/showthread.php?t=1492 Tutorial], [http://www.awprofessional.com/articles/article.asp?p=29050&amp;amp;rl=1 Kurzeinführung])&lt;br /&gt;
* Mit [http://en.wikipedia.org/wiki/Open_eBook Open eBook] gibt es einen offenen Standard für das Dateiformat eines eBooks. Dieser hat sich bisher jedoch (noch) nicht durchgesetzt (Stand: Mai 2007).&lt;br /&gt;
&lt;br /&gt;
=== Modelleisenbahn ===&lt;br /&gt;
&lt;br /&gt;
[[Modelleisenbahn]]&lt;br /&gt;
&lt;br /&gt;
=== QR-Codes ===&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.linux-community.de/ausgaben/linuxuser/2013/06/qr-codes-unter-linux-erzeugen-und-lesen/&lt;br /&gt;
* [[Programmierprojekte#Mobiler_Peer_2_Peer_Dateiaustausch]]&lt;br /&gt;
&lt;br /&gt;
==== QR Codes erzeugen ==== &lt;br /&gt;
QR-Codes können Barcodes ersetzen. Sie besitzen eine Redundanz. Der Fehlerkorrekturmechanismus kann auch genutzt werden, um Bilder tatsächlich unterzuschieben. Siehe&lt;br /&gt;
* [http://research.swtch.com/qart QArt], mit einer [http://research.swtch.com/qr/draw Online-Demo eines QArt-Generators]&lt;br /&gt;
* [http://code-bude.net/2013/10/17/qrcoder-eine-open-source-qr-code-implementierung-in-csharp/ QRCoder]- eine [[Open Source]]-[[Java]]-Anwendung zur Erzeugung diverser QR-Codes.&lt;br /&gt;
* https://pub.dev/packages/qr_image_exporter&lt;br /&gt;
&lt;br /&gt;
Die QR-Codes können auch genutzt werden, um Zahlungsdaten auf Rechnungen zu drucken:&lt;br /&gt;
&lt;br /&gt;
* [http://www.europeanpaymentscouncil.eu/index.cfm/knowledge-bank/epc-documents/quick-response-code-guidelines-to-enable-data-capture-for-the-initiation-of-a-sepa-credit-transfer/ Empfehlungen des halbstaatlichen European Payments Council]&lt;br /&gt;
* [http://www.stuzza.at/de/qr-code-generator.html Österreichischer SEPA-QR-Code-Generator]&lt;br /&gt;
** [http://www.stuzza.at/de/download/qr-code.html Seite mit Überprüfungstool für QR-Code]&lt;br /&gt;
* [http://qrcode.tec-it.com/de/SEPA QR-Code-Generator (wohl) nach SEPA-Empfehlung]&lt;br /&gt;
* [https://www.girocode.de/demo/ GiroCode] - scheint mit SEPA-Empfehlung kompatibel zu sein&lt;br /&gt;
* [http://www.bezahlcode.de/der-bezahlcode/ BezahlCode - Generator] - nicht mit EPC-Empfehlungen kompatibel&amp;lt;ref&amp;gt;Siehe http://www.zahlungsverkehrsfragen.de/ueberweisung/sepa-zahlschein .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== QR Codes lesen ====&lt;br /&gt;
&lt;br /&gt;
Ein einfaches Tool, um unter Linux vor die PC-Kamera gehaltene QR-Codes auszulesen ist &amp;lt;code&amp;gt;zbarcam&amp;lt;/code&amp;gt;. Dieses muss mit &lt;br /&gt;
  sudo aptitude install zbar-tools &lt;br /&gt;
installiert werden.&lt;br /&gt;
&lt;br /&gt;
Alternativ kann das Online-Tool https://zxing.org/w/decode.jspx genutzt werden. &lt;br /&gt;
&lt;br /&gt;
Für [[Android]] bietet zxing.org den &amp;quot;Barcode Scanner&amp;quot;, der auch QR-Codes liest und im [[F-Droid]]-Store verfügbar ist.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://minhazav.medium.com/qr-and-barcode-scanner-using-html-and-javascript-2cdc937f793d&lt;br /&gt;
&lt;br /&gt;
== Telefon ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[Telefon]]&lt;br /&gt;
&lt;br /&gt;
== IT-Recht ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[IT-Recht]]&lt;br /&gt;
&lt;br /&gt;
== Digitale Souveränität ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
* [[Open Source]]&lt;br /&gt;
&lt;br /&gt;
=== Unabhängigkeit von Clouddiensten allgemein ===&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://european-alternatives.eu/&lt;br /&gt;
&lt;br /&gt;
==== Virtuelle Maschinen ====&lt;br /&gt;
&lt;br /&gt;
Statt Amazon AWS etc.&lt;br /&gt;
&lt;br /&gt;
* Hetzner&lt;br /&gt;
&lt;br /&gt;
=== Mailserver ===&lt;br /&gt;
&lt;br /&gt;
* Proton Mail - ein Schweizer Cloudanbieter&lt;br /&gt;
&lt;br /&gt;
=== DateiServer ===&lt;br /&gt;
&lt;br /&gt;
* yourstorage von Hetzner&lt;br /&gt;
* Proton Drive&lt;br /&gt;
&lt;br /&gt;
=== DNS ===&lt;br /&gt;
&lt;br /&gt;
* https://quad9.net/de/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Lebens-Tipps]]&lt;br /&gt;
[[Category:OldCt]]&lt;br /&gt;
[[Category:Java]]&lt;br /&gt;
[[Category:Serversoftware]]&lt;br /&gt;
[[Category:Netzwerk]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Renault_Scenic_E-Tech&amp;diff=23205</id>
		<title>Renault Scenic E-Tech</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Renault_Scenic_E-Tech&amp;diff=23205"/>
		<updated>2026-11-02T17:44:00Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Parksensoren hinten funktionieren dauerhaft nicht */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Renault Scenic E-Tech bietet in seiner 220 Long Range Version auch real Reichweiten von ca. 500 km (WLTP: 598 km). Er hat einen großen Kofferraum, ist dafür relativ kurz. Er wiegt unter 2t und passt daher auf einen üblichen Duplex-Stellplatz.&lt;br /&gt;
&lt;br /&gt;
== Reifen ==&lt;br /&gt;
&lt;br /&gt;
Die Schrauben für die Reifen sollten mit [https://www.scenic-e-forum.de/forum/thread/12-renault-scenic-e-tech-electric-winterreifen-und-winter-komplettr%C3%A4der-renault-ori/?postID=3363#post3363 130 Nm] angezogen werden.&lt;br /&gt;
&lt;br /&gt;
Die Bedienungsanleitung zeigt die [https://www.user-manual.renault.com/de/content/scenic-e-tech-electric/technical-specifications/information-about-vehicle/informationen-zum Hebepunkte nur sehr unscharf].&lt;br /&gt;
&lt;br /&gt;
== Infotainmentsystem ==&lt;br /&gt;
&lt;br /&gt;
Das Infotainment-System kann man &#039;&#039;&#039;zurücksetzen&#039;&#039;&#039;, den [https://www.scenic-e-forum.de/forum/thread/100-reset/?pageNo=2 Power-Knopf rechts neben dem vertikalen Bildschirm lange drückt, aussteigt, zuschließt, aufschließt und wieder einsteigt].&lt;br /&gt;
&lt;br /&gt;
== App und API ==&lt;br /&gt;
&lt;br /&gt;
Renault bietet eine [[Automation_beim_Auto | API zum Zugriff auf das Auto über die Renault Cloud ]]. &lt;br /&gt;
Sie bietet die Schnittstelle für die MyRenault-App. Sie kann aber auch mit [[HomeAssistant]] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
https://www.gps-rlink.com/openr-link/openr-link-software-updates/&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Parksensoren hinten funktionieren dauerhaft nicht ===&lt;br /&gt;
&lt;br /&gt;
Aus mir nicht bekannten Gründen funktionieren die Parksensoren beim Renault Scenic E-Tech nach Abbau eines Radträgers vom Heck nicht wieder.&lt;br /&gt;
Allerdings hängt das Nichtfunktionieren vom Profil ab. Abhilfe schafft wohl das Anlegen eines weiteren Profils. Aber dadurch verliert man die &lt;br /&gt;
Einstellungen vom Profil, das man nicht mehr nutzt.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://www.scenic-e-forum.de/forum/thread/290-parksensoren-hinten-reagieren-nicht/&lt;br /&gt;
* https://www.scenic-e-forum.de/forum/thread/417-einstellung-parksensoren-bei-mehreren-profilen/?postID=7302&amp;amp;highlight=Parksensor#post7302&lt;br /&gt;
* https://www.facebook.com/groups/1261855404482809/posts/1569999147001765/&lt;br /&gt;
&lt;br /&gt;
== Weiteres ==&lt;br /&gt;
Siehe auch &lt;br /&gt;
&lt;br /&gt;
* [[Mobilit%C3%A4t#Elektroautos]]&lt;br /&gt;
* [[Mobilit%C3%A4t#Rabatte_f.C3.BCr_Schwerbehinderte | Renault-Rabatte für Schwerbehinderte]]&lt;br /&gt;
* [[Automation_beim_Auto | Renault-API]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Mobilität]]&lt;br /&gt;
[[Category:Auto]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Renault_Scenic_E-Tech&amp;diff=23204</id>
		<title>Renault Scenic E-Tech</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Renault_Scenic_E-Tech&amp;diff=23204"/>
		<updated>2026-11-02T17:21:28Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Parksensoren hinten funktionieren dauerhaft nicht */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Renault Scenic E-Tech bietet in seiner 220 Long Range Version auch real Reichweiten von ca. 500 km (WLTP: 598 km). Er hat einen großen Kofferraum, ist dafür relativ kurz. Er wiegt unter 2t und passt daher auf einen üblichen Duplex-Stellplatz.&lt;br /&gt;
&lt;br /&gt;
== Reifen ==&lt;br /&gt;
&lt;br /&gt;
Die Schrauben für die Reifen sollten mit [https://www.scenic-e-forum.de/forum/thread/12-renault-scenic-e-tech-electric-winterreifen-und-winter-komplettr%C3%A4der-renault-ori/?postID=3363#post3363 130 Nm] angezogen werden.&lt;br /&gt;
&lt;br /&gt;
Die Bedienungsanleitung zeigt die [https://www.user-manual.renault.com/de/content/scenic-e-tech-electric/technical-specifications/information-about-vehicle/informationen-zum Hebepunkte nur sehr unscharf].&lt;br /&gt;
&lt;br /&gt;
== Infotainmentsystem ==&lt;br /&gt;
&lt;br /&gt;
Das Infotainment-System kann man &#039;&#039;&#039;zurücksetzen&#039;&#039;&#039;, den [https://www.scenic-e-forum.de/forum/thread/100-reset/?pageNo=2 Power-Knopf rechts neben dem vertikalen Bildschirm lange drückt, aussteigt, zuschließt, aufschließt und wieder einsteigt].&lt;br /&gt;
&lt;br /&gt;
== App und API ==&lt;br /&gt;
&lt;br /&gt;
Renault bietet eine [[Automation_beim_Auto | API zum Zugriff auf das Auto über die Renault Cloud ]]. &lt;br /&gt;
Sie bietet die Schnittstelle für die MyRenault-App. Sie kann aber auch mit [[HomeAssistant]] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
https://www.gps-rlink.com/openr-link/openr-link-software-updates/&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Parksensoren hinten funktionieren dauerhaft nicht ===&lt;br /&gt;
&lt;br /&gt;
Aus mir nicht bekannten Gründen funktionieren die Parksensoren beim Renault Scenic E-Tech nach Abbau eines Radträgers vom Heck nicht wieder.&lt;br /&gt;
Allerdings hängt das Nichtfunktionieren vom Profil ab. Abhilfe schafft wohl das Anlegen eines weiteren Profils. Aber dadurch verliert man die &lt;br /&gt;
Einstellungen vom Profil, das man nicht mehr nutzt.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://www.scenic-e-forum.de/forum/thread/290-parksensoren-hinten-reagieren-nicht/&lt;br /&gt;
* https://www.facebook.com/groups/1261855404482809/posts/1569999147001765/&lt;br /&gt;
&lt;br /&gt;
== Weiteres ==&lt;br /&gt;
Siehe auch &lt;br /&gt;
&lt;br /&gt;
* [[Mobilit%C3%A4t#Elektroautos]]&lt;br /&gt;
* [[Mobilit%C3%A4t#Rabatte_f.C3.BCr_Schwerbehinderte | Renault-Rabatte für Schwerbehinderte]]&lt;br /&gt;
* [[Automation_beim_Auto | Renault-API]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Mobilität]]&lt;br /&gt;
[[Category:Auto]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Renault_Scenic_E-Tech&amp;diff=23203</id>
		<title>Renault Scenic E-Tech</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Renault_Scenic_E-Tech&amp;diff=23203"/>
		<updated>2026-11-02T17:04:24Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* App und API */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der Renault Scenic E-Tech bietet in seiner 220 Long Range Version auch real Reichweiten von ca. 500 km (WLTP: 598 km). Er hat einen großen Kofferraum, ist dafür relativ kurz. Er wiegt unter 2t und passt daher auf einen üblichen Duplex-Stellplatz.&lt;br /&gt;
&lt;br /&gt;
== Reifen ==&lt;br /&gt;
&lt;br /&gt;
Die Schrauben für die Reifen sollten mit [https://www.scenic-e-forum.de/forum/thread/12-renault-scenic-e-tech-electric-winterreifen-und-winter-komplettr%C3%A4der-renault-ori/?postID=3363#post3363 130 Nm] angezogen werden.&lt;br /&gt;
&lt;br /&gt;
Die Bedienungsanleitung zeigt die [https://www.user-manual.renault.com/de/content/scenic-e-tech-electric/technical-specifications/information-about-vehicle/informationen-zum Hebepunkte nur sehr unscharf].&lt;br /&gt;
&lt;br /&gt;
== Infotainmentsystem ==&lt;br /&gt;
&lt;br /&gt;
Das Infotainment-System kann man &#039;&#039;&#039;zurücksetzen&#039;&#039;&#039;, den [https://www.scenic-e-forum.de/forum/thread/100-reset/?pageNo=2 Power-Knopf rechts neben dem vertikalen Bildschirm lange drückt, aussteigt, zuschließt, aufschließt und wieder einsteigt].&lt;br /&gt;
&lt;br /&gt;
== App und API ==&lt;br /&gt;
&lt;br /&gt;
Renault bietet eine [[Automation_beim_Auto | API zum Zugriff auf das Auto über die Renault Cloud ]]. &lt;br /&gt;
Sie bietet die Schnittstelle für die MyRenault-App. Sie kann aber auch mit [[HomeAssistant]] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
https://www.gps-rlink.com/openr-link/openr-link-software-updates/&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Parksensoren hinten funktionieren dauerhaft nicht ===&lt;br /&gt;
&lt;br /&gt;
Aus mir nicht bekannten Gründen funktionieren die Parksensoren beim Renault Scenic E-Tech nach Abbau eines Radträgers vom Heck nicht wieder.&lt;br /&gt;
Allerdings hängt das Nichtfunktionieren vom Profil ab. Abhilfe schafft wohl das Anlegen eines weiteren Profils. Aber dadurch verliert man die &lt;br /&gt;
Einstellungen vom Profil, das man nicht mehr nutzt.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://www.facebook.com/groups/1261855404482809/posts/1569999147001765/&lt;br /&gt;
&lt;br /&gt;
== Weiteres ==&lt;br /&gt;
Siehe auch &lt;br /&gt;
&lt;br /&gt;
* [[Mobilit%C3%A4t#Elektroautos]]&lt;br /&gt;
* [[Mobilit%C3%A4t#Rabatte_f.C3.BCr_Schwerbehinderte | Renault-Rabatte für Schwerbehinderte]]&lt;br /&gt;
* [[Automation_beim_Auto | Renault-API]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Mobilität]]&lt;br /&gt;
[[Category:Auto]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=NGINX&amp;diff=23202</id>
		<title>NGINX</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=NGINX&amp;diff=23202"/>
		<updated>2026-10-28T21:42:16Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Fehlersuche */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;NGINX ist ein Open Source Web-Server, eine Alternative zu [[Apache]].&lt;br /&gt;
&lt;br /&gt;
== Besondere Konfigurationen ==&lt;br /&gt;
&lt;br /&gt;
=== Aussperren von bestimmten Usern ===&lt;br /&gt;
&lt;br /&gt;
Eine Vielzahl von Mac OS X 10.15.7 - Rechnern scheint von Hackern gekapert zu sein. Um deren Anfrage auf die eigene Seite abzuwehren,&lt;br /&gt;
bedarf es zwei Direktiven in der Nginx-Konfiguration. Im &amp;lt;code&amp;gt;http { ... }&amp;lt;/code&amp;gt;-Teil ein mapping:&lt;br /&gt;
&lt;br /&gt;
  map $http_user_agent $dh_block_user_agent {&lt;br /&gt;
    default 0;&lt;br /&gt;
    &amp;quot;~*(Intel Mac OS X 10_15_7)&amp;quot; 1;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
Und bei jeder &amp;lt;code&amp;gt;server { ... }&amp;lt;/code&amp;gt;-Beschreibung:&lt;br /&gt;
&lt;br /&gt;
 if ($dh_block_user_agent) {&lt;br /&gt;
   return 403;&lt;br /&gt;
 } &lt;br /&gt;
&lt;br /&gt;
== Fehlersuche ==&lt;br /&gt;
&lt;br /&gt;
=== Erweitertes Logging ===&lt;br /&gt;
In /etc/nginx/nginx.conf kann folgende Direktive aufgenommen werden:&lt;br /&gt;
  error_log /path/to/log debug;&lt;br /&gt;
Damit werden in die Logdatei z.B. auch Rewrites geschrieben. &lt;br /&gt;
&lt;br /&gt;
Das Logging kann auf bestimmte Client beschränkt werden:&amp;lt;ref&amp;gt; Vgl. http://nginx.org/en/docs/debugging_log.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  events {&lt;br /&gt;
    debug_connection 192.168.1.1;&lt;br /&gt;
    debug_connection 192.168.10.0/24;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
Das Log wird dann sehr voll; man kann die Ausgabe daher auch filtern, etwa so:&lt;br /&gt;
&lt;br /&gt;
  tail -f /var/log/nginx/access.log /var/log/nginx/error.log | egrep -v &#039;(free:|delete|reusable connection|malloc|recv: fd:|event timer del:|http keepalive|post event|close http|recv()|hc busy|tcp_nodelay|writev:|write old buf|write new buf|content phase:|http log handler|add cleanup:|http write filter|posix_memalign|event timer add:|access phase:|generic phase:|epoll add event|http wait request handler)&#039;&lt;br /&gt;
&lt;br /&gt;
=== Nginx-Konfiguration auflisten ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  sudo nginx -T&lt;br /&gt;
zeigt nginx die derzeit genutzte Konfiguration an.&lt;br /&gt;
&lt;br /&gt;
=== Rewrite Regeln überprüfen ===&lt;br /&gt;
&lt;br /&gt;
Siehe das [https://nginx.viraptor.info/ Online-Tool von Viraptor ]&lt;br /&gt;
&lt;br /&gt;
== Alternativen ==&lt;br /&gt;
&lt;br /&gt;
* Apache httpd&lt;br /&gt;
* [[Caddyserver]]&lt;br /&gt;
* npx serve&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
* [https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/ Häufige Fehler bei der Konfiguration von NGINX]&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Internet]]&lt;br /&gt;
[[Category:Server-Software]]&lt;br /&gt;
[[Category:Plattformübergreifende Software]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23201</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23201"/>
		<updated>2026-10-25T21:28:20Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Modbus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
* https://github.com/erikkastelec/hass-WEM-Portal&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
Sie soll sich CanApiJson-Protokoll nennen (JSON über HTTP).&lt;br /&gt;
&lt;br /&gt;
Dies muss man am Gerät erst einmal erlauben (in den [https://github.com/JS-DE-Tech/hacs-weishaupt-lan Netzwerk-Einstellungen]). Am Gerät kann wohl nicht gleichzeitig der WEM-Portal-Zugang eingeschaltet sein. Ob CanApiJson funktioniert, kann man im Browser testen:&lt;br /&gt;
http://admin:Admin123@wem-sg/ajax/CanApiJson.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/JS-DE-Tech/hacs-weishaupt-lan&lt;br /&gt;
* https://github.com/kraiz/hassio-weishaupt&lt;br /&gt;
* https://github.com/BorgNumberOne/Weishaupt_CanApiJson&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
* https://github.com/OStrama/weishaupt_modbus&lt;br /&gt;
&lt;br /&gt;
Mit Ebusd:&lt;br /&gt;
* https://forum.fhem.de/index.php?topic=61017.15&lt;br /&gt;
* https://github.com/john30/ebusd-configuration&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23200</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23200"/>
		<updated>2026-10-25T21:27:19Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* WEM-Portal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
* https://github.com/erikkastelec/hass-WEM-Portal&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
Sie soll sich CanApiJson-Protokoll nennen (JSON über HTTP).&lt;br /&gt;
&lt;br /&gt;
Dies muss man am Gerät erst einmal erlauben (in den [https://github.com/JS-DE-Tech/hacs-weishaupt-lan Netzwerk-Einstellungen]). Am Gerät kann wohl nicht gleichzeitig der WEM-Portal-Zugang eingeschaltet sein. Ob CanApiJson funktioniert, kann man im Browser testen:&lt;br /&gt;
http://admin:Admin123@wem-sg/ajax/CanApiJson.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/JS-DE-Tech/hacs-weishaupt-lan&lt;br /&gt;
* https://github.com/kraiz/hassio-weishaupt&lt;br /&gt;
* https://github.com/BorgNumberOne/Weishaupt_CanApiJson&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
&lt;br /&gt;
Mit Ebusd:&lt;br /&gt;
* https://forum.fhem.de/index.php?topic=61017.15&lt;br /&gt;
* https://github.com/john30/ebusd-configuration&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23199</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23199"/>
		<updated>2026-10-25T21:27:08Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Modbus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
Sie soll sich CanApiJson-Protokoll nennen (JSON über HTTP).&lt;br /&gt;
&lt;br /&gt;
Dies muss man am Gerät erst einmal erlauben (in den [https://github.com/JS-DE-Tech/hacs-weishaupt-lan Netzwerk-Einstellungen]). Am Gerät kann wohl nicht gleichzeitig der WEM-Portal-Zugang eingeschaltet sein. Ob CanApiJson funktioniert, kann man im Browser testen:&lt;br /&gt;
http://admin:Admin123@wem-sg/ajax/CanApiJson.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/JS-DE-Tech/hacs-weishaupt-lan&lt;br /&gt;
* https://github.com/kraiz/hassio-weishaupt&lt;br /&gt;
* https://github.com/BorgNumberOne/Weishaupt_CanApiJson&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
&lt;br /&gt;
Mit Ebusd:&lt;br /&gt;
* https://forum.fhem.de/index.php?topic=61017.15&lt;br /&gt;
* https://github.com/john30/ebusd-configuration&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23198</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23198"/>
		<updated>2026-10-25T21:08:06Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* API */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
Sie soll sich CanApiJson-Protokoll nennen (JSON über HTTP).&lt;br /&gt;
&lt;br /&gt;
Dies muss man am Gerät erst einmal erlauben (in den [https://github.com/JS-DE-Tech/hacs-weishaupt-lan Netzwerk-Einstellungen]). Am Gerät kann wohl nicht gleichzeitig der WEM-Portal-Zugang eingeschaltet sein. Ob CanApiJson funktioniert, kann man im Browser testen:&lt;br /&gt;
http://admin:Admin123@wem-sg/ajax/CanApiJson.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/JS-DE-Tech/hacs-weishaupt-lan&lt;br /&gt;
* https://github.com/kraiz/hassio-weishaupt&lt;br /&gt;
* https://github.com/BorgNumberOne/Weishaupt_CanApiJson&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23197</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23197"/>
		<updated>2026-10-25T21:01:58Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* API */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
Sie soll sich CanApiJson-Protokoll nennen (JSON über HTTP).&lt;br /&gt;
&lt;br /&gt;
Dies muss man am Gerät erst einmal erlauben (in den Netzwerk-Einstellungen). Am Gerät kann wohl nicht gleichzeitig der WEM-Portal-Zugang eingeschaltet sein. Ob CanApiJson funktioniert, kann man im Browser testen:&lt;br /&gt;
http://admin:Admin123@wem-sg/ajax/CanApiJson.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/kraiz/hassio-weishaupt&lt;br /&gt;
* https://github.com/BorgNumberOne/Weishaupt_CanApiJson&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23196</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23196"/>
		<updated>2026-10-25T20:59:51Z</updated>

		<summary type="html">&lt;p&gt;Codica: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
Sie soll sich CanApiJson-Protokoll nennen (JSON über HTTP).&lt;br /&gt;
&lt;br /&gt;
Dies muss man am Gerät erst einmal erlauben (in den Netzwerk-Einstellungen). Am Gerät kann wohl nicht gleichzeitig der WEM-Portal-Zugang eingeschaltet sein. Ob CanApiJson funktioniert, kann man im Browser testen:&lt;br /&gt;
http://admin:Admin123@wem-sg/ajax/CanApiJson.json&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/kraiz/hassio-weishaupt&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23195</id>
		<title>Weisshaupt WTC-GW 25-B Ausführung H</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Weisshaupt_WTC-GW_25-B_Ausf%C3%BChrung_H&amp;diff=23195"/>
		<updated>2026-10-25T20:52:26Z</updated>

		<summary type="html">&lt;p&gt;Codica: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Die Gastherme Weisshaupt WTC-GW 25-B Ausführung H lässt sich auch über einen einfachen Kontakt (über Eingänge H1 oder H2) oder über einen 0V-10 V-Eingang N1 zur Vorgabe der Vorlaufsolltemperatur steuern.&lt;br /&gt;
&lt;br /&gt;
== WEM-Portal ==&lt;br /&gt;
&lt;br /&gt;
Die Gastherme lässt sich auch mit dem Weisshaupt Energy Manager-Portal verbinden. Dann ist auch ein Zugriff über Android- oder iOS-App möglich.&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
&lt;br /&gt;
Es gibt eine - offiziell nicht dokumentierte - API. Eine Teildokumentation findet sich [https://github.com/erikkastelec/hass-WEM-Portal/issues/9 auf github].&lt;br /&gt;
&lt;br /&gt;
== Modbus ==&lt;br /&gt;
&lt;br /&gt;
Möglicherweise kann man darauf auch über [[ModBus]] zugreifen.&lt;br /&gt;
&lt;br /&gt;
== Scrapen des lokalen Web-Interfaces ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/tiktak29/Weishaupt_WEM-Lokal_MQTT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Heizung]]&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Programmierprojekte&amp;diff=23194</id>
		<title>Programmierprojekte</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Programmierprojekte&amp;diff=23194"/>
		<updated>2026-10-24T20:39:51Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Halbautomatische Buchhaltung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Siehe [[oldCt:Informationstechnik#Programmierprojekte]]&lt;br /&gt;
&lt;br /&gt;
== KommunenViewer ==&lt;br /&gt;
* Status: alpha-Version&lt;br /&gt;
* [[Kommunen-Viewer]] - ein einfaches GIS zur Darstellung von Werten für Gemeinden&lt;br /&gt;
* Siehe auch &lt;br /&gt;
** http://thematicmapping.org/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mail-Nachschau ==&lt;br /&gt;
* Idee: Während des Schreibens einer Mail sollte (ähnlich einem Vorschaufenster) automatisch die letzte Korrespondenz mit den Empfängern angezeigt werden.&lt;br /&gt;
* Umsetzung: z.B. als Plugin für Thunderbird&lt;br /&gt;
&lt;br /&gt;
== PDF ==&lt;br /&gt;
&lt;br /&gt;
=== Mini-Dokumentenmanagementsystem ===&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Einfache Volltextsuche auch gescannter Dokumente&lt;br /&gt;
* Unterziele: &lt;br /&gt;
** Keine Bindung an das Projekt, leichter Umstieg auf ein anderes (richtiges) [[DMS]]&lt;br /&gt;
** Nutzung bisheriger Ordnerstruktur&lt;br /&gt;
* Umsetzung&lt;br /&gt;
** Es wird ein Erfassungs-Workflow geschaffen&lt;br /&gt;
*** Schritt 1: Sofern das Dokument in Papier vorliegt, muss es &lt;br /&gt;
**** gescannt &lt;br /&gt;
***** z.B. mit Scanimage ([https://jvns.ca/blog/2020/07/11/scanimage--scan-from-the-command-line/ kann über Umweg auch PDF erzeugen])&lt;br /&gt;
**** und per OCR erfasst werden&lt;br /&gt;
**** Es wird ein PDF in der bestehenden Ordnerstruktur erzeugt, das einen Textlayer hat.&lt;br /&gt;
*** Im Schritt 2 wird eine Text-Datei erzeugt,&lt;br /&gt;
**** die den kompletten Textinhalt der Datei enthält und &lt;br /&gt;
**** die im selben Ordner wie die Originaldatei liegt und&lt;br /&gt;
**** die als Dateinamen den Namen der ursprünglichen Datei einschließlich Endung mit der zusätzlichen Endung &amp;quot;.mdms.txt&amp;quot; erhält&lt;br /&gt;
** Es gibt ein Suchskript über die .mdms.txt-Dateien&lt;br /&gt;
*** Basis wahrscheinlich [https://svij.org/blog/2017/03/08/suchen-und-finden-mit-ag-statt-ack-statt-grep/ ag] statt ack oder grep (in Kombination mit find)&lt;br /&gt;
*** dies kann optional die gefundenen Dateien öffnen&lt;br /&gt;
**** xdg-open in Verbindung mit dem Dateinamen der mdms.txt-Datei, jedoch ohne .mdms.txt&lt;br /&gt;
* Erweiterungen&lt;br /&gt;
** Es werden nicht nur Scanns erfasst, sondern auch bestehende Dokumente, z.B.&lt;br /&gt;
*** mittels pdftotext bei PDFs, die aus einer Textverarbeitung stammen (also kein OCR benötigen)&lt;br /&gt;
*** DOC, DOCX, ODS, ODT-Dateien&lt;br /&gt;
** Es braucht ein Erfassungsskript, das die mdms.txt-Dateien anlegt.&lt;br /&gt;
** Bei in Textform bereits vorliegenden Formaten, braucht es keine mdms.txt-Dateien. Insoweit muss das Suchskript lediglich erweitert werden. Beispiele&lt;br /&gt;
*** Programmcode wie .js, .ts, .c , .cpp, .rs, .html&lt;br /&gt;
*** Markup wie Markdown .md, .markdown und Asciidoc .adoc &lt;br /&gt;
* Alternativen&lt;br /&gt;
** openpaper PaperWorks&lt;br /&gt;
*** unterstützt leider die bisherige Ordnerstruktur nicht.&lt;br /&gt;
** https://github.com/darrenldl/docfd&lt;br /&gt;
*** docfd arbeitet in einem Terminalfenster und stellt eine Art halbgrafisches [[grep]] für unterschiedliche Dokumentenformate (u.a. PDF, DOCX) dar.&lt;br /&gt;
&lt;br /&gt;
=== Füge PDF in Word-Dokument ein ===&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: PDF-Datei in Word-Datei so einfügen, dass Kopf- und Fußzeilen in Word erhalten bleiben. Ggf. sollten die PDF-Seiten zugeschnitten oder skaliert werden können.&lt;br /&gt;
* Umsetzung&lt;br /&gt;
** Extrahieren der PDF-Seiten in PNG/JPEG-Bilder&lt;br /&gt;
*** https://www.npmjs.com/package/pdf-img-convert&lt;br /&gt;
** Einfügen der Bilder in Word an einem Platzhalter&lt;br /&gt;
** [[Nodejs]]-Packages&lt;br /&gt;
*** [https://github.com/dolanmiu/docx DOCX]-package zum Erzeugen von Word-Dateien.&lt;br /&gt;
**** [https://dev.to/iainfreestone/how-to-create-a-word-document-with-javascript-24oi Einführung in DOCX und file-saver]&lt;br /&gt;
*** https://www.npmjs.com/package/docx-templates&lt;br /&gt;
*** https://github.com/alonrbar/easy-template-x&lt;br /&gt;
*** Dagegen hat [https://www.npmjs.com/package/docxtemplater docxtemplater] nur ein kommerzielles [https://docxtemplater.com/modules/image/ Bilder-Modul].&lt;br /&gt;
*** Bei https://www.npmjs.com/package/docx-template fehlt Dokumentation.&lt;br /&gt;
*** [https://www.npmjs.com/package/nodeoffice NodeOffice] kann Docx-Dateien parsen, aber nicht schreiben (scheint nicht weiterentwickelt zu werden)&lt;br /&gt;
*** https://www.npmjs.com/package/@microsoft/office-js&lt;br /&gt;
** Weitere mögliche Hilfen&lt;br /&gt;
*** [https://pandoc.org/demos.html pandoc] kann auch docx-Dokumente nach [[HTML]] und [[CSS]] konvertieren&lt;br /&gt;
&lt;br /&gt;
=== Erzeuge PDF im Browser ===&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Editor, der nach dem WYSIWG-Prinzip zumindest einfache Formatierungen des Texts erlaubt, die [[PDF]]s in einer Vorschau anzeigt, die PDFs zum Download anbietet, im Browser mit [[JavaScript]] und [[CSS]] arbeitet und in andere Anwendungen integriert werden kann.&lt;br /&gt;
* Umsetzung&lt;br /&gt;
** Darstellung mit drei Feldern:&lt;br /&gt;
*** Eingabe/Editor-Feld (in HTML/JavaScript bzw. [[TypeScript]] implementiert)&lt;br /&gt;
*** JSON-Feld, das den Text samt Formatierung ähnlich dem [http://pdfmake.org/#/ pdfmake.org]-Format anzeigt&lt;br /&gt;
*** PDF-Feld,  in dem das mit [http://pdfmake.org/#/ pdfmake.org] erzeugte PDF mittels [[PDF.js]] in einem IFrame angezeigt wird&lt;br /&gt;
** Features&lt;br /&gt;
*** Markieren, Löschen, Formatieren&lt;br /&gt;
*** Cut &amp;amp; Paste mit dem Systemclipboard&lt;br /&gt;
&lt;br /&gt;
=== PDF-Maschine ===&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Zurverfügungstellung eines virtuellen Netzwerkdruckers auf dem lokalen PC, der die Druckausgaben in [[PDF]]s umwandelt.&lt;br /&gt;
* Umsetzung: Linux-Server mit [[CUPS]], PDF-Druckertreiber und [[Samba]]. Der PDF-Drucker sollte die PDFs in ein öffentliches Verzeichnis des [[Linux]]-Servers ablegen, auf das ([[Windows]])-Clients zugreifen können. Der Linux-Server wird in einer (kleinen) virtuellen Maschine mittels [[Virtual Box]] aufgesetzt. Diese Virtuelle Maschine sollte beim Booten automatisch gestartet werden.&lt;br /&gt;
&lt;br /&gt;
=== PDF-Anmalen ===&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: User soll PDF-Dateien im Browser eines Tablets (wie z.B. Microsoft Surface) öffnen und mit handschriftlichen Anmerkungen versehen können.&lt;br /&gt;
&lt;br /&gt;
Das Ziel wird bereits durch Desktop-Programme erreicht:&lt;br /&gt;
&lt;br /&gt;
* [http://xournal.sourceforge.net/ Xournal] (für Linux, Windows, Android)&lt;br /&gt;
* [https://github.com/xournalpp/xournalpp Xournal++]&lt;br /&gt;
* [http://www.dklevine.com/general/software/tc1000/jarnal.htm Jarnal] (Java-basiert, für Windows oder für Linux)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch für die Zeichenschicht:&lt;br /&gt;
* [https://stackoverflow.com/questions/22891827/how-do-i-hand-draw-on-canvas-with-javascript# Stackoverflow: JavaScript-Freihandzeichnung]&lt;br /&gt;
* [http://www.williammalone.com/articles/create-html5-canvas-javascript-drawing-app/ Tutorial Javascript Canvas]&lt;br /&gt;
* [https://zipso.net/a-simple-touchscreen-sketchpad-using-javascript-and-html5/ Tutorial Javascript Freihand-Dots]&lt;br /&gt;
* [https://gojs.net/latest/extensions/FreehandDrawing.html GoJS FreehandDrawing]&lt;br /&gt;
* [https://www.drawerjs.com/ DrawerJS]&lt;br /&gt;
* [https://developers.google.com/web/updates/2019/05/desynchronized Google Chrome hat eine Verbesserung bei der Latenz für Stylus-Anwendungen]: den &amp;lt;code&amp;gt;desynchronized&amp;lt;/code&amp;gt; Hinweis für &amp;lt;code&amp;gt;canvas.getContext()&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Siehe auch für die PDF-Anzeigeschicht:&lt;br /&gt;
* https://pspdfkit.com/blog/2018/render-pdfs-in-the-browser-with-pdf-js/&lt;br /&gt;
* https://pdf-lib.js.org/&lt;br /&gt;
&lt;br /&gt;
Siehe auch für die PDF-Modifikation:&lt;br /&gt;
* https://pdf-lib.js.org/&lt;br /&gt;
* https://github.com/DevelopingMagic/pdfassembler&lt;br /&gt;
&lt;br /&gt;
== Farbname-App ==&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Mit Hilfe der Kamera eines Smartphones wird dem Benutzer die Farbe eines Objekts in Klarschrift/Sprachsynthese mitgeteilt. Das könnte eine Hilfe für Farbenblinde sein.&lt;br /&gt;
&lt;br /&gt;
== LED-Licht-Webpage ==&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Bildschirm kann in einer frei einstellbaren Farbe leuchten. Am einfachsten wohl Umsetzung über eine HTML-Seite im Browser.&lt;br /&gt;
* Umsetzung: drei kleine Regler rechts unten für die Farbkomponenten, Umsetzung mit CSS und javaScript&lt;br /&gt;
* Erweiterungen:&lt;br /&gt;
** Speichern der Farbe in Cookie (Versionsnummer der Cookie-Ablage auch mit abspeichern)&lt;br /&gt;
** Popupfenster für gesamten Bildschirm ohne Rand mit Schließen-Button&lt;br /&gt;
** Festlegung einer Abfolge von Farben mit Zeitdauer der jeweiligen Farben&lt;br /&gt;
** Weiterer Regler zur Helligkeit (dieser ändert dann alle Farbkomponenten gleichzeitig)&lt;br /&gt;
&lt;br /&gt;
== MyPortal ==&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Auf einer Website werden Inhalte anderer Webseiten vereinigt. Diese kann der Nutzer frei vorgeben, z.B. indem er eine URL samt XPATH zum abzubildenden Element mitgibt. Das könnte noch durch [[OpenData]]-Bestände erweiter werden, z.B. &lt;br /&gt;
** [https://opendata.dwd.de/ Wetterdaten des DWD] (siehe [http://www.dwd.de/DE/leistungen/opendata/help/inhalt_allgemein/opendata_content_de_en_xls.xls?__blob=publicationFile&amp;amp;v=7 Leistungsübersicht des DWD] &amp;lt;ref&amp;gt;vgl. https://www.golem.de/news/deutscher-wetterdienst-wetterdaten-sind-jetzt-open-data-1708-129258.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
** [https://opendata.dwd.de/climate_environment/health/alerts/ Pollendaten für Deutschland in JSON-Form]&lt;br /&gt;
* Umsetzung: Zu verwenden wäre wohl die [[IFRAME]]-Technik. Als Alternative kann der Portalserver die entsprechenden Elemente laden und weitergeben.&lt;br /&gt;
** Zur Auswahl des abzubildenden Elements kann man evtl. die Technik, die bei [[Zoho]] für die Einbindung fremder Inhalte in Tabellen verwendet wird, nutzen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Verkehr ===&lt;br /&gt;
&lt;br /&gt;
Sinnvoll wären auch Abfahrtstafeln nahe gelegener Bahnhöfe / Stationen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
&lt;br /&gt;
* https://github.com/derhuerst/db-stations - Liste mit allen DB-Stationen&lt;br /&gt;
* https://dbf.finalrewind.org/ - Abfahrtstafeln, über [[iframe]] integrierbar&lt;br /&gt;
**  https://github.com/derf/db-fakedisplay/blob/main/README.md&lt;br /&gt;
&lt;br /&gt;
* DB API Marketplace - meist kostenpflichtig&lt;br /&gt;
** DB Timetables API - [https://developers.deutschebahn.com/db-api-marketplace/apis/node/26497 kostenfrei]&lt;br /&gt;
*** https://pypi.org/project/deutsche-bahn-api/&lt;br /&gt;
**** https://github.com/Tutorialwork/deutsche_bahn_api&lt;br /&gt;
** https://github.com/ArduinoHannover/DBAPI&lt;br /&gt;
** Railway Station Pictures - [https://developers.deutschebahn.com/db-api-marketplace/apis/product/118510 kostenfrei]&lt;br /&gt;
*** Benutzt auf https://map.railway-stations.org/&lt;br /&gt;
** [https://forums.livecode.com/viewtopic.php?t=35235 ältere Diskussion zu einem DB Departure Board]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bibliothek ===&lt;br /&gt;
&lt;br /&gt;
* https://info.opacapp.net/androidconfigs/&lt;br /&gt;
* https://github.com/opacapp/opacclient/blob/master/opacclient/libopac/README.md&lt;br /&gt;
&lt;br /&gt;
== MediaWiki-Sync ==&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Synchronisation eines [[MediaWiki|MediaWikis]] mit einem Offline-MediaWiki, so dass Änderungen z.B. auf einem Laptop wieder ins Haupt-MediaWiki eingespeist werden können, ohne dass Änderungen auf dem Laptop noch auf dem Hauptserver verloren gehen.&lt;br /&gt;
* Umsetzung: Nutzen des XML-Outputs von Mediawiki (Über Seite [[Spezial:Export]]); &lt;br /&gt;
*# Herunterladen des kompletten Wikis auf den Laptop &lt;br /&gt;
*# Änderungen auf Laptop und Server vornehmen&lt;br /&gt;
*# Maschinelles Überprüfen, ob auf dem Laptop neuere Versionen als auf dem Server vorhanden sind; dann einspeisen auf dem Server (über [[Spezial:Import]])&lt;br /&gt;
*# Anschließend wieder komplettes Herunterladen auf den Laptop nötig.&lt;br /&gt;
* Weitere Infos:&lt;br /&gt;
** [http://c2.com/cgi/wiki?WikiSync WikiSync]&lt;br /&gt;
** http://www.mediawiki.org/wiki/Wikimedia_sync_script&lt;br /&gt;
&lt;br /&gt;
== SimpleServerEditor ==&lt;br /&gt;
* Status: Lösungsansatz (s.u.) &lt;br /&gt;
* Ziel: In einer HTML-Form wird ermöglicht eine Datei auf dem Server auszuwählen, diese in einem Textfeld zu editieren und wieder auf dem Server abzuspeichern. Ergänzt muss dies durch einen Zugriffsschutz werden.&lt;br /&gt;
* Umsetzung mit &lt;br /&gt;
** [[Apache Webserver]] (Zugriffsschutz) und &lt;br /&gt;
** [[PHP]] (Datei schreiben)&lt;br /&gt;
* Lösungsansatz:&lt;br /&gt;
** http://www.html.de/php/3638-eingabe-feld-feld-auf-den-server-speichern.html&lt;br /&gt;
&lt;br /&gt;
== Kalenderwoche-Rechner ==&lt;br /&gt;
&lt;br /&gt;
* Status: Beginn der Umsetzung (s. [[Google Gadget]] [http://www.wikilaw.de/links/kw.xml Kalenderwoche])&lt;br /&gt;
* Ziel: &lt;br /&gt;
*# Auf einer Webseite soll als Information neben dem aktuellen Datum die aktuelle Kalenderwoche ausgegeben werden. &lt;br /&gt;
*# Mittels zwei Eingabefelder soll zu einer bestimmten Kalenderwoche (Wochennummer + Jahr) das entsprechende Datum ausgegeben werden. &lt;br /&gt;
*# Umgekehrt soll zu einem bestimmten Datum das Jahr ausgegeben werden. &lt;br /&gt;
*# Evtl. als Yahoo/[http://code.google.com/intl/de/apis/gadgets/docs/gs.html Google-Gadget] zu implementieren.&lt;br /&gt;
* Lösungsansatz: Definition der [[wikipedia:Kalenderwoche]] (Woche beginnt am Montag, die erste Woche beinhaltet den 4. Januar), s. auch [[Kalender]]. [http://www.salesianer.de/util/kalwoch.html Hier findet sich] ein eleganter Algorithmus zur Berechnung der Kalenderwoche und des Kalenderjahrs auf Basis der Erkenntnis, dass der &lt;br /&gt;
*# erste Donnerstag eines Kalenderjahres immer in der ersten Kalenderwoche sich befindet und&lt;br /&gt;
*# dass alle Donnerstage jeweils in dem Kalenderjahr liegen, zu dem auch die entsprechende Kalenderwoche gehört.&lt;br /&gt;
* Ziel Nr. 1 ist erfüllt, (s. [[Google Gadget]] [http://www.wikilaw.de/links/kw.xml Kalenderwoche])&lt;br /&gt;
&lt;br /&gt;
== P2P-Backup ==&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: &lt;br /&gt;
*# Private Rechner, die heutzutage über DSL ins Netz gehen, könnten auch der ideale [[Backup]]-Ort für Freunde sein. Wichtig ist dabei allerdings, dass selbst die &amp;quot;Freunde&amp;quot; nicht die zu backupenden Daten einsehen können. Außerdem sollte von vornherein bestimmt werden, wieviel Backup-Platz anderen zur Verfügung gestellt wird.&lt;br /&gt;
*# Weitergehend könnte dies zu einer Art Community ausgebaut werden. Jeder bekommt Speicherplatz in Abhängigkeit von dem vom ihm zur Verfügung gestellten Platz/von seiner Erreichbarkeit.&lt;br /&gt;
*# Überflüssiger/zu kleiner Speicherplatz könnte monetär abgerechnet werden.&lt;br /&gt;
*# Möglich wären auch zweifach-/mehrfach-Sicherungen, wenn mehrere Rechner zur Verfügung stehen. Möglich wäre auch einzelne Backups auf mehrere Rechner zu verteilen (Vorteil insbesondere die Wiederherstellung müsste schneller gehen).&lt;br /&gt;
* Lösungsansätze: &lt;br /&gt;
*# Auf Remote Rechner sollte ein Image fester Größe angelegt werden, das mit einem verschlüsselnden Filesystem beschrieben wird. Der Remote Rechner sollte eine feste IP-Adresse haben oder per [[Dynamisches DNS]] zu erreichen sein. Der Remote Rechner müsste wohl einen SSH-Zugang zulassen (Zugriff sollte aber auf das genannte Image plus notwendige Programme wie sshd und z.B. rsync begrenzt werden). Der lokale Rechner muss z.B. durch einen Cron-Job mit ping feststellen, ob er einen Backup starten kann (Alternative: Anmeldung der Rechner an einer zentralen Stelle im Netz).&lt;br /&gt;
*# Auf Remote Rechner läuft ein FTP-, [[WebDAV]]-Server oder ähnliches. Die [[Verschlüsselung]] erfolgt auf dem lokalen Rechner. Der Remote Rechner sollte eine feste IP-Adresse haben oder per [[Dynamisches DNS]] zu erreichen sein. Der lokale Rechner muss z.B. durch einen Cron-Job mit ping feststellen, ob er einen Backup starten kann (Alternative: Anmeldung der Rechner an einer zentralen Stelle im Netz).&lt;br /&gt;
*# Variante: Es gibt einen festen Zwischenspeicher im Netz (z.B. freier WebDAV-Server von GMX). Darauf werden durch lokalen Rechner nach und nach Teile des Backups abgelegt. Der Remote Rechner holt dann nach und nach die Teile ab und gibt wieder Bereiche im Zwischenspeicher frei. &lt;br /&gt;
*#* Lokaler Rechner: Erstellen der Backup-Datei (z.B. mit tar)&lt;br /&gt;
*#* Lokaler Rechner: Verschlüsseln der Backup-Datei&lt;br /&gt;
*#* Lokaler Rechner: Aufteilen der Backup-Datei in kleine Snippets (z.B. mit [http://www.linuxtal.de/infos/anleitung_split.pdf split])&lt;br /&gt;
*#* Lokaler Rechner: Hochladen der Snippets zum Zwischenspeicher&lt;br /&gt;
*#* Remote Rechner: Herunterladen der Snippets&lt;br /&gt;
&lt;br /&gt;
Weitere Schritte: &lt;br /&gt;
* Lokaler Rechner übermittelt Löschen-Befehl an Remote Rechner für alte Backup-Dateien&lt;br /&gt;
* Lokaler Rechner übermittelt RESTORE Befehl an Remote Rechner, obiger Backup-Vorgang wird umgekehrt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mobiler Peer 2 Peer Dateiaustausch ==&lt;br /&gt;
&lt;br /&gt;
* Status: Idee&lt;br /&gt;
* Ziel: Große Dateien sollten direkt von Smartphone zu Smartphone übertragen werden können.&lt;br /&gt;
* Lösungsansätze:&lt;br /&gt;
** Mittels Teilen eines [[QR-Code]]s von Smartphone A kann das Smartphone B eine WLAN-Verbindung herstellen und die Dateien von Smartphone B herunterladen oder zu ihm hochladen.&lt;br /&gt;
** Mittels WiFi-Direct müsste nur Smartphone A eine Android-App haben, auf Smartphone B reicht ein Browser.&lt;br /&gt;
** Smartphone A - App müsste&lt;br /&gt;
*** eine WiFi-Direct-Verbindung anbieten (ggf. einen QR-Code für die WLAN-Verbindung anzeigen)&lt;br /&gt;
*** einen Mini-Web-Server zur Verfügung stellen, um eine Webseite für Smartphone B anzubieten&lt;br /&gt;
*** einen QR-Code für den Zugriff des Smartphone B auf die Webseite anzeigen.&lt;br /&gt;
** QRCode wird auf Smartphone A angezeigt, dieser von Smartphone B gescannt, die codierte URL verweist auf einen WebServer, der die Verbindungslogik enthält.&lt;br /&gt;
*** Verbindungslogik&lt;br /&gt;
**** Ein Websocket-Server dient als Datenaustauchbriefkasten&lt;br /&gt;
**** Es wird eine direkte Verbindung mittels WebRTC hergestellt, nur hilfsweise auf den Websocket-Austausch zurückgefallen .&lt;br /&gt;
***** https://stackoverflow.com/questions/29032884/why-is-a-signaling-server-needed-for-webrtc/29056385#29056385&lt;br /&gt;
***** https://mac-blog.org.ua/webrtc-one-to-one-without-signaling-server/&lt;br /&gt;
***** https://peerjs.com/docs/#start&lt;br /&gt;
****** https://github.com/peers/peerjs/issues/103&lt;br /&gt;
***** https://www.npmjs.com/package/node-datachannel&lt;br /&gt;
***** https://shinyoshiaki.github.io/werift-webrtc/website/build/&lt;br /&gt;
&lt;br /&gt;
*** Auslösen der Dateiübertragung entweder durch &lt;br /&gt;
**** FilePicker im Browser oder&lt;br /&gt;
**** [[Web Share Target API]] - Teilen-Knopf&lt;br /&gt;
***** https://mconverter.eu/blog/web_share_target_api/ zeigt die Web Share Target API mit ein oder mehreren Dateien.&lt;br /&gt;
**** [https://github.com/WICG/file-handling/blob/main/explainer.md File Handling API] - &amp;quot;Öffnen mit...&amp;quot;-Menü auf dem Desktop&lt;br /&gt;
&lt;br /&gt;
** Cli app auf Basis von nodejs&lt;br /&gt;
*** https://www.npmjs.com/package/qrcode&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
** https://ostechnix.com/easy-fast-way-share-files-internet-command-line/&lt;br /&gt;
* [https://ostechnix.com/transfer-files-between-computers-and-mobile-devices-by-scanning-qr-codes/ Qrcp]&lt;br /&gt;
* https://www.mobileprocessing.org/p2p.html&lt;br /&gt;
* https://developer.android.com/guide/topics/connectivity/wifip2p&lt;br /&gt;
**https://developer.android.com/training/connect-devices-wirelessly/wifi-direct&lt;br /&gt;
* https://wiki.gnome.org/NetworkManager/WifiDirect&lt;br /&gt;
* https://unix.stackexchange.com/questions/370123/wifi-direct-between-linux-android&lt;br /&gt;
* [https://www.qrdrop.de qrdrop.de] - &lt;br /&gt;
** positiv: einfaches User Interface, Passwortschutz, guter Name&lt;br /&gt;
** negativ: Beschränkung auf 10 MB, Hochladen auf einen Server statt P2P-Austausch, bisher wohl keine Nutzung der [[Web Share Target API]]&lt;br /&gt;
&lt;br /&gt;
=== Vorhandene Alternativen ===&lt;br /&gt;
&lt;br /&gt;
* https://webdrop.space/#/&lt;br /&gt;
** wohl nur Weboberfläche, keine CLI&lt;br /&gt;
* [https://transfer.sh/ transfer.sh]&lt;br /&gt;
* [https://www.qrdrop.de qrdrop.de] - &lt;br /&gt;
** positiv: einfaches User Interface, Passwortschutz, guter Name&lt;br /&gt;
** negativ: Beschränkung auf 10 MB, Hochladen auf einen Server statt P2P-Austausch, bisher wohl keine Nutzung der [[Web Share Target API]]&lt;br /&gt;
&lt;br /&gt;
== BGH-Leitsätze ==&lt;br /&gt;
=== Allgemeines ===&lt;br /&gt;
* Status: Idee&lt;br /&gt;
** Analyse der BGH-Urteilsdatenbank&lt;br /&gt;
** Sortieren nach Gesetzen, innerhalb von Gesetzen nach Artikeln/Paragraphen, anschließend nach Absätzen/Nummern/etc. (keine weitere Aufteilung)&lt;br /&gt;
&lt;br /&gt;
* Ähnliches:&lt;br /&gt;
** [http://openjur.de/ OpenJur] - Portal, in das Gerichtsentscheidungen eingestellt werden.&lt;br /&gt;
&lt;br /&gt;
* Vorgehen:&lt;br /&gt;
&lt;br /&gt;
** Schritt 1: Abrufen der PDFs (ausreichend zunächst aktuelle Entscheidungen)&lt;br /&gt;
&lt;br /&gt;
** Schritt 2: Konvertieren in Text (evtl. schon Aufnahme in Datenbank)&lt;br /&gt;
&lt;br /&gt;
** Schritt 3a: Analyse I&lt;br /&gt;
*** Leitsatz / -sätze&lt;br /&gt;
*** Datum&lt;br /&gt;
*** Aktenzeichen&lt;br /&gt;
*** LawRefFull&lt;br /&gt;
*** Link zur BGH-Seite&lt;br /&gt;
&lt;br /&gt;
** Schritt 3b: Analyse II&lt;br /&gt;
*** LawRef aus LawRefFull&lt;br /&gt;
**** Gesetze&lt;br /&gt;
**** Paragraphen/Artikel&lt;br /&gt;
**** künftig Absätze / Nummern&lt;br /&gt;
**** weitere Konkretisierungen (Sätze, Nummern etc.)&lt;br /&gt;
&lt;br /&gt;
** Schritt 4: Veröffentlichung&lt;br /&gt;
*** Einfügen in Datenbank&lt;br /&gt;
*** HTML-Output (z.B. über PHP)&lt;br /&gt;
&lt;br /&gt;
=== Einzelfälle von BGH-Leitsatzentscheidungen ===&lt;br /&gt;
Einzelprobleme / Use Cases für Unit-Tests:&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=XII%20ZR%2070/09&amp;amp;nr=56320 Mehrere Gesetze in einer Zeile, §§ zusammen, getrennt wie die Gesetze durch Semikolon]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=II%20ZB%2024/10&amp;amp;nr=56777 Ein Gesetz, mehrere §§ mit Zusätze, §§ jeweils einzeln (§)]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=IX%20ZR%2011/11&amp;amp;nr=58495 Ein Gesetzt, mehrere §§, jedoch nicht vor jedem § ein §-Zeichen]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=XII%20ZB%20572/10&amp;amp;nr=56793 Mehrere Paragraphen teils erweitert um Absätze, teils um nicht zuordbare Beschreibungen (evtl. falsch?)]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=VI%20ZR%2087/10&amp;amp;nr=56802 Mehrere Gesetze in einer Zeile, getrennt durch Semikolon; Gesetze ergänzt um Paragraphen und teilweise Absätze sowie mit Buchstabenkürzeln &amp;quot;Aa&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;G&amp;quot;]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=VI%20ZR%2046/10&amp;amp;nr=57812 Mehrere Gesetze in einer Zeile, getrennt durch Semikolon; ergänzt um &amp;quot;Bb&amp;quot;, &amp;quot;Cc&amp;quot;]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=XI%20ZR%20388/10&amp;amp;nr=56762 Ein Gesetz/Paragraph in einer Zeile mit mehreren durch Kommata getrennten Absätzen sowie &amp;quot;Bl, Cb&amp;quot;], [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=III%20ZR%20103/10&amp;amp;nr=58482 mit &amp;quot;Fa&amp;quot;]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=II%20ZR%20173/10&amp;amp;nr=56841 Mehrere §§ mit Buchstabenkennzeichnung, wobei die Zahl davor nicht wiederholt wird: §§ 32a, b GmbHG]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=EnVR%2048/10&amp;amp;nr=56878 Mehrere Gesetze, an die jeweils die Leitsätze mit a), b) angefügt werden]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=I%20ZR%20207/08&amp;amp;nr=57158 Kennzeichnung einer Entscheidung mit einem Namen]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;Datum=2011&amp;amp;nr=57420&amp;amp;pos=20&amp;amp;anz=2245 Gesetz mit erklärendem Klammerzusatz; nächstes Gesetz in einer Zeile, nur abgetrennt durch Semikolon]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=II%20ZR%20199/10&amp;amp;nr=57624 Mehrere Gesetze in einer Zeile, getrennt durch Semikolon]&lt;br /&gt;
** [http://juris.bundesgerichtshof.de/cgi-bin/rechtsprechung/document.py?Gericht=bgh&amp;amp;Art=en&amp;amp;az=VII%20ZR%2067/11&amp;amp;nr=58872 DIN als Rechtsnorm ohne Paragraphen/Artikel]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mietwagen-Meta-Suchmaschine ==&lt;br /&gt;
&lt;br /&gt;
=== Ziel ===&lt;br /&gt;
Das Projekt soll es ermöglichen, Mietwagenangebote zu finden. Dabei soll es auf die Angebote der verschiedenen Mietwagenanbieter, auch von Weiterverkäufern/-vermittlern wie ADAC oder billiger-mietwagen.de zurückgreifen. Persönliche Vorlieben sollen berücksichtigt werden, wie z.B.&lt;br /&gt;
* Winterreifen&lt;br /&gt;
* Zusatzfahrer&lt;br /&gt;
* Mitgliedschaften (z.B. Miles &amp;amp; More, ADAC, Kreditkarten)&lt;br /&gt;
&lt;br /&gt;
=== Umsetzung ===&lt;br /&gt;
Soweit möglich soll auf APIs der Anbieter zurückgegriffen werden. &lt;br /&gt;
&lt;br /&gt;
Im Übrigen wird auf die normalen Webseiten zugegriffen. Dabei wird auf das [[Open Source]]-Projekt [[Selenium]] zurückgegriffen um Browser fernzusteuern.&lt;br /&gt;
Alternativen:&lt;br /&gt;
* direkter Zugriff auf HtmlUnit (Vorteil: headless; Nachteil: schwächerer [[JavaScript]]-Support)&lt;br /&gt;
* [https://github.com/ariya/phantomjs/wiki/Quick-Start PhantomJS] (Vorteil: headless, Webkit-basiert; Nachteil: JavaScript-, aber noch keine [[Java]]-API). &lt;br /&gt;
&lt;br /&gt;
Die Browser können in einem virtuellen X-Server, z.B. [http://en.wikipedia.org/wiki/Xvfb Xvfb], laufen, um Ressourcen zu sparen (fraglich, weil dann ja auch die Fähigkeiten des Grafikprozessors nicht genutzt werden).&lt;br /&gt;
&lt;br /&gt;
Mit [https://github.com/detro/ghostdriver/ GhostDriver], das in [[PhantomJS]] integriert ist, kann ein headless [[WebKit]]-basiertes System von [[Selenium]] ferngesteuert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== APIs von Mietwagenanbietern ====&lt;br /&gt;
&lt;br /&gt;
* [http://developer.hotwire.com/docs/read/Rental_Car_Shopping_API Hotwire], REST, straight forward, API key nötig&lt;br /&gt;
&lt;br /&gt;
* [http://www.programmableweb.com/api/rental-car-manager Rental Car Manager] - [http://rentalcarmanager.host4kb.com/article/AA-00435/0/Rental-Car-Manager-Agent-Web-Service-API.html Webservice-API]&lt;br /&gt;
* [http://www.programmableweb.com/api/car2go Car2Go], CarSharing-Anbieter&lt;br /&gt;
&lt;br /&gt;
* OTA (Open Travel Alliance) XML API&amp;lt;ref&amp;gt;Siehe http://www.cartrawler.com/solutions/index.php&amp;lt;/ref&amp;gt;&lt;br /&gt;
* rentalcars.com XML API&amp;lt;ref&amp;gt;http://www.carhire3000.com/AffiliateExample.do&amp;lt;/ref&amp;gt; &lt;br /&gt;
** [http://forum.jquery.com/topic/ajax-get-xml-request-to-api-requires-authorization-credentials-returning-invalid rentalcars.com and JavaScript]&lt;br /&gt;
* [http://www.cartrawler.com/solutions/index.php CarTrawler] - to be checked&lt;br /&gt;
&lt;br /&gt;
* [http://www.amadeus.com/travelagencies/x105676.html AMADEUS] bietet für seine API keine öffentlich zugänglichen Informationen.&lt;br /&gt;
* [http://www.carsolize.com/carsolize-booking-products/carsolize-booking-engines/carsolize-car-booking-engine Carsolize] ist ein kommerzieller Anbieter u.a. von Mietwagenreservierungs-APIs.&lt;br /&gt;
* [http://developer.ean.com/ Expedia] bietet derzeit nur eine API für Hotelreservierungen, nicht für Mietwagen an (Stand: 3.1.2013; Neuigkeiten auf dem [http://blog.expediaaffiliate.com/ Partner-Blog]).&lt;br /&gt;
&lt;br /&gt;
=== Weitere Infos ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.autorentalnews.com/Channel/Rental-Software.aspx AutoRentalNews] - mit RentalSoftware gewidmetem Teil&lt;br /&gt;
* [http://www.miewa.de miewa.de]&lt;br /&gt;
* [http://blog.programmableweb.com/2011/06/21/lots-of-opportunities-to-dive-into-travel-apis/ Das ProgrammableWeb] bietet viele Infos rund um Web-APIs.&lt;br /&gt;
&lt;br /&gt;
== Sicherer Chat ==&lt;br /&gt;
&lt;br /&gt;
=== Ziel ===&lt;br /&gt;
&lt;br /&gt;
Es soll ein sicherer Messenger geschaffen werden mit Hilfe von [[Open Source]], Identifizierung an Hand von privaten / öffentlichen Schlüsseln (siehe auch [[Kryptographie]]) und dezentralen Chat-Servern, die ihrerseits die Namen der Teilnehmer nicht kennen, sondern lediglich die öffentlichen Schlüssel.&lt;br /&gt;
&lt;br /&gt;
=== Anforderungen ===&lt;br /&gt;
&lt;br /&gt;
Die Anforderungen orientieren sich ungefähr an einem einfachen Whatsapp-Dienst.&lt;br /&gt;
&lt;br /&gt;
Whatsapp bietet&lt;br /&gt;
* sofortige Kommunikation&lt;br /&gt;
* leichtes Finden von Teilnehmern (über Telefonnummer aus Adressbuch)&lt;br /&gt;
* niedrige Hürde der Kommunikation (keine Anrede, kein Betreff)&lt;br /&gt;
* einfaches Nutzen von Gruppen &lt;br /&gt;
** einfaches Hinzufügen&lt;br /&gt;
** einfaches Austreten&lt;br /&gt;
* so gut wie kein Spam (wahrscheinlich durch Identifikation der Absender mittels Telefonnummer und zentraler Kontrolle durch Whatsapp/Facebook)&lt;br /&gt;
* Spaß durch Emoticons und sonstige Icons&lt;br /&gt;
* Versenden von Bildern (zur Bandbreitenersparnis auch in niedrigerer Auflösung)&lt;br /&gt;
* sichere Kommunikation (angeblich Ende-zu-Ende-Verschlüsselung)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Umsetzung ===&lt;br /&gt;
&lt;br /&gt;
==== Use Cases ====&lt;br /&gt;
* Ablauf des Versendens einer Nachricht&lt;br /&gt;
** Nachricht wird auf Client A erstellt &lt;br /&gt;
** Nachricht wird auf Client A mit privatem Schlüssel des A verschlüsselt&lt;br /&gt;
** Nachricht wird auf Client A mit öffentlichem Schlüssel des B verschlüsselt&lt;br /&gt;
** Nachricht wird an Server (oder Servercluster) mit Ziel (öffentlicher Schlüssel des) B übermittelt&lt;br /&gt;
&lt;br /&gt;
* Ablauf des Empfangens einer Nachricht&lt;br /&gt;
** Mittels [[HTTP-Long-Poll]] oder [[Server-Push]] wird die an (den öffentlichen Schlüssel des) B adressierte Nachricht vom Server (oder Servercluster) heruntergeladen.&lt;br /&gt;
** Nachricht wird auf Client B mit privatem Schlüssel des B entschlüsselt.&lt;br /&gt;
** Nachricht wird auf Client B mit öffentlichem Schlüssel des A entschlüsselt&lt;br /&gt;
** Nachricht wird auf Client B gelesen.&lt;br /&gt;
&lt;br /&gt;
* Senden an eine Gruppe&lt;br /&gt;
** wohl Senden mehrerer Nachrichten durch Client????&lt;br /&gt;
** oder Gruppenserver mit privatem/öffentlichem Schlüsselpaar???&lt;br /&gt;
&lt;br /&gt;
* Hinzufügen eines Gruppenteilnehmers&lt;br /&gt;
** ???&lt;br /&gt;
&lt;br /&gt;
* Austreten aus einer Gruppe&lt;br /&gt;
** ???&lt;br /&gt;
&lt;br /&gt;
* Ausschließen aus einer Gruppe&lt;br /&gt;
** durch Gruppeneigentümer - gibt es so etwas??&lt;br /&gt;
&lt;br /&gt;
* Ausschließen des Empfangs von bestimmten Gruppenteilnehmern&lt;br /&gt;
&lt;br /&gt;
* Ausschließen von Spam &lt;br /&gt;
** Nur durch Geheimhaltung öffentlicher Schlüssel zur Identifikation der Teilnehmer ????&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Hinterlegung der öffentlichen Schlüssel der Gesprächspartner in lokalen Kontakten des Smartphones&lt;br /&gt;
&lt;br /&gt;
=== Weiteres aus dem Umfeld ===&lt;br /&gt;
&lt;br /&gt;
* Möglicherweise ist [[XMPP]] ein Standard, auf den ein solcher sicherer Client aufgebaut werden kann.&lt;br /&gt;
* Für [[Android]] hat G Data [https://www.securechat.com/ mit Secure Chat] bereits einen [[Open Source]]-Client und -Server entwickelt (aber wohl noch nicht dezentrale Serverstruktur).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Luigis Smart Home ==&lt;br /&gt;
&lt;br /&gt;
Luigi möchte die Heizung seines Appartements selbst steuern und vielleicht irgendwann weitere [[Smart Home]]-Funktionen nutzen. Siehe [[Luigis Smart Home]].&lt;br /&gt;
&lt;br /&gt;
== Halbautomatische Buchhaltung ==&lt;br /&gt;
&lt;br /&gt;
* Idee: Kontoauszüge werden automatisch - aufgrund bestimmter Regeln oder Muster - bestimmten Kategorien und Unterkategorien zugeordnet.&lt;br /&gt;
** Eine Zahlung (bzw. Teilzahlung) kann auch mehreren Kategorien zugeordnet sein. &lt;br /&gt;
** Manche Kategorienarten (Sammlung von Kategorien) müssen der Zahlung zugeordnet sein (d.h. die Zahlung muss mindestens/genau einer der Kategorien der Kategorienart zugeordnet sein).&lt;br /&gt;
* Umsetzung&lt;br /&gt;
** Für die Konvertierung in ein gemeinsames Datenformat kann [https://daffodil.apache.org/ Apache Daffodil] eingesetzt werden.&lt;br /&gt;
&lt;br /&gt;
== CostSharingApp mit Magic Link ===&lt;br /&gt;
&lt;br /&gt;
* https://w3ctag.github.io/capability-urls/&lt;br /&gt;
--------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:oldCt]]&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:MediaWiki]]&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Linux-Tipps&amp;diff=23193</id>
		<title>Linux-Tipps</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Linux-Tipps&amp;diff=23193"/>
		<updated>2026-10-21T16:36:28Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Bildanzeige */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Linux-kompatible Hardware ==&lt;br /&gt;
&lt;br /&gt;
Die meiste Hardware für Windows läuft auch mit Linux. Manchmal funktionieren aber vielleicht besondere Funktionen nicht oder erst, wenn man etwas mit den Einstellungen gebastelt hat.&lt;br /&gt;
&lt;br /&gt;
Siehe aber auch:&lt;br /&gt;
&lt;br /&gt;
* https://ubuntu.com/certified&lt;br /&gt;
* https://linux-hardware.org/&lt;br /&gt;
&lt;br /&gt;
== Linux und andere Betriebssysteme ==&lt;br /&gt;
=== Betriebssystemvergleich ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.linux-community.de/Community/Meinungen/Benutzerfreundlichkeit-der-Betriebssysteme-im-Vergleich#75851start Vergleich der Benutzerfreundlichkeit]&lt;br /&gt;
&lt;br /&gt;
=== Plattformübergreifende Software ===&lt;br /&gt;
&lt;br /&gt;
* [[Plattformübergreifende Software]]&lt;br /&gt;
** [[svn]]&lt;br /&gt;
&lt;br /&gt;
=== Zusammenarbeit mit Windows ===&lt;br /&gt;
&lt;br /&gt;
* Man kann zum Booten eines Linux-Systems auch den [[Windows]]-Bootloader nutzen ([http://de.opensuse.org/SDB:Linux_mit_Hilfe_des_Bootmanagers_von_Windows_NT/2000/XP_booten Anleitung für Suse], [http://www.fz-juelich.de/zam/docs/tki/tki_html/t0398/t0398.html distributionsunabhängige Anleitung]).&lt;br /&gt;
&lt;br /&gt;
* Flexibler ist aber der moderne Linux-Bootloader [http://www.wikidorf.de/reintechnisch/Inhalt/GrubEinfuehrung GRUB]. In jedem Fall sollte man den [http://www.wikidorf.de/reintechnisch/Inhalt/GrubEinfuehrung Master Boot Record (MBR) sichern].&lt;br /&gt;
&lt;br /&gt;
* [http://www.andlinux.org/index.php andLinux] und [http://www.topologilinux.com/ topologilinux] sind auf coLinux basierende Linux-Distributionen, die unter Windows laufen.&lt;br /&gt;
 &lt;br /&gt;
* Einige Linux-Anwendungen laufen durch [http://www.cygwin.com/ CygWin] auch unter Windows. Neben dem graphischen windows-typischen Installer kann nach der Erstinstallation auch das &amp;lt;code&amp;gt;apt-get&amp;lt;/code&amp;gt;-ähnliche Skript [http://code.google.com/p/apt-cyg/updates/list apt-cyg] zur Paketverwaltung genutzt werden.&lt;br /&gt;
 &lt;br /&gt;
* [http://gnuwin32.sourceforge.net/summary.html GnuWin32] bietet ebenfalls etliche Linux-Kommandozeilenprogramme. Diese bauen direkt auf den Windows-Bibliotheken auf. Sie sind daher einfacher als die CygWin-Utilities zu handhaben; allerdings ist CygWin umfangreicher und bietet z.B. eine Bash-shell und einen X-Server.&lt;br /&gt;
&lt;br /&gt;
* [http://www.it.fht-esslingen.de/~zimmerma/software/ltools.html LTools] erlaubt den Zugriff auf ext2/ext3-Partitionen von der Kommandozeile oder mittels einer Java- oder Web-GUI. Eine graphisches Tool zum Lesen von ext2-/ext3-Partitionen ist auch [http://www.chrysocome.net/explore2fs explore2fs]. Noch weiter gehen [http://www.fs-driver.org/ fs-driver] und [http://ext2fsd.sourceforge.net/ ext2fsd]: sie bieten Treiber für ext2-Partitionen. Letzteres läuft auch unter [[Windows]] [[Vista]].&lt;br /&gt;
&lt;br /&gt;
* [http://www.straightrunning.com/XmingNotes/ Xming] ist ein X-Server, der nativ unter [[Windows]] läuft. Lt. [wikipedia:Xming] ist die Lizenz &amp;quot;undurschschaubar&amp;quot;, sie wird als &amp;quot;proprietär&amp;quot; gekennzeichnet. &lt;br /&gt;
** [http://www.tanmar.info/content/view/47/47/ Tutorial zu Xming und Putty]&lt;br /&gt;
&lt;br /&gt;
== Dokumentation ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Anleitungen ===&lt;br /&gt;
&lt;br /&gt;
* [http://openbook.galileocomputing.de/linux/ Linux-Handbuch], ein kostenloses Onlinebuch zu Linux von Galileo.&lt;br /&gt;
* Das [http://de.wikibooks.org/wiki/Linux-Kompendium Linux-Kompendium] ist auf wikibooks.org als freies umfangreiches Nachschlagewerk zu Linux erschienen.&lt;br /&gt;
&lt;br /&gt;
* Einen Einblick in Linux liefert Kapitel 7 des [http://www.galileocomputing.de/openbook/it_handbuch/fachinformatiker_07_linux_unix_001.htm#mj5029e6f7d5fd4879d37717fd563be94f IT-Fachhandbuchs].&lt;br /&gt;
* Eine gute Anleitung für Linux (wenn auch etwas beschwerlich zu lesen) enthält [http://www.oreilly.de/german/freebooks/rlinux3ger/linux_wegIVZ.html Linux - Wegweiser zur Installation &amp;amp; Konfiguration] von Matt Welsh, Matthias Kalle Dalheimer und Lar Kaufmann.&lt;br /&gt;
* Für Anfänger, der man unter Linux immer bleiben wird, findet man Anleitungen bei [http://www.newbie-net.de/anleitung.html Newbie-Net].&lt;br /&gt;
* Ein &#039;&#039;&#039;Crash-Kurs&#039;&#039;&#039; für Leute, die schon erste Linux-Erfahrungen gesammelt haben, findet sich unter http://www.wemelug.de/www/tips/crashkurs.html. Er ist kurz, prägnant, vielleicht nicht ganz aktuell.&lt;br /&gt;
* Eine längere allerdings schon ältere Einführung in Linux findet sich bei http://www.oreilly.de/german/freebooks/linux_install/inhalt.html. Ein älteres Anwenderhandbuch findet sich bei http://www.linux-ag.de/linux/LHB/LHB.html.&lt;br /&gt;
&lt;br /&gt;
=== man-Pages ===&lt;br /&gt;
Die sog. &amp;lt;code&amp;gt;man&amp;lt;/code&amp;gt;-pages sind DIE Informationsquelle eines Linux-Systems. Sie finden sich auch im [http://nixdoc.net/man-pages/Linux World Wide Web] (z.B. bei [http://unixhelp.ed.ac.uk/CGI/man-cgi UNIX-Help] und [http://www.manpagez.com/man/ manpages.com]). &lt;br /&gt;
&lt;br /&gt;
Die man-pages befinden sich in verschiedenen Kategorien, die innerhalb der man-pages durch eine in Klammern an die Bezeichnung angehängte Zahl gekennzeichnet wird. Beim Aufruf von man steht dagegen die Section-Nr VOR der Bezeichnung. Die Einführungen finden sich z.B. durch&lt;br /&gt;
  man x intro&lt;br /&gt;
wobei x eine Zahl zwischen 1 und 9 ist.&lt;br /&gt;
&lt;br /&gt;
=== Regelmäßige Publikationen ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.freiesmagazin.de/ freiesmagazin.de] hat monatlich Berichte aus dem [[Open Source]]-Umfeld.&lt;br /&gt;
&lt;br /&gt;
* [http://www.radiotux.de/ RadioTux] liefert PodCasts rund um Linux.&lt;br /&gt;
&lt;br /&gt;
* [http://www.guug.de/uptimes/index.html Uptimes] - Mitgliederzeitschrift der German Unix User Group&lt;br /&gt;
&lt;br /&gt;
== Distributionen ==&lt;br /&gt;
&lt;br /&gt;
=== Allgemeines ===&lt;br /&gt;
&lt;br /&gt;
* Einen Überblick über die verschiedenen Distributionen verspricht [http://www.golem.de/0912/71918.html dieser Artikel auf golem.de].&lt;br /&gt;
&lt;br /&gt;
* [http://www.linuxfromscratch.org/index.html Linux from Scratch] gibt Hilfe für den kompletten Eigenbau eines Linux-Systems.&lt;br /&gt;
&lt;br /&gt;
* [http://www.zorin-os.com/ Zorin OS] ist eine auf [[Ubuntu]] basierende Distribution, die die Oberfläche von [[Windows]] nachahmt.&lt;br /&gt;
&lt;br /&gt;
* [http://www.slax.org SLAX] ist eine auf [http://www.slackware.org Slackware] basierende Live-CD, die selbst bei denjenigen alten PCs den Netzwerkadapter ansprechen kann, wo [[OpenSuse]], [[Knoppix]] sowie [[Debian]] versagen. &lt;br /&gt;
** [[OpenSuse]] ist das von Novell unterstützte freie Linux. Proprietäre (und trotzdem kostenlose) Anwendungen können über andere Installationsquellen nachgeladen werden.&lt;br /&gt;
*** Der [http://wiki.linux-club.de/opensuse/Hauptseite Linux-Club] bietet ein gutes Wiki rund um OpenSuse.&lt;br /&gt;
*** Beim Update von OpenSuse 10.1 auf 10.2 könnte es Probleme mit der Druckerinstallation geben: Dann einfach &amp;lt;code&amp;gt;/var/lib/YaST2/ppd_db.ycp&amp;lt;/code&amp;gt; löschen.&amp;lt;ref&amp;gt;[http://www.linux-club.de/viewtopic.php?t=71724&amp;amp;highlight=yast+drucker Hängen bei Aufbau der Druckerdatenbank bei 4%].&amp;lt;/ref&amp;gt;&lt;br /&gt;
*** Siehe auch [[Installation von OpenSuse über PXE]].&lt;br /&gt;
*** Das GNOME-Frontend für {{su}} (starten von Programmen als Root) heißt unter OpenSuse &amp;lt;code&amp;gt;gnomesu&amp;lt;/code&amp;gt; und nicht wie sonst meist üblich &amp;lt;code&amp;gt;gksu&amp;lt;/code&amp;gt;. Die Entsprechung unter KDE heißt &amp;lt;code&amp;gt;kdesu&amp;lt;/code&amp;gt;.&lt;br /&gt;
* Auch  [[Debian]] lässt sich übers Netzwerk/PXE installieren.&lt;br /&gt;
* Auch [[Knoppix]] lässt sich über [[PXE]] installieren. Siehe&lt;br /&gt;
** [http://mylinuxjournal.blogspot.com/2009/06/knoppix-via-pxe.html diesen Blog].&lt;br /&gt;
** [http://www.knoppix.net/wiki/PXE_FAQ Knoppix-Wiki]&lt;br /&gt;
&lt;br /&gt;
* [http://www.archlinux.de/?page=Start Arch Linux] ist offiziell eine schlanke, ständig aktuelle Linux-Distribution ([http://wiki.archlinux.org/index.php/Install_Arch_from_network_(via_PXE) PXE-Installation möglich]).&lt;br /&gt;
* [http://www.andlinux.org/index.php andLinux] ist eine Linux-Distribution, die unter Windows 2000, XP etc. läuft. Sie basiert auf [http://polishlinux.org/linux/ext3-reiserfs-xfs-in-windows-thanks-to-colinux/ coLinux].&lt;br /&gt;
* Eine Distribution, die Wert auf Flexibilität und Anpassungsfähigkeit liegt, ist [http://www.gentoo.org/doc/en/gentoo-x86-quickinstall.xml Gentoo].&lt;br /&gt;
&lt;br /&gt;
* [http://www.sugarlabs.org/ Sugar], hervorgegangen aus dem One Laptop Per Child-Projekt, ist ein Linux-System für Kinder.&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu ===&lt;br /&gt;
* [[Ubuntu]] ist eine auf [[Debian]] basierende Distribution, die mittels [[Wubi]] wie eine [[Windows]]-Applikation installiert und deinstalliert werden kann.&lt;br /&gt;
** Von Ubuntu lässt sich leicht [http://uck.sourceforge.net/ kundenspezifische LiveCDs] erstellen, so gibt es z.B. eine LiveCD mit [http://ubuntu-mini-remix.crealabs.it/ minimalem Footprint].&lt;br /&gt;
** Auf [[Ubuntu]] baut die Netbook-Distribution [http://www.geteasypeasy.com/ Easy Peasy] auf.&lt;br /&gt;
** Ebenfalls auf [[Ubuntu]] basiert die normale Version von [[Linux Mint]].&lt;br /&gt;
&lt;br /&gt;
=== Arch Linux ===&lt;br /&gt;
[[Arch Linux]] ist ein sog. [[Rolling Release]] und enthält sehr aktuelle Software, allerdings mit dem Nachteil, dass sie auch nicht immer besonders tief getestet wurde.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== ChromeOS ===&lt;br /&gt;
&lt;br /&gt;
Das Google-Betriebssystem ChromeOS basiert ebenfalls auf Linux. Es kann inzwischen auch [[Android]]-Apps ausführen.&lt;br /&gt;
&lt;br /&gt;
2018 hat Google die Initiative ergriffen und versucht, [[ChromeOS auf dem Tablet]] zu offerieren. Bisher (Anfang 2020) scheint das noch nicht den Massenmarkt zu erreichen.&lt;br /&gt;
&lt;br /&gt;
=== Schnellstart-Linux ===&lt;br /&gt;
&lt;br /&gt;
* [http://tinycorelinux.com/welcome.html Tiny Core Linux] vom selben Entwickler wie Damn Small Linux, aber als GUI-Desktopvariante.&lt;br /&gt;
* [http://www.u-lite.org/ U-Lite], ein Derivat von [[Ubuntu]]&lt;br /&gt;
* [http://puppylinux.org/news/ Puppy Linux] hat schon Tradition als ressourcensparende Distribution. Siehe auch das [http://murga-linux.com/puppy/index.php?f=25 deutschsprachige Puppy Linux Forum].&lt;br /&gt;
* [http://blog.rootserverexperiment.de/2008/03/17/neue-uclibc-chroot-umgebung-artikeldownload/ 4MB-Mini-Linux]&lt;br /&gt;
&lt;br /&gt;
* Zu diesem Thema kann man auch generell [http://www.gambaru.de/blog/?p=256 Anwendungen mit wenig Anforderungen] an die [[Hardware]]-Ressourcen zählen.&lt;br /&gt;
&lt;br /&gt;
=== Router mit Linux ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Router]]&lt;br /&gt;
&lt;br /&gt;
=== Linux im Browser ===&lt;br /&gt;
&lt;br /&gt;
bellard.org/jslinux&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installation von Linux auf Laptops ===&lt;br /&gt;
* [[Linux Mint#Installation_via_PXE | Installation von Linux Mint über PXE]]&lt;br /&gt;
&lt;br /&gt;
** [http://www.linux-laptop.net/ Linux on Laptops]&lt;br /&gt;
** [http://tuxmobil.de/mylaptops_de.html tuxmobil.de]&lt;br /&gt;
** [http://tuxmobil.org/mylaptops.html tuxmobil.org]&lt;br /&gt;
* [[Installation von OpenSuse über PXE]]&lt;br /&gt;
* [http://wiki.debian.org/PXEBootInstall Installation von Debian über PXE]&lt;br /&gt;
* [[Ubuntu#Ubuntu Live mit PXE | Installation von Ubuntu Live-CD]], die über [[PXE]] geladen wird.&lt;br /&gt;
* Installation auf dem [[Toshiba Portege R100]]&lt;br /&gt;
&lt;br /&gt;
=== Installation eines Servers im Internet ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Root-Server]]&lt;br /&gt;
&lt;br /&gt;
=== Umzug auf andere Festplatte/Partition ===&lt;br /&gt;
&lt;br /&gt;
Will man sein Linux auf eine andere Festplatte umziehen, nimmt man eine LiveCD und gibt in der Shell ein (bei Umzug von erster auf zweite Partition):&lt;br /&gt;
  dd if=/dev/sda1 of=/dev/sda2&lt;br /&gt;
&lt;br /&gt;
Wenn die neue Partition größer ist (kleiner geht nicht), dann muss auch noch das Dateisystem angepasst werden (funktioniert jedenfalls bei einem [[ext3]]-Dateisystem):&lt;br /&gt;
  resize2fs /dev/sda2&lt;br /&gt;
&lt;br /&gt;
Siehe [http://www.heise.de/ix/artikel/Moebelpacker-506917.html iX-Artikel Möbelpacker].&lt;br /&gt;
&lt;br /&gt;
=== Paketmanagement ===&lt;br /&gt;
&lt;br /&gt;
Die großen Distributionen sind entweder Debian-basiert (mit .DEB-Paketen) oder nutzen das Redhat Package Manager-Format (.RPM; z.B. OpenSuse).&lt;br /&gt;
==== RPM ====&lt;br /&gt;
* Das [http://xinux.de/docs/linux/rpm/ RPM-Buch] bietet eine  Anleitung zum &amp;quot;Redhat Package Manager&amp;quot; inklusive dem Bau von Paketen.&lt;br /&gt;
&lt;br /&gt;
=== Orchestrierungswerkzeuge ===&lt;br /&gt;
&lt;br /&gt;
Es gibt eine Menge Tools, um die Konfiguration von Rechnern aus der Ferne (halb-)automatisch zu erledigen, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [[Ansible]]&lt;br /&gt;
* [[Chef]]&lt;br /&gt;
* [[Puppet]]&lt;br /&gt;
&lt;br /&gt;
=== Sound ===&lt;br /&gt;
Siehe [[Audio#Linux und Audio]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;Zum Einrichten des Sounds hilft&lt;br /&gt;
  alsaconf&lt;br /&gt;
&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== (De-)Installation von Programmen aus dem Quelltext ===&lt;br /&gt;
&lt;br /&gt;
* Siehe [http://www.linupedia.org/opensuse/Software_aus_dem_Quelltext_Installieren/Deinstallieren (De-)Installation von Programmen aus dem Quelltext]&lt;br /&gt;
&lt;br /&gt;
=== Patch und diff ===&lt;br /&gt;
&lt;br /&gt;
* [http://stephenjungels.com/jungels.net/articles/diff-patch-ten-minutes.html Kurzanleitung für diff und patch]&lt;br /&gt;
&lt;br /&gt;
== Bootvorgang ==&lt;br /&gt;
&lt;br /&gt;
=== Bootloader ===&lt;br /&gt;
==== GRUB ====&lt;br /&gt;
&lt;br /&gt;
===== Installation =====&lt;br /&gt;
Den Bootloader GRUB2 auf allen Platten installieren:&lt;br /&gt;
  sudo grub-install /dev/sda&lt;br /&gt;
  sudo grub-install /dev/sdb&lt;br /&gt;
&lt;br /&gt;
===== GRUB über PXE starten =====&lt;br /&gt;
&lt;br /&gt;
GRUB lässt sich auch [http://ubuntublog.ch/applikationen/die-super-grub-2-disk-ueber-pxe über PXE starten]&lt;br /&gt;
&lt;br /&gt;
Das ist quasi der umgekehrte Fall des Startens von PXE mittels GRUB (im wesentlichen über &amp;quot;root (nd)&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
===== Konfiguration in /etc/grub.d/ =====&lt;br /&gt;
Beim neuen GRUB-Bootloader (GRUB 2) wird die Konfiguration nicht mehr über die Datei /boot/grub/menu.lst, sondern über [http://wiki.ubuntuusers.de/GRUB_2/Konfiguration /etc/default/grub] sowie über Skripte in &amp;lt;code&amp;gt;/etc/grub.d/&amp;lt;/code&amp;gt;. Beispiel für ein Skript &amp;lt;code&amp;gt;/etc/grub.d/08_meinEintrag&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  #!/bin/sh -e&lt;br /&gt;
  echo &amp;quot;Füge meine eigenen Menüeinträge hinzu&amp;quot; &amp;gt;&amp;amp;2&lt;br /&gt;
  cat &amp;lt;&amp;lt; EOF&lt;br /&gt;
  menuentry &amp;quot;MeinLinux&amp;quot; {&lt;br /&gt;
    insmod ext2&lt;br /&gt;
    set root=&#039;(hd0,1)&#039;&lt;br /&gt;
    linux /boot/vmlinuz-2.6.32-32-generic root=/dev/sda ro quiet splash&lt;br /&gt;
    initrd /boot/initrd.img-2.6.32-32-generic&lt;br /&gt;
  }&lt;br /&gt;
  EOF&lt;br /&gt;
&lt;br /&gt;
Die Zahl &amp;lt;code&amp;gt;08&amp;lt;/code&amp;gt; am Beginn des Dateinamens sorgt dafür, dass es vor dem Skript &amp;lt;code&amp;gt;10_linux&amp;lt;/code&amp;gt; ausgeführt wird und die eigenen Menüeinträge oben im Grub-Menü erscheinen. Wichtig ist, dass die Datei ausführbar wird:&lt;br /&gt;
  sudo chmod +x /etc/grub.d/08_meinEintrag&lt;br /&gt;
&lt;br /&gt;
Der echo-Befehl im Skript wird auf die Error-Ausgabe (&amp;amp;2) umgeleitet und landet nicht in &amp;lt;code&amp;gt;/boot/grub/grub.cfg&amp;lt;/code&amp;gt; beim Ausführen von update-grub. Der Text zwischen EOF und EOF landet dagegen 1:1 in &amp;lt;code&amp;gt;/boot/grub/grub.cfg&amp;lt;/code&amp;gt;. Hier kann man also experimentieren.&lt;br /&gt;
&lt;br /&gt;
Der Befehl &amp;lt;code&amp;gt;set&amp;lt;/code&amp;gt; setzt Umgebungsvariablen, in diesem Fall root, die die Partition mit dem zu startenden Betriebssystem enthält. Die erste Platte heißt hd0, die erste Partition beginnt (seit GRUB2) mit 1; die erste Partition auf der ersten Platte heißt also &#039;(hd0,1)&#039;. Root lässt sich auch mit dem Befehl &amp;lt;code&amp;gt;search&amp;lt;/code&amp;gt; setzen.&amp;lt;ref&amp;gt;Siehe [http://forums.linuxmint.com/viewtopic.php?f=46&amp;amp;t=38599 How to use Labels for GRUB2].&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Für weitere Beispiele sollte man sich die automatisch generierte &amp;lt;code&amp;gt;/boot/grub/grub.cfg&amp;lt;/code&amp;gt; anschauen. Dabei kann man alles, was nicht mit &amp;lt;code&amp;gt;menuentry&amp;lt;/code&amp;gt; beginnt beim Lesen erst einmal überspringen.&lt;br /&gt;
&lt;br /&gt;
===== Weiteres Beispiel für einen Menüeintrag =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  menuentry &#039;UbuntuLinux Generic Current auf Platte mit Bezeichnung Ubun10LTS&#039; --class ubuntu --class gnu-linux --class gnu --class os {&lt;br /&gt;
	recordfail&lt;br /&gt;
	insmod ext2&lt;br /&gt;
	search --no-floppy --label --set root Ubun10LTS&lt;br /&gt;
	linux	/vmlinuz root=LABEL=Ubun10LTS ro   quiet splash&lt;br /&gt;
	initrd	/initrd.img&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== /boot/grub.cfg aktualisieren =====&lt;br /&gt;
Nach Änderung an der Konfiguration schaut man sich die Auswirkungen auf &amp;lt;code&amp;gt;/boot/grub/grub.cfg&amp;lt;/code&amp;gt; mittels&lt;br /&gt;
  sudo grub-mkconfig &lt;br /&gt;
an und schreibt sie in &amp;lt;code&amp;gt;/boot/grub/grub.cfg&amp;lt;/code&amp;gt; mittels&lt;br /&gt;
  sudo update-grub&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Vorschau auf GRUB-Menü =====&lt;br /&gt;
&lt;br /&gt;
Das Menü, das GRUB beim Booten anbieten wird, kann mit dem Emulator angezeigt werden:&lt;br /&gt;
  sudo aptitude install grub-emu&lt;br /&gt;
  grub-emu&lt;br /&gt;
&lt;br /&gt;
Um es wieder zu beenden, muss man im Fenster, von dem aus man grub-emu gestartet hat (also nicht das Vorschaufenster) ein &amp;lt;code&amp;gt;c&amp;lt;/code&amp;gt;  und dann ein &amp;lt;code&amp;gt;exit&amp;lt;/code&amp;gt; eingeben.&amp;lt;ref&amp;gt;Vgl. https://unix.stackexchange.com/questions/405515/how-to-preview-my-grub-menu-without-rebooting&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== ISO-File booten =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.supergrubdisk.org/wiki/Loopback.cfg Anleitung bei vorhandener loopback.cfg]&lt;br /&gt;
&lt;br /&gt;
===== Auswahl des Betriebssystems für nächsten Boot =====&lt;br /&gt;
&lt;br /&gt;
Um nur für den nächsten Bootvorgang ein anderes Betriebssystem zu booten, kann man &lt;br /&gt;
  sudo grub-reboot x&lt;br /&gt;
aufrufen, wobei x die Nummer &amp;lt;small&amp;gt;(erster Eintrag hat die 0 nicht die 1)&amp;lt;/small&amp;gt; oder die genaue Bezeichnung des &amp;quot;menuentry&amp;quot;-Eintrags in der &amp;lt;code&amp;gt;grub.cfg&amp;lt;/code&amp;gt; ist.&lt;br /&gt;
&lt;br /&gt;
Wichtig ist dabei, dass in &amp;lt;code&amp;gt;/etc/default/grub&amp;lt;/code&amp;gt; steht, dass&lt;br /&gt;
  GRUB_DEFAULT=saved&lt;br /&gt;
&lt;br /&gt;
Dabei ist es sinnvoll den Standardbootmenüeintrag mit folgendem Kommando festzulegen:&lt;br /&gt;
  sudo grub-set-default x&lt;br /&gt;
&lt;br /&gt;
Siehe http://wiki.ubuntuusers.de/GRUB_2/Terminalbefehle#grub-reboot&lt;br /&gt;
&lt;br /&gt;
===== Boot in die Shell =====&lt;br /&gt;
&lt;br /&gt;
* [http://superuser.com/questions/215590/how-to-boot-grub2-into-the-simplest-linux-shell Anhängen von init 1 an kernel Parameter]&lt;br /&gt;
* [http://ubuntuforums.org/showthread.php?t=919499 Hinzufügen von &amp;quot;text&amp;quot; &amp;quot;disable gdm&amp;quot; ans Ende der Kernel-Parameter]&lt;br /&gt;
* [https://wiki.ubuntu.com/RecoveryMode Booten mit Esc oder linker Shift-Taste in den Recovery-Modus]&lt;br /&gt;
&lt;br /&gt;
===== Weiterführendes =====&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* [http://www.gnu.org/software/grub/manual/grub.html GRUB-Manual]&lt;br /&gt;
* [https://help.ubuntu.com/community/Grub2 Grub-Hilfe] für [[Ubuntu]],&lt;br /&gt;
* [http://www.dedoimedo.com/computers/grub-2.html Grub-Tutorial (englisch)]&lt;br /&gt;
* [https://wiki.archlinux.org/index.php/GRUB2#parttool_or_legacy_hide.2Funhide_.3D ArchLinux Grub Wiki]&lt;br /&gt;
* [http://forums.linuxmint.com/viewtopic.php?f=46&amp;amp;t=38599 How to use Labels for GRUB2]&lt;br /&gt;
&lt;br /&gt;
==== EFI-Boot-Loader ====&lt;br /&gt;
&lt;br /&gt;
===== Allgemeines =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.rodsbooks.com/efi-bootloaders/index.html Beschreibung verschiedener EFI-Bootloader] für Linux&lt;br /&gt;
* [https://wiki.archlinux.org/index.php/UEFI UEFI-Grundlagen] für ArchLinux&lt;br /&gt;
* [https://help.ubuntu.com/community/UEFI UEFI-Hilfe für Ubuntu]&lt;br /&gt;
&lt;br /&gt;
===== GRUB2 =====&lt;br /&gt;
&lt;br /&gt;
====== Allgemeines ======&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.archlinux.org/index.php/GRUB2#UEFI_systems_2 GRUB2 auf UEFI] unter [[ArchLinux]]&lt;br /&gt;
* [http://thinkpad-forum.de/threads/123262-EFI-Grub2-Multiboot-HowTo EFI-Grub2-Multiboot]&lt;br /&gt;
* [http://en.gentoo-wiki.com/wiki/Grub2 EFI-Grub2 mit Gentoo]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====== Installation ======&lt;br /&gt;
&lt;br /&gt;
Aus einem mit EFI gestarteten System lassen sich mit &lt;br /&gt;
&lt;br /&gt;
  sudo efibootmgr --verbose&lt;br /&gt;
&lt;br /&gt;
die zu bootenden Loader anzeigen und die Bootreihenfolge mit &lt;br /&gt;
&lt;br /&gt;
  sudo efibootmgr -o A,2,3&lt;br /&gt;
&lt;br /&gt;
ändern.&lt;br /&gt;
&lt;br /&gt;
Wenn man in &amp;lt;code&amp;gt;/etc/default/grub&amp;lt;/code&amp;gt;&lt;br /&gt;
  GRUB_DISTRIBUTOR=dhubuntu&lt;br /&gt;
gesetzt hat und mit&lt;br /&gt;
  sudo grub-install&lt;br /&gt;
den GRUB-Bootloader erneut installiert hat, kann man ihn mit &lt;br /&gt;
  sudo efibootmgr -c --bootnum 000A -d /dev/sda -p 1 -L &amp;quot;dhUbuntuEFI&amp;quot; -l \\EFI\\dhubuntu\\grubx64.efi &lt;br /&gt;
aktivieren.&amp;lt;ref&amp;gt;Siehe [http://wiki.ubuntuusers.de/EFI_Nachbearbeitung#Eintrag-NVRAM-erstellen ubuntuusers]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====== Chainloading Windows ======&lt;br /&gt;
* Chainloading von EFI-[[Windows]]-Bootloader funktioniert durch folgenden Eintrag in grub.cfg&amp;lt;ref&amp;gt;Siehe http://www.rodsbooks.com/efi-bootloaders/grub2.html; für GRUB Legacy siehe http://www.denraf.be/content/efi-dualboot-windows-7-and-fedora-16 oder http://www.rodsbooks.com/efi-bootloaders/grub_legacy.html&amp;lt;/ref&amp;gt; bzw. /etc/grub.d/08_windows&lt;br /&gt;
  menuentry &amp;quot;Windows 7&amp;quot; {&lt;br /&gt;
        set root=&#039;(hd0,gpt1)&#039;&lt;br /&gt;
        chainloader /EFI/microsoft/BOOT/bootmgfw.efi&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
====== Booteintrag für nächsten Reboot ======&lt;br /&gt;
&lt;br /&gt;
Für den nächsten Boot kann man den Booteintrag folgendermaßen auswählen&lt;br /&gt;
  sudo grub-reboot 2&lt;br /&gt;
&lt;br /&gt;
Statt der 2 (die für den 3. Menüeintrag) steht kann man natürlich auch eine andere Nummer angeben oder aber den Menüeintrag-Titel, wie er der Datei /boot/grub.cfg zu entnehmen ist.&lt;br /&gt;
&lt;br /&gt;
===== ELILO =====&lt;br /&gt;
&lt;br /&gt;
Für ELILO muss Kernel und Initial RamDisk auf einer EFI-zugänglichen Partition liegen.&amp;lt;ref&amp;gt;Siehe http://www.rodsbooks.com/efi-bootloaders/elilo.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Booten übers Netzwerk ====&lt;br /&gt;
* Siehe [[Booten übers Netzwerk]]&lt;br /&gt;
&lt;br /&gt;
=== Kernel ===&lt;br /&gt;
* [http://www.kernel.org/doc/Documentation/kernel-parameters.txt Kernel-Parameter (weitgehend vollständig)]&lt;br /&gt;
* [http://wiki.ubuntuusers.de/booten Kernel-Parameter (Auswahl auf ubuntuusers)]&lt;br /&gt;
* [http://www.cyberciti.biz/tips/10-boot-time-parameters-you-should-know-about-the-linux-kernel.html Kernel-Parameter(Auswahl)]&lt;br /&gt;
* [https://wiki.archlinux.org/index.php/kernel_modules Laden und Nicht-Laden von Kernel-Modulen] unter [[ArchLinux]]&lt;br /&gt;
&lt;br /&gt;
* Achtung der Kernel-Parameter &amp;lt;code&amp;gt;root=&amp;lt;/code&amp;gt; kann sich ändern. Passte bei einer früheren Version noch &amp;lt;code&amp;gt;/dev/hda1&amp;lt;/code&amp;gt; als Argument, kann es jetzt &amp;lt;code&amp;gt;/dev/sda1&amp;lt;/code&amp;gt; sein.&lt;br /&gt;
&lt;br /&gt;
Wer seinen Kernel selber kompilieren will, findet [http://www.freiesmagazin.de/ftp/2012/freiesMagazin-2012-01.pdf hier eine Anleitung].&lt;br /&gt;
&lt;br /&gt;
=== Init nach UNIX Sys V ===&lt;br /&gt;
&lt;br /&gt;
Der herkömmliche Boot-Prozess unter Linux ist das Init-System aus Unix Sys V - Zeiten: Dabei werden entsprechend verschiedener Runlevel einzelne Init-Skripte abgearbeitet, die sich normalerweise in &amp;lt;code&amp;gt;/etc/init.d&amp;lt;/code&amp;gt; befinden. Unterhalb von /etc/rc.d findet sich für jedes Runlevel eine symbolische Linksammlung, deren einzelne Links auf die init-Skripten verweisen. Die Links beginnen mit einem &amp;lt;code&amp;gt;S&amp;lt;/code&amp;gt; oder einem &amp;lt;code&amp;gt;K&amp;lt;/code&amp;gt;, einer Zahl (=Priorität) und enden mit dem Namen des zu startenden (S) bzw. zu beendenden (K) Prozesses. Die Init-Skripten werden nacheinander entsprechend dieser Prioritäten-Zahl abgearbeitet.&lt;br /&gt;
&lt;br /&gt;
Zur Verwaltung der Linksammlung bieten die unterschiedlichen Distributionen kleine Kommandozeilentools:&lt;br /&gt;
&lt;br /&gt;
* Für &amp;lt;code&amp;gt;chkconfig&amp;lt;/code&amp;gt; wird in dem init-Skript konkret die jeweiligen Runlevel, in denen der Dienst laufen soll, sowie die Prioritätszahl vorgegeben.&lt;br /&gt;
* &amp;lt;code&amp;gt;insserv&amp;lt;/code&amp;gt; ([[OpenSuse]]) kann auch Abhängigkeiten auflösen.&lt;br /&gt;
* Unter [[Debian]] und Konsorten gibt es &amp;lt;code&amp;gt;update-rc.d&amp;lt;/code&amp;gt; (siehe diese [http://www.debian-administration.org/article/Making_scripts_run_at_boot_time_with_Debian kleine Anleitung]).&lt;br /&gt;
&lt;br /&gt;
=== Upstart ===&lt;br /&gt;
[[Ubuntu]] steigt ab V 9.10 Karmic Koala auf das neuere &amp;quot;Upstart&amp;quot;-System um. Damit ist es möglich, init-Skripten parallel abzuarbeiten. Dafür wird ein Abhängigkeitssystem zur Verfügung gestellt.&lt;br /&gt;
[[Debian]] verfügt ab Debian 6.0 Squeeze über [[Upstart]].&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* http://upstart.ubuntu.com/getting-started.html&lt;br /&gt;
&lt;br /&gt;
=== Systemd ===&lt;br /&gt;
&lt;br /&gt;
Systemd scheint nach der Entscheidung von [[Debian]] zur Umstellung auf Systemd das alte *NIX-Init-System abzulösen.&lt;br /&gt;
* https://wiki.archlinux.org/index.php/Systemd_FAQ&lt;br /&gt;
* [http://www.heise.de/open/artikel/Das-Init-System-Systemd-Teil-2-1563461.html Heise-Artikel zur Benutzung von systemctl]&lt;br /&gt;
&lt;br /&gt;
==== Standard-Ziel ====&lt;br /&gt;
&lt;br /&gt;
Das Standard-Ziel (der Default Runlevel) wird mittels eines Links eingestellt:&amp;lt;ref&amp;gt;http://www.freedesktop.org/wiki/Software/systemd/FrequentlyAskedQuestions/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  ln -s /lib/systemd/system/multi-user.target /etc/systemd/system/default.target&lt;br /&gt;
&lt;br /&gt;
Alternativ kann auch der folgende Befehl genutzt werden:&amp;lt;ref&amp;gt;https://wiki.archlinux.org/index.php/systemd#Syntax_highlighting_for_units_within_Vim&amp;lt;/ref&amp;gt;&lt;br /&gt;
  systemctl set-default multi-user.target&lt;br /&gt;
&lt;br /&gt;
Schließlich lässt sich beim Booten ebenfalls das Target als Kernel-Parameter (siehe bei [[GRUB]]) angeben:&amp;lt;ref&amp;gt;https://wiki.archlinux.org/index.php/systemd#Syntax_highlighting_for_units_within_Vim&amp;lt;/ref&amp;gt;&lt;br /&gt;
  systemd.unit=multi-user.target&lt;br /&gt;
&lt;br /&gt;
Eine Übersicht über besondere Ziele des Systemd-Systems findet sich bei [http://www.freedesktop.org/software/systemd/man/systemd.special.html freedesktop.org].&lt;br /&gt;
&lt;br /&gt;
==== Konsolen ====&lt;br /&gt;
Siehe zu Service-Templates (z.B. mehrere Konsolen, auf die mittels (Strg-)Alt-F1, (Strg-)Alt-F2 ... zugegriffen werden kann und auf denen jeweils getty läuft):&lt;br /&gt;
* http://0pointer.de/blog/projects/instances.html&lt;br /&gt;
&lt;br /&gt;
=== Ruhezustand ===&lt;br /&gt;
&lt;br /&gt;
Probiere &lt;br /&gt;
  sudo pm-hibernate&lt;br /&gt;
oder&lt;br /&gt;
  sudo systemctl hibernate&lt;br /&gt;
&lt;br /&gt;
Siehe auch zu den Voraussetzungen wie /etc/initramfs-tools/conf.d/resume:&lt;br /&gt;
* https://forums.bunsenlabs.org/viewtopic.php?id=4305&lt;br /&gt;
&lt;br /&gt;
==== Automatischen Ruhezustand verhindern ====&lt;br /&gt;
&lt;br /&gt;
Systemd ist standardmäßig so eingestellt, dass es bei geschlossenem Laptop-Deckel in den Ruhezustand geht. Dies lässt sich in der &amp;lt;code&amp;gt;/etc/systemd/login.conf&amp;lt;/code&amp;gt; vermeiden:&amp;lt;ref&amp;gt;http://unix.stackexchange.com/questions/52643/how-to-disable-auto-suspend-when-i-close-laptop-lid&amp;lt;/ref&amp;gt;&lt;br /&gt;
  HandleLidSwitch=ignore&lt;br /&gt;
&lt;br /&gt;
=== Weiteres ===&lt;br /&gt;
&lt;br /&gt;
* Um ähnlich der AUTOEXEC.BAT unter MS-DOS Programme bei jedem Systemstart/login zu ändern, empfiehlt sich (jedenfalls unter [[OpenSuse]] 10.2) die Datei &amp;lt;code&amp;gt;/etc/init.d/after.local&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;/etc/rc.local&amp;lt;/code&amp;gt; (unter [[Ubuntu]] 9.10 Karmic Koala) zu ändern/ zu erstellen. Sie wird nach allen anderen sonstigen Befehlen des Systemstarts aufgerufen.  &lt;br /&gt;
* Den &#039;&#039;&#039;Linux-Bootvorgang&#039;&#039;&#039; erklärt http://www.tldp.org/HOWTO/From-PowerUp-To-Bash-Prompt-HOWTO.html#toc1 und http://itreviews.blogspot.com/2006/05/linuxs-boot-process-explained.html. Einen Artikel zu Dämonen und Systemstart findet sich bei [http://www.pro-linux.de/work/newbie/daemons.html Pro-Linux].&lt;br /&gt;
&lt;br /&gt;
== Herunterfahren ==&lt;br /&gt;
&lt;br /&gt;
=== im Init-System ===&lt;br /&gt;
Mit einer GUI-Umgebung wie Gnome oder KDE lässt sich der Rechner einfach durch Drücken des Soft-Power-Off-Buttons herunterfahren (meist noch mit einer Rückfrage auf dem Bildschirm). Will man dem normalen User in der Shell etwas ähnliches erlauben, sollte man in &amp;lt;code&amp;gt;/etc/inittab&amp;lt;/code&amp;gt; folgende Zeile einfügen/ändern:&lt;br /&gt;
&lt;br /&gt;
  ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -h now&lt;br /&gt;
&lt;br /&gt;
=== mittels Magic-SysRq ===&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://www.heise.de/ix/heft/Letzte-Rettung-4054884.html iX-Artikel zur Magic-SysRq-Rettung]&lt;br /&gt;
&lt;br /&gt;
== Tastatur ==&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting Tastatur ===&lt;br /&gt;
&lt;br /&gt;
==== Linux Mint 17.1 Rebecca ====&lt;br /&gt;
&lt;br /&gt;
Siehe zunächst das Vorgehen bei [[Linux-Tipps#Debian 8.0 Jessie]]&lt;br /&gt;
&lt;br /&gt;
Bei mir hat allerdings die Einstellungen für cups, in der blacklist und der Kernel-Parameter &amp;lt;code&amp;gt;atkbd.reset&amp;lt;/code&amp;gt; nicht geholfen. Mittels &amp;lt;code&amp;gt;aptitude&amp;lt;/code&amp;gt; habe ich dann das System auf den aktuellen Stand gebracht (im Recovery-Modus). Außerdem habe ich den &amp;lt;code&amp;gt;openssh-server&amp;lt;/code&amp;gt; installiert, um auch bei normalem Start von einem Zweitrechner auf die Mint-Installation zugreifen zu können. Die Module lp, ppdev, parport_pc und parport habe ich sowohl in GRUB (z.B. lp.blacklist=yes) als auch in &amp;lt;code&amp;gt;/etc/modprobe.d/uebeltaeter.conf&amp;lt;/code&amp;gt; ausgeschlossen. &lt;br /&gt;
&lt;br /&gt;
Das Laden der Module lp, parport und parport_pc in &amp;lt;code&amp;gt;/etc/modules-load.d/cups-filters.conf&amp;lt;/code&amp;gt; wird durch Auskommentieren (Raute &#039;#&#039; am Anfang der Zeile) unterbunden.&lt;br /&gt;
&lt;br /&gt;
Eventuell hilft auch das ausdrückliche Laden von &amp;lt;code&amp;gt;atkbd&amp;lt;/code&amp;gt; mittels der Kernel-Parameter &amp;lt;code&amp;gt;earlymodules=atkbd modules-load=atkbd&amp;lt;/code&amp;gt;.&amp;lt;ref&amp;gt; https://www.archlinux.org/news/linux-313-warning-ps2-keyboard-support-is-now-modular/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Recovery-Modus einer Linux-Mint-Installation ist meist ein guter Weg, um die notwendigen Änderungen vorzunehmen.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu 14.04.2 ====&lt;br /&gt;
In &amp;lt;code&amp;gt;/etc/modules-load.d/cups-filter.conf&amp;lt;/code&amp;gt; sind die Module lp, ppdev und parport_pc auszukommentieren.&lt;br /&gt;
&lt;br /&gt;
==== Debian 8.0 Jessie ====&lt;br /&gt;
&lt;br /&gt;
Wenn die PS/2-Tastatur nach Installation von CUPS nicht funktioniert, hilft möglicherweise&amp;lt;ref&amp;gt;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=641267&amp;lt;/ref&amp;gt; eine Änderung der &amp;lt;code&amp;gt;/etc/default/cups&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  LOAD_LP_MODULE=no&lt;br /&gt;
&lt;br /&gt;
Oder man deinstalliert das Modul cups-server-common mit all seinen Abhängigkeiten&lt;br /&gt;
  aptitude remove cups-server-common&lt;br /&gt;
&lt;br /&gt;
Der eigentliche Übeltäter ist jedoch das Modul &amp;lt;code&amp;gt;parport_pc&amp;lt;/code&amp;gt;&amp;lt;ref&amp;gt;Siehe http://www.aptosidusers.de/index.php?name=PNphpBB2&amp;amp;file=viewtopic&amp;amp;p=12101&amp;lt;/ref&amp;gt;, das CUPS für Drucker am Parallelport lädt. Dies lässt sich durch Erstellung folgender &amp;lt;code&amp;gt;/etc/modprobe.d/blacklist-uebeltaeter.conf&amp;lt;/code&amp;gt; beheben:&lt;br /&gt;
&lt;br /&gt;
  #Ermoeglicht wieder die PS_2 Tastatur zu nutzen:&lt;br /&gt;
  &lt;br /&gt;
  blacklist parport_pc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn es immer noch nicht hilft, muss das Modul &amp;lt;code&amp;gt;ohci_pci&amp;lt;/code&amp;gt; nachgeladen werden.&amp;lt;ref&amp;gt;Siehe http://forums.debian.net/viewtopic.php?f=17&amp;amp;t=105344 . &amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder: das Paket &amp;lt;code&amp;gt;hal&amp;lt;/code&amp;gt; muss deinstalliert werden:&lt;br /&gt;
  aptitude remove hal&lt;br /&gt;
&lt;br /&gt;
Schließlich hilft eventuell (z.B. bei einer Tastatur, die nach einem Suspend-to-RAM nicht mehr funktioniert) auch der Kernelparameter (anzugeben bei den [[GRUB]]-Einstellungen):&lt;br /&gt;
  atkbd.reset&lt;br /&gt;
&lt;br /&gt;
==== Debian 7.0 Wheezy ====&lt;br /&gt;
Für [[Debian]] 7.0 Wheezy hilft evtl. [http://serverfault.com/questions/307600/keyboard-dont-work-after-upgrade-to-debian-wheezy folgende Änderung der /etc/X11/xorg.conf] (evtl. ausführbar machen???):&lt;br /&gt;
&lt;br /&gt;
  Section &amp;quot;ServerFlags&amp;quot;&lt;br /&gt;
    Option &amp;quot;AutoAddDevices&amp;quot; &amp;quot;False&amp;quot;&lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
Zusätzlich sollte noch der [http://www.linuxquestions.org/questions/debian-26/mouse-and-keyboard-are-dead-on-x-debian-testing-881873/ &amp;quot;alte&amp;quot; Tastatur-Treiber] installiert werden: &lt;br /&gt;
  aptitude install xserver-xorg-input-kbd xserver-xorg-input-mouse&lt;br /&gt;
&lt;br /&gt;
=== Tastaturlayout ===&lt;br /&gt;
Ab [[Debian]] 6.0 Squeeze ist die [http://www.debian.org/releases/stable/i386/release-notes/ch-whats-new.de.html#unity-keyboard-settings Tastatureinstellung für die Konsole und den X-Server vereinheitlicht]:&lt;br /&gt;
&lt;br /&gt;
  dpkg-reconfigure keyboard-configuration&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dazu muss zuvor die notwendigen Pakete installiert werden&lt;br /&gt;
  aptitude install console-data keyboard-configuration&lt;br /&gt;
&lt;br /&gt;
Bisher:&lt;br /&gt;
Mit &lt;br /&gt;
  loadkeys de-latin1 &lt;br /&gt;
kann man in der Konsole die deutsche Tastaturbelegung laden.&lt;br /&gt;
&lt;br /&gt;
Für X wird das Tastaturlayout (jedenfalls unter [[Debian]]) in der Datei &amp;lt;code&amp;gt;/etc/X11/xorg.conf&amp;lt;/code&amp;gt; eingestellt:&lt;br /&gt;
  Section &amp;quot;InputDevice&amp;quot;&lt;br /&gt;
        Identifier      &amp;quot;Generic Keyboard&amp;quot;&lt;br /&gt;
        Driver          &amp;quot;kbd&amp;quot;&lt;br /&gt;
        Option          &amp;quot;XkbRules&amp;quot;      &amp;quot;xorg&amp;quot;&lt;br /&gt;
        Option          &amp;quot;XkbModel&amp;quot;      &amp;quot;pc104&amp;quot;&lt;br /&gt;
        Option          &amp;quot;XkbLayout&amp;quot;     &amp;quot;de&amp;quot;   &lt;br /&gt;
  EndSection&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* [http://www.faqs.org/docs/Linux-HOWTO/Keyboard-and-Console-HOWTO.html Linux Tastatur Hinweise].&lt;br /&gt;
&lt;br /&gt;
== Maus und Touchpad ==&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  synclient TouchPadOff=1&lt;br /&gt;
kann das Klicken durch Tippen auf das TouchPad abgeschaltet werden. Siehe dazu auch [http://forum.ubuntuusers.de/topic/ubuntu-12-04-mouseklicks-touchpad-deaktivieren/#post-4381662 diesen Thread].&lt;br /&gt;
&lt;br /&gt;
=== Maus nicht erkannt beim Starten ===&lt;br /&gt;
&lt;br /&gt;
Bei Linux Mint 19.1 und dem Motherboard [[ASRock B360 Pro4]] wird evtl die USB-Maus (in meinem Fall Microsoft Optical Mouse) beim Systemstart nicht erkannt. Hier könnte der Kernelparameter   &amp;lt;code&amp;gt;i8042.nopnp&amp;lt;/code&amp;gt; helfen.&amp;lt;ref&amp;gt;Vgl. http://lightrush.ndoytchev.com/random-1/i8042quirkoptions&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== RS232 Schnittstelle ==&lt;br /&gt;
&lt;br /&gt;
Einen USB-RS232-Adapter kann man auch an einen Linux-PC anschließen.&amp;lt;ref&amp;gt;Siehe https://blog.mypapit.net/2008/05/how-to-use-usb-serial-port-converter-in-ubuntu.html, http://www.linux-usb.org/USB-guide/x356.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Allerdings muss man dazu [https://blog.mypapit.net/2008/05/how-to-use-usb-serial-port-converter-in-ubuntu.html entsprechende Kernel-Module laden].&lt;br /&gt;
&lt;br /&gt;
Die RS232-Schnittstelle lässt sich aus einem in [[C]] geschriebenen Programm mittels einer [http://www.teuniz.net/RS-232/ recht neuen Open Source Bibliothek] ansprechen.&lt;br /&gt;
&lt;br /&gt;
== Infrarot-Schnittstelle ==&lt;br /&gt;
&lt;br /&gt;
=== IrDA ===&lt;br /&gt;
Datenübertragung per Infrarot geht nach dem IrDA-Standard. Dazu gibt es unter Linux beispielsweise die irda-utils.&lt;br /&gt;
&lt;br /&gt;
=== LIRC ===&lt;br /&gt;
&lt;br /&gt;
Die Signale der [http://www.sbprojects.com/knowledge/ir/ Infrarot]-Fernbedienungen konnten früher nur über [http://www.lirc.org LIRC] empfangen werden, heutzutage kann der Kernel selbst viele Signale direkt als Tastatur-Ereignisse verarbeiten.&amp;lt;ref&amp;gt;Siehe [http://atterer.org/mythtv-xmbc-remote-control-without-lirc] .&amp;lt;/ref&amp;gt; LIRC hat aber weiterhin Sinn, z.B. wenn man bei der Konfiguration flexibler sein will oder wenn ein IR-Empfänger oder eine IR-Fernbedienung noch nicht vom Kernel unterstützt wird.&amp;lt;ref&amp;gt;Vgl. http://www.lirc.org/html/configuration-guide.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit LIRC kann man auch die vom Kernel unterstützten IR-Geräte nutzen; dabei geht man den Umweg über das Linux-Input-System. &lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  ir-keytable&lt;br /&gt;
können die installierten IR-Receiver angezeigt werden. Eingabegeräte ganz allgemein lassen sich auch mit &lt;br /&gt;
  cat /proc/bus/input/devices&lt;br /&gt;
anzeigen.&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  sudo ir-keytable --device /dev/input/event10 -t&lt;br /&gt;
kann man testen, ob überhaupt Signale ankommen (event10 durch den auf den IR-Empfänger passenden event setzen, siehe oben ir-keytable). Das sudo kann weggelassen werden, indem man den Benutzer der Gruppe &amp;lt;code&amp;gt;input&amp;lt;/code&amp;gt; zuweist:&amp;lt;ref&amp;gt;Vgl. http://www.lirc.org/html/devinput.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
  sudo adduser USER input&lt;br /&gt;
&lt;br /&gt;
Zunächst gibt man beim Testen alle unterstützten Protokolle an:&lt;br /&gt;
  ir-keytable -p jvc,rc-5,rc-6,other -t&lt;br /&gt;
&lt;br /&gt;
Dann setzt man das korrekte Protokoll, indem hinter -p die übrigen Protokolle weggelassen werden.&lt;br /&gt;
Außerdem kopiert man eine Kernel-Keymap nach /etc/rc_keymap, bearbeitet sie gegebenenfalls &amp;lt;small&amp;gt;([http://atterer.org/mythtv-xmbc-remote-control-without-lirc siehe dazu die Key codes( MythTV) ] und die [http://kodi.wiki/view/Keyboard_controls Standardbelegung der Tastatur unter Kodi])&amp;lt;/small&amp;gt; und liest sie dann ein&lt;br /&gt;
  sudo cp /lib/udev/rc_keymaps/tt_1500 /etc/rc_keymaps/meine_keymap&lt;br /&gt;
  sudo ir-keytable -p jvc -c -w /etc/rc_keymaps/meine_keymap&lt;br /&gt;
&lt;br /&gt;
Hier mal meine Beispiel-Tabelle  &amp;lt;code&amp;gt;/etc/rc_keymaps/meine_tt&amp;lt;/code&amp;gt; für die Nutzung einer alten Technotrend-Fernbedienung für [[Kodi]]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# table tt_1500, type: RC5&lt;br /&gt;
0x1501 KEY_POWER&lt;br /&gt;
0x1502 KEY_SHUFFLE&lt;br /&gt;
0x1503 KEY_1&lt;br /&gt;
0x1504 KEY_2&lt;br /&gt;
0x1505 KEY_3&lt;br /&gt;
0x1506 KEY_4&lt;br /&gt;
0x1507 KEY_5&lt;br /&gt;
0x1508 KEY_6&lt;br /&gt;
0x1509 KEY_7&lt;br /&gt;
0x150a KEY_8&lt;br /&gt;
0x150b KEY_9&lt;br /&gt;
0x150c KEY_0&lt;br /&gt;
0x150d KEY_UP&lt;br /&gt;
0x150e KEY_LEFT&lt;br /&gt;
0x150f KEY_ENTER&lt;br /&gt;
0x1510 KEY_RIGHT&lt;br /&gt;
0x1511 KEY_DOWN&lt;br /&gt;
0x1512 KEY_C&lt;br /&gt;
0x1513 KEY_BACKSPACE&lt;br /&gt;
0x1514 KEY_RED&lt;br /&gt;
0x1515 KEY_GREEN&lt;br /&gt;
0x1516 KEY_YELLOW&lt;br /&gt;
0x1517 KEY_BLUE&lt;br /&gt;
0x1518 KEY_MUTE&lt;br /&gt;
0x1519 KEY_TEXT&lt;br /&gt;
0x151a KEY_MODE&lt;br /&gt;
0x1521 KEY_OPTION&lt;br /&gt;
0x1522 KEY_E&lt;br /&gt;
0x1523 KEY_CHANNELUP&lt;br /&gt;
0x1524 KEY_CHANNELDOWN&lt;br /&gt;
0x1525 KEY_VOLUMEUP&lt;br /&gt;
0x1526 KEY_VOLUMEDOWN&lt;br /&gt;
0x1527 KEY_SETUP&lt;br /&gt;
0x153a KEY_RECORD&lt;br /&gt;
0x153b KEY_SPACE&lt;br /&gt;
0x153c KEY_X&lt;br /&gt;
0x153d KEY_REWIND&lt;br /&gt;
0x153e KEY_PAUSE&lt;br /&gt;
0x153f KEY_FORWARD&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  ir-keytable --read&lt;br /&gt;
kann man sich die eingelesenen Keycodes anzeigen lassen.&lt;br /&gt;
&lt;br /&gt;
Hier ist mit dem reinen Kernel-Treiber Schluss. &lt;br /&gt;
&lt;br /&gt;
Man kann es sich aber auch komplizierter machen und  LIRC installieren:&lt;br /&gt;
  sudo aptitude install lirc&lt;br /&gt;
  &lt;br /&gt;
Die /etc/lirc/hardware.conf bekommt folgenden Inhalt:&amp;lt;ref&amp;gt;Vgl. [http://forum.kodi.tv/showthread.php?tid=101151 ir-keytable or: How I Learned to Stop Worrying about the LIRC Kernel] &amp;lt;/ref&amp;gt;&lt;br /&gt;
  LOAD_MODULES=true&lt;br /&gt;
  DRIVER=&amp;quot;devinput&amp;quot;&lt;br /&gt;
  DEVICE=&amp;quot;/dev/input/event6&amp;quot;&lt;br /&gt;
event6 muss dabei an den mit &lt;br /&gt;
  ir-keytable&lt;br /&gt;
Gerätenamen angepasst werden. &#039;&#039;&#039;Achtung:&#039;&#039;&#039; Nach einem Neustart kann der IR-Receiver einem anderen eventXXX zugeordnet sein.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Für die /etc/lirc/lircd.conf greift man auf die devinput-Datei zurück:&lt;br /&gt;
  sudo cp -av /usr/share/lirc/remotes/devinput/lircd.conf.devinput /etc/lirc/lircd.conf&lt;br /&gt;
&lt;br /&gt;
Danach müssen noch [https://github.com/xbmc/xbmc/blob/Jarvis/system/Lircmap.xml Lircmap.xml] in &amp;lt;code&amp;gt;~/.kodi/userdata/&amp;lt;/code&amp;gt; und die [https://github.com/xbmc/xbmc/blob/master/system/keymaps/remote.xml remote.xml] (jeweils auf korrektes Release/github-Branch achten)&amp;lt;ref&amp;gt;Siehe http://kodi.wiki/view/Keymap.xml#Remote_Buttons&amp;lt;/ref&amp;gt; in &amp;lt;code&amp;gt;~/.kodi/userdata/keymaps/&amp;lt;/code&amp;gt; hineinkopiert werden, möchte man [[Kodi]] nutzen. Dabei ist in die Lircmap.xml in das device-Attribut des remote-Elements korrekt zu setzen. Beispiel:&lt;br /&gt;
  &amp;lt;remote device=&amp;quot;/dev/input/event6&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Da [[udev]] insbesondere bei mehreren IR-Receivern immer wieder eine andere Gerätenummer (eventXX) zuweist, sollte man mit einer eigenen udev-Regel einen symbolischen Link erstellen. Dazu legt man eine Datei &amp;lt;code&amp;gt;/etc/udev/rules.d/10-infrared.rules&amp;lt;/code&amp;gt; an und gibt ihr folgenden Inhalt:&lt;br /&gt;
  ACTION==&amp;quot;add&amp;quot;, SUBSYSTEM==&amp;quot;input&amp;quot;, ATTRS{name}==&amp;quot;ITE8713 CIR transceiver&amp;quot;,  SYMLINK+=&amp;quot;input/infrared&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Hilfe zum Finden der korrekten Attribute für den eigenen IR-Empfänger erhält man mit&lt;br /&gt;
  udevadm info -a -n /dev/input/event7&lt;br /&gt;
wobei natürlich event7 mit dem korrekten eventXX aus dem Aufruf von &amp;lt;code&amp;gt;ir-keytable&amp;lt;/code&amp;gt; ersetzt werden muss.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  sudo udevadm test /devices/virtual/rc/rc0/input7/event7 &lt;br /&gt;
kann man die udev-Regel testen.&lt;br /&gt;
&lt;br /&gt;
  sudo udevadm trigger&lt;br /&gt;
löst den udev-Zuweisungsvorgang aus (genauso wie beim Neustart).&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  ls -als /dev/input/infrared&lt;br /&gt;
kann man sehen, ob man erfolgreich war.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [http://www.lirc.org/html/configuration-guide.html Ausführliche Anleitung und Erläuterung der LIRC-Funktionsweise]&lt;br /&gt;
* [https://marklodato.github.io/2013/10/24/how-to-use-lirc.html LIRC-Anleitung von Mark Lodato] inkl. Abklemmen der Kernel-Funktionalität über xorg.conf.d-Dateien&lt;br /&gt;
* [https://www.mythtv.org/wiki/User_Manual:IR_control_via_evdev MythTV-Anleitung zu ir-keytable]&lt;br /&gt;
* [http://forum.kodi.tv/showthread.php?tid=101151 IR-Remote nur über Kernel, nicht über LIRC]&lt;br /&gt;
* [http://forum.kodi.tv/showthread.php?tid=104541 Ausführliche Erklärung von LIRC in mehreren Forumsbeiträgen]&lt;br /&gt;
&lt;br /&gt;
==== InputLirc ====&lt;br /&gt;
&lt;br /&gt;
InputLirc nutzt das Kernel-Input-Subsystem (ir-keytable) und gibt die Events an LIRC weiter, das dann für die Aktionen in den Anwendungen sorgt.&lt;br /&gt;
&lt;br /&gt;
Installation:&lt;br /&gt;
  sudo aptitude install lirc lirc-x inputlirc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In &amp;lt;code&amp;gt;/etc/default/inputlirc&amp;lt;/code&amp;gt; muss die Variable &amp;lt;code&amp;gt;EVENTS&amp;lt;/code&amp;gt; auf den von der oben angegebenen [[udev]]-Regel erstellten symbolischen Link gesetzt werden:&amp;lt;ref&amp;gt;Vgl. http://kodi.wiki/view/HOW-TO:Set_up_an_MCE_remote_control_in_Linux &amp;lt;/ref&amp;gt;&lt;br /&gt;
  EVENTS=&amp;quot;/dev/input/infrared&amp;quot;&lt;br /&gt;
Das ist dann auch der korrekte Name für das &amp;lt;code&amp;gt;&amp;amp;lt;remote&amp;amp;gt;&amp;lt;/code&amp;gt;-Tag in der &amp;lt;code&amp;gt;.kodi/userdata/Lircmapxml&amp;lt;/code&amp;gt;.&lt;br /&gt;
Kernel-Input kann mit ir-keytable -t getestet werden (siehe oben).&lt;br /&gt;
&lt;br /&gt;
Die LIRC-Tastencodes können mit &lt;br /&gt;
  irw&lt;br /&gt;
angezeigt werden (einzelne Tasten auf der Fernbedienung betätigen).&lt;br /&gt;
&lt;br /&gt;
[[Kodi]]-Funktionen: Die &amp;lt;code&amp;gt;~/.kodi/userdata/Lircmap.xml&amp;lt;/code&amp;gt; erhält folgenden Inhalt:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
  &amp;lt;!-- This file contains the mapping of LIRC keys to XBMC keys used in Keymap.xml  --&amp;gt;&lt;br /&gt;
  &amp;lt;!--                                                                              --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- How to add remotes                                                           --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;remote device=&amp;quot;name_Lirc_calls_the_remote&amp;quot;&amp;gt;                                 --&amp;gt;&lt;br /&gt;
  &amp;lt;!--                                                                              --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- For the commands the layout following layout is used                         --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- &amp;lt;XBMC_COMMAND&amp;gt;LircButtonName&amp;lt;/XBMC_COMMAND&amp;gt;                                  --&amp;gt;&lt;br /&gt;
  &amp;lt;!--                                                                              --&amp;gt;&lt;br /&gt;
  &amp;lt;!-- For a list of XBMC_COMMAND&#039;s check out the &amp;lt;remote&amp;gt; sections of keymap.xml   --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;lircmap&amp;gt;&lt;br /&gt;
	&amp;lt;remote device=&amp;quot;/dev/input/event6&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;!-- new kernel-based lirc button names --&amp;gt;&lt;br /&gt;
		&amp;lt;eject&amp;gt;KEY_EJECTCD&amp;lt;/eject&amp;gt;&lt;br /&gt;
		&amp;lt;left&amp;gt;KEY_LEFT&amp;lt;/left&amp;gt;&lt;br /&gt;
		&amp;lt;right&amp;gt;KEY_RIGHT&amp;lt;/right&amp;gt;&lt;br /&gt;
		&amp;lt;up&amp;gt;KEY_UP&amp;lt;/up&amp;gt;&lt;br /&gt;
		&amp;lt;down&amp;gt;KEY_DOWN&amp;lt;/down&amp;gt;&lt;br /&gt;
		&amp;lt;select&amp;gt;KEY_OK&amp;lt;/select&amp;gt;&lt;br /&gt;
		&amp;lt;start&amp;gt;KEY_HOME&amp;lt;/start&amp;gt;&lt;br /&gt;
		&amp;lt;back&amp;gt;KEY_BACK&amp;lt;/back&amp;gt;&lt;br /&gt;
		&amp;lt;record&amp;gt;KEY_RECORD&amp;lt;/record&amp;gt;&lt;br /&gt;
		&amp;lt;play&amp;gt;KEY_PLAY&amp;lt;/play&amp;gt;&lt;br /&gt;
		&amp;lt;pause&amp;gt;KEY_PAUSE&amp;lt;/pause&amp;gt;&lt;br /&gt;
		&amp;lt;stop&amp;gt;KEY_STOP&amp;lt;/stop&amp;gt;&lt;br /&gt;
		&amp;lt;forward&amp;gt;KEY_FORWARD&amp;lt;/forward&amp;gt;&lt;br /&gt;
		&amp;lt;reverse&amp;gt;KEY_REWIND&amp;lt;/reverse&amp;gt;&lt;br /&gt;
		&amp;lt;volumeplus&amp;gt;KEY_VOLUMEUP&amp;lt;/volumeplus&amp;gt;&lt;br /&gt;
		&amp;lt;volumeminus&amp;gt;KEY_VOLUMEDOWN&amp;lt;/volumeminus&amp;gt;&lt;br /&gt;
		&amp;lt;pageplus&amp;gt;KEY_CHANNELUP&amp;lt;/pageplus&amp;gt;&lt;br /&gt;
		&amp;lt;pageminus&amp;gt;KEY_CHANNELDOWN&amp;lt;/pageminus&amp;gt;&lt;br /&gt;
		&amp;lt;skipplus&amp;gt;KEY_NEXT&amp;lt;/skipplus&amp;gt;&lt;br /&gt;
		&amp;lt;skipminus&amp;gt;KEY_AGAIN&amp;lt;/skipminus&amp;gt;&lt;br /&gt;
		&amp;lt;mute&amp;gt;KEY_MUTE&amp;lt;/mute&amp;gt;&lt;br /&gt;
		&amp;lt;power&amp;gt;KEY_POWER&amp;lt;/power&amp;gt;&lt;br /&gt;
		&amp;lt;myvideo&amp;gt;KEY_VIDEO&amp;lt;/myvideo&amp;gt;&lt;br /&gt;
		&amp;lt;mymusic&amp;gt;KEY_AUDIO&amp;lt;/mymusic&amp;gt;&lt;br /&gt;
		&amp;lt;livetv&amp;gt;LiveTV&amp;lt;/livetv&amp;gt;&lt;br /&gt;
		&amp;lt;guide&amp;gt;KEY_EPG&amp;lt;/guide&amp;gt;&lt;br /&gt;
		&amp;lt;one&amp;gt;KEY_1&amp;lt;/one&amp;gt;&lt;br /&gt;
		&amp;lt;two&amp;gt;KEY_2&amp;lt;/two&amp;gt;&lt;br /&gt;
		&amp;lt;three&amp;gt;KEY_3&amp;lt;/three&amp;gt;&lt;br /&gt;
		&amp;lt;four&amp;gt;KEY_4&amp;lt;/four&amp;gt;&lt;br /&gt;
		&amp;lt;five&amp;gt;KEY_5&amp;lt;/five&amp;gt;&lt;br /&gt;
		&amp;lt;six&amp;gt;KEY_6&amp;lt;/six&amp;gt;&lt;br /&gt;
		&amp;lt;seven&amp;gt;KEY_7&amp;lt;/seven&amp;gt;&lt;br /&gt;
		&amp;lt;eight&amp;gt;KEY_8&amp;lt;/eight&amp;gt;&lt;br /&gt;
		&amp;lt;nine&amp;gt;KEY_9&amp;lt;/nine&amp;gt;&lt;br /&gt;
		&amp;lt;zero&amp;gt;KEY_0&amp;lt;/zero&amp;gt;&lt;br /&gt;
		&amp;lt;red&amp;gt;KEY_RED&amp;lt;/red&amp;gt;&lt;br /&gt;
		&amp;lt;green&amp;gt;KEY_GREEN&amp;lt;/green&amp;gt;&lt;br /&gt;
		&amp;lt;yellow&amp;gt;KEY_YELLOW&amp;lt;/yellow&amp;gt;&lt;br /&gt;
		&amp;lt;blue&amp;gt;KEY_BLUE&amp;lt;/blue&amp;gt;&lt;br /&gt;
		&amp;lt;menu&amp;gt;KEY_DVD&amp;lt;/menu&amp;gt;&lt;br /&gt;
		&amp;lt;clear&amp;gt;KEY_CLEAR&amp;lt;/clear&amp;gt;&lt;br /&gt;
		&amp;lt;enter&amp;gt;KEY_ENTER&amp;lt;/enter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
                &amp;lt;!-- extensions --&amp;gt;&lt;br /&gt;
                &amp;lt;back&amp;gt;KEY_EXIT&amp;lt;/back&amp;gt;&lt;br /&gt;
	&amp;lt;/remote&amp;gt;&lt;br /&gt;
  &amp;lt;/lircmap&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Siehe &lt;br /&gt;
* http://www.pro-linux.de/artikel/2/1682/einstieg-in-lirc-mit-inputlirc.html&lt;br /&gt;
&lt;br /&gt;
==== ir-keytable und Kodi ====&lt;br /&gt;
&lt;br /&gt;
Für neuere Linux- und [[Kodi]]-Versionen braucht man im Regelfall LIRC nicht. &amp;lt;code&amp;gt;ir-keytable&amp;lt;/code&amp;gt; reicht aus.&lt;br /&gt;
Beispiel für eine TT-Fernbedienung an einem Intel [[NUC]] mit eingebautem IR-Empfänger: &lt;br /&gt;
Man bastelt auf Basis der &amp;lt;code&amp;gt;/lib/udev/rc_keymaps/tt_1500&amp;lt;/code&amp;gt; eine neue Datei namens &amp;lt;code&amp;gt;/etc/rc_keymaps/meine_tt&amp;lt;/code&amp;gt; mit folgendem Inhalt:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# table tt_1500, type: RC5&lt;br /&gt;
0x1501 KEY_POWER&lt;br /&gt;
0x1502 KEY_SHUFFLE&lt;br /&gt;
0x1503 KEY_1&lt;br /&gt;
0x1504 KEY_2&lt;br /&gt;
0x1505 KEY_3&lt;br /&gt;
0x1506 KEY_4&lt;br /&gt;
0x1507 KEY_5&lt;br /&gt;
0x1508 KEY_6&lt;br /&gt;
0x1509 KEY_7&lt;br /&gt;
0x150a KEY_8&lt;br /&gt;
0x150b KEY_9&lt;br /&gt;
0x150c KEY_0&lt;br /&gt;
0x150d KEY_UP&lt;br /&gt;
0x150e KEY_LEFT&lt;br /&gt;
0x150f KEY_ENTER&lt;br /&gt;
0x1510 KEY_RIGHT&lt;br /&gt;
0x1511 KEY_DOWN&lt;br /&gt;
0x1512 KEY_C&lt;br /&gt;
0x1513 KEY_BACKSPACE&lt;br /&gt;
0x1514 KEY_RED&lt;br /&gt;
0x1515 KEY_GREEN&lt;br /&gt;
0x1516 KEY_YELLOW&lt;br /&gt;
0x1517 KEY_BLUE&lt;br /&gt;
0x1518 KEY_MUTE&lt;br /&gt;
0x1519 KEY_TEXT&lt;br /&gt;
0x151a KEY_MODE&lt;br /&gt;
0x1521 KEY_OPTION&lt;br /&gt;
0x1522 KEY_E&lt;br /&gt;
0x1523 KEY_CHANNELUP&lt;br /&gt;
0x1524 KEY_CHANNELDOWN&lt;br /&gt;
0x1525 KEY_VOLUMEUP&lt;br /&gt;
0x1526 KEY_VOLUMEDOWN&lt;br /&gt;
0x1527 KEY_SETUP&lt;br /&gt;
0x153a KEY_RECORD&lt;br /&gt;
0x153b KEY_SPACE&lt;br /&gt;
0x153c KEY_X&lt;br /&gt;
0x153d KEY_REWIND&lt;br /&gt;
0x153e KEY_PAUSE&lt;br /&gt;
0x153f KEY_FORWARD&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Diese schreibt man auf den Intel-IR-Receiver (hier: &amp;lt;code&amp;gt;rc0&amp;lt;/code&amp;gt;) mit &lt;br /&gt;
   sudo ir-keytable -c -w /etc/rc_keymaps/meine_tt -s rc0&lt;br /&gt;
&lt;br /&gt;
Um nicht noch durch den im DVB-Stick enthaltenen IR-Receiver (hier: &amp;lt;code&amp;gt;rc1&amp;lt;/code&amp;gt;) verwirrt zu werden, kann man dessen Zuordnungstabelle löschen:&lt;br /&gt;
 sudo ir-keytable -c  -s rc1&lt;br /&gt;
&lt;br /&gt;
Kodi muss zur Wirksamkeit wohl neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
==== IR Probleme ====&lt;br /&gt;
&lt;br /&gt;
Zu Testzwecken hilft das Anzeigen einzelner Tastendrücke:&lt;br /&gt;
  irw&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mit Intel NUCs scheint es manchmal Probleme mit dem internen IR-Receiver zu geben. &amp;lt;ref&amp;gt;Siehe https://communities.intel.com/thread/52072?start=15&amp;amp;tstart=0&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn man zwei IR-Receiver (z.B. eingebauten und den einer TV-Karte) hat, kann es passieren, dass man das Protokoll für den zweiten nicht einstellen kann.&amp;lt;ref&amp;gt;Vgl. https://github.com/OpenELEC/OpenELEC.tv/issues/3137&amp;lt;/ref&amp;gt;,&amp;lt;ref&amp;gt;Siehe http://ilostmynotes.blogspot.de/2012/12/fintek-ir-receiver-and-xbox-remote-to.html &amp;lt;/ref&amp;gt;, &amp;lt;ref&amp;gt;https://bbs.archlinux.org/viewtopic.php?id=151479&amp;amp;p=2&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Möglicherweise gibt es auf einem Debian Jessie ein LIRC zuviel und die Tasten werden ununterbrochen wiederholt. Dann hilft evtl.:&lt;br /&gt;
  sudo service lircd-uinput stop&lt;br /&gt;
Den &amp;lt;code&amp;gt;lircd-uinput&amp;lt;/code&amp;gt; - Service kann man auch dauerhaft deaktivieren:&lt;br /&gt;
  sudo systemctl disable lircd-uinput&lt;br /&gt;
&lt;br /&gt;
===== IR-Fernbedienung erzeugt doppelte Tastendrücke =====&lt;br /&gt;
&lt;br /&gt;
Wenn man [[Kodi]] über eine Infrarot-Fernbedienung steuern will und sie wie oben dargestellt mit [[LIRC]] und Kodis [[Lircmap.xml]] eingerichtet hat, dann kann es vorkommen, dass die Fernbedienung Tastendrücke doppelt an Kodi meldet. Wenn dies der Fall ist, schaltet man das entsprechende Input-Device im X-Server ab. Dazu sucht man mit &lt;br /&gt;
  export DISPLAY=:0.0&lt;br /&gt;
  xinput list&lt;br /&gt;
die Id (z.B. 9) des IR-Adapters (üblicherweise benannt nach dem TV-Stick, der den IR-Empfänger integriert hat).&lt;br /&gt;
Mit &lt;br /&gt;
  xinput list-props 9&lt;br /&gt;
(statt 9 ggf. andere ID angeben) kann man dann die Eigenschaften des IR-Empfängers ausgeben lassen. Hinter jeder Eigenschaft ist in Klammern eine Eigenschaftsnummer angegeben. Die Eigenschaft mit dem &amp;quot;Enabled&amp;quot; im Text, muss auf 0 gesetzt werden, z.B. so:&lt;br /&gt;
  xinput set-prop 9 138 0 &lt;br /&gt;
Oft funktioniert auch direkt&lt;br /&gt;
  xinput set-prop 9 &amp;quot;Device Enabled&amp;quot; 0&lt;br /&gt;
&lt;br /&gt;
Dazu gibt es auch [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/663651/comments/23 ein fertiges Skript].&lt;br /&gt;
&lt;br /&gt;
== Prozessverwaltung ==&lt;br /&gt;
&lt;br /&gt;
=== nohup ===&lt;br /&gt;
* Mit dem Befehl &amp;lt;code&amp;gt;nohup&amp;lt;/code&amp;gt; kann man Prozesse starten, die nicht beendet werden, wenn die Shell verlassen wird. Die Standardausgabe &amp;lt;code&amp;gt;stdout&amp;lt;/code&amp;gt; wird nach &amp;lt;code&amp;gt;nohup.out&amp;lt;/code&amp;gt; im aktuellen Verzeichnis umgeleitet (kann z.B. mit &amp;lt;code&amp;gt;cat nohup.out&amp;lt;/code&amp;gt; angesehen werden.&lt;br /&gt;
&lt;br /&gt;
=== cron ===&lt;br /&gt;
&lt;br /&gt;
==== crontab ====&lt;br /&gt;
* Mit dem Befehl &amp;lt;code&amp;gt;crontab&amp;lt;/code&amp;gt; lassen sich Prozesse zu einem bestimmten Zeitpunkt ausführen. Anleitungen finden sich z.B. bei [http://de.wikipedia.org/wiki/Cron Wikipedia], [http://www.newbie-net.de/anleitung_cron.html Newbie-Net]. Mit &lt;br /&gt;
  crontab -l&lt;br /&gt;
wird die &amp;lt;code&amp;gt;crontab&amp;lt;/code&amp;gt; des aktuellen Benutzers ausgegeben. Mit &lt;br /&gt;
&lt;br /&gt;
 crontab -e&lt;br /&gt;
kann die &amp;lt;code&amp;gt;crontab&amp;lt;/code&amp;gt; geändert werden. Eine Crontab-Datei enthält Zeilen mit normalerweise sechs durch Leerzeichen getrennte Spalten:&lt;br /&gt;
* Minuten&lt;br /&gt;
* Stunden&lt;br /&gt;
* Tage&lt;br /&gt;
* Monate&lt;br /&gt;
* Wochentage&lt;br /&gt;
* Auszuführender Befehl / Datei&lt;br /&gt;
Beispiel: &lt;br /&gt;
 2 3 * * * cp src backup&lt;br /&gt;
 @reboot echo &amp;quot;hallo&amp;quot;&lt;br /&gt;
 */10 * * * * echo &amp;quot;schon wieder&amp;quot;&lt;br /&gt;
&lt;br /&gt;
In der ersten Zeile wird der cron-Dämon angewiesen, immer um 3:02 Uhr morgens an jedem Tag die Datei &amp;lt;code&amp;gt;src&amp;lt;/code&amp;gt; nach &amp;lt;code&amp;gt;backup&amp;lt;/code&amp;gt; zu kopieren. In der zweiten Zeile wird bei jedem Boot-Vorgang ein &amp;quot;hallo&amp;quot; per Mail(?) an den jeweiligen Benutzer geschickt. Die letzte Zeile wird alle 10 Minuten ausgeführt. Zu den weiteren &amp;quot;@-Zeiten&amp;quot; siehe http://library.linode.com/linux-tools/utilities/cron.&lt;br /&gt;
&lt;br /&gt;
==== /etc/cron.weekly u.a. ====&lt;br /&gt;
&lt;br /&gt;
Ausführbare Dateien in den Verzeichnissen &amp;lt;code&amp;gt;/etc/cron.daily&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/etc/cron.weekly&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;/etc/cron.monthly&amp;lt;/code&amp;gt; werden von &amp;lt;code&amp;gt;anacron&amp;lt;/code&amp;gt; und/oder &amp;lt;code&amp;gt;cron&amp;lt;/code&amp;gt; periodisch ausgeführt.&lt;br /&gt;
&lt;br /&gt;
Gegenüber der &amp;lt;code&amp;gt;crontab&amp;lt;/code&amp;gt;-Methode ergibt sich daraus ein Vorteil bei Rechnern, die nicht 24 Stunden im Betrieb sind. Bei [[Debian]] muss dafür jedoch anacron nachinstalliert werden (als root):&lt;br /&gt;
  aptitude install anacron&lt;br /&gt;
&lt;br /&gt;
Die Dateinamenskonvention in den Verzeichnissen &amp;lt;code&amp;gt;/etc/cron.daily&amp;lt;/code&amp;gt; etc. ist recht restriktiv. Siehe dazu die [[man]]-pages von &amp;lt;code&amp;gt;run-parts&amp;lt;/code&amp;gt;. Um zu sehen, ob das eigene Skript die Namenskonvention einhält, kann man &lt;br /&gt;
  run-parts --test /etc/cron.daily&lt;br /&gt;
ausführen. Es wird eine Liste derjenigen Skripte ausgegeben, die die Namenskonvention einhält.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Feststellen, ob Script von Cron gestartet wurde ====&lt;br /&gt;
&lt;br /&gt;
Siehe https://stackoverflow.com/questions/33354864/how-to-check-if-linux-shell-script-is-executed-by-a-cronjob :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
if [ -t 0 ]; then&lt;br /&gt;
   echo &amp;quot;I&#039;m on a TTY, this is interactive.&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
   logger &amp;quot;My output may get emailed, or may not. Let&#039;s log things instead.&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Benutzerverwaltung ==&lt;br /&gt;
&lt;br /&gt;
=== neuer Benutzer ===&lt;br /&gt;
&lt;br /&gt;
* Einen neuen Benutzer legt man am Besten mit &amp;lt;code&amp;gt;adduser NEUERNUTZER &amp;lt;/code&amp;gt; an. Im Gegensatz zu &amp;lt;code&amp;gt;useradd &amp;lt;/code&amp;gt; wird dabei gleich ein /home-Verzeichnis angelegt. Ein Passwort wird dabei auch gleich abgefragt.&lt;br /&gt;
&lt;br /&gt;
=== Benutzer-Nummer ===&lt;br /&gt;
&lt;br /&gt;
* Die [http://www.unixtutorial.org/2008/01/how-to-find-uid-in-unix/ UID findet man mit dem Befehl &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt;].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Konsolen-Benutzer ohne Passwort ===&lt;br /&gt;
* Für einen Benutzer ohne Passwort (beim Login auf Shell-Ebene muss man nur den Login-Namen, aber kein Passwort eingeben)&amp;lt;ref&amp;gt;Vergleiche http://onlyubuntu.blogspot.com/2008/06/howto-enable-empty-password-login-in.html.&amp;lt;/ref&amp;gt; legt man ihn in folgenden zwei Schritten an:&lt;br /&gt;
  adduser userWithoutPassword&lt;br /&gt;
  passwd -d userWithoutPassword&lt;br /&gt;
&lt;br /&gt;
=== AutoLogin auf Konsole ===&lt;br /&gt;
&lt;br /&gt;
==== AutoLogin unter SysV ====&lt;br /&gt;
Ein automatisches Login erreicht man mit dem Paket [http://wiki.ubuntuusers.de/autologin rungetty]:&lt;br /&gt;
  aptitude install rungetty&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Danach muss man in &amp;lt;code&amp;gt;/etc/init/tty1.conf&amp;lt;/code&amp;gt; die Zeile &amp;lt;code&amp;gt;exec /sbin/getty 38400 tty1&amp;lt;/code&amp;gt; durch folgende Zeile ersetzen:&lt;br /&gt;
  exec /sbin/rungetty --autologin namedesbenutzers tty1&lt;br /&gt;
&lt;br /&gt;
Bei anderen Linux-Systemen (z.B. [[Debian]] 6.0 Squeeze) muss man in der &amp;lt;code&amp;gt;/etc/inittab&amp;lt;/code&amp;gt; die Zeile &amp;lt;code&amp;gt;1:2345:respawn:/sbin/getty 38400 tty1&amp;lt;/code&amp;gt; durch folgende Zeile ersetzen:&lt;br /&gt;
  1:2345:respawn:/sbin/rungetty --autologin namedesbenutzers tty1&lt;br /&gt;
&lt;br /&gt;
Nach dem Parameter &amp;lt;code&amp;gt;tty1&amp;lt;/code&amp;gt; kann man noch ein Kommando angeben, das automatisch ausgeführt wird. Ein textbasierter Music-Client lässte sich daher durch Aufruf von &amp;lt;code&amp;gt;ncmpcpp&amp;lt;/code&amp;gt; erstellen; bei Beenden des Programms wird es dann automatisch wieder gestartet. Dazu muss allerdings zuvor der [[MPD]]-Server installiert sein.&lt;br /&gt;
&lt;br /&gt;
==== AutoLogin unter Systemd ====&lt;br /&gt;
&lt;br /&gt;
Siehe dazu http://noctus.net/2011/mingetty-und-systemd&lt;br /&gt;
&lt;br /&gt;
=== Weiterführendes ===&lt;br /&gt;
&lt;br /&gt;
* Die ct stellte [http://www.ct.de/1103122 Skripte für ein manipulationssicheres Linux] vor (c&#039;t 3/2011 S. 122ff.).&lt;br /&gt;
&lt;br /&gt;
* http://de.m.wikipedia.org/wiki/Unix-Kommandos#Benutzer-_und_Rechteverwaltung&lt;br /&gt;
&lt;br /&gt;
== Virtualisierung ==&lt;br /&gt;
&lt;br /&gt;
* [ftp://ftp.freiesmagazin.de/2009/freiesMagazin-2009-05.pdf freiesmagazin.de Mai 2009] zeigt, wie man einen virtuellen Rechner mittels KVM am Heimrechner einrichtet.&lt;br /&gt;
* Open VirtualBox (von Oracle) wird z.B. bei Ubuntu mitgeliefert.&lt;br /&gt;
&lt;br /&gt;
* [[Docker]] ist im Standardpaketumfang von [[Linux Mint]] enthalten.&lt;br /&gt;
&lt;br /&gt;
* LXC ist ebenfalls eine Container-Lösung&lt;br /&gt;
&lt;br /&gt;
== Shells ==&lt;br /&gt;
&lt;br /&gt;
=== Dokumentation für bash (Kommandozeile/Konsole) ===&lt;br /&gt;
&lt;br /&gt;
* [http://tldp.org/LDP/abs/html/index.html Advanced Bash Shell Scripting Guide] mit vielen Beispielen.&lt;br /&gt;
* [http://mywiki.wooledge.org/BashPitfalls Häufige Fehler bei der Bash-Programmierung]&lt;br /&gt;
* [http://linuxconfig.org/Bash_scripting_Tutorial Bash Tutorial]&lt;br /&gt;
&lt;br /&gt;
=== Tab-Completion ===&lt;br /&gt;
&lt;br /&gt;
Wenn man in der Bash die Tabulatortaste drückt, wird der gerade angefangene Befehl, der gerade angefangene Dateiname usw. vervollständigt bzw. bei zweimaligem Drücken weitere Vervollständigungen angeboten. &lt;br /&gt;
&lt;br /&gt;
Eine deutliche Erweiterung dieser Funktionalität auch für Optionen für verschiedene Kommandozeilentools bietet das Paket &amp;lt;code&amp;gt;bash-completion&amp;lt;/code&amp;gt;:&lt;br /&gt;
  sudo aptitude install bash-completion&lt;br /&gt;
&lt;br /&gt;
==== Autovervollständigung für Rechnernamen ====&lt;br /&gt;
Bei der Vervollständigung für Rechnernahmen, z.B. für den [[ssh]]-Befehl, schaut die Vervollständigung regelmäßig in die Datei &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt;.&lt;br /&gt;
Möchte man weitere Rechnernamen aufnehmen, muss man die Umgebungsvariable $HOSTFILE auf eine Datei mit Rechnernamen setzen:&amp;lt;ref&amp;gt;Vgl. http://www.linux-magazine.com/Online/Features/Bash-Tips-Autocompletion .&amp;lt;/ref&amp;gt;&lt;br /&gt;
  export HOSTFILE=&amp;quot;/home/USER/myhostfile&amp;quot;&lt;br /&gt;
Um dies bei jedem Start der Bash automatisch zu tun, fügt man diese Zeile am Ende der &amp;lt;code&amp;gt;.bashrc&amp;lt;/code&amp;gt; im Homeverzeichnis des jeweiligen Benutzers ein.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In der entsprechenden Datei (im Beispiel /home/USER/myhostfile) werden die Rechner Zeile für Zeile eingetragen:&lt;br /&gt;
  fritz.box&lt;br /&gt;
  pia2016.de&lt;br /&gt;
&lt;br /&gt;
=== Gefrorene Shell ===&lt;br /&gt;
&lt;br /&gt;
Mittels Strg-S kann man das Terminal anhalten (XOFF). Mittels Strg-Q geht es wieder weiter (XON).&lt;br /&gt;
&lt;br /&gt;
=== Ablaufsteuerung ===&lt;br /&gt;
==== if-Verzweigung ====&lt;br /&gt;
&lt;br /&gt;
Der Rückgabewert 0 einer Funktion oder eines Kommando wird als wahr gewertet.&lt;br /&gt;
&lt;br /&gt;
Damit gibt &lt;br /&gt;
  if true; then echo eins; else echo zwei; fi;&lt;br /&gt;
&amp;quot;eins&amp;quot; aus.&lt;br /&gt;
&lt;br /&gt;
Die Negation erreicht man mit dem Operator &amp;lt;code&amp;gt;!&amp;lt;/code&amp;gt;:&lt;br /&gt;
  if ! true; then echo eins; else echo zwei; fi;&lt;br /&gt;
liefert &amp;quot;zwei&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== while-Schleife ====&lt;br /&gt;
* Die bash-Shell bietet auch eine einfach zu nutzende While-Schleife. Beispiel:&lt;br /&gt;
  while true; do df -h; sleep 50s; echo `date`; done;&lt;br /&gt;
* Das kann man auch mit einer Pipe kombinieren (diese Schleife konvertiert Musikdateien, die nur nach der Tracknummer benannt sind, in TrackNr.mp3 um):&lt;br /&gt;
  find /mnt/Daten/MusikSorted/ | grep &amp;quot;.*/[0-9][0-9]$&amp;quot; | (while read i; do mv &amp;quot;$i&amp;quot; &amp;quot;$i.mp3&amp;quot;; done; )&lt;br /&gt;
==== Funktionen ====&lt;br /&gt;
* Funktionen in einem Shell-Script sind einfach definiert:&lt;br /&gt;
  function meineFunktion() {&lt;br /&gt;
    echo Hallo welt und $1;&lt;br /&gt;
  }&lt;br /&gt;
  # Aufruf:&lt;br /&gt;
  meineFunktion Tina&lt;br /&gt;
  # Ausgabe: Hallo welt und Tina&lt;br /&gt;
&lt;br /&gt;
=== Variablen ===&lt;br /&gt;
* Array-Variablen können z.B. folgendermaßen Werte zugewiesen werden:&lt;br /&gt;
  meinArray=(eins zwei drei vier)&lt;br /&gt;
&lt;br /&gt;
* Ein komisches Verhalten zieht &amp;lt;code&amp;gt;declare&amp;lt;/code&amp;gt; innerhalb einer Funktion bei: Es begrenzt die Sichtbarkeit der Variablen auf den Funktionsbereich. Wenn globale Variablen zum Informationsaustausch zwischen Funktion und aufrufendem Skript genutzt werden sollen, sollte declare in der Funktion also besser nicht genutzt werden.&lt;br /&gt;
&lt;br /&gt;
=== Parameteroptionen verarbeiten ===&lt;br /&gt;
&lt;br /&gt;
[http://www.mkssoftware.com/docs/man1/getopts.1.asp getopts], ein in der Bash enthaltenes Kommando, hilft Kommandozeilenoptionen zu verarbeiten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://www.redhat.com/en/blog/arguments-options-bash-scripts&lt;br /&gt;
&lt;br /&gt;
=== Exit-Status ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  echo $?&lt;br /&gt;
wird der Rückgabewert des unmittelbar davor ausgeführten Shell-Kommandos/Skripts ausgegeben.&lt;br /&gt;
&lt;br /&gt;
Das kann z.B. für einen Abbruch genutzt werden:&lt;br /&gt;
  do_something;  &lt;br /&gt;
  exit_status=$?;&lt;br /&gt;
  if (($exit_status)); then&lt;br /&gt;
    echo do_something failed.;&lt;br /&gt;
    exit $exit_status;&lt;br /&gt;
  fi;&lt;br /&gt;
&lt;br /&gt;
Die Kurzform für die ersten drei Zeilen wäre:&lt;br /&gt;
  if do_something; then&lt;br /&gt;
&lt;br /&gt;
=== Debugging ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  set -x&lt;br /&gt;
wird Tracing eingeschaltet: Jeder Script-Befehl wird vor der Ausführung auf der Konsole ausgegeben.&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  set -e&lt;br /&gt;
wird grundsätzlich das Script bei einem erfolglosen Befehl abgebrochen.&lt;br /&gt;
&lt;br /&gt;
=== Unit Tests ===&lt;br /&gt;
&lt;br /&gt;
[https://github.com/pgrange/bash_unit Bash_unit] ist ein Paket zum Erstellen von Unit-Tests für Bash.&lt;br /&gt;
&lt;br /&gt;
=== Verarbeiten von Textstreams ===&lt;br /&gt;
&lt;br /&gt;
* Sinnvolle Hilfen zum Verarbeiten von Textstreams/Auslesen von Dateien&lt;br /&gt;
** [[wc]] zählt Worte und Zeilen&lt;br /&gt;
** [[cut]] liefert bestimmte Teile einer Zeile&lt;br /&gt;
** [[grep]] sucht nach Textbestandteilen&lt;br /&gt;
** [[sed]] hilft beim Editieren einer Datei auf der Kommandozeile bzw. in Shell-Skripten, siehe z.B. der [http://www.freiesmagazin.de/ftp/2010/freiesMagazin-2010-03.pdf Artikel zu sed im &amp;quot;freien Magazin&amp;quot;].&lt;br /&gt;
** [[printf]] ermöglicht wie in der Programmiersprache C das formatierte Ausgeben von Zahlen und Zeichen&lt;br /&gt;
  printf &#039;%s mit führenden Nullen: %05d&#039; Zahl 76&lt;br /&gt;
&lt;br /&gt;
Falls die Standardausgabe zu viel gepuffert wird kann man dies durch das Kommando &amp;lt;code&amp;gt;stdbuf -oL&amp;lt;/code&amp;gt; in Zeilenpufferung ändern.&amp;lt;ref&amp;gt;Vgl. https://www.turnkeylinux.org/blog/unix-buffering .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Piping ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Linux kennt zwei Standard-Ausgabe-Streams, stdout und stderr. &lt;br /&gt;
&lt;br /&gt;
Die für stderr bestimmten Ausgaben können mit dem Operator &amp;quot;2&amp;gt;&amp;quot; in eine Datei umgeleitet werden.&lt;br /&gt;
Beispiel:&lt;br /&gt;
  find / -name &#039;*.mp3&#039; 2&amp;gt; /dev/null&lt;br /&gt;
&lt;br /&gt;
* [http://www.easylinux.de/2005/09/084-umleitungen/ Einführung in Pipes]&lt;br /&gt;
&lt;br /&gt;
==== heredoc ====&lt;br /&gt;
&lt;br /&gt;
Man kann auch kleine Textschnipsel in ein Skript selbst schreiben und dann weiterleiten:&lt;br /&gt;
&lt;br /&gt;
  cat &amp;lt;&amp;lt;EOF&lt;br /&gt;
  Dies ist ein Text, der&lt;br /&gt;
  an cat weitergegeben wird.&lt;br /&gt;
  EOF&lt;br /&gt;
&lt;br /&gt;
Statt EOF kann in den so genannten &amp;quot;heredocs&amp;quot; auch irgendein anderes Wort &lt;br /&gt;
zur Bezeichnung des Endes des heredocs geschrieben werden. Es muss nur&lt;br /&gt;
das Gleiche am Anfang und am Ende sein.&lt;br /&gt;
&lt;br /&gt;
==== sed ====&lt;br /&gt;
Beispiel für sed für die Umwandlung in eine Playlist:&lt;br /&gt;
  sed -e &#039;s/..\/Musik\/Music/dhMusic/&#039; -e &#039;s/\/[0-9][0-9] /\//&#039; &amp;lt;playlistOriginal.m3u &amp;gt; playListNeu.m3u&lt;br /&gt;
In der neuen Playlist &lt;br /&gt;
* ist der Pfadanfang geändert von ../Musik/Musik nach dhMusic und&lt;br /&gt;
* sind die Trackziffern inklusive des Leerzeichens weggelassen.&lt;br /&gt;
&lt;br /&gt;
Etwas komplizierter&lt;br /&gt;
  sed -e &#039;s:\\:/:g&#039; -e &#039;s:../Musik/Music/\(.\):sortedMusic/\1/\1:&#039; -e &#039;s:/\([0-9][0-9]\) :/\1_-_:&#039; -e &#039;s/ /_/g&#039; &amp;lt; playlistOriginal.m3u &amp;gt; playListNeu.m3u&lt;br /&gt;
&lt;br /&gt;
* Zunächst wird der Backslash durch den Slash ersetzt.&lt;br /&gt;
* Dann der Pfadanfang geändert&lt;br /&gt;
* Außerdem wird die Pfadstruktur um eine Ebene erweitert: Den Anfangsbuchstaben des Interpreten&lt;br /&gt;
* Zwischen die Trackziffern und den Namen des Lieds werden noch ein Trennstrich mit zwei Leerzeichen eingefügt.&lt;br /&gt;
* Schließlich werden alle Leerzeichen durch einen Unterstrich ersetzt.&lt;br /&gt;
&lt;br /&gt;
Mit dem Modifizierer &amp;lt;code&amp;gt;-i&amp;lt;/code&amp;gt; (oder &amp;lt;code&amp;gt;--in-place&amp;lt;/code&amp;gt;) kann eine Datei geändert werden, die zugleich als Eingabestream fungiert.&lt;br /&gt;
&lt;br /&gt;
=== Datum ===&lt;br /&gt;
&lt;br /&gt;
  date&lt;br /&gt;
zeigt das aktuelle Datum an.&lt;br /&gt;
  date +%s&lt;br /&gt;
zeigt die seit 1970 vergangenen Sekunden an.&lt;br /&gt;
  date -d &amp;quot;2100-1-1 -1 day&amp;quot;&lt;br /&gt;
zeigt den letzten Tag des 21. Jahrhunderts (31.12.2099) an.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [http://tldp.org/LDP/abs/html/timedate.html weitere Beispiele im Advanced Bash Scripting Guide].&lt;br /&gt;
&lt;br /&gt;
=== Interaktion mit Desktop ===&lt;br /&gt;
==== Zwischenablage ====&lt;br /&gt;
&lt;br /&gt;
* Mit [http://www.linux-community.de/Archiv/Tipp-der-Woche/Xclip-Zwischenablage-fuer-die-Konsole xclip] lässt sich der Inhalt der Shell-Pipe in die Zwischenablage kopieren. Der Inhalt steht dann beispielsweise in einer KDE- oder Gnome-Anwendung zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
==== Nachricht an Desktop ====&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  notify-send text&lt;br /&gt;
kann eine Nachricht (text) an den Desktop gesendet werden, die dem Benutzer angezeigt wird.&amp;lt;ref&amp;gt;https://linuxnetz.wordpress.com/2010/04/21/notify-send/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dafür ist allerdings das Paket &amp;lt;code&amp;gt;libnotify-bin&amp;lt;/code&amp;gt; zu installieren:&lt;br /&gt;
  sudo aptitude install libnotify-bin&lt;br /&gt;
&lt;br /&gt;
==== User-Dialog ====&lt;br /&gt;
&lt;br /&gt;
Unter [[Gnome]] lässt sich mit &amp;lt;code&amp;gt;zenity&amp;lt;/code&amp;gt; von der [[Bash]] mit dem Nutzer in Dialog treten (Ja/Nein, User-Eingabezeile, ...).&lt;br /&gt;
&lt;br /&gt;
==== Arbeitsflächen wechseln ====&lt;br /&gt;
&lt;br /&gt;
Das Paket &amp;lt;code&amp;gt;wmctrl&amp;lt;/code&amp;gt; erlaubt den Wechsel zwischen den Arbeitsflächen des Desktops:&lt;br /&gt;
  wmctrl -s arbeitsflächennummer&lt;br /&gt;
wobei arbeitsflächennummer die mit 0 beginnende Nummer des Desktops ist.&amp;lt;ref&amp;gt;http://www.linuxquestions.org/questions/linux-desktop-74/how-to-specify-a-gnome-workpace-an-application-will-launch-in-555764/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Paket &amp;lt;code&amp;gt;devilspie&amp;lt;/code&amp;gt; erlaubt es, Programme nach bestimmten Kriterien auf andere Arbeitsflächen/Viewports zu verfrachten. Dazu muss beispielsweise für &amp;lt;code&amp;gt;xterm&amp;lt;/code&amp;gt; folgende Datei &amp;lt;code&amp;gt;~/.devilspie/xterm.ds&amp;lt;/code&amp;gt; (Die Endung &amp;lt;code&amp;gt;.ds&amp;lt;/code&amp;gt; ist wichtig) erstellt werden:&lt;br /&gt;
&lt;br /&gt;
  (if &lt;br /&gt;
     (is (application_name) &amp;quot;xterm&amp;quot;)&lt;br /&gt;
     (begin&lt;br /&gt;
        (set_viewport 3)&lt;br /&gt;
     )&lt;br /&gt;
  )&lt;br /&gt;
&lt;br /&gt;
Anschließend muss &amp;lt;code&amp;gt;devilspie&amp;lt;/code&amp;gt; gestartet werden. Bei den folgenden Aufrufen von &amp;lt;code&amp;gt;xterm&amp;lt;/code&amp;gt; wird das Fenster automatisch auf die Arbeitsfläche 3 landen.&lt;br /&gt;
&lt;br /&gt;
Eine Möglichkeit, mittels  wmctrl und bash-Script Compiz-Viewports zu kontrollieren, findet sich [http://www.linuxquestions.org/questions/programming-9/bash-script-for-automatic-viewport-changing-and-other-wm-stuff-works-with-compiz-838827/ hier] und [http://forum.ubuntuusers.de/topic/wuerfel-per-bash-drehen/#post-1206881 hier], letzteres basierend auf [http://sfyang-en.blogspot.com/2008/02/rotate-cube-in-compiz-with-wmctrl.html diesem Blog].&lt;br /&gt;
&lt;br /&gt;
==== Terminalfenstertitel ====&lt;br /&gt;
&lt;br /&gt;
Der Terminaltitel lässt sich mit einer Escape-Sequenz setzen:&lt;br /&gt;
  echo -ne &amp;quot;\033]0;SOME TITLE HERE\007&amp;quot;&lt;br /&gt;
Achtung: Das funktioniert bei mir aber nur innerhalb eines Shell-Skripts!&lt;br /&gt;
&lt;br /&gt;
Im Normalfall bringt das aber nichts, wenn der Prompt wieder angezeigt wird, der normalerweise eine Escape-Sequenz zum Ändern des Terminaltitels beinhaltet. Daher sollte man diesen zurücksetzen:&lt;br /&gt;
  PS1=&amp;quot;\u@\h:\w\$ &amp;quot;&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* http://askubuntu.com/questions/22413/how-to-change-gnome-terminal-title&lt;br /&gt;
&lt;br /&gt;
==== Interaktion der Shell mit Maus ====&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://unix.stackexchange.com/questions/106736/detect-if-mouse-button-is-pressed-then-invoke-a-script-or-command&lt;br /&gt;
* http://positon.org/listen-to-mouse-events-in-linux-text-mode&lt;br /&gt;
* http://bamboofields.net/Bash%20-%20Linux%20raw%20mouse%20events%20bash%20click&lt;br /&gt;
* [https://stackoverflow.com/questions/8361263/detect-mouse-click-in-bash-script xdotool in an X-Environment]&lt;br /&gt;
* https://ubuntuforums.org/showthread.php?t=1017150&lt;br /&gt;
&lt;br /&gt;
== Dateiverwaltung ==&lt;br /&gt;
&lt;br /&gt;
=== Dateisuche ===&lt;br /&gt;
&lt;br /&gt;
==== Suchen auch in Unterordnern ====&lt;br /&gt;
Ein rekursives MS-DOS-&amp;lt;code&amp;gt;dir&amp;lt;/code&amp;gt; lässt sich mit dem Befehl find erreichen:&lt;br /&gt;
&lt;br /&gt;
  find / -name &amp;quot;*xy*&amp;quot;&lt;br /&gt;
   &lt;br /&gt;
Es findet alle Dateien, die ein xy im Dateinamen enthalten und gibt den vollständigen Pfad aus. Die Anführungszeichen sind wichtig, ansonsten würde die Shell bereits die Sternchen auswerten.&lt;br /&gt;
&lt;br /&gt;
==== Suchen nach Dateinamen und Wörtern im Dateiinhalt ====&lt;br /&gt;
&lt;br /&gt;
Will man an Hand des Dateinamens eine Vorauswahl der Dateien treffen, deren Inhalt auf ein bestimmtes Wort untersucht wird, kann man &amp;lt;code&amp;gt;find&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;grep&amp;lt;/code&amp;gt; kombinieren:&lt;br /&gt;
&lt;br /&gt;
  find . -name package.json -print0 | xargs -0 grep mylib&lt;br /&gt;
&lt;br /&gt;
Dieser Befehl sucht im aktuellen Verzeichnis und dessen Unterverzeichnissen nach Dateien mit dem Namen package.json. In diesen sucht es nach der Zeichenfolge &amp;quot;mylib&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Berechtigungen ===&lt;br /&gt;
* &#039;&#039;&#039;Berechtigungen&#039;&#039;&#039; für automatisch eingebundene &#039;&#039;&#039;FAT32&#039;&#039;&#039;-Laufwerke/Festplatten werden in der Datei &#039;&#039;/etc/fstab&#039;&#039; vorgegeben. Sie können nicht mit &#039;&#039;chmod&#039;&#039; oder &#039;&#039;chown&#039;&#039; geändert werden.&lt;br /&gt;
* Informationen u.a. zum SUID-Bit und zum Abschalten auf ganzen Partitionen finden sich auf &lt;br /&gt;
** dem [http://www.informatikserver.at/selflinux/html/grundlagen_sicherheit07.html Informatikserver.at]&lt;br /&gt;
** https://www.informatik-aktuell.de/betrieb/betriebssysteme/rechte-im-dateisystem-mehr-als-nur-rwx.html&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  namei -om PATH&lt;br /&gt;
können die einzelnen Berechtigungen eines Pfades PATH angezeigt werden.&lt;br /&gt;
&lt;br /&gt;
==== SUID ====&lt;br /&gt;
Mit Setzen des SUID-Bits für ein binäres Programm (also keinem Shell-Skript) mit &lt;br /&gt;
  chmod u+s PROGRAMM&lt;br /&gt;
wird der Benutzer, der das Programm aufrufen darf (z.B. Ausführungs-Bit &amp;quot;x&amp;quot; bei der einschlägigen Gruppe gesetzt), das Programm unter dem Benutzer, der Eigentümer des Programms ist, ausführen.&lt;br /&gt;
&lt;br /&gt;
==== SGID ====&lt;br /&gt;
Mit Setzen des SGID-Bits für ein Verzeichnis erben neu angelegte Dokumente/Verzeichnisse in diesem Verzeichnis dessen Gruppe als Gruppenzugehörigkeit.&lt;br /&gt;
&lt;br /&gt;
==== umask ====&lt;br /&gt;
&lt;br /&gt;
In den Konfigurationsdateien &amp;lt;code&amp;gt;/etc/profile&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;~/.profile&amp;lt;/code&amp;gt; (z.B. umask 027) oder &amp;lt;code&amp;gt;/etc/login.defs&amp;lt;/code&amp;gt; (z.B. UMASK 027), je nach Linux-Ausgabe, kann zentral die Standard-Umask vorgegeben werden. Damit kann insbesondere standardmäßig vorgegeben werden, dass die erzeugten Dokumente nicht world-readable sind (umask 007).&lt;br /&gt;
&lt;br /&gt;
Angeblich&amp;lt;ref&amp;gt; Vgl. https://forum.chip.de/discussion/1838389/default-umask&amp;lt;/ref&amp;gt; kann man auch user-spezifisch die Default-Umask setzen: Siehe dazu /etc/default/useradd oder /etc/adduser.conf&lt;br /&gt;
&lt;br /&gt;
=== Speicherplatz ===&lt;br /&gt;
* Den &#039;&#039;&#039;freien Platz auf der Festplatte&#039;&#039;&#039; erfährt man durch &lt;br /&gt;
  df -h &lt;br /&gt;
* Den vom aktuellen Verzeichnis und seinen Unterverzeichnis &#039;&#039;&#039;belegten Platz&#039;&#039;&#039; erfährt man durch &lt;br /&gt;
  du --human-readable --summarize&lt;br /&gt;
* Um zu sehen, welcher Platz von den einzelnen Dateien bzw. Verzeichnisse des Arbeitsverzeichnisses eingenommen wird, hilft das Tool [[xargs]]. Z.B. um alle Dateien/Verzeichnisse im Gigabyte-Bereich zu finden:&lt;br /&gt;
  ls --almost-all -1  | xargs -n1 -d &#039;\n&#039;  du -h --summarize |  sed -n -e &#039;/[[:digit:]]G\s/p&#039;&lt;br /&gt;
&lt;br /&gt;
=== Mounten ===&lt;br /&gt;
&lt;br /&gt;
==== Erkennen einer CD-ROM ====&lt;br /&gt;
&lt;br /&gt;
Möglicherweise hilft bei Nichterkennung einer CD-ROM das [http://ignorantguru.github.io/udevil/ Einschalten des Kernel-Pollings (siehe unteren Teil der verlinkten Seite)].&lt;br /&gt;
&lt;br /&gt;
==== UUID ====&lt;br /&gt;
&lt;br /&gt;
Die UUIDs der Festplattenpartitionen lassen sich mit &amp;lt;code&amp;gt;sudo blkid&amp;lt;/code&amp;gt; anzeigen.&lt;br /&gt;
In der &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; ersetzt man das übliche &amp;lt;code&amp;gt;/dev/sdXX&amp;lt;/code&amp;gt; durch &amp;lt;code&amp;gt;UUID=12345678&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== LABEL ====&lt;br /&gt;
&lt;br /&gt;
Eine ext2/ext3/ext4-Partition lässt sich mit &amp;lt;code&amp;gt;sudo e2label&amp;lt;/code&amp;gt; mit einem Label versehen. &lt;br /&gt;
In der &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; ersetzt man das übliche &amp;lt;code&amp;gt;/dev/sdXX&amp;lt;/code&amp;gt; durch &amp;lt;code&amp;gt;LABEL=MyPart&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Dauerhaftes Mounten einer NTFS-Partition ====&lt;br /&gt;
&lt;br /&gt;
Um eine NTFS-Partition (z.B. auf /dev/sda2) dauerhaft (also schon beim Booten) zu mounten, fügt man in die Datei &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; folgende Zeile hinzu:&lt;br /&gt;
  /dev/sda2       /mnt/winC    ntfs    defaults,umask=011,uid=BENUTZER,gid=BENUTZERGRUPPE	0	0&lt;br /&gt;
wobei BENUTZER und BENUTZERGRUPPE durch die entsprechenden Benutzernamen bzw. Gruppennammen zu ersetzen sind.&lt;br /&gt;
&lt;br /&gt;
Außerdem muss der Mount-Point erzeugt werden:&lt;br /&gt;
  mkdir /mnt/winC&lt;br /&gt;
&lt;br /&gt;
Damit werden können aber alle Benutzer alle Daten dieses  Laufwerks lesen und schreiben. Will man dies nicht, muss man mit den Optionen &amp;lt;code&amp;gt;uid=&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;gid=&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;umask=&amp;lt;/code&amp;gt; eine Lösung finden.&lt;br /&gt;
&lt;br /&gt;
Unter [[Debian]] ist für den Schreibzugriff auf [[NTFS]] die Installation des Pakets &amp;lt;code&amp;gt;ntfs-3g&amp;lt;/code&amp;gt; notwendig:&lt;br /&gt;
  aptitude install ntfs-3g&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Korrupte NTFS-Partition =====&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  sudo ntfsfix /dev/sdb1&lt;br /&gt;
kann die NTFS-Partition auf /dev/sdb1 repariert werden.&amp;lt;ref&amp;gt;http://askubuntu.com/questions/74105/how-do-you-repair-an-input-output-error-in-an-ntfs-partition&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== USB-Datenträger unter Systemd ====&lt;br /&gt;
&lt;br /&gt;
Wenn man eine USB-Disk nur manchmal beim Start eingesteckt hat, sie in dem Fall aber automatisch mounten will, helfen möglicherweise die &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt;-Optionen &amp;lt;code&amp;gt;nofail,nobootwait&amp;lt;/code&amp;gt;.&amp;lt;ref&amp;gt;Siehe http://www.reddit.com/r/archlinux/comments/1lafu2/fstab_how_to_automount_but_ignore_if_its_not/ , https://bbs.archlinux.org/viewtopic.php?id=147478&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Unter Systemd kann man auch die Optionenkombination &amp;lt;code&amp;gt;noauto,x-systemd.automount&amp;lt;/code&amp;gt; in &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; verwenden. Dann wird die entsprechende Platte erst dann gemountet, wenn auf den Mountpunkt zugegriffen wird.&amp;lt;ref&amp;gt;Vgl. https://bbs.archlinux.org/viewtopic.php?id=147478&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* http://www.wrigley.me.uk/wp/2012/12/03/automounting-usb-disk-on-boot-with-systemd-in-fedora/&lt;br /&gt;
* https://bbs.archlinux.org/viewtopic.php?id=147478&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines CD-Images ====&lt;br /&gt;
Um ein &#039;&#039;&#039;CD-Image zu betrachten&#039;&#039;&#039; kann man dieses folgendermaßen ins normale Dateisystem einhängen: &lt;br /&gt;
  mkdir zielpunkt&lt;br /&gt;
  sudo  mount -o loop -t iso9660 /pfad/zum/iso.image zielpunkt&lt;br /&gt;
  &lt;br /&gt;
Am Ende lässt es sich ganz normal mit&lt;br /&gt;
 &lt;br /&gt;
 umount /zielpunkt&lt;br /&gt;
&lt;br /&gt;
aushängen&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines FTP-Verzeichnisses ====&lt;br /&gt;
&lt;br /&gt;
* Zum Mounten eines FTP-Verzeichnisses hilft [http://blog.bumsdiekuh.net/archives/84-FTP-Server-ganz-einfach-mounten-mit-curlftpfs.html angeblich] curlftpfs ([http://www.exanto.de/sftp-und-ftp-unter-linux-mounten.html ausführlichere Anleitung]).&lt;br /&gt;
* Eine andere Möglichkeit scheint [http://wiki.ubuntuusers.de/Lufs Lufs] zu bieten.&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines ZIP-Archivs ====&lt;br /&gt;
&lt;br /&gt;
* [http://freshmeat.net/projects/fuse-zip fuse-zip(Freshmeat)], [http://linux.softpedia.com/get/System/Filesystems/fuse-zip-40109.shtml fuse-zip (Softpedia)], [http://code.google.com/p/fuse-zip/ fuse-zip (Google Code)]&lt;br /&gt;
* [http://www.inf.bme.hu/~mszeredi/avfs/ AVFS]&lt;br /&gt;
&lt;br /&gt;
==== Mounten via SSH ====&lt;br /&gt;
&lt;br /&gt;
* Übers Netzwerk kann man auch per [http://apps.sourceforge.net/mediawiki/fuse/index.php?title=Main_Page SSH-FUSE-Dateisystem] auf einen entfernten Rechner zugreifen. Das ist ein recht sicherer Zugriff, aber auch transparent, da die Dateien ins lokale Verzeichnis eingehängt (gemountet) werden können.&lt;br /&gt;
&lt;br /&gt;
==== Mounten von NFS ====&lt;br /&gt;
&lt;br /&gt;
Eine [[NFS]]-Freigabe (siehe /etc/exports auf dem Host) kann folgendermaßen gemountet werden:&lt;br /&gt;
  sudo mount 192.168.0.5:/srv/nfs/myhome /mnt/nfshome&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines WebDAV-Verzeichnisses ====&lt;br /&gt;
&lt;br /&gt;
* [[WebDAV]]-Verzeichnisse können auch dauerhaft gemountet werden, siehe [http://www.arvid-geiger.de/index.php?category_id=40&amp;amp;wikipage=WebDav hier].&lt;br /&gt;
&lt;br /&gt;
Um als normaler User WebDAV-Verzeichnisse einzuhängen benötigt die &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; etwa folgende Zeile (Beispiel für T-Online Mediencenter und Benutzer USER):&lt;br /&gt;
 &lt;br /&gt;
  https://webdav.magentacloud.de/ /home/USER/t-online  davfs   noauto,user,rw  0       0&lt;br /&gt;
&lt;br /&gt;
Zusätzlich muss der Mountpunkt noch angelegt werden:&lt;br /&gt;
  mkdir ~/t-online&lt;br /&gt;
&lt;br /&gt;
Davfs2 muss installiert werden und normalen Nutzern das Mounten erlaubt werden&lt;br /&gt;
  sudo aptitude install davfs2&lt;br /&gt;
  sudo dpkg-reconfigure davfs2 # Frage nach setuid mit &amp;quot;Ja&amp;quot; beantworten&lt;br /&gt;
&lt;br /&gt;
Der Benutzer muss noch der Gruppe &amp;lt;code&amp;gt;davfs2&amp;lt;/code&amp;gt; hinzugefügt werden:&lt;br /&gt;
  sudo addgroup USER davfs2&lt;br /&gt;
&lt;br /&gt;
Zur Vermeidung der Passwortabfrage sollte noch die Datei &amp;lt;code&amp;gt;/home/USER/.davfs2/secrets&amp;lt;/code&amp;gt; mit folgendem Inhalt angelegt werden:&amp;lt;ref&amp;gt;http://tomalison.com/reference/2010/04/03/webdav/&amp;lt;/ref&amp;gt;&lt;br /&gt;
  /home/USER/t-online   xy@t-online.de   password&lt;br /&gt;
&lt;br /&gt;
Die Datei sollte nur von USER einsehbar sein:&lt;br /&gt;
  chmod 600 /home/USER/.davfs2/secrets&lt;br /&gt;
&lt;br /&gt;
Dann kann das WebDAV-Verzeichnis gemountet werden:&lt;br /&gt;
  mount /home/USER/t-online&lt;br /&gt;
&lt;br /&gt;
Ein &amp;lt;code&amp;gt;auto&amp;lt;/code&amp;gt;-Einbinden in der &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; funktioniert nicht ohne Weiteres. Möglicherweise hilft die zusätzliche Option &amp;lt;code&amp;gt;_netdev&amp;lt;/code&amp;gt;, um das Einbinden bis zum Etablieren des Netzwerks zurückzustellen.&amp;lt;ref&amp;gt;Vgl. http://askubuntu.com/questions/277873/mount-webdav-fails-on-reboot&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch [http://skripta.de/Davfs2.html diese Anleitung zum Mounten des Telekom Mediencenters].&lt;br /&gt;
&lt;br /&gt;
==== Mounten einer Windows-Freigabe/Samba-Share ====&lt;br /&gt;
&lt;br /&gt;
* Um die [[Samba]]-Server im Netzwerk anzuzeigen, bitte &lt;br /&gt;
  nmbstatus&lt;br /&gt;
eingeben.&amp;lt;ref&amp;gt;Vgl. http://de.opensuse.org/SDB:Drucken_via_SMB_(Samba)_Share_bzw._Windows_Freigabe.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Um die von einem Samba-Server (z.B. Windows-Rechner) freigegebenen Ressourcen anzusehen, bitte &lt;br /&gt;
  smbclient -L sambaserver&lt;br /&gt;
eingeben, wobei &amp;lt;code&amp;gt;sambaserver&amp;lt;/code&amp;gt; der Name des Samba-Servers ist.&amp;lt;ref&amp;gt;http://www.tldp.org/HOWTO/SMB-HOWTO-8.html.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Mit Konqueror lässt sich graphisch durch die Samba-Freigaben browsen: Einfach &amp;lt;code&amp;gt;smb:/&amp;lt;/code&amp;gt; in die Adresszeile eingeben.&lt;br /&gt;
&lt;br /&gt;
* Samba-Mounts lassen sich in der /etc/fstab auch [http://www.justlinux.com/nhf/Filesystems/Mounting_smbfs_Shares_Permanently.html permanent einrichten].&lt;br /&gt;
** Siehe für die Freigabe einer [[Samba]]-Share und deren Mounten z.B. [http://forum.geizhals.at/t369562,2885141.html#2885141 hier] oder [http://de.opensuse.org/SDB:Auf_Windows-Freigaben_zugreifen hier (OpenSuse 8.1)].&lt;br /&gt;
** Auch [http://www.wiki.csoft.at/index.php/Netzwerklaufwerk_mit_Linux_hinzuf%C3%BCgen hier] gibt es ein Beispiel zum Mounten einer [[Windows-Freigabe]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines Loop-Devices ====&lt;br /&gt;
&lt;br /&gt;
Das Mounten eines Loop-Devices geht wie das Mounten eines normalen Block-Devices. Bei den Optionen in der /etc/fstab steht zusätzlich &amp;lt;code&amp;gt;loop&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* http://www.volkerschatz.com/unix/advmount.html&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines Sandwich-Dateisystems ====&lt;br /&gt;
&lt;br /&gt;
Das &#039;&#039;&#039;UnionFS&#039;&#039;&#039; und das &#039;&#039;&#039;AUFS&#039;&#039;&#039; wird in moderneren [[Linux]]-Distributionen von &#039;&#039;&#039;OverlayFS&#039;&#039;&#039; abgelöst.&lt;br /&gt;
&lt;br /&gt;
Beispiel: Der Inhalt des Verzeichnisses &amp;lt;code&amp;gt;lower&amp;lt;/code&amp;gt; sollte im Verzeichnis &amp;lt;code&amp;gt;together&amp;lt;/code&amp;gt; erscheinen, soweit er nicht vom Inhalt von &amp;lt;code&amp;gt;upper&amp;lt;/code&amp;gt; verdrängt wird:&lt;br /&gt;
  sudo mount -t overlayfs -o lowerdir=lower,upperdir=upper overlayfs together&lt;br /&gt;
Ist &amp;lt;code&amp;gt;upper&amp;lt;/code&amp;gt; beim Einhängen leer, sieht man alle Änderungen im Verzeichnis &amp;lt;code&amp;gt;together&amp;lt;/code&amp;gt; in &amp;lt;code&amp;gt;upper&amp;lt;/code&amp;gt;. &amp;lt;code&amp;gt;lower&amp;lt;/code&amp;gt; ändert sich nicht.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [http://askubuntu.com/questions/109413/how-do-i-use-overlayfs Kurzanleitung für OverlayFS]&lt;br /&gt;
* [https://git.kernel.org/cgit/linux/kernel/git/mszeredi/vfs.git/tree/Documentation/filesystems/overlayfs.txt?h=overlayfs.current OverlayFS-Technik]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ähnliche Funktionalität wie OverlayFS scheint &#039;&#039;&#039;Ovl.o&#039;&#039;&#039; zu bringen:&lt;br /&gt;
* [http://home.comcast.net/~artn/ovlfs/ovl.man.txt Manpage für ovl.o]&lt;br /&gt;
&lt;br /&gt;
==== Mounten eines iPhone-Dateisystems ====&lt;br /&gt;
&lt;br /&gt;
Sollte beim Anstecken eines iPhones über USB-Kabel an einen Linux-Rechner und anschließendem Entsperren des iPhones durch Wischen von unten nach oben der Ordner mit den Fotos und Videos nicht automatisch gemountet werden, hilft wahrscheinlich die Installation von &amp;lt;code&amp;gt;ifuse&amp;lt;/code&amp;gt;:&lt;br /&gt;
  sudo aptitude install ifuse&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== weitere Infoquelle für mount ====&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [http://pclosmag.com/html/issues/200709/page07.html Beschreibung von Mount-Optionen].&lt;br /&gt;
&lt;br /&gt;
=== Kopieren einer Audio-CD ===&lt;br /&gt;
&lt;br /&gt;
Angeblich funktioniert [[dd]] nicht mit Audio-CDs. &lt;br /&gt;
&lt;br /&gt;
Das einfachste Kommando zum Kopieren einer CD ist&amp;lt;ref&amp;gt;Siehe http://www.togaware.com/linux/survivor/Duplicate_Audio.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
  cdrdao copy&lt;br /&gt;
&lt;br /&gt;
Um trotzdem von der Kommandozeile (und nicht z.B. mit den grafischen Tools Brasero oder K3b) eine Audio-CD kopieren nutzt man &amp;lt;code&amp;gt;cdrdao&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  cdrdao read-cd --device /dev/cdrom --read-raw --datafile INHALT.bin VERZEICHNIS.toc # Kopiert CD-Inhalt und -Verzeichnis auf die Festplatte&lt;br /&gt;
  cdrdao write-cd --device /dev/cdrom VERZEICHNIS.toc # Kopiert CD-Inhalt auf neue Audio-CD&lt;br /&gt;
&lt;br /&gt;
Falls man beim Lesen Probleme bekommt und cdrdao an einer bestimmten Stelle hängen bleibt, sollte man den Paranoia-Mode reduzieren:&lt;br /&gt;
  cdrdao read-cd --device /dev/cdrom &#039;&#039;--paranoia-mode 0&#039;&#039; --read-raw --datafile INHALT.bin VERZEICHNIS.toc&lt;br /&gt;
&lt;br /&gt;
=== Backup ===&lt;br /&gt;
* [http://blog.beimax.de/2008/10/27/tagliches-inkrementelles-backup-mit-cron-und-tar-unter-linux/ Inkrementelles Backup mit cron und tar]&lt;br /&gt;
* [http://de.wikibooks.org/wiki/Linux-Kompendium:_Backups Linux-Kompendium: Backups]&lt;br /&gt;
* Siehe auch [[Programmierprojekte#P2P-Backup]]&lt;br /&gt;
* [http://wiki.ubuntuusers.de/dirvish Dirvish] ist eine recht simple Commandline-Lösung, die auf [[rsync]] und [[ssh]] basiert.&lt;br /&gt;
** [http://wiki.edseek.com/howto:dirvish Dirvish-HOWTO]&lt;br /&gt;
* [http://www.amanda.org/ Amanda] ist eine Open-Source-Lösung zum Backup mehrerer Clients (auch Windows) auf einem zentralen Server&lt;br /&gt;
* [http://www.getdropbox.com/pricing dropbox] bietet 2 GB - Webspeicherplatz zum Synchronisieren mehrerer Computer, aber auch als Webbackup nutzbar. Es gibt auch ein [https://www.dropbox.com/help/246/en Ubuntu-Repository für Dropbox].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open-Source Backup Produkte:&lt;br /&gt;
* [https://restic.net/ restic] - Kommandozeilenprogramm, geschrieben in [[Go]], siehe unten&lt;br /&gt;
* [https://borgbackup.readthedocs.io/en/stable/ Borg Backup], siehe [[BorgBackup]]&lt;br /&gt;
* [https://burp.grke.org/ Burp]&lt;br /&gt;
* [http://backuppc.sourceforge.net/info.html BackupPC] (serverseitige Lösung zum Backup vieler Clients, geschrieben in Perl, mit Web-Interface zur Administration)&lt;br /&gt;
* [http://www.amanda.org/ Amanda]&lt;br /&gt;
* [http://www.nongnu.org/storebackup/de/node14.html storebackup]&lt;br /&gt;
&lt;br /&gt;
Linux-Bordmittel: &amp;lt;code&amp;gt;dump&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;tar&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;smbtar&amp;lt;/code&amp;gt;, [http://www.orgapage.net/pages/server/linux/backup.php?OP_SITE=c2c6a3e534e145bb4b8df1f629e0d380 rsync], [http://www.bsi-fuer-buerger.de/daten/03080801.htm Tipps vom BSI], [http://www.linux-backup.net/ linux-backup.net]&lt;br /&gt;
&lt;br /&gt;
[http://linuxwiki.de/rsync/SnapshotBackups Umfangreiche Anleitung zu inkrementellem Backup] mit Hilfe von &amp;lt;code&amp;gt;rsync&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Andere Hilfsmittel: &amp;lt;code&amp;gt;[[unison]]&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
* [[MediaWiki]]: [http://www.mediawiki.org/wiki/Manual:Backing_up_a_wiki Anleitung zum Backup eines MediaWiki-Systems]&lt;br /&gt;
&lt;br /&gt;
==== Backup mit Borg ====&lt;br /&gt;
&lt;br /&gt;
===== Backup =====&lt;br /&gt;
Initialisiere Repository mit [https://borgbackup.readthedocs.io/en/stable/ Borg Backup]&lt;br /&gt;
&lt;br /&gt;
  borg init --encrypt none &amp;lt;repoPath&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Erstelle Snapshot&lt;br /&gt;
  borg create --stats --progress  &amp;lt;repopath&amp;gt;::documents_$(date -I) $(realpath ~/documents)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Man kann auch einen Lauf starten, bei dem nichts verändert wird:&lt;br /&gt;
  borg create --dry-run --list \&lt;br /&gt;
      --progress  &amp;lt;repopath&amp;gt;::documents_$(date -I) $(realpath ~/documents)&lt;br /&gt;
&lt;br /&gt;
===== Borg-Repo-Pfad =====&lt;br /&gt;
&lt;br /&gt;
Auf dem lokalen Rechner ist &amp;lt;repopath&amp;gt; eine schlichte Pfadangabe wie &amp;lt;code&amp;gt;/mnt/externUSB/backup&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Via [[SSH]] kann man aber auch auf einen entfernten Rechner backupen. &amp;lt;repopath&amp;gt; lautet dann:&lt;br /&gt;
  ssh://user@host:port/path/to/repo&lt;br /&gt;
 &lt;br /&gt;
Die Angabe des Repository-Pfades kann man sich sparen, indem man ihn mit &lt;br /&gt;
  export BORG_REPO=&amp;lt;repopath&amp;gt;&lt;br /&gt;
als Umgebungsvariable borg zur Verfügung stellt.&lt;br /&gt;
&lt;br /&gt;
==== Backup mit Restic ====&lt;br /&gt;
&lt;br /&gt;
Anlegen eines Backup-Repositorys mit [https://restic.readthedocs.io/en/stable/manual_rest.html restic]:&lt;br /&gt;
  restic -r sftp:BACKUP_RECHNER:/pfad/zum/repository init&lt;br /&gt;
&lt;br /&gt;
Eine Passwortdatei ist eine einfache Textdatei mit dem Passwort in einer Zeile.&lt;br /&gt;
&lt;br /&gt;
Anzeigen der vorhandenen Snapshots&lt;br /&gt;
  restic -r sftp:BACKUP_RECHNER:/pfad/zum/repository -p /pfad/zur/Passwortdatei snapshots&lt;br /&gt;
&lt;br /&gt;
Backup&lt;br /&gt;
  restic -r sftp:BACKUP_RECHNER:/pfad/zum/repository -p /pfad/zur/Passwortdatei backup /pfad/zu/den/zu/sichernden/dateien&lt;br /&gt;
&lt;br /&gt;
restic folgt symbolischen Links (symlinks) nicht, sondern sichert sie als solche. Wenn man ein Verzeichnis, auf das ein Symlink verweist sichern will, kann man sich readlink zunutze machen:&lt;br /&gt;
&lt;br /&gt;
  restic -r sftp:BACKUP_RECHNER:/pfad/zum/repository -p /pfad/zur/Passwortdatei backup $(readlink -f /pfad/zum/Symlink)&lt;br /&gt;
&lt;br /&gt;
restic hat [https://restic.readthedocs.io/en/stable/050_restore.html viele Möglichkeiten zum Wiederherstellen]. Beispiel:&lt;br /&gt;
&lt;br /&gt;
  restic -r sftp:BACKUP_RECHNER:/pfad/zum/repository -p /pfad/zur/Passwortdatei restore latest \&lt;br /&gt;
  --target /pfad/wo/die/dateien/wiederhergestellt/werden/sollen --path &amp;quot;/pfad/der/wiederhergestellt/werden/soll&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Festplatten in Ruhezustand versetzen ===&lt;br /&gt;
Mittels &lt;br /&gt;
  sudo hdparm -y /dev/sdc&lt;br /&gt;
lässt sich die Festplatte sdc in den Standby-Modus versetzen.&amp;lt;ref&amp;gt;Vgl. https://www.pks.mpg.de/~mueller/docs/suse10.3/opensuse-manual_de/manual/sec.pmanage.silenthd.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittels &lt;br /&gt;
  hdparm -S 30 /dev/sdc&lt;br /&gt;
lässt sich eine Festplatte nach 30*5=150 Sekunden in den Ruhezustand versetzen.&lt;br /&gt;
&lt;br /&gt;
Über die &amp;lt;code&amp;gt;/etc/hdparm.conf&amp;lt;/code&amp;gt; lässt sich [https://linuxundich.de/hardware/festplatten-automatisch-im-betrieb-in-den-standby-schalten/ das auch automatisch einrichten].&lt;br /&gt;
&lt;br /&gt;
=== Festplattenfehler ===&lt;br /&gt;
&lt;br /&gt;
Festplattenfehler lassen sich u.a. mit&lt;br /&gt;
* smartmontools&lt;br /&gt;
* badblocks&lt;br /&gt;
* e2fsck&lt;br /&gt;
* dd_rescue&lt;br /&gt;
* debugfs&lt;br /&gt;
finden.&lt;br /&gt;
&lt;br /&gt;
Z.B. kann man ein fehlerhaftes EXT2/EXT3/EXT4-Dateisystem mit folgendem Befehl (interaktiv) reparieren lassen:&lt;br /&gt;
  sudo e2fsck /dev/sda5&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://recoverit.wondershare.de/harddrive-tips/repair-linux-disk.html&lt;br /&gt;
* http://www.technologyblog.de/2014/06/defekte-sektoren-reparieren-unter-linux-mit-badblocks/&lt;br /&gt;
* http://www.linux-community.de/Internal/Artikel/Print-Artikel/LinuxUser/2010/08/Integritaet-gespeicherter-Daten-sicherstellen&lt;br /&gt;
&lt;br /&gt;
=== Verschlüsselung ===&lt;br /&gt;
&lt;br /&gt;
* Siehe auch [[Verschlüsselung]]&lt;br /&gt;
&lt;br /&gt;
==== Dateien verschlüsseln ====&lt;br /&gt;
* Mit &amp;lt;code&amp;gt;gpg&amp;lt;/code&amp;gt; lassen sich unter Linux [http://www.cs.arizona.edu/computing/utilities/linux-encryption.html#gpg einzelne Dateien verschlüsseln].&lt;br /&gt;
* Automatisch für ganze Verzeichnisse geht das mit [[EncFS]]&lt;br /&gt;
&lt;br /&gt;
==== Dateisysteme verschlüsseln ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.linux-magazin.de/Ausgaben/2006/10/Loechriger-Kaese älterer Überblick über Datei-Verschlüsselungen unter Linux]&lt;br /&gt;
&lt;br /&gt;
==== SSL ====&lt;br /&gt;
[[SSL]]-Zertifikate kopiert man unter [[Ubuntu]] ins Verzeichnis &amp;lt;code&amp;gt;/usr/share/ca-certificates&amp;lt;/code&amp;gt; und macht sie dem System so bekannt:&lt;br /&gt;
  sudo dpkg-reconfigure ca-certificates&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[SSL]]&lt;br /&gt;
&lt;br /&gt;
==== Leere Verzeichnisse löschen ====&lt;br /&gt;
&lt;br /&gt;
Mit folgendem Befehl werden alle leeren Unterverzeichnisse gelöscht:&amp;lt;ref&amp;gt;http://www.unixboard.de/vb3/showthread.php?28301-leere-Verzeichnisse-finden&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  find -depth -type d -empty -exec rmdir &amp;quot;{}&amp;quot;  \;&lt;br /&gt;
&lt;br /&gt;
=== Dateien im Netzwerk ===&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [[NFS]]&lt;br /&gt;
* [[Samba]]&lt;br /&gt;
* [http://www.openafs.org/ OpenAFS]&lt;br /&gt;
* [[WebDAV]]&lt;br /&gt;
* [[SSH]] mit sshfs&lt;br /&gt;
&lt;br /&gt;
== Netzwerk ==&lt;br /&gt;
* Siehe [[Netzwerk]]&lt;br /&gt;
* Siehe [[Samba]]&lt;br /&gt;
* Siehe zudem [[Installation von OpenSuse über PXE]]&lt;br /&gt;
* Siehe [[Bluetooth-Tipps]]&lt;br /&gt;
* Siehe [[Sony VAIO PCG-Z600RE]]&lt;br /&gt;
* Siehe auch [[#Mounten eines FTP-Verzeichnisses]].&lt;br /&gt;
&lt;br /&gt;
=== Allgemeines ===&lt;br /&gt;
&lt;br /&gt;
==== Konfiguration in &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; ====&lt;br /&gt;
&lt;br /&gt;
In &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; kann man manuelle Einstellungen für das Netzwerk vornehmen. Siehe [http://wiki.ubuntuusers.de/interfaces diese Anleitung] für [[Ubuntu]]. Dann kann man aber für das betreffende Interface den NetworkManager nicht mehr verwenden.&lt;br /&gt;
&lt;br /&gt;
==== Konfiguration des Netzwerks mit systemd ====&lt;br /&gt;
&lt;br /&gt;
Systemd kann alles, aber hält sich nicht an das KISS-Prinzip (Keep it simple stupid). So kann Systemd auch das Netzwerk konfigurieren. Siehe&lt;br /&gt;
* https://www.debian.org/doc/manuals/debian-reference/ch05.de.html#_the_modern_network_configuration_without_gui&lt;br /&gt;
&lt;br /&gt;
=== Network-Manager ===&lt;br /&gt;
In Desktop-Distributionen ist üblicherweise der &amp;quot;Network-Manager&amp;quot; installiert. Er lässt sich auch auf der Kommandozeile nutzen:&lt;br /&gt;
&lt;br /&gt;
  sudo aptitude install Network-Manager&lt;br /&gt;
&lt;br /&gt;
Hinzufügen einer WLAN-Verbindung:&lt;br /&gt;
  sudo nmcli device wifi connect &#039;&#039;SSID&#039;&#039; password &#039;&#039;PASSWORD&#039;&#039;&lt;br /&gt;
SSID ist der WLAN-Name und Passwort ist der WLAN-Schlüssel.&lt;br /&gt;
&lt;br /&gt;
Der Network-Manager lässt sich auch deaktivieren:&amp;lt;ref&amp;gt;Siehe http://xmodulo.com/disable-network-manager-linux.html . &amp;lt;/ref&amp;gt;&lt;br /&gt;
Unter [[Linux Mint 17]] (wahrscheinlich auch unter Ubuntu 14.04 LTS Trusty) geht das so:&lt;br /&gt;
  echo manual | sudo tee /etc/init/network-manager.override&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== wicd ===&lt;br /&gt;
&lt;br /&gt;
Eine Alternative zum Network-Manager ist wicd. Neben der grafischen Oberfläche (auch mit Tray-Icon) bietet wicd auch eine Kommandozeile und eine ncurses-Version zur halbgrafischen Bedienung im Terminal.&lt;br /&gt;
&lt;br /&gt;
Sollte wicd unter [[Linux Mint]] 17.3 vor dem Start nach einem Passwort fragen, hilft folgende Befehlsfolge (man beachte die Punkte).&amp;lt;ref&amp;gt;Siehe https://answers.launchpad.net/ubuntu/+source/wicd/+question/94845/ Post #7.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ping ohne sudo ===&lt;br /&gt;
&lt;br /&gt;
Sollte das einfache Pingen eines Rechners Root-Rechte benötigen, kann man Ping mit den nötigen Rechten ausstatten:&amp;lt;ref&amp;gt;Vgl. https://debianforum.de/forum/viewtopic.php?t=156254&amp;lt;/ref&amp;gt;&lt;br /&gt;
 sudo setcap cap_net_raw+ep /bin/ping&lt;br /&gt;
&lt;br /&gt;
=== Fehlersuche ===&lt;br /&gt;
&lt;br /&gt;
* Falls der Rechner etwas älter ist und die Netzwerkkarte nicht erkannt wird, hat es vielleicht mit einer Unverträglichkeit mit dem Power-Management zu tun. Vielleicht helfen dann die Boot-Optionen &amp;lt;code&amp;gt;noapic nolapic&amp;lt;/code&amp;gt; weiter.&lt;br /&gt;
* Falls der Rechner seine IP-Adresse von einem DHCP-Server beziehen soll, hilft vielleicht &lt;br /&gt;
  /sbin/dhcpcd -d -t 10 eth0&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  dmesg|less&lt;br /&gt;
kann man sich die Ausgaben während des Bootvorgangs ansehen. Siehe bei Netzwerk-Problemen unter Linux auch http://www.adsl4linux.de/howtos/lan22/ und das [http://www.tldp.org/HOWTO/Ethernet-HOWTO.html Ethernet-HOWTO].&lt;br /&gt;
&lt;br /&gt;
* Eine Anleitung zu [http://www.oreilly.de/german/freebooks/linag2/netz0802.htm pppd] findet sich bei O&#039;Reilly.&lt;br /&gt;
* Siehe &lt;br /&gt;
** [[Synchronisation unter Linux]], [[Synchronisation Web-PC-Handy]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Netzwerktool ip ====&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.heise.de/ct/artikel/FAQ-Netzwerke-analysieren-und-konfigurieren-mit-ip-4769802.html&lt;br /&gt;
&lt;br /&gt;
==== Netzwerktool ss ====&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  ss -ntlp&lt;br /&gt;
kann man sich die offenen Ports und die daran lauschenden Anwendungen anzeigen lassen.&lt;br /&gt;
&lt;br /&gt;
==== Netzwerktool netstat ====&lt;br /&gt;
&lt;br /&gt;
Zur Installation:&lt;br /&gt;
  sudo aptitude install net-tools&lt;br /&gt;
&lt;br /&gt;
Zum Anzeigen der am Netzwerk lauschenden Programme:&lt;br /&gt;
&lt;br /&gt;
  sudo netstat -tulpn&lt;br /&gt;
&lt;br /&gt;
==== lsof ====&lt;br /&gt;
&lt;br /&gt;
Mit Hilfe von&lt;br /&gt;
  sudo lsof -nP -i | grep LISTEN&lt;br /&gt;
kann man sich ebenfalls die offenen Netzwerk-Ports (und die daran angedockten Prozesse) anzeigen lassen.&lt;br /&gt;
&lt;br /&gt;
==== Netzwerkanalyse ====&lt;br /&gt;
&lt;br /&gt;
Siehe [[Netzwerk]]&lt;br /&gt;
&lt;br /&gt;
=== WLAN ===&lt;br /&gt;
&lt;br /&gt;
==== WLAN-Hardware ====&lt;br /&gt;
&lt;br /&gt;
===== USB-WLAN mit RT3070 Chip =====&lt;br /&gt;
&lt;br /&gt;
Der RT3070 ist u.a. im [http://wiki.ubuntuusers.de/wlan/karten#LogiLink LogiLink WL00049A verbaut].&lt;br /&gt;
&lt;br /&gt;
* Unter [[Ubuntu]] muss [http://linuxforums.org.uk/hardware-compatibility/ralink-rt2870-based-usb-wireless-n-adapters-(ubuntu)/ das Modul rt2800usb] gesperrt werden, indem es in die &amp;lt;code&amp;gt;/etc/modprobe.d/blacklist.conf&amp;lt;/code&amp;gt; eingetragen wird.&lt;br /&gt;
&lt;br /&gt;
* Auch in [[Debian]] muss [http://vivahate.com/2011/04/04/ralink-rt2870rt3070-in-debian-6-squeeze/ das Modul rt2800usb] gesperrt werden und  das Paket &amp;lt;code&amp;gt;firmware-ralink&amp;lt;/code&amp;gt; aus dem &amp;lt;code&amp;gt;non-free&amp;lt;/code&amp;gt;-Repository installiert werden.&lt;br /&gt;
&lt;br /&gt;
* den Treiber auf der [http://www.ralinktech.com/support.php?s=2 Hersteller-Website]&lt;br /&gt;
*  http://lobmenschen.de/index.php/RALINK_RT3070_Linux_Treiber_Installation ([http://ubuntuforums.org/archive/index.php/t-1106034.html Ergänzung])&lt;br /&gt;
* Ab Kernel 2.6.31 ist der Rt3070-Treiber (experimentell) integriert.&lt;br /&gt;
* OpenSuse scheint den Chip ab V 11.1 zu unterstützen.&amp;lt;ref&amp;gt;http://www.xadux.eu/wireless-lan-und-lan/3423-rt3070-2.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
* Auch unter [[Ubuntu]] gibt es dazu [http://forum.ubuntuusers.de/topic/wlan-an-fritzbox-7270-mit-rt3070-wpa-wpa2/ Versuche], z.B. [http://lifewithdebian.blogspot.com/ hier]. Unter Ubuntu 9.10 funktioniert der Chip jedoch bereits out-of-the-box.&lt;br /&gt;
* Für [[Debian]] gibt es [http://wiki.debian.org/rt2870sta hier] eine Anleitung zu einem ähnlichen Chip.&lt;br /&gt;
* Evtl. funktioniert er auch mit [http://www.openbsd.org/cgi-bin/man.cgi?query=run&amp;amp;sektion=4&amp;amp;format=html OpenBSD].&lt;br /&gt;
&lt;br /&gt;
===== RT2500 =====&lt;br /&gt;
* unter [http://www.freebsd.org/cgi/man.cgi?query=ural&amp;amp;sektion=4&amp;amp;manpath=FreeBSD+6.0-RELEASE FreeBSD 6.0]&lt;br /&gt;
&lt;br /&gt;
===== rt2070-Chip =====&lt;br /&gt;
* [http://maxein08.wordpress.com/2009/11/04/guida-allinstallazione-di-una-chiavetta-wireless-sitecom-wl-608-su-ubuntu/ italienischer Tipp]&lt;br /&gt;
&lt;br /&gt;
===== ZD1211-Chipsatz =====&lt;br /&gt;
* [http://wiki.debian.org/zd1211rw Installation unter Debian]&lt;br /&gt;
* Unter [[OpenSuse]]:&lt;br /&gt;
  zypper install zd1211-firmware&lt;br /&gt;
&lt;br /&gt;
==== Vermeidung der Passwortabfrage ====&lt;br /&gt;
&lt;br /&gt;
Wenn man unter [[Gnome]] ein [[WLAN]] einrichtet, kann man das dafür nötige Passwort im Gnome-Schlüsselbund abspeichern. Wenn man beim Hochfahren sich automatisch anmelden lässt (ohne Login mit Passwort), benötigt der [[NetworkManager]] Zugriff auf den Schlüsselbund. Daher wird man vor Aufbau der Verbindung nach dem Schlüsselbund-Passwort gefragt. Das lässt sich vermeiden, indem man dem Standardschlüsselbund ein leeres Passwort gibt&amp;lt;ref&amp;gt;http://wiki.ubuntuusers.de/GNOME_Schl%C3%BCsselbund#Automatische-Anmeldung-in-GDM&amp;lt;/ref&amp;gt;. Das ist aber ein &amp;lt;code&amp;gt;Sicherheitsrisiko&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Linuxbox als WLAN-Accesspoint ====&lt;br /&gt;
&lt;br /&gt;
Den Linux-Rechner kann man auch als Accesspoint für Geräte ohne WLAN nutzen, also Kabel zwischen Client und Linux-Rechner und drahtlose Übertragung zwischen Linux-Rechner und entferntem Internet-Router:&lt;br /&gt;
* http://www.nicolaskuttler.com/post/using-any-debian-box-as-wireless-access-point/&lt;br /&gt;
* http://wiki.ubuntuusers.de/WLAN_Router&lt;br /&gt;
&lt;br /&gt;
=== Bluetooth ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Bluetooth]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Using Android-Phone as Internet-Modem ===&lt;br /&gt;
&lt;br /&gt;
Normalerweise kann das [[Android]]-Smartphone einfach an einen [[USB]]-Port des [[Linux]]-Rechners angeschlossen werden. Im Android muss dann in den Einstellungen noch das USB-Tethering aktiviert werden.&lt;br /&gt;
&lt;br /&gt;
Leider funktioniert das nicht immer, eventuell hilft &lt;br /&gt;
* [http://www.upubuntu.com/2011/12/how-to-tether-your-android-phone-to.html diese Anleitung mit der App EasyTether]&lt;br /&gt;
&lt;br /&gt;
=== Wake up on LAN ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Wake up on LAN]]&lt;br /&gt;
&lt;br /&gt;
=== Webserver ===&lt;br /&gt;
&lt;br /&gt;
* [[Plattformübergreifende Software#Serversoftware|Serversoftware]]&lt;br /&gt;
* [[oldCt:Webhosting]]&lt;br /&gt;
* [[Verschlüsselung]]&lt;br /&gt;
&lt;br /&gt;
=== Mail ===&lt;br /&gt;
Siehe&lt;br /&gt;
* [[Mail unter Linux]]&lt;br /&gt;
* [[Postfix]]&lt;br /&gt;
&lt;br /&gt;
=== Fernzugriff ===&lt;br /&gt;
* [[Remote Desktop]]&lt;br /&gt;
** [[ssh]]&lt;br /&gt;
&lt;br /&gt;
== Grafiksystem ==&lt;br /&gt;
&lt;br /&gt;
=== Monitorinfos ===&lt;br /&gt;
&lt;br /&gt;
Ob der Monitor angeschaltet oder im StandBy ist, kann man mit &lt;br /&gt;
  ddccontrol -p&lt;br /&gt;
erfahren.&lt;br /&gt;
&lt;br /&gt;
Ansonsten bekommt man auch noch über folgende Befehle Infos über den Monitor (ggf. &amp;lt;code&amp;gt;DISPLAY=:0&amp;lt;/code&amp;gt; voranstellen): &lt;br /&gt;
  xrandr&lt;br /&gt;
oder&lt;br /&gt;
  xset -q&lt;br /&gt;
&lt;br /&gt;
=== Framebuffer ===&lt;br /&gt;
&lt;br /&gt;
Auch ohne X-System kann man unter Linux Grafiken anzeigen: Dazu gibt es den Framebuffer.&lt;br /&gt;
&lt;br /&gt;
Siehe z.B.&lt;br /&gt;
* mplayer zum Anzeigen von Videos&lt;br /&gt;
* [http://hacklab.cz/2012/04/22/usefulness-linux-framebuffer-virtual-console fbi] zum Anzeigen von Bildern&lt;br /&gt;
* fbtv zur Anzeige von Fernsehen&lt;br /&gt;
* directvnc, eine [[VNC]]-Client für den Framebuffer&lt;br /&gt;
&lt;br /&gt;
Weitere Infos &lt;br /&gt;
* [http://hacklab.cz/2012/04/22/usefulness-linux-framebuffer-virtual-console Übersicht über Anwendungen für Framebuffer]&lt;br /&gt;
* [https://github.com/notro/fbtft/wiki/Framebuffer-use weitere Anwendungsbeispiele für den Framebuffer]&lt;br /&gt;
&lt;br /&gt;
==== mplayer für Framebuffer ====&lt;br /&gt;
&lt;br /&gt;
Der Kommandozeilen-basierte Audio- und Video-Abspieler [[mplayer]] kann auch Videos auf der Linux-Konsole mittels Framebuffer anzeigen:&lt;br /&gt;
  mplayer -vo fbdev2 VIDEO.MOV&lt;br /&gt;
&lt;br /&gt;
Evtl. muss der Nutzer der Gruppe &amp;lt;code&amp;gt;video&amp;lt;/code&amp;gt; hinzugefügt werden.&lt;br /&gt;
&lt;br /&gt;
==== vlc für Framebuffer ====&lt;br /&gt;
&lt;br /&gt;
Auch [[vlc]] kann den FrameBuffer nutzen. Das funktioniert z.B. mit der [[NCURSES]]-basierten Oberfläche, die man mit &lt;br /&gt;
  nvlc&lt;br /&gt;
oder &lt;br /&gt;
  vlc -I&lt;br /&gt;
erreicht.&lt;br /&gt;
&lt;br /&gt;
Die Installation erfolgt über &lt;br /&gt;
  sudo aptitude install nvlc&lt;br /&gt;
&lt;br /&gt;
oder &lt;br /&gt;
  sudo aptitude install vlc-bin vlc-base-plugins&lt;br /&gt;
&lt;br /&gt;
Hier ist erforderlich, dass der ausführende Benutzer der Gruppe &amp;lt;code&amp;gt;video&amp;lt;/code&amp;gt; hinzugefügt wird:&lt;br /&gt;
&lt;br /&gt;
  sudo adduser USER video&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Damit können z.B. auch rtsp-Streams (z.B. vom Kabeltuner der [[Fritz!box 6490]]) abgespielt werden:&lt;br /&gt;
  nvlc &#039;rtsp://....&#039;&lt;br /&gt;
&lt;br /&gt;
=== X ===&lt;br /&gt;
* [[X Server]]&lt;br /&gt;
&lt;br /&gt;
=== Display Manager ===&lt;br /&gt;
&lt;br /&gt;
Die Auswahl der Desktopumgebung wird nicht mehr unter &amp;lt;code&amp;gt;~/.dmrc&amp;lt;/code&amp;gt; gespeichert, sondern in &amp;lt;code&amp;gt;/var/lib/AccountsService/users/$USER&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Man kann die Wahl aber auch über den [[dbus]] speichern:&lt;br /&gt;
&lt;br /&gt;
  dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User1000 org.freedesktop.Accounts.User.SetXSession string:cinnamon&lt;br /&gt;
&lt;br /&gt;
=== Window Manager ===&lt;br /&gt;
&lt;br /&gt;
Siehe [http://www.knetfeder.de/linux/spezial/pz-spezial-fenstermanager.pdf Einführung in Nur-Fenstermanager].&lt;br /&gt;
&lt;br /&gt;
[[Fluxbox]] ist ein im Verhältnis zu [[GNOME]] und [[KDE]] schneller und kleiner Window Manager. &lt;br /&gt;
&lt;br /&gt;
* [http://www.linuxmint.com/rel_helena_fluxbox.php Fluxbox-Tastenkürzel]&lt;br /&gt;
&lt;br /&gt;
* Das Umsteigen von Windows würde es erleichtern, wenn er nicht nur ein Startmenü durch Rechtsklick auf den Desktop hätte, sondern auch bei Klicken eines Icons links unten. Dazu gibt es wohl auch Lösungen:&lt;br /&gt;
** [http://ubuntuforums.org/showthread.php?p=3130878#post3130878 Änderungen am Source-Code von Fluxbox]&lt;br /&gt;
&lt;br /&gt;
==== Menüeinträge fürs &amp;quot;Startmenü&amp;quot; oder den Desktop ====&lt;br /&gt;
&lt;br /&gt;
Mit Hilfe von .desktop-Dateien können Einträge fürs Startmenü oder den Schreibtisch zum Starten von Programmen (&amp;quot;Apps&amp;quot;) erstellt werden. Siehe &lt;br /&gt;
* https://wiki.ubuntuusers.de/.desktop-Dateien/&lt;br /&gt;
&lt;br /&gt;
Diese kann man auch nutzen, um die Programme beim Start des graphischen Desktops automatisch zu starten. Dazu müssen sie ins Verzeichnis &amp;lt;code&amp;gt;/etc/xdg/autostart/&amp;lt;/code&amp;gt; bzw. &amp;lt;code&amp;gt;/home/USER/.config/autostart&amp;lt;/code&amp;gt; eingefügt und als ausführbar markiert werden.&lt;br /&gt;
&lt;br /&gt;
==== Programme minimiert starten ====&lt;br /&gt;
&lt;br /&gt;
In den .desktop-Dateien fehlt leider eine Option zum minimierten Starten.&lt;br /&gt;
&lt;br /&gt;
Aber es gibt Abhilfe mittels wmctrl und xdotool: https://www.reddit.com/r/kde/comments/b0k01e/start_application_at_login_minimized/&lt;br /&gt;
&lt;br /&gt;
Linux wäre nicht Linux, wenn es nicht noch einen zweiten Weg gäbe (hier devilspie): http://www.webupd8.org/2011/02/how-to-start-applications-minimized.html&lt;br /&gt;
&lt;br /&gt;
=== Grafische Fernsteuerung ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Remote Desktop]]&lt;br /&gt;
&lt;br /&gt;
== Multimedia ==&lt;br /&gt;
* Siehe [[Multimedia]]&lt;br /&gt;
** [[Plattformübergreifende Software#Multimedia]]&lt;br /&gt;
&lt;br /&gt;
=== Audio ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Audio#Linux%20und%20Audio]]&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Videotelefonie]]&lt;br /&gt;
&lt;br /&gt;
=== Videos ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Fotografie#Film_und_Video]]&lt;br /&gt;
&lt;br /&gt;
==== Abspielen ====&lt;br /&gt;
Die Versorgung mit Codecs ist unter Linux ein - lösbares - Problem. Z.B. hilft die [[plattformübergreifend]]e Software [[VLC]].&lt;br /&gt;
&lt;br /&gt;
Ein Projekt namens [http://abock.org/2009/02/11/announcing-moonshine-the-project-never-formerly-known-as-pornilus/ Moonshine] ermöglicht unter Linux Windows Media Content mit Original-Microsoft-Codecs abzuspielen. Es nutzt dazu [[Moonlight]].&lt;br /&gt;
&lt;br /&gt;
==== Herunterladen ====&lt;br /&gt;
&lt;br /&gt;
Videos von [[YouTube]] lassen sich mit &lt;br /&gt;
  youtube-dl -t http://www.youtube.com/watch?v=j09hpp3AxIE&lt;br /&gt;
herunterladen. Dabei ist die anzugebende URL diejenige, die man im Browser-Adressfeld beim Surfen auf youtube findet.&lt;br /&gt;
&lt;br /&gt;
Wenn der Download nicht funktioniert, hilft wahrscheinlich ein Update&lt;br /&gt;
  youtube-dl -U&lt;br /&gt;
&lt;br /&gt;
==== TV ====&lt;br /&gt;
&lt;br /&gt;
Neben Projekten wie &lt;br /&gt;
* [[VDR]]&lt;br /&gt;
* [[MythTV]]&lt;br /&gt;
* [[XBMC]], nun [[Kodi]]&lt;br /&gt;
** auch mit [http://linux.mjnet.eu/post/804/xbmc-pvr-tvheadend-ubuntu-12-04-install/ tvheadend]&lt;br /&gt;
&lt;br /&gt;
gibt es auch Konsolenprogramme:&lt;br /&gt;
* [[ttv]]&lt;br /&gt;
* [[fbtv]] - bietet TV im [[FrameBuffer]]&lt;br /&gt;
&lt;br /&gt;
Für den Electronic Program Guide - EPG gibt es&lt;br /&gt;
&lt;br /&gt;
* [http://sourceforge.net/projects/tvbrowser/ den TV-Browser], freie [[Java]]-Programmzeitschrift mit Aufzeichnungs-Plugin [[SimplePVR]]&lt;br /&gt;
&lt;br /&gt;
Wichtig ist, dass der den TV-Stick nutzende User der Gruppe &amp;lt;code&amp;gt;video&amp;lt;/code&amp;gt; zugeordnet ist, z.B. für den [[Tvheadend]]-Nutzer:&lt;br /&gt;
  sudo adduser hts video&lt;br /&gt;
&lt;br /&gt;
Die Pakete dvbsnoop, dvb-apps, dvb-tools und w-scan bieten Werkzeuge, um die Einrichtung von DVB-C-Adaptern zu debuggen.&lt;br /&gt;
Beispielsweise lässt sich mit&lt;br /&gt;
  dvb-fe-tool -d DVBC/ANNEX_A&lt;br /&gt;
der ein DVB-T/C-Adapter auf DVB-C umschalten.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Siehe auch [[DVB-C]]&lt;br /&gt;
&lt;br /&gt;
=== Webcam ===&lt;br /&gt;
&lt;br /&gt;
* Einfach Bilder von der [[Shell]] aufnehmen geht mit dem Paket [http://ubuntu.online02.com/node/25 streamer]:&lt;br /&gt;
  sudo aptitude install streamer&lt;br /&gt;
  streamer -f jpeg -o test.jpeg&lt;br /&gt;
&lt;br /&gt;
* Alternativen sind [http://tldp.org/HOWTO/Webcam-HOWTO/framegrabbers.html camE etc.]&lt;br /&gt;
&lt;br /&gt;
=== Videotelefonie ===&lt;br /&gt;
==== Skype ====&lt;br /&gt;
[[Videotelefonie]] funktioniert auch unter [[Linux]], z.B. mit [[Skype]], auch wenn man zur Vermeidung von Abstürzen noch [http://dark.asengard.net/blog/2009/04/17/avoid-skype-crash-with-video-conversation-on-linux/ Workarounds] benötigt. &lt;br /&gt;
&lt;br /&gt;
* [https://help.ubuntu.com/community/SkypeTroubleshooting Skype Troubleshooting] für [[Ubuntu]]&lt;br /&gt;
* [http://blogs.skype.com/linux/ Skype for Linux Blog]&lt;br /&gt;
&lt;br /&gt;
==== Alternativen ====&lt;br /&gt;
Wer nur telefonieren will, findet [http://www.easylinux.de/Artikel/ausgabe/2006/06/026-skype/ freie Alternativen], die das [[SIP]]-Protokoll nutzen.&lt;br /&gt;
&lt;br /&gt;
Alternativen auch mit Video scheinen &lt;br /&gt;
* [https://bigbluebutton.org/ BigBlueButton]&lt;br /&gt;
* [https://jitsi.org/ Jitsi]&lt;br /&gt;
** [https://jitsi.org/jitsi-meet/ Jitsi Meet] kann sofort (ohne Registrierung) auf https://meet.jit.si/ ausprobiert werden.&lt;br /&gt;
* https://opentalk.eu/de&lt;br /&gt;
* [https://www.golem.de/news/aus-dem-verlag-odin-rooms-macht-videocalls-sicher-und-klar-2409-188992.html Odin Rooms]&lt;br /&gt;
zu sein.&lt;br /&gt;
&lt;br /&gt;
Bekannte kommerzielle Alternativen zum veralteten Skype sind&lt;br /&gt;
* Microsoft Teams&lt;br /&gt;
* Cisco Webex&lt;br /&gt;
* Zoom&lt;br /&gt;
&lt;br /&gt;
=== Digitalkameras unter Linux ===&lt;br /&gt;
* Siehe dazu den Beitrag unter [http://www.pro-linux.de/berichte/digitalkameras.html Pro-Linux.de]&lt;br /&gt;
* [http://www.linuxdevcenter.com/pub/a/linux/2005/01/06/digicam.html Anleitung] für die Nutzung einer Kodak-Kamera&lt;br /&gt;
* [http://www.linuxnetmag.com/de/issue6/m6gphoto1.html Anleitung] für die Nutzung von [http://www.gphoto.org gphoto]&lt;br /&gt;
* [http://m4l.berlios.de/pub/Main/HowTo/DE-DIGITALKAMERA-HOWTO.html Digitalkamera HOWTO] (noch für den Kernel 2.4)&lt;br /&gt;
* Weitere Links:&lt;br /&gt;
** http://blog.chip.de/chip-linux-blog/digitalkameras-fotografie-unter-linux-20070521/&lt;br /&gt;
** http://www.multimedia4linux.de/cameramodule.html&lt;br /&gt;
** http://www.gphoto.org/cameras.html&lt;br /&gt;
** http://www.qbik.ch/usb/devices/&lt;br /&gt;
&lt;br /&gt;
=== Bildanzeige ===&lt;br /&gt;
&lt;br /&gt;
In den graphischen Desktop-Umgebungen ist die Anzeige von Bildern selbstverständlich kein Problem. &lt;br /&gt;
&lt;br /&gt;
Aber es gibt auch Möglichkeiten auf der Konsole:&lt;br /&gt;
&lt;br /&gt;
* [[fbi]] - benutzt Linux Frame Buffer System&lt;br /&gt;
** [http://linuxers.org/howto/howto-open-images-linux-console-using-fbi-console-based-image-viewer Howto für FBI]]&lt;br /&gt;
* [[xli]]&lt;br /&gt;
* [[xloadimage]] benötigt [[X]]&lt;br /&gt;
* [[xwud]] bedarf einer [[X]]-Umgebung&lt;br /&gt;
* [[xzgv]] benötigt [[X]], hat angeblich gute Tastaturunterstützung&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[DICOM]]&lt;br /&gt;
&lt;br /&gt;
=== Bildbearbeitung ===&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Fotografie]]&lt;br /&gt;
* [[GIMP]]&lt;br /&gt;
* [[pixelize]] - ein Programm, mit dem man ein größeres Bild aus unzähligen kleineren Bildern zusammensetzen kann&lt;br /&gt;
&lt;br /&gt;
==== ImageMagick ====&lt;br /&gt;
Auf der Kommandozeile unter Linux helfen die Tools von ImageMagick:&lt;br /&gt;
* [http://www.linux-community.de/Internal/Artikel/Print-Artikel/LinuxUser/2012/08/Bildbearbeitung-mit-ImageMagick Anleitung auf LINUX-Community]&lt;br /&gt;
&lt;br /&gt;
Beispielsweise lassen sich mit folgendem Befehl Bilder als Kacheln auf einem neuen Bild getrennt mit einem transparenten Rahmen darstellen:&lt;br /&gt;
&lt;br /&gt;
  montage -monitor -resize x200+0+0 -crop 300x200+20+0 -geometry 200x200+50+50 -background transparent bilder*.jpg uebersicht.png&lt;br /&gt;
&lt;br /&gt;
=== Bildinformationen ===&lt;br /&gt;
Mit den [http://exiflow.sourceforge.net/wiki/Main_Page Exiflow-Tools] können Bilddateien einfach gemäß dem Erstellungsdatum umbenannt werden.&lt;br /&gt;
&lt;br /&gt;
Mit [http://www.exiv2.org/index.html exiv2] lässt sich auf der Kommandozeile die Informationen eines Bildes auswerten.&lt;br /&gt;
&lt;br /&gt;
Auch [[exiftags]] und [[exif]] bieten die Informationen aus dem EXIF-Teil des JPEG-Bilds über die Kommandozeile an.&lt;br /&gt;
&lt;br /&gt;
==== Aufnahmedatum in Dateinamen ====&lt;br /&gt;
Schließlich bietet auch [http://www.sentex.net/~mwandel/jhead/ jhead] ([http://linux.die.net/man/1/jhead man-page]) alle textuellen Informationen. Dieses Programm läuft nicht nur unter Linux, sondern auch unter Windows. Ein [http://www.guckes.net/augsburg2006/bildbearbeitung_auf_der_console.txt Verwendungsbeispiel]: &lt;br /&gt;
     jhead -nfhm%04Y.%02m.%02d-%H%M%S.%f *.jpg&lt;br /&gt;
Das macht aus der Datei p104711.jpg z.B. hm2007,11,12-110048.p104711.jpg.&lt;br /&gt;
&lt;br /&gt;
In den OpenSuse-Forums findet sich ein [http://forums.opensuse.org/archives/sf-archives/archives-programming-scripting/335342-rename-files-using-creation-date.html Shell-Skript zum Umbenennen von Movies (.MOV)] basierend auf dem Dateimodifikationsdatum. Damit lässt sich obiger jhead-Befehl nachbilden (der Unterschied bleibt natürlich, dass nicht das EXIF-Datum, sondern das Dateidatum in den Namen aufgenommen wird):&lt;br /&gt;
&lt;br /&gt;
  #!/bin/sh&lt;br /&gt;
  for file in ${@}; do&lt;br /&gt;
    if [ -e $file ]; then&lt;br /&gt;
      timestamp=`ls -l --time-style=+%Y.%m.%d-%H%M%S $file |cut -d&#039; &#039; -f6`&lt;br /&gt;
      newfile=&amp;quot;hm$timestamp.$file&amp;quot;&lt;br /&gt;
      echo Aus $file wird $newfile ...&lt;br /&gt;
      mv -v &amp;quot;$file&amp;quot; &amp;quot;$newfile&amp;quot;&lt;br /&gt;
    fi&lt;br /&gt;
  done&lt;br /&gt;
&lt;br /&gt;
==== Geotagging von Fotos ====&lt;br /&gt;
&lt;br /&gt;
Möchte man seine Fotos von einer Kamera ohne GPS-Receiver mit GPS-Daten z.B. aus dem mitgeführten Smartphone aufwerten, dann hilft das exiftool, z.B.:&lt;br /&gt;
   exiftool  -api GeoMaxExtSecs=9999 -geotag &#039;*.gpx&#039; images &lt;br /&gt;
&lt;br /&gt;
Dieses Beispiel nutzt als Geodaten-Quelle alle Dateien mit der Endung gpx im aktuellen Verzeichnis und versieht alle Bilder im images-Ordner mit den entsprechenden Daten. Siehe dazu näher die [http://www.sno.phy.queensu.ca/~phil/exiftool/geotag.html Beschreibung auf der Projektseite].&lt;br /&gt;
&lt;br /&gt;
Die Geodaten bekommt man z.B. mit der [[Android]] - [[Open Source]]-Software [https://github.com/mendhak/gpslogger gpslogger].&lt;br /&gt;
&lt;br /&gt;
== Fernzugriff ==&lt;br /&gt;
* [[Remote Desktop]]&lt;br /&gt;
** [[ssh]]&lt;br /&gt;
&lt;br /&gt;
== Drucken ==&lt;br /&gt;
=== Allgemeines ===&lt;br /&gt;
* Das CUPS-Drucksystem bietet unter http://localhost:631 eine Web-Verwaltungsoberfläche.&lt;br /&gt;
* CUPS verwendet das Internet Printing Protocol. Dies kann auch [http://www.heise.de/netze/Ueberall-drucken--/artikel/78252/0 Windows XP anbieten].&lt;br /&gt;
* [http://hplipopensource.com/hplip-web/supported_devices/index.html Hewlett-Packard] und [http://solutions.brother.com/linux/en_us/index.html Brother] scheinen recht umfangreichen Linux-Treiber-Support für ihre Drucker zu leisten. Aber auch für [http://avasys.jp/hp/menu000000500/hpg000000442.htm Epson-Drucker] gibt es etliche Treiber.&lt;br /&gt;
* [http://www.linuxforen.de/forums/showthread.php?t=213560 Überblick über Drucken unter Linux]&lt;br /&gt;
* Einen Drucker am Linux-Rechner kann man [http://pda-und-co.de/linux/2009/05/03/eee-als-home-server-feste-ip-netzwerkdrucker-per-cups-einrichten/ auch vom Windows-PC als Netzwerkdrucker nutzen]&lt;br /&gt;
&lt;br /&gt;
Beim Netzwerk-Server, an den der Drucker angeschlossen ist, muss man den Clients den Zugriff auf den Drucker erlauben:&lt;br /&gt;
  cupsctl --share-printers&lt;br /&gt;
&lt;br /&gt;
Von der Shell kann man einen Netzwerkdrucker folgendermaßen zum Client hinzufügen:&lt;br /&gt;
  lpadmin -p &amp;quot;$PRINTER&amp;quot; -E -v &amp;quot;ipp://$SERVER/printers/$PRINTER&amp;quot; &lt;br /&gt;
wobei man &amp;lt;code&amp;gt;$PRINTER&amp;lt;/code&amp;gt; jeweils durch die CUPS-Drucker-Bezeichnung, z.B. &amp;quot;DESKJET-840C&amp;quot; ersetzen muss.&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  lpstat -p -d&lt;br /&gt;
kann man sich die vorhandenen Drucker anzeigen lassen.&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  lpoptions -d DRUCKER&lt;br /&gt;
kann man den Standard-Drucker auswählen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  lpstat  -o -a&lt;br /&gt;
kann man sich alle noch offenen Druckaufträge anzeigen lassen.&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  lpstat -W completed -o -a&lt;br /&gt;
kann man sich alle abgeschlossenen Druckaufträge anzeigen lassen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* [http://localhost:631/help/options.html CUPS-Hilfe zu Kommandozeilenbefehlen auf eigenem Rechner]&lt;br /&gt;
* [[Drucken]] allgemein&lt;br /&gt;
* https://www.linux-praxis.de/verwaltung-von-druckern-und-druckerwarteschlangen&lt;br /&gt;
&lt;br /&gt;
==== Troubleshooting ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== HP 7740 druckt nicht beidseitig =====&lt;br /&gt;
&lt;br /&gt;
Wenn ein HP OfficeJet Pro 7740 (A3 Tintenstrahler) unter Linux Mint 22.2 keinen beidseitigen Druck anbietet oder beim Drucken einen Fehler meldet, dann kann es daran liegen, dass das HPLIP-System nicht mit dem neueren &amp;quot;driverless&amp;quot; Drucksystem harmoniert.&lt;br /&gt;
&lt;br /&gt;
Dann einfach HPLIP deinstallieren. &lt;br /&gt;
  sudo aptitude remove hplip hplip-data libsane-hpaio&lt;br /&gt;
&lt;br /&gt;
===== HP 7740 verschiebt Seiteninhalt =====&lt;br /&gt;
&lt;br /&gt;
Fehler: HP 7740 verschiebt die Seite auf dem Blatt Papier, so dass ein leerer oberer und rechter Rand entsteht.&lt;br /&gt;
&lt;br /&gt;
Mögliche Behebung: Avahi auch für IPv6 einstellen.&lt;br /&gt;
&lt;br /&gt;
In /etc/nsswitch.conf die folgende Zeile korrigieren:&lt;br /&gt;
&lt;br /&gt;
  hosts: mymachines &#039;&#039;&#039;mdns_minimal&#039;&#039;&#039; [NOTFOUND=return] resolve [!UNAVAIL=return] files myhostname dns&lt;br /&gt;
&lt;br /&gt;
Das mdns_minimal hat also keine &amp;quot;4&amp;quot; mehr im Namen.&lt;br /&gt;
&lt;br /&gt;
Neustart von Avahi mit &lt;br /&gt;
&lt;br /&gt;
  sudo systemctl restart avahi-daemon.service &lt;br /&gt;
&lt;br /&gt;
Der Drucker, der dann automatisch gefunden wird, druckt die Seitenränder richtig.&lt;br /&gt;
&lt;br /&gt;
Siehe https://wiki.archlinux.org/title/Avahi&lt;br /&gt;
&lt;br /&gt;
===== CUPS in Docker =====&lt;br /&gt;
&lt;br /&gt;
https://hub.docker.com/r/olbat/cupsd&lt;br /&gt;
&lt;br /&gt;
===== Drucker deaktiviert sich von selbst =====&lt;br /&gt;
&lt;br /&gt;
Um zu vermeiden, dass man jedes Mal den Drucker wieder auf &amp;quot;aktiviert&amp;quot; stellen muss, fügt man in der Datei &amp;lt;code&amp;gt;/etc/cups/printer.conf&amp;lt;/code&amp;gt; die Zeile&lt;br /&gt;
  ErrorPolicy retry-job&lt;br /&gt;
hinzu. Siehe&lt;br /&gt;
* https://debianforum.de/forum/viewtopic.php?t=126837&lt;br /&gt;
&lt;br /&gt;
=== Driverless Printing ===&lt;br /&gt;
&lt;br /&gt;
Seit ca. 2020 wird die Linux-Druckerunterstützung auf &amp;quot;treiberlos&amp;quot; (driverless) umgestellt.&lt;br /&gt;
Stattdessen werden sowohl für Windows als auch für Linux verwendbare PPD-Dateien genutzt.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich gehen diese PPD-Dateien einem eigenen Treiber für Linux vor.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://linuxmint-user-guide.readthedocs.io/en/latest/printers.html&lt;br /&gt;
&lt;br /&gt;
==== AirPrint ====&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://wiki.debian.org/CUPSAirPrint&lt;br /&gt;
* https://www.linux-magazine.com/Online/Features/AirPrint&lt;br /&gt;
* Möglicherweise ist es ja auch ein Problem der Auflösung des .local-Druckers:&lt;br /&gt;
** https://discussion.fedoraproject.org/t/avahi-isnt-being-used-to-resolve-local-domain-names/69798/8&lt;br /&gt;
* https://forum.linuxguides.de/index.php?thread/12629-howto-airprint-drucker-installieren-no-driver-no-ppa-no-aur/&lt;br /&gt;
&lt;br /&gt;
=== cups pki invalid ===&lt;br /&gt;
&lt;br /&gt;
Wenn beim Drucken unter Linux der Fehler &amp;quot;cups-pki-invalid&amp;quot; erscheint, liegt das möglicherweise an einem nicht aktualisierten Zertifikat des Druckers auf dem Rechner.&lt;br /&gt;
&lt;br /&gt;
Die Zertifikate finden sich in &amp;lt;code&amp;gt;/etc/cups/ssl&amp;lt;/code&amp;gt; und lassen sich mit &lt;br /&gt;
  sudo ls -als /etc/cups/ssl&lt;br /&gt;
anzeigen.&lt;br /&gt;
&lt;br /&gt;
Zur Fehlerbehebung löscht man die entsprechende &amp;lt;code&amp;gt;.crt&amp;lt;/code&amp;gt;-Datei:&lt;br /&gt;
  sudo rm /etc/cups/ssl/$DATEI_MIT_ENDUNG_CRT&lt;br /&gt;
&lt;br /&gt;
Dann muss man noch cups neustarten:&lt;br /&gt;
  sudo systemctl restart cups.service&lt;br /&gt;
&lt;br /&gt;
Jetzt sollte das Drucken wieder funktionieren.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zu cups pki invalid siehe&lt;br /&gt;
&lt;br /&gt;
* https://ryansouthgate.com/cups-pki-invalid-printing-error/&lt;br /&gt;
&lt;br /&gt;
=== Xerox Drucker ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Xerox_C325]]&lt;br /&gt;
&lt;br /&gt;
=== HP-Drucker ===&lt;br /&gt;
&lt;br /&gt;
HP bietet mit HPLIP eine Open Source - Unterstützung für Linux.&lt;br /&gt;
&lt;br /&gt;
Falls HPLIP-Status sich wegen eines fehlenden Systray meldet, sollte man auf das GNOME-Panel gehen, rechts klicken -&amp;gt; &amp;quot;Zum Panel hinzufügen &amp;quot; -&amp;gt; &amp;quot;Benachrichtigungsfeld&amp;quot; wählen&lt;br /&gt;
&lt;br /&gt;
Um einen HP-All-In-One-Drucker/Scanner wie der [[HP OfficeJet 8600 Pro Plus]] im Netzwerk zu installieren, startet man als Root &lt;br /&gt;
  hp-setup -i&lt;br /&gt;
und wählt 2 für &amp;lt;code&amp;gt;net&amp;lt;/code&amp;gt; aus.&lt;br /&gt;
&lt;br /&gt;
==== HP OfficeJet Pro 7740 ====&lt;br /&gt;
&lt;br /&gt;
Jedenfalls im Zusammenspiel mit Linux hat der HP OfficeJet Pro 7740 nicht die Qualität und Zuverlässigkeit des HP OfficeJet 8600 Pro Plus. &lt;br /&gt;
&lt;br /&gt;
Aber er funktioniert, wenn nicht mal wieder ein Firmware-Update das Zusammenspiel mit Linux oder Windows zerschießt.&lt;br /&gt;
&lt;br /&gt;
Nach dem letzten Firmware-Update konnten manche Linux-Systeme den Drucker nicht finden. Bei den Systemen mit Ubuntu 24.04 musste der Drucker manuell eingerichtet werden. Beim Drucker hinzufügen musste man folgende URL angeben:&lt;br /&gt;
  ipps://hpofficejet.fritz.box:443/ipp/print&lt;br /&gt;
&lt;br /&gt;
Dann hplip bzw. hpcups auswählen. Dann funktioniert es manchmal.&lt;br /&gt;
&lt;br /&gt;
Allerdings nicht überall. Dann kann man versuchen, die o.a. ipp-Adresse zu nutzen und den Drucker als generischen PCL-Drucker anzulegen. Ich habe als Marke &#039;&#039;&#039;&amp;quot;Generic&amp;quot;&#039;&#039;&#039; gewählt und als Modell &#039;&#039;&#039;&amp;quot;PCL 6/PCL XL&amp;quot;&#039;&#039;&#039;&#039; und als Treiber &#039;&#039;&#039;&amp;quot;Generic ... /hpijs-pcl5e&amp;quot;&#039;&#039;&#039; (Ubuntu 24.04). Dann geht es aber nur schwarzweiß und nur in A4. Außerdem musste ich hpijs installieren:&lt;br /&gt;
&lt;br /&gt;
  sudo aptitude install printer-driver-hpijs hpijs-ppds&lt;br /&gt;
&lt;br /&gt;
=== Brother ===&lt;br /&gt;
&lt;br /&gt;
Die Installation von Brother-Drucker wird seitens Brother mit eigenständigen rpm- bzw- deb-Paketen unterstützt.&lt;br /&gt;
&lt;br /&gt;
Bei der Installation des Brother MFC-260C unter Linux Mint 17 32bit bedarf es folgender Schritte nach dem Download der DEB-Files vom [http://support.brother.com/g/s/id/linux/en/instruction_prn1a.html?c=us_ot&amp;amp;lang=en&amp;amp;redirect=on Brother Solutions Center]:&lt;br /&gt;
&lt;br /&gt;
  sudo mkdir /var/spool/lpd&lt;br /&gt;
  sudo chgrp lp /var/spool/lpd&lt;br /&gt;
  sudo dpkg -i  mfc260clpr-1.0.1-1.i386.deb&lt;br /&gt;
  sudo dpkg -i  mfc260ccupswrapper-1.0.1-1.i386.deb&lt;br /&gt;
&lt;br /&gt;
Außerdem sollte der Benutzer in der Gruppe &amp;lt;code&amp;gt;lp&amp;lt;/code&amp;gt; sein.&lt;br /&gt;
&lt;br /&gt;
Auf 64bit-Systemen müssen zusätzlich die Pakete ia32libs und libstdc++ installiert sein.&lt;br /&gt;
&lt;br /&gt;
== Scannen ==&lt;br /&gt;
&lt;br /&gt;
=== UI fürs Scannen ===&lt;br /&gt;
&lt;br /&gt;
* [https://gitlab.gnome.org/GNOME/simple-scan simple-scan oder GNOME Document Scanner]&lt;br /&gt;
* [https://wiki.ubuntuusers.de/gImageReader/ gImageReader], arbeitet für OCR mit Tesseract&lt;br /&gt;
* gscan2pdf&lt;br /&gt;
* [https://github.com/sbs20/scanservjs ScanServJs]&lt;br /&gt;
&lt;br /&gt;
=== Scanner im Netzwerk ===&lt;br /&gt;
&lt;br /&gt;
Siehe die Anleitung zum [http://wiki.ubuntuusers.de/SANE-Scanserver_im_Netzwerk Scannen im Netzwerk unter Ubuntu]. &lt;br /&gt;
&lt;br /&gt;
Zusätzlich muss noch  in &amp;lt;code&amp;gt;/etc/default/saned&amp;lt;/code&amp;gt; der Start von Saned eingestellt werden:&lt;br /&gt;
&lt;br /&gt;
  RUN=yes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Scannen und OCR ===&lt;br /&gt;
&lt;br /&gt;
Mit Hilfe von scanimage und tesseract lassen sich auch PDFs mit per OCR erkanntem (überlagerndem) Text erstellen.&lt;br /&gt;
&lt;br /&gt;
Das Projekt [https://openpaper.work/de/ Paperwork] bietet auf dieser Basis eine Volltextsuche über sämtliche gescannten Dokumente. Die Installation hat bei mir gut über [[AppImage]] funktioniert. Siehe die [https://openpaper.work/de/download/linux#appimage Anleitung auf der Projekt-Seite].&lt;br /&gt;
&lt;br /&gt;
=== Einzelne Scanner ===&lt;br /&gt;
&lt;br /&gt;
==== Scanner &#039;&#039;&#039;Mustek 1200 UB Plus&#039;&#039;&#039; ====&lt;br /&gt;
&lt;br /&gt;
Für den Scanner &#039;&#039;&#039;Mustek 1200 UB Plus&#039;&#039;&#039; ist neben einer SANE-Installation einschließlich des [http://www.meier-geinitz.de/sane/gt68xx-backend/index.html gt68xx-Backends] (bei OpenSuse 10.3 automatisch) noch Folgendes zu tun:&lt;br /&gt;
* Verzeichnis für Firmware anlegen&lt;br /&gt;
  sudo mkdir -p /usr/share/sane/gt68xx&lt;br /&gt;
* Die Firmware-Datei [http://www.meier-geinitz.de/sane/gt68xx-backend/firmware/sbfw.usb sbfw.usb] herunterladen und im Verzeichnis &amp;lt;code&amp;gt;/usr/share/sane/gt68xx&amp;lt;/code&amp;gt; speichern sowie&lt;br /&gt;
* Von der bisher in der Datei &amp;lt;code&amp;gt;/etc/sane.d/gt68xx.conf&amp;lt;/code&amp;gt; enthaltene Zeile &lt;br /&gt;
     #override &amp;quot;mustek-scanexpress-1200-ub-plus&amp;quot; &lt;br /&gt;
das führende Kommentarzeichen (#) entfernen. &amp;lt;small&amp;gt;Ansonsten wird der Scanner fälschlicherweise als  Mustek BearPaw 1200 CU erkannt.&amp;lt;/small&amp;gt;&lt;br /&gt;
* Das erkannte Scanner-Modell kann man sich ausgeben lassen:&lt;br /&gt;
  scanimage -L&lt;br /&gt;
* Mit der Anwendung &amp;lt;code&amp;gt;xsane&amp;lt;/code&amp;gt; kann man dann scannen.&lt;br /&gt;
&lt;br /&gt;
==== Brother MFC 260C ====&lt;br /&gt;
&lt;br /&gt;
Das Multifunktionsgerät Brother MFC 260 C lässt sich [http://ubuntuforums.org/showthread.php?t=590793 sowohl als Scanner als auch als Drucker] unter Linux einrichten. Dazu ist der Treiber brscan2 von [http://welcome.solutions.brother.com/bsc/public_s/id/linux/en/download_scn.html Brother herunterzuladen].&lt;br /&gt;
&lt;br /&gt;
Für neuere Ubuntu / Linux Mint 64 bit -Versionen müssen symbolische Links angelegt werden:&amp;lt;ref&amp;gt;Vgl. https://wiki.ubuntuusers.de/Scanner/Brother/#Scanner-Treiber-ab-Bionic-Beaver-18-04-64-Bit&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  sudo ln -sf /usr/lib64/sane/libsane-brother* /usr/lib/x86_64-linux-gnu/sane&lt;br /&gt;
  sudo ln -sf /usr/lib64/libbrcolm* /usr/lib/x86_64-linux-gnu&lt;br /&gt;
  sudo ln -sf /usr/lib64/libbrscandec* /usr/lib/x86_64-linux-gnu&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Bei manchen Rechnern funktionieren die Treiber für den Brother MFC-260C nicht mit USB 3.0. Dann muss USB 3.0 im BIOS deaktiviert werden, so dass die Ports als USB 2.0-Ports genutzt werden können.&lt;br /&gt;
&lt;br /&gt;
=== Scannen in verschiedenen Distributionen ===&lt;br /&gt;
==== OpenSuse ====&lt;br /&gt;
* Mit dem Scanner-Modul von yast kann man die korrekte Installation testen.&lt;br /&gt;
&lt;br /&gt;
==== Debian ====&lt;br /&gt;
* Unter [[Debian]] &lt;br /&gt;
** ist neben der Installation von &amp;lt;code&amp;gt;xsane&amp;lt;/code&amp;gt; auch die Installation von &amp;lt;code&amp;gt;sane-utils&amp;lt;/code&amp;gt; erforderlich.&lt;br /&gt;
**  Außerdem muss der jeweilige Benutzer Mitglied der Gruppe &amp;lt;code&amp;gt;scanner&amp;lt;/code&amp;gt; oder aber der Gruppe &amp;lt;code&amp;gt;lp&amp;lt;/code&amp;gt;&amp;lt;ref&amp;gt;Vgl. https://www.linuxquestions.org/questions/slackware-14/sane-and-usb-permission-4175421150/&amp;lt;/ref&amp;gt; sein.&lt;br /&gt;
&lt;br /&gt;
==== Ubuntu ====&lt;br /&gt;
&#039;&#039;&#039;Achtung wohl veraltet&#039;&#039;&#039;&lt;br /&gt;
* Unter [[Ubuntu]] benötigt man jedenfalls in 9.10 Karmic Koala folgende Zeile in &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt;:&lt;br /&gt;
  none    /proc/bus/usb   usbfs           auto                    0       0&lt;br /&gt;
&lt;br /&gt;
Evtl. funktioniert auch &lt;br /&gt;
  none    /proc/bus/usb   usbfs           auto,devmode=0666       0       0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ob die Zeile funktioniert lässt sich mit mount testen:&lt;br /&gt;
  sudo mount -a&lt;br /&gt;
&lt;br /&gt;
* Damit man auch als normaler User auf den Scanner zugreifen kann,&amp;lt;ref&amp;gt;http://www.ubuntu-forum.de/artikel/41977/scanner-wird-als-user-nicht-erkannt-nur-als-root.html&amp;lt;/ref&amp;gt; kreiert man mit&lt;br /&gt;
  sudo joe /etc/udev/rules.d/40-basic-permissions.rules&lt;br /&gt;
(oder irgendeinem anderen Editor) eine Datei mit folgendem Inhalt&lt;br /&gt;
   # USB devices (usbfs replacement)&lt;br /&gt;
  SUBSYSTEM==&amp;quot;usb&amp;quot;, ENV{DEVTYPE}==&amp;quot;usb_device&amp;quot;, MODE=&amp;quot;0666&amp;quot;&lt;br /&gt;
  SUBSYSTEM==&amp;quot;usb_device&amp;quot;, MODE=&amp;quot;0666&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Anschließend muss man das udev-System neustarten:&lt;br /&gt;
  sudo restart udev&lt;br /&gt;
&lt;br /&gt;
Hinweis: Auf [http://wiki.ubuntuusers.de/Scanner#USB ubuntuusers.de] findet sich eine davon leicht abweichende Möglichkeit für das Scannen als normaler User.&lt;br /&gt;
Hinweis 2: Für Ubuntu 9.10 muss man es wohl inzwischen [http://forum.ubuntuusers.de/topic/probleme-mit-scanner-seit-karmic-9-10/ anders machen].&lt;br /&gt;
&lt;br /&gt;
== Energiemanagement ==&lt;br /&gt;
&lt;br /&gt;
=== Akku ===&lt;br /&gt;
Mit &amp;lt;code&amp;gt;upower&amp;lt;/code&amp;gt; kann man sich den Stand des Akkus anzeigen lassen.&amp;lt;ref&amp;gt;Siehe http://askubuntu.com/questions/69556/how-to-check-battery-status-using-terminal .&amp;lt;/ref&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  upower -i /org/freedesktop/UPower/devices/battery_BAT0&lt;br /&gt;
&lt;br /&gt;
Den Pfad für das oben angegebene Kommando findet man durch &lt;br /&gt;
  upower -e&lt;br /&gt;
&lt;br /&gt;
Eine komplette Übersicht erhält man mit&lt;br /&gt;
  upower --dump&lt;br /&gt;
&lt;br /&gt;
=== Festplatte im Leerlauf ausschalten ===&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.foxplex.com/sites/festplatten-standby-im-leerlauf-mit-hdparm-und-hd-idle/&lt;br /&gt;
&lt;br /&gt;
=== Energieverbrauch minimieren ===&lt;br /&gt;
Zur Ermittlung der Verbraucher helfen&lt;br /&gt;
* [http://manpages.ubuntu.com/manpages/focal/man8/powerstat.8.html powerstat]&lt;br /&gt;
* [https://01.org/sites/default/files/page/powertop_users_guide_201412.pdf powertop]&lt;br /&gt;
** https://wiki.ubuntuusers.de/PowerTOP/&lt;br /&gt;
** https://www.admin-magazin.de/Das-Heft/2011/02/Energiefresser-unter-Linux-mit-PowerTOP-enttarnen/(offset)/2&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* http://www.thinkwiki.org/wiki/How_to_reduce_power_consumption&lt;br /&gt;
* https://metebalci.com/blog/a-minimum-complete-tutorial-of-cpu-power-management-c-states-and-p-states/&lt;br /&gt;
&lt;br /&gt;
== Verbindung mit Handy/PDA ==&lt;br /&gt;
&lt;br /&gt;
* [[Synchronisation Web-PC-Handy]]&lt;br /&gt;
** [[Sony Ericsson K800i]]&lt;br /&gt;
*** [[Sony Ericsson K800i über Bluetooth an Linux-PC]]&lt;br /&gt;
* [[Synchronisation unter Linux]]&lt;br /&gt;
&lt;br /&gt;
== Weitere Anwendungen ==&lt;br /&gt;
&lt;br /&gt;
=== Editoren ===&lt;br /&gt;
&lt;br /&gt;
==== Grafische Editoren und Entwicklungsumgebungen ====&lt;br /&gt;
&lt;br /&gt;
* Geany&lt;br /&gt;
* [[Netbeans]]&lt;br /&gt;
* [[Eclipse]]&lt;br /&gt;
&lt;br /&gt;
==== Editoren fürs Terminalfenster ====&lt;br /&gt;
&lt;br /&gt;
* [[vim]]&lt;br /&gt;
* nano&lt;br /&gt;
* joe - Benutzerführung wie MS WordStar (etwas antiquiert)&lt;br /&gt;
* emacs&lt;br /&gt;
&lt;br /&gt;
=== Textverarbeitung ===&lt;br /&gt;
&lt;br /&gt;
Die Standard-Textverarbeitung unter Linux ist derzeit [[LibreOffice]] Writer.&lt;br /&gt;
&lt;br /&gt;
=== Plattformübergreifende Software ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Plattformübergreifende Software]]&lt;br /&gt;
&lt;br /&gt;
=== CAD ===&lt;br /&gt;
&lt;br /&gt;
* QCad ([[OpenSource]]) - 2D-CAD auf [[Qt]]-Basis&lt;br /&gt;
* [http://www.gcad3d.org/ GCAD_3D] 3D-CAD (Freeware) auf [[Gtk]]-Basis&lt;br /&gt;
* [http://sourceforge.net/projects/pythoncad/ PythonCAD] ([[OpenSource]])&lt;br /&gt;
* [http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Main_Page FreeCAD] ([[OpenSource]])&lt;br /&gt;
** [http://sourceforge.net/apps/mediawiki/free-cad/index.php?title=Draft_tutorial Einstiegstutorial]&lt;br /&gt;
* [[OpenSCAD]] - a simple CAD application based on scripts&lt;br /&gt;
&lt;br /&gt;
=== Business Software ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.linux-community.de/Internal/Artikel/Online-Artikel/Versuch-einer-Entscheidungshilfe-fuer-die-richtige-Linux-Unternehmenssoftware Überblick über Linux-Business-Software]&lt;br /&gt;
&lt;br /&gt;
* Ein weiteres [[DMS]] ist [http://www.archivista.ch/de/pages/support/installation.php Archivista]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* [[Informationstechnik#Dokumentenmanagementsystem]]&lt;br /&gt;
&lt;br /&gt;
=== Groupware-Server ===&lt;br /&gt;
* [http://www.kolab.org/about-kolab-server.html Kolab]&lt;br /&gt;
* Citadel&lt;br /&gt;
* [http://www.opengroupware.org/en/index.html OpenGroupware]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:OldCt]]&lt;br /&gt;
[[Category:Informationstechnik]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=DICOM&amp;diff=23192</id>
		<title>DICOM</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=DICOM&amp;diff=23192"/>
		<updated>2026-10-21T16:33:57Z</updated>

		<summary type="html">&lt;p&gt;Codica: Die Seite wurde neu angelegt: „DICOM Bilder gibt es im medizinischen Bereich, z.B. nach einem MRT, teilweise (2026!) noch als CD.  == Viewer unter Linux ==  [https://weasis.org/en/getting-started/download-dicom-viewer/ Weasis] ist ein Open-Source-Viewer   --------- Category:Linux Category:Desktop-Software“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;DICOM Bilder gibt es im medizinischen Bereich, z.B. nach einem MRT, teilweise (2026!) noch als CD.&lt;br /&gt;
&lt;br /&gt;
== Viewer unter Linux ==&lt;br /&gt;
&lt;br /&gt;
[https://weasis.org/en/getting-started/download-dicom-viewer/ Weasis] ist ein Open-Source-Viewer&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---------&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Desktop-Software]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23191</id>
		<title>AceMagic Kron Mini</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23191"/>
		<updated>2026-10-16T13:31:01Z</updated>

		<summary type="html">&lt;p&gt;Codica: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://acemagic.net/de/products/kronmini-series-k1 Geräteinfo auf der Herstellerseite]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Das Auseinanderbauen des Mini-PC zeigt https://www.youtube.com/watch?v=XtfTE0zn_rM&lt;br /&gt;
&lt;br /&gt;
Manche Modelle haben&lt;br /&gt;
* MediaTek Wi-Fi 6E MT7902 Wireless LAN Card&lt;br /&gt;
** Treiber in Kernel ab V 7.1&lt;br /&gt;
** Vorher: &lt;br /&gt;
*** https://github.com/OnlineLearningTutorials/mt7902_temp&lt;br /&gt;
*** https://www.cnx-software.com/2026/03/20/enabling-mediatek-m7902-wifi-and-bluetooth-drivers-on-ubuntu-24-04-the-easy-way/&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HTPC]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=K%C3%BCnstliche_Intelligenz&amp;diff=23190</id>
		<title>Künstliche Intelligenz</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=K%C3%BCnstliche_Intelligenz&amp;diff=23190"/>
		<updated>2026-10-16T13:12:23Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Softwareentwicklung mit Künstlicher Intelligenz */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Allgemeines ==&lt;br /&gt;
Siehe [[Neuronale Netze]]&lt;br /&gt;
&lt;br /&gt;
=== Rechtliches ===&lt;br /&gt;
&lt;br /&gt;
Bei Systemen, die mit Künstlicher Intelligenz arbeiten, sind insbesondere die EU-Datenschutzgrundverordnung sowie die -Künstliche-Intelligenz-Verordnung zu beachten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://datenschutz-generator.de/ki-kompetenz/&lt;br /&gt;
&lt;br /&gt;
== ChatGPT ==&lt;br /&gt;
&lt;br /&gt;
ChatGPT ist eine künstliche Intelligenz, mit der man Dialoge im WhatsApp-Stil führen kann. Es kann nach Anmeldung auf openai kostenlos genutzt werden.&lt;br /&gt;
&lt;br /&gt;
Eine lustige Anwendung ist [https://www.ricoshet.com/ ricoshet.com]; dort spricht - nach Vorgabe eines Themas - ChatGPT mit sich selbst.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.golem.de/news/kuenstliche-intelligenz-so-funktioniert-chatgpt-2302-171644-3.html&lt;br /&gt;
&lt;br /&gt;
== Sprachmodelle ==&lt;br /&gt;
&lt;br /&gt;
Viele andere Sprachmodelle kann man auch lokal (und kostenlos) testen. 32GB sind aber mindestens erforderlich, 64GB machen die Nutzung rascher.&lt;br /&gt;
&lt;br /&gt;
Als Tools bieten sich an:&lt;br /&gt;
* [https://justvugg.github.io/colibri/ colibri]&lt;br /&gt;
* [https://msty.ai/ Msty] &lt;br /&gt;
* GPT4all&lt;br /&gt;
&lt;br /&gt;
== Spracherkennung ==&lt;br /&gt;
&lt;br /&gt;
* https://gnulinux.ch/open-source-spracherkennung&lt;br /&gt;
* https://www.notdefine.de/projects/nerd-dictation-spracheingabe-unter-linus-in-deutsch&lt;br /&gt;
* https://github.com/QuantiusBenignus/BlahST&lt;br /&gt;
&lt;br /&gt;
== Anwendungsfelder von Künstlicher Intelligenz ==&lt;br /&gt;
=== Softwareentwicklung mit Künstlicher Intelligenz ===&lt;br /&gt;
&lt;br /&gt;
Häufige Probleme mit Large Language Models (LLMs) bei der Unterstützung von Programmierern können angeblich mit dem [https://github.com/multica-ai/andrej-karpathy-skills CLAUDE.md von ForrestChang] vermieden werden.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://statistician-in-stilettos.medium.com/best-practices-i-learned-for-ai-assisted-coding-70ff7359d403&lt;br /&gt;
* https://dev.to/ranndy360/ai-coding-best-practices-in-2025-4eel&lt;br /&gt;
* https://manus.im/de/blog/best-ai-coding-assistant-tools&lt;br /&gt;
&lt;br /&gt;
=== Emails schreiben mit Künstlicher Intelligenz ===&lt;br /&gt;
&lt;br /&gt;
Für [[Thunderbird]] gibt es ein Add-On ThunderAI.&lt;br /&gt;
&lt;br /&gt;
-------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23189</id>
		<title>Dart</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23189"/>
		<updated>2026-10-11T05:55:56Z</updated>

		<summary type="html">&lt;p&gt;Codica: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dart ist eine Programmiersprache, die plattformübergreifend kompiliert werden kann:&lt;br /&gt;
* Apps&lt;br /&gt;
** Android&lt;br /&gt;
** iOS&lt;br /&gt;
* Web&lt;br /&gt;
** JavaScript&lt;br /&gt;
** WASM&lt;br /&gt;
* Desktop&lt;br /&gt;
** Linux&lt;br /&gt;
** MacOS&lt;br /&gt;
** Windows&lt;br /&gt;
&lt;br /&gt;
== Dart im Frontend ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
&lt;br /&gt;
* [[Flutter]]&lt;br /&gt;
* Jaspr&lt;br /&gt;
&lt;br /&gt;
== Dart im Backend ==&lt;br /&gt;
&lt;br /&gt;
* ServerPod&lt;br /&gt;
* [https://pub.dev/packages/relic Relic] - ein WebServer, Basis für ServerPod, Nachfolger von Shelf&lt;br /&gt;
** [https://docs.dartrelic.dev/ Dokumentation zu Relic]&lt;br /&gt;
&lt;br /&gt;
== Dart-App für die Kommandozeile ==&lt;br /&gt;
&lt;br /&gt;
* https://www.freecodecamp.org/news/learn-command-line-interface-cli-development-with-dart-from-zero-to-a-fully-published-developer-tool/&lt;br /&gt;
&lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;br /&gt;
[[Category:Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Roomba_980&amp;diff=23188</id>
		<title>Roomba 980</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Roomba_980&amp;diff=23188"/>
		<updated>2026-10-08T10:55:06Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Steuerung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Der iRobot Roomba 980 ist ein autonom arbeitender Staubsauger.&lt;br /&gt;
&lt;br /&gt;
== Technische Daten ==&lt;br /&gt;
Siehe &lt;br /&gt;
* [http://www.irobot.com/de-DE/roomba900.aspx?Country=DE iRobot Roomba Benutzerportal]&lt;br /&gt;
* http://shop.irobot.de/roomba-staubs-staubsaugerroboter-roomba-980/R980040.html&lt;br /&gt;
&lt;br /&gt;
== Steuerung ==&lt;br /&gt;
&lt;br /&gt;
Der iRobot Roomba 980 lässt sich mittels der auf dem Gehäuse angebrachten Knöpfe sowie mittels WiFi mittels einer App, z.B. für Android, steuern.&lt;br /&gt;
&lt;br /&gt;
Daneben gibt es noch freie Programmierschnittstellen, die durch Reverse Engineering erstellt wurden:&lt;br /&gt;
* [https://github.com/koalazak/dorita980 Dorita980] - eine [[Node.js]]-Bibliothek &lt;br /&gt;
* [https://github.com/koalazak/rest980 Rest980] - eine [[REST]]-API&lt;br /&gt;
&lt;br /&gt;
Darauf basierend wird auch an einer Verknüpfung zu [[OpenHAB]] gearbeitet. Siehe&lt;br /&gt;
* https://community.openhab.org/t/irobot-9xx-on-openhab/17774/11&lt;br /&gt;
&lt;br /&gt;
Mit der &lt;br /&gt;
* [http://www.roowifi.com/roowifi-api-11b/ RooWifi]&lt;br /&gt;
soll es auch möglich sein, den Roomba wie ein Auto zu fahren (also vorwärts, rückwärts und lenken). Positive Aussagen, dass dies auch beim Roomba 980 funktioniert, sind allerdings nicht bekannt. Siehe dazu auch die [https://github.com/roowifi/API-Qt Github-Seite zur RooWifi-API]. &lt;br /&gt;
&lt;br /&gt;
Nicht für die 900er-Serie, sondern für die Serien 4XX, 5XX, 7XX scheint Roomba eine Schnittstelle namens SCI veröffentlicht zu haben.&amp;lt;ref&amp;gt;Siehe http://www.robotappstore.com/Knowledge-Base/1-Introduction-to-Roomba-Programming/15.html .&amp;lt;/ref&amp;gt; Ähnliches gilt für die RoombaComm-Schnittstelle.&amp;lt;ref&amp;gt; Vgl. https://todbot.com/blog/2006/02/14/roombacomm-roomba-control-communications-api-release-0/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zur Integration mit [[Homeassistant]] siehe [[Homeassistant#iRobot_Roomba]].&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
[[Category:SmartHome]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Homeassistant&amp;diff=23187</id>
		<title>Homeassistant</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Homeassistant&amp;diff=23187"/>
		<updated>2026-10-08T10:53:39Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Einzelne Integrationen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[https://www.home-assistant.io/ Home Assistant HASS] - in [[Python]] programmiert&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Installation mit Docker Image ===&lt;br /&gt;
Docker-Images gibt es von Homeassistant selbst und von [https://hub.docker.com/r/linuxserver/homeassistant LinuxServer.io].&lt;br /&gt;
&lt;br /&gt;
Beim Laufenlassen als Docker-Image sollte auf die gemounteten Volumes mit einem normalen Nutzer zugegriffen werden. Neben entsprechendem Start des Containers ist dafür wohl das Sticky bit auf dem eingebundenen Verzeichnis notwendig:&lt;br /&gt;
&lt;br /&gt;
* https://community.home-assistant.io/t/installing-ha-in-docker-on-ubuntu-as-non-root-user/48424/7&lt;br /&gt;
* https://github.com/tribut/homeassistant-docker-venv&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Es gibt auch Versuche, den Home-Assistant-Server nicht im Network-Host-Mode, sondern im Bridge-Mode zu betreiben:&lt;br /&gt;
&lt;br /&gt;
* https://community.home-assistant.io/t/improving-docker-security-non-root-configuration/399971/6&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration als SSL-Server ===&lt;br /&gt;
&lt;br /&gt;
Home Assistant bekommt noch mehr Power, wenn es über https zugegriffen werden kann. Das geht wohl mit [https://www.home-assistant.io/integrations/duckdns DuckDNS.org] und letsencrpyt.&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.splitbrain.org/blog/2017-08/10-homeassistant_duckdns_letsencrypt&lt;br /&gt;
* https://www.home-assistant.io/blog/2017/09/27/effortless-encryption-with-lets-encrypt-and-duckdns/&lt;br /&gt;
* https://www.snbforums.com/threads/duckdns-with-letsencrypt.86114/&lt;br /&gt;
&lt;br /&gt;
== Templates ==&lt;br /&gt;
&lt;br /&gt;
Um den Wert eines Sensors in der von Homeassistant genutzten [[Jinja2]] genutzen Template-Sprache auszulesen, benutzt man folgende Syntax:&lt;br /&gt;
&lt;br /&gt;
   &amp;quot;{{states(&#039;sensor.balkonsteckdose_leistung&#039;)}}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Dabei sind &lt;br /&gt;
* die geschweiften Klammern die Info, dass es sich um Template-Sprache handelt&lt;br /&gt;
* das states() die Info, dass man Zustände haben will,&lt;br /&gt;
* das sensor. die Art der Entity und&lt;br /&gt;
* das balkonsteckdose_leistung der Name der Entity - zu finden unter Homeassistant -&amp;gt; Einstellungen -&amp;gt; Geräte &amp;amp; Dienste -&amp;gt; Entitäten&lt;br /&gt;
&lt;br /&gt;
== MQTT ==&lt;br /&gt;
&lt;br /&gt;
Home Assistant hat mit Auto Discovery einen Standard zur automatischen Erkennung von angebotenen Daten auf MQTT gesetzt.&lt;br /&gt;
&lt;br /&gt;
Siehe [[MQTT#MQTT_Auto_Discovery]]&lt;br /&gt;
&lt;br /&gt;
Wenn man mittels configuration.yaml selbst einen Sensor konfiguriert, sollte das &amp;quot;state_topic&amp;quot; nicht mit einem &amp;quot;/&amp;quot; beginnen. Auch die Veröffentlichung des Topics sollte ohne ein  &amp;quot;/&amp;quot; zu Beginn des Topics erfolgen.&lt;br /&gt;
&lt;br /&gt;
== Einzelne Integrationen ==&lt;br /&gt;
&lt;br /&gt;
=== Google Chromecast ===&lt;br /&gt;
&lt;br /&gt;
HomeAssistant kann Medien auf einem Google Chromecast abspielen, aber auch ein &amp;quot;Dashboard&amp;quot; mit Infos zum Smart Home darstellen.&lt;br /&gt;
&lt;br /&gt;
Der zugehörige Befehl muss leider als Admin ausgeführt werden. Ein Work-Around geht über die REST-API-Schnittstelle. Siehe &lt;br /&gt;
https://community.home-assistant.io/t/should-service-cast-show-lovelace-view-be-admin-only/295057/2&lt;br /&gt;
&lt;br /&gt;
Dafür gibt es ein [https://github.com/home-assistant/frontend/issues/9884 Github Issue], das aber leider nicht weiter verfolgt wird.&lt;br /&gt;
&lt;br /&gt;
=== iRobot Roomba ===&lt;br /&gt;
&lt;br /&gt;
Der [[Roomba 980]] wird von der iRobot-Integration gut unterstützt.&lt;br /&gt;
&lt;br /&gt;
Ein fleißiger Entwickler hat eine verbesserte Integration erstellt: https://community.home-assistant.io/t/custom-integration-roomba-plus/1011112/6&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Wetterdienste ===&lt;br /&gt;
&lt;br /&gt;
* [https://community.home-assistant.io/t/definitive-guide-to-weather-integrations/736419 Überblick von AJedilAm]&lt;br /&gt;
* Der norwegische Wetterdienst Meteorologisk liefert kostenlose Wetterdaten. Dafür gibt es auch eine Homeassistant Integration.&lt;br /&gt;
&lt;br /&gt;
=== Weisshaupt Gaskessel ===&lt;br /&gt;
&lt;br /&gt;
* https://github.com/erikkastelec/hass-WEM-Portal/tree/master&lt;br /&gt;
&lt;br /&gt;
Möglicherweise einen Weg zur Integration bietet auch der modbus. Siehe&lt;br /&gt;
* https://community.home-assistant.io/t/weishaupt-heatpump-integration-via-modbus/436823&lt;br /&gt;
&lt;br /&gt;
=== SAILER Heizungssteuerung ===&lt;br /&gt;
&lt;br /&gt;
Eine Basis für eine Integration bietet https://github.com/codica20/sailer .&lt;br /&gt;
&lt;br /&gt;
== Einzelne Anwendungsfälle ==&lt;br /&gt;
&lt;br /&gt;
=== Fußbodenheizung ===&lt;br /&gt;
&lt;br /&gt;
* [https://www.simon42.com/home-assistant-fussbodenheizung/#hardware-fuer-fussbodenheizung Umfangreiche Automationen für Fußbodenheizung]&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Gebäudeautomation]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Ssh&amp;diff=23186</id>
		<title>Ssh</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Ssh&amp;diff=23186"/>
		<updated>2026-10-04T20:03:14Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* SSH hinter Firewall */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeines ==&lt;br /&gt;
&lt;br /&gt;
SSH bietet standardmäßig einen verschlüsselten Konsolenzugang von einem entfernten Computer. Der Standardport ist 22&amp;lt;ref&amp;gt;http://www.pro-linux.de/berichte/ssh-absichern.html&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Sicherheit ==&lt;br /&gt;
&lt;br /&gt;
SSH bietet einen sehr sicheren Zugang zu einem Server. Allerdings muss man auch hier die [http://www.pro-linux.de/berichte/ssh-absichern.html Sicherheitslücken möglichst gering halten].&lt;br /&gt;
&lt;br /&gt;
== X-Anwendungen über SSH nutzen ==&lt;br /&gt;
* &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt; unterstützt das Laufenlassen von graphischen X-Programmen über den  einfachen Befehl:&lt;br /&gt;
   &amp;lt;code&amp;gt;&lt;br /&gt;
     ssh -X user@ip-adresse&lt;br /&gt;
   &amp;lt;/code&amp;gt;&lt;br /&gt;
* Voraussetzung auf dem Computer, der die X-Befehle erzeugt, ist allerdings, dass in der Datei &amp;lt;code&amp;gt; /etc/ssh/sshd_config &amp;lt;/code&amp;gt; folgende Zeile enthalten ist:&lt;br /&gt;
   &amp;lt;code&amp;gt;&lt;br /&gt;
     X11Forwarding yes&lt;br /&gt;
     X11UseLocalhost no # This [http://lists.mindrot.org/pipermail/openssh-unix-dev/2005-April/022769.html is sometimes necessary!]&lt;br /&gt;
   &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nach der Änderung wird der SSH-Server (Daemon) folgendermaßen neugestartet:&lt;br /&gt;
   &amp;lt;code&amp;gt;&lt;br /&gt;
     /etc/init.d/sshd restart&lt;br /&gt;
   &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sollen auch X-Anwendungen auf dem Remote-Rechner als Root ausgeführt werden (und man sich aus Sicherheitsgründen nicht als root mit dem Remote-Rechner verbinden will), muss das beim Einloggen erstellte .Xauthority-File zum User root kopiert werden:&amp;lt;ref&amp;gt;http://www.redwireservices.com/remote-x11-for-linux-unix&amp;lt;/ref&amp;gt;&lt;br /&gt;
  sudo cp ~/.Xauthority ~root/&lt;br /&gt;
  sudo chown root ~root/.Xauthority&lt;br /&gt;
&lt;br /&gt;
== SSH unter Windows ==&lt;br /&gt;
&lt;br /&gt;
=== SSH-Windows-Client ===&lt;br /&gt;
==== PuTTY ====&lt;br /&gt;
* [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html PuTTY] ist ein [[Plattformübergreifende Software|plattformübergreifender]] SSH-Client.&lt;br /&gt;
&lt;br /&gt;
==== Zugriff auf SSH-(Linux)-Server (einschl. GUI) ====&lt;br /&gt;
&lt;br /&gt;
===== via WinSCP =====&lt;br /&gt;
&lt;br /&gt;
Mit [http://winscp.net/eng/docs/lang:de WinSCP] lässt sich einfach auf andere Dateien zugreifen.&lt;br /&gt;
&lt;br /&gt;
===== via CygWin =====&lt;br /&gt;
* [http://www.cygwin.com/ CygWin] installieren (inklusive openssh-Modul)&lt;br /&gt;
* Los geht&#039;s: &lt;br /&gt;
  ssh user@ip-adresse&lt;br /&gt;
* Um X-Anwendungen zu starten:&lt;br /&gt;
*# zusätzlich CygWin-Modul für X installieren&lt;br /&gt;
*# in der CygWin-Shell folgendes eingeben:&lt;br /&gt;
  &amp;lt;code&amp;gt;&lt;br /&gt;
  export DISPLAY=:0.0&lt;br /&gt;
  X &amp;amp;&lt;br /&gt;
  ssh -X user@ip-adresse&lt;br /&gt;
  kde&lt;br /&gt;
  &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;user&amp;lt;/code&amp;gt; ist der Name des Nutzers auf dem entfernten Rechner &amp;lt;code&amp;gt;ip-adresse&amp;lt;/code&amp;gt; die IP-Adresse des entfernten Rechners. Im Beispiel wird davon ausgegangen, dass KDE auf dem entfernten Rechner installiert ist und mit &amp;lt;code&amp;gt;kde&amp;lt;/code&amp;gt; aufgerufen werden kann.&lt;br /&gt;
&lt;br /&gt;
Den Gnome Display Manager kann man auch [http://people.w3.org/~dom/archives/2005/09/setting-up-a-secure-remote-x-session-with-gdm/ via SSH starten und X weiterleiten].&lt;br /&gt;
Die Alternative ist die Benutzung von [http://ubuntuforums.org/showthread.php?t=1544847&amp;amp;page=1 x11vnc, getunnelt mittels ssh und damit VNC statt X]&lt;br /&gt;
&lt;br /&gt;
=== SSH-Windows-Server ===&lt;br /&gt;
&lt;br /&gt;
==== freeSSHd ====&lt;br /&gt;
* [http://www.freesshd.com/ freeSSHd] ist ein [[Open Source]] SSH Server für [[Windows]].&lt;br /&gt;
&lt;br /&gt;
====  CygWin-SSH-Server ====&lt;br /&gt;
* [http://www.adminspotting.net/articles/windows/installing-a-ssh-server-on-windows-with-cygwin.html CygWin-SSH-Servers unter Windows XP als Service]&lt;br /&gt;
* [http://pigtail.net/LRP/printsrv/cygwin-sshd.html Installation von eines CygWin-SSH-Servers unter Windows XP als Service]&lt;br /&gt;
* [http://www.fz-juelich.de/jsc/docs/tki/tki_html/t0375/t0375.html Kurzversion dieser Anleitung]&lt;br /&gt;
&lt;br /&gt;
== Datei-Zugriff ==&lt;br /&gt;
&lt;br /&gt;
=== Zugriff unter KDE (z.B. Konqueror) über SSH ===&lt;br /&gt;
&lt;br /&gt;
Unter Linux kann auf die Dateien eines entfernten Rechners recht einfach zugegriffen werden: &lt;br /&gt;
Einfach &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
  fish://user@remoteIP&lt;br /&gt;
&amp;lt;/code&amp;gt; &lt;br /&gt;
in die Konqueror- oder eine andere Adressleiste eingeben. &amp;lt;code&amp;gt;user&amp;lt;/code&amp;gt; ist dabei der Login-Name auf dem entfernten Rechner.&lt;br /&gt;
&lt;br /&gt;
=== Kopieren mit scp ===&lt;br /&gt;
&lt;br /&gt;
Ansonsten hilft das Programm &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt;, das mit ssh mitgeliefert wird:&lt;br /&gt;
&lt;br /&gt;
  scp -p source.dat user@ip-adresse:destination.dat&lt;br /&gt;
&lt;br /&gt;
Der Schalter &amp;lt;code&amp;gt;-p&amp;lt;/code&amp;gt; sorgt dafür, dass insbesondere das Änderungsdatum erhalten bleibt.&lt;br /&gt;
&lt;br /&gt;
== SSH ohne Passwortabfrage ==&lt;br /&gt;
&lt;br /&gt;
SSH bietet mehrere Authentifizierungsmöglichkeiten.&amp;lt;ref&amp;gt;http://www.schlittermann.de/doc/ssh&amp;lt;/ref&amp;gt; Sehr einfach zu nutzen ist - neben der Passwortabfrage - der Public-Key-Modus. Dazu muss man auf dem SSH-Client &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
  ssh-keygen&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
ohne Parameter starten und alle Abfragen mit einem simplen Return bestätigen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dann kopiert man die dadurch erzeugte Datei &amp;lt;code&amp;gt;~/.ssh/id_rsa.pub&amp;lt;/code&amp;gt; mit dem öffentlichen Schlüssel vom Client auf den Server und nennt sie dort &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt;: &lt;br /&gt;
  scp ~/.ssh/id_rsa.pub ssh-server.de:.ssh/authorized_keys&lt;br /&gt;
Falls &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; auf dem Server bereits existiert, kann man den Inhalt der Datei &amp;lt;code&amp;gt;~/.ssh/id_rsa.pub&amp;lt;/code&amp;gt; auch anhängen; dann funktionieren die bisherigen Einwahl-Möglichkeiten weiter. Beim nächsten Einloggen vom Client auf den Server wird man nicht mehr nach dem Passwort gefragt!&lt;br /&gt;
&lt;br /&gt;
Eine Kurzform für das Kopieren und Anfügen bietet folgender Befehl:&lt;br /&gt;
  ssh-copy-id user@ssh-server.de&lt;br /&gt;
&lt;br /&gt;
== SSH ohne known hosts-Abfrage ==&lt;br /&gt;
&lt;br /&gt;
Durch Hinzufügen der Optionen&lt;br /&gt;
  -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no&lt;br /&gt;
als Parameter für SSH wird das [http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-host-key-checking.html Host-Key-Checking von SSH umgangen], &#039;&#039;&#039;Risiko: Das ermöglicht Man-in-the-Middle-Attacken.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Man kann dies für spezifische Hosts auch dauerhaft in der (notfalls anzulegenden) Datei &amp;lt;code&amp;gt;/home/USER/.shh/config&amp;lt;/code&amp;gt; festlegen&amp;lt;ref&amp;gt;Siehe http://linuxcommando.blogspot.de/2008/10/how-to-disable-ssh-host-key-checking.html&amp;lt;/ref&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  Host 192.168.0.*&lt;br /&gt;
     StrictHostKeyChecking no&lt;br /&gt;
     UserKnownHostsFile=/dev/null&lt;br /&gt;
  Host RECHNER.fritz.box&lt;br /&gt;
     StrictHostKeyChecking no&lt;br /&gt;
     UserKnownHostsFile=/dev/null&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Auch hier gilt extreme Vorsicht: &#039;&#039;&#039;Das ermöglicht Man-in-the-Middle-Attacken.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Siehe auch diese [http://www.symantec.com/connect/articles/ssh-host-key-protection Erläuterung des Host-Key-Checkings].&lt;br /&gt;
&lt;br /&gt;
== SSH mit anderem Port ==&lt;br /&gt;
&lt;br /&gt;
Wenn man auf einen SSH-Server zugreifen will, der nicht auf dem Standardport läuft, haben die verschiedenen Client-Programme unterschiedliche Arten, diesen Port zu akzeptieren:&lt;br /&gt;
* mit dem Kommandozeilenparameter &amp;lt;code&amp;gt;--port&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;-p&amp;lt;/code&amp;gt;&lt;br /&gt;
* in der URL &amp;lt;code&amp;gt;SERVERNAME:PORT&amp;lt;/code&amp;gt;&lt;br /&gt;
* über &amp;lt;code&amp;gt;/etc/ssh/config&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;&lt;br /&gt;
  Host XY&lt;br /&gt;
    HostName SERVERNAME&lt;br /&gt;
    Port PORT&lt;br /&gt;
&lt;br /&gt;
== dauerhafte SSH Verbindungen ==&lt;br /&gt;
&lt;br /&gt;
Will man ein SSH-Terminal gelegentlich wieder aufrufen, hilft dafür das Paket &amp;lt;code&amp;gt;screen&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Dieses stellt ein virtuelles Terminal dar, das auf mehreren Clients angezeigt werden kann. Falls dabei die falsche &amp;lt;code&amp;gt;$TERM&amp;lt;/code&amp;gt;-Variable angezeigt wird, kann man dies richtigstellen:&lt;br /&gt;
  export TERM=xterm&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SSH hinter Firewall ==&lt;br /&gt;
&lt;br /&gt;
Mithilfe von SSH-reverse-Tunnels kann man eine Firewall vor dem Remote-Rechner zu Hause H überwinden. Auf diesen kann man von einem Computer im Internet I folgendermaßen zugreifen:&lt;br /&gt;
Auf Rechner H Folgendes (z.B. als [[Cron]]-Job) ausführen (SSH-Reverse-Tunnel einrichten):&lt;br /&gt;
  ssh -C -f -N -R2222:localhost:22 ip.of.I&lt;br /&gt;
&lt;br /&gt;
Auf Rechner I kann man dann auf H folgendermaßen zugreifen:&lt;br /&gt;
  ssh -p 2222 localhost&lt;br /&gt;
Dabei bitte Passwort des entfernten Rechners angeben, obwohl das des localhost angefordert wird.&lt;br /&gt;
&lt;br /&gt;
Sitzt man selbst hinter einer Firewall am Rechner in der Arbeit A, hat aber einen Rechner I im Internet zur Verfügung muss man zusätzlich zum obigen Einrichten eines Reverse-Tunnels von H zu I noch einen Forward-Tunnel von A zu I einrichten.&amp;lt;ref&amp;gt;Vergleiche http://openbook.galileocomputing.de/linux/linux_kap21_003.html#dodtp09514538-0f5b-4580-9745-a2c1ca551a6d&amp;lt;/ref&amp;gt; Dazu gibt man auf Rechner A Folgendes ein:&lt;br /&gt;
  ssh -C -f -N -L2223:localhost:2222 ip.of.I&lt;br /&gt;
&lt;br /&gt;
Dann kann man von Rechner A (über I) auf H folgendermaßen zugreifen:&lt;br /&gt;
  ssh -p 2223 localhost&lt;br /&gt;
&lt;br /&gt;
Hinweis: Zur Fehlersuche oder um einen [[Systemd]]-Service einzurichten, kann man das &amp;quot;-f&amp;quot; in den obigen Befehlen weglassen. Es führt dazu, dass SSH nach dem Verbindungsaufbau &amp;quot;forkt&amp;quot;, also im Hintergrund weiterarbeitet.&lt;br /&gt;
&lt;br /&gt;
== SSH-Tunnel auf Port on &amp;quot;remote&amp;quot; localhost ==&lt;br /&gt;
&lt;br /&gt;
Mit&lt;br /&gt;
  ssh -L 18384:localhost:8384 $REMOTE_HOST&lt;br /&gt;
&lt;br /&gt;
kann man einen Tunnel vom nahen 18384-Port auf den entfernten 8384-Host bauen. Damit erscheint der Zugriff auf dem nahen Rechner mit &lt;br /&gt;
  localhost:18384&lt;br /&gt;
auf dem entfernten Rechner wie wenn lokal auf Port 8384 zugegriffen wird.&lt;br /&gt;
&lt;br /&gt;
== SSH über mehrere Rechner ==&lt;br /&gt;
&lt;br /&gt;
Szenario: Man ist auf Rechner A, kann auf Rechner C aber nicht direkt von A sich einloggen, sondern nur von Rechner B, den man über Port 234.&lt;br /&gt;
&lt;br /&gt;
Dann kann man auf Rechner A ausführen:&lt;br /&gt;
  ssh -p 234 B&lt;br /&gt;
&lt;br /&gt;
Und in der sich öffnenden SSH-Shell von Rechner B&lt;br /&gt;
  ssh C&lt;br /&gt;
&lt;br /&gt;
Oder - und das ist der Trick hier - man nutzt die &amp;lt;code&amp;gt;ProxyJump&amp;lt;/code&amp;gt;-Anweisung in der .ssh/config: &lt;br /&gt;
&lt;br /&gt;
  Host C&lt;br /&gt;
      ProxyJump B:234&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://superuser.com/questions/96489/an-ssh-tunnel-via-multiple-hops&lt;br /&gt;
&lt;br /&gt;
== Autovervollständigung in der Shell ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[Linux-Tipps#Autovervollständigung_für_Rechnernamen]]&lt;br /&gt;
&lt;br /&gt;
== SSH-Client für Handys ==&lt;br /&gt;
&lt;br /&gt;
* ConnectBot für [[Android]]&lt;br /&gt;
* [http://xk72.com/midpssh/wiki/ SSH-Client-Midlet]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Remote Desktop]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Server-Software]]&lt;br /&gt;
[[Category:Windows]]&lt;br /&gt;
[[Category:Netzwerk]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Mozilla_Firefox&amp;diff=23185</id>
		<title>Mozilla Firefox</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Mozilla_Firefox&amp;diff=23185"/>
		<updated>2026-10-03T05:57:04Z</updated>

		<summary type="html">&lt;p&gt;Codica: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Firefox ist ein laufend aktualisierter [[Open Source]]-Web-Browser.&lt;br /&gt;
&lt;br /&gt;
Unzählige &amp;quot;Add-Ons&amp;quot; sind verfügbar, z.B.&lt;br /&gt;
* das Screenshot-Add-On [https://addons.mozilla.org/de/firefox/addon/fireshot/?src=search FireShot] (in der einfachen Version kostenlos, allerdings nur für [[Windows]], nicht für [[Linux]])&lt;br /&gt;
* das Screenshot-Add-On Nimbus Screenshot (ermöglicht auch einfaches Nachbearbeiten)&lt;br /&gt;
* das Screenshot-Add-On ScreenGrab! (läuft auch unter [[Linux]])&lt;br /&gt;
&lt;br /&gt;
== Download-Ordner unterschiedlich je nach Domain ==&lt;br /&gt;
&lt;br /&gt;
Firefox kann sich merken, in welchem Ordner man Downloads einer bestimmten Website speichert. &lt;br /&gt;
&lt;br /&gt;
In &amp;lt;code&amp;gt;about:config&amp;lt;/code&amp;gt; muss eine neue Boolean-Einstellung erstellt werden, die &lt;br /&gt;
  browser.download.lastDir.savePerSite&lt;br /&gt;
heißen muss. Dazu diesen Namen in das Suchfeld von about:config eingeben und auf das &amp;quot;+&amp;quot;-Zeichen klicken. Der Wert muss auf &amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
Siehe   https://support.mozilla.org/en-US/questions/987698&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Inspizieren des Netzwerkverkehrs von Firefox für Android ==&lt;br /&gt;
&lt;br /&gt;
Die DevTools von Firefox (für Desktop) erlauben auch eine Verbindung zu einem Firefox für Android, der auf einem Android-Gerät läuft, das per USB oder per WiFi mit dem Desktop-PC verbunden ist:&lt;br /&gt;
&lt;br /&gt;
https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#about-colon-debugging-connecting-to-a-remote-device&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Abbruch bei größeren Download-Dateien von langsamen Servern ===&lt;br /&gt;
&lt;br /&gt;
[https://community.home-assistant.io/t/ha-backup-download-fails-at-255mb/383633/9 Angeblich] hilft bei Abbrüchen des Downloads von größeren Dateien von einem langsamen Server das Hochsetzen des Timeouts in &amp;lt;code&amp;gt;about:config&amp;lt;/code&amp;gt;&lt;br /&gt;
 dom.serviceWorkers.idle_timeout = 150000&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Internet]]&lt;br /&gt;
[[Category:Desktop-Software]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Windows]]&lt;br /&gt;
[[Category:OpenSource]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Lebens-Tipps&amp;diff=23184</id>
		<title>Lebens-Tipps</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Lebens-Tipps&amp;diff=23184"/>
		<updated>2026-09-30T14:29:57Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Histaminintoleranz */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
== Gesundheit ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Ernährung ===&lt;br /&gt;
&lt;br /&gt;
==== Allgemeines ====&lt;br /&gt;
* [http://www.foodplaner.de/naehrwertliste-40.html Nährwerttabelle]&lt;br /&gt;
&lt;br /&gt;
==== Leichte Vollkost ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.ernaehrungs-forum.com/verbraucher/archiv/vollkost.pdf Rezepte zur leichten Vollkost]&lt;br /&gt;
* [http://www.ernaehrung.de/tipps/morbuscrohn/morbus13.php Übersicht zu für leichte Vollkost geeigneten und ungeeigneten Lebensmitteln]&lt;br /&gt;
&lt;br /&gt;
==== Histaminintoleranz ====&lt;br /&gt;
&lt;br /&gt;
* [https://www.google.com/url?sa=t&amp;amp;rct=j&amp;amp;q=&amp;amp;esrc=s&amp;amp;source=web&amp;amp;cd=&amp;amp;cad=rja&amp;amp;uact=8&amp;amp;ved=2ahUKEwj3ioiss-f8AhWgXfEDHTuYCTwQFnoECCgQAQ&amp;amp;url=https%3A%2F%2Fwww.mri.tum.de%2Fsites%2Fdefault%2Ffiles%2Fseiten%2Fhistaminintoleranz_essen_und_trinken.pdf&amp;amp;usg=AOvVaw0rWDDG4ceZsbQsrL1f1YGi Merkblatt der TUM zu Ernährung bei Histaminintoleranz]&lt;br /&gt;
* https://www.24vita.de/allergien-unvertraeglichkeiten/unvertraeglichkeiten/histaminintoleranz/histamin-intoleranz-ernaehrung-betroffene-lebensmittel-instut-ernaehrungsmedizin-muenchen-90084280.html&lt;br /&gt;
&lt;br /&gt;
===== histaminarme Rezepte =====&lt;br /&gt;
&lt;br /&gt;
====== Nomato-Sauce ======&lt;br /&gt;
&lt;br /&gt;
* https://www.autoimmun-lifestyle.com/histaminarme-nomato-sauce/&lt;br /&gt;
&lt;br /&gt;
==== Fructoseintoleranz ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.fructose.at/pdf/booklets/fructose_tabelle.pdf Tabelle zum Verhältnis von Fructose zu Glucose in Lebensmitteln]&lt;br /&gt;
&lt;br /&gt;
==== Reizdarm ====&lt;br /&gt;
&lt;br /&gt;
Nach Zeitungsberichten soll bei Reizdarmsymptom die Einnahme von Flohsamen helfen.&amp;lt;ref&amp;gt;Schwäbische Zeitung v. Februar 2010&amp;lt;/ref&amp;gt; Flohsamen werde aus dem indischen Spitzwegerich &amp;quot;Plantago ovata&amp;quot; gewonnen.&lt;br /&gt;
&lt;br /&gt;
==== Harnsäure / Gicht ====&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.test.de/medikamente/krankheit/gicht-k120/&lt;br /&gt;
* [https://www.bvaeb.at/cdscontent/load?contentid=10008.728980&amp;amp;version=1670836474#:~:text=Schr%C3%A4nken%20Sie%20den%20Konsum%20von,und%20Meeres%2D%20fr%C3%BCchten%20stark%20ein.&amp;amp;text=Essen%20Sie%20maximal%20300%20bis,bis%20zwei%20Fischmahlzeiten%20pro%20Woche.&amp;amp;text=Milchprodukte%20haben%20keinen%20Einfluss%20auf,dabei%20auf%20den%20Fettanteil%20achten. Ernährungsempfehlungen bei erhöhter Harnsäure]&lt;br /&gt;
&lt;br /&gt;
==== Rezepte ====&lt;br /&gt;
&lt;br /&gt;
* Allgemeine Rezepte findet sich bei [http://www.chefkoch.de Chefkoch.de].&lt;br /&gt;
* [http://www.storchs.de/ndb.htm Rezepte aus Niederbayern] finden sich bei storchs.de.&lt;br /&gt;
* https://www.coca-cola-deutschland.de/cokemeals/blumenkohl?utm_source=other_display&amp;amp;utm_medium=display&amp;amp;utm_campaign=coca_cola_masterbrand-Coca-Cola_TM_Coke&amp;amp;Meals_West_Display&amp;amp;utm_content=display&amp;amp;utm_term=NA&lt;br /&gt;
** auch mit Broccoli statt Blumenkohl&lt;br /&gt;
** auch mit Zucchini statt Edamame&lt;br /&gt;
** auch mit Basilikum statt Petersilie&lt;br /&gt;
* [https://thomassixt.de/rezept/spaghetti-carbonara-vegetarisch/ vegetarische Carbonara]&lt;br /&gt;
&lt;br /&gt;
==== Pizzastein ====&lt;br /&gt;
&lt;br /&gt;
Selbst-Backen von Pizza auf einem Pizzastein kann eine Party auflockern. Für eine Einweihungsparty mit 20-30 Gästen braucht man an Zutaten:&lt;br /&gt;
&lt;br /&gt;
Teig:&lt;br /&gt;
&lt;br /&gt;
* 4 kg Mehl&lt;br /&gt;
* Hefe für vier Kilo Mehl (rund vier Würfel Backhefe)&lt;br /&gt;
* Salz&lt;br /&gt;
* Olivenöl&lt;br /&gt;
* lauwarmes Wasser&lt;br /&gt;
* wenig Zucker&lt;br /&gt;
&lt;br /&gt;
Belag:&lt;br /&gt;
&lt;br /&gt;
* pürierte Tomaten und/oder Tomatenstücke&lt;br /&gt;
* Salz Pfeffer&lt;br /&gt;
* Oregano&lt;br /&gt;
* 200 g Schinken&lt;br /&gt;
* 200 g Salami&lt;br /&gt;
* geriebener Käse&lt;br /&gt;
* Pilze&lt;br /&gt;
* Paprika&lt;br /&gt;
* Zucchini&lt;br /&gt;
&lt;br /&gt;
Den Stein ausreichend vorher aufheizen; eine halbe Stunde ist zu kurz, zwei Stunden dürften in jedem Fall ausreichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Fleisch essen??? ====&lt;br /&gt;
&lt;br /&gt;
Muss man aus ethischen Gründen auf Fleisch verzichten? Viele Vegetarier haben für sich (und manchmal auch für andere) die Antwort auf die Frage gefunden.&lt;br /&gt;
&lt;br /&gt;
Wenn man dennoch nicht auf Fleisch verzichten will, sollte man jedoch darauf achten, dass es den Tieren vor der Schlachtung möglichst gut ging. Ob dabei ausreicht, dass das Fleisch ein Biosiegel trägt, ist fraglich. Besser ist es den Hof sich mal anzuschauen. Der Preis des Fleisches sollte bei der Wahl eher ein geringeres Gewicht haben; besser ist es, statt auf bessere Tierhaltung zu verzichten, weniger Fleisch zu essen. Auch hier gilt Qualität vor Quantität.&lt;br /&gt;
&lt;br /&gt;
Auch bei der Schlachtung gibt es Unterschiede. Der Transport zum Schlachthof und die Bedingungen dort können eine hohe Belastung für die Tiere darstellen. Eine Alternativ ist z. B. die Hausschlachtung durch einen guten Metzger. Allerdings sind dafür strenge EU-Richtlinien zur Hygiene zu beachten, so dass wenig Metzger eine solche Hausschlachtung zur freien Vermarktung des Fleisches durchführen.&lt;br /&gt;
&lt;br /&gt;
[http://www.mobilermetzger.de/ Matthias Kürten] ist ein solcher Metzger, der die Hygienevorschriften dadurch erfüllt, dass er einen Lkw zur mobilen Schlachtplattform umgebaut hat.&lt;br /&gt;
&lt;br /&gt;
=== Gesundheit in der Region ===&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[München und Umgebung#Gesundheit]]&lt;br /&gt;
&lt;br /&gt;
=== Sport ===&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Rennrad- und Bergsport]]&lt;br /&gt;
&lt;br /&gt;
* [[Skifahren]]&lt;br /&gt;
&lt;br /&gt;
=== Gesundheit im Bürojob ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.sehnet.de/augentraining.html Augenübungen fürs Büro]&lt;br /&gt;
* [http://www.gesundheitpro.de/Augentraining-Kick-fuer-die-Optik-Augen-A060927COCHP032827.html Weitere Augenübungen fürs Büro]&lt;br /&gt;
* [http://www.gesundheitpro.de/Zeitmanagement-Im-Kampf-gegen-die-Uhr-Stress-A060623KOANP026122-2.html Tipps fürs Zeitmanagement]&lt;br /&gt;
* [http://www.klimadiagramme.de/ Klimadiagramme] helfen, sich bei der Wohnungs-/Arbeitssuche ein angenehmes Klima zu suchen.&lt;br /&gt;
&lt;br /&gt;
=== Gelenkbeschwerden ===&lt;br /&gt;
&lt;br /&gt;
Für Wirbelsäulen- und Fußbeschwerden kann man bei [http://www.my-medibook.de/fuer-patienten/ueben-mit-dem-spiraldynamik-konzept/spiraldynamik-bei-fussbeschwerden/alle-fussuebungen.html my-medibook.de] Übungen finden.&lt;br /&gt;
&lt;br /&gt;
=== Brille ===&lt;br /&gt;
&lt;br /&gt;
* Brillen online bestellen: &lt;br /&gt;
** [http://misterspex.de/brillen/prada-pr-05nv-1ab1o1_f6441297.html MisterSpex]&lt;br /&gt;
** [http://www.edel-optics.de/PR-05NV-1AB1O1-von-Prada,1,1,17,65641,VTFZ6ABZXB13C,,.html Edel Optics]&lt;br /&gt;
** [http://www.smartbuyglasses.de/designer-brillen/Prada/Prada-PR05NV-1AB1O1-92855.html SmartBuyGlasses]&lt;br /&gt;
** [http://www.lensonlineshop.de/Prada-Kunststoff-Brille-PR-05NV-1AB1O1-Gr-53-in-der-Farbe-Black-Demo-Lens-schwarz.html Lens Online Shop]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Brillenersatzteile u.a. für Oakley gibt es bei &lt;br /&gt;
* https://de.salelsol.eu/&lt;br /&gt;
&lt;br /&gt;
=== Muskelfaserriss ===&lt;br /&gt;
&lt;br /&gt;
Eine Erläuterung des Muskelfaserrisses, der von Muskelzerrung und Muskelriss abzugrenzen ist, findet sich bei [http://www.joggen-online.de/lauftraining/sportverletzungen/muskelfaserriss.html joggen-online.de]. Dort finden sich auch [http://www.joggen-online.de/lauftraining/stretching-und-dehnuebungen.html Dehnübungen].&lt;br /&gt;
&lt;br /&gt;
== Informationstechnik ==&lt;br /&gt;
&lt;br /&gt;
* Siehe [[Informationstechnik]]&lt;br /&gt;
&lt;br /&gt;
== Wohnen ==&lt;br /&gt;
&lt;br /&gt;
* [[Eigenheim]]&lt;br /&gt;
** [[Eigenheim in München und Umgebung]]&lt;br /&gt;
* [[Gebäudeautomation]]&lt;br /&gt;
* Einrichten, Möbel&lt;br /&gt;
** z.B. Schrankwände:&lt;br /&gt;
*** [http://www.raumplus.de/ raumplus] bietet maßgeschneiderte Schrankwände&lt;br /&gt;
*** [http://www.moebelidee.de/index.php?id=94 MobelIdee]&lt;br /&gt;
*** [http://www.schubladen.net/schubladen.html maßgeschneiderte Massivholz-Schubladen], [http://www.schaeffer-koeder.de/Seiten/Schubkaesten/Massivholzschubladen_N_.html hier], [http://www.lignoshop.de/massivholzschubladen-schublade-aus-holz.html bei ligno-shop.de]&lt;br /&gt;
*** Schreiner&lt;br /&gt;
**** [http://www.schreinereihoch.de/ Schreiner Milbertshofen]&lt;br /&gt;
**** [http://www.mr-schreinerei.de/GALLERY/privat/index.html#slides/SDC10885.jpg Michael Richter Schreiner Kleiderschrank]&lt;br /&gt;
**** [http://www.wimmerschreinerei.de/kategorie/schlafzimmer/ Wimmer Schreiner Grünwald]&lt;br /&gt;
**** [http://www.schmeller-schreinerei.de/anfahrt.html Schmeller Neuhausen]&lt;br /&gt;
** Matratzen&lt;br /&gt;
*** [http://www.allnatura.de/service/kein-Katalog.html allnatura] - ökologisch angehauchter Versand u.a. für Latex-Matratzen&lt;br /&gt;
** [[Telefon]]&lt;br /&gt;
** [[Kühlschrank]]&lt;br /&gt;
* Hängesessel&lt;br /&gt;
** [https://www.traumschwinger.de/ Traumschwinger]&lt;br /&gt;
* Ökologisch wirtschaften&lt;br /&gt;
** [http://www.haushaltstechnik.uni-bonn.de/waschtag nachhaltiges Wäsche waschen]&lt;br /&gt;
** [http://www.stmwivt.bayern.de/energie-und-rohstoffe/energiespartipps/ richtig heizen]&lt;br /&gt;
&lt;br /&gt;
== Garten ==&lt;br /&gt;
&lt;br /&gt;
* Vor dem Fällen eines Baumes sollte ggf. eine Genehmigung eingeholt werden. &lt;br /&gt;
** Siehe [http://www.muenchen.de/Rathaus/plan/lbk/naturschutz/baumschutz/125728/index.html Baumschutzinfos] für [[München]] der [http://www.muenchen.de/Rathaus/plan/lbk/naturschutz/baumschutz/122081/index.html Unteren Naturschutzbehörde Münchens]&lt;br /&gt;
&lt;br /&gt;
* Zum Anlocken von Schmetterlingen gibt es spezielle Samenzusamenstellungen, z.B.&lt;br /&gt;
** von [http://www.avocadostore.de/brands/eugea EUGEA] aus [[Bologna]]&lt;br /&gt;
&lt;br /&gt;
Links rund um den Kleingarten in München finden sich bei [http://www.christophkofler.de/links.html Christoph Kofler]&lt;br /&gt;
&lt;br /&gt;
== Mobilität ==&lt;br /&gt;
* [[Mobilität]]&lt;br /&gt;
** [[Mietwagen in München]]&lt;br /&gt;
** [[Fahrrad]]&lt;br /&gt;
*** [[Rennrad- und Bergsport]]&lt;br /&gt;
&lt;br /&gt;
== Ökologie ==&lt;br /&gt;
&lt;br /&gt;
* [[Klimaschutz]]&lt;br /&gt;
&lt;br /&gt;
== Soft Skills ==&lt;br /&gt;
&lt;br /&gt;
=== Stenographie ===&lt;br /&gt;
* [http://urkunde.stenografie.com/ Wiener Urkunde]&lt;br /&gt;
* http://www.steno.ch/htm/130.htm&lt;br /&gt;
* http://www.steno-berlin.de/Was_ist_Steno_/was_ist_steno_.html&lt;br /&gt;
&lt;br /&gt;
=== Gedächtnis ===&lt;br /&gt;
&lt;br /&gt;
* Ein Gedächtnistraining ist nach der Methode von [http://www.geisselhart-lernen.de/neu/nofneu/html/grundgesetze.html Geisselhart] das Merken anhand von [http://www.geisselhart-lernen.de/neu/nofneu/html/grundgesetze.html Zahlensymbolen]. Man denkt sich eine Verknüpfung des - festen - Symbols, das mit einer Zahl verknüpft ist, mit dem Zu Merkenden aus. Am besten eine kleine - möglichst abstruse - Kurzgeschichte.&lt;br /&gt;
** Beispiel: Die Zahl 2009 (Zahlensymbole: Schwan für die 2, Osterei für die 0 und Schlange für die 9) lässt sich mit folgender Geschichte merken: Ein Schwan legt zwei Eier, die von einer Schlange gefressen werden.&lt;br /&gt;
&lt;br /&gt;
=== Lesen ===&lt;br /&gt;
&lt;br /&gt;
Die Lesegeschwindigkeit kann durch verschiedene Techniken optimiert werden.&lt;br /&gt;
&lt;br /&gt;
Auch elektronische Hilfen gibt es:&lt;br /&gt;
&lt;br /&gt;
* [http://www.spreeder.com/ Spreeder] - kann online ausprobiert werden&lt;br /&gt;
* [http://www.spritzinc.com/ Spritz]&lt;br /&gt;
&lt;br /&gt;
=== Motivation ===&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
&lt;br /&gt;
=== Korrespondenz ===&lt;br /&gt;
* [http://www.officeorga.de/pdf/ratgeber_anreden.pdf Verfassen von Anreden und Anschriften]&lt;br /&gt;
&lt;br /&gt;
=== Rhetorik ===&lt;br /&gt;
* [[Verhandlung]]&lt;br /&gt;
* [[Effiziente Gesprächsleitung]]&lt;br /&gt;
&lt;br /&gt;
* [http://www.uni-tuebingen.de/uni/nas/definition/rhetorik.htm Was ist Rhetorik?]&lt;br /&gt;
* [http://www.spiegel.de/unispiegel/studium/0,1518,583976,00.html Rhetorik-ABC]&lt;br /&gt;
&lt;br /&gt;
* [http://www.aphorismen.de Aphorismen.de]&lt;br /&gt;
* [http://www.zitate.de Zitate.de]&lt;br /&gt;
&lt;br /&gt;
* [http://www.ids-mannheim.de/reform/ Deutsche Rechtschreibung]&lt;br /&gt;
* [http://services.langenscheidt.de/fremdwb/fremdwb.html Fremdwörterbuch] von Langenscheidt (Deutsch)&lt;br /&gt;
&lt;br /&gt;
* Deutsch-Englisch, Deutsch-Französisch und Deutsch-Spanisch findet sich bei [http://dict.leo.org Leo]&lt;br /&gt;
* Italienisch-Deutsch kann [http://www.italdict.de/exec italDict.de]&lt;br /&gt;
&lt;br /&gt;
=== Pädagogik ===&lt;br /&gt;
* Die erste Stunde ist wichtig: Beispielsweise macht es Sinn, jeden Schüler in der ersten Stunde aufzurufen. &lt;br /&gt;
* Auch ein Aufrufen eines Schülers beim Wegnicken hilft. Man kann dann mit einem Grinsen die Sache nicht zu authoritär ausgehen lassen.&lt;br /&gt;
* Nach jeder Stunde sollte man sich notieren, welchen Stoff man durchgenommen hat, welche Hausaufgaben aufgegeben wurde etc.&lt;br /&gt;
&lt;br /&gt;
=== Sprachen ===&lt;br /&gt;
&lt;br /&gt;
==== Wörterbücher ====&lt;br /&gt;
Wörterbücher sind die Basis für jede Sprache. Für Fremdsprachen finden sich im [[Internet|Netz]] u.a.&lt;br /&gt;
&lt;br /&gt;
* dict.leo.org&lt;br /&gt;
* [http://www.linguee.de/ Linguee.de] bringt neben der redaktionellen Übersetzung von Wörtern auch Texte, die den Begriff oder die Begriffe im Zusammenhang bringen.&lt;br /&gt;
* [[Google]] Übersetzer/Translator&lt;br /&gt;
&lt;br /&gt;
==== Lesestoff ====&lt;br /&gt;
&lt;br /&gt;
Das Lesen ist ein Teil der Übung in einer fremden Sprache. Es gibt sehr viele englischsprachige Bücher und eBooks. Es gibt auch [[Deutschland]] zentrierte Zeitungen, z.B.&lt;br /&gt;
* Spotlight&lt;br /&gt;
* [http://www.thelocal.de/ thelocal.de] (Online-Nachrichten über Deutschland in Englisch)&lt;br /&gt;
&lt;br /&gt;
=== Allgemeinwissen ===&lt;br /&gt;
&lt;br /&gt;
* [http://omegataupodcast.net/ Omega Tau Podcast] ist ein [[Podcast]] mit regelmäßigen allgemein wissenschaftlichen Beiträgen.&lt;br /&gt;
&lt;br /&gt;
=== Konfliktlösung ===&lt;br /&gt;
&lt;br /&gt;
* [[Mediation in München]]&lt;br /&gt;
&lt;br /&gt;
== Fotografie ==&lt;br /&gt;
&lt;br /&gt;
* Siehe [[Fotografie]]&lt;br /&gt;
&lt;br /&gt;
== Unterhaltung ==&lt;br /&gt;
&lt;br /&gt;
=== Internet-Radio ===&lt;br /&gt;
* Übersichten über Internet-Radios finden sich bei [http://www.radiosure.com/stations/ RadioSure.com], [http://www.surfmusik.de/webradio/deutschland.html surfmusik] und im [http://www.dmoz.org/World/Deutsch/Medien/Radio/Internet-Radio/ OpenDirectory]&lt;br /&gt;
** Alternativ-Musik findet sich z.B. bei [http://www.surfmusik.de/radio/shoutedfm-mth-alternative-dsl,9166.html ShoutedFM mth.alternative].&lt;br /&gt;
** Ein Mix aus französischer und internationaler Popmusik findet sich bei [http://www.europe2.fr/player/player.htm Europe2.fr].&lt;br /&gt;
** [http://www.franceinter.fr/ France Inter] bringt Informationen und Talks aus Frankreich.&lt;br /&gt;
* Inzwischen haben auch normale Radiosender meist auch einen Internet-Stream&lt;br /&gt;
** aus der [[Schweiz]]:&lt;br /&gt;
*** [http://www.drs3.ch DRS 3]&lt;br /&gt;
** aus [[Bayern]]&lt;br /&gt;
*** [http://www.br-online.de/bayern2/index.xml Bayern 2]&lt;br /&gt;
&lt;br /&gt;
=== Kostenlose Musik/Hörspiele ===&lt;br /&gt;
&lt;br /&gt;
* Kostenlose Musik gibt es z.B. von &lt;br /&gt;
** [http://www.metrochicago.com/pumpkins/ Smashing Pumpkins].&lt;br /&gt;
** [https://musopen.org/ kostenlose klassische Musik bei musopen.org]&lt;br /&gt;
** [http://www.classiccat.net/ Übersicht über freie Aufnahmen klassischer Musik]&lt;br /&gt;
** [http://freemusicarchive.org/ freemusicarchive.org]&lt;br /&gt;
** [http://www.jamendo.com/de/ jamendo.com]&lt;br /&gt;
*** [https://gist.github.com/niclashoyer/10426194 Skript zum Herunterladen eines Albums von Jamendo im FLAC-Format]&lt;br /&gt;
** https://hartwigmedia.com/&lt;br /&gt;
&lt;br /&gt;
* Kostenlose Musik im lossless-Format FLAC gibt es bei &lt;br /&gt;
** [http://www.rozhlas.cz/english/portal Klassische Musik aus Tschechien]&lt;br /&gt;
&lt;br /&gt;
** [http://totallyfreemusic.blogspot.de/search/label/flac totally free music] (blog)&lt;br /&gt;
** http://www.2l.no/hires/index.html (Klassik)&lt;br /&gt;
** [http://archive.org/details/etree etree] (Live-Mitschnitte, FLACs ohne Tags)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kudlaj.github.io/fmplaylist/fmplaylist.html Free Music Playlist] ist ein Web Player, der Musik aus [[Jamendo]] und [[SoundCloud]] abspielt. Es gibt dazu auch eine [https://github.com/kudlaj/jamendo-contest GitHub-Seite mit dem Quellcode].&lt;br /&gt;
&lt;br /&gt;
* [https://www.cogimix.com/ Cogimix.com] ist ein Musik Web Player, der Lieder u.a. von [[Youtube]], [[Jamendo]] und [[Vevo]] abspielt. Es gibt auch eine ältere App für [[Android]], die [https://cogimix.de.aptoide.com/?store_name=apps&amp;amp;app_id=8213798 aptoide heruntergeladen werden kann].&lt;br /&gt;
&lt;br /&gt;
=== Musik erkennen ===&lt;br /&gt;
&lt;br /&gt;
Unterwegs kann man mit Shazzam auf Android gehörte Musik erkennen. &lt;br /&gt;
&lt;br /&gt;
Als Webanwendung kann man auch &lt;br /&gt;
* [https://www.midomi.com/ Midomi.com]&lt;br /&gt;
nutzen.&lt;br /&gt;
&lt;br /&gt;
=== Hörspiele und Hörbücher ===&lt;br /&gt;
* [http://cornelia.siteware.ch/hoeren/litged.html Hörspielübersicht]&lt;br /&gt;
&lt;br /&gt;
* [http://www.freiszene.de/hoerspiele/ freiszene.de] Kostenlose Hörbücher &lt;br /&gt;
* [http://www.vorleser.net/html/autoren.html Kostenlose Hörbücher] (meist klassischer) Autoren&lt;br /&gt;
&lt;br /&gt;
=== Singstar ===&lt;br /&gt;
* Als Alternative zu Singstar, das auf der PlayStation von Sony läuft, bietet sich die Open-Source-Software [http://ultrastar.byto.de/guide_usage.html UltraStar] an. Inzwischen kann man den Nachfolger auf einem Debian-System mit &lt;br /&gt;
  sudo aptitude install performous&lt;br /&gt;
installieren.&lt;br /&gt;
&lt;br /&gt;
=== Kostenlose Bücher ===&lt;br /&gt;
* [http://www.galileocomputing.de/katalog/openbook/ Galileo Computing] bietet die Online-Versionen der gedruckten Bücher aus dem Bereich der Informationstechnik kostenlos zum Browsen und auch zum Download an!&lt;br /&gt;
 &lt;br /&gt;
=== Liedtexte ===&lt;br /&gt;
* &amp;quot;Nehmt Abschied Brüder, ungewiss ist alle Wiederkehr...&amp;quot; ([http://www.lieder-archiv.de/lieder/show_song.php?ix=400186 Notenblatt], [http://www.worksheets.de/html/nehmt_abschied_bruder.html Melodie])&lt;br /&gt;
* &amp;quot;Die Affen rasen durch den Wald&amp;quot; ([http://ingeb.org/Lieder/dieaffen.html Liedtexte])&lt;br /&gt;
* &amp;quot;Gaudeamus igitur&amp;quot; ([http://www.absolvia.de/wuerzburg/lgaude.htm Liedtext])&lt;br /&gt;
* [http://www.derweg.org/mwbrauch/wheilidr.htm Deutsche Weihnachtslieder]&lt;br /&gt;
&lt;br /&gt;
=== Noten ===&lt;br /&gt;
&lt;br /&gt;
Noten für gemeinfreie Musik findet sich bei [http://imslp.org/wiki/Main_Page imslp.org]&lt;br /&gt;
&lt;br /&gt;
=== Gedichte ===&lt;br /&gt;
* http://www.gedichte.vu&lt;br /&gt;
* [http://www.gedichte.com Selbst Gedichte schreiben und kommentieren lassen.]&lt;br /&gt;
* [http://gutenberg.spiegel.de/hoelderl/gedichte/0htmldir.htm Gutenberg-DE]&lt;br /&gt;
&lt;br /&gt;
=== Kabarett ===&lt;br /&gt;
&lt;br /&gt;
* Martina Schwarzmann&lt;br /&gt;
&lt;br /&gt;
=== Sportnachrichten ===&lt;br /&gt;
* [http://www.sport1.de/pub/ticker/formel1/flash/index.html?pop=1 Formel1-Ticker (sport1.de)], [http://sport.rtl.de/formel1/ticker/ticker2.php (RTL)]&lt;br /&gt;
&lt;br /&gt;
=== Kostenlose Online-Spiele ===&lt;br /&gt;
&lt;br /&gt;
* [http://sport.rtl.de/games/webracer/index.php RTL-Formel 1 Webracer]&lt;br /&gt;
&lt;br /&gt;
=== Geografie ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.senchalabs.org/philogl/PhiloGL/examples/mercator/ drehender Erdball mit Milchstraße]&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
* [[Audio]]&lt;br /&gt;
* [[Kabelfernsehen]]&lt;br /&gt;
&lt;br /&gt;
== Beruf und Karriere ==&lt;br /&gt;
=== Bewerbung ===&lt;br /&gt;
* [http://www.mygeo.info/bewerbung.html Anleitung zum Verfassen einer Bewerbung]&lt;br /&gt;
&lt;br /&gt;
=== Existenzgründung ===&lt;br /&gt;
&lt;br /&gt;
==== Allgemeines ====&lt;br /&gt;
&lt;br /&gt;
* [http://ec.europa.eu/enterprise/policies/finance/borrowing/microcredit/index_de.htm Mikrokredite der EU]&lt;br /&gt;
&lt;br /&gt;
* Infos zur Existenzgründung von der [http://www.muenchen.de/Rathaus/raw/foerderung/gruendung/38691/index.html Stadt München]&lt;br /&gt;
* [http://www.muenchen.ihk.de/internet/mike/ihk_geschaeftsfelder/starthilfe/Unternehmensgruendung/Foerderung_und_Beratung_fuer_Gruender/M_nchner_Existenzgr_ndungsb_ro.html Münchner Existenzgründungsbüro]&lt;br /&gt;
* http://www.bfe-muenchen.de/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Patent ====&lt;br /&gt;
&lt;br /&gt;
* Fachliche und Finanzielle Hilfen für die Patentvorbereitung und -anmeldung finden sich bei dem [http://www.insti.de/index.php Förderprogramm der Bundesregierung INSTI].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Zeiterfassung ===&lt;br /&gt;
&lt;br /&gt;
Eine Übersicht über online Zeiterfassungs- oder Zeitmanagement-Tools findet sich bei [https://www.paymoapp.com/blog/best-time-tracking-software/ Paymo]&lt;br /&gt;
&lt;br /&gt;
* [https://trackingtime.co/de TrackingTime] - für einen Nutzer inkl. CSV-Export kostenlos&lt;br /&gt;
* [http://www.paymo.biz/ Paymo] weiterer Online-Time-Tracker, der auch Rechnungen für Kunden, unterschieden nach verschiedenen Projekten, erlaubt.&lt;br /&gt;
* [http://www.clockingit.com/ clockingIT] online Projektmanagement&lt;br /&gt;
* [http://www.webreference.com/authoring/taskfreak-task-manager/index.html TaskFreak Projektmanagement-Tool], [[Open Source]]-Software, die auf einem Server installiert wird und ein Web-Interface bietet.&lt;br /&gt;
&lt;br /&gt;
=== Einzelne Sparten ===&lt;br /&gt;
&lt;br /&gt;
==== Forstwirtschaft ====&lt;br /&gt;
&lt;br /&gt;
* Gebrauchte Rückewagen finden sich bei [http://www.landwirt.com/gebrauchte/Rueckewagen.html landwirt.com]&lt;br /&gt;
&lt;br /&gt;
==== Jura ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.juve.de Juve.de] bietet Infos rund um die Karrieren von Anwälten in Großkanzleien. Die wichtigen Wechsel von Partnern in Deutschland werden erfasst.&lt;br /&gt;
&lt;br /&gt;
== Finanzen ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[Finanzen]]&lt;br /&gt;
&lt;br /&gt;
=== Spenden ===&lt;br /&gt;
* [http://www.hilat-albir.org/ Freunde von Hilat al-Bir]&lt;br /&gt;
&lt;br /&gt;
== Kinder ==&lt;br /&gt;
[[Kind]]&lt;br /&gt;
&lt;br /&gt;
== Urlaub ==&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Lebens-Tipps#Regionales]]&lt;br /&gt;
* [[München und Umgebung#Wintersport]]&lt;br /&gt;
&lt;br /&gt;
== Geschenke ==&lt;br /&gt;
&lt;br /&gt;
* Für die Partnerin:&lt;br /&gt;
** Handtasche&lt;br /&gt;
** Bücher&lt;br /&gt;
*** Kunst&lt;br /&gt;
*** Geschichte&lt;br /&gt;
*** Historienromane&lt;br /&gt;
** Fahrradsattel (bequem, regenfest)&lt;br /&gt;
** Konzert-/Festivalbesuch (ggf. bereits mit genehmigtem Urlaub des Partners)&lt;br /&gt;
&lt;br /&gt;
== Kalender ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.schulferien.org/Ferien_als_Grafik/Bayern/2013-Bayern.pdf PDF-Kalender auf einer Seite mit Schulferien und Feiertagen], aber ohne Kalenderwochen&lt;br /&gt;
* [http://www.kalenderpedia.de/kalender/kalender-2013-bayern.html PDF-Kalender auf einer Seite mit Schulferien, Feiertagen und Kalenderwochen]&lt;br /&gt;
* [http://www.erweiterungen.de/kalender/ Gesetzliche Feiertage und Schulferien] für [[Lightning]]/[[Sunbird]]&lt;br /&gt;
* [http://www.feiertage.net/frei-tage.php Gesetzliche Feiertage der einzelnen Länder (auch für Outlook)]&lt;br /&gt;
* [http://www.ferien-planer.de/feiertage-2007.html Gesetzliche Feiertage]&lt;br /&gt;
&lt;br /&gt;
=== Kalenderwoche ===&lt;br /&gt;
* [http://www.salesianer.de/util/kalwoch.html Kalenderwochenberechnung]&lt;br /&gt;
* [[Programmierprojekte#Kalenderwoche]]&lt;br /&gt;
&lt;br /&gt;
== Kleidung ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Hemden ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.n-tv.de/ratgeber/Das-beste-Hemd-kostet-20-Euro-article202009.html Business-Hemden-Test]&lt;br /&gt;
&lt;br /&gt;
* [http://www.walbusch.de/walbusch-de/herren-mode/anzughemden/slimline-hemden/category/1.G2.WT014.WA005.html Walbusch] produziert in [[Deutschland]].&lt;br /&gt;
&lt;br /&gt;
=== Unterwäsche ===&lt;br /&gt;
* [http://www.bambus-deutschland.de/bambus-infos/bambus-in-der-anwendung/textilien-aus-bambus.html Bambus-Unterwäsche taugt angeblich nicht, was sie verspricht.]&lt;br /&gt;
&lt;br /&gt;
=== Bekleidung mit Leuchtstreifen ===&lt;br /&gt;
&lt;br /&gt;
Für Radfahrer gibt es ein angemessenes Angebot von Kleidung mit Leuchtstreifen. Z.B.&lt;br /&gt;
* [https://www.endurasport.com/search/?text=Luminite Endura Luminite Serie]&lt;br /&gt;
&lt;br /&gt;
Bei normalen Wintermänteln sind dezente Leuchtstreifen dagegen sehr rar.&lt;br /&gt;
&lt;br /&gt;
== Regionales ==&lt;br /&gt;
=== Deutschland ===&lt;br /&gt;
* [[Deutschland]]&lt;br /&gt;
&lt;br /&gt;
==== Bayern ====&lt;br /&gt;
* [[Bayern]]&lt;br /&gt;
* [[München und Umgebung]]&lt;br /&gt;
** [[Eigenheim in München und Umgebung]]&lt;br /&gt;
* [[Donauradweg]]&lt;br /&gt;
&lt;br /&gt;
=== Europa ===&lt;br /&gt;
&lt;br /&gt;
==== Albanien ====&lt;br /&gt;
&lt;br /&gt;
Siehe [[Albanien]]&lt;br /&gt;
&lt;br /&gt;
==== Griechenland ====&lt;br /&gt;
&lt;br /&gt;
Siehe [[Griechenland]]&lt;br /&gt;
&lt;br /&gt;
==== Großbritannien ====&lt;br /&gt;
&lt;br /&gt;
===== Wales =====&lt;br /&gt;
&lt;br /&gt;
====== Walisische Sprache ======&lt;br /&gt;
&lt;br /&gt;
* https://www.learn-welsh.net&lt;br /&gt;
&lt;br /&gt;
==== Frankreich ====&lt;br /&gt;
&lt;br /&gt;
===== Südliche Atlantikküste =====&lt;br /&gt;
* https://www.camping-saint-martin.fr/campingplatz-frankreich-landes&lt;br /&gt;
&lt;br /&gt;
==== Österreich ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.sonnenhof-maurer.at/ Sonnenhof Maurer] bei Sulzberg im  [[Bregenzer Wald]]&lt;br /&gt;
&lt;br /&gt;
* [http://www.bio-natur-urlaub.de/anzeigen/bio-bauernhof/oesterreich/bio-bauernhof-nichlgut-270.html Bauernhof Nichlgut], Eben im Pongau, bei Bischofshofen im Pongau&lt;br /&gt;
&lt;br /&gt;
* [http://www.boeleiterhof.com/ Böleiterhof] im Zillertal mit Ferienwohnungen bis zu 10 Personen&lt;br /&gt;
&lt;br /&gt;
* [http://holzleiten.at/ Holzleiten Bio Wellness Hotel]&lt;br /&gt;
&lt;br /&gt;
* [http://pillersee.org Pillersee]&lt;br /&gt;
&lt;br /&gt;
===== Bregenzer Wald =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.nigsch.at/de/home/ nigsch.at], Bauernhof in Schoppernau mit Haflingern&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Pitztal =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.pitztal.com/de/bergwinter/liftkarten-pitztal Pitztal ]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Tirol =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.pirchnerhof.at/ Pirchnerhof] in Tirol, Vitalhotel, Kräutergarten&lt;br /&gt;
* [http://www.pillersee.org/ferienwohnung-wasserspiele.html Pillersee-FeWo ]&lt;br /&gt;
&lt;br /&gt;
==== Montenegro ====&lt;br /&gt;
Siehe [[Montenegro]]&lt;br /&gt;
&lt;br /&gt;
==== Niederlande ====&lt;br /&gt;
&lt;br /&gt;
===== Amsterdam =====&lt;br /&gt;
* Anreise via Amsterdam Schiphol (Flughafen)&lt;br /&gt;
* [http://journeyplanner.9292.nl/default.aspx Trippplaner für Öffentlichen Verkehr]&lt;br /&gt;
&lt;br /&gt;
==== Italien ====&lt;br /&gt;
===== Ligurien =====&lt;br /&gt;
* [http://www.fewo-direkt.de/ferienwohnung-ferienhaus/p505879#location-bar Ferienwohnung bei Levanto]&lt;br /&gt;
&lt;br /&gt;
===== Trentino =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.tr3ntino.it/de/zeitvertreib/burgen-schloesser/castel-pergine.html Castello di Pergine] - Feinschmeckerrestaurant und Hotel auf einer Burg aus dem Mittelalter&lt;br /&gt;
&lt;br /&gt;
==== Slowenien ====&lt;br /&gt;
&lt;br /&gt;
===== ÖPNV =====&lt;br /&gt;
&lt;br /&gt;
* [https://www.nomago.si/avtobusne-vozovnice/vozni-red?dest_from_name=Ljubljana+%28Glavna+avtobusna+postaja%29&amp;amp;dest_from=123&amp;amp;dest_to_name=Trenta+kamp&amp;amp;dest_to=2365&amp;amp;bus_date_from=11.08.2023 Nomago], u.a. Linien von Ljubljana - Trenta - Bovec&lt;br /&gt;
&lt;br /&gt;
==== Türkei ====&lt;br /&gt;
&lt;br /&gt;
===== Türkisch =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.omniglot.com/writing/turkish.htm Türkisch] (auch mit Audio)&lt;br /&gt;
* [http://www.teachyourselfturkish.com/ Blog zur Sprache Türkisch auch für Anfänger]&lt;br /&gt;
* [http://www.youtube.com/watch?v=JOFBYsXmUOs RealDevelop-Video] mit ein paar wichtigen Worten auf Türkisch&lt;br /&gt;
* [http://www.youtube.com/watch?v=vy5sonrLJOY RealDevelop-Video] mit Wörtern, die das Gegenteil bedeuten&lt;br /&gt;
&lt;br /&gt;
===== Ephesus =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.dereli-ephesus.com Dereli Ephesus]&lt;br /&gt;
&lt;br /&gt;
===== Bafa-See =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.bafalake.com Selenes Pension]&lt;br /&gt;
* Pelikan Pension (190 Türkische Lira pro Nacht für Familienzimmer 2 Erwachsene + 2 kleine Kinder)&lt;br /&gt;
&lt;br /&gt;
===== Bodrum und Umgebung =====&lt;br /&gt;
&lt;br /&gt;
* [http://www.mycharteryacht.de Rainer Fischers Ferienhäuser]&lt;br /&gt;
&lt;br /&gt;
=== Asien ===&lt;br /&gt;
&lt;br /&gt;
==== Georgien ====&lt;br /&gt;
&lt;br /&gt;
Siehe [[Georgien]]&lt;br /&gt;
&lt;br /&gt;
==== Thailand ====&lt;br /&gt;
&lt;br /&gt;
Siehe [[Thailand]]&lt;br /&gt;
&lt;br /&gt;
==== China ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.birteundtommyinpeking.de/ das &amp;quot;ganz normale Leben&amp;quot; eines deutschen Paars in Peking]&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;small&amp;gt;Siehe [[Hauptseite]]&amp;lt;/small&amp;gt;&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Leben]]&lt;br /&gt;
[[Category:Finanzen]]&lt;br /&gt;
[[Category:Regionales]]&lt;br /&gt;
[[Category:Urlaub]]&lt;br /&gt;
[[Category:Podcast]]&lt;br /&gt;
[[Category:Mobilität]]&lt;br /&gt;
[[Category:China]]&lt;br /&gt;
[[Category:OldCt]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Linux_Mint&amp;diff=23183</id>
		<title>Linux Mint</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Linux_Mint&amp;diff=23183"/>
		<updated>2026-09-21T18:53:17Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Anderer Kernel */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Nette Features ==&lt;br /&gt;
&lt;br /&gt;
Linux Mint ist eine der meistgenutzten [[Linux]]-Distributionen. Es hat einige nette Features, z.B.:&lt;br /&gt;
* Der Lautsprecher-Indikator (kleines Icon rechts unten in der Taskleiste) lässt sich mit Hilfe des mittleren Mausrads regeln. Durch einen Rechtsklick lässt sich auch die Ausgabequelle (z.B. Lautsprecher im Monitor über HDMI oder Stereoanlage über integrierte Soundcard) auswählen.&lt;br /&gt;
* Wie bei Ubuntu sind schöne Fonts wie Purisa oder Sawashdee bereits vorinstalliert.&lt;br /&gt;
* Das Anwendungsmenü links unten ist übersichtlich gestaltet. Die Drei-Spalten-Form lässt das Menü schön erscheinen.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Installation via PXE ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[PXE]]&lt;br /&gt;
* [http://forums.linuxmint.com/viewtopic.php?f=197&amp;amp;t=96322 Anleitung zur Installation von Linux Mint via PXE]&lt;br /&gt;
&lt;br /&gt;
Die Installation von Linux Mint erfolgt entsprechend [[ Ubuntu#PXE| der von Ubuntu]]. Der Menüeintrag für Linux Mint könnte folglich so lauten:&lt;br /&gt;
&lt;br /&gt;
    LABEL mint32&lt;br /&gt;
      MENU LABEL mint32&lt;br /&gt;
      kernel mint32/vmlinuz&lt;br /&gt;
      append root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.0.5:/srv/nfs/mint32 initrd=mint32/initrd.lz file=/cdrom/preseed/linuxmint.seed locale=de_DE bootkbd=de console-setup/layoutcode=de console-setup/variantcode=nodeadkeys nosplash&lt;br /&gt;
&lt;br /&gt;
Hinweise:&lt;br /&gt;
* Der Parameter &amp;lt;code&amp;gt;file=/cdrom/preseed/linuxmint.seed&amp;lt;/code&amp;gt; wurde noch nicht getestet. Die Installation scheint auch ohne diesen zu funktionieren.&lt;br /&gt;
* Ob die Parameter zur Tastatur bzw. zur Lokalisierung  etwas bringen, kann nicht definitiv gesagt werden.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
==== Anderer Kernel ====&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://it-learner.de/linux-mint-kernel-wechseln-so-gehts/&lt;br /&gt;
* Mainline Kernel Installationstool ppa:cappelikan/ppa&lt;br /&gt;
** https://gnulinux.ch/linux-mint-aufbohren&lt;br /&gt;
&lt;br /&gt;
==== Tastatur ====&lt;br /&gt;
&lt;br /&gt;
Siehe für Linux Mint 17 Qiana die [[Linux-Tipps#Troubleshooting_Tastatur | Behelfe, die man auch für Debian 8 Jessie benötigt,]] wenn man Probleme mit der Tastatur hat.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich sollte man bei Linux Mint noch in der Datei &amp;lt;code&amp;gt;/etc/modules-load.d/cups-filters.conf&amp;lt;/code&amp;gt; die dort genannten drei Module auskommentieren (am Anfang der Zeile mit einer # versehen), die einen Drucker am (nicht mehr üblichen) Parallelport voraussetzen.&lt;br /&gt;
&lt;br /&gt;
==== Netzwerk ====&lt;br /&gt;
&lt;br /&gt;
Sollte das Kabelnetzwerk nicht funktionieren, sollten die entsprechenden beiden  Zeilen in der &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; auskommentiert werden. Nach einem Neustart kümmert sich der Network-Manager um das System. Achtung: Bitte nicht die beiden Zeilen zum Loopback-Interface (lo) auskommentieren!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Datenbanken für command-not-found ====&lt;br /&gt;
Bei dieser Fehlermeldung:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Die Anwendung command-not-found ist abgestürzt! Bitte berichten Sie über den Fehler unter:&lt;br /&gt;
https://bugs.launchpad.net/command-not-found/+filebug&lt;br /&gt;
Bitte führen Sie folgende Informationen im Fehlerbericht an:&lt;br /&gt;
&lt;br /&gt;
Command-not-found-Version: 0.3&lt;br /&gt;
Python-Version: 3.8.10 final 0&lt;br /&gt;
Distributor ID:	Linuxmint&lt;br /&gt;
Description:	Linux Mint 20.2&lt;br /&gt;
Release:	20.2&lt;br /&gt;
Codename:	uma&lt;br /&gt;
Informationen zum Fehler:&lt;br /&gt;
&lt;br /&gt;
unable to open database file&lt;br /&gt;
Traceback (most recent call last):&lt;br /&gt;
  File &amp;quot;/usr/lib/python3/dist-packages/CommandNotFound/util.py&amp;quot;, line 23, in crash_guard&lt;br /&gt;
    callback()&lt;br /&gt;
  File &amp;quot;/usr/lib/command-not-found&amp;quot;, line 90, in main&lt;br /&gt;
    cnf = CommandNotFound.CommandNotFound(options.data_dir)&lt;br /&gt;
  File &amp;quot;/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py&amp;quot;, line 79, in __init__&lt;br /&gt;
    self.db = SqliteDatabase(dbpath)&lt;br /&gt;
  File &amp;quot;/usr/lib/python3/dist-packages/CommandNotFound/db/db.py&amp;quot;, line 12, in __init__&lt;br /&gt;
    self.con = sqlite3.connect(filename)&lt;br /&gt;
sqlite3.OperationalError: unable to open database file&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
hilft&lt;br /&gt;
  sudo chmod -R o+r /var/lib/command-not-found/&lt;br /&gt;
&lt;br /&gt;
== Versionen ==&lt;br /&gt;
&lt;br /&gt;
Die derzeitige (Stand: November 2014) LTS-Version von Linux Mint trägt die Nummer 17 und nennt sich Qiana. Basis dafür ist [[Ubuntu]] 14.04 &amp;quot;Trusty&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Anwendungen ==&lt;br /&gt;
=== Konsole ===&lt;br /&gt;
* [[joe]] - ein Wordstar-artiger Texteditor&lt;br /&gt;
* [[wakeonlan]] - zum Aufwecken anderer Rechner im Netz&lt;br /&gt;
&lt;br /&gt;
=== Internet ===&lt;br /&gt;
* [[Opera]] - die schnelle Suche in den Emails ist immer noch ein Grund für den - nicht mehr weiterentwickelten - Opera-Browser in den Versionen bis Nr. 12, in denen der Mail-Client noch enthalten war&lt;br /&gt;
&lt;br /&gt;
=== Grafik ===&lt;br /&gt;
* [[Inkscape]] - ein vektororientiertes Zeichenprogramm&lt;br /&gt;
* [[Gimp]] - ein bitmaporientiertes Bildbearbeitungsprogramm (Alternative zu Adobe Photoshop)&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
* [[Banshee]] ist der Standard-AudioPlayer von Linux Mint; er stellt eine Alternative zu Rhythmbox dar&lt;br /&gt;
** [[Banshee]] bringt einen UPnP-Client mit, den man in den Einstellungen noch aktivieren muss. Möglicherweise hilft auch die Installation des Pakets &amp;lt;code&amp;gt;mono-upnp-bin&amp;lt;/code&amp;gt; &lt;br /&gt;
* [[AmaroK]] ist ein umfangreicher Audio-Player, eine mögliche Alternative zu Banshee&lt;br /&gt;
&lt;br /&gt;
=== Zubehör ===&lt;br /&gt;
* [[Adobe Reader]] - eine kommerzielle, aber kostenlose Alternative zum Standard-Pdfviewer Evince&lt;br /&gt;
* [[Okular]] - eine [[Open Source]] - Alternative zu Evince auf [[Qt]]-Basis&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Linux_Mint&amp;diff=23182</id>
		<title>Linux Mint</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Linux_Mint&amp;diff=23182"/>
		<updated>2026-09-20T13:18:27Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Troubleshooting */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Nette Features ==&lt;br /&gt;
&lt;br /&gt;
Linux Mint ist eine der meistgenutzten [[Linux]]-Distributionen. Es hat einige nette Features, z.B.:&lt;br /&gt;
* Der Lautsprecher-Indikator (kleines Icon rechts unten in der Taskleiste) lässt sich mit Hilfe des mittleren Mausrads regeln. Durch einen Rechtsklick lässt sich auch die Ausgabequelle (z.B. Lautsprecher im Monitor über HDMI oder Stereoanlage über integrierte Soundcard) auswählen.&lt;br /&gt;
* Wie bei Ubuntu sind schöne Fonts wie Purisa oder Sawashdee bereits vorinstalliert.&lt;br /&gt;
* Das Anwendungsmenü links unten ist übersichtlich gestaltet. Die Drei-Spalten-Form lässt das Menü schön erscheinen.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Installation via PXE ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[PXE]]&lt;br /&gt;
* [http://forums.linuxmint.com/viewtopic.php?f=197&amp;amp;t=96322 Anleitung zur Installation von Linux Mint via PXE]&lt;br /&gt;
&lt;br /&gt;
Die Installation von Linux Mint erfolgt entsprechend [[ Ubuntu#PXE| der von Ubuntu]]. Der Menüeintrag für Linux Mint könnte folglich so lauten:&lt;br /&gt;
&lt;br /&gt;
    LABEL mint32&lt;br /&gt;
      MENU LABEL mint32&lt;br /&gt;
      kernel mint32/vmlinuz&lt;br /&gt;
      append root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.0.5:/srv/nfs/mint32 initrd=mint32/initrd.lz file=/cdrom/preseed/linuxmint.seed locale=de_DE bootkbd=de console-setup/layoutcode=de console-setup/variantcode=nodeadkeys nosplash&lt;br /&gt;
&lt;br /&gt;
Hinweise:&lt;br /&gt;
* Der Parameter &amp;lt;code&amp;gt;file=/cdrom/preseed/linuxmint.seed&amp;lt;/code&amp;gt; wurde noch nicht getestet. Die Installation scheint auch ohne diesen zu funktionieren.&lt;br /&gt;
* Ob die Parameter zur Tastatur bzw. zur Lokalisierung  etwas bringen, kann nicht definitiv gesagt werden.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
&lt;br /&gt;
=== Anderer Kernel ===&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://it-learner.de/linux-mint-kernel-wechseln-so-gehts/&lt;br /&gt;
&lt;br /&gt;
==== Tastatur ====&lt;br /&gt;
&lt;br /&gt;
Siehe für Linux Mint 17 Qiana die [[Linux-Tipps#Troubleshooting_Tastatur | Behelfe, die man auch für Debian 8 Jessie benötigt,]] wenn man Probleme mit der Tastatur hat.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich sollte man bei Linux Mint noch in der Datei &amp;lt;code&amp;gt;/etc/modules-load.d/cups-filters.conf&amp;lt;/code&amp;gt; die dort genannten drei Module auskommentieren (am Anfang der Zeile mit einer # versehen), die einen Drucker am (nicht mehr üblichen) Parallelport voraussetzen.&lt;br /&gt;
&lt;br /&gt;
==== Netzwerk ====&lt;br /&gt;
&lt;br /&gt;
Sollte das Kabelnetzwerk nicht funktionieren, sollten die entsprechenden beiden  Zeilen in der &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; auskommentiert werden. Nach einem Neustart kümmert sich der Network-Manager um das System. Achtung: Bitte nicht die beiden Zeilen zum Loopback-Interface (lo) auskommentieren!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Datenbanken für command-not-found ====&lt;br /&gt;
Bei dieser Fehlermeldung:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Die Anwendung command-not-found ist abgestürzt! Bitte berichten Sie über den Fehler unter:&lt;br /&gt;
https://bugs.launchpad.net/command-not-found/+filebug&lt;br /&gt;
Bitte führen Sie folgende Informationen im Fehlerbericht an:&lt;br /&gt;
&lt;br /&gt;
Command-not-found-Version: 0.3&lt;br /&gt;
Python-Version: 3.8.10 final 0&lt;br /&gt;
Distributor ID:	Linuxmint&lt;br /&gt;
Description:	Linux Mint 20.2&lt;br /&gt;
Release:	20.2&lt;br /&gt;
Codename:	uma&lt;br /&gt;
Informationen zum Fehler:&lt;br /&gt;
&lt;br /&gt;
unable to open database file&lt;br /&gt;
Traceback (most recent call last):&lt;br /&gt;
  File &amp;quot;/usr/lib/python3/dist-packages/CommandNotFound/util.py&amp;quot;, line 23, in crash_guard&lt;br /&gt;
    callback()&lt;br /&gt;
  File &amp;quot;/usr/lib/command-not-found&amp;quot;, line 90, in main&lt;br /&gt;
    cnf = CommandNotFound.CommandNotFound(options.data_dir)&lt;br /&gt;
  File &amp;quot;/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py&amp;quot;, line 79, in __init__&lt;br /&gt;
    self.db = SqliteDatabase(dbpath)&lt;br /&gt;
  File &amp;quot;/usr/lib/python3/dist-packages/CommandNotFound/db/db.py&amp;quot;, line 12, in __init__&lt;br /&gt;
    self.con = sqlite3.connect(filename)&lt;br /&gt;
sqlite3.OperationalError: unable to open database file&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
hilft&lt;br /&gt;
  sudo chmod -R o+r /var/lib/command-not-found/&lt;br /&gt;
&lt;br /&gt;
== Versionen ==&lt;br /&gt;
&lt;br /&gt;
Die derzeitige (Stand: November 2014) LTS-Version von Linux Mint trägt die Nummer 17 und nennt sich Qiana. Basis dafür ist [[Ubuntu]] 14.04 &amp;quot;Trusty&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Anwendungen ==&lt;br /&gt;
=== Konsole ===&lt;br /&gt;
* [[joe]] - ein Wordstar-artiger Texteditor&lt;br /&gt;
* [[wakeonlan]] - zum Aufwecken anderer Rechner im Netz&lt;br /&gt;
&lt;br /&gt;
=== Internet ===&lt;br /&gt;
* [[Opera]] - die schnelle Suche in den Emails ist immer noch ein Grund für den - nicht mehr weiterentwickelten - Opera-Browser in den Versionen bis Nr. 12, in denen der Mail-Client noch enthalten war&lt;br /&gt;
&lt;br /&gt;
=== Grafik ===&lt;br /&gt;
* [[Inkscape]] - ein vektororientiertes Zeichenprogramm&lt;br /&gt;
* [[Gimp]] - ein bitmaporientiertes Bildbearbeitungsprogramm (Alternative zu Adobe Photoshop)&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
* [[Banshee]] ist der Standard-AudioPlayer von Linux Mint; er stellt eine Alternative zu Rhythmbox dar&lt;br /&gt;
** [[Banshee]] bringt einen UPnP-Client mit, den man in den Einstellungen noch aktivieren muss. Möglicherweise hilft auch die Installation des Pakets &amp;lt;code&amp;gt;mono-upnp-bin&amp;lt;/code&amp;gt; &lt;br /&gt;
* [[AmaroK]] ist ein umfangreicher Audio-Player, eine mögliche Alternative zu Banshee&lt;br /&gt;
&lt;br /&gt;
=== Zubehör ===&lt;br /&gt;
* [[Adobe Reader]] - eine kommerzielle, aber kostenlose Alternative zum Standard-Pdfviewer Evince&lt;br /&gt;
* [[Okular]] - eine [[Open Source]] - Alternative zu Evince auf [[Qt]]-Basis&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23181</id>
		<title>Drucken</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23181"/>
		<updated>2026-09-20T10:34:41Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* PDF erstellen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeines ==&lt;br /&gt;
&lt;br /&gt;
* Für Linux-Drucktipps siehe [[Linux#Drucken]]&lt;br /&gt;
* Für Windows-Drucktipps siehe [[Windows#Drucken/PDFs]]&lt;br /&gt;
* Siehe auch [[Programmierprojekte#PDF-Maschine]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDF anzeigen ==&lt;br /&gt;
&lt;br /&gt;
Das Anzeigen von PDFs können viele Programme, u.a. Okular.&lt;br /&gt;
&lt;br /&gt;
=== PDF-Formulare unter Linux ausfüllen ===&lt;br /&gt;
&lt;br /&gt;
Die kostenlose Version des [https://code-industry.net/free-pdf-editor/ Master PDF Editors] ermöglicht auch das Ausfüllen von PDF-Formularen, die JavaScript benützen. Diese können auch als Formular gespeichert werden.&lt;br /&gt;
&lt;br /&gt;
Diesen Funktionsumfang beherrscht auch der kostenlose  [https://www.foxitsoftware.com/de/pdf-reader/ Foxit PDF Reader]. Zur Installation muss man die auf der Webseite angebotene  tar.gz-Datei herunterladen und entpacken. Anschließend kann man das entpackte Setup-Skript als normaler Benutzer starten. Allerdings stürzt er unter Ubuntu 20.04 häufiger ab oder friert ein (Stand: September 2020).&lt;br /&gt;
&lt;br /&gt;
Der [[Chromium]]-Webbrowser ermöglicht ebenfalls das Ausfüllen der PDF-Formulare. Sie können auch ausgedruckt oder als (abgeschlossenes) PDF gespeichert werden. Das Abspeichern als (wiederverwendbares) PDF-Formular (z.B. zum späteren Weiterbearbeiten) ist dagegen nicht möglich.&lt;br /&gt;
&lt;br /&gt;
=== PDFs mit Ebenen / Layers ===&lt;br /&gt;
&lt;br /&gt;
* Evince kann wirklich Ebenen darstellen und drucken. Dazu den Knopf unten rechts in der linken Seitenleiste klicken.&lt;br /&gt;
* [http://www.redfelineninja.org.uk/daniel/2020/08/xpdf-is-a-pdf-viewer-for-gnu-linux-that-supports-layers/ Angeblich] kann xpdf auch Layers/Ebenen (z.B. bei Schnittbögen) ein- und ausblenden sowie anschließend ausdrucken. Ich habe dazu aber nichts gefunden.&lt;br /&gt;
&lt;br /&gt;
== PDF erstellen ==&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Windows#Drucken/PDFs]]&lt;br /&gt;
* [[Programmierprojekte#PDF]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bearbeiten von PDFs ===&lt;br /&gt;
&lt;br /&gt;
Mit pdftk kann man z.B. je drei Seiten einer großen PDF in viele kleine PDFs aufteilen:&lt;br /&gt;
  for i in $(seq 1 3 57); do pdftk input.pdf cat $i-$(( i + 2 )) output geteilt$i.pdf; done;&lt;br /&gt;
&lt;br /&gt;
Mit Ghostscript kann man die Dateigröße (und die Scanauflösung) einer zu großen gescannten PDF reduzieren:&amp;lt;ref&amp;gt; Siehe https://opensource.com/article/20/8/reduce-pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
  gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook \&lt;br /&gt;
    -dNOPAUSE -dBATCH -dColorImageResolution=150 \&lt;br /&gt;
    -sOutputFile=OUTPUT.pdf INPUT.pdf&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://pdfbox.apache.org/ Apache PDFBox] - eine [[Java]]-Bibliothek zum Erstellen und Bearbeiten von PDFs. Diese stellt auch Kommandozeilenwerkzeuge zur Verfügung.&lt;br /&gt;
* [https://wiki.ubuntuusers.de/PDF_Arranger/ pdfarranger]&lt;br /&gt;
* veraltet: [https://wiki.ubuntuusers.de/PDF_Mod/ PDFMod]&lt;br /&gt;
* PDFShuffler&amp;lt;ref&amp;gt;Vgl. https://askubuntu.com/questions/221962/how-can-i-extract-a-page-range-a-part-of-a-pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
* [https://wiki.ubuntuusers.de/pdftk/ PDFtk] - ein Kommandozeilentool zum einfachen Bearbeiten von PDF-Dateien.&lt;br /&gt;
&lt;br /&gt;
=== HTML einschließlich CSS nach PDF exportieren ===&lt;br /&gt;
&lt;br /&gt;
==== PDF  mit Chrome/Chromium ====&lt;br /&gt;
Chrome/Chromium bietet die Möglichkeit eine Webseite als PDF zu exportieren:&amp;lt;ref&amp;gt;Vgl. https://superuser.com/questions/592974/how-to-print-to-save-as-pdf-from-a-command-line-with-chrome-or-chromium&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  chromium-browser --headless --print-to-pdf=&amp;quot;/tmp/test.pdf&amp;quot; https://bahn.de&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
  * [https://stackoverflow.com/questions/46077392/additional-options-in-chrome-headless-print-to-pdf Anleitung zum Entfernen der Kopf- und Fußzeilen]&lt;br /&gt;
&lt;br /&gt;
==== CSS-PDF-Renderer ====&lt;br /&gt;
&lt;br /&gt;
CSS Paged Media braucht besondere Renderer, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [https://weasyprint.org/ weasyprint]&lt;br /&gt;
* https://pagedjs.org/&lt;br /&gt;
&lt;br /&gt;
=== PDF signieren ===&lt;br /&gt;
&lt;br /&gt;
Das Versehen von PDFs mit elektronischer Signatur geht z.B. &lt;br /&gt;
* mit [[Javascript]]&lt;br /&gt;
** https://github.com/vbuch/node-signpdf &lt;br /&gt;
*** https://medium.com/caution-your-blast/how-to-digitally-sign-a-pdf-programmatically-using-javascript-nodejs-54194af7bdc3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Windows-Client erstellt PDFs auf einem Linux-Druckserver ===&lt;br /&gt;
&lt;br /&gt;
Um von einem Windows-Client PDFs auf einem Linux-Server zu erstellen geht man folgendermaßen vor:&lt;br /&gt;
==== Einrichten des Linux-Servers ====&lt;br /&gt;
* Einrichten des [[CUPS]]-Daemon z.B. auf einem [[Kubuntu]]-System&lt;br /&gt;
* Installation des virtuellen PDF-Druckers:&lt;br /&gt;
  sudo aptitude install cups-pdf&lt;br /&gt;
* Aufruf der [[CUPS]]-Verwaltungsoberfläche mit http://localhost:631&lt;br /&gt;
** PDF-Drucker publizieren (ggf. muss Passwort angegeben werden)&lt;br /&gt;
&lt;br /&gt;
==== Einrichten des Windows-Clients ====&lt;br /&gt;
* Neuen Netzwerkdrucker hinzufügen&lt;br /&gt;
** Auswahl des PDF-Druckers auf dem Linux-Server&lt;br /&gt;
* Als Druckertreiber auswählen:&lt;br /&gt;
  HP Deskjet 1200 C/PS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Drucken ====&lt;br /&gt;
* Wie gewohnt auf dem Windows-Client drucken&lt;br /&gt;
* Die Datei findet sich auf dem Linux-Server in &lt;br /&gt;
  /var/spool/cups-pdf/ANONYMOUS/&lt;br /&gt;
* Das kann man noch ändern, indem man folgende Datei bearbeitet:&lt;br /&gt;
  /etc/cups/cups-pdf.conf&lt;br /&gt;
&lt;br /&gt;
== PDF umwandeln ==&lt;br /&gt;
&lt;br /&gt;
=== Seite auf mehrere Seiten verteilen ===&lt;br /&gt;
&lt;br /&gt;
* pdfposter&lt;br /&gt;
  pdfposter -pA3 in.pdf out.pdf&lt;br /&gt;
* [https://cade.utah.edu/faqs/how-can-i-print-multiple-pages-per-sheet-in-linux/ psnup]&lt;br /&gt;
&lt;br /&gt;
=== Konvertieren in JPEG ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
&lt;br /&gt;
  gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r600 -sOutputFile=&#039;seite-%00d.jpg&#039; input.pdf&lt;br /&gt;
&lt;br /&gt;
kann man JPEGs aus einer PDF mit einer 600dpi-Auflösung erstellen.&amp;lt;ref&amp;gt;Siehe http://askubuntu.com/questions/100994/convert-pdf-to-image .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hyperlinks in PDFs ==&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.backslash.ch/blog/2006/12/4/Auf-Seiten-im-PDF-direkt-verlinken&lt;br /&gt;
&lt;br /&gt;
== Druckerauswahl ==&lt;br /&gt;
&lt;br /&gt;
=== Kriterien ===&lt;br /&gt;
&lt;br /&gt;
Wichtig sind die Gesamtkosten. Häufig werden die Drucker vom Hersteller günstig abgegeben; dieser holt sich das Geld jedoch über den Verkauf von Verbrauchsmitteln, insbesondere Tintenpatronen. Es gibt inzwischen Drucker mit Tintentanks statt -patronen, die deutlich günstiger im Dauerbetrieb sind, z.B. von&lt;br /&gt;
* Canon, dort die GXXXXX-Serie (PIXMA G für Privatanwender, MAXIFY G für Büro),&lt;br /&gt;
* Epson, dort Ecotank bzw. ET-XXXX genannt,&lt;br /&gt;
* HP, dort Smart Tank genannt.&lt;br /&gt;
* Brother, dort wohl die (wohl schlecht lieferbare) MFC T-Serie, z.B. der MFC-T920DW.&lt;br /&gt;
&lt;br /&gt;
Für den Einsatz unter dem jeweiligen Betriebssystem müssen Druckertreiber vorliegen. Aktuell sollte man also schauen, dass es Treiber für&lt;br /&gt;
* [[Linux-Tipps#Drucken | Linux]]&lt;br /&gt;
* [[Windows 7]] &lt;br /&gt;
* [[Windows 8]]&lt;br /&gt;
gibt.&lt;br /&gt;
&lt;br /&gt;
Multifunktionsgeräte, die auch Scannen und Kopieren können, sind platzsparend. Sinnvoll ist dafür ein Mehrblatteinzug (ADF), am besten beidseitig (DADF) und für mindestens 10, besser 30 Blatt.&lt;br /&gt;
&lt;br /&gt;
Beidseitiges Scannen (DADF) ist nicht gleich beidseitiges Drucken (Duplex). Man muss bei jedem Gerät extra schauen.&lt;br /&gt;
&lt;br /&gt;
Schließlich ist noch entscheidend, ob der normale DIN A4-Druck reicht, oder größere Formate notwendig sind.&lt;br /&gt;
&lt;br /&gt;
Für Heimanwender ist wohl Farbdruck notwendig.&lt;br /&gt;
&lt;br /&gt;
Bei Heimanwendern ohne separates Büro könnten Laserdrucker wegen der nicht gänzlich zu vermeidenden Emissionen nicht in Betracht kommen.&lt;br /&gt;
&lt;br /&gt;
Die Größe des Geräts muss dem vorhandenen Raum angepasst sein. Z.B. maximale Tiefe 47 cm, maximale Höhe 32 cm.&lt;br /&gt;
&lt;br /&gt;
=== Druckermodelle ===&lt;br /&gt;
&lt;br /&gt;
==== Allgemein ====&lt;br /&gt;
* [http://www.druckerchannel.de/bestenliste.php?tabelle=multitinte_office&amp;amp;fillS druckerchannel - Bestenliste]&lt;br /&gt;
* [https://www.idealo.de/preisvergleich/ProductCategory/3309F1261405-1261438-1432803-2372356-7566625-103428795.html Drucker mit Tintentank und doppelseitigem Scannen]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7050 bietet &lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A4&lt;br /&gt;
** Papierzufuhr bis 600 Blatt (alle Kassetten zusammen, max. 250 Blatt in einer Kassette)&lt;br /&gt;
** Für Linux-Support braucht man evtl. das [https://sane-project.gitlab.io/website/lists/sane-backends-external.html canon_pixma]-Backend zum Scannen.&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7040 scheint sich nicht vom GX7050 zu unterscheiden.&lt;br /&gt;
&lt;br /&gt;
==== Epson ====&lt;br /&gt;
&lt;br /&gt;
* Der Epson Ecotank ET-M16680 bietet&lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A3&lt;br /&gt;
** Papierzufuhr bis 250 Blatt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die [http://assets.epson-europe.com/de/WorkForce/ &amp;quot;Workforce Pro&amp;quot;-Reihe] ist für den intensiveren Büro-Einsatz gedacht.&lt;br /&gt;
&lt;br /&gt;
Diese unterscheiden sich in die &amp;quot;Professional&amp;quot;-Geräte und die &amp;quot;Microbusiness&amp;quot;-Geräte:&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10830 &#039;&#039;&#039;WP-4525 DNF&#039;&#039;&#039;]: Professional, USB, LAN, Duplexeinzug, Duplexdruck, 2,4 W Standby, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 310 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10831 &#039;&#039;&#039;WP-4535 DWF&#039;&#039;&#039;]: Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 350 € (UVP)]&lt;br /&gt;
*** [http://www.druckerchannel.de/artikel.php?ID=3183&amp;amp;t=test_buero_tintenmultifunktionsgeraete_gegen_laser_aio Vergleich mit HP OfficeJet 8600 Plus]&lt;br /&gt;
** &#039;&#039;&#039;WP-4545 DTWF&#039;&#039;&#039;:Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 580 Blatt, [http://assets.epson-europe.com/de/WorkForce/ 400 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10833 &#039;&#039;&#039;WP-4595 DNF&#039;&#039;&#039;]: USB, LAN, Postscript, Duplexeinzug, Duplexdruck, 250 + 80 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;,  [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/overview/10833 610 € (UVP)]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: WP-4015 DN, WP-4515 DN, WP-4025 DW&lt;br /&gt;
Kein Scanner: WP-4095 DN&lt;br /&gt;
&lt;br /&gt;
==== Brother ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1/s_detailType/specs &#039;&#039;&#039;MFC-J6910DW&#039;&#039;&#039;], USB, LAN, WLAN,  Duplexeinzug (bis A4), Duplexdruck (bis A3), 2 x 250 Blatt, 540x 331 x &#039;&#039;489&#039;&#039;, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1 605 € (UVP)].&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: DCP-J925DW, DCP-9010CN, DCP-9055CDN, MFC-990CW, MFC-9120CN, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/32140/s_product/MFC9320CWG1/s_detailType/specs MFC-9320CW] &lt;br /&gt;
  &lt;br /&gt;
Kein Mehrseiteneinzug: MFC-J825DW&lt;br /&gt;
&lt;br /&gt;
==== Hewlett-Packard ====&lt;br /&gt;
Bei HP gibt es sowohl eine &amp;quot;OfficeJet&amp;quot; als auch eine &amp;quot;OfficeJet Pro&amp;quot;-Reihe.&lt;br /&gt;
&lt;br /&gt;
* [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 HP OfficeJet Pro 8600 Plus],USB, LAN, WLAN, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 Duplexeinzug], Duplexdruck, [http://hplipopensource.com/hplip-web/models/officejet/officejet_pro_8600.html offizielle Linux-Unterstützung], 250 Blatt, 494 x &#039;&#039;645,5&#039;&#039; (412) x 315, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 280 € (UVP)]&lt;br /&gt;
** [http://www.druckerchannel.de/forum.php?seite=beitrag&amp;amp;ID=230409&amp;amp;t=canon_mx895_vs_hp_8600_pro Vergleich mit Canon MX895]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: HP OfficeJet Pro 8600, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323624 HP OfficeJet 6700 Premium]&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Linux-Tipps#HP-Drucker]]&lt;br /&gt;
&lt;br /&gt;
==== Lexmark ====&lt;br /&gt;
&lt;br /&gt;
* [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product OfficeEdge Pro5500], Duplexeinzug (single pass), Duplexprint, 12 W &amp;quot;Bereit&amp;quot;, 300 x &#039;&#039;500&#039;&#039; x 427, 300 + 150 (+550) Blatt, [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product offiziell Linux-unterstützt] [http://www.idealo.de/preisvergleich/OffersOfProduct/3287777_-officeedge-pro5500-lexmark.html#testberichte 200 €]&lt;br /&gt;
** Nachteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html Hoher Stromverbrauch im Standby von 5 W]&lt;br /&gt;
** Vorteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html besserer Fotodruck als HP OfficeJet 8600 Plus]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX885/ Canon PIXMA MX885], USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/615303 rund 200 € im EU-Ausland]&lt;br /&gt;
** läuft angeblich auch [http://community.linuxmint.com/tutorial/view/493 mit Linux]&lt;br /&gt;
** allerdings wird auch von [http://www.amazon.de/review/R24TUIPZK8GXE8 schlechten Erfahrungen mit Linux-Anbindung] berichtet&lt;br /&gt;
* Canon MX892, Duplexeinzug, Duplexdruck&lt;br /&gt;
* Canon MX895, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/744060 150 €]&lt;br /&gt;
** Vorteil: guter Fotodruck&lt;br /&gt;
** Nachteile: hohe Druckkosten, kleine Patronen&lt;br /&gt;
&lt;br /&gt;
Ohne Duplexeinzug: [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG3250/ PIXMA MG3250], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX515/ PIXMA MX515], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5150/ PIXMA MG5150], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5350/ PIXMA MG5350]  &lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Ubuntu]]&lt;br /&gt;
[[Category:Windows]]&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Drucken]]&lt;br /&gt;
[[Category:Hardware]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Postfix&amp;diff=23180</id>
		<title>Postfix</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Postfix&amp;diff=23180"/>
		<updated>2026-09-15T20:21:10Z</updated>

		<summary type="html">&lt;p&gt;Codica: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Siehe auch [[Mail unter Linux#SMTP-Server]], [[Mail unter Linux#Einfacher MTA mittels Postfix]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Einrichten von Postfix zum Versenden über Mail-Provider arcor.de ==&lt;br /&gt;
&lt;br /&gt;
Installation:&amp;lt;ref&amp;gt;Vgl. https://wiki.ubuntuusers.de/postfix&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  sudo aptitude install postfix libsasl2-modules bsd-mailx &lt;br /&gt;
&lt;br /&gt;
Konfiguration &lt;br /&gt;
  sudo dpkg-reconfigure postfix&lt;br /&gt;
&lt;br /&gt;
* System: Satellitensystem&lt;br /&gt;
* Eigene Domain: &amp;lt;code&amp;gt;eigenerserver.de&amp;lt;/code&amp;gt; oder ein anderer frei wählbarer Name (unten wird arcor-Adresse dann ausgewählt)&lt;br /&gt;
* SMTP-Relay-Server: mail.arcor.de&lt;br /&gt;
&lt;br /&gt;
Konfigurationsdatei &amp;lt;code&amp;gt;/etc/postfix/main.cf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Hinzufügen folgender Zeilen:&lt;br /&gt;
  smtp_sasl_auth_enable = yes&lt;br /&gt;
  smtp_sasl_security_options = noanonymous&lt;br /&gt;
  smtp_sasl_password_maps = hash:/etc/postfix/sasl_password&lt;br /&gt;
  smtp_tls_security_level = may&lt;br /&gt;
  sender_canonical_maps = hash:/etc/postfix/sender_canonical&lt;br /&gt;
&lt;br /&gt;
Passwortdatei &amp;lt;code&amp;gt;/etc/postfix/sasl_password&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  mail.arcor.de  EMAIL@arcor.de:PASSWORT&lt;br /&gt;
&lt;br /&gt;
EMAIL und PASSWORT müssen natürlich angepasst werden. Danach hashen:&lt;br /&gt;
&lt;br /&gt;
  sudo chmod 600 /etc/postfix/sasl_password &lt;br /&gt;
  sudo postmap hash:/etc/postfix/sasl_password &lt;br /&gt;
&lt;br /&gt;
Absenderdatei &amp;lt;code&amp;gt;/postfix/sender_canonical&amp;lt;/code&amp;gt;&lt;br /&gt;
  LINUX_USER1 EMAIL1@arcor.de&lt;br /&gt;
  root        EMAIL2@arcor.de&lt;br /&gt;
&lt;br /&gt;
Auch hier sind LINUX_USER1 und EMAIL1 etc. anzupassen. Danach umwandeln in Datenbank:&lt;br /&gt;
  sudo postmap /etc/postfix/sender_canonical &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Neustart von Postfix&lt;br /&gt;
  sudo service postfix restart&lt;br /&gt;
&lt;br /&gt;
Test&lt;br /&gt;
  mail -s &amp;quot;hello&amp;quot; mein@private_email.de&lt;br /&gt;
&lt;br /&gt;
Mit einem anderen Absender:&lt;br /&gt;
  echo test | mail -s &amp;quot;helloXX&amp;quot; EMAIL4@gmx.de -a &amp;quot;From:VORNAME NACHNAME&amp;lt;EMAIL2@arcor.de&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Nur Mails von localhost versenden ==&lt;br /&gt;
&lt;br /&gt;
Mit der Zeile &lt;br /&gt;
  inet_interfaces = 127.0.0.1&lt;br /&gt;
statt&lt;br /&gt;
  inet_interfaces = all&lt;br /&gt;
in &amp;lt;code&amp;gt;/etc/postfix/main.cf&amp;lt;/code&amp;gt; wird verhindert, dass Mails auch von anderen Servern als localhost versendet werden können.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Versenden von Mails an Systemuser an externe Email ==&lt;br /&gt;
&lt;br /&gt;
Genutzt werden sollte dafür &amp;lt;code&amp;gt;/etc/postfix/canonical&amp;lt;/code&amp;gt; und nicht &amp;lt;code&amp;gt;/etc/postfix/generic&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Nutzen mehrerer Smarthosts ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://wiki.ubuntuusers.de/Postfix/Erweiterte_Konfiguration#Sender-abhaengige-Authentifizierung&lt;br /&gt;
* https://ubuntu-tutorials.com/2009/03/13/configure-postfix-for-multiple-isp-client-smtp-authentication/&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://wiki.ubuntuusers.de/postfix &lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Internet]]&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Mail]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23179</id>
		<title>AceMagic Kron Mini</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23179"/>
		<updated>2026-09-14T20:03:22Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Das Auseinanderbauen des Mini-PC zeigt https://www.youtube.com/watch?v=XtfTE0zn_rM&lt;br /&gt;
&lt;br /&gt;
Manche Modelle haben&lt;br /&gt;
* MediaTek Wi-Fi 6E MT7902 Wireless LAN Card&lt;br /&gt;
** Treiber in Kernel ab V 7.1&lt;br /&gt;
** Vorher: &lt;br /&gt;
*** https://github.com/OnlineLearningTutorials/mt7902_temp&lt;br /&gt;
*** https://www.cnx-software.com/2026/03/20/enabling-mediatek-m7902-wifi-and-bluetooth-drivers-on-ubuntu-24-04-the-easy-way/&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HTPC]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23178</id>
		<title>AceMagic Kron Mini</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23178"/>
		<updated>2026-09-14T18:28:22Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Das Auseinanderbauen des Mini-PC zeigt https://www.youtube.com/watch?v=XtfTE0zn_rM&lt;br /&gt;
&lt;br /&gt;
Manche Modelle haben&lt;br /&gt;
* MediaTek Wi-Fi 6E MT7902 Wireless LAN Card&lt;br /&gt;
** Treiber in Kernel ab V 7.1&lt;br /&gt;
** Vorher: https://www.cnx-software.com/2026/03/20/enabling-mediatek-m7902-wifi-and-bluetooth-drivers-on-ubuntu-24-04-the-easy-way/&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HTPC]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23177</id>
		<title>AceMagic Kron Mini</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23177"/>
		<updated>2026-09-14T18:20:09Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Das Auseinanderbauen des Mini-PC zeigt https://www.youtube.com/watch?v=XtfTE0zn_rM&lt;br /&gt;
&lt;br /&gt;
Manche Modelle haben&lt;br /&gt;
* MediaTek Wi-Fi 6E MT7902 Wireless LAN Card&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HTPC]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23176</id>
		<title>AceMagic Kron Mini</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=AceMagic_Kron_Mini&amp;diff=23176"/>
		<updated>2026-09-14T18:18:23Z</updated>

		<summary type="html">&lt;p&gt;Codica: Die Seite wurde neu angelegt: „ == Hardware ==  Das Auseinanderbauen des Mini-PC zeigt https://www.youtube.com/watch?v=XtfTE0zn_rM  ---------- &amp;lt;references/&amp;gt;  Category:HTPC“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Hardware ==&lt;br /&gt;
&lt;br /&gt;
Das Auseinanderbauen des Mini-PC zeigt https://www.youtube.com/watch?v=XtfTE0zn_rM&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HTPC]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=K%C3%BCnstliche_Intelligenz&amp;diff=23175</id>
		<title>Künstliche Intelligenz</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=K%C3%BCnstliche_Intelligenz&amp;diff=23175"/>
		<updated>2026-09-13T19:31:15Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Sprachmodelle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Allgemeines ==&lt;br /&gt;
Siehe [[Neuronale Netze]]&lt;br /&gt;
&lt;br /&gt;
=== Rechtliches ===&lt;br /&gt;
&lt;br /&gt;
Bei Systemen, die mit Künstlicher Intelligenz arbeiten, sind insbesondere die EU-Datenschutzgrundverordnung sowie die -Künstliche-Intelligenz-Verordnung zu beachten.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://datenschutz-generator.de/ki-kompetenz/&lt;br /&gt;
&lt;br /&gt;
== ChatGPT ==&lt;br /&gt;
&lt;br /&gt;
ChatGPT ist eine künstliche Intelligenz, mit der man Dialoge im WhatsApp-Stil führen kann. Es kann nach Anmeldung auf openai kostenlos genutzt werden.&lt;br /&gt;
&lt;br /&gt;
Eine lustige Anwendung ist [https://www.ricoshet.com/ ricoshet.com]; dort spricht - nach Vorgabe eines Themas - ChatGPT mit sich selbst.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.golem.de/news/kuenstliche-intelligenz-so-funktioniert-chatgpt-2302-171644-3.html&lt;br /&gt;
&lt;br /&gt;
== Sprachmodelle ==&lt;br /&gt;
&lt;br /&gt;
Viele andere Sprachmodelle kann man auch lokal (und kostenlos) testen. 32GB sind aber mindestens erforderlich, 64GB machen die Nutzung rascher.&lt;br /&gt;
&lt;br /&gt;
Als Tools bieten sich an:&lt;br /&gt;
* [https://justvugg.github.io/colibri/ colibri]&lt;br /&gt;
* [https://msty.ai/ Msty] &lt;br /&gt;
* GPT4all&lt;br /&gt;
&lt;br /&gt;
== Spracherkennung ==&lt;br /&gt;
&lt;br /&gt;
* https://gnulinux.ch/open-source-spracherkennung&lt;br /&gt;
* https://www.notdefine.de/projects/nerd-dictation-spracheingabe-unter-linus-in-deutsch&lt;br /&gt;
* https://github.com/QuantiusBenignus/BlahST&lt;br /&gt;
&lt;br /&gt;
== Anwendungsfelder von Künstlicher Intelligenz ==&lt;br /&gt;
=== Softwareentwicklung mit Künstlicher Intelligenz ===&lt;br /&gt;
&lt;br /&gt;
* https://statistician-in-stilettos.medium.com/best-practices-i-learned-for-ai-assisted-coding-70ff7359d403&lt;br /&gt;
* https://dev.to/ranndy360/ai-coding-best-practices-in-2025-4eel&lt;br /&gt;
* https://manus.im/de/blog/best-ai-coding-assistant-tools&lt;br /&gt;
&lt;br /&gt;
=== Emails schreiben mit Künstlicher Intelligenz ===&lt;br /&gt;
&lt;br /&gt;
Für [[Thunderbird]] gibt es ein Add-On ThunderAI.&lt;br /&gt;
&lt;br /&gt;
-------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Finanzsoftware&amp;diff=23174</id>
		<title>Finanzsoftware</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Finanzsoftware&amp;diff=23174"/>
		<updated>2026-09-13T11:41:44Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* ERP-Software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeines ==&lt;br /&gt;
&lt;br /&gt;
Im [[GnuCash]]-Wiki gibt es eine [http://wiki.gnucash.org/wiki/De/Referenz Einführung in die Doppelte Buchführung] samt Darstellung von Kontenrahmen und der englischen Entsprechungen.&lt;br /&gt;
&lt;br /&gt;
== Plattformübergreifende Software ==&lt;br /&gt;
&lt;br /&gt;
=== Hibiscus ===&lt;br /&gt;
&lt;br /&gt;
[[Hibiscus]] ist im Wesentlichen eine Homebankingsoftware. Als [[Java]]-Anwendung handelt es sich um [[Plattformübergreifende Software]].&lt;br /&gt;
&lt;br /&gt;
* [http://www.willuhn.de/products/hibiscus/ Offzielles und Aktuelles zu Hibiscus]&lt;br /&gt;
&lt;br /&gt;
==== Hibiscus Mashup ====&lt;br /&gt;
[https://hibiscus-mashup.derrichter.de/index.php/faq Hibiscus Mashup] bietet kostenlose Plugins zur Anbindung von Non-FinTS-Konten wie PayPal oder verschiedene Kreditkarten wie Barclays.&lt;br /&gt;
&lt;br /&gt;
Achtung: Die Mashup-Plugins nutzen manchmal Komponenten auf von Hibiscus-Plugins abweichendem Versionsstand. Deshalb kann manchmal die XML-RPC-API, das Webadmin-Interface o.Ä. nicht funktionieren.&amp;lt;ref&amp;gt; Siehe https://homebanking-hilfe.de/forum/topic.php?t=22157&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://hibiscus-mashup.derrichter.de/index.php/download/plugins-und-addons-stable Plugins für manuelle Installation]&lt;br /&gt;
&lt;br /&gt;
==== Hibiscus und Postbank-Online-Banking ====&lt;br /&gt;
&lt;br /&gt;
Die Anmeldung eines Postbankkontos bei Hibiscus wird mit Hilfe von Bankleitzahl, Postbank-ID (vor 2023: Kontonummer) und PIN (das Passwort im Online-Banking) durchgeführt. Das gilt auch nach der SEPA-Einführung (Stand: 2023). Die Postbank-ID trägt man bei &amp;quot;Kundenkennung&amp;quot; und &amp;quot;Benutzerkennung&amp;quot; ein.&lt;br /&gt;
&lt;br /&gt;
Die TAN bekommt man über die BestSign-App. Siehe dazu https://www.willuhn.de/wiki/doku.php?id=support:list:tan-verfahren#pushtan_apptan_bestsign &lt;br /&gt;
Man beachte, dass seit 2023 der Name des Sicherheitsmediums in Hibiscus angegeben werden muss, nicht mehr wie früher mit dem Präfix &amp;quot;SO:&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Um Überweisungen mit Hibiscus (oder einer anderen Banking-Software auf Basis von FinTS/HBCI) vorzunehmen, muss bei der Postbank das entsprechende Auftragslimit im Online-Banking-Portal der Postbank unter Einstellungen -&amp;gt; Auftragslimit bei &amp;quot;Finanzsoftware&amp;quot; gesetzt werden. Bei Einloggen mit Benutzername und Passwort werden die Limite für die Finanzsoftware jedoch nicht angezeigt. Dafür muss man mit Kontonummer und PIN sich einloggen; dann sieht alles gleich aus, nur dass die Finanzsoftware-Limite angegeben werden.&amp;lt;ref&amp;gt; Vgl. [http://microsoft.public.de.money.narkive.com/JA2LXiV1/postbank-limit-fur-finanzsoftware Forumsbeitrag], [https://antworten.postbank.de/frage/ueber-die-anwahl-mit-postbank-id-und-passwort-lassen-sich-die-limitwer-59212.html?tag=finanzsoftware&amp;amp;open=17 Antwort von der Postbank] .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Umstieg der Postbank-IT auf diejenige der Deutschen Bank scheint [https://homebanking-hilfe.de/forum/topic.php?t=25882&amp;amp;page=2 auch mit Hibiscus lösbar].&lt;br /&gt;
&lt;br /&gt;
=== SynTAX ===&lt;br /&gt;
&lt;br /&gt;
Vom selben Hersteller wie [[Hibiscus]] ist die &amp;quot;Finanzbuchhaltung für Selbständige und &#039;Nichtbilanzierer&#039; nach SKR03/04&amp;quot; [http://www.willuhn.de/products/syntax/ SynTAX].&lt;br /&gt;
&lt;br /&gt;
=== GnuCash ===&lt;br /&gt;
&lt;br /&gt;
[[GnuCash]] läuft zumindest unter [[Linux]] und [[Windows]].&lt;br /&gt;
* [http://www.gnucash.org/de/ Aktuelles zu GnuCash]&lt;br /&gt;
* [http://wiki.gnucash.org/wiki/De/GnuCash GnuCash Wiki]&lt;br /&gt;
* Mit GnuCash lässt sich auch eine [http://wiki.gnucash.org/wiki/De/EÜR Einnahme-Überschuss-Rechnung realisieren].&lt;br /&gt;
* [https://bugzilla.gnome.org/show_bug.cgi?id=473506 Meta-Bug für deutsche Benutzer von GnuCash]&lt;br /&gt;
* GnuCASHs Online-Banking kann via [[AqBanking]] auch auf deutsche Banken nach dem [[HBCI]]/[[FinTS]]-Standard zugreifen.&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [http://wiki.gnucash.org/wiki/De/Konfiguration deutschsprachige Konfigurationsanleitung]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== GnuAccounting ===&lt;br /&gt;
&lt;br /&gt;
[http://www.gnuaccounting.de/index.php?id=3 GnuAccounting] unterstützt sowohl die Belegverwaltung als auch doppelte Buchführung. Außerdem besitzt es eine [[HBCI]]/[[FinTS]]-Schnittstelle.&lt;br /&gt;
&lt;br /&gt;
=== Weitere ===&lt;br /&gt;
&lt;br /&gt;
Siehe die [http://www.gnuaccounting.org/fileadmin/gnuaccounting/documents/gnuaccounting-manual-de.pdf Übersicht im Anhang zum Handbuch von Gnuaccounting]&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/akaunting/akaunting Akaunting] - PHP-basiert&lt;br /&gt;
* [https://ofbiz.apache.org/ Apache OfBiz] - Java-basiert, Web-Anwendung&lt;br /&gt;
&lt;br /&gt;
* [https://www.openz.de/ Open Z], für 2 Nutzer kostenloses nach eigenen Angaben Open Source ERP&lt;br /&gt;
** [https://sourceforge.net/projects/openz/files/ OpenZ ist eine Web-Anwendung, die von einem Tomcat-Server bedient wird]&lt;br /&gt;
* [http://www.sql-ledger.com/ SQL-Ledger], ein ERP-Programm&lt;br /&gt;
* [http://lx-office.org/index.php?id=home Lx-Office] ist eine Variante, die 2003 sich von [[SQL-Ledger]] abtrennte und auf deutsche Besonderheiten Rücksicht nimmt.&lt;br /&gt;
** [http://debian.asconix.com/lx-office-debian-lenny-howto Anleitung zur Installation von Lx-Office 2.6] auf [[Debian]] Lenny&lt;br /&gt;
* Compiere-Derivate&lt;br /&gt;
** [http://www.compiere.com/products/index.php Compiere], ein ERP-Programm, dessen Kern [[OpenSource]] ist.&lt;br /&gt;
** [http://www.adempiere.net/web/guest/welcome Adempiere]&lt;br /&gt;
** [https://metasfresh.com/ metasfresh] - Schweizer Projekt, daher ausführliche deutschsprachige Dokumentation&lt;br /&gt;
** [https://www.idempiere.org/ iDempiere] - Java/OSGi-basiert&lt;br /&gt;
* [http://www.pecuniabanking.de/ Pecunia Banking] ist eine auf [[HBCI4Java]] basierende Anwendung für den Mac.&lt;br /&gt;
&lt;br /&gt;
== Open-Source-Programme für Linux ==&lt;br /&gt;
&lt;br /&gt;
=== Eqonomize ===&lt;br /&gt;
* [http://eqonomize.sourceforge.net/index.html Eqonomize] verfügt auch über QIF-Im- und -Export. Eqonomize ist Bestandteil der [[Ubuntu]]-Distribution.&lt;br /&gt;
&lt;br /&gt;
=== Skrooge ===&lt;br /&gt;
* [http://userbase.kde.org/Skrooge Skrooge] verfügt auch über QIF-Im- und -Export. Skrooge ist Bestandteil der [[Ubuntu]]-Distribution. Es basiert auf KDE.&lt;br /&gt;
&lt;br /&gt;
=== KMyMoney ===&lt;br /&gt;
* [http://userbase.kde.org/KMyMoney KMyMoney] verfügt auch über QIF-Im- und -Export. KMyMoney ist Bestandteil der [[Ubuntu]]-Distribution.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== AqBanking-CLI ===&lt;br /&gt;
&lt;br /&gt;
Auf der Konsole lässt sich mittels [http://www.aquamaniac.de/sites/aqbanking/cli.php AqBanking-CLI] auf ein HBCI-Konto zugreifen.&lt;br /&gt;
* [http://openlab.radion.org/lab/Konsolenbasiertes_Online_Banking_mit_Linux AqBanking-HOWTo]&lt;br /&gt;
* [http://www.aquamaniac.de/sites/download/packages.php AqBanking-Handbuch] oder [http://www.aquamaniac.de/sites/download/download.php?package=09&amp;amp;release=09&amp;amp;file=01&amp;amp;dummy=aqbanking4-handbook-20091231.pdf direkt hier]&lt;br /&gt;
* http://blog.philippklaus.de/blog/2010/02/25/aqbanking-cli/&lt;br /&gt;
* http://www.loebhard.com/linux/homebanking&lt;br /&gt;
* [http://suesz.de/wiki_public_homepage/HBCI_auf_der_Kommandozeile_unter_Linux AqBanking als Cron-Job]&lt;br /&gt;
* [http://www.khjk.org/log/2009/oct/ledger.html Skripts für AqBanking mit Ledger]&lt;br /&gt;
&lt;br /&gt;
* [https://joachim-wilke.de/blog/2016/01/22/Online-Banking-auf-der-Linux-Kommandozeile/ Joachim Wilkes Blog zu Aqbanking-cli]&lt;br /&gt;
&lt;br /&gt;
* [https://wiki.gnucash.org/wiki/AqBanking GnuCash-Wiki zu AqBanking]&lt;br /&gt;
* [https://github.com/aqbanking/aqbanking AqBanking Source Code Mirror auf GitHub]&lt;br /&gt;
&lt;br /&gt;
==== Beispiel für Postbank ====&lt;br /&gt;
&lt;br /&gt;
Die Postbank hat auch bei der FinTS-Schnittstelle von der Identifikation via Kontonummer auf die Postbank-ID umgestellt. Daher muss man diese und nicht die Kontonummer als Identifikationsmittel angeben.&lt;br /&gt;
&lt;br /&gt;
* Einrichtung Benutzer&lt;br /&gt;
  aqhbci-tool4 adduser -t pintan --context=1 -b $BANKLEITZAHL -u $POSTBANK_ID -c $POSTBANK_ID -N &amp;quot;$VORNAME $NACHNAME&amp;quot; -s https://hbci.postbank.de/banking/hbci.do&lt;br /&gt;
&lt;br /&gt;
* Abfrage unique user id (Zahl ganz am Ende der ausgegebenen Zeile):&lt;br /&gt;
  aqhbci-tool4 listusers&lt;br /&gt;
&lt;br /&gt;
* Abruf Konten&lt;br /&gt;
&lt;br /&gt;
  aqhbci-tool4 getsysid -u $UNIQUE_UID&lt;br /&gt;
  aqhbci-tool4 getaccounts -u $UNIQUE_UID&lt;br /&gt;
  aqhbci-tool4 listaccounts &lt;br /&gt;
  &lt;br /&gt;
* Abruf Konto&lt;br /&gt;
  aqhbci-tool4 getaccsepa -a $ACCOUNT_ID&lt;br /&gt;
 &lt;br /&gt;
$ACCOUNT_ID ist die Nummer, die &amp;quot;listaccounts&amp;quot; anzeigt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Wahl BestSign-TAN-Mode &lt;br /&gt;
  aqhbci-tool4 listitanmodes -u $UNIQUE_UID&lt;br /&gt;
  aqhbci-tool4 setitanmode -u $UNIQUE_UID -m &#039;&#039;&#039;6&#039;&#039;&#039;920&lt;br /&gt;
  aqhbci-tool4 setTanMediumId -u $UNIQUE_UID -m &amp;quot;SO:$DEVICE_ID&amp;quot;&lt;br /&gt;
&lt;br /&gt;
$DEVICE_ID ist der Name, der unter &amp;quot;Sicherheitsverfahren&amp;quot; im Postbank-OnlineBanking für das BestSign-Gerät (&amp;quot;SO&amp;quot; ist die Abkürzung von SealOne) angezeigt wird.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Abruf Konten&lt;br /&gt;
  aqhbci-tool4 getaccounts -u $UNIQUE_UID&lt;br /&gt;
  aqhbci-tool4 listaccounts&lt;br /&gt;
  aqbanking-cli listaccs&lt;br /&gt;
&lt;br /&gt;
* Abruf Kontostand&lt;br /&gt;
  aqbanking-cli request -b $BANKLEITZAHL --balance&lt;br /&gt;
&lt;br /&gt;
* Abruf Gut-/Lastschriften&lt;br /&gt;
  aqbanking-cli request -b $BANKLEITZAHL --transactions&lt;br /&gt;
&lt;br /&gt;
==== Beispiel für Netbank ====&lt;br /&gt;
&lt;br /&gt;
Auch die [http://www.netbank.de/nb/girokonto_hbci.jsp Netbank lässt HBCI-Zugriff] zu:&lt;br /&gt;
&lt;br /&gt;
* Einrichtung Konto&lt;br /&gt;
&lt;br /&gt;
  aqhbci-tool4 adduser -t pintan --context=1 -b $BANKLEITZAHL -u $GIROKONTONUMMER -N &amp;quot;$VORNAME $NACHNAME&amp;quot; -s https://www.bankingonline.de/hbci/pintan/PinTanServlet&lt;br /&gt;
  aqhbci-tool4 getsysid -u $GIROKONTONUMMER&lt;br /&gt;
&lt;br /&gt;
* Wahl iTAN-Mode&lt;br /&gt;
  aqhbci-tool4 listitanmodes -u $GIROKONTONUMMER&lt;br /&gt;
  aqhbci-tool4 setitanmodes -u $GIROKONTONUMMER -m 997&lt;br /&gt;
&lt;br /&gt;
* Abruf Konten&lt;br /&gt;
  aqhbci-tool4 getaccounts -u $GIROKONTONUMMER&lt;br /&gt;
  aqhbci-tool4 listaccounts&lt;br /&gt;
  aqbanking-cli listaccs&lt;br /&gt;
&lt;br /&gt;
* Abruf Kontostand&lt;br /&gt;
  aqbanking-cli request -b $BANKLEITZAHL --balance&lt;br /&gt;
&lt;br /&gt;
* Abruf Gut-/Lastschriften&lt;br /&gt;
  aqbanking-cli request -b $BANKLEITZAHL --transactions&lt;br /&gt;
&lt;br /&gt;
==== DKB ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.dkb.de/kundenservice/haeufige_fragen/internetbanking/ Infos von DKB über HBCI]&lt;br /&gt;
* [http://linuxwiki.de/OpenHBCI/GetesteteBanken/DKB OpenHBCI zu DKB]&lt;br /&gt;
&lt;br /&gt;
Einrichtung Konto&lt;br /&gt;
&lt;br /&gt;
 aqhbci-tool4 adduser -t pintan --hbciversion=300 -b $BANKLEITZAHL -u $GIROKONTONUMMER -N &amp;quot;$VORNAME $NACHNAME&amp;quot; -s https://banking-dkb.s-fints-pt-dkb.de/fints30&lt;br /&gt;
 aqhbci-tool4 getsysid -u $GIROKONTONUMMER&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
Wahl iTAN-Mode&lt;br /&gt;
&lt;br /&gt;
  aqhbci-tool4 setitanmode -u $GIROKONTONUMMER -m 1900&lt;br /&gt;
&lt;br /&gt;
==== Beispiel für Wüstenrot Bank ====&lt;br /&gt;
Siehe&lt;br /&gt;
* [http://www.kaiwu.de/cgi-bin/sbb//sbb.cgi?&amp;amp;a=show&amp;amp;forum=37&amp;amp;show=65 FinTS-Zugangsdaten der Wüstenrot-Bank nach der 2017er-Umstellung]&lt;br /&gt;
&lt;br /&gt;
* Einrichten des Kontos&lt;br /&gt;
  export BANKLEITZAHL=60420020&lt;br /&gt;
  export GIROKONTONUMMER=123456789 #Hier den Wüstenrot Key angeben, NICHT die Girokontonummer&lt;br /&gt;
  export VORNAME=Vorname&lt;br /&gt;
  export NACHNAME=Nachname&lt;br /&gt;
  aqhbci-tool4 adduser -t pintan --context=1 -b $BANKLEITZAHL -u $GIROKONTONUMMER -N &amp;quot;$VORNAME $NACHNAME&amp;quot; --hbciversion=300 -s https://hbci-pintan.gad.de/cgi-bin/hbciservlet &lt;br /&gt;
  aqhbci-tool4 getsysid -u $GIROKONTONUMMER&lt;br /&gt;
&lt;br /&gt;
* PIN speichern&lt;br /&gt;
&lt;br /&gt;
Bei Speicherung der PIN gibt &lt;br /&gt;
  aqhbci4-tool mkpinlist&lt;br /&gt;
eine falsche Form aus: Statt der Kontonummer muss hier manuell die Wüstenrot-Key angegeben werden.&lt;br /&gt;
Als PIN ist die Online-PIN des Wüstenrot-Kontos anzugeben.&lt;br /&gt;
&lt;br /&gt;
==== PIN speichern ====&lt;br /&gt;
&lt;br /&gt;
Um die PIN nicht jedesmal eingeben zu müssen, erstellt man NACH Einrichten der Konten eine pindatei.txt&lt;br /&gt;
&lt;br /&gt;
  aqhbci-tool4 mkpinlist &amp;gt; pindatei.txt&lt;br /&gt;
&lt;br /&gt;
In diese selbsterklärende Datei muss man dann die PIN(s) mittels eines Editors eingeben.&lt;br /&gt;
&lt;br /&gt;
Der Aufruf von &amp;lt;code&amp;gt;aqbanking-cli&amp;lt;/code&amp;gt; muss dann einen Hinweis auf den PIN-Speicher erhalten:&lt;br /&gt;
  aqbanking-cli &#039;&#039;&#039;-P pindatei.txt&#039;&#039;&#039; request -b $BANKLEITZAHL --balance&lt;br /&gt;
&lt;br /&gt;
==== Hilfe ====&lt;br /&gt;
Mittels&lt;br /&gt;
  aqbanking-cli --help&lt;br /&gt;
werden die möglichen Befehle angezeigt&lt;br /&gt;
&lt;br /&gt;
Zu jedem Befehl gibt es dann genauere Hilfe, z.B. für &amp;lt;code&amp;gt;request&amp;lt;/code&amp;gt;:&lt;br /&gt;
  aqbanking-cli request --help&lt;br /&gt;
&lt;br /&gt;
==== Transaktionen als CSV ====&lt;br /&gt;
&lt;br /&gt;
Wenn man die Transaktionen mittels&lt;br /&gt;
  aqbanking-cli  -P pindatei.txt request  -b $BANKLEITZAHL --transactions --ctxfile=$CTXFILE&lt;br /&gt;
&lt;br /&gt;
in der Datei $CTXFILE gespeichert hat, kann man sie mittels &lt;br /&gt;
&lt;br /&gt;
  aqbanking-cli listtrans --ctxfile=$CTXFILE&lt;br /&gt;
&lt;br /&gt;
im CSV-Format ausgeben lassen.&lt;br /&gt;
&lt;br /&gt;
Bei selbstgestrickten Output-Profilen auf das einleitende&lt;br /&gt;
  profile {&lt;br /&gt;
[http://www.onlinebanking-forum.de/phpBB2/printview.php?t=11118&amp;amp;start=0 achten].&lt;br /&gt;
&lt;br /&gt;
==== SEPA-Überweisung ====&lt;br /&gt;
&lt;br /&gt;
  aqbanking-cli -P .credentials/pindatei.txt sepatransfer -b $BANKLEITZAHL --riban=&amp;quot;$EMPFAENGER_IBAN_OHNE_LEERZEICHEN&amp;quot; -v &amp;quot;$BETRAG&amp;quot; --rname=&amp;quot;$EMPFAENGER_NAME&amp;quot; --purpose=&amp;quot;$VERWENDUNGSZWECK&amp;quot;&lt;br /&gt;
&lt;br /&gt;
$BETRAG kann verschiedene Formen haben, z.B.:&lt;br /&gt;
* &amp;quot;500&amp;quot;&lt;br /&gt;
* &amp;quot;500,02:EUR&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Schnittstelle PHP zu HBCI ====&lt;br /&gt;
&lt;br /&gt;
Siehe [http://wiki.shopware.de/Allgemein-PHP-und-HBCI-Teil-1_detail_631.html Software-Projekt]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Umsatzabruf von PayPal ====&lt;br /&gt;
&lt;br /&gt;
aqbanking-cli kann auch die Umsätze von [[PayPal]] über deren API-Schnittstelle abrufen.&lt;br /&gt;
Die entsprechenden Schlüssel bekommt man - auch für ein privates PayPal-Konto - unter https://www.paypal.com/businessmanage/credentials/apiAccess .&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.aquamaniac.de/rdm/projects/aqbanking/wiki/Paypal_einrichten&lt;br /&gt;
&lt;br /&gt;
=== Ledger ===&lt;br /&gt;
&lt;br /&gt;
[http://ledger-cli.org/features.html Ledger] ist eine Kommandozeilen-[[Doppelte Buchführung]]. Sie bietet aber auch einen Web-Browser-Zugang.&lt;br /&gt;
Zum Import von CSV-Dateien siehe&lt;br /&gt;
* [https://github.com/cantino/reckon Reckon]&lt;br /&gt;
** [http://blog.andrewcantino.com/blog/2013/02/16/command-line-accounting-with-ledger-and-reckon/ kurze Einführung zu Reckon]&lt;br /&gt;
* [https://github.com/jwiegley/CSV2Ledger CSV2Ledger]&lt;br /&gt;
* [https://www.npmjs.com/package/ledger-import ledger-import], inspiriert von Reckon&lt;br /&gt;
* das Handbuch zur Version 3.0 (ab Ubuntu 14.10) von Ledger und dort das Kommando &amp;lt;code&amp;gt;convert&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ein PPA mit einem neueren Ledger findet sich [https://launchpad.net/~mbudde/+archive/ubuntu/ledger bei mbudde].&lt;br /&gt;
&lt;br /&gt;
Diagramme lassen sich aus Ledger z.B. mit [https://github.com/elazar/ledger-stats Ledgers-Stats (Websoftware)] erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe zu Ledger-cli auch &lt;br /&gt;
* [http://matthewturland.com/category/ledger/ Blog von Matthew Turland]&lt;br /&gt;
&lt;br /&gt;
==== Web-Interface für Ledger ====&lt;br /&gt;
&lt;br /&gt;
* hledger-web ist ein einfaches Web-Interface für das Ledger-Derivat [[hledger]].&lt;br /&gt;
* Das Ledger von [https://howeyc.github.io/ledger/Web_Overview.html howeyc bietet auch ein Web-Interface].&lt;br /&gt;
* Das Projekt [http://npoacct.sfconservancy.org/accounting-api/restapi.html npoacct - accounting-api] zielt darauf ab, eine REST-Api zum lesenden und schreibenden Zugriff auf Ledger zu erstellen.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/feramhq/transity Transity] ist von ledger inspiriert, geht aber leicht andere Wege.&lt;br /&gt;
&lt;br /&gt;
==== Alternativen zu Ledger ====&lt;br /&gt;
* Ein Nachbau von Ledger in Haskell ist [[hLedger]].&lt;br /&gt;
* Ein Nachbau von Ledger in [[Go]] findet sich unter https://howeyc.github.io/ledger/&lt;br /&gt;
* [https://furius.ca/beancount/ Beancount] ist von Ledger inspiriert, lässt aber weniger Freiheiten (z.B. nur Unterkonten der 5 Haupttypen Aktiva, Verbindlichkeiten, Eigenkapital, Erlös und Aufwand).&lt;br /&gt;
* Ein auf einem yaml-Format statt auf einem Text-Format basierendes ledger auf Basis von [[Rust]] ist [https://crates.io/crates/rust_ledger rust_ledger].&lt;br /&gt;
* Ein auf einem TOML-Format statt auf einem Text-Format basierendes ledger auf Basis von [[Rust]] ist [https://crates.io/crates/bankroll bankroll]&lt;br /&gt;
&lt;br /&gt;
=== Boobank ===&lt;br /&gt;
&lt;br /&gt;
Ein Kommandozeilenprogramm zum Auslesen von bestimmten Bank-Websites und PayPal ist [http://weboob.org/applications/boobank Boobank von weboob.org].&lt;br /&gt;
&lt;br /&gt;
=== ERP-Software ===&lt;br /&gt;
&lt;br /&gt;
* [https://interoperable-europe.ec.europa.eu/eu-oss-catalogue/solutions/unico-easy UniCo Easy]&lt;br /&gt;
* [[Finanzsoftware#Ledger |Ledger]]&lt;br /&gt;
* [https://github.com/ever-co/ever-gauzy Ever Gauzy]&lt;br /&gt;
* [http://www.concepterp.de/main.php?target=nutzenprofit ConceptERP], Warenwirtschaft, Schnittstellen zu Lexware und anderen Buchhaltungssystemen, deutsch&lt;br /&gt;
* [http://www.kivitendo.de/ Kivitendo] (ehemals Lx-Office), deutsch, basiert auf Perl und PostGresSQL&lt;br /&gt;
* [http://www.nuclos.de/ Nuclos]&lt;br /&gt;
* [http://www.openbravo.com/ OpenBravo]&lt;br /&gt;
* [https://www.xtuple.com/ xTuple], english&lt;br /&gt;
* [http://www.tryton.org/de/ Tryton], eine Abspaltung von [https://www.openerp.com/ OpenERP] bietet:&lt;br /&gt;
** Buchhaltung&lt;br /&gt;
** Fakturierung&lt;br /&gt;
** Verkauf&lt;br /&gt;
** Einkauf&lt;br /&gt;
** Kostenstellen&lt;br /&gt;
** Lagerverwaltung&lt;br /&gt;
* [http://sourceforge.net/projects/opentaps/ openTaps]&lt;br /&gt;
* [http://www.ofbiz.biz/ Apache Open for Business OFBiz]&lt;br /&gt;
* [http://www.weberp.org/ webERP]&lt;br /&gt;
* [http://www.erp5.com/ ERP5]&lt;br /&gt;
* [http://www.heliumv.com/ Helium V]&lt;br /&gt;
&lt;br /&gt;
=== Weitere ===&lt;br /&gt;
&lt;br /&gt;
* [http://de.wikipedia.org/wiki/Kategorie:Freies_Unternehmens-Informationssystem Übersicht Freie ERP bei Wikipedia]&lt;br /&gt;
* [http://www.bemme.de/download.html Tudo], Warenwirtschaft und Finanzbuchhaltung&lt;br /&gt;
&lt;br /&gt;
==== Proprietäre Alternativen ====&lt;br /&gt;
* [http://msdn.microsoft.com/en-us/library/dd355398.aspx Microsoft DynamicsNAV]&lt;br /&gt;
* SAP&lt;br /&gt;
** [https://developers.sap.com/topics/sap-hana.html#deployment SAP HANA Express Edition] erlaubt SAP HANA in einer kleineren Version auf dem lokalen Rechner oder in der Cloud kostenlos zu installieren.&lt;br /&gt;
* Oracle&lt;br /&gt;
&lt;br /&gt;
== Android Apps ==&lt;br /&gt;
&lt;br /&gt;
* Die [https://play.google.com/store/apps/details?id=de.fiducia.smartphone.android.banking.nibc&amp;amp;feature=search_result#?t=W251bGwsMSwyLDEsImRlLmZpZHVjaWEuc21hcnRwaG9uZS5hbmRyb2lkLmJhbmtpbmcubmliYyJd NIBC-App] lässt auch die Verwaltung von Konten anderer Banken zu. Voraussetzung ist aber ein Konto bei der NIBC.&lt;br /&gt;
&lt;br /&gt;
== Buchführung mit Tabellenkalkulation ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.easylinux.de/Artikel/ausgabe/2006/01/044-kassenbuch/index.html Kassenbuch mit OpenOffice führen]&lt;br /&gt;
&lt;br /&gt;
== Zahlungsverkehr ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Finanzsoftware#EBICS]]&lt;br /&gt;
* [[Finanzsoftware#FinTS]]&lt;br /&gt;
&lt;br /&gt;
=== Zahlungsverkehr am POS ===&lt;br /&gt;
&lt;br /&gt;
Siehe zunächst&lt;br /&gt;
* Debitkartenzahlung&lt;br /&gt;
* Kreditkartenzahlung&lt;br /&gt;
* Kartenzahlung kontaktlos&lt;br /&gt;
* Zahlung per Smartphone via Kreditkarte&lt;br /&gt;
** Google Pay&lt;br /&gt;
** Apple Pay&lt;br /&gt;
&lt;br /&gt;
Anbieter, die mittels QR-/Barcode die Zahlungsinformationen an der Kasse übertragen, sind z.B.&lt;br /&gt;
* [https://bluecode.com/de/ BlueCode]&lt;br /&gt;
* ePassi&lt;br /&gt;
* Momo Pocket&lt;br /&gt;
* Pagaqui&lt;br /&gt;
* Pivo&lt;br /&gt;
* Vipps&lt;br /&gt;
&lt;br /&gt;
Diese wollen lt. Handelsblatt vom 11.6.2019 einen gemeinsamen Europäischen Standard für diese QR-Codes etablieren. Er soll auf einem Format von Alipay (vom chinesischen Konzern Alibaba) basieren.&lt;br /&gt;
&lt;br /&gt;
Weitere Anbieter dieser Art sind&lt;br /&gt;
* Swish &lt;br /&gt;
* Twint&lt;br /&gt;
&lt;br /&gt;
Auch die [[Kwitt]]-App der Sparkassen und Genossenschaftsbanken soll mit QR-Codes umgehen können, derzeit [https://www.girocode.de/ Girocode].&lt;br /&gt;
&lt;br /&gt;
==== Zahlungsannahme via Android NFC ====&lt;br /&gt;
&lt;br /&gt;
Wie Apple Tap to Pay kann man auch mit Android-Smartphones, die einen [[NFC]]-Chip haben, Zahlungen annehmen:&lt;br /&gt;
&lt;br /&gt;
===== Apps zur Zahlungsannahme =====&lt;br /&gt;
&lt;br /&gt;
====== Anbieter unmittelbar für POS ======&lt;br /&gt;
* [https://www.sumup.com/de-de/tap-to-pay-on-android/ SumUp] berechnet eine Gebühr von 1,39% des Zahlbetrags (Stand: 4.10.24). &lt;br /&gt;
** Bei Zahlungen mit physischen Karten gibt es ein Limit von 50 €, nicht dagegen bei Zahlungen mit virtuellen Karten (Google Pay, Apple Pay etc).&lt;br /&gt;
* [https://www.mypos.com/de-de/glass MyPOS Glass] bietet Zahlungen per Android-NFC-Gerät. Sie kosten entweder 1,4 % des Zahlbetrags ohne monatliche Grundgebühr oder 4,90 € pro Monat und 0,9% des Zahlbetrags.&lt;br /&gt;
* [https://www.adyen.com/de_DE/knowledge-hub/tap-to-pay-verwandeln-sie-mobile-geraete-in-zahlungsterminals#wie-funktioniert-tap-to-pay Adyen] bietet verschiedene Zahlungsmethoden, u.a. wohl auch Tap To Pay auf [[iPhone]]- und [[Android]]-Geräten.&lt;br /&gt;
** Das Gebührenmodell setzt sich aus einer Transaktionsgebühr von 0,11 € und einer zweigeteilten Umsatzgebühr (fester Prozentsatz nach Kartenanbieter und meist Interchange-Rate) zusammen.&lt;br /&gt;
** Tap to Pay on Iphone findet sich in der [https://www.adyen.com/de_DE/terminals Übersicht der Zahlungsmethoden vor Ort], Tap to Pay on Android aber (noch) nicht (Stand: 4.10.2024).&lt;br /&gt;
* [https://www.swedbank.lv/business/cash/cashflow/cardservice?language=ENG Swedbank] mit dem Smart Terminal eine Zahlungsannahme via Android-NFC. Bei Zahlungen über 50 € akzeptiert sie auch die PIN-Eingabe. Kosten: 0,99 % zzgl. 0,02 € (Stand: 4.10.2024).&lt;br /&gt;
&lt;br /&gt;
====== White Label-Produkte ======&lt;br /&gt;
* [https://rubean.com/phonepos/ Rubean PhonePOS]. Dieses Produkt wird nicht direkt vertrieben, sondern nur über Finanzinstitute.&lt;br /&gt;
** [https://rubean.com/phonepos/ Angeblich] gibt es das Produkt unter dem Namen SparkassenPOS mit Einrichtungskosten von rd. 20 € und 0,89 % des Zahlbetrags als Gebühren.&lt;br /&gt;
** [https://rubean.com/getpayd/ GetPAYD] ist eine weitere App von Rubean, die zusätzlich zur Zahlungsfunktion Leistungen für Zustelldienste beinhaltet]&lt;br /&gt;
** [https://rubean.com/devices/ Gerätevoraussetzungen]:&lt;br /&gt;
*** Android, mindestens Version 12&lt;br /&gt;
*** Google Play Integrity Attestation with GMS (Google Mobile Services) oder Zimperium zDEFEND zur &amp;quot;device attestation&amp;quot;&lt;br /&gt;
*** Android Key Attestation mit Google Root Certificate&lt;br /&gt;
*** NFC antenna &lt;br /&gt;
* [https://syngenio.com/possible Syngenio POSsible] ist ebenfalls ein WhiteLabel-Produkt. Es kann sowohl als Stand alone-App als auch mit Hilfe des SDK als Teil einer umfangreicheren App auf Android genutzt werden. Als Kunde kann man über den Netzbetreiber und den Acquirer entscheiden.&lt;br /&gt;
* https://tapxphone.com/&lt;br /&gt;
* [https://www.viva.com/de-at/vendor-solutions/supported-devices viva.com] bietet wohl auch Zahlungen über Android-Smartphones an.&lt;br /&gt;
&lt;br /&gt;
== Programmierschnittstellen ==&lt;br /&gt;
&lt;br /&gt;
=== Payment Request API ===&lt;br /&gt;
&lt;br /&gt;
* https://www.w3.org/TR/payment-request/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== FinTS ===&lt;br /&gt;
&lt;br /&gt;
FinTS ist der Nachfolger von HBCI&amp;lt;ref&amp;gt;http://linuxwiki.de/HBCI&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Allgemeine Informationen zu HBCI gibt&#039;s im [http://linuxwiki.de/HBCI LinuxWiki].&lt;br /&gt;
&lt;br /&gt;
* [https://www.hbci-zka.de/spec/spezifikation.htm FinTS-Spezifikationen]&lt;br /&gt;
&lt;br /&gt;
==== FinTS-Zugriff ====&lt;br /&gt;
&lt;br /&gt;
* HBCI4Java ist eine [[OpenSource]]-API, die auch von [[Hibiscus]] genutzt wird. &lt;br /&gt;
** Der von [[Hibiscus]] verwendete Fork findet sich auf [https://github.com/hbci4j/hbci4java GitHub]. &lt;br /&gt;
** Ein weiterer [https://github.com/adorsys/hbci4java-adorsys Fork von adorsys] wird in deren [https://github.com/adorsys/multibanking Multibanking-Tool] verwendet.&lt;br /&gt;
&lt;br /&gt;
* Siehe auch oben [[#AqBanking-CLI]]&lt;br /&gt;
&lt;br /&gt;
* Der [[TypeScript]]-basierte [https://github.com/Prior99/fints fints.js] erlaubt das Abfragen von Umsätzen. Es bietet eine Library und einen Command-Line-Client.&lt;br /&gt;
&lt;br /&gt;
* Die Open Source-Version des [https://www.npmjs.com/package/open-fin-ts-js-client Open-Fin-TS-JS-Clients] erlaubt lediglich die Abfrage des Kontos, nicht aber eine Überweisung. &lt;br /&gt;
** Diese API läuft jedenfalls mit Node.js. &lt;br /&gt;
** Das unterstützte Protokoll ist FinTS 3.0. &lt;br /&gt;
** Ein Testserver ist integriert.&lt;br /&gt;
&lt;br /&gt;
* Produkte zum FinTS-Zugriff müssen angeblich bei der Deutschen Kreditwirtschaft registriert werden.&lt;br /&gt;
** Siehe https://www.hbci-zka.de/register/register_faq.htm&lt;br /&gt;
&lt;br /&gt;
==== FinTS-Testserver ====&lt;br /&gt;
&lt;br /&gt;
Neben dem genannten Testserver des Open-FinTS-JS-Clients gibt es weitere Ansätze, einen solchen Server zur Verfügung zu stellen:&lt;br /&gt;
&lt;br /&gt;
* https://prototypefund.de/project/libspsd2-freie-api-und-sandbox-fuer-das-europaeische-finanzsystem/&lt;br /&gt;
* https://github-wiki-see.page/m/jHetzer/erpnextfints/wiki/FinTS-Test-Server&lt;br /&gt;
* https://github.com/thomet/hbci4javaserver - nicht gepflegt, zeigt aber, wie man mit der hbci4java einen Test-Server aufbaut&lt;br /&gt;
&lt;br /&gt;
==== Postbank ====&lt;br /&gt;
&lt;br /&gt;
* Die HBCI-Adresse der Postbank findet sich [http://www.postbank.de/privatkunden/pk_banking_postbank_de.html hier (inkl. Zertifikat)].&lt;br /&gt;
* In Online-Banking-Software muss man dem Namen des &amp;quot;BestSign-Gerät&amp;quot; (seit dem Umzug der Technik zur Deutschen Bank Anfang 2023) nicht mehr ein &amp;quot;SO:&amp;quot; voranstellen. &lt;br /&gt;
* Weitere Parameter finden sich im [http://linuxwiki.de/OpenHBCI/GetesteteBanken Wiki von OpenHBCI].&lt;br /&gt;
* Angeblich soll auch BestSign mit aqbanking und GnuCash funktionieren:&lt;br /&gt;
** https://lists.gnucash.org/pipermail/gnucash-de/2021-August/012195.html&lt;br /&gt;
&lt;br /&gt;
=== EBICS ===&lt;br /&gt;
&lt;br /&gt;
Nur für Großkunden ist der französisch-deutsche Standard für die Bankenkommunikation namens [http://www.ebics.de/ EBICS] geeignet. Die Spezifikation gibt es [http://www.ebics.org/ auch auf einer englischsprachigen Website].&lt;br /&gt;
&lt;br /&gt;
==== EBICS-Software ====&lt;br /&gt;
&lt;br /&gt;
* Der [[Open Source]] [http://sourceforge.net/projects/ebics/ EBICS Client] implementiert EBICS Version 2.4. Er stellt eine Java-API zur Kommunikation mit den Banken via EBICS zur Verfügung.&lt;br /&gt;
** Diese Java-API gibt es auch als [[Maven]]-Artifakt auf [https://github.com/cyrill62/ebics-java github.com].&lt;br /&gt;
* Der [[Open Source]] [[Java]] [https://github.com/uwemaurer/ebics-java-client EBICS Client von Uwe Maurer] ist ein Fork des oben genannten [http://sourceforge.net/projects/ebics/ EBICS Client].&lt;br /&gt;
* Der [[Open Source]] [https://github.com/railslove/epics EBICS-Client epics] basiert auf [[Ruby]]/ [[JRuby]]. Siehe dazu [https://www.railslove.com/stories/ebics-client-for-ruby diesen Blogeintrag des Herstellers].&lt;br /&gt;
&lt;br /&gt;
* Business Logics [http://www.business-logic.de/blbanking.html BL Banking] verfügt auch über eine EBICS-Schnittstelle. &lt;br /&gt;
* Die [http://www.hypovereinsbank.de/portal?view=/de/services/ebanking-en/support-multicash-en.jsp UniCredit MultiCash]-Software für Windows unterstützt ebenfalls EBICS und ist nicht auf die Kommunikation mit der UniCredit beschränkt.&lt;br /&gt;
&lt;br /&gt;
==== Einzelne Banken ====&lt;br /&gt;
&lt;br /&gt;
* [https://www.dzbank.de/content/dzbank_de/de/home/unsere_kunden/firmenkunden/produkte_und_leistungen/transaction_banking/konto/ebanking/EBICS/EBICSTestzugang.html EBICS-Testzugang der DZBank] (normaler EBICS-Zugang bei der DZ wird dazu benötigt).&lt;br /&gt;
* Die EBICS-Zugangsdaten der UniCredit Bank AG (Hypovereinsbank) finden sich [http://www.hypovereinsbank.de/portal?view=/de/services/ebanking-en/overview.jsp# auf hypovereinsbank.de].&lt;br /&gt;
&lt;br /&gt;
==== Weitere Informationen ====&lt;br /&gt;
&lt;br /&gt;
Z.B. von der Hypovereinsbank/Unicredit:&lt;br /&gt;
&lt;br /&gt;
* https://www.hypovereinsbank.de/hvb/unternehmen/digitales-banking/antraege-formulare#parsys_download_center&lt;br /&gt;
* [https://www.hypovereinsbank.de/hvb/unternehmen/konto-zahlungsverkehr/ebanking-loesungen/ferndiagnose-go-to-assist HilfeCenter]&lt;br /&gt;
&lt;br /&gt;
=== PAIN-Nachrichten ===&lt;br /&gt;
&lt;br /&gt;
Im Verhältnis Kunde zu Bank spielen die Nachrichten im PAIN-Format eine Rolle.&lt;br /&gt;
&lt;br /&gt;
So kann beispielsweise mit pain.001.001.03 eine SEPA-Zahlung (SEPA-Überweisung) angestoßen werden.&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://www.hypovereinsbank.de/content/dam/hypovereinsbank/unternehmen/pdf/Downloadcenter/SEPA-Formate-de.pdf kommentierte XML-Datei mit pain.001.001.03-Nachricht]&lt;br /&gt;
&lt;br /&gt;
=== camt-Nachrichten ===&lt;br /&gt;
&lt;br /&gt;
Zur Ablösung von bisherigen Großkunden-Datenformaten wie MT940 sind die sog. camt-Nachrichten normiert.&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://www.hettwer-beratung.de/sepa-spezialwissen/sepa-technische-anforderungen/camt-format-xml-nachrichtentypen/ Überblick über camt-Nachrichtentypen und vertiefende Infos bei Hettwer]&lt;br /&gt;
* [http://www.sepa-tool.de/camt-testdateien.html camt-Testdateien auf sepa-tool.de]&lt;br /&gt;
* [http://www.ebics.de/spezifikation/dfue-abkommen-anlage-3-formatstandards/ Spezifikation der Formate seitens der Deutschen Kreditwirtschaft (DK)]&lt;br /&gt;
&lt;br /&gt;
=== PSD2-API ===&lt;br /&gt;
&lt;br /&gt;
Die Banken müssen Drittanbietern nach Zustimmung der Kunden Zugriff auf Kontoinformationen nach Maßgabe der 2. Zahlungsverkehrsrichtlinie (Payment Service Directive 2 - PSD2) geben und Zahlungsvorgänge über eine API auslösen lassen.&lt;br /&gt;
&lt;br /&gt;
==== Registrierung bei der Bafin ====&lt;br /&gt;
Genutzt werden dürfen solche APIs aber nur von der Finanzaufsicht zugelassene Drittanbieter.&amp;lt;ref&amp;gt;Vgl. https://www.heise.de/newsticker/meldung/PSD2-Banken-muessen-Schnittstellen-fuer-Testphase-freigeben-4336579.html&amp;lt;/ref&amp;gt; Siehe dazu &lt;br /&gt;
* [https://www.bafin.de/DE/PublikationenDaten/Datenbanken/ZahlungsinstituteRegister/register_zahlungsinstitute_node.html Info zur Registrierungsdatenbank]&lt;br /&gt;
* [https://portal.mvp.bafin.de/database/ZahlInstInfo/suche.do Datenbank der Bafin] - Nach ZAG-Institute suchen - Filter: Registriertes Zahlungsinstitut&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Weiterführendes zu PSD2-APIs ====&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.openbankingeurope.eu/&lt;br /&gt;
* [https://www.berlin-group.org/psd2-access-to-bank-accounts Standard der Berlin Group]&lt;br /&gt;
* [https://www.dkb.de/info/psd2-api/ PSD2-API-Testumgebung der DKB]&lt;br /&gt;
* [https://paymentandbanking.com/psd2-das-neue-tor-in-die-bank/ älterer Übersichtsartikel]&lt;br /&gt;
* [https://github.com/OpenBankProject/OBP-API/wiki/PSD2-Sandbox PSD2-Sandbox]&lt;br /&gt;
* [https://www.ebicsblog.com/2020/04/open-banking-ebics-versus-api.html Kritisch zu OpenBanking-APIs] im Vergleich zu bestehenden Standards wie [[FinTS]] und [[EBICS]]&lt;br /&gt;
&lt;br /&gt;
=== APIs ===&lt;br /&gt;
&lt;br /&gt;
==== figo ====&lt;br /&gt;
[https://www.figo.io/figo-fur-jeden-service/ figo] bietet seine Banking-API für den In-House-Gebrauch kostenlos an. Es gibt Schnittstellen u.a. zu Java und iOS. Im Java-SDK ist auch eine simple Web-Demo mit OAuth-Zugang enthalten.&lt;br /&gt;
&lt;br /&gt;
== APIs für Wertpapierhandel ==&lt;br /&gt;
&lt;br /&gt;
Früher war die Yahoo Finance-API der Standard für kleine Handelsprogramme / Webseiten. Heutzutage muss man Alternativen suchen, z.B.&lt;br /&gt;
* [https://www.alphavantage.co/ AlphaVantage ] gibt an, die Nutzung der API via API-Key für immer kostenlos zu halten.&lt;br /&gt;
&lt;br /&gt;
Einen Überblick über Wertpapierinformations-APIs gibt&lt;br /&gt;
* https://www.datadriveninvestor.com/2019/02/25/6-alternatives-to-the-yahoo-finance-api/#&lt;br /&gt;
&lt;br /&gt;
== Proprietäre Finanzsoftware ==&lt;br /&gt;
=== Enterprise Resource Planning Software ===&lt;br /&gt;
* Microsoft Dynamics&lt;br /&gt;
* [[SAP S/4HANA Finance]]&lt;br /&gt;
&lt;br /&gt;
-------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Plattformübergreifende Software]]&lt;br /&gt;
[[Category:Finanzen]]&lt;br /&gt;
[[Category:Java]]&lt;br /&gt;
[[Category:DesktopSoftware]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Softwareentwicklung&amp;diff=23173</id>
		<title>Softwareentwicklung</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Softwareentwicklung&amp;diff=23173"/>
		<updated>2026-09-13T11:39:31Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* JavaScript for PostgreSQL */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Aktuelles ==&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [http://www.heise.de/developer heise.de]&lt;br /&gt;
* [http://www.golem.de golem.de]&lt;br /&gt;
* [http://www.heise.de/developer/podcast/ Heise.de - Podcast für Entwickler]&lt;br /&gt;
* [https://open.hpi.de/courses Kurse zu IT des Hasso-Plattner-Instituts]&lt;br /&gt;
&lt;br /&gt;
== Programmiertechniken ==&lt;br /&gt;
&lt;br /&gt;
=== Einführung in die Programmierung ===&lt;br /&gt;
&lt;br /&gt;
==== Programmieren für Kinder ====&lt;br /&gt;
&lt;br /&gt;
Mit &amp;lt;code&amp;gt;scratch&amp;lt;/code&amp;gt;  lassen sich einfache Skripte mit der Maus zusammensetzen.&lt;br /&gt;
&lt;br /&gt;
=== Teamorganisation ===&lt;br /&gt;
&lt;br /&gt;
==== Agile Entwicklung ====&lt;br /&gt;
* [http://kai-beck.de/42-ueberzeugungsmuster 42 Überzeugungsmuster für Agilität in der Softwareentwicklung]&lt;br /&gt;
* [https://www.itemis.com/de/agile/scrum/kompakt/einfuehrung-in-scrum/scrum-prozess Wie läuft Scrum ab?]&lt;br /&gt;
&lt;br /&gt;
==== V-Modell XT ====&lt;br /&gt;
&lt;br /&gt;
Der IT-Beauftragte der Bundesregierung empfiehlt zur Systementwicklung das so genannte &amp;quot;V-Modell XT&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://www.heise.de/developer/artikel/V-Modell-XT-an-Unternehmen-anpassen-Teil-1-227030.html&lt;br /&gt;
* https://www.heise.de/developer/artikel/V-Modell-XT-an-Unternehmen-anpassen-Teil-2-227032.html&lt;br /&gt;
&lt;br /&gt;
=== Design Patterns ===&lt;br /&gt;
 &lt;br /&gt;
* [http://www.mcdonaldland.info/files/designpatterns/designpatternscard.pdf Kurzreferenz für Design Patterns]&lt;br /&gt;
* [http://sourcemaking.com/design-patterns-and-tips 101 Design Patterns &amp;amp; Tips for Developers]&lt;br /&gt;
* [http://www.javacamp.org/designPattern/ Design Patterns für Java]&lt;br /&gt;
* [http://www.patterndepot.com/put/8/JavaPatterns.htm Java Companion Book zu Design Patterns]&lt;br /&gt;
* [http://www.picocontainer.org/patterns.html einige wichtige Patterns in Kurzform]&lt;br /&gt;
&lt;br /&gt;
=== Sicherheit ===&lt;br /&gt;
&lt;br /&gt;
* [[Microsoft]] hat als den Entwicklungszyklus begleitendes Sicherheitssystem ein Konzept namens [http://www.heise.de/developer/Sichere-Softwareentwicklung-nach-dem-Security-by-Design-Prinzip--/artikel/143738 Security by Design].&lt;br /&gt;
&lt;br /&gt;
=== Projektmanagement ===&lt;br /&gt;
&lt;br /&gt;
==== Apache Maven ====&lt;br /&gt;
Zu [http://maven.apache.org/maven-features.html Apache Maven] siehe&lt;br /&gt;
* [http://books.sonatype.com/maven-book/reference/public-book.html Maven: The Definitive Guide]&lt;br /&gt;
* [http://wiki.netbeans.org/MavenBestPractices Netbeans Maven Best Practices]&lt;br /&gt;
* [http://famvdploeg.com/blog/?p=39 Einzelne JARs zum lokalen Maven-Repository hinzufügen]&lt;br /&gt;
* [http://maven.apache.org/plugins/maven-assembly-plugin/usage.html Ausführbare JARs (mit MANIFEST.MF) erzeugen] (nutzt neueres maven-assembly-plugin) ([http://www.blackslash.de/archives/26-Maven-JAR-ausfuehrbar-machen;-Hauptklasse-dem-Manifest-hinzufuegen.html Alternative]; nutzt älteres maven-jar-plugin)&lt;br /&gt;
* Maven kann frei konfiguriert werden, allerdings ist es grundsätzlich sinnvoll, sich an [https://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html die Standard-Verzeichnisstruktur eines Maven-Projekts] zu halten. Damit kommen auch fremde Entwickler leichter zurecht.&lt;br /&gt;
** Diese Struktur kann zum Einsatz [https://www.petrikainulainen.net/programming/maven/integration-testing-with-maven/ von Integration Tests modifiziert] werden. Siehe auch [https://www.linkedin.com/pulse/example-how-run-integration-test-maven-linda-wu Tutorial zu Integrationstest mit Maven].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Maven Quick Start =====&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
  mvn archetype:generate maven-archetype-quickstart&lt;br /&gt;
und Angabe von frei wählbarem groupId, artifactId und version kann ein neues leeres Maven-Java-Projekt im aktuellen Verzeichnis erstellt werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Maven und Webpack =====&lt;br /&gt;
&lt;br /&gt;
Mit dem [https://github.com/eirslett/frontend-maven-plugin frontend-maven-plugin] kann Maven ein projekt-spezifisches [[node.js]] nutzen. Damit kann z.B. [[Webpack]] genutzt werden, um [[JavaScript]]-Dateien zu bündeln.&lt;br /&gt;
&lt;br /&gt;
===== Main Class in Maven JAR =====&lt;br /&gt;
&lt;br /&gt;
Um eine Main Class z.B. in einem mit Netbeans erzeugten Maven-Projekt festzulegen, kann man Folgendes&amp;lt;ref&amp;gt;Vgl. http://www.ibm.com/developerworks/library/j-5things13/&amp;lt;/ref&amp;gt; zur pom.xml hinzufügen:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;build&amp;gt;&lt;br /&gt;
      &amp;lt;plugins&amp;gt;&lt;br /&gt;
         &amp;lt;plugin&amp;gt;&lt;br /&gt;
            &amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;&lt;br /&gt;
            &amp;lt;artifactId&amp;gt;maven-jar-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
            &amp;lt;version&amp;gt;2.3.2&amp;lt;/version&amp;gt;&lt;br /&gt;
            &amp;lt;configuration&amp;gt;&lt;br /&gt;
                &amp;lt;archive&amp;gt;&lt;br /&gt;
                    &amp;lt;manifest&amp;gt;&lt;br /&gt;
                        &amp;lt;addClasspath&amp;gt;true&amp;lt;/addClasspath&amp;gt;&lt;br /&gt;
                        &amp;lt;classpathPrefix&amp;gt;lib/&amp;lt;/classpathPrefix&amp;gt;&lt;br /&gt;
                        &amp;lt;mainClass&amp;gt;MYPACKAGE.MYMAINCLASS&amp;lt;/mainClass&amp;gt;&lt;br /&gt;
                    &amp;lt;/manifest&amp;gt;&lt;br /&gt;
                &amp;lt;/archive&amp;gt;&lt;br /&gt;
            &amp;lt;/configuration&amp;gt;&lt;br /&gt;
        &amp;lt;/plugin&amp;gt;&lt;br /&gt;
        &amp;lt;plugin&amp;gt;&lt;br /&gt;
          &amp;lt;groupId&amp;gt;org.apache.maven.plugins&amp;lt;/groupId&amp;gt;&lt;br /&gt;
          &amp;lt;artifactId&amp;gt;maven-dependency-plugin&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
          &amp;lt;version&amp;gt;1.0&amp;lt;/version&amp;gt;&lt;br /&gt;
          &amp;lt;executions&amp;gt;&lt;br /&gt;
              &amp;lt;execution&amp;gt;&lt;br /&gt;
                  &amp;lt;id&amp;gt;copy&amp;lt;/id&amp;gt;&lt;br /&gt;
                  &amp;lt;phase&amp;gt;install&amp;lt;/phase&amp;gt;&lt;br /&gt;
                  &amp;lt;goals&amp;gt;&lt;br /&gt;
                      &amp;lt;goal&amp;gt;copy-dependencies&amp;lt;/goal&amp;gt;&lt;br /&gt;
                  &amp;lt;/goals&amp;gt;&lt;br /&gt;
                  &amp;lt;configuration&amp;gt;&lt;br /&gt;
                      &amp;lt;outputDirectory&amp;gt;&lt;br /&gt;
                        ${project.build.directory}/lib&lt;br /&gt;
                      &amp;lt;/outputDirectory&amp;gt;&lt;br /&gt;
                  &amp;lt;/configuration&amp;gt;&lt;br /&gt;
              &amp;lt;/execution&amp;gt;&lt;br /&gt;
          &amp;lt;/executions&amp;gt;&lt;br /&gt;
        &amp;lt;/plugin&amp;gt;&lt;br /&gt;
      &amp;lt;/plugins&amp;gt;&lt;br /&gt;
    &amp;lt;/build&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Außerdem muss man als dependencies zum Projekt die Plugins maven-jar-plugin und maven-dependency-plugin hinzufügen. &lt;br /&gt;
Die erzeugte JAR findet sich im Ordner &amp;lt;code&amp;gt;target/&amp;lt;/code&amp;gt; des Projekts, nachdem man mit Rechtsklick auf das Projekt und &amp;quot;Build with Dependencies&amp;quot; den Bauprozess gestartet hat.&lt;br /&gt;
&lt;br /&gt;
===== JAR mit allen Abhängigkeiten =====&lt;br /&gt;
&lt;br /&gt;
Um ein einziges JAR mit allen Abhängigkeiten (fat JAR oder uber-jar) zu erzeugen, kann man das maven-assembly-plugin, das onejar-maven-plugin oder wohl auch das maven-shade-plugin nutzen. &lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven&lt;br /&gt;
* http://tutorials.jenkov.com/maven/maven-build-fat-jar.html&lt;br /&gt;
&lt;br /&gt;
==== Projektmanagement allgemein ====&lt;br /&gt;
Softwareprojekte sind auch ganz herkömmliche Projekte. Zum Projektmanagement allgemein siehe [http://www.olev.de/p/projekt.htm Lexikoneintrag mit weiteren Nachweisen]. Für das Projektmanagement gibt es verschiedenste Projektmanagementsoftware. &lt;br /&gt;
Außerdem gibt es noch Online-Sites, die Projektmanagement anbieten. Z.B.:&lt;br /&gt;
* [https://quassum.com/overview Quassum] (für 5 Benutzer / 5 Projekte kostenlos)&lt;br /&gt;
* [https://trello.com/ Trello] (kostenlos, Extrafunktionen jedoch kostenpflichtig)&lt;br /&gt;
* [http://www.6wunderkinder.com/wunderlist Wunderlist] (kostenlos, derzeit nur etwas erweiterte Todo-List)&lt;br /&gt;
&lt;br /&gt;
=== Versionsmanagement ===&lt;br /&gt;
&lt;br /&gt;
* Zu Subversion siehe [[Versionsmanagement-Tipps]]&lt;br /&gt;
&lt;br /&gt;
=== Test ===&lt;br /&gt;
&lt;br /&gt;
Das Testen von Sofwareprodukten ist ein wichtiger Bestandteil der Entwicklung. &lt;br /&gt;
&lt;br /&gt;
Neben der manuellen Kontrolle, für die es auch Testmethoden und -tools gibt, sollte die Automatisierung von Tests eine wichtige Rolle einnehmen. Letztere sind zwar beim ersten Mal meist aufwändiger, rentieren sich aber über die Laufzeit eines Projekts, weil sie Rückschritte bei der Entwicklung verhindern können, da sie bei jeder Änderung ohne großen Aufwand erneut durchlaufen werden können.&lt;br /&gt;
&lt;br /&gt;
Zu unterscheiden sind&lt;br /&gt;
* Unit-Tests (dabei werden einzelne Funktionen getestet)&lt;br /&gt;
* Integrations-Tests (dabei wird das Zusammenspiel vieler Komponenten, teilweise auch auf verschiedenen Maschinen getestet)&lt;br /&gt;
* Oberflächen-Tests (dabei wird die GUI getestet).&lt;br /&gt;
&lt;br /&gt;
Für Oberflächentests gibt es verschiedenste Tools, z.B.&lt;br /&gt;
* [[Selenium]] für den Test von Webanwendungen&lt;br /&gt;
* [https://de.wikipedia.org/wiki/Tosca_%28Software%29 Tosca], eine proprietäre Testsuite u.a. zum Test von [[Java]]-Desktopanwendungen z.B. mit [[Swing]]&lt;br /&gt;
* [http://www.eclipse.org/jubula/ Eclipse Jubula] kann u.a. [[Java Swing]]-Anwendungen testen.&lt;br /&gt;
* [https://www.qfs.de/de/index.html QF-Test], eine proprietäre Testsuite u.a. für [[Java]]-Desktopanwendungen z.B. mit [[Swing]]&lt;br /&gt;
&lt;br /&gt;
=== Low Code ===&lt;br /&gt;
&lt;br /&gt;
Low Code oder [https://de.wikipedia.org/wiki/No-Code-Plattform No Code] sind Entwicklungsumgebungen, die mit verhältnismäßig mächtigen Elementen arbeiten, um rasch Anwendungen entwickeln zu können.&lt;br /&gt;
&lt;br /&gt;
Beispiele:&lt;br /&gt;
&lt;br /&gt;
* [https://www.airtable.com/pricing Airtable]&lt;br /&gt;
* [https://www.make.com/ Make], früher als Integromat bezeichnet&lt;br /&gt;
&lt;br /&gt;
== Reguläre Ausdrücke ==&lt;br /&gt;
&lt;br /&gt;
* [http://regexlib.com/CheatSheet.aspx Übersicht über &amp;quot;regular expressions (regex)&amp;quot;]&lt;br /&gt;
* [http://openoffice.blogs.com/openoffice/2009/06/using-regular-expressions-in-openoffice-calc-filters-phrases-like-contains-rather-than-equals-less-t.html Reguläre Ausdrücke für Filter] in [[OpenOffice]] Calc.&lt;br /&gt;
&lt;br /&gt;
== Künstliche Intelligenz ==&lt;br /&gt;
&lt;br /&gt;
Siehe [[Künstliche Intelligenz]]&lt;br /&gt;
&lt;br /&gt;
== Datenbanken ==&lt;br /&gt;
&lt;br /&gt;
=== Datenbankdesign ===&lt;br /&gt;
&lt;br /&gt;
Mit der [http://www.linux-community.de/Internal/Artikel/Print-Artikel/LinuxUser/2010/03/Tabellendschungel-lichten MySQL Workbench lassen sich Datenbanken designen].&lt;br /&gt;
&lt;br /&gt;
=== SQL ===&lt;br /&gt;
==== SQL Syntax ====&lt;br /&gt;
&lt;br /&gt;
* Ein übersichtliches Verzeichnis der SQL-Befehle als Tutorial findet sich bei [http://www.w3schools.com/sql/default.asp w3schools.com].&lt;br /&gt;
* Auch die [http://de.wikipedia.org/wiki/SQL Wikipedia] gibt einen guten Überblick über die SQL-Standard-Befehle.&lt;br /&gt;
* SQL für [http://little-idiot.de/mysql/mysql-117.html little Idiots]&lt;br /&gt;
* [http://db.apache.org/derby/docs/10.4/ref/ Apache Derby SQL reference]&lt;br /&gt;
* [http://www.tgunkel.de/it/software/doc/sql_database.de SQL-Tipps]&lt;br /&gt;
&lt;br /&gt;
==== Indexbildung ====&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://use-the-index-luke.com/de Optimierung von SQL-Indizes]&lt;br /&gt;
&lt;br /&gt;
==== Pivotieren ====&lt;br /&gt;
&lt;br /&gt;
Zeilenwerte in Spalten darstellen ist ein häufigeres Problem. Dies kann bei Aggregationen dadurch gelöst werden, dass man die &amp;lt;code&amp;gt;FILTER&amp;lt;/code&amp;gt;-Klausel verwendet:&amp;lt;ref&amp;gt;Vgl. https://modern-sql.com/de/anwendung/pivot&amp;lt;/ref&amp;gt;&lt;br /&gt;
  SELECT SUM(Betrag) AS Jahressumme, SUM(Betrag) FILTER (WHERE month=&amp;quot;Januar&amp;quot;) AS Januarsumme, SUM(Betrag) FILTER (WHERE month=&amp;quot;Februar&amp;quot;) AS Februarsumme,...&lt;br /&gt;
    FROM daten&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Doppelte Daten entfernen ====&lt;br /&gt;
Siehe&lt;br /&gt;
* http://stackoverflow.com/questions/18932/how-can-i-remove-duplicate-rows&lt;br /&gt;
&lt;br /&gt;
==== MySQL ====&lt;br /&gt;
===== Dokumentation =====&lt;br /&gt;
* [http://dev.mysql.com/doc/ MySQL-Dokumentation]&lt;br /&gt;
* [http://www.oreilly.de/german/freebooks/einmysql2ger/ deutsches OpenBook]&lt;br /&gt;
&lt;br /&gt;
===== MySQL-Nutzer =====&lt;br /&gt;
* [http://dev.mysql.com/doc/refman/5.0/en/post-installation.html Setzen von Passwörtern]&lt;br /&gt;
&lt;br /&gt;
===== Verwaltung mit phpMyAdmin =====&lt;br /&gt;
* [http://forum.chip.de/php-mysql-etc/rechte-phpmyadmin-360637.html Zugriff von phpMyAdmin (Setzen der Zugriffsrechte)]: Die Rechte in der Datei &amp;lt;code&amp;gt;/etc/dbconfig-common/phpmyadmin.conf&amp;lt;/code&amp;gt; werden mit folgendem Befehl geändert und umgesetzt:&lt;br /&gt;
  sudo dpkg-reconfigure phpmyadmin&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CSV in MySQL importieren =====&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* http://code.dedu.ch/2011/07/csv-file-direkt-in-mysql-importieren/&lt;br /&gt;
&lt;br /&gt;
===== CSV im Browser mit SQL bearbeiten =====&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://datakit.page/&lt;br /&gt;
* [[DuckDB]]&lt;br /&gt;
&lt;br /&gt;
==== HSQLDB ====&lt;br /&gt;
&lt;br /&gt;
HSQLDB ist eine kleine Java-Datenbank, die auch In-Memory-Tabellen bietet. Zusammen mit Hibernate kann sie auch als Persistenzschicht für POJOs genutzt werden.&lt;br /&gt;
&lt;br /&gt;
==== AlaSQL ====&lt;br /&gt;
[https://github.com/AlaSQL/alasql/wiki/Sql AlaSQL] ist eine SQL-Abfragesprache für JSON-Daten. AlaSQL kann auch Excel-Tabellen lesen.&lt;br /&gt;
&lt;br /&gt;
=== NoSQL ===&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
&lt;br /&gt;
* [[SurrealDB]]&lt;br /&gt;
* [https://github.com/nocodb/nocodb NocoDB]&lt;br /&gt;
* [https://www.openxava.org/ate/matrify-alternative OpenXava] erlaubt mit einfachen [[Java]]-Klassen recht schnell Web-Datenbankanwendungen zu erstellen.&lt;br /&gt;
* [https://www.edgedb.com/docs/intro/quickstart#ref-quickstart EdgeDB]&lt;br /&gt;
* LowDB - kann nicht als wirkliche Datenbank bezeichnet werden, aber möglicherweise sinnvoll für Persistenz von wenigen Daten.&lt;br /&gt;
&lt;br /&gt;
==== Convex ====&lt;br /&gt;
&lt;br /&gt;
[https://www.convex.dev/ Convex]&lt;br /&gt;
&lt;br /&gt;
* TypeScript im Server und im Client&lt;br /&gt;
* Authentication&lt;br /&gt;
* Authorization (sehr flexibel)&lt;br /&gt;
* Nutzt generierten Code im Client - Projektstruktur wird von Convex grundsätzlich vorgegeben.&lt;br /&gt;
* hat derzeit (Dezember 2025) [https://stack.convex.dev/object-sync-engine keine vollständige Offline-Funktionalität]. Aber angeblich schaut sich das Convex-Team das näher an.&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
Siehe [[CouchDB]]&lt;br /&gt;
&lt;br /&gt;
==== Echtzeit-Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[AceBase]]&lt;br /&gt;
* https://rethinkdb.com/&lt;br /&gt;
* Die in Google Firebase integrierte Echtzeitdatenbank&lt;br /&gt;
** https://levelup.gitconnected.com/todo-app-using-firebase-react-typescript-ea0a34bd417d&lt;br /&gt;
* [[SurrealDB]]&lt;br /&gt;
* [[Supabase]]&lt;br /&gt;
&lt;br /&gt;
=== Datenbanken als Service ===&lt;br /&gt;
* [https://www.elephantsql.com/plans.html ElephantSQL] - Postgres as a service&lt;br /&gt;
* Google [[Firebase]]&lt;br /&gt;
* IBM Cloudant basierend auf [[CouchDB]]&lt;br /&gt;
* [https://nhost.io/pricing Nhost] u.a. mit [[PostgreSQL]]&lt;br /&gt;
* [https://www.back4app.com/ Back4App]&lt;br /&gt;
** https://parseplatform.org/&lt;br /&gt;
* [https://devcenter.kinvey.com/rest/guides/core-overview Kinvey]&lt;br /&gt;
* [https://kuzzle.io/pricing/ Kuzzle]&lt;br /&gt;
&lt;br /&gt;
=== Datenbanken im Browser ===&lt;br /&gt;
&lt;br /&gt;
* SQLite&lt;br /&gt;
* [[pouchdb]], basiert im Browser auf IndexedDB, läuft aber auch in [[Node.js]]&lt;br /&gt;
* [[IndexedDB]]&lt;br /&gt;
** kann in [[Node.js]] z.B. zum Testen imitiert werden, siehe [https://www.npmjs.com/package/fake-indexeddb fake-indexeddb]&lt;br /&gt;
* [https://github.com/julienetie/db64 db64] ist ein kleiner Wrapper um [[IndexedDB]]&lt;br /&gt;
* [https://github.com/jakearchibald/idb idb] ist wohl der häufigst genutzte Wrapper [[IndexedDB]]&lt;br /&gt;
* [https://dexie.org/ Dexie.js], unterstützt auch [[TypeScript]]&lt;br /&gt;
* [https://nanosql.io/ NanoSQL]&lt;br /&gt;
* [https://www.npmjs.com/package/localforage LocalForage]&lt;br /&gt;
* [https://github.com/google/lovefield lovefield], SQL-angelehnt&lt;br /&gt;
&lt;br /&gt;
* [https://www.npmjs.com/package/idb idb] dünne Hülle um IndexedDB&lt;br /&gt;
* [https://www.npmjs.com/package/idb-keyval idb-keyval], einfacher Schlüssel-Wert-Speicher, basierend auf IndexedDB&lt;br /&gt;
&lt;br /&gt;
=== Datenbank-Frontends ===&lt;br /&gt;
&lt;br /&gt;
* [http://kexi-project.org/ kexi] tritt als Alternative für MS Access oder FileMaker an.&lt;br /&gt;
* [https://github.com/giowck/symphytum Symphytum], intuitives Datenbank-Frontend (und -Backend), noch in der Entwicklung, bisher keine relationale Daten (Stand: Okt. 2020)&lt;br /&gt;
* [[LibreOffice]] Base&lt;br /&gt;
&lt;br /&gt;
=== Datenbank-Frontend in der Cloud ===&lt;br /&gt;
&lt;br /&gt;
* https://restdb.io/features/&lt;br /&gt;
&lt;br /&gt;
=== Append-only Datenbanken ===&lt;br /&gt;
&lt;br /&gt;
Unveränderliche Datenbanken, also Datenbanken, die die gesamte Historie bis zum Erreichen des aktuellen Status behalten, (Insert-only- bzw. Append-only-Datenbanken) gibt es in unterschiedlicher Ausprägung.&lt;br /&gt;
&lt;br /&gt;
Z.B.&lt;br /&gt;
* Oracle Immutable Tables (oder Blockchain-Tables)&lt;br /&gt;
* temporale Tabellen mit &amp;quot;as of &amp;lt;timestamp&amp;gt;&amp;quot;-Operator&lt;br /&gt;
** [https://mariadb.com/kb/en/system-versioned-tables/ MariaDB]&lt;br /&gt;
* Datenbanken mit Versionskontrolle &lt;br /&gt;
** [https://www.dolthub.com/ Dolt]&lt;br /&gt;
** [https://terminusdb.com/ TerminusDB]&lt;br /&gt;
* [https://immudb.io/ ImmuDb]&lt;br /&gt;
* [[BigchainDB]] - blockchain-basiert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://www.dolthub.com/blog/2022-03-21-immutable-database/&lt;br /&gt;
* https://en.wikipedia.org/wiki/Merkle_tree&lt;br /&gt;
&lt;br /&gt;
== Webbrowser steuern ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.heise.de/ct/inhalt/2010/04/6/ Das Heft ct 4/2010 hat einen Praxisteil zur Erstellung von Webrobotern]&lt;br /&gt;
* Siehe auch [[Java-Tipps|JavaXPConn]].&lt;br /&gt;
* &#039;&#039;&#039;Mechanize&#039;&#039;&#039; scheint in verschiedenen Skript-Sprachen ([[Perl]], [[Ruby]]) die Möglichkeit zu geben, verschiedene Browser ([[Firefox]],[[Safari]]) fernzusteuern.&lt;br /&gt;
*  [http://seleniumhq.org/projects/remote-control/ Selenium RC] ([http://seleniumhq.org/docs/05_selenium_rc.html Dokumentation]) ermöglicht, z.B. von Java) verschiedene Browser zu steuern. Für [[Firefox]] lässt es sich auch [http://girliemangalo.wordpress.com/2009/02/05/creating-firefox-profile-for-your-selenium-rc-tests/ mit einem bestimmten Browserprofil (z.B. bestimmte Developer-Addons] wie FireBug nutzen.&lt;br /&gt;
** Wenn man Selenium 2 (WebDriver) nutzt, muss man [http://stackoverflow.com/questions/5134953/java-classdefnotfounderror etliche zusätzliche Bibliotheken] in ein [[Java]]-Programm einbinden.&lt;br /&gt;
* http://stackoverflow.com/questions/1248598/greasemonkey-like-firefox-plugin-for-automatic-browsing&lt;br /&gt;
* [http://watir.com/ Watir] erlaubt von Ruby aus, verschiedene Webbrowser zu steuern.&lt;br /&gt;
&lt;br /&gt;
== Java ==&lt;br /&gt;
* [[Java-Tipps]] (J2ME Programmierung, Synchronization, SyncML, vCard/vCalendar, Bluetooth)&lt;br /&gt;
&lt;br /&gt;
== Python ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.python.org Python-Homepage]&lt;br /&gt;
* [https://realpython.com/python-development-visual-studio-code/ Einrichten von Visual Studio Code] als Python-IDE&lt;br /&gt;
&lt;br /&gt;
=== Python Package Manager PIP ===&lt;br /&gt;
&lt;br /&gt;
PIP ist der Standard-Packagemanager für Python. Er lässt sich folgendermaßen auf [[Ubuntu]]/[[Debian]] installieren:&lt;br /&gt;
&lt;br /&gt;
  sudo aptitude install python3-pip&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Wenn er durcheinander kommt und z.B. folgende Fehlermeldung zeigt:&lt;br /&gt;
  PermissionError: [Errno 13] Permission denied: &#039;/usr/local/lib/python3.8/dist-packages/python_dateutil-2.8.1.dist-info&#039;&lt;br /&gt;
&lt;br /&gt;
dann kann das an fehlenden Berechtigungen liegen. Das kann man beheben. Um den Benutzer USER der Gruppe &amp;lt;code&amp;gt;staff&amp;lt;/code&amp;gt; hinzuzufügen, kann man folgendes Kommando nutzen:&lt;br /&gt;
&lt;br /&gt;
  sudo adduser USER staff&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warnung: [https://wiki.debian.org/SystemGroups#Groups_without_an_associated_user staff lässt recht weitgehende Veränderungen am System zu]. Bitte nur nutzen, wenn man wirklich versteht, was man tut!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== XML ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.zvon.org/xxl/XSLTutorial/Output_ger/contents.html XSLT-Tutorial] auf zvon.org&lt;br /&gt;
&lt;br /&gt;
== CSS ==&lt;br /&gt;
&lt;br /&gt;
* Siehe [http://reference.sitepoint.com/css SitePoint CSS-Referenz]&lt;br /&gt;
* Siehe [[HTML#Lightbox]]&lt;br /&gt;
* Siehe [http://www.webreference.com/authoring/css_tools/ Artikel über CSS-Tools]&lt;br /&gt;
&lt;br /&gt;
* Zueinander passende Farben findet man bei &lt;br /&gt;
** [http://www.colorexplorer.com/ colorexplorer.com]&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* http://www.html-seminar.de/design_per_css_-_float.htm&lt;br /&gt;
&lt;br /&gt;
== HTML ==&lt;br /&gt;
 &lt;br /&gt;
=== Allgemeines ===&lt;br /&gt;
* Siehe die [http://www.teialehrbuch.de/AGOL/10664-HTML-Referenz.html kurze HTML-Referenz] und [http://de.selfhtml.org/ selfthml] von Stefan Münz.&lt;br /&gt;
* [http://dev.opera.com/articles/view/1-introduction-to-the-web-standards-cur/#toc WebStandards-Einführung von Opera]&lt;br /&gt;
* [http://reference.sitepoint.com/html SitePoint HTML-Reference]&lt;br /&gt;
&lt;br /&gt;
=== Sonderzeichen ===&lt;br /&gt;
&lt;br /&gt;
In HTML-Code kann man viele Sonderzeichen einbetten.&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.mediaevent.de/tutorial/sonderzeichen.html&lt;br /&gt;
&lt;br /&gt;
=== Favicon ===&lt;br /&gt;
&lt;br /&gt;
* Ein kleines Bild, das auf den Reitern der Webbrowser dargestellt wird, nennt man &#039;&#039;&#039;Favicon&#039;&#039;&#039;. [http://de.selfhtml.org/navigation/faq.htm#favoriten_icon selfhtml] oder [[wikipedia:Favicon | wikipedia]] zeigen, wie man ein solches Logo auf seine HTML-Seite einbindet.&lt;br /&gt;
&lt;br /&gt;
=== HTML5 ===&lt;br /&gt;
&lt;br /&gt;
Mit HTML5 lassen sich auch Offline-Apps erstellen, z.B. [http://sixrevisions.com/web-development/html5-iphone-app/ für das iPhone].&lt;br /&gt;
Der [http://www.quirksmode.org/blog/archives/2010/03/html5_apps.html Vorzug von HTML5-Apps] gegenüber [[Android]]- bzw. [[iPhone]]-Apps ist die relative [[Plattformunabhängigkeit]].&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [http://www.selfhtml5.org/ SelfHtml5 - Blog rund um HTML5]&lt;br /&gt;
&lt;br /&gt;
Siehe Beispiel-Apps bei&lt;br /&gt;
* [http://miniapps.co.uk/ miniapps.co.uk]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== HTML5 Canvas ====&lt;br /&gt;
&lt;br /&gt;
Siehe u.a.&lt;br /&gt;
* [http://www.htmlgoodies.com/html5/client/the-complete-guide-to-building-html5-games-with-canvas-svg.html#fbid=1sCuPBXjCgS Anleitung zum Bau von HTML5-Spielen auf Basis des Canvas-&lt;br /&gt;
Elements]&lt;br /&gt;
&lt;br /&gt;
==== HTML5 Web Share API und Web Share Target API ====&lt;br /&gt;
&lt;br /&gt;
Auf Mobil-Browsern wird die Web Share API, mit der Webapplikationen Inhalte mit nativen Apps &amp;quot;teilen&amp;quot; können, bereits weitverbreitet.&lt;br /&gt;
&lt;br /&gt;
Eher suchen muss man noch die [https://w3c.github.io/web-share-target/level-2/ Web Share Target API], mit der Webapplikationen im nativen &amp;quot;Teilen&amp;quot;-Dialog der Smartphones bzw. im &amp;quot;Öffnen mit ...&amp;quot;-Dialog der Desktops erscheinen können. In [[Chrome]] scheint es sich noch hinter einer Einstellung zu verstecken. Zu den Einstellungen kommt man mit chrome://flags.&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://mconverter.eu/blog/web_share_target_api/&lt;br /&gt;
* https://web.dev/web-share-target/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== HTML5 Frameworks ====&lt;br /&gt;
===== React =====&lt;br /&gt;
Siehe [[React]]&lt;br /&gt;
===== Ember.js =====&lt;br /&gt;
&lt;br /&gt;
Ember.js ist wie [[AngularJS]] ein umfassendes Javascript-Framework. &lt;br /&gt;
&lt;br /&gt;
Neben der [https://guides.emberjs.com offiziellen guten Dokumentation] gibt es auch verschiedene Bücher, z.B.&lt;br /&gt;
* [https://leanpub.com/ember-cli-101/read EmberCli 101], online kostenlos zu lesen&lt;br /&gt;
* [http://www.jeffreybiles.com/build-pacman Build Pacman mit Ember.js]&lt;br /&gt;
* [https://www.netguru.co/blog/free-ember-run-loop-guide kostenloses Ebook zur Ember Run Loop]&lt;br /&gt;
&lt;br /&gt;
* [http://emberwatch.com/books.html Übersicht über Ember-Bücher bei Emberwatch.com]&lt;br /&gt;
&lt;br /&gt;
===== AngularJS =====&lt;br /&gt;
====== Allgemeines zu AngularJs ======&lt;br /&gt;
Siehe&lt;br /&gt;
* [http://www.ng-newsletter.com/posts/how-to-learn-angular.html How to learn Angular - Post]&lt;br /&gt;
&lt;br /&gt;
====== AngularJS 2.0 ====== &lt;br /&gt;
&lt;br /&gt;
Die Version 2.0 kommt einer Neuprogrammierung des Frameworks, allerdings mit einem Upgrade-Pfad, gleich. Die Version 2.0 verzichtet dabei auf Browserunterstützung des Internet Explorers vor Version 10. Favorisierte Programmiersprache des von [[Google]] gestützten Frameworks ist die als [[Open Source]] veröffentlichte Programmiersprache [[TypeScript]].&lt;br /&gt;
&lt;br /&gt;
Einen ersten Einblick liefert [http://www.heise.de/developer/artikel/Vorschau-auf-AngularJS-2-2595545.html?artikelseite=4 ein Artikel auf heise Developper].&lt;br /&gt;
&lt;br /&gt;
====== AngularJS and Google Visualization API ======&lt;br /&gt;
&lt;br /&gt;
[http://gavindraper.com/2013/07/30/google-charts-in-angularjs/ AngularJS und Google Visualization API arbeiten etwas holprig zusammen:] AngularJS darf erst arbeiten, wenn die Google Visualization API geladen ist.&lt;br /&gt;
&lt;br /&gt;
Daher darf das &amp;lt;code&amp;gt;ng-app&amp;lt;/code&amp;gt;-Attribut nicht im HTML-Quellcode stehen, sondern die Zuordnung zur AngularJS-App muss dynamisch nach dem Laden der Visualisierungs-API geladen werden&amp;lt;ref&amp;gt;http://gavindraper.com/2013/07/30/google-charts-in-angularjs&amp;lt;/ref&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  google.setOnLoadCallback(function () {  &lt;br /&gt;
      angular.bootstrap(document.body, [&#039;my-app&#039;]);&lt;br /&gt;
  });&lt;br /&gt;
  google.load(&#039;visualization&#039;, &#039;1&#039;, {packages: [&#039;corechart&#039;]});&lt;br /&gt;
&lt;br /&gt;
=== HTML für Smartphones ===&lt;br /&gt;
&lt;br /&gt;
Die Entwicklung für [[Smartphone]]s ist aufgrund der Vielzahl von Systemen nicht gerade einfach. Auf Basis von [[HTML5]] versuchen verschiedene Frameworks dem Webentwickler zu erlauben, beinahe native Apps für [[Android]],[[iOS]]... zu entwickeln, ohne allzuviel auf die Bedürfnisse der Plattformen eingehen zu müssen:&lt;br /&gt;
* [http://phonegap.com/ PhoneGap], künftig &amp;quot;Apache CallBack&amp;quot; ist ein [[Open Source]]-Framework für sieben mobile Plattformen. Dieses Framework versucht HTML-JavaScript-Code die Features der Smartphones zur Verfügung zu stellen, für die normalerweise Nativer Code erforderlich ist.&lt;br /&gt;
* [http://dojotoolkit.org/documentation/ DoJo Mobile]&lt;br /&gt;
* [http://xuijs.com/docs/basics XUI]&lt;br /&gt;
* jQuery Mobile&lt;br /&gt;
* Sencha Touch&lt;br /&gt;
* [http://joapp.com/docs/#Quick%20Start Jo HTML5 Mobile App], [[Open Source]]-Framework&lt;br /&gt;
&lt;br /&gt;
=== Lightbox ===&lt;br /&gt;
&lt;br /&gt;
Um eine HTML-Seite kurz in den Schatten zu stellen, um z.B. dem Benutzer einen kurzen Dialog (Login) zu zeigen, nutzt man eine sog. Lightbox.&lt;br /&gt;
* [http://www.emanueleferonato.com/2007/08/22/create-a-lightbox-effect-only-with-css-no-javascript-needed/ leichtgewichtige Lightbox] ([http://www.webreference.com/programming/javascript/CSS-Only-Lightbox/ weitere Erläuterung])&lt;br /&gt;
&lt;br /&gt;
=== Treemap ===&lt;br /&gt;
&lt;br /&gt;
Treemaps stellen hierarchische Datenstrukturen in verschieden großen Flächen, z.B. Rechtecken, dar.&lt;br /&gt;
&lt;br /&gt;
Für HTML/Javascript/CSS gibt es dazu verschiedene frei nutzbare Hilfsmittel&lt;br /&gt;
&lt;br /&gt;
* jQWidget [https://www.jqwidgets.com/jquery-widgets-documentation/documentation/jqxtreemap/jquery-treemap-getting-started.htm jqxTreemap]&lt;br /&gt;
* [http://jstreemap.com/ JsTreemap.com] lässt sich frei verwenden. Es erzeugt per Javascript ein Canvas-Element &amp;lt;small&amp;gt;(also nicht für jeden Knoten ein HTML-Element)&amp;lt;/small&amp;gt;, in das es den gesamten Treemap einzeichnet. Es kann weitgehend auf Benutzerwünsche angepasst werden.&lt;br /&gt;
* das Treemap-Modul von D3.js, das z.B. auf [http://bost.ocks.org/mike/treemap/ diesem Blogartikel] genutzt wird&lt;br /&gt;
* [https://github.com/imranghory/treemap-squared/ treemap-squared] legt den Fokus auf schönes Aussehen, allerdings scheint darunter die Interaktivität zu leiden.&lt;br /&gt;
* Google Visualization (nicht offline nutzbar)&lt;br /&gt;
* [https://philogb.github.io/jit/static/v20/Jit/Examples/Treemap/example1.code.html Treemap-Modul] des [http://philogb.github.io/jit/ Javascript InfoViz Toolkit]&lt;br /&gt;
** [https://philogb.github.io/jit/static/v20/Docs/files/Loader/Loader-js.html#Loader.loadJSON Beschreibung des JSON-Datenformats für Treemap]&lt;br /&gt;
&lt;br /&gt;
=== HTML5 Drag and Drop ===&lt;br /&gt;
&lt;br /&gt;
Mit HTML5 ist es u.a. möglich, Elemente einer Webseite aus dieser heraus- und in eine andere geöffnete Webseite mit der Maus zu ziehen. Die entsprechende API [http://thecssninja.com/talks/dnd_and_friends/ war ursprünglich im Internet Explorer implementiert] und wurde dann standardisiert.&lt;br /&gt;
&lt;br /&gt;
Neben dem Attribut &amp;lt;code&amp;gt;draggable=true&amp;lt;/code&amp;gt; muss [http://thecssninja.com/talks/dnd_and_friends/ für WebKit-Browser noch mit etwas CSS nachgeholfen werden]. Firefox scheint auch entsprechende [[JavaScript]]- drag- und -drop-Handler zu benötigen.&lt;br /&gt;
&lt;br /&gt;
=== Hyperlinks zu nativen Anwendungen ===&lt;br /&gt;
Unter den verschiedenen Betriebssystemen lassen sich auch aus dem Browser native Anwendungen starten. Dazu muss man dem Betriebssystem einen Protokollhandler für ein bestimmtes Protokoll bekannt machen.&lt;br /&gt;
&lt;br /&gt;
In Windows muss man dazu die [https://support.shotgunsoftware.com/entries/86754-How-to-launch-external-applications-using-custom-protocols-rock-instead-of-http- Registry ändern].&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* [https://support.shotgunsoftware.com/entries/86754-How-to-launch-external-applications-using-custom-protocols-rock-instead-of-http- Anleitung für Hyperlinks zu nativen Anwendungen auf shotgunsoftware.com]&lt;br /&gt;
* [http://stackoverflow.com/questions/389204/how-do-i-create-my-own-url-protocol-e-g-so Frage zu Scheme Handlern auf stackoverflow.com]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Unter Windows kann man nicht nur Handler für eigene Protokolle (z.B.: &#039;&#039;&amp;quot;office:&amp;quot;&#039;&#039;) registrieren, sondern auch Handler für Dateitypen (MIME-Handler), die bereits vor dem Herunterladen der Datei aufgerufen werden und so die Art des Herunterladens bestimmen können.&amp;lt;ref&amp;gt;Siehe https://msdn.microsoft.com/de-de/library/jj215788%28v=vs.85%29.aspx&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== REST ===&lt;br /&gt;
&lt;br /&gt;
[[REST]] hat folgende Eigenheiten:&lt;br /&gt;
* Jede Resource hat eine URL/URI&amp;lt;ref&amp;gt;http://architects.dzone.com/news/common-rest-design-pattern&amp;lt;/ref&amp;gt;.&lt;br /&gt;
* Es gibt nur simple Operationen:&lt;br /&gt;
** GET (hole Info, &amp;quot;&#039;&#039;r&#039;&#039;etrieve&amp;quot;, idempotent)&lt;br /&gt;
** PUT (aktualisiere Info, &amp;quot;&#039;&#039;u&#039;&#039;pdate&amp;quot;, idempotent)&lt;br /&gt;
** POST (erzeuge neue Info, &amp;quot;&#039;&#039;c&#039;&#039;reate&amp;quot;, kann non-idempotent sein)&lt;br /&gt;
** DELETE (lösche Info, &amp;quot;&#039;&#039;d&#039;&#039;elete&amp;quot;,idempotent) &lt;br /&gt;
** kurz: &#039;&#039;CRUD&#039;&#039;&lt;br /&gt;
** zusätzlich HEAD (hole Meta-Info über eine Ressource)&amp;lt;ref&amp;gt;http://architects.dzone.com/news/common-rest-design-pattern&amp;lt;/ref&amp;gt;.&lt;br /&gt;
* Das Protokoll ist HTTP.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* [http://java.sun.com/developer/technicalArticles/jersey-part1/index.html Einführung in REST] mit dem [[Java]]-[[Open Source]]-Framework [[Jersey]].&lt;br /&gt;
* [http://www.gen-x-design.com/archives/create-a-rest-api-with-php/ REST-API mit PHP]&lt;br /&gt;
* [http://www.gen-x-design.com/archives/making-restful-requests-in-php/ Client-Part of the REST API]&lt;br /&gt;
* [http://phprestsql.sourceforge.net/ Spielwiese auf PHP/MySQL-Basis]&lt;br /&gt;
* [http://jacwright.com/250/simple-rest-server-in-php-supports-json-amf/ Simple Rest Server in PHP]&lt;br /&gt;
&lt;br /&gt;
* [http://restsql.org/doc/Overview.html restSQL] - eine [[Java]]-Programmierschnittstelle, um möglichst einfach auf [[SQL]]-Daten mittels [[Rest]]-Clients zuzugreifen.&lt;br /&gt;
* [http://sqlrest.sourceforge.net/ sqlREST] - eine andere Mittelschicht zwischen Http/Rest-Client und SQL-Datenbank, die in [[Java]] programmiert wurde&lt;br /&gt;
&lt;br /&gt;
* [http://www.dreamfactory.com/features Dreamfactoy] - eine [[Open Source]] - REST-Schnittstelle zu [[SQL]]-Datenbanken. Zusätzlich werden noch APIs u.a. für AngularJS angeboten.&lt;br /&gt;
&lt;br /&gt;
=== Alternativen zu HTML ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.webreference.com/authoring/languages/Lightweight-Languages/index.html Textile und Markdown] sind sog. leichtgewichtige Markup-Sprachen, die in HTML konvertiert werden können.&lt;br /&gt;
** Siehe auch [[Markdown]]&lt;br /&gt;
** Zu Textile siehe auch das Xilize-Plugin für den Editor [[jEdit]].&lt;br /&gt;
&lt;br /&gt;
== JavaScript ==&lt;br /&gt;
=== Projektmanagment ===&lt;br /&gt;
&lt;br /&gt;
JavaScript kann in einem einfachen Editor geschrieben werden und im Browser laufen. &lt;br /&gt;
&lt;br /&gt;
Üblicherweise werden aber Projektmanagementtools verwendet:&lt;br /&gt;
&lt;br /&gt;
* Gulp&lt;br /&gt;
** https://engineroom.teamwork.com/10-things-to-know-about-gulp-2e99176f9c74&lt;br /&gt;
* Grunt&lt;br /&gt;
* [[Maven]] mit dem maven-frontend-plugin&lt;br /&gt;
* [[Webpack]] - eigentlich nur ein Paketierer für einzelne JavaScript-Dateien.&lt;br /&gt;
&lt;br /&gt;
Daneben gibt es viele Build- und Hosting-Plattformen in der Cloud, z.B.&lt;br /&gt;
* Netlify&lt;br /&gt;
* [https://www.gatsbyjs.com/pricing/#buildsDetails GatsbyJS]&lt;br /&gt;
* Back4app&lt;br /&gt;
&lt;br /&gt;
=== Allgemeines ===&lt;br /&gt;
* [http://de.selfhtml.org/javascript/index.htm Javascript-Dokumentation von selfhtml]&lt;br /&gt;
* [https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference Mozilla JavaScript Reference]&lt;br /&gt;
* [http://www.javascriptkit.com/jsref/ JavaScript Reference]&lt;br /&gt;
* [http://reference.sitepoint.com/javascript Sitepoint JavaScript]&lt;br /&gt;
* [http://www.ooowiki.de/JavaScript Kurze Übersicht über JavaScript]&lt;br /&gt;
* [http://www.heise.de/developer/artikel/Konsole-Currying-2049605.html Blog &amp;quot;Konsole&amp;amp;Kontext&amp;quot; über funktionale Sprachen insbesondere am Beispiel JavaScript]&lt;br /&gt;
* [https://leanpub.com/understandinges6/read Neuerungen in ECMAScript 2015 bzw. ECMAScript6]&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[HTML5]] und [[HTML für Smartphones]].&lt;br /&gt;
&lt;br /&gt;
=== Sprachkonstrukte ===&lt;br /&gt;
==== Algorithmen und Datenstrukturen ====&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/trekhleb/javascript-algorithms&lt;br /&gt;
==== Promises ====&lt;br /&gt;
Siehe&lt;br /&gt;
* https://pouchdb.com/2015/05/18/we-have-a-problem-with-promises.html&lt;br /&gt;
&lt;br /&gt;
==== Module ====&lt;br /&gt;
&lt;br /&gt;
In JavaScript haben sich verschiedene Formate für Module etabliert.&lt;br /&gt;
&lt;br /&gt;
Allerdings scheint zumindest in ES6 nicht mehr sicher zu sein, dass beim Import eines&lt;br /&gt;
Moduls von mehreren verschiedenen Modulen dieses eine Modul als Singleton importiert &lt;br /&gt;
wird. Siehe Kommentare zur [https://stackoverflow.com/questions/69896862/javascript-imports-do-they-duplicate Stackoverflow-Frage].&lt;br /&gt;
&lt;br /&gt;
=== Coding Style ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://github.com/standard/standard/blob/master/docs/README-en.md JavaScript Standard ] wird ein Coding Standard nicht nur festgelegt, sondern auch automatisch überwacht.&lt;br /&gt;
&lt;br /&gt;
=== Inversion of Control ===&lt;br /&gt;
&lt;br /&gt;
Auch für JavaScript gibt es Frameworks zum Implementieren des Inversion of Control-Musters:&lt;br /&gt;
&lt;br /&gt;
* http://inversify.io/&lt;br /&gt;
* https://www.npmjs.com/package/typescript-ioc&lt;br /&gt;
&lt;br /&gt;
=== jQuery ===&lt;br /&gt;
&lt;br /&gt;
Mit dem [[jQuery]]-Framework werden [[JavaScript]]-Aufgaben erleichtert. &lt;br /&gt;
&lt;br /&gt;
JQuery hat eine Plugin-Architektur, z.B.&lt;br /&gt;
* [http://tablesorter.com/docs/ TableSorter] zum Ausstatten einer [[HTML]]-Tabelle mit Sortierknöpfen.&lt;br /&gt;
&lt;br /&gt;
=== JavaScript Multitasking ===&lt;br /&gt;
&lt;br /&gt;
Für Threads in JavvaScript sieht [http://www.sitepoint.com/javascript-threading-html5-web-workers/ HTML5 Web-Workers vor].&lt;br /&gt;
&lt;br /&gt;
=== Service Worker ===&lt;br /&gt;
&lt;br /&gt;
Mittels Service Worker kann man (als Ersatz für den früheren AppCache) Offline-Applikationen für den Browser schreiben. Die Service Worker sind spezielle Web Worker mit längerem Lebenszyklus.&lt;br /&gt;
&lt;br /&gt;
Das Konzept ist aber komplex und man kann [https://gist.github.com/Rich-Harris/fd6c3c73e6e707e312d7c5d7d0f3b2f9 viele Fehler beim Erfassen dieses Konstrukts machen].&lt;br /&gt;
&lt;br /&gt;
Bereits das Aktualisieren des Service Workers scheint komplex zu sein:&lt;br /&gt;
&lt;br /&gt;
* Der Service Worker sollte mit einem HTTP-Header ausgeliefert werden, der kein oder nur ein kurzes Caching erlaubt. Z.B. den [[Node.js]]-Server &amp;lt;code&amp;gt;http-server&amp;lt;/code&amp;gt; mit der Option &amp;lt;code&amp;gt;-c-1&amp;lt;/code&amp;gt; aufrufen.&lt;br /&gt;
* Im Web-Front-End muss registration.update() aufgerufen werden.&lt;br /&gt;
* Im Install-Handler des Service Workers muss self.skipWaiting() und&lt;br /&gt;
* Im Activate-Handler des Service Workers self.clients.claim() aufgerufen werden.&lt;br /&gt;
&lt;br /&gt;
Grundsätzlich erlauben die Browser aus Sicherheitsgründen nur HTTP&#039;&#039;&#039;S&#039;&#039;&#039;-Verbindungen. Zu Entwicklungszwecken kann aber auch der localhost mit einer HTTP-Verbindung genutzt werden, also http://127.0.0.1:PORT&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://vaadin.com/pwa/build&lt;br /&gt;
* https://davidwalsh.name/service-worker-claim&lt;br /&gt;
* https://serviceworke.rs/immediate-claim_service-worker_doc.html&lt;br /&gt;
* https://vaadin.com/pwa/build/production-pwa-with-webpack-and-workbox&lt;br /&gt;
&lt;br /&gt;
=== HTTP Long Polling und WebSockets ===&lt;br /&gt;
Für HTTP-Long Polling bieten sich JavaScript-[[Closure]]s an.&lt;br /&gt;
Siehe [http://techoctave.com/c7/posts/60-simple-long-polling-example-with-javascript-and-jquery jQuery-Long Polling Example].&lt;br /&gt;
&lt;br /&gt;
In HTML5 gibt es für Server-Push die sogenannten [[WebSocket]]s. [http://techoctave.com/c7/posts/60-simple-long-polling-example-with-javascript-and-jquery Socket.IO] ist eine JavaScript-Bibliothek, die die Server-Push-Technologie (HTTP Long Poll oder Implementierungen von Websockets) kapselt.&lt;br /&gt;
&lt;br /&gt;
==== WebSockets ====&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
* https://github.com/danhab99/interactive-websocket-cli&lt;br /&gt;
kann man einen Server und einen Client in der Shell starten, um Websockets ein wenig auszuprobieren.&lt;br /&gt;
&lt;br /&gt;
=== Bearbeiten von PDFs mit JavaScript ===&lt;br /&gt;
&lt;br /&gt;
[[PDF]]s können derzeit noch nicht mit reinem JavaScript bearbeitet werden, sondern nur entweder erzeugt (PDF.js) oder angezeigt werden. &lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* http://pdfmake.org&lt;br /&gt;
** https://www.npmjs.com/package/pdfmake&lt;br /&gt;
* [http://pdfkit.org PDFKit] ist eine JavaScript-Bibliothek, um PDFs zu erzeugen. Einlesen kann sie PDFs nicht&amp;lt;ref&amp;gt;Siehe https://github.com/devongovett/pdfkit/issues/83&amp;lt;/ref&amp;gt; (Stand: Mitte 2018).&lt;br /&gt;
* [https://github.com/MrRio/jsPDF jsPDF] ist eine JavaScript-Bibliothek, um PDFs zu erzeugen. Einlesen kann sie PDFs &amp;lt;small&amp;gt;(noch, Stand:Mitte 2018)&amp;lt;/small&amp;gt; nicht.&lt;br /&gt;
* [https://github.com/galkahana/HummusJS HummusJS] erzeugt und modifiziert PDF-Dateien. Es läuft in [[Node.js]], nicht im Browser. Es läuft auf Basis der entsprechenden C++-Bibliothek.&lt;br /&gt;
** [http://pdfhummus.com/ Blog für HummusJS]&lt;br /&gt;
* [https://github.com/won21kr/pdfedit PDFedit] scheint nicht mehr weiterentwickelt zu werden.&lt;br /&gt;
* https://github.com/officeonlinesystems/pdfeditor_chromeextension sollte man sich mal anschauen, ob es etwas hilft.&lt;br /&gt;
* https://stackoverflow.com/questions/742271/generating-pdf-files-with-javascript&lt;br /&gt;
&lt;br /&gt;
Eine Alternative zur Erzeugung von PDFs könnte das Erstellen von SVGs sein:&lt;br /&gt;
* https://www.txtjs.com/&lt;br /&gt;
&lt;br /&gt;
=== Bearbeiten von Word-DOCX-Dokumenten ===&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://docxtemplater.readthedocs.io/en/latest/faq.html DocxTemplater]&lt;br /&gt;
* [https://github.com/lalalic/docx4js docx4js] - ein Docx-Parser&lt;br /&gt;
* [https://jstool.gitlab.io/demo/preview-ms-word-docx-document-in-browser/ Rendern von Docx im Browser]&lt;br /&gt;
** basiert auf [https://github.com/mwilliamson/mammoth.js mammoth.js]&lt;br /&gt;
* https://stackoverflow.com/questions/44698896/javascript-library-to-read-doc-and-docx-on-client&lt;br /&gt;
&lt;br /&gt;
Lesen von Word-Docx-Dokumenten&lt;br /&gt;
* [https://www.npmjs.com/package/word-extractor?activeTab=readme word-extractor] - liest nur Text&lt;br /&gt;
* [https://github.com/mwilliamson/mammoth.js mammoth.js] erzeugt simples HTML aus Word. &lt;br /&gt;
** [https://jstool.gitlab.io/demo/preview-ms-word-docx-document-in-browser/ Mammoth-Online-Demo]&lt;br /&gt;
* [https://www.npmjs.com/package/any-text any-text] ermöglicht, den Text eines Docx-Dokuments auszulesen.&lt;br /&gt;
* [https://github.com/dkiyatkin/node-office node-office] nutzt unoconv zur Extrahierung von Text&lt;br /&gt;
** [https://wiki.ubuntuusers.de/unoconv/ unoconv] ist ein Kommandozeilentool zur Konvertierung von Office-Dokumenten, das ein installiertes OpenOffice oder LibreOffice nutzt.&lt;br /&gt;
&lt;br /&gt;
=== Scannen mit JavaScript ===&lt;br /&gt;
&lt;br /&gt;
Dokumente scannen kann man wohl auch aus dem Browser: Siehe&lt;br /&gt;
* https://www.npmjs.com/package/scanner-js&lt;br /&gt;
&lt;br /&gt;
Aber auch das übliche Client-Server-Modell wird in JavaScript verwirklicht:&lt;br /&gt;
* https://github.com/sbs20/scanservjs&lt;br /&gt;
&lt;br /&gt;
=== Google Apps Script ===&lt;br /&gt;
&lt;br /&gt;
Google Apps Script basiert auf JavaScript, hat aber Erweiterungen, um auf Google Produkte zugreifen zu können. Entsprechende Scripte können beispielsweise in Googles Tabellen eingebunden oder mittels eines Timers regelmäßig gestartet werden.&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://developers.google.com/apps-script/your_first_script Beispiel-Skripterstellung]&lt;br /&gt;
* [https://developers.google.com/apps-script/your_first_script Beispiel-Script]&lt;br /&gt;
&lt;br /&gt;
=== JavaScript DB Frameworks ===&lt;br /&gt;
&lt;br /&gt;
==== JavaScript for PostgreSQL ====&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://www.npmjs.com/package/pg pg ] ist der Standard für Zugriffe von [[Node.js]] auf [[PostgreSQL]]&lt;br /&gt;
** https://www.npmjs.com/package/pg-types&lt;br /&gt;
** https://github.com/brianc/node-postgres&lt;br /&gt;
* [[slonik]] ist insbesondere für [[TypeScript]]-Nutzer eine Möglichkeit, weitgehend typensicher SQL-Code zu schreiben und trotzdem uneingeschränkt SQL-Code zu nutzen.&lt;br /&gt;
* [https://www.npmjs.com/package/pg-promise pg-promise] baut auf pg auf und ermöglicht insbesondere Transaktionsmanagement mittels [[Promise]]s.&lt;br /&gt;
* [https://www.npmjs.com/package/knex knex ] ist ein SQL-Dialekt-übergreifende Möglichkeit, SQL in JavaScript-Funktionsaufrufen zu schreiben. Es unterstützt u.a. auch [[PostgreSQL]] via [[pg]]. Siehe&lt;br /&gt;
** [https://knexjs.org/ Knex-Homepage mit Dokumentation]&lt;br /&gt;
** Siehe aus dem [[Java]]-Bereich dazu auch [[JOOQ]]&lt;br /&gt;
* [https://www.npmjs.com/package/bookshelf Bookshelf.js] ist eine &amp;quot;leichte&amp;quot; ORM-Ebene, die sich [[Knex]] bedient. Für spezielle Abfragen kann auf Knex zurückgegriffen werden.&lt;br /&gt;
* [https://gitlab.com/monstrous/monstrous Monstrous] nutzt das in der Datenbank vorhandene Schema, um eine JavaScript-Zugriffsschicht zu ermöglichen.&lt;br /&gt;
&lt;br /&gt;
===== JavaScript for PostgresSQL NOTIFY/LISTEN =====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* https://github.com/andywer/pg-listen&lt;br /&gt;
* https://www.npmjs.com/package/pg-pubsub&lt;br /&gt;
* https://github.com/emilbayes/pg-ipc&lt;br /&gt;
&lt;br /&gt;
=== JavaScript UI Frameworks ===&lt;br /&gt;
&lt;br /&gt;
==== React ====&lt;br /&gt;
[[React]] ist ein von Facebook entwickeltes Framework zum Darstellen von HTML-UI-Komponenten. Es gibt es auch in einer React Native-&amp;quot;Geschmack&amp;quot; zum Erstellen von nativen [[Android]]- oder [[iOS]]-Apps.&lt;br /&gt;
&lt;br /&gt;
==== Angular ====&lt;br /&gt;
Siehe [[Angular]]&lt;br /&gt;
&lt;br /&gt;
==== Slim.js ====&lt;br /&gt;
&lt;br /&gt;
Siehe https://github.com/slimjs/slim.js/wiki&lt;br /&gt;
&lt;br /&gt;
=== Bauen eines DSL-Parsers in JavaScript ===&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://tomassetti.me/parsing-in-javascript/ Grundsätzliches zum Parsen in Javascript]&lt;br /&gt;
* Earley&lt;br /&gt;
* Nearley&lt;br /&gt;
** https://medium.com/@gajus/parsing-absolutely-anything-in-javascript-using-earley-algorithm-886edcc31e5e&lt;br /&gt;
* PEG.js kann mit Hilfe eines Plugins auch TypeScript-Parser bauen.&lt;br /&gt;
&lt;br /&gt;
=== Diagramme darstellen in Javascript ===&lt;br /&gt;
==== Darstellung von Kuchen- und Balkendiagrammen ====&lt;br /&gt;
&lt;br /&gt;
* https://plotly.com/javascript/&lt;br /&gt;
&lt;br /&gt;
==== Darstellung von Graphen ====&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* [https://js.cytoscape.org/ Cytoscape] (MIT-Lizenz)&lt;br /&gt;
* [https://mermaid.js.org/ mermaid.js] - Darstellung von in Text-Notation beschriebenen Graphen&lt;br /&gt;
** https://blog.ordix.de/flowcharts-as-code-mit-mermaid-js&lt;br /&gt;
* https://github.com/jpb12/react-tree-graph&lt;br /&gt;
* [https://kroki.io/ Kroki] ist ein freier HTTP-Dienst, der Diagramme erzeugt. Er basiert auf Open Source.&lt;br /&gt;
&lt;br /&gt;
=== Test JavaScript ===&lt;br /&gt;
&lt;br /&gt;
Zur Steuerung von Webbrowsern bzw. zum Simulieren von Webbrowser-Nutzung siehe&lt;br /&gt;
* [[Selenium]] (steuert verschiedene Browser)&lt;br /&gt;
* https://github.com/puppeteer/puppeteer - Puppeteer lädt eine passende [[Chromium]]-Version herunter&lt;br /&gt;
* [https://en.wikipedia.org/wiki/PhantomJS PhantomJS] (basiert auf WebKit, wird nicht mehr weiterentwickelt)&lt;br /&gt;
* CasperJS (basiert auf PhantomJS)&lt;br /&gt;
* [https://slimerjs.org  SlimerJS] (basiert auf Gecko, der [[Firefox]]-Engine)&lt;br /&gt;
&lt;br /&gt;
Unit-Tests:&lt;br /&gt;
* [[Jest]] - ein JavaScript / [[TypeScript]]-Test-Framework einschließlich Mocking-Hilfsmittel&lt;br /&gt;
* [https://mochajs.org/ Mocha]&lt;br /&gt;
&lt;br /&gt;
== PHP ==&lt;br /&gt;
&lt;br /&gt;
* [[PHP]]&lt;br /&gt;
&lt;br /&gt;
== Authentifizierung ==&lt;br /&gt;
&lt;br /&gt;
[http://hueniverse.com/oauth/ OAuth] ist ein offener Standard zur Identifizierung für einzelne Web-Dienste. Der Upgrade auf Oauth 2.0 wird von manchen Beteiligten kritisch gesehen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* [[OpenID]]&lt;br /&gt;
* [https://hubzilla.org//page/hubzilla/hubzilla-project Hubzilla-Projekt]&lt;br /&gt;
&lt;br /&gt;
== OPA ==&lt;br /&gt;
&lt;br /&gt;
[http://opalang.org/ OPA] ist eine Programmiersprache, deren Ausführung unbemerkt vom Entwickler sowohl auf dem Server (mit Datenbank) als auch auf dem Client läuft.&lt;br /&gt;
&lt;br /&gt;
* https://www.openpolicyagent.org/docs/latest/policy-language/&lt;br /&gt;
&lt;br /&gt;
== Webservices ==&lt;br /&gt;
&lt;br /&gt;
* Einen Überblick über im Netz bereitstehende Webservices bietet [http://www.xmethods.org xmethods.org]&lt;br /&gt;
* [[GIS]]&lt;br /&gt;
&lt;br /&gt;
== Google Gadgets ==&lt;br /&gt;
&lt;br /&gt;
* [[Google Gadget]]&lt;br /&gt;
&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;br /&gt;
[[Category:Datenbank]]&lt;br /&gt;
[[Category:Java-Tipps]]&lt;br /&gt;
[[Category:Podcast]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23172</id>
		<title>Flutter</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23172"/>
		<updated>2026-09-10T09:48:58Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* SurrealDB */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
* [https://flutter.dev/ Flutter] ist ein [[Open Source]]-Framework, um native [[Android]]-, [[iOS]]-, [[Linux]]-, [[MacOS]]-  und [[Windows]]- sowie Web-Anwendungen zu bauen.&lt;br /&gt;
** mit [https://docs.fluxbuilder.com/ Fluxbuilder ]&lt;br /&gt;
&lt;br /&gt;
Als Programmiersprache wird [[Dart]] genutzt. Die Benutzerelemente sehen zwar aus wie native Elemente; sie werden aber auf Pixelbasis von den Flutter-Komponenten selbst errechnet.&lt;br /&gt;
&lt;br /&gt;
== Projektstruktur ==&lt;br /&gt;
&lt;br /&gt;
Zur grundsätzlichen Struktur eines Dart-Projekts (package) siehe&lt;br /&gt;
* https://dart.dev/tools/pub/create-packages&lt;br /&gt;
* https://dart.dev/tools/pub/package-layout &lt;br /&gt;
&lt;br /&gt;
Ein Package umfasst ein oder mehrere Libraries. Eine Library ist üblicherweise ein Dart-File (Ausnahme: Einbindung anderern [generierter] Dateien mittels &amp;lt;code&amp;gt;part&amp;lt;/code&amp;gt;-Direktive).&lt;br /&gt;
Libraries im lib/-Verzeichnis sind public, wogegen solche im lib/src-Verzeichnis privat sind.&lt;br /&gt;
&lt;br /&gt;
Wenn man Flutter benutzt kann man die Struktur durch&lt;br /&gt;
  flutter create&lt;br /&gt;
erzeugen lassen.&lt;br /&gt;
&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
=== State Management ===&lt;br /&gt;
&lt;br /&gt;
Das State Management ist ähnlich demjenigen von [[React]] und [[React Native]], allerdings klassenbasiert. Die neueren funktionsbasierten Hooks (useXXX) aus der React-Welt gibt es in Flutter nicht. Dafür gibt es viele ähnliche App-State-Management-Libraries, teilweise Übertragungen aus der React-Welt wie [[Redux]] und [[MobX]].&lt;br /&gt;
&lt;br /&gt;
Das State-Management erfolgt (ohne Library-Ergänzung) mit &lt;br /&gt;
* StatefulWidget oder&lt;br /&gt;
* InheritedWidget.&lt;br /&gt;
&lt;br /&gt;
Man kann sich [https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1 für eine App drei Schichten] vorstellen:&lt;br /&gt;
* UI (möglichst keine Logik, keine veränderbaren Daten)&lt;br /&gt;
* App State-Management (nur Logik und Daten)&lt;br /&gt;
* Business Logic (nur Logik und Daten, Persistenz, Netzwerk-Zugriff ...)&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1&lt;br /&gt;
* BLoC&lt;br /&gt;
* GetIt&lt;br /&gt;
&lt;br /&gt;
=== immutable state ===&lt;br /&gt;
&lt;br /&gt;
Benütze so oft als möglich &amp;quot;final&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
== Deployment ==&lt;br /&gt;
&lt;br /&gt;
=== Deployment einer Linux-Desktop-Anwendung ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://fastforge.dev/getting-started fastforge] kann man u.a. .deb-Pakete erstellen.&lt;br /&gt;
* Für make_config.yaml siehe https://github.com/fastforgedev/fastforge/blob/main/packages/flutter_app_packager/lib/src/makers/deb/make_deb_config.dart&lt;br /&gt;
&lt;br /&gt;
Mit [https://pub.dev/documentation/flutter_build_debian/latest/ flutter_build_debian] kann man sich ein .deb-Paket zur Installation auf Debian/Ubuntu/Derivaten erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://docs.flutter.dev/platform-integration/linux/building&lt;br /&gt;
* https://medium.com/@fluttergems/packaging-and-distributing-flutter-desktop-apps-the-missing-guide-part-3-linux-24ef8d30a5b4&lt;br /&gt;
* https://pub.dev/packages/fastforge&lt;br /&gt;
** https://fastforge.dev/&lt;br /&gt;
&lt;br /&gt;
== Besonderheiten ==&lt;br /&gt;
&lt;br /&gt;
=== Dateizugriff auf Media-Dateien beschränkt ===&lt;br /&gt;
&lt;br /&gt;
Beim Auflisten des Inhalts eines Verzeichnisses erscheinen Dateien nicht. Das liegt daran, dass standardmäßig unter [[Android]] keine Berechtigungen erlaubt sind, andere Dateien als Media-Dateien (JPEG, PDF etc) zu lesen.&lt;br /&gt;
&lt;br /&gt;
Man muss die Berechtigungen sowohl in die Manifest.xml eintragen als auch vom Benutzer anfordern. Siehe Permission.request in plugin permission_handler.&lt;br /&gt;
In Frage kommen insbesondere:&lt;br /&gt;
* READ_MEDIA_IMAGES&lt;br /&gt;
* READ_MEDIA_VIDEO&lt;br /&gt;
* READ_MEDIA_AUDIO&lt;br /&gt;
oder&lt;br /&gt;
* [https://developer.android.com/training/data-storage/manage-all-files MANAGE_EXTERNAL_STORAGE]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/dart-lang/sdk/issues/44848&lt;br /&gt;
&lt;br /&gt;
=== JSON ===&lt;br /&gt;
&lt;br /&gt;
==== JSON serialization ====&lt;br /&gt;
&lt;br /&gt;
Dart hilft beim Einpacken von Daten in JSON und dem Auspacken. Allerdings ist es nicht [[JavaScript]] oder [[TypeScript]], das ein first-class-Handling von [[JSON]] ermöglichen.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Libraries sind&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/dart_mappable dart_mappable] vom Author von [[Jaspr]]&lt;br /&gt;
* json_serializable&lt;br /&gt;
* built_value&lt;br /&gt;
* deep_pick&lt;br /&gt;
* [https://pub.dev/packages/equatable equatable]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://codewithandrea.com/articles/parse-json-dart/&lt;br /&gt;
&lt;br /&gt;
==== Weitere Libraries für Behandlung von JSON in Dart/Flutter ====&lt;br /&gt;
Weitere hilfreiche Libraries mit JSON&lt;br /&gt;
* [https://pub.dev/packages/json_path json_path]&lt;br /&gt;
* [https://pub.dev/packages/rfc_6901 rfc_6901 - JSONPointer Implementierung] - kann JSON-Strukturen bearbeiten&lt;br /&gt;
* [https://pub.dev/packages/flutter_json_view flutter_json_view] - kann JSON-Strukturen anzeigen&lt;br /&gt;
&lt;br /&gt;
== Libraries ==&lt;br /&gt;
&lt;br /&gt;
=== AppState-Libraries ===&lt;br /&gt;
&lt;br /&gt;
Sehr einfache AppState-Libraries sind&lt;br /&gt;
&lt;br /&gt;
*  get_it und&lt;br /&gt;
*  watch_it&lt;br /&gt;
&lt;br /&gt;
=== UI-Libraries ===&lt;br /&gt;
&lt;br /&gt;
* https://forui.dev/docs&lt;br /&gt;
* https://flutter-shadcn-ui.mariuti.com/&lt;br /&gt;
&lt;br /&gt;
=== Datenbank ===&lt;br /&gt;
&lt;br /&gt;
==== SurrealDB ====&lt;br /&gt;
&lt;br /&gt;
[[SurrealDB]] kann mit dem Package [https://github.com/duhanbalci/surrealdb_flutter surrealdb von Duhanbalci] genutzt werden. Das Package kann von [https://pub.dev/packages/surrealdb pub.dev] installiert werden:&lt;br /&gt;
  flutter pub add surrealdb&lt;br /&gt;
&lt;br /&gt;
===== Problem mit Websocket-Subprotokoll =====&lt;br /&gt;
Stand Jan. 2025 gibt es noch ein Problem mit einem &amp;quot;Subprotokoll&amp;quot; der Websocket-Schnittstelle. Näheres dazu unter dem [https://github.com/duhanbalci/surrealdb_flutter/issues/26 (allerdings geschlossenen) Issue auf GitHub].&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
* Couchbase Lite &lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_dart] - alle Plattformen außer Web&lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_flutter] nur für Android&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/documentation/wilt/latest/wilt/Wilt-class.html Wilt] - CouchDB client for server and flutter-based mobile&lt;br /&gt;
* [https://pub.dev/packages/sporran Sporran] basiert auf Wilt, kann aber auch lokal arbeiten und wie [[PouchDB]] mit einer entfernten Instanz synchronisieren. Wohl nur für Web-Plattform.&lt;br /&gt;
&lt;br /&gt;
==== Weitere Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[Sembast]]&lt;br /&gt;
* sqflite - SQLLite für Flutter&lt;br /&gt;
* Floor - basiert auf sqflite&lt;br /&gt;
** https://quashbugs.com/blog/exploring-flutters-floor-library-for-efficient-data-persistence&lt;br /&gt;
* Hive&lt;br /&gt;
&lt;br /&gt;
=== Dart auf Serverseite ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Dart]]&lt;br /&gt;
&lt;br /&gt;
=== Offline-First ===&lt;br /&gt;
&lt;br /&gt;
Insbesondere mobile Apps müssen damit zurechtkommen, dass Datenänderungen nicht sofort zum zentralen Server oder zum Client kommen. Auch dafür gibt &lt;br /&gt;
es Libraries, die helfen, wenn die Datenbank das nicht selbst tut (z.B. bei [[PouchDB]]):&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/fast_sync_hive_dao FastSync]&lt;br /&gt;
** https://pub.dev/packages/fast_sync_client&lt;br /&gt;
* https://code.zeba.academy/offline-apps-flutter-syncing-data-handling-connectivity-issues/ - Anleitung mit Hilfe der lokalen Datenbank [[Sembast]]&lt;br /&gt;
* https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync - Anleitung mit Hilfe von SQLite, Supabase und PowerSync&lt;br /&gt;
* https://flutterdata.dev/&lt;br /&gt;
** https://github.com/flutterdata/flutter_data&lt;br /&gt;
* https://dev.to/anurag_dev/implementing-offline-first-architecture-in-flutter-part-1-local-storage-with-conflict-resolution-4mdl&lt;br /&gt;
* https://www.dhiwise.com/post/navigating-offline-database-in-flutter-a-comprehensive-guide&lt;br /&gt;
* https://pub.dev/packages/offline_sync&lt;br /&gt;
&lt;br /&gt;
== IDE etc. ==&lt;br /&gt;
&lt;br /&gt;
*  https://dartpad.dev/ - einfache Dart/Flutter-Schnipsel ausprobieren&lt;br /&gt;
* Visual Studio Code mit der Flutter-Erweiterung&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/Solido/awesome-flutter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternativen zu Flutter ==&lt;br /&gt;
&lt;br /&gt;
* [[ReactJs]]&lt;br /&gt;
* [[React Native]] &lt;br /&gt;
** Expo&lt;br /&gt;
* [https://pub.dev/packages/jaspr Jaspr] - a web framework for dart, similar to flutter, but renders via HTML/CSS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Softwareentwicklung]] &lt;br /&gt;
[[Category:Android]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23171</id>
		<title>Dart</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23171"/>
		<updated>2026-09-09T08:32:50Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Dart im Backend */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dart ist eine Programmiersprache, die plattformübergreifend kompiliert werden kann:&lt;br /&gt;
* Apps&lt;br /&gt;
** Android&lt;br /&gt;
** iOS&lt;br /&gt;
* Web&lt;br /&gt;
** JavaScript&lt;br /&gt;
** WASM&lt;br /&gt;
* Desktop&lt;br /&gt;
** Linux&lt;br /&gt;
** MacOS&lt;br /&gt;
** Windows&lt;br /&gt;
&lt;br /&gt;
== Dart im Frontend ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
&lt;br /&gt;
* [[Flutter]]&lt;br /&gt;
* Jaspr&lt;br /&gt;
&lt;br /&gt;
== Dart im Backend ==&lt;br /&gt;
&lt;br /&gt;
* ServerPod&lt;br /&gt;
* [https://pub.dev/packages/relic Relic] - ein WebServer, Basis für ServerPod, Nachfolger von Shelf&lt;br /&gt;
** [https://docs.dartrelic.dev/ Dokumentation zu Relic]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;br /&gt;
[[Category:Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23170</id>
		<title>Dart</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Dart&amp;diff=23170"/>
		<updated>2026-09-09T07:55:29Z</updated>

		<summary type="html">&lt;p&gt;Codica: Die Seite wurde neu angelegt: „Dart ist eine Programmiersprache, die plattformübergreifend kompiliert werden kann: * Apps ** Android ** iOS * Web ** JavaScript ** WASM * Desktop ** Linux ** MacOS ** Windows  == Dart im Frontend ==  Siehe  * Flutter * Jaspr  == Dart im Backend ==  * ServerPod * [https://pub.dev/packages/relic Relic] - ein WebServer, Basis für ServerPod, Nachfolger von Shelf   --------- &amp;lt;references/&amp;gt;  Category:Softwareentwicklung Category:Programmiersprache“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dart ist eine Programmiersprache, die plattformübergreifend kompiliert werden kann:&lt;br /&gt;
* Apps&lt;br /&gt;
** Android&lt;br /&gt;
** iOS&lt;br /&gt;
* Web&lt;br /&gt;
** JavaScript&lt;br /&gt;
** WASM&lt;br /&gt;
* Desktop&lt;br /&gt;
** Linux&lt;br /&gt;
** MacOS&lt;br /&gt;
** Windows&lt;br /&gt;
&lt;br /&gt;
== Dart im Frontend ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
&lt;br /&gt;
* [[Flutter]]&lt;br /&gt;
* Jaspr&lt;br /&gt;
&lt;br /&gt;
== Dart im Backend ==&lt;br /&gt;
&lt;br /&gt;
* ServerPod&lt;br /&gt;
* [https://pub.dev/packages/relic Relic] - ein WebServer, Basis für ServerPod, Nachfolger von Shelf&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;br /&gt;
[[Category:Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23169</id>
		<title>Flutter</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23169"/>
		<updated>2026-09-09T07:51:29Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Libraries */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
* [https://flutter.dev/ Flutter] ist ein [[Open Source]]-Framework, um native [[Android]]-, [[iOS]]-, [[Linux]]-, [[MacOS]]-  und [[Windows]]- sowie Web-Anwendungen zu bauen.&lt;br /&gt;
** mit [https://docs.fluxbuilder.com/ Fluxbuilder ]&lt;br /&gt;
&lt;br /&gt;
Als Programmiersprache wird [[Dart]] genutzt. Die Benutzerelemente sehen zwar aus wie native Elemente; sie werden aber auf Pixelbasis von den Flutter-Komponenten selbst errechnet.&lt;br /&gt;
&lt;br /&gt;
== Projektstruktur ==&lt;br /&gt;
&lt;br /&gt;
Zur grundsätzlichen Struktur eines Dart-Projekts (package) siehe&lt;br /&gt;
* https://dart.dev/tools/pub/create-packages&lt;br /&gt;
* https://dart.dev/tools/pub/package-layout &lt;br /&gt;
&lt;br /&gt;
Ein Package umfasst ein oder mehrere Libraries. Eine Library ist üblicherweise ein Dart-File (Ausnahme: Einbindung anderern [generierter] Dateien mittels &amp;lt;code&amp;gt;part&amp;lt;/code&amp;gt;-Direktive).&lt;br /&gt;
Libraries im lib/-Verzeichnis sind public, wogegen solche im lib/src-Verzeichnis privat sind.&lt;br /&gt;
&lt;br /&gt;
Wenn man Flutter benutzt kann man die Struktur durch&lt;br /&gt;
  flutter create&lt;br /&gt;
erzeugen lassen.&lt;br /&gt;
&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
=== State Management ===&lt;br /&gt;
&lt;br /&gt;
Das State Management ist ähnlich demjenigen von [[React]] und [[React Native]], allerdings klassenbasiert. Die neueren funktionsbasierten Hooks (useXXX) aus der React-Welt gibt es in Flutter nicht. Dafür gibt es viele ähnliche App-State-Management-Libraries, teilweise Übertragungen aus der React-Welt wie [[Redux]] und [[MobX]].&lt;br /&gt;
&lt;br /&gt;
Das State-Management erfolgt (ohne Library-Ergänzung) mit &lt;br /&gt;
* StatefulWidget oder&lt;br /&gt;
* InheritedWidget.&lt;br /&gt;
&lt;br /&gt;
Man kann sich [https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1 für eine App drei Schichten] vorstellen:&lt;br /&gt;
* UI (möglichst keine Logik, keine veränderbaren Daten)&lt;br /&gt;
* App State-Management (nur Logik und Daten)&lt;br /&gt;
* Business Logic (nur Logik und Daten, Persistenz, Netzwerk-Zugriff ...)&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1&lt;br /&gt;
* BLoC&lt;br /&gt;
* GetIt&lt;br /&gt;
&lt;br /&gt;
=== immutable state ===&lt;br /&gt;
&lt;br /&gt;
Benütze so oft als möglich &amp;quot;final&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
== Deployment ==&lt;br /&gt;
&lt;br /&gt;
=== Deployment einer Linux-Desktop-Anwendung ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://fastforge.dev/getting-started fastforge] kann man u.a. .deb-Pakete erstellen.&lt;br /&gt;
* Für make_config.yaml siehe https://github.com/fastforgedev/fastforge/blob/main/packages/flutter_app_packager/lib/src/makers/deb/make_deb_config.dart&lt;br /&gt;
&lt;br /&gt;
Mit [https://pub.dev/documentation/flutter_build_debian/latest/ flutter_build_debian] kann man sich ein .deb-Paket zur Installation auf Debian/Ubuntu/Derivaten erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://docs.flutter.dev/platform-integration/linux/building&lt;br /&gt;
* https://medium.com/@fluttergems/packaging-and-distributing-flutter-desktop-apps-the-missing-guide-part-3-linux-24ef8d30a5b4&lt;br /&gt;
* https://pub.dev/packages/fastforge&lt;br /&gt;
** https://fastforge.dev/&lt;br /&gt;
&lt;br /&gt;
== Besonderheiten ==&lt;br /&gt;
&lt;br /&gt;
=== Dateizugriff auf Media-Dateien beschränkt ===&lt;br /&gt;
&lt;br /&gt;
Beim Auflisten des Inhalts eines Verzeichnisses erscheinen Dateien nicht. Das liegt daran, dass standardmäßig unter [[Android]] keine Berechtigungen erlaubt sind, andere Dateien als Media-Dateien (JPEG, PDF etc) zu lesen.&lt;br /&gt;
&lt;br /&gt;
Man muss die Berechtigungen sowohl in die Manifest.xml eintragen als auch vom Benutzer anfordern. Siehe Permission.request in plugin permission_handler.&lt;br /&gt;
In Frage kommen insbesondere:&lt;br /&gt;
* READ_MEDIA_IMAGES&lt;br /&gt;
* READ_MEDIA_VIDEO&lt;br /&gt;
* READ_MEDIA_AUDIO&lt;br /&gt;
oder&lt;br /&gt;
* [https://developer.android.com/training/data-storage/manage-all-files MANAGE_EXTERNAL_STORAGE]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/dart-lang/sdk/issues/44848&lt;br /&gt;
&lt;br /&gt;
=== JSON ===&lt;br /&gt;
&lt;br /&gt;
==== JSON serialization ====&lt;br /&gt;
&lt;br /&gt;
Dart hilft beim Einpacken von Daten in JSON und dem Auspacken. Allerdings ist es nicht [[JavaScript]] oder [[TypeScript]], das ein first-class-Handling von [[JSON]] ermöglichen.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Libraries sind&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/dart_mappable dart_mappable] vom Author von [[Jaspr]]&lt;br /&gt;
* json_serializable&lt;br /&gt;
* built_value&lt;br /&gt;
* deep_pick&lt;br /&gt;
* [https://pub.dev/packages/equatable equatable]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://codewithandrea.com/articles/parse-json-dart/&lt;br /&gt;
&lt;br /&gt;
==== Weitere Libraries für Behandlung von JSON in Dart/Flutter ====&lt;br /&gt;
Weitere hilfreiche Libraries mit JSON&lt;br /&gt;
* [https://pub.dev/packages/json_path json_path]&lt;br /&gt;
* [https://pub.dev/packages/rfc_6901 rfc_6901 - JSONPointer Implementierung] - kann JSON-Strukturen bearbeiten&lt;br /&gt;
* [https://pub.dev/packages/flutter_json_view flutter_json_view] - kann JSON-Strukturen anzeigen&lt;br /&gt;
&lt;br /&gt;
== Libraries ==&lt;br /&gt;
&lt;br /&gt;
=== AppState-Libraries ===&lt;br /&gt;
&lt;br /&gt;
Sehr einfache AppState-Libraries sind&lt;br /&gt;
&lt;br /&gt;
*  get_it und&lt;br /&gt;
*  watch_it&lt;br /&gt;
&lt;br /&gt;
=== UI-Libraries ===&lt;br /&gt;
&lt;br /&gt;
* https://forui.dev/docs&lt;br /&gt;
* https://flutter-shadcn-ui.mariuti.com/&lt;br /&gt;
&lt;br /&gt;
=== Datenbank ===&lt;br /&gt;
&lt;br /&gt;
==== SurrealDB ====&lt;br /&gt;
&lt;br /&gt;
[[SurrealDB]] kann mit dem Package [https://github.com/duhanbalci/surrealdb_flutter surrealdb von Duhanbalci] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
===== Problem mit Websocket-Subprotokoll =====&lt;br /&gt;
Stand Jan. 2025 gibt es noch ein Problem mit einem &amp;quot;Subprotokoll&amp;quot; der Websocket-Schnittstelle. Näheres dazu unter dem [https://github.com/duhanbalci/surrealdb_flutter/issues/26 (allerdings geschlossenen) Issue auf GitHub].&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
* Couchbase Lite &lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_dart] - alle Plattformen außer Web&lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_flutter] nur für Android&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/documentation/wilt/latest/wilt/Wilt-class.html Wilt] - CouchDB client for server and flutter-based mobile&lt;br /&gt;
* [https://pub.dev/packages/sporran Sporran] basiert auf Wilt, kann aber auch lokal arbeiten und wie [[PouchDB]] mit einer entfernten Instanz synchronisieren. Wohl nur für Web-Plattform.&lt;br /&gt;
&lt;br /&gt;
==== Weitere Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[Sembast]]&lt;br /&gt;
* sqflite - SQLLite für Flutter&lt;br /&gt;
* Floor - basiert auf sqflite&lt;br /&gt;
** https://quashbugs.com/blog/exploring-flutters-floor-library-for-efficient-data-persistence&lt;br /&gt;
* Hive&lt;br /&gt;
&lt;br /&gt;
=== Dart auf Serverseite ===&lt;br /&gt;
&lt;br /&gt;
Siehe [[Dart]]&lt;br /&gt;
&lt;br /&gt;
=== Offline-First ===&lt;br /&gt;
&lt;br /&gt;
Insbesondere mobile Apps müssen damit zurechtkommen, dass Datenänderungen nicht sofort zum zentralen Server oder zum Client kommen. Auch dafür gibt &lt;br /&gt;
es Libraries, die helfen, wenn die Datenbank das nicht selbst tut (z.B. bei [[PouchDB]]):&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/fast_sync_hive_dao FastSync]&lt;br /&gt;
** https://pub.dev/packages/fast_sync_client&lt;br /&gt;
* https://code.zeba.academy/offline-apps-flutter-syncing-data-handling-connectivity-issues/ - Anleitung mit Hilfe der lokalen Datenbank [[Sembast]]&lt;br /&gt;
* https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync - Anleitung mit Hilfe von SQLite, Supabase und PowerSync&lt;br /&gt;
* https://flutterdata.dev/&lt;br /&gt;
** https://github.com/flutterdata/flutter_data&lt;br /&gt;
* https://dev.to/anurag_dev/implementing-offline-first-architecture-in-flutter-part-1-local-storage-with-conflict-resolution-4mdl&lt;br /&gt;
* https://www.dhiwise.com/post/navigating-offline-database-in-flutter-a-comprehensive-guide&lt;br /&gt;
* https://pub.dev/packages/offline_sync&lt;br /&gt;
&lt;br /&gt;
== IDE etc. ==&lt;br /&gt;
&lt;br /&gt;
*  https://dartpad.dev/ - einfache Dart/Flutter-Schnipsel ausprobieren&lt;br /&gt;
* Visual Studio Code mit der Flutter-Erweiterung&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/Solido/awesome-flutter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternativen zu Flutter ==&lt;br /&gt;
&lt;br /&gt;
* [[ReactJs]]&lt;br /&gt;
* [[React Native]] &lt;br /&gt;
** Expo&lt;br /&gt;
* [https://pub.dev/packages/jaspr Jaspr] - a web framework for dart, similar to flutter, but renders via HTML/CSS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Softwareentwicklung]] &lt;br /&gt;
[[Category:Android]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Versionsmanagement-Tipps&amp;diff=23168</id>
		<title>Versionsmanagement-Tipps</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Versionsmanagement-Tipps&amp;diff=23168"/>
		<updated>2026-08-31T21:06:38Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Siehe [[oldCt:Versionsmanagement-Tipps]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das Versionsmanagementsystem CVS wird nach und nach von [http://subversion.tigris.org/ Subversion (SVN)] oder auch verteilten Systemen wie Mercurial abgelöst.&lt;br /&gt;
&lt;br /&gt;
== Subversion-Server ==&lt;br /&gt;
&lt;br /&gt;
Folgende Schritte sind für einen einfachen Subversionserver mit einem Repository nötig:&lt;br /&gt;
&lt;br /&gt;
=== Einrichten eines Repository ===&lt;br /&gt;
* Einrichten eines Repository auf dem Server mit Hilfe des Utility svnadmin:&lt;br /&gt;
   svnadmin create myRepo &lt;br /&gt;
** Dadurch wird unterhalb des aktuellen Verzeichnisses ein neues Repository angelegt (im Prinzip eine Verzeichnisstruktur für SVN-Verwaltungsdaten und die eigentlichen Inhalte).&lt;br /&gt;
 &lt;br /&gt;
=== Zugriffsberechtigungen ===&lt;br /&gt;
* Editieren der Datei &amp;lt;code&amp;gt;conf/svnserve.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
** &amp;lt;code&amp;gt; password-db=passwordDatei &amp;lt;/code&amp;gt; Name der Passwort-Datei&lt;br /&gt;
** &amp;lt;code&amp;gt; realm=AuthUmgebung &amp;lt;/code&amp;gt; wird als Teilschlüssel zwischen Server und Client ausgetauscht&lt;br /&gt;
** &amp;lt;code&amp;gt; anon-access=none &amp;lt;/code&amp;gt; kein anonymer Zugriff&lt;br /&gt;
** &amp;lt;code&amp;gt; auth-access=write &amp;lt;/code&amp;gt; authentifizierte User können Lesen und Schreiben&lt;br /&gt;
&lt;br /&gt;
* Erstellen der &amp;lt;code&amp;gt;passwordDatei&amp;lt;/code&amp;gt; (im selben Verzeichnis wie &amp;lt;code&amp;gt;svnserve.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
     &lt;br /&gt;
       [users]&lt;br /&gt;
       user1=passwort1&lt;br /&gt;
       user2=passwort2&lt;br /&gt;
     &lt;br /&gt;
=== Serverstart ===&lt;br /&gt;
* Starten des Servers mit&lt;br /&gt;
  svnserve -d --foreground &lt;br /&gt;
** bzw. mit Angabe des Wurzelverzeichnisses:&lt;br /&gt;
  svnserve -d --foreground -r /wurzelverzeichnis &lt;br /&gt;
&lt;br /&gt;
* In der Firewall muss der betroffene Port freigegeben werden.&lt;br /&gt;
&lt;br /&gt;
=== Automatischer Start bei Systemboot ===&lt;br /&gt;
* Anlegen eines speziellen Users für svnserve mit &lt;br /&gt;
  useradd svnserve&lt;br /&gt;
  &lt;br /&gt;
* Erstellen einer Datei &amp;lt;code&amp;gt;/etc/init.d/svnserve.sh&amp;lt;/code&amp;gt; mit folgendem Inhalt:&lt;br /&gt;
  #! /bin/sh&lt;br /&gt;
  REPOS_DIR=/home/svnserve/repos&lt;br /&gt;
  start-stop-daemon --start --chuid svnserve --exec /usr/bin/svnserve  -- -d -r $REPOS_DIRvs20067:&lt;br /&gt;
&lt;br /&gt;
* Ausführbar machen (als root):&lt;br /&gt;
  chmod +x /etc/init.d/svnserve.sh&lt;br /&gt;
&lt;br /&gt;
* Installieren für die User-Runlevel:&lt;br /&gt;
  update-rc.d dhSvnServe.sh defaults&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
* Siehe auch das [http://benrobb.com/2007/01/15/howto-start-subversion-at-boot-on-ubuntu/ automatische Starten von svnserve] jedenfalls unter [[Debian]]&lt;br /&gt;
&lt;br /&gt;
== Subversion-Client ==&lt;br /&gt;
&lt;br /&gt;
* Der Zugriff mittels des Clients &amp;lt;code&amp;gt;svn&amp;lt;/code&amp;gt; erfolgt dann z.B. so:&lt;br /&gt;
  svn --editor-cmd joe --username user1 --password passwort1 --import meinBestehendesArbeitsverzeichnis svn://IP-AdresseDesServers/myRepo&lt;br /&gt;
  &lt;br /&gt;
     &lt;br /&gt;
* Danach muss übrigens ein Checkout erfolgen.&lt;br /&gt;
&lt;br /&gt;
== Mercurial ==&lt;br /&gt;
&lt;br /&gt;
Mercurial ist wie [[Git]] ein verteiltes Versionsverwaltungssystem.&lt;br /&gt;
&lt;br /&gt;
* [http://hgbook.red-bean.com/ Mercurial: The Definitive Guide] (Englisch) von Bryan O&#039;Sullivan&lt;br /&gt;
* [http://wiki.netbeans.org/HgHowTos Zusammenarbeit ] zwischen  [[Netbeans]] und Mercurial&lt;br /&gt;
&lt;br /&gt;
== Git ==&lt;br /&gt;
&lt;br /&gt;
[http://git-scm.com/ Git] ist ein verteiltes Versionskontrollsystem.&lt;br /&gt;
&lt;br /&gt;
=== Git Konfiguration ===&lt;br /&gt;
Es kann man auch als Server-Client-System einsetzen:&lt;br /&gt;
&lt;br /&gt;
* Einrichten des GIT-Systems&lt;br /&gt;
  git config --global user.name &amp;quot;Max Mustermann&amp;quot;&lt;br /&gt;
  git config --global user.email &amp;quot;muster@mann.de&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Einrichten eines Git-Repository ===&lt;br /&gt;
* Einrichten eines GIT-Repository auf einem Server server.de&lt;br /&gt;
  cd ~&lt;br /&gt;
  mkdir myproject&lt;br /&gt;
  git init&lt;br /&gt;
  touch README.txt&lt;br /&gt;
  git add .&lt;br /&gt;
  git commit -a -m &amp;quot;Erstversion&amp;quot;&lt;br /&gt;
  git checkout -b tmpBranch #Wechsel weg vom Master, sonst ist dieser für Remote-Schreibzugriffe gesperrt&lt;br /&gt;
&lt;br /&gt;
* Einrichten eines GIT-Repository auf dem Client&lt;br /&gt;
  git clone user@server.de:myproject/.git&lt;br /&gt;
  &lt;br /&gt;
=== Arbeiten im Projekt ===&lt;br /&gt;
* Hinzufügen von Dateien&lt;br /&gt;
  git add .&lt;br /&gt;
  git commit -a -m &amp;quot;Kommentar&amp;quot;&lt;br /&gt;
  git push origin master&lt;br /&gt;
&lt;br /&gt;
* Holen von Änderungen vom Server&lt;br /&gt;
  git pull&lt;br /&gt;
&lt;br /&gt;
=== Zweige ===&lt;br /&gt;
&lt;br /&gt;
==== Erzeugen von Zweigen ====&lt;br /&gt;
Einen Branch/Zweig erzeugt man am einfachsten so:&lt;br /&gt;
  git checkout -b NEUERZWEIG&lt;br /&gt;
&lt;br /&gt;
==== Wechseln des Zweigs ====&lt;br /&gt;
Zu einem anderen Zweig wechselt man mit &lt;br /&gt;
  git checkout ZWEIG&lt;br /&gt;
&lt;br /&gt;
Der Standard-Zweig nennt sich normalerweise &amp;lt;code&amp;gt;master&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;main&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Auflisten von Zweigen ====&lt;br /&gt;
&lt;br /&gt;
Die vorhandenen lokalen Zweige listet man mit &lt;br /&gt;
&lt;br /&gt;
  git branch&lt;br /&gt;
&lt;br /&gt;
Die Zweige des entfernten Repository mit&lt;br /&gt;
  git branch -r&lt;br /&gt;
&lt;br /&gt;
Dieser Befehl schaut nur ins lokale Repository, um die Zweige des entfernten Repository anzuzeigen. Um sicher zu sein dass die Liste aktuell ist, bitte vorher folgenden Befehl nutzen:&lt;br /&gt;
  git fetch --all&lt;br /&gt;
&lt;br /&gt;
Um zuerst die zuletzt geänderten Git-Zweige anzuzeigen, nutzt man &lt;br /&gt;
  git branch --sort=-committerdate&lt;br /&gt;
&lt;br /&gt;
=== Git Merge ===&lt;br /&gt;
&lt;br /&gt;
Siehe [https://git-scm.com/book/de/v1/Git-Branching-Einfaches-Branching-und-Merging Anleitung zum Einfachen Branching und Merging]&lt;br /&gt;
&lt;br /&gt;
=== Ändern des letzten commits ===&lt;br /&gt;
&lt;br /&gt;
Manchmal vergisst man eine Datei beim Commiten. Wenn es den letzten commit betrifft, ist die Fehlerbehebung einfach:&lt;br /&gt;
&lt;br /&gt;
  git add FEHLENDE_DATEI&lt;br /&gt;
  git commit --amend --no-edit&lt;br /&gt;
&lt;br /&gt;
=== Anzeigen der Änderungen einer Datei ===&lt;br /&gt;
&lt;br /&gt;
Um festzustellen, welcher Commit für die jeweilige Zeile in einer Datei verantwortlich ist, benützt man den Befehl&lt;br /&gt;
&lt;br /&gt;
  git blame DATEI&lt;br /&gt;
&lt;br /&gt;
Um dazu auch die Commit-Message anzuzeigen, verwendet man folgendes leicht von [https://stackoverflow.com/questions/44177174/how-to-display-commit-message-along-with-blame-command ElpieKay] abgewandeltes Skript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git blame -l DATEI | while read hash others;&lt;br /&gt;
do&lt;br /&gt;
    echo hash $others &amp;quot;|Subject:&amp;quot; $(git log -1 --pretty=%s $(echo $hash | sed &#039;s/\^//g&#039;) )&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Kommunikation mit Remote Repositories ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Zugang zu Git-Server über nicht Standard-SSH-Port ====&lt;br /&gt;
&lt;br /&gt;
Wenn man (z.B. in einem [[Docker]]-Container) einen git-Server so eingerichtet hat, dass man ihn nur über einen [[SSH]]-Port erreicht, der nicht dem Standard-SSH-Port 22 entspricht, sollte man das &amp;lt;code&amp;gt;ssh://&amp;lt;/code&amp;gt;-Schema nutzen:&lt;br /&gt;
  git clone ssh://USER@SERVER:PORT/REPOSITORY&lt;br /&gt;
&lt;br /&gt;
==== Authentifizierung bei Github ====&lt;br /&gt;
&lt;br /&gt;
Zur Authentifizierung bei GitHub braucht man entweder ein Personal Access Token oder man behilft sich mit einem Credential Helper.&lt;br /&gt;
Dazu installiert man das Package git-credential-oauth&lt;br /&gt;
&lt;br /&gt;
  sudo aptitude install git-credential-oauth&lt;br /&gt;
&lt;br /&gt;
und gibt git mit, dass es diesen Credential Helper nutzen soll:&lt;br /&gt;
  git-credential-oauth configure&lt;br /&gt;
&lt;br /&gt;
Beim nächsten Aufruf, z.B. von &lt;br /&gt;
  git push &lt;br /&gt;
wird man auf eine Authentifizierungsseite im Browser weitergeleitet.&lt;br /&gt;
&lt;br /&gt;
Benutzt man nur das herkömmlich Passwort, erhält man etwa folgende Fehlermeldung:&lt;br /&gt;
 remote: Invalid username or token. Password authentication is not supported for Git operations.&lt;br /&gt;
 fatal: Authentifizierung fehlgeschlagen&lt;br /&gt;
&lt;br /&gt;
=== Erstellen von Changelog ===&lt;br /&gt;
&lt;br /&gt;
Es gibt Diskussionen, ob man aus der Git-Historie ein Changelog schreiben kann. Und es gibt dafür Tools.&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://git-cliff.org/&lt;br /&gt;
&lt;br /&gt;
=== Weiteres zu Git ===&lt;br /&gt;
* [http://nvie.com/posts/a-successful-git-branching-model/ Verzweigungsmodell] für [[Git]]&lt;br /&gt;
&lt;br /&gt;
* [http://git-scm.com/book/en/Getting-Started-First-Time-Git-Setup Getting started]&lt;br /&gt;
* [https://www.freecodecamp.org/news/how-to-write-better-git-commit-messages/ Bessere Commit Messages]&lt;br /&gt;
* [https://www.freecodecamp.org/news/git-internals-objects-branches-create-repo/ Wie arbeitet Git intern?]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Softwareentwicklung]]&lt;br /&gt;
[[Category:Debian-Tipps]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23167</id>
		<title>Flutter</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23167"/>
		<updated>2026-08-30T05:05:45Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* JSON serialization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
* [https://flutter.dev/ Flutter] ist ein [[Open Source]]-Framework, um native [[Android]]-, [[iOS]]-, [[Linux]]-, [[MacOS]]-  und [[Windows]]- sowie Web-Anwendungen zu bauen.&lt;br /&gt;
** mit [https://docs.fluxbuilder.com/ Fluxbuilder ]&lt;br /&gt;
&lt;br /&gt;
Als Programmiersprache wird [[Dart]] genutzt. Die Benutzerelemente sehen zwar aus wie native Elemente; sie werden aber auf Pixelbasis von den Flutter-Komponenten selbst errechnet.&lt;br /&gt;
&lt;br /&gt;
== Projektstruktur ==&lt;br /&gt;
&lt;br /&gt;
Zur grundsätzlichen Struktur eines Dart-Projekts (package) siehe&lt;br /&gt;
* https://dart.dev/tools/pub/create-packages&lt;br /&gt;
* https://dart.dev/tools/pub/package-layout &lt;br /&gt;
&lt;br /&gt;
Ein Package umfasst ein oder mehrere Libraries. Eine Library ist üblicherweise ein Dart-File (Ausnahme: Einbindung anderern [generierter] Dateien mittels &amp;lt;code&amp;gt;part&amp;lt;/code&amp;gt;-Direktive).&lt;br /&gt;
Libraries im lib/-Verzeichnis sind public, wogegen solche im lib/src-Verzeichnis privat sind.&lt;br /&gt;
&lt;br /&gt;
Wenn man Flutter benutzt kann man die Struktur durch&lt;br /&gt;
  flutter create&lt;br /&gt;
erzeugen lassen.&lt;br /&gt;
&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
=== State Management ===&lt;br /&gt;
&lt;br /&gt;
Das State Management ist ähnlich demjenigen von [[React]] und [[React Native]], allerdings klassenbasiert. Die neueren funktionsbasierten Hooks (useXXX) aus der React-Welt gibt es in Flutter nicht. Dafür gibt es viele ähnliche App-State-Management-Libraries, teilweise Übertragungen aus der React-Welt wie [[Redux]] und [[MobX]].&lt;br /&gt;
&lt;br /&gt;
Das State-Management erfolgt (ohne Library-Ergänzung) mit &lt;br /&gt;
* StatefulWidget oder&lt;br /&gt;
* InheritedWidget.&lt;br /&gt;
&lt;br /&gt;
Man kann sich [https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1 für eine App drei Schichten] vorstellen:&lt;br /&gt;
* UI (möglichst keine Logik, keine veränderbaren Daten)&lt;br /&gt;
* App State-Management (nur Logik und Daten)&lt;br /&gt;
* Business Logic (nur Logik und Daten, Persistenz, Netzwerk-Zugriff ...)&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1&lt;br /&gt;
* BLoC&lt;br /&gt;
* GetIt&lt;br /&gt;
&lt;br /&gt;
=== immutable state ===&lt;br /&gt;
&lt;br /&gt;
Benütze so oft als möglich &amp;quot;final&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
== Deployment ==&lt;br /&gt;
&lt;br /&gt;
=== Deployment einer Linux-Desktop-Anwendung ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://fastforge.dev/getting-started fastforge] kann man u.a. .deb-Pakete erstellen.&lt;br /&gt;
* Für make_config.yaml siehe https://github.com/fastforgedev/fastforge/blob/main/packages/flutter_app_packager/lib/src/makers/deb/make_deb_config.dart&lt;br /&gt;
&lt;br /&gt;
Mit [https://pub.dev/documentation/flutter_build_debian/latest/ flutter_build_debian] kann man sich ein .deb-Paket zur Installation auf Debian/Ubuntu/Derivaten erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://docs.flutter.dev/platform-integration/linux/building&lt;br /&gt;
* https://medium.com/@fluttergems/packaging-and-distributing-flutter-desktop-apps-the-missing-guide-part-3-linux-24ef8d30a5b4&lt;br /&gt;
* https://pub.dev/packages/fastforge&lt;br /&gt;
** https://fastforge.dev/&lt;br /&gt;
&lt;br /&gt;
== Besonderheiten ==&lt;br /&gt;
&lt;br /&gt;
=== Dateizugriff auf Media-Dateien beschränkt ===&lt;br /&gt;
&lt;br /&gt;
Beim Auflisten des Inhalts eines Verzeichnisses erscheinen Dateien nicht. Das liegt daran, dass standardmäßig unter [[Android]] keine Berechtigungen erlaubt sind, andere Dateien als Media-Dateien (JPEG, PDF etc) zu lesen.&lt;br /&gt;
&lt;br /&gt;
Man muss die Berechtigungen sowohl in die Manifest.xml eintragen als auch vom Benutzer anfordern. Siehe Permission.request in plugin permission_handler.&lt;br /&gt;
In Frage kommen insbesondere:&lt;br /&gt;
* READ_MEDIA_IMAGES&lt;br /&gt;
* READ_MEDIA_VIDEO&lt;br /&gt;
* READ_MEDIA_AUDIO&lt;br /&gt;
oder&lt;br /&gt;
* [https://developer.android.com/training/data-storage/manage-all-files MANAGE_EXTERNAL_STORAGE]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/dart-lang/sdk/issues/44848&lt;br /&gt;
&lt;br /&gt;
=== JSON ===&lt;br /&gt;
&lt;br /&gt;
==== JSON serialization ====&lt;br /&gt;
&lt;br /&gt;
Dart hilft beim Einpacken von Daten in JSON und dem Auspacken. Allerdings ist es nicht [[JavaScript]] oder [[TypeScript]], das ein first-class-Handling von [[JSON]] ermöglichen.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Libraries sind&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/dart_mappable dart_mappable] vom Author von [[Jaspr]]&lt;br /&gt;
* json_serializable&lt;br /&gt;
* built_value&lt;br /&gt;
* deep_pick&lt;br /&gt;
* [https://pub.dev/packages/equatable equatable]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://codewithandrea.com/articles/parse-json-dart/&lt;br /&gt;
&lt;br /&gt;
==== Weitere Libraries für Behandlung von JSON in Dart/Flutter ====&lt;br /&gt;
Weitere hilfreiche Libraries mit JSON&lt;br /&gt;
* [https://pub.dev/packages/json_path json_path]&lt;br /&gt;
* [https://pub.dev/packages/rfc_6901 rfc_6901 - JSONPointer Implementierung] - kann JSON-Strukturen bearbeiten&lt;br /&gt;
* [https://pub.dev/packages/flutter_json_view flutter_json_view] - kann JSON-Strukturen anzeigen&lt;br /&gt;
&lt;br /&gt;
== Libraries ==&lt;br /&gt;
&lt;br /&gt;
=== AppState-Libraries ===&lt;br /&gt;
&lt;br /&gt;
Sehr einfache AppState-Libraries sind&lt;br /&gt;
&lt;br /&gt;
*  get_it und&lt;br /&gt;
*  watch_it&lt;br /&gt;
&lt;br /&gt;
=== UI-Libraries ===&lt;br /&gt;
&lt;br /&gt;
* https://forui.dev/docs&lt;br /&gt;
* https://flutter-shadcn-ui.mariuti.com/&lt;br /&gt;
&lt;br /&gt;
=== Datenbank ===&lt;br /&gt;
&lt;br /&gt;
==== SurrealDB ====&lt;br /&gt;
&lt;br /&gt;
[[SurrealDB]] kann mit dem Package [https://github.com/duhanbalci/surrealdb_flutter surrealdb von Duhanbalci] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
===== Problem mit Websocket-Subprotokoll =====&lt;br /&gt;
Stand Jan. 2025 gibt es noch ein Problem mit einem &amp;quot;Subprotokoll&amp;quot; der Websocket-Schnittstelle. Näheres dazu unter dem [https://github.com/duhanbalci/surrealdb_flutter/issues/26 (allerdings geschlossenen) Issue auf GitHub].&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
* Couchbase Lite &lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_dart] - alle Plattformen außer Web&lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_flutter] nur für Android&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/documentation/wilt/latest/wilt/Wilt-class.html Wilt] - CouchDB client for server and flutter-based mobile&lt;br /&gt;
* [https://pub.dev/packages/sporran Sporran] basiert auf Wilt, kann aber auch lokal arbeiten und wie [[PouchDB]] mit einer entfernten Instanz synchronisieren. Wohl nur für Web-Plattform.&lt;br /&gt;
&lt;br /&gt;
==== Weitere Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[Sembast]]&lt;br /&gt;
* sqflite - SQLLite für Flutter&lt;br /&gt;
* Floor - basiert auf sqflite&lt;br /&gt;
** https://quashbugs.com/blog/exploring-flutters-floor-library-for-efficient-data-persistence&lt;br /&gt;
* Hive&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Offline-First ===&lt;br /&gt;
&lt;br /&gt;
Insbesondere mobile Apps müssen damit zurechtkommen, dass Datenänderungen nicht sofort zum zentralen Server oder zum Client kommen. Auch dafür gibt &lt;br /&gt;
es Libraries, die helfen, wenn die Datenbank das nicht selbst tut (z.B. bei [[PouchDB]]):&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/fast_sync_hive_dao FastSync]&lt;br /&gt;
** https://pub.dev/packages/fast_sync_client&lt;br /&gt;
* https://code.zeba.academy/offline-apps-flutter-syncing-data-handling-connectivity-issues/ - Anleitung mit Hilfe der lokalen Datenbank [[Sembast]]&lt;br /&gt;
* https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync - Anleitung mit Hilfe von SQLite, Supabase und PowerSync&lt;br /&gt;
* https://flutterdata.dev/&lt;br /&gt;
** https://github.com/flutterdata/flutter_data&lt;br /&gt;
* https://dev.to/anurag_dev/implementing-offline-first-architecture-in-flutter-part-1-local-storage-with-conflict-resolution-4mdl&lt;br /&gt;
* https://www.dhiwise.com/post/navigating-offline-database-in-flutter-a-comprehensive-guide&lt;br /&gt;
* https://pub.dev/packages/offline_sync&lt;br /&gt;
&lt;br /&gt;
== IDE etc. ==&lt;br /&gt;
&lt;br /&gt;
*  https://dartpad.dev/ - einfache Dart/Flutter-Schnipsel ausprobieren&lt;br /&gt;
* Visual Studio Code mit der Flutter-Erweiterung&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/Solido/awesome-flutter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternativen zu Flutter ==&lt;br /&gt;
&lt;br /&gt;
* [[ReactJs]]&lt;br /&gt;
* [[React Native]] &lt;br /&gt;
** Expo&lt;br /&gt;
* [https://pub.dev/packages/jaspr Jaspr] - a web framework for dart, similar to flutter, but renders via HTML/CSS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Softwareentwicklung]] &lt;br /&gt;
[[Category:Android]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23166</id>
		<title>Flutter</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23166"/>
		<updated>2026-08-23T22:27:12Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Deployment einer Linux-Desktop-Anwendung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
* [https://flutter.dev/ Flutter] ist ein [[Open Source]]-Framework, um native [[Android]]-, [[iOS]]-, [[Linux]]-, [[MacOS]]-  und [[Windows]]- sowie Web-Anwendungen zu bauen.&lt;br /&gt;
** mit [https://docs.fluxbuilder.com/ Fluxbuilder ]&lt;br /&gt;
&lt;br /&gt;
Als Programmiersprache wird [[Dart]] genutzt. Die Benutzerelemente sehen zwar aus wie native Elemente; sie werden aber auf Pixelbasis von den Flutter-Komponenten selbst errechnet.&lt;br /&gt;
&lt;br /&gt;
== Projektstruktur ==&lt;br /&gt;
&lt;br /&gt;
Zur grundsätzlichen Struktur eines Dart-Projekts (package) siehe&lt;br /&gt;
* https://dart.dev/tools/pub/create-packages&lt;br /&gt;
* https://dart.dev/tools/pub/package-layout &lt;br /&gt;
&lt;br /&gt;
Ein Package umfasst ein oder mehrere Libraries. Eine Library ist üblicherweise ein Dart-File (Ausnahme: Einbindung anderern [generierter] Dateien mittels &amp;lt;code&amp;gt;part&amp;lt;/code&amp;gt;-Direktive).&lt;br /&gt;
Libraries im lib/-Verzeichnis sind public, wogegen solche im lib/src-Verzeichnis privat sind.&lt;br /&gt;
&lt;br /&gt;
Wenn man Flutter benutzt kann man die Struktur durch&lt;br /&gt;
  flutter create&lt;br /&gt;
erzeugen lassen.&lt;br /&gt;
&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
=== State Management ===&lt;br /&gt;
&lt;br /&gt;
Das State Management ist ähnlich demjenigen von [[React]] und [[React Native]], allerdings klassenbasiert. Die neueren funktionsbasierten Hooks (useXXX) aus der React-Welt gibt es in Flutter nicht. Dafür gibt es viele ähnliche App-State-Management-Libraries, teilweise Übertragungen aus der React-Welt wie [[Redux]] und [[MobX]].&lt;br /&gt;
&lt;br /&gt;
Das State-Management erfolgt (ohne Library-Ergänzung) mit &lt;br /&gt;
* StatefulWidget oder&lt;br /&gt;
* InheritedWidget.&lt;br /&gt;
&lt;br /&gt;
Man kann sich [https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1 für eine App drei Schichten] vorstellen:&lt;br /&gt;
* UI (möglichst keine Logik, keine veränderbaren Daten)&lt;br /&gt;
* App State-Management (nur Logik und Daten)&lt;br /&gt;
* Business Logic (nur Logik und Daten, Persistenz, Netzwerk-Zugriff ...)&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1&lt;br /&gt;
* BLoC&lt;br /&gt;
* GetIt&lt;br /&gt;
&lt;br /&gt;
=== immutable state ===&lt;br /&gt;
&lt;br /&gt;
Benütze so oft als möglich &amp;quot;final&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
== Deployment ==&lt;br /&gt;
&lt;br /&gt;
=== Deployment einer Linux-Desktop-Anwendung ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://fastforge.dev/getting-started fastforge] kann man u.a. .deb-Pakete erstellen.&lt;br /&gt;
* Für make_config.yaml siehe https://github.com/fastforgedev/fastforge/blob/main/packages/flutter_app_packager/lib/src/makers/deb/make_deb_config.dart&lt;br /&gt;
&lt;br /&gt;
Mit [https://pub.dev/documentation/flutter_build_debian/latest/ flutter_build_debian] kann man sich ein .deb-Paket zur Installation auf Debian/Ubuntu/Derivaten erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://docs.flutter.dev/platform-integration/linux/building&lt;br /&gt;
* https://medium.com/@fluttergems/packaging-and-distributing-flutter-desktop-apps-the-missing-guide-part-3-linux-24ef8d30a5b4&lt;br /&gt;
* https://pub.dev/packages/fastforge&lt;br /&gt;
** https://fastforge.dev/&lt;br /&gt;
&lt;br /&gt;
== Besonderheiten ==&lt;br /&gt;
&lt;br /&gt;
=== Dateizugriff auf Media-Dateien beschränkt ===&lt;br /&gt;
&lt;br /&gt;
Beim Auflisten des Inhalts eines Verzeichnisses erscheinen Dateien nicht. Das liegt daran, dass standardmäßig unter [[Android]] keine Berechtigungen erlaubt sind, andere Dateien als Media-Dateien (JPEG, PDF etc) zu lesen.&lt;br /&gt;
&lt;br /&gt;
Man muss die Berechtigungen sowohl in die Manifest.xml eintragen als auch vom Benutzer anfordern. Siehe Permission.request in plugin permission_handler.&lt;br /&gt;
In Frage kommen insbesondere:&lt;br /&gt;
* READ_MEDIA_IMAGES&lt;br /&gt;
* READ_MEDIA_VIDEO&lt;br /&gt;
* READ_MEDIA_AUDIO&lt;br /&gt;
oder&lt;br /&gt;
* [https://developer.android.com/training/data-storage/manage-all-files MANAGE_EXTERNAL_STORAGE]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/dart-lang/sdk/issues/44848&lt;br /&gt;
&lt;br /&gt;
=== JSON ===&lt;br /&gt;
&lt;br /&gt;
==== JSON serialization ====&lt;br /&gt;
&lt;br /&gt;
Dart hilft beim Einpacken von Daten in JSON und dem Auspacken. Allerdings ist es nicht [[JavaScript]] oder [[TypeScript]], das ein first-class-Handling von [[JSON]] ermöglichen.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Libraries sind&lt;br /&gt;
&lt;br /&gt;
* json_serializable&lt;br /&gt;
* built_value&lt;br /&gt;
* deep_pick&lt;br /&gt;
* [https://pub.dev/packages/equatable equatable]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://codewithandrea.com/articles/parse-json-dart/&lt;br /&gt;
&lt;br /&gt;
==== Weitere Libraries für Behandlung von JSON in Dart/Flutter ====&lt;br /&gt;
Weitere hilfreiche Libraries mit JSON&lt;br /&gt;
* [https://pub.dev/packages/json_path json_path]&lt;br /&gt;
* [https://pub.dev/packages/rfc_6901 rfc_6901 - JSONPointer Implementierung] - kann JSON-Strukturen bearbeiten&lt;br /&gt;
* [https://pub.dev/packages/flutter_json_view flutter_json_view] - kann JSON-Strukturen anzeigen&lt;br /&gt;
&lt;br /&gt;
== Libraries ==&lt;br /&gt;
&lt;br /&gt;
=== AppState-Libraries ===&lt;br /&gt;
&lt;br /&gt;
Sehr einfache AppState-Libraries sind&lt;br /&gt;
&lt;br /&gt;
*  get_it und&lt;br /&gt;
*  watch_it&lt;br /&gt;
&lt;br /&gt;
=== UI-Libraries ===&lt;br /&gt;
&lt;br /&gt;
* https://forui.dev/docs&lt;br /&gt;
* https://flutter-shadcn-ui.mariuti.com/&lt;br /&gt;
&lt;br /&gt;
=== Datenbank ===&lt;br /&gt;
&lt;br /&gt;
==== SurrealDB ====&lt;br /&gt;
&lt;br /&gt;
[[SurrealDB]] kann mit dem Package [https://github.com/duhanbalci/surrealdb_flutter surrealdb von Duhanbalci] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
===== Problem mit Websocket-Subprotokoll =====&lt;br /&gt;
Stand Jan. 2025 gibt es noch ein Problem mit einem &amp;quot;Subprotokoll&amp;quot; der Websocket-Schnittstelle. Näheres dazu unter dem [https://github.com/duhanbalci/surrealdb_flutter/issues/26 (allerdings geschlossenen) Issue auf GitHub].&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
* Couchbase Lite &lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_dart] - alle Plattformen außer Web&lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_flutter] nur für Android&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/documentation/wilt/latest/wilt/Wilt-class.html Wilt] - CouchDB client for server and flutter-based mobile&lt;br /&gt;
* [https://pub.dev/packages/sporran Sporran] basiert auf Wilt, kann aber auch lokal arbeiten und wie [[PouchDB]] mit einer entfernten Instanz synchronisieren. Wohl nur für Web-Plattform.&lt;br /&gt;
&lt;br /&gt;
==== Weitere Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[Sembast]]&lt;br /&gt;
* sqflite - SQLLite für Flutter&lt;br /&gt;
* Floor - basiert auf sqflite&lt;br /&gt;
** https://quashbugs.com/blog/exploring-flutters-floor-library-for-efficient-data-persistence&lt;br /&gt;
* Hive&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Offline-First ===&lt;br /&gt;
&lt;br /&gt;
Insbesondere mobile Apps müssen damit zurechtkommen, dass Datenänderungen nicht sofort zum zentralen Server oder zum Client kommen. Auch dafür gibt &lt;br /&gt;
es Libraries, die helfen, wenn die Datenbank das nicht selbst tut (z.B. bei [[PouchDB]]):&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/fast_sync_hive_dao FastSync]&lt;br /&gt;
** https://pub.dev/packages/fast_sync_client&lt;br /&gt;
* https://code.zeba.academy/offline-apps-flutter-syncing-data-handling-connectivity-issues/ - Anleitung mit Hilfe der lokalen Datenbank [[Sembast]]&lt;br /&gt;
* https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync - Anleitung mit Hilfe von SQLite, Supabase und PowerSync&lt;br /&gt;
* https://flutterdata.dev/&lt;br /&gt;
** https://github.com/flutterdata/flutter_data&lt;br /&gt;
* https://dev.to/anurag_dev/implementing-offline-first-architecture-in-flutter-part-1-local-storage-with-conflict-resolution-4mdl&lt;br /&gt;
* https://www.dhiwise.com/post/navigating-offline-database-in-flutter-a-comprehensive-guide&lt;br /&gt;
* https://pub.dev/packages/offline_sync&lt;br /&gt;
&lt;br /&gt;
== IDE etc. ==&lt;br /&gt;
&lt;br /&gt;
*  https://dartpad.dev/ - einfache Dart/Flutter-Schnipsel ausprobieren&lt;br /&gt;
* Visual Studio Code mit der Flutter-Erweiterung&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/Solido/awesome-flutter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternativen zu Flutter ==&lt;br /&gt;
&lt;br /&gt;
* [[ReactJs]]&lt;br /&gt;
* [[React Native]] &lt;br /&gt;
** Expo&lt;br /&gt;
* [https://pub.dev/packages/jaspr Jaspr] - a web framework for dart, similar to flutter, but renders via HTML/CSS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Softwareentwicklung]] &lt;br /&gt;
[[Category:Android]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23165</id>
		<title>Flutter</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Flutter&amp;diff=23165"/>
		<updated>2026-08-23T21:05:53Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Deployment einer Linux-Desktop-Anwendung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
* [https://flutter.dev/ Flutter] ist ein [[Open Source]]-Framework, um native [[Android]]-, [[iOS]]-, [[Linux]]-, [[MacOS]]-  und [[Windows]]- sowie Web-Anwendungen zu bauen.&lt;br /&gt;
** mit [https://docs.fluxbuilder.com/ Fluxbuilder ]&lt;br /&gt;
&lt;br /&gt;
Als Programmiersprache wird [[Dart]] genutzt. Die Benutzerelemente sehen zwar aus wie native Elemente; sie werden aber auf Pixelbasis von den Flutter-Komponenten selbst errechnet.&lt;br /&gt;
&lt;br /&gt;
== Projektstruktur ==&lt;br /&gt;
&lt;br /&gt;
Zur grundsätzlichen Struktur eines Dart-Projekts (package) siehe&lt;br /&gt;
* https://dart.dev/tools/pub/create-packages&lt;br /&gt;
* https://dart.dev/tools/pub/package-layout &lt;br /&gt;
&lt;br /&gt;
Ein Package umfasst ein oder mehrere Libraries. Eine Library ist üblicherweise ein Dart-File (Ausnahme: Einbindung anderern [generierter] Dateien mittels &amp;lt;code&amp;gt;part&amp;lt;/code&amp;gt;-Direktive).&lt;br /&gt;
Libraries im lib/-Verzeichnis sind public, wogegen solche im lib/src-Verzeichnis privat sind.&lt;br /&gt;
&lt;br /&gt;
Wenn man Flutter benutzt kann man die Struktur durch&lt;br /&gt;
  flutter create&lt;br /&gt;
erzeugen lassen.&lt;br /&gt;
&lt;br /&gt;
== Programmierparadigmen ==&lt;br /&gt;
=== State Management ===&lt;br /&gt;
&lt;br /&gt;
Das State Management ist ähnlich demjenigen von [[React]] und [[React Native]], allerdings klassenbasiert. Die neueren funktionsbasierten Hooks (useXXX) aus der React-Welt gibt es in Flutter nicht. Dafür gibt es viele ähnliche App-State-Management-Libraries, teilweise Übertragungen aus der React-Welt wie [[Redux]] und [[MobX]].&lt;br /&gt;
&lt;br /&gt;
Das State-Management erfolgt (ohne Library-Ergänzung) mit &lt;br /&gt;
* StatefulWidget oder&lt;br /&gt;
* InheritedWidget.&lt;br /&gt;
&lt;br /&gt;
Man kann sich [https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1 für eine App drei Schichten] vorstellen:&lt;br /&gt;
* UI (möglichst keine Logik, keine veränderbaren Daten)&lt;br /&gt;
* App State-Management (nur Logik und Daten)&lt;br /&gt;
* Business Logic (nur Logik und Daten, Persistenz, Netzwerk-Zugriff ...)&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://suragch.medium.com/flutter-state-management-for-minimalists-4c71a2f2f0c1&lt;br /&gt;
* BLoC&lt;br /&gt;
* GetIt&lt;br /&gt;
&lt;br /&gt;
=== immutable state ===&lt;br /&gt;
&lt;br /&gt;
Benütze so oft als möglich &amp;quot;final&amp;quot;!&lt;br /&gt;
&lt;br /&gt;
== Deployment ==&lt;br /&gt;
&lt;br /&gt;
=== Deployment einer Linux-Desktop-Anwendung ===&lt;br /&gt;
&lt;br /&gt;
Mit [https://pub.dev/documentation/flutter_build_debian/latest/ flutter_build_debian] kann man sich ein .deb-Paket zur Installation auf Debian/Ubuntu/Derivaten erzeugen.&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
* https://docs.flutter.dev/platform-integration/linux/building&lt;br /&gt;
* https://medium.com/@fluttergems/packaging-and-distributing-flutter-desktop-apps-the-missing-guide-part-3-linux-24ef8d30a5b4&lt;br /&gt;
* https://pub.dev/packages/fastforge&lt;br /&gt;
** https://fastforge.dev/&lt;br /&gt;
&lt;br /&gt;
== Besonderheiten ==&lt;br /&gt;
&lt;br /&gt;
=== Dateizugriff auf Media-Dateien beschränkt ===&lt;br /&gt;
&lt;br /&gt;
Beim Auflisten des Inhalts eines Verzeichnisses erscheinen Dateien nicht. Das liegt daran, dass standardmäßig unter [[Android]] keine Berechtigungen erlaubt sind, andere Dateien als Media-Dateien (JPEG, PDF etc) zu lesen.&lt;br /&gt;
&lt;br /&gt;
Man muss die Berechtigungen sowohl in die Manifest.xml eintragen als auch vom Benutzer anfordern. Siehe Permission.request in plugin permission_handler.&lt;br /&gt;
In Frage kommen insbesondere:&lt;br /&gt;
* READ_MEDIA_IMAGES&lt;br /&gt;
* READ_MEDIA_VIDEO&lt;br /&gt;
* READ_MEDIA_AUDIO&lt;br /&gt;
oder&lt;br /&gt;
* [https://developer.android.com/training/data-storage/manage-all-files MANAGE_EXTERNAL_STORAGE]&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://github.com/dart-lang/sdk/issues/44848&lt;br /&gt;
&lt;br /&gt;
=== JSON ===&lt;br /&gt;
&lt;br /&gt;
==== JSON serialization ====&lt;br /&gt;
&lt;br /&gt;
Dart hilft beim Einpacken von Daten in JSON und dem Auspacken. Allerdings ist es nicht [[JavaScript]] oder [[TypeScript]], das ein first-class-Handling von [[JSON]] ermöglichen.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Libraries sind&lt;br /&gt;
&lt;br /&gt;
* json_serializable&lt;br /&gt;
* built_value&lt;br /&gt;
* deep_pick&lt;br /&gt;
* [https://pub.dev/packages/equatable equatable]&lt;br /&gt;
&lt;br /&gt;
Siehe auch &lt;br /&gt;
* https://codewithandrea.com/articles/parse-json-dart/&lt;br /&gt;
&lt;br /&gt;
==== Weitere Libraries für Behandlung von JSON in Dart/Flutter ====&lt;br /&gt;
Weitere hilfreiche Libraries mit JSON&lt;br /&gt;
* [https://pub.dev/packages/json_path json_path]&lt;br /&gt;
* [https://pub.dev/packages/rfc_6901 rfc_6901 - JSONPointer Implementierung] - kann JSON-Strukturen bearbeiten&lt;br /&gt;
* [https://pub.dev/packages/flutter_json_view flutter_json_view] - kann JSON-Strukturen anzeigen&lt;br /&gt;
&lt;br /&gt;
== Libraries ==&lt;br /&gt;
&lt;br /&gt;
=== AppState-Libraries ===&lt;br /&gt;
&lt;br /&gt;
Sehr einfache AppState-Libraries sind&lt;br /&gt;
&lt;br /&gt;
*  get_it und&lt;br /&gt;
*  watch_it&lt;br /&gt;
&lt;br /&gt;
=== UI-Libraries ===&lt;br /&gt;
&lt;br /&gt;
* https://forui.dev/docs&lt;br /&gt;
* https://flutter-shadcn-ui.mariuti.com/&lt;br /&gt;
&lt;br /&gt;
=== Datenbank ===&lt;br /&gt;
&lt;br /&gt;
==== SurrealDB ====&lt;br /&gt;
&lt;br /&gt;
[[SurrealDB]] kann mit dem Package [https://github.com/duhanbalci/surrealdb_flutter surrealdb von Duhanbalci] genutzt werden.&lt;br /&gt;
&lt;br /&gt;
===== Problem mit Websocket-Subprotokoll =====&lt;br /&gt;
Stand Jan. 2025 gibt es noch ein Problem mit einem &amp;quot;Subprotokoll&amp;quot; der Websocket-Schnittstelle. Näheres dazu unter dem [https://github.com/duhanbalci/surrealdb_flutter/issues/26 (allerdings geschlossenen) Issue auf GitHub].&lt;br /&gt;
&lt;br /&gt;
==== CouchDB ====&lt;br /&gt;
&lt;br /&gt;
* Couchbase Lite &lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_dart] - alle Plattformen außer Web&lt;br /&gt;
** [https://pub.dev/packages/cbl_flutter cbl_flutter] nur für Android&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/documentation/wilt/latest/wilt/Wilt-class.html Wilt] - CouchDB client for server and flutter-based mobile&lt;br /&gt;
* [https://pub.dev/packages/sporran Sporran] basiert auf Wilt, kann aber auch lokal arbeiten und wie [[PouchDB]] mit einer entfernten Instanz synchronisieren. Wohl nur für Web-Plattform.&lt;br /&gt;
&lt;br /&gt;
==== Weitere Datenbanken ====&lt;br /&gt;
&lt;br /&gt;
* [[Sembast]]&lt;br /&gt;
* sqflite - SQLLite für Flutter&lt;br /&gt;
* Floor - basiert auf sqflite&lt;br /&gt;
** https://quashbugs.com/blog/exploring-flutters-floor-library-for-efficient-data-persistence&lt;br /&gt;
* Hive&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Offline-First ===&lt;br /&gt;
&lt;br /&gt;
Insbesondere mobile Apps müssen damit zurechtkommen, dass Datenänderungen nicht sofort zum zentralen Server oder zum Client kommen. Auch dafür gibt &lt;br /&gt;
es Libraries, die helfen, wenn die Datenbank das nicht selbst tut (z.B. bei [[PouchDB]]):&lt;br /&gt;
&lt;br /&gt;
* [https://pub.dev/packages/fast_sync_hive_dao FastSync]&lt;br /&gt;
** https://pub.dev/packages/fast_sync_client&lt;br /&gt;
* https://code.zeba.academy/offline-apps-flutter-syncing-data-handling-connectivity-issues/ - Anleitung mit Hilfe der lokalen Datenbank [[Sembast]]&lt;br /&gt;
* https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync - Anleitung mit Hilfe von SQLite, Supabase und PowerSync&lt;br /&gt;
* https://flutterdata.dev/&lt;br /&gt;
** https://github.com/flutterdata/flutter_data&lt;br /&gt;
* https://dev.to/anurag_dev/implementing-offline-first-architecture-in-flutter-part-1-local-storage-with-conflict-resolution-4mdl&lt;br /&gt;
* https://www.dhiwise.com/post/navigating-offline-database-in-flutter-a-comprehensive-guide&lt;br /&gt;
* https://pub.dev/packages/offline_sync&lt;br /&gt;
&lt;br /&gt;
== IDE etc. ==&lt;br /&gt;
&lt;br /&gt;
*  https://dartpad.dev/ - einfache Dart/Flutter-Schnipsel ausprobieren&lt;br /&gt;
* Visual Studio Code mit der Flutter-Erweiterung&lt;br /&gt;
&lt;br /&gt;
== Weiterführendes ==&lt;br /&gt;
&lt;br /&gt;
Siehe&lt;br /&gt;
* https://github.com/Solido/awesome-flutter&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alternativen zu Flutter ==&lt;br /&gt;
&lt;br /&gt;
* [[ReactJs]]&lt;br /&gt;
* [[React Native]] &lt;br /&gt;
** Expo&lt;br /&gt;
* [https://pub.dev/packages/jaspr Jaspr] - a web framework for dart, similar to flutter, but renders via HTML/CSS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Category:Softwareentwicklung]] &lt;br /&gt;
[[Category:Android]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23164</id>
		<title>Drucken</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23164"/>
		<updated>2026-08-22T18:56:21Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Seite auf mehrere Seiten verteilen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeines ==&lt;br /&gt;
&lt;br /&gt;
* Für Linux-Drucktipps siehe [[Linux#Drucken]]&lt;br /&gt;
* Für Windows-Drucktipps siehe [[Windows#Drucken/PDFs]]&lt;br /&gt;
* Siehe auch [[Programmierprojekte#PDF-Maschine]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDF anzeigen ==&lt;br /&gt;
&lt;br /&gt;
Das Anzeigen von PDFs können viele Programme, u.a. Okular.&lt;br /&gt;
&lt;br /&gt;
=== PDF-Formulare unter Linux ausfüllen ===&lt;br /&gt;
&lt;br /&gt;
Die kostenlose Version des [https://code-industry.net/free-pdf-editor/ Master PDF Editors] ermöglicht auch das Ausfüllen von PDF-Formularen, die JavaScript benützen. Diese können auch als Formular gespeichert werden.&lt;br /&gt;
&lt;br /&gt;
Diesen Funktionsumfang beherrscht auch der kostenlose  [https://www.foxitsoftware.com/de/pdf-reader/ Foxit PDF Reader]. Zur Installation muss man die auf der Webseite angebotene  tar.gz-Datei herunterladen und entpacken. Anschließend kann man das entpackte Setup-Skript als normaler Benutzer starten. Allerdings stürzt er unter Ubuntu 20.04 häufiger ab oder friert ein (Stand: September 2020).&lt;br /&gt;
&lt;br /&gt;
Der [[Chromium]]-Webbrowser ermöglicht ebenfalls das Ausfüllen der PDF-Formulare. Sie können auch ausgedruckt oder als (abgeschlossenes) PDF gespeichert werden. Das Abspeichern als (wiederverwendbares) PDF-Formular (z.B. zum späteren Weiterbearbeiten) ist dagegen nicht möglich.&lt;br /&gt;
&lt;br /&gt;
=== PDFs mit Ebenen / Layers ===&lt;br /&gt;
&lt;br /&gt;
* Evince kann wirklich Ebenen darstellen und drucken. Dazu den Knopf unten rechts in der linken Seitenleiste klicken.&lt;br /&gt;
* [http://www.redfelineninja.org.uk/daniel/2020/08/xpdf-is-a-pdf-viewer-for-gnu-linux-that-supports-layers/ Angeblich] kann xpdf auch Layers/Ebenen (z.B. bei Schnittbögen) ein- und ausblenden sowie anschließend ausdrucken. Ich habe dazu aber nichts gefunden.&lt;br /&gt;
&lt;br /&gt;
== PDF erstellen ==&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Windows#Drucken/PDFs]]&lt;br /&gt;
* [[Programmierprojekte#PDF]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bearbeiten von PDFs ===&lt;br /&gt;
&lt;br /&gt;
Mit pdftk kann man z.B. je drei Seiten einer großen PDF in viele kleine PDFs aufteilen:&lt;br /&gt;
  for i in $(seq 1 3 57); do pdftk input.pdf cat $i-$(( i + 2 )) output geteilt$i.pdf; done;&lt;br /&gt;
&lt;br /&gt;
Mit Ghostscript kann man die Dateigröße (und die Scanauflösung) einer zu großen gescannten PDF reduzieren:&amp;lt;ref&amp;gt; Siehe https://opensource.com/article/20/8/reduce-pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
  gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook \&lt;br /&gt;
    -dNOPAUSE -dBATCH -dColorImageResolution=150 \&lt;br /&gt;
    -sOutputFile=OUTPUT.pdf INPUT.pdf&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://pdfbox.apache.org/ Apache PDFBox] - eine [[Java]]-Bibliothek zum Erstellen und Bearbeiten von PDFs. Diese stellt auch Kommandozeilenwerkzeuge zur Verfügung.&lt;br /&gt;
* [https://wiki.ubuntuusers.de/PDF_Mod/ PDFMod]&lt;br /&gt;
* PDFShuffler&amp;lt;ref&amp;gt;Vgl. https://askubuntu.com/questions/221962/how-can-i-extract-a-page-range-a-part-of-a-pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
* [https://wiki.ubuntuusers.de/pdftk/ PDFtk] - ein Kommandozeilentool zum einfachen Bearbeiten von PDF-Dateien.&lt;br /&gt;
&lt;br /&gt;
=== HTML einschließlich CSS nach PDF exportieren ===&lt;br /&gt;
&lt;br /&gt;
==== PDF  mit Chrome/Chromium ====&lt;br /&gt;
Chrome/Chromium bietet die Möglichkeit eine Webseite als PDF zu exportieren:&amp;lt;ref&amp;gt;Vgl. https://superuser.com/questions/592974/how-to-print-to-save-as-pdf-from-a-command-line-with-chrome-or-chromium&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  chromium-browser --headless --print-to-pdf=&amp;quot;/tmp/test.pdf&amp;quot; https://bahn.de&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
  * [https://stackoverflow.com/questions/46077392/additional-options-in-chrome-headless-print-to-pdf Anleitung zum Entfernen der Kopf- und Fußzeilen]&lt;br /&gt;
&lt;br /&gt;
==== CSS-PDF-Renderer ====&lt;br /&gt;
&lt;br /&gt;
CSS Paged Media braucht besondere Renderer, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [https://weasyprint.org/ weasyprint]&lt;br /&gt;
* https://pagedjs.org/&lt;br /&gt;
&lt;br /&gt;
=== PDF signieren ===&lt;br /&gt;
&lt;br /&gt;
Das Versehen von PDFs mit elektronischer Signatur geht z.B. &lt;br /&gt;
* mit [[Javascript]]&lt;br /&gt;
** https://github.com/vbuch/node-signpdf &lt;br /&gt;
*** https://medium.com/caution-your-blast/how-to-digitally-sign-a-pdf-programmatically-using-javascript-nodejs-54194af7bdc3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Windows-Client erstellt PDFs auf einem Linux-Druckserver ===&lt;br /&gt;
&lt;br /&gt;
Um von einem Windows-Client PDFs auf einem Linux-Server zu erstellen geht man folgendermaßen vor:&lt;br /&gt;
==== Einrichten des Linux-Servers ====&lt;br /&gt;
* Einrichten des [[CUPS]]-Daemon z.B. auf einem [[Kubuntu]]-System&lt;br /&gt;
* Installation des virtuellen PDF-Druckers:&lt;br /&gt;
  sudo aptitude install cups-pdf&lt;br /&gt;
* Aufruf der [[CUPS]]-Verwaltungsoberfläche mit http://localhost:631&lt;br /&gt;
** PDF-Drucker publizieren (ggf. muss Passwort angegeben werden)&lt;br /&gt;
&lt;br /&gt;
==== Einrichten des Windows-Clients ====&lt;br /&gt;
* Neuen Netzwerkdrucker hinzufügen&lt;br /&gt;
** Auswahl des PDF-Druckers auf dem Linux-Server&lt;br /&gt;
* Als Druckertreiber auswählen:&lt;br /&gt;
  HP Deskjet 1200 C/PS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Drucken ====&lt;br /&gt;
* Wie gewohnt auf dem Windows-Client drucken&lt;br /&gt;
* Die Datei findet sich auf dem Linux-Server in &lt;br /&gt;
  /var/spool/cups-pdf/ANONYMOUS/&lt;br /&gt;
* Das kann man noch ändern, indem man folgende Datei bearbeitet:&lt;br /&gt;
  /etc/cups/cups-pdf.conf&lt;br /&gt;
&lt;br /&gt;
== PDF umwandeln ==&lt;br /&gt;
&lt;br /&gt;
=== Seite auf mehrere Seiten verteilen ===&lt;br /&gt;
&lt;br /&gt;
* pdfposter&lt;br /&gt;
  pdfposter -pA3 in.pdf out.pdf&lt;br /&gt;
* [https://cade.utah.edu/faqs/how-can-i-print-multiple-pages-per-sheet-in-linux/ psnup]&lt;br /&gt;
&lt;br /&gt;
=== Konvertieren in JPEG ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
&lt;br /&gt;
  gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r600 -sOutputFile=&#039;seite-%00d.jpg&#039; input.pdf&lt;br /&gt;
&lt;br /&gt;
kann man JPEGs aus einer PDF mit einer 600dpi-Auflösung erstellen.&amp;lt;ref&amp;gt;Siehe http://askubuntu.com/questions/100994/convert-pdf-to-image .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hyperlinks in PDFs ==&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.backslash.ch/blog/2006/12/4/Auf-Seiten-im-PDF-direkt-verlinken&lt;br /&gt;
&lt;br /&gt;
== Druckerauswahl ==&lt;br /&gt;
&lt;br /&gt;
=== Kriterien ===&lt;br /&gt;
&lt;br /&gt;
Wichtig sind die Gesamtkosten. Häufig werden die Drucker vom Hersteller günstig abgegeben; dieser holt sich das Geld jedoch über den Verkauf von Verbrauchsmitteln, insbesondere Tintenpatronen. Es gibt inzwischen Drucker mit Tintentanks statt -patronen, die deutlich günstiger im Dauerbetrieb sind, z.B. von&lt;br /&gt;
* Canon, dort die GXXXXX-Serie (PIXMA G für Privatanwender, MAXIFY G für Büro),&lt;br /&gt;
* Epson, dort Ecotank bzw. ET-XXXX genannt,&lt;br /&gt;
* HP, dort Smart Tank genannt.&lt;br /&gt;
* Brother, dort wohl die (wohl schlecht lieferbare) MFC T-Serie, z.B. der MFC-T920DW.&lt;br /&gt;
&lt;br /&gt;
Für den Einsatz unter dem jeweiligen Betriebssystem müssen Druckertreiber vorliegen. Aktuell sollte man also schauen, dass es Treiber für&lt;br /&gt;
* [[Linux-Tipps#Drucken | Linux]]&lt;br /&gt;
* [[Windows 7]] &lt;br /&gt;
* [[Windows 8]]&lt;br /&gt;
gibt.&lt;br /&gt;
&lt;br /&gt;
Multifunktionsgeräte, die auch Scannen und Kopieren können, sind platzsparend. Sinnvoll ist dafür ein Mehrblatteinzug (ADF), am besten beidseitig (DADF) und für mindestens 10, besser 30 Blatt.&lt;br /&gt;
&lt;br /&gt;
Beidseitiges Scannen (DADF) ist nicht gleich beidseitiges Drucken (Duplex). Man muss bei jedem Gerät extra schauen.&lt;br /&gt;
&lt;br /&gt;
Schließlich ist noch entscheidend, ob der normale DIN A4-Druck reicht, oder größere Formate notwendig sind.&lt;br /&gt;
&lt;br /&gt;
Für Heimanwender ist wohl Farbdruck notwendig.&lt;br /&gt;
&lt;br /&gt;
Bei Heimanwendern ohne separates Büro könnten Laserdrucker wegen der nicht gänzlich zu vermeidenden Emissionen nicht in Betracht kommen.&lt;br /&gt;
&lt;br /&gt;
Die Größe des Geräts muss dem vorhandenen Raum angepasst sein. Z.B. maximale Tiefe 47 cm, maximale Höhe 32 cm.&lt;br /&gt;
&lt;br /&gt;
=== Druckermodelle ===&lt;br /&gt;
&lt;br /&gt;
==== Allgemein ====&lt;br /&gt;
* [http://www.druckerchannel.de/bestenliste.php?tabelle=multitinte_office&amp;amp;fillS druckerchannel - Bestenliste]&lt;br /&gt;
* [https://www.idealo.de/preisvergleich/ProductCategory/3309F1261405-1261438-1432803-2372356-7566625-103428795.html Drucker mit Tintentank und doppelseitigem Scannen]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7050 bietet &lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A4&lt;br /&gt;
** Papierzufuhr bis 600 Blatt (alle Kassetten zusammen, max. 250 Blatt in einer Kassette)&lt;br /&gt;
** Für Linux-Support braucht man evtl. das [https://sane-project.gitlab.io/website/lists/sane-backends-external.html canon_pixma]-Backend zum Scannen.&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7040 scheint sich nicht vom GX7050 zu unterscheiden.&lt;br /&gt;
&lt;br /&gt;
==== Epson ====&lt;br /&gt;
&lt;br /&gt;
* Der Epson Ecotank ET-M16680 bietet&lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A3&lt;br /&gt;
** Papierzufuhr bis 250 Blatt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die [http://assets.epson-europe.com/de/WorkForce/ &amp;quot;Workforce Pro&amp;quot;-Reihe] ist für den intensiveren Büro-Einsatz gedacht.&lt;br /&gt;
&lt;br /&gt;
Diese unterscheiden sich in die &amp;quot;Professional&amp;quot;-Geräte und die &amp;quot;Microbusiness&amp;quot;-Geräte:&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10830 &#039;&#039;&#039;WP-4525 DNF&#039;&#039;&#039;]: Professional, USB, LAN, Duplexeinzug, Duplexdruck, 2,4 W Standby, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 310 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10831 &#039;&#039;&#039;WP-4535 DWF&#039;&#039;&#039;]: Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 350 € (UVP)]&lt;br /&gt;
*** [http://www.druckerchannel.de/artikel.php?ID=3183&amp;amp;t=test_buero_tintenmultifunktionsgeraete_gegen_laser_aio Vergleich mit HP OfficeJet 8600 Plus]&lt;br /&gt;
** &#039;&#039;&#039;WP-4545 DTWF&#039;&#039;&#039;:Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 580 Blatt, [http://assets.epson-europe.com/de/WorkForce/ 400 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10833 &#039;&#039;&#039;WP-4595 DNF&#039;&#039;&#039;]: USB, LAN, Postscript, Duplexeinzug, Duplexdruck, 250 + 80 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;,  [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/overview/10833 610 € (UVP)]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: WP-4015 DN, WP-4515 DN, WP-4025 DW&lt;br /&gt;
Kein Scanner: WP-4095 DN&lt;br /&gt;
&lt;br /&gt;
==== Brother ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1/s_detailType/specs &#039;&#039;&#039;MFC-J6910DW&#039;&#039;&#039;], USB, LAN, WLAN,  Duplexeinzug (bis A4), Duplexdruck (bis A3), 2 x 250 Blatt, 540x 331 x &#039;&#039;489&#039;&#039;, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1 605 € (UVP)].&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: DCP-J925DW, DCP-9010CN, DCP-9055CDN, MFC-990CW, MFC-9120CN, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/32140/s_product/MFC9320CWG1/s_detailType/specs MFC-9320CW] &lt;br /&gt;
  &lt;br /&gt;
Kein Mehrseiteneinzug: MFC-J825DW&lt;br /&gt;
&lt;br /&gt;
==== Hewlett-Packard ====&lt;br /&gt;
Bei HP gibt es sowohl eine &amp;quot;OfficeJet&amp;quot; als auch eine &amp;quot;OfficeJet Pro&amp;quot;-Reihe.&lt;br /&gt;
&lt;br /&gt;
* [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 HP OfficeJet Pro 8600 Plus],USB, LAN, WLAN, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 Duplexeinzug], Duplexdruck, [http://hplipopensource.com/hplip-web/models/officejet/officejet_pro_8600.html offizielle Linux-Unterstützung], 250 Blatt, 494 x &#039;&#039;645,5&#039;&#039; (412) x 315, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 280 € (UVP)]&lt;br /&gt;
** [http://www.druckerchannel.de/forum.php?seite=beitrag&amp;amp;ID=230409&amp;amp;t=canon_mx895_vs_hp_8600_pro Vergleich mit Canon MX895]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: HP OfficeJet Pro 8600, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323624 HP OfficeJet 6700 Premium]&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Linux-Tipps#HP-Drucker]]&lt;br /&gt;
&lt;br /&gt;
==== Lexmark ====&lt;br /&gt;
&lt;br /&gt;
* [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product OfficeEdge Pro5500], Duplexeinzug (single pass), Duplexprint, 12 W &amp;quot;Bereit&amp;quot;, 300 x &#039;&#039;500&#039;&#039; x 427, 300 + 150 (+550) Blatt, [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product offiziell Linux-unterstützt] [http://www.idealo.de/preisvergleich/OffersOfProduct/3287777_-officeedge-pro5500-lexmark.html#testberichte 200 €]&lt;br /&gt;
** Nachteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html Hoher Stromverbrauch im Standby von 5 W]&lt;br /&gt;
** Vorteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html besserer Fotodruck als HP OfficeJet 8600 Plus]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX885/ Canon PIXMA MX885], USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/615303 rund 200 € im EU-Ausland]&lt;br /&gt;
** läuft angeblich auch [http://community.linuxmint.com/tutorial/view/493 mit Linux]&lt;br /&gt;
** allerdings wird auch von [http://www.amazon.de/review/R24TUIPZK8GXE8 schlechten Erfahrungen mit Linux-Anbindung] berichtet&lt;br /&gt;
* Canon MX892, Duplexeinzug, Duplexdruck&lt;br /&gt;
* Canon MX895, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/744060 150 €]&lt;br /&gt;
** Vorteil: guter Fotodruck&lt;br /&gt;
** Nachteile: hohe Druckkosten, kleine Patronen&lt;br /&gt;
&lt;br /&gt;
Ohne Duplexeinzug: [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG3250/ PIXMA MG3250], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX515/ PIXMA MX515], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5150/ PIXMA MG5150], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5350/ PIXMA MG5350]  &lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Ubuntu]]&lt;br /&gt;
[[Category:Windows]]&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Drucken]]&lt;br /&gt;
[[Category:Hardware]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23163</id>
		<title>Drucken</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23163"/>
		<updated>2026-08-22T18:55:40Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* Seite auf mehrere Seiten verteilen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeines ==&lt;br /&gt;
&lt;br /&gt;
* Für Linux-Drucktipps siehe [[Linux#Drucken]]&lt;br /&gt;
* Für Windows-Drucktipps siehe [[Windows#Drucken/PDFs]]&lt;br /&gt;
* Siehe auch [[Programmierprojekte#PDF-Maschine]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDF anzeigen ==&lt;br /&gt;
&lt;br /&gt;
Das Anzeigen von PDFs können viele Programme, u.a. Okular.&lt;br /&gt;
&lt;br /&gt;
=== PDF-Formulare unter Linux ausfüllen ===&lt;br /&gt;
&lt;br /&gt;
Die kostenlose Version des [https://code-industry.net/free-pdf-editor/ Master PDF Editors] ermöglicht auch das Ausfüllen von PDF-Formularen, die JavaScript benützen. Diese können auch als Formular gespeichert werden.&lt;br /&gt;
&lt;br /&gt;
Diesen Funktionsumfang beherrscht auch der kostenlose  [https://www.foxitsoftware.com/de/pdf-reader/ Foxit PDF Reader]. Zur Installation muss man die auf der Webseite angebotene  tar.gz-Datei herunterladen und entpacken. Anschließend kann man das entpackte Setup-Skript als normaler Benutzer starten. Allerdings stürzt er unter Ubuntu 20.04 häufiger ab oder friert ein (Stand: September 2020).&lt;br /&gt;
&lt;br /&gt;
Der [[Chromium]]-Webbrowser ermöglicht ebenfalls das Ausfüllen der PDF-Formulare. Sie können auch ausgedruckt oder als (abgeschlossenes) PDF gespeichert werden. Das Abspeichern als (wiederverwendbares) PDF-Formular (z.B. zum späteren Weiterbearbeiten) ist dagegen nicht möglich.&lt;br /&gt;
&lt;br /&gt;
=== PDFs mit Ebenen / Layers ===&lt;br /&gt;
&lt;br /&gt;
* Evince kann wirklich Ebenen darstellen und drucken. Dazu den Knopf unten rechts in der linken Seitenleiste klicken.&lt;br /&gt;
* [http://www.redfelineninja.org.uk/daniel/2020/08/xpdf-is-a-pdf-viewer-for-gnu-linux-that-supports-layers/ Angeblich] kann xpdf auch Layers/Ebenen (z.B. bei Schnittbögen) ein- und ausblenden sowie anschließend ausdrucken. Ich habe dazu aber nichts gefunden.&lt;br /&gt;
&lt;br /&gt;
== PDF erstellen ==&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Windows#Drucken/PDFs]]&lt;br /&gt;
* [[Programmierprojekte#PDF]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bearbeiten von PDFs ===&lt;br /&gt;
&lt;br /&gt;
Mit pdftk kann man z.B. je drei Seiten einer großen PDF in viele kleine PDFs aufteilen:&lt;br /&gt;
  for i in $(seq 1 3 57); do pdftk input.pdf cat $i-$(( i + 2 )) output geteilt$i.pdf; done;&lt;br /&gt;
&lt;br /&gt;
Mit Ghostscript kann man die Dateigröße (und die Scanauflösung) einer zu großen gescannten PDF reduzieren:&amp;lt;ref&amp;gt; Siehe https://opensource.com/article/20/8/reduce-pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
  gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook \&lt;br /&gt;
    -dNOPAUSE -dBATCH -dColorImageResolution=150 \&lt;br /&gt;
    -sOutputFile=OUTPUT.pdf INPUT.pdf&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://pdfbox.apache.org/ Apache PDFBox] - eine [[Java]]-Bibliothek zum Erstellen und Bearbeiten von PDFs. Diese stellt auch Kommandozeilenwerkzeuge zur Verfügung.&lt;br /&gt;
* [https://wiki.ubuntuusers.de/PDF_Mod/ PDFMod]&lt;br /&gt;
* PDFShuffler&amp;lt;ref&amp;gt;Vgl. https://askubuntu.com/questions/221962/how-can-i-extract-a-page-range-a-part-of-a-pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
* [https://wiki.ubuntuusers.de/pdftk/ PDFtk] - ein Kommandozeilentool zum einfachen Bearbeiten von PDF-Dateien.&lt;br /&gt;
&lt;br /&gt;
=== HTML einschließlich CSS nach PDF exportieren ===&lt;br /&gt;
&lt;br /&gt;
==== PDF  mit Chrome/Chromium ====&lt;br /&gt;
Chrome/Chromium bietet die Möglichkeit eine Webseite als PDF zu exportieren:&amp;lt;ref&amp;gt;Vgl. https://superuser.com/questions/592974/how-to-print-to-save-as-pdf-from-a-command-line-with-chrome-or-chromium&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  chromium-browser --headless --print-to-pdf=&amp;quot;/tmp/test.pdf&amp;quot; https://bahn.de&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
  * [https://stackoverflow.com/questions/46077392/additional-options-in-chrome-headless-print-to-pdf Anleitung zum Entfernen der Kopf- und Fußzeilen]&lt;br /&gt;
&lt;br /&gt;
==== CSS-PDF-Renderer ====&lt;br /&gt;
&lt;br /&gt;
CSS Paged Media braucht besondere Renderer, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [https://weasyprint.org/ weasyprint]&lt;br /&gt;
* https://pagedjs.org/&lt;br /&gt;
&lt;br /&gt;
=== PDF signieren ===&lt;br /&gt;
&lt;br /&gt;
Das Versehen von PDFs mit elektronischer Signatur geht z.B. &lt;br /&gt;
* mit [[Javascript]]&lt;br /&gt;
** https://github.com/vbuch/node-signpdf &lt;br /&gt;
*** https://medium.com/caution-your-blast/how-to-digitally-sign-a-pdf-programmatically-using-javascript-nodejs-54194af7bdc3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Windows-Client erstellt PDFs auf einem Linux-Druckserver ===&lt;br /&gt;
&lt;br /&gt;
Um von einem Windows-Client PDFs auf einem Linux-Server zu erstellen geht man folgendermaßen vor:&lt;br /&gt;
==== Einrichten des Linux-Servers ====&lt;br /&gt;
* Einrichten des [[CUPS]]-Daemon z.B. auf einem [[Kubuntu]]-System&lt;br /&gt;
* Installation des virtuellen PDF-Druckers:&lt;br /&gt;
  sudo aptitude install cups-pdf&lt;br /&gt;
* Aufruf der [[CUPS]]-Verwaltungsoberfläche mit http://localhost:631&lt;br /&gt;
** PDF-Drucker publizieren (ggf. muss Passwort angegeben werden)&lt;br /&gt;
&lt;br /&gt;
==== Einrichten des Windows-Clients ====&lt;br /&gt;
* Neuen Netzwerkdrucker hinzufügen&lt;br /&gt;
** Auswahl des PDF-Druckers auf dem Linux-Server&lt;br /&gt;
* Als Druckertreiber auswählen:&lt;br /&gt;
  HP Deskjet 1200 C/PS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Drucken ====&lt;br /&gt;
* Wie gewohnt auf dem Windows-Client drucken&lt;br /&gt;
* Die Datei findet sich auf dem Linux-Server in &lt;br /&gt;
  /var/spool/cups-pdf/ANONYMOUS/&lt;br /&gt;
* Das kann man noch ändern, indem man folgende Datei bearbeitet:&lt;br /&gt;
  /etc/cups/cups-pdf.conf&lt;br /&gt;
&lt;br /&gt;
== PDF umwandeln ==&lt;br /&gt;
&lt;br /&gt;
=== Seite auf mehrere Seiten verteilen ===&lt;br /&gt;
&lt;br /&gt;
* pdfposter&lt;br /&gt;
* [https://cade.utah.edu/faqs/how-can-i-print-multiple-pages-per-sheet-in-linux/ psnup]&lt;br /&gt;
&lt;br /&gt;
=== Konvertieren in JPEG ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
&lt;br /&gt;
  gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r600 -sOutputFile=&#039;seite-%00d.jpg&#039; input.pdf&lt;br /&gt;
&lt;br /&gt;
kann man JPEGs aus einer PDF mit einer 600dpi-Auflösung erstellen.&amp;lt;ref&amp;gt;Siehe http://askubuntu.com/questions/100994/convert-pdf-to-image .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hyperlinks in PDFs ==&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.backslash.ch/blog/2006/12/4/Auf-Seiten-im-PDF-direkt-verlinken&lt;br /&gt;
&lt;br /&gt;
== Druckerauswahl ==&lt;br /&gt;
&lt;br /&gt;
=== Kriterien ===&lt;br /&gt;
&lt;br /&gt;
Wichtig sind die Gesamtkosten. Häufig werden die Drucker vom Hersteller günstig abgegeben; dieser holt sich das Geld jedoch über den Verkauf von Verbrauchsmitteln, insbesondere Tintenpatronen. Es gibt inzwischen Drucker mit Tintentanks statt -patronen, die deutlich günstiger im Dauerbetrieb sind, z.B. von&lt;br /&gt;
* Canon, dort die GXXXXX-Serie (PIXMA G für Privatanwender, MAXIFY G für Büro),&lt;br /&gt;
* Epson, dort Ecotank bzw. ET-XXXX genannt,&lt;br /&gt;
* HP, dort Smart Tank genannt.&lt;br /&gt;
* Brother, dort wohl die (wohl schlecht lieferbare) MFC T-Serie, z.B. der MFC-T920DW.&lt;br /&gt;
&lt;br /&gt;
Für den Einsatz unter dem jeweiligen Betriebssystem müssen Druckertreiber vorliegen. Aktuell sollte man also schauen, dass es Treiber für&lt;br /&gt;
* [[Linux-Tipps#Drucken | Linux]]&lt;br /&gt;
* [[Windows 7]] &lt;br /&gt;
* [[Windows 8]]&lt;br /&gt;
gibt.&lt;br /&gt;
&lt;br /&gt;
Multifunktionsgeräte, die auch Scannen und Kopieren können, sind platzsparend. Sinnvoll ist dafür ein Mehrblatteinzug (ADF), am besten beidseitig (DADF) und für mindestens 10, besser 30 Blatt.&lt;br /&gt;
&lt;br /&gt;
Beidseitiges Scannen (DADF) ist nicht gleich beidseitiges Drucken (Duplex). Man muss bei jedem Gerät extra schauen.&lt;br /&gt;
&lt;br /&gt;
Schließlich ist noch entscheidend, ob der normale DIN A4-Druck reicht, oder größere Formate notwendig sind.&lt;br /&gt;
&lt;br /&gt;
Für Heimanwender ist wohl Farbdruck notwendig.&lt;br /&gt;
&lt;br /&gt;
Bei Heimanwendern ohne separates Büro könnten Laserdrucker wegen der nicht gänzlich zu vermeidenden Emissionen nicht in Betracht kommen.&lt;br /&gt;
&lt;br /&gt;
Die Größe des Geräts muss dem vorhandenen Raum angepasst sein. Z.B. maximale Tiefe 47 cm, maximale Höhe 32 cm.&lt;br /&gt;
&lt;br /&gt;
=== Druckermodelle ===&lt;br /&gt;
&lt;br /&gt;
==== Allgemein ====&lt;br /&gt;
* [http://www.druckerchannel.de/bestenliste.php?tabelle=multitinte_office&amp;amp;fillS druckerchannel - Bestenliste]&lt;br /&gt;
* [https://www.idealo.de/preisvergleich/ProductCategory/3309F1261405-1261438-1432803-2372356-7566625-103428795.html Drucker mit Tintentank und doppelseitigem Scannen]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7050 bietet &lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A4&lt;br /&gt;
** Papierzufuhr bis 600 Blatt (alle Kassetten zusammen, max. 250 Blatt in einer Kassette)&lt;br /&gt;
** Für Linux-Support braucht man evtl. das [https://sane-project.gitlab.io/website/lists/sane-backends-external.html canon_pixma]-Backend zum Scannen.&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7040 scheint sich nicht vom GX7050 zu unterscheiden.&lt;br /&gt;
&lt;br /&gt;
==== Epson ====&lt;br /&gt;
&lt;br /&gt;
* Der Epson Ecotank ET-M16680 bietet&lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A3&lt;br /&gt;
** Papierzufuhr bis 250 Blatt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die [http://assets.epson-europe.com/de/WorkForce/ &amp;quot;Workforce Pro&amp;quot;-Reihe] ist für den intensiveren Büro-Einsatz gedacht.&lt;br /&gt;
&lt;br /&gt;
Diese unterscheiden sich in die &amp;quot;Professional&amp;quot;-Geräte und die &amp;quot;Microbusiness&amp;quot;-Geräte:&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10830 &#039;&#039;&#039;WP-4525 DNF&#039;&#039;&#039;]: Professional, USB, LAN, Duplexeinzug, Duplexdruck, 2,4 W Standby, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 310 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10831 &#039;&#039;&#039;WP-4535 DWF&#039;&#039;&#039;]: Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 350 € (UVP)]&lt;br /&gt;
*** [http://www.druckerchannel.de/artikel.php?ID=3183&amp;amp;t=test_buero_tintenmultifunktionsgeraete_gegen_laser_aio Vergleich mit HP OfficeJet 8600 Plus]&lt;br /&gt;
** &#039;&#039;&#039;WP-4545 DTWF&#039;&#039;&#039;:Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 580 Blatt, [http://assets.epson-europe.com/de/WorkForce/ 400 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10833 &#039;&#039;&#039;WP-4595 DNF&#039;&#039;&#039;]: USB, LAN, Postscript, Duplexeinzug, Duplexdruck, 250 + 80 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;,  [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/overview/10833 610 € (UVP)]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: WP-4015 DN, WP-4515 DN, WP-4025 DW&lt;br /&gt;
Kein Scanner: WP-4095 DN&lt;br /&gt;
&lt;br /&gt;
==== Brother ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1/s_detailType/specs &#039;&#039;&#039;MFC-J6910DW&#039;&#039;&#039;], USB, LAN, WLAN,  Duplexeinzug (bis A4), Duplexdruck (bis A3), 2 x 250 Blatt, 540x 331 x &#039;&#039;489&#039;&#039;, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1 605 € (UVP)].&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: DCP-J925DW, DCP-9010CN, DCP-9055CDN, MFC-990CW, MFC-9120CN, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/32140/s_product/MFC9320CWG1/s_detailType/specs MFC-9320CW] &lt;br /&gt;
  &lt;br /&gt;
Kein Mehrseiteneinzug: MFC-J825DW&lt;br /&gt;
&lt;br /&gt;
==== Hewlett-Packard ====&lt;br /&gt;
Bei HP gibt es sowohl eine &amp;quot;OfficeJet&amp;quot; als auch eine &amp;quot;OfficeJet Pro&amp;quot;-Reihe.&lt;br /&gt;
&lt;br /&gt;
* [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 HP OfficeJet Pro 8600 Plus],USB, LAN, WLAN, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 Duplexeinzug], Duplexdruck, [http://hplipopensource.com/hplip-web/models/officejet/officejet_pro_8600.html offizielle Linux-Unterstützung], 250 Blatt, 494 x &#039;&#039;645,5&#039;&#039; (412) x 315, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 280 € (UVP)]&lt;br /&gt;
** [http://www.druckerchannel.de/forum.php?seite=beitrag&amp;amp;ID=230409&amp;amp;t=canon_mx895_vs_hp_8600_pro Vergleich mit Canon MX895]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: HP OfficeJet Pro 8600, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323624 HP OfficeJet 6700 Premium]&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Linux-Tipps#HP-Drucker]]&lt;br /&gt;
&lt;br /&gt;
==== Lexmark ====&lt;br /&gt;
&lt;br /&gt;
* [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product OfficeEdge Pro5500], Duplexeinzug (single pass), Duplexprint, 12 W &amp;quot;Bereit&amp;quot;, 300 x &#039;&#039;500&#039;&#039; x 427, 300 + 150 (+550) Blatt, [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product offiziell Linux-unterstützt] [http://www.idealo.de/preisvergleich/OffersOfProduct/3287777_-officeedge-pro5500-lexmark.html#testberichte 200 €]&lt;br /&gt;
** Nachteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html Hoher Stromverbrauch im Standby von 5 W]&lt;br /&gt;
** Vorteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html besserer Fotodruck als HP OfficeJet 8600 Plus]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX885/ Canon PIXMA MX885], USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/615303 rund 200 € im EU-Ausland]&lt;br /&gt;
** läuft angeblich auch [http://community.linuxmint.com/tutorial/view/493 mit Linux]&lt;br /&gt;
** allerdings wird auch von [http://www.amazon.de/review/R24TUIPZK8GXE8 schlechten Erfahrungen mit Linux-Anbindung] berichtet&lt;br /&gt;
* Canon MX892, Duplexeinzug, Duplexdruck&lt;br /&gt;
* Canon MX895, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/744060 150 €]&lt;br /&gt;
** Vorteil: guter Fotodruck&lt;br /&gt;
** Nachteile: hohe Druckkosten, kleine Patronen&lt;br /&gt;
&lt;br /&gt;
Ohne Duplexeinzug: [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG3250/ PIXMA MG3250], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX515/ PIXMA MX515], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5150/ PIXMA MG5150], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5350/ PIXMA MG5350]  &lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Ubuntu]]&lt;br /&gt;
[[Category:Windows]]&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Drucken]]&lt;br /&gt;
[[Category:Hardware]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
	<entry>
		<id>https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23162</id>
		<title>Drucken</title>
		<link rel="alternate" type="text/html" href="https://railpulse.de/m_codicatipps/index.php?title=Drucken&amp;diff=23162"/>
		<updated>2026-08-22T06:09:42Z</updated>

		<summary type="html">&lt;p&gt;Codica: /* PDF umwandeln */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Allgemeines ==&lt;br /&gt;
&lt;br /&gt;
* Für Linux-Drucktipps siehe [[Linux#Drucken]]&lt;br /&gt;
* Für Windows-Drucktipps siehe [[Windows#Drucken/PDFs]]&lt;br /&gt;
* Siehe auch [[Programmierprojekte#PDF-Maschine]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PDF anzeigen ==&lt;br /&gt;
&lt;br /&gt;
Das Anzeigen von PDFs können viele Programme, u.a. Okular.&lt;br /&gt;
&lt;br /&gt;
=== PDF-Formulare unter Linux ausfüllen ===&lt;br /&gt;
&lt;br /&gt;
Die kostenlose Version des [https://code-industry.net/free-pdf-editor/ Master PDF Editors] ermöglicht auch das Ausfüllen von PDF-Formularen, die JavaScript benützen. Diese können auch als Formular gespeichert werden.&lt;br /&gt;
&lt;br /&gt;
Diesen Funktionsumfang beherrscht auch der kostenlose  [https://www.foxitsoftware.com/de/pdf-reader/ Foxit PDF Reader]. Zur Installation muss man die auf der Webseite angebotene  tar.gz-Datei herunterladen und entpacken. Anschließend kann man das entpackte Setup-Skript als normaler Benutzer starten. Allerdings stürzt er unter Ubuntu 20.04 häufiger ab oder friert ein (Stand: September 2020).&lt;br /&gt;
&lt;br /&gt;
Der [[Chromium]]-Webbrowser ermöglicht ebenfalls das Ausfüllen der PDF-Formulare. Sie können auch ausgedruckt oder als (abgeschlossenes) PDF gespeichert werden. Das Abspeichern als (wiederverwendbares) PDF-Formular (z.B. zum späteren Weiterbearbeiten) ist dagegen nicht möglich.&lt;br /&gt;
&lt;br /&gt;
=== PDFs mit Ebenen / Layers ===&lt;br /&gt;
&lt;br /&gt;
* Evince kann wirklich Ebenen darstellen und drucken. Dazu den Knopf unten rechts in der linken Seitenleiste klicken.&lt;br /&gt;
* [http://www.redfelineninja.org.uk/daniel/2020/08/xpdf-is-a-pdf-viewer-for-gnu-linux-that-supports-layers/ Angeblich] kann xpdf auch Layers/Ebenen (z.B. bei Schnittbögen) ein- und ausblenden sowie anschließend ausdrucken. Ich habe dazu aber nichts gefunden.&lt;br /&gt;
&lt;br /&gt;
== PDF erstellen ==&lt;br /&gt;
Siehe &lt;br /&gt;
* [[Windows#Drucken/PDFs]]&lt;br /&gt;
* [[Programmierprojekte#PDF]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Bearbeiten von PDFs ===&lt;br /&gt;
&lt;br /&gt;
Mit pdftk kann man z.B. je drei Seiten einer großen PDF in viele kleine PDFs aufteilen:&lt;br /&gt;
  for i in $(seq 1 3 57); do pdftk input.pdf cat $i-$(( i + 2 )) output geteilt$i.pdf; done;&lt;br /&gt;
&lt;br /&gt;
Mit Ghostscript kann man die Dateigröße (und die Scanauflösung) einer zu großen gescannten PDF reduzieren:&amp;lt;ref&amp;gt; Siehe https://opensource.com/article/20/8/reduce-pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
  gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook \&lt;br /&gt;
    -dNOPAUSE -dBATCH -dColorImageResolution=150 \&lt;br /&gt;
    -sOutputFile=OUTPUT.pdf INPUT.pdf&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* [https://pdfbox.apache.org/ Apache PDFBox] - eine [[Java]]-Bibliothek zum Erstellen und Bearbeiten von PDFs. Diese stellt auch Kommandozeilenwerkzeuge zur Verfügung.&lt;br /&gt;
* [https://wiki.ubuntuusers.de/PDF_Mod/ PDFMod]&lt;br /&gt;
* PDFShuffler&amp;lt;ref&amp;gt;Vgl. https://askubuntu.com/questions/221962/how-can-i-extract-a-page-range-a-part-of-a-pdf &amp;lt;/ref&amp;gt;&lt;br /&gt;
* [https://wiki.ubuntuusers.de/pdftk/ PDFtk] - ein Kommandozeilentool zum einfachen Bearbeiten von PDF-Dateien.&lt;br /&gt;
&lt;br /&gt;
=== HTML einschließlich CSS nach PDF exportieren ===&lt;br /&gt;
&lt;br /&gt;
==== PDF  mit Chrome/Chromium ====&lt;br /&gt;
Chrome/Chromium bietet die Möglichkeit eine Webseite als PDF zu exportieren:&amp;lt;ref&amp;gt;Vgl. https://superuser.com/questions/592974/how-to-print-to-save-as-pdf-from-a-command-line-with-chrome-or-chromium&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  chromium-browser --headless --print-to-pdf=&amp;quot;/tmp/test.pdf&amp;quot; https://bahn.de&lt;br /&gt;
&lt;br /&gt;
Siehe auch&lt;br /&gt;
  * [https://stackoverflow.com/questions/46077392/additional-options-in-chrome-headless-print-to-pdf Anleitung zum Entfernen der Kopf- und Fußzeilen]&lt;br /&gt;
&lt;br /&gt;
==== CSS-PDF-Renderer ====&lt;br /&gt;
&lt;br /&gt;
CSS Paged Media braucht besondere Renderer, z.B.:&lt;br /&gt;
&lt;br /&gt;
* [https://weasyprint.org/ weasyprint]&lt;br /&gt;
* https://pagedjs.org/&lt;br /&gt;
&lt;br /&gt;
=== PDF signieren ===&lt;br /&gt;
&lt;br /&gt;
Das Versehen von PDFs mit elektronischer Signatur geht z.B. &lt;br /&gt;
* mit [[Javascript]]&lt;br /&gt;
** https://github.com/vbuch/node-signpdf &lt;br /&gt;
*** https://medium.com/caution-your-blast/how-to-digitally-sign-a-pdf-programmatically-using-javascript-nodejs-54194af7bdc3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Windows-Client erstellt PDFs auf einem Linux-Druckserver ===&lt;br /&gt;
&lt;br /&gt;
Um von einem Windows-Client PDFs auf einem Linux-Server zu erstellen geht man folgendermaßen vor:&lt;br /&gt;
==== Einrichten des Linux-Servers ====&lt;br /&gt;
* Einrichten des [[CUPS]]-Daemon z.B. auf einem [[Kubuntu]]-System&lt;br /&gt;
* Installation des virtuellen PDF-Druckers:&lt;br /&gt;
  sudo aptitude install cups-pdf&lt;br /&gt;
* Aufruf der [[CUPS]]-Verwaltungsoberfläche mit http://localhost:631&lt;br /&gt;
** PDF-Drucker publizieren (ggf. muss Passwort angegeben werden)&lt;br /&gt;
&lt;br /&gt;
==== Einrichten des Windows-Clients ====&lt;br /&gt;
* Neuen Netzwerkdrucker hinzufügen&lt;br /&gt;
** Auswahl des PDF-Druckers auf dem Linux-Server&lt;br /&gt;
* Als Druckertreiber auswählen:&lt;br /&gt;
  HP Deskjet 1200 C/PS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Drucken ====&lt;br /&gt;
* Wie gewohnt auf dem Windows-Client drucken&lt;br /&gt;
* Die Datei findet sich auf dem Linux-Server in &lt;br /&gt;
  /var/spool/cups-pdf/ANONYMOUS/&lt;br /&gt;
* Das kann man noch ändern, indem man folgende Datei bearbeitet:&lt;br /&gt;
  /etc/cups/cups-pdf.conf&lt;br /&gt;
&lt;br /&gt;
== PDF umwandeln ==&lt;br /&gt;
&lt;br /&gt;
=== Seite auf mehrere Seiten verteilen ===&lt;br /&gt;
&lt;br /&gt;
* pdfposter&lt;br /&gt;
&lt;br /&gt;
=== Konvertieren in JPEG ===&lt;br /&gt;
&lt;br /&gt;
Mit &lt;br /&gt;
&lt;br /&gt;
  gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r600 -sOutputFile=&#039;seite-%00d.jpg&#039; input.pdf&lt;br /&gt;
&lt;br /&gt;
kann man JPEGs aus einer PDF mit einer 600dpi-Auflösung erstellen.&amp;lt;ref&amp;gt;Siehe http://askubuntu.com/questions/100994/convert-pdf-to-image .&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Hyperlinks in PDFs ==&lt;br /&gt;
&lt;br /&gt;
Siehe &lt;br /&gt;
* https://www.backslash.ch/blog/2006/12/4/Auf-Seiten-im-PDF-direkt-verlinken&lt;br /&gt;
&lt;br /&gt;
== Druckerauswahl ==&lt;br /&gt;
&lt;br /&gt;
=== Kriterien ===&lt;br /&gt;
&lt;br /&gt;
Wichtig sind die Gesamtkosten. Häufig werden die Drucker vom Hersteller günstig abgegeben; dieser holt sich das Geld jedoch über den Verkauf von Verbrauchsmitteln, insbesondere Tintenpatronen. Es gibt inzwischen Drucker mit Tintentanks statt -patronen, die deutlich günstiger im Dauerbetrieb sind, z.B. von&lt;br /&gt;
* Canon, dort die GXXXXX-Serie (PIXMA G für Privatanwender, MAXIFY G für Büro),&lt;br /&gt;
* Epson, dort Ecotank bzw. ET-XXXX genannt,&lt;br /&gt;
* HP, dort Smart Tank genannt.&lt;br /&gt;
* Brother, dort wohl die (wohl schlecht lieferbare) MFC T-Serie, z.B. der MFC-T920DW.&lt;br /&gt;
&lt;br /&gt;
Für den Einsatz unter dem jeweiligen Betriebssystem müssen Druckertreiber vorliegen. Aktuell sollte man also schauen, dass es Treiber für&lt;br /&gt;
* [[Linux-Tipps#Drucken | Linux]]&lt;br /&gt;
* [[Windows 7]] &lt;br /&gt;
* [[Windows 8]]&lt;br /&gt;
gibt.&lt;br /&gt;
&lt;br /&gt;
Multifunktionsgeräte, die auch Scannen und Kopieren können, sind platzsparend. Sinnvoll ist dafür ein Mehrblatteinzug (ADF), am besten beidseitig (DADF) und für mindestens 10, besser 30 Blatt.&lt;br /&gt;
&lt;br /&gt;
Beidseitiges Scannen (DADF) ist nicht gleich beidseitiges Drucken (Duplex). Man muss bei jedem Gerät extra schauen.&lt;br /&gt;
&lt;br /&gt;
Schließlich ist noch entscheidend, ob der normale DIN A4-Druck reicht, oder größere Formate notwendig sind.&lt;br /&gt;
&lt;br /&gt;
Für Heimanwender ist wohl Farbdruck notwendig.&lt;br /&gt;
&lt;br /&gt;
Bei Heimanwendern ohne separates Büro könnten Laserdrucker wegen der nicht gänzlich zu vermeidenden Emissionen nicht in Betracht kommen.&lt;br /&gt;
&lt;br /&gt;
Die Größe des Geräts muss dem vorhandenen Raum angepasst sein. Z.B. maximale Tiefe 47 cm, maximale Höhe 32 cm.&lt;br /&gt;
&lt;br /&gt;
=== Druckermodelle ===&lt;br /&gt;
&lt;br /&gt;
==== Allgemein ====&lt;br /&gt;
* [http://www.druckerchannel.de/bestenliste.php?tabelle=multitinte_office&amp;amp;fillS druckerchannel - Bestenliste]&lt;br /&gt;
* [https://www.idealo.de/preisvergleich/ProductCategory/3309F1261405-1261438-1432803-2372356-7566625-103428795.html Drucker mit Tintentank und doppelseitigem Scannen]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7050 bietet &lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A4&lt;br /&gt;
** Papierzufuhr bis 600 Blatt (alle Kassetten zusammen, max. 250 Blatt in einer Kassette)&lt;br /&gt;
** Für Linux-Support braucht man evtl. das [https://sane-project.gitlab.io/website/lists/sane-backends-external.html canon_pixma]-Backend zum Scannen.&lt;br /&gt;
&lt;br /&gt;
* Der Canon MAXIFY GX7040 scheint sich nicht vom GX7050 zu unterscheiden.&lt;br /&gt;
&lt;br /&gt;
==== Epson ====&lt;br /&gt;
&lt;br /&gt;
* Der Epson Ecotank ET-M16680 bietet&lt;br /&gt;
** Tintentanksystem&lt;br /&gt;
** doppelseitiges Scannen (DADF)&lt;br /&gt;
** doppelseitiges Drucken (Duplex)&lt;br /&gt;
** Farbdruck&lt;br /&gt;
** bis zu A3&lt;br /&gt;
** Papierzufuhr bis 250 Blatt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die [http://assets.epson-europe.com/de/WorkForce/ &amp;quot;Workforce Pro&amp;quot;-Reihe] ist für den intensiveren Büro-Einsatz gedacht.&lt;br /&gt;
&lt;br /&gt;
Diese unterscheiden sich in die &amp;quot;Professional&amp;quot;-Geräte und die &amp;quot;Microbusiness&amp;quot;-Geräte:&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10830 &#039;&#039;&#039;WP-4525 DNF&#039;&#039;&#039;]: Professional, USB, LAN, Duplexeinzug, Duplexdruck, 2,4 W Standby, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 310 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10831 &#039;&#039;&#039;WP-4535 DWF&#039;&#039;&#039;]: Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 330 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;, [http://assets.epson-europe.com/de/WorkForce/ 350 € (UVP)]&lt;br /&gt;
*** [http://www.druckerchannel.de/artikel.php?ID=3183&amp;amp;t=test_buero_tintenmultifunktionsgeraete_gegen_laser_aio Vergleich mit HP OfficeJet 8600 Plus]&lt;br /&gt;
** &#039;&#039;&#039;WP-4545 DTWF&#039;&#039;&#039;:Microbusiness, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 580 Blatt, [http://assets.epson-europe.com/de/WorkForce/ 400 € (UVP)]&lt;br /&gt;
** [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/specs/10833 &#039;&#039;&#039;WP-4595 DNF&#039;&#039;&#039;]: USB, LAN, Postscript, Duplexeinzug, Duplexdruck, 250 + 80 (580) Blatt, 460 x 420 x &#039;&#039;341&#039;&#039;,  [http://www.epson.de/de/de/viewcon/corporatesite/products/mainunits/overview/10833 610 € (UVP)]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: WP-4015 DN, WP-4515 DN, WP-4025 DW&lt;br /&gt;
Kein Scanner: WP-4095 DN&lt;br /&gt;
&lt;br /&gt;
==== Brother ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1/s_detailType/specs &#039;&#039;&#039;MFC-J6910DW&#039;&#039;&#039;], USB, LAN, WLAN,  Duplexeinzug (bis A4), Duplexdruck (bis A3), 2 x 250 Blatt, 540x 331 x &#039;&#039;489&#039;&#039;, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/222470/s_product/MFCJ6910DWG1 605 € (UVP)].&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: DCP-J925DW, DCP-9010CN, DCP-9055CDN, MFC-990CW, MFC-9120CN, [http://www.brother.de/g3.cfm/s_page/65190/s_name/produktedetail2/s_level/32140/s_product/MFC9320CWG1/s_detailType/specs MFC-9320CW] &lt;br /&gt;
  &lt;br /&gt;
Kein Mehrseiteneinzug: MFC-J825DW&lt;br /&gt;
&lt;br /&gt;
==== Hewlett-Packard ====&lt;br /&gt;
Bei HP gibt es sowohl eine &amp;quot;OfficeJet&amp;quot; als auch eine &amp;quot;OfficeJet Pro&amp;quot;-Reihe.&lt;br /&gt;
&lt;br /&gt;
* [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 HP OfficeJet Pro 8600 Plus],USB, LAN, WLAN, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 Duplexeinzug], Duplexdruck, [http://hplipopensource.com/hplip-web/models/officejet/officejet_pro_8600.html offizielle Linux-Unterstützung], 250 Blatt, 494 x &#039;&#039;645,5&#039;&#039; (412) x 315, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323650 280 € (UVP)]&lt;br /&gt;
** [http://www.druckerchannel.de/forum.php?seite=beitrag&amp;amp;ID=230409&amp;amp;t=canon_mx895_vs_hp_8600_pro Vergleich mit Canon MX895]&lt;br /&gt;
&lt;br /&gt;
Kein Duplexeinzug: HP OfficeJet Pro 8600, [http://www8.hp.com/de/de/products/printers/product-detail.html?oid=4323624 HP OfficeJet 6700 Premium]&lt;br /&gt;
&lt;br /&gt;
Siehe auch [[Linux-Tipps#HP-Drucker]]&lt;br /&gt;
&lt;br /&gt;
==== Lexmark ====&lt;br /&gt;
&lt;br /&gt;
* [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product OfficeEdge Pro5500], Duplexeinzug (single pass), Duplexprint, 12 W &amp;quot;Bereit&amp;quot;, 300 x &#039;&#039;500&#039;&#039; x 427, 300 + 150 (+550) Blatt, [http://www1.lexmark.com/DE/de/view/DE-Printers%20&amp;amp;%20MultiFunction/Lexmark-OfficeEdge-Pro5500/catId=cat310005-category&amp;amp;prodId=DE6906-product offiziell Linux-unterstützt] [http://www.idealo.de/preisvergleich/OffersOfProduct/3287777_-officeedge-pro5500-lexmark.html#testberichte 200 €]&lt;br /&gt;
** Nachteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html Hoher Stromverbrauch im Standby von 5 W]&lt;br /&gt;
** Vorteil: [http://www.digitalversus.com/duels-battle-of-five-star-products-a966/lexmark-officeedge-pro5500-vs-hp-officejet-pro-8600-plus-ap880.html besserer Fotodruck als HP OfficeJet 8600 Plus]&lt;br /&gt;
&lt;br /&gt;
==== Canon ====&lt;br /&gt;
&lt;br /&gt;
* [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX885/ Canon PIXMA MX885], USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/615303 rund 200 € im EU-Ausland]&lt;br /&gt;
** läuft angeblich auch [http://community.linuxmint.com/tutorial/view/493 mit Linux]&lt;br /&gt;
** allerdings wird auch von [http://www.amazon.de/review/R24TUIPZK8GXE8 schlechten Erfahrungen mit Linux-Anbindung] berichtet&lt;br /&gt;
* Canon MX892, Duplexeinzug, Duplexdruck&lt;br /&gt;
* Canon MX895, USB, LAN, WLAN, Duplexeinzug, Duplexdruck, 2 x 150 Blatt, 491 x 448 x 218, [http://www.heise.de/preisvergleich/744060 150 €]&lt;br /&gt;
** Vorteil: guter Fotodruck&lt;br /&gt;
** Nachteile: hohe Druckkosten, kleine Patronen&lt;br /&gt;
&lt;br /&gt;
Ohne Duplexeinzug: [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG3250/ PIXMA MG3250], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MX515/ PIXMA MX515], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5150/ PIXMA MG5150], [http://www.canon.de/For_Home/Product_Finder/Multifunctionals/Inkjet/PIXMA_MG5350/ PIXMA MG5350]  &lt;br /&gt;
---------&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Linux]]&lt;br /&gt;
[[Category:Ubuntu]]&lt;br /&gt;
[[Category:Windows]]&lt;br /&gt;
[[Category:Informationstechnik]]&lt;br /&gt;
[[Category:Drucken]]&lt;br /&gt;
[[Category:Hardware]]&lt;/div&gt;</summary>
		<author><name>Codica</name></author>
	</entry>
</feed>