1 Commits
Author SHA1 Message Date
florian de1e84b596 readme.md aktualisiert 2026-10-03 09:51:42 +00:00
22 changed files with 114 additions and 858 deletions

No files matched your search

Vendored
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+22 -234
View File
@@ -37,16 +37,6 @@ FOOTER_PAGE = "footer" # Baustein: wird unter den Inhalt jeder Seite gesetzt
# ---------------------------------------------------------------- markdown # ---------------------------------------------------------------- markdown
def inline(s):
"""Inline-Markdown: bilder, code, fett, kursiv, Links."""
s = re.sub(r"`([^`]+)`", r"<code>\1</code>", s)
s = re.sub(r"!\[([^\]]*)\]\(([^)]+)\)", r'<img src="\2" alt="\1">', s)
s = re.sub(r"\*\*([^*]+)\*\*", r"<strong>\1</strong>", s)
s = re.sub(r"\*([^*]+)\*", r"<em>\1</em>", s)
s = re.sub(r"\[([^\]]+)\]\(([^)]+)\)", r'<a href="\2">\1</a>', s)
return s
def md_to_html(text, headings=None): def md_to_html(text, headings=None):
"""Minimaler Markdown->HTML-Konverter: """Minimaler Markdown->HTML-Konverter:
Ueberschriften, **fett**, *kursiv*, `code`, [Links](url), Ueberschriften, **fett**, *kursiv*, `code`, [Links](url),
@@ -54,8 +44,6 @@ def md_to_html(text, headings=None):
Ueberschriften bekommen id-Anker; in headings (Liste) werden Ueberschriften bekommen id-Anker; in headings (Liste) werden
optional (anker, text) aller Ueberschriften gesammelt. optional (anker, text) aller Ueberschriften gesammelt.
""" """
# vergessenes Trigger-Wort "image" direkt vor einem Bild nicht mit ausgeben
text = re.sub(r"\bimage\s*(?=!\[)", "", text, flags=re.IGNORECASE)
lines = text.replace("\r\n", "\n").split("\n") lines = text.replace("\r\n", "\n").split("\n")
out = [] out = []
i = 0 i = 0
@@ -63,7 +51,13 @@ def md_to_html(text, headings=None):
in_list = False in_list = False
list_tag = None list_tag = None
used_ids = {} used_ids = {}
sec_stack = [] # offene Sektionen (pro # mehr eine Ebene, eingerueckt)
def inline(s):
s = re.sub(r"`([^`]+)`", r"<code>\1</code>", s)
s = re.sub(r"\*\*([^*]+)\*\*", r"<strong>\1</strong>", s)
s = re.sub(r"\*([^*]+)\*", r"<em>\1</em>", s)
s = re.sub(r"\[([^\]]+)\]\(([^)]+)\)", r'<a href="\2">\1</a>', s)
return s
def close_list(): def close_list():
nonlocal in_list, list_tag nonlocal in_list, list_tag
@@ -117,19 +111,9 @@ def md_to_html(text, headings=None):
else: else:
used_ids[hid] = 0 used_ids[hid] = 0
if headings is not None: if headings is not None:
headings.append((level, hid, text_h)) headings.append((hid, text_h))
# tiefere Sektionen schliessen, bis die Ebene wieder passt
while sec_stack and sec_stack[-1] >= level:
out.append("</div>")
sec_stack.pop()
# ein # mehr als die umgebende Ueberschrift -> Stufe einruecken
if sec_stack:
out.append('<div class="sec">')
else:
out.append('<div class="sec0">')
out.append('<h%d id="%s">%s</h%d>' out.append('<h%d id="%s">%s</h%d>'
% (level, hid, inline(_escape(text_h)), level)) % (level, hid, inline(_escape(text_h)), level))
sec_stack.append(level)
i += 1 i += 1
continue continue
@@ -139,24 +123,6 @@ def md_to_html(text, headings=None):
i += 1 i += 1
continue continue
# Tabellen: | zelle | zelle | mit --- Trennzeile
if stripped.startswith("|"):
close_list()
rows = []
j = i
while j < len(lines) and lines[j].strip().startswith("|"):
rows.append(lines[j].strip())
j += 1
tbl = _parse_table(rows)
if tbl:
out.append(tbl)
i = j
else:
# keine gueltige Tabelle -> als normaler Absatz
out.append("<p>%s</p>" % inline(_escape(stripped)))
i += 1
continue
m = re.match(r"^([-*+])\s+(.*)$", stripped) m = re.match(r"^([-*+])\s+(.*)$", stripped)
if m: if m:
if not in_list or list_tag != "ul": if not in_list or list_tag != "ul":
@@ -190,7 +156,7 @@ def md_to_html(text, headings=None):
close_list() close_list()
para = [stripped] para = [stripped]
while (i + 1 < len(lines) and lines[i + 1].strip() while (i + 1 < len(lines) and lines[i + 1].strip()
and not re.match(r"^(#{1,6}\s|[-*+]\s|\d+\.\s|>|```|-{3,}$|<|\|)", and not re.match(r"^(#{1,6}\s|[-*+]\s|\d+\.\s|>|```|-{3,}$|<)",
lines[i + 1].strip())): lines[i + 1].strip())):
i += 1 i += 1
para.append(lines[i].strip()) para.append(lines[i].strip())
@@ -198,9 +164,6 @@ def md_to_html(text, headings=None):
i += 1 i += 1
close_list() close_list()
while sec_stack:
out.append("</div>")
sec_stack.pop()
return "\n".join(out) return "\n".join(out)
@@ -208,54 +171,6 @@ def _escape(s):
return (s.replace("&", "&amp;").replace("<", "&lt;").replace(">", "&gt;")) return (s.replace("&", "&amp;").replace("<", "&lt;").replace(">", "&gt;"))
def _parse_table(rows):
"""Baut aus |-getrennten Zeilen eine HTML-Tabelle.
Zeile 1: Kopfzeile, Zeile 2: Trenner (---, :---, ---:, :---:),
danach: Datenzeilen. Liefert None, wenn es keine gueltige Tabelle ist.
"""
def split_row(r):
if r.startswith("|"):
r = r[1:]
if r.endswith("|"):
r = r[:-1]
return [c.strip() for c in r.split("|")]
def is_sep(c):
return re.match(r"^:?-{2,}:?$", c) is not None
if len(rows) < 2 or not all(is_sep(c) and c for c in split_row(rows[1])):
return None
aligns = []
for c in split_row(rows[1]):
left, right = c.startswith(":"), c.endswith(":")
if left and right:
aligns.append("center")
elif right:
aligns.append("right")
else:
aligns.append("left")
def cell(tag, j, text):
style = ' style="text-align: %s"' % aligns[j] if j < len(aligns) else ""
return "<%s%s>%s</%s>" % (tag, style, inline(text), tag)
out = ["<table>", "<thead><tr>"]
for j, c in enumerate(split_row(rows[0])):
out.append(cell("th", j, _escape(c)))
out.append("</tr></thead>")
if len(rows) > 2:
out.append("<tbody>")
for r in rows[2:]:
out.append("<tr>")
for j, c in enumerate(split_row(r)):
out.append(cell("td", j, _escape(c)))
out.append("</tr>")
out.append("</tbody>")
out.append("</table>")
return "".join(out)
def _slugify(s): def _slugify(s):
"""Ueberschriftentext -> HTML-id (ankertauglich, klein, ohne Sonderzeichen).""" """Ueberschriftentext -> HTML-id (ankertauglich, klein, ohne Sonderzeichen)."""
s = s.lower() s = s.lower()
@@ -265,39 +180,12 @@ def _slugify(s):
return s or "abschnitt" return s or "abschnitt"
def heading_nav(headings, prefix=""): def heading_nav(headings):
"""Baut die Anker-Navigation als verschachtelte ul/li-Liste: """Baut die Anker-Linkliste (Text-Links auf die Ueberschriften der Seite)."""
Eine Ueberschrift mit einem # mehr als die vorherige wird als
Unterpunkt eingerueckt. prefix erlaubt Links auf eine andere Seite
(z.B. "index.html" -> href="index.html#anker").
headings: Liste von (level, anker, text).
"""
if not headings: if not headings:
return "" return ""
parts = [] return "".join('<a href="#%s">%s</a>' % (hid, _escape(text))
levels = [] for hid, text in headings)
for level, hid, text in headings:
if not levels:
# erste Ueberschrift: aeusserste Liste oeffnen
parts.append("<ul>")
levels.append(level)
elif level > levels[-1]:
# tiefer -> neue verschachtelte Liste im letzten <li>
parts.append("<ul>")
levels.append(level)
else:
# gleiche oder hoehere Ebene -> Listen schliessen bis Ebene passt
while len(levels) > 1 and levels[-1] > level:
parts.append("</li></ul>")
levels.pop()
parts.append("</li>")
parts.append('<li><a href="%s#%s">%s</a>' % (prefix, hid, _escape(text)))
parts.append("</li>")
while len(levels) > 1:
parts.append("</ul></li>")
levels.pop()
parts.append("</ul>")
return "".join(parts)
# ------------------------------------------------------------------- seiten # ------------------------------------------------------------------- seiten
@@ -355,23 +243,18 @@ def block_html(slug):
return "" return ""
def render_page(raw, template, header_html="", footer_html="", start_anker_html=""): def render_page(raw, template, header_html="", footer_html=""):
meta, body = parse_md(raw) meta, body = parse_md(raw)
headings = [] headings = []
html = md_to_html(body, headings) html = md_to_html(body, headings)
anker_html = heading_nav(headings) anker_html = heading_nav(headings)
page = (template page = (template
.replace("{{titel}}", _escape(meta.get("titel", ""))) .replace("{{titel}}", _escape(meta.get("titel", "")))
.replace("{{beschreibung}}", _escape(meta.get("beschreibung", "")))
.replace("{{inhalt}}", html)) .replace("{{inhalt}}", html))
# {{anker-start}}: Navigation der Startseite, verlinkt auf index.html#anker
if "{{anker-start}}" in template:
page = page.replace("{{anker-start}}", start_anker_html)
if "{{anker}}" in template: if "{{anker}}" in template:
page = page.replace("{{anker}}", anker_html) page = page.replace("{{anker}}", anker_html)
elif (anker_html and "{{anker-start}}" not in template elif anker_html and "{{header}}" in template:
and "{{header}}" in template): # Template ohne {{anker}}-Platzhalter: Anker ans Ende des Headers
# Template ganz ohne Anker-Platzhalter: eigene Anker ans Header-Ende
page = page.replace("{{header}}", page = page.replace("{{header}}",
header_html + '\n<nav class="anker-nav">' + anker_html + "</nav>") header_html + '\n<nav class="anker-nav">' + anker_html + "</nav>")
if "{{header}}" in template: if "{{header}}" in template:
@@ -389,17 +272,7 @@ def render_page(raw, template, header_html="", footer_html="", start_anker_html=
return page, meta.get("titel", "") return page, meta.get("titel", "")
def load_template(slug=None): def load_template():
"""Template fuer eine Seite: templates/<slug>.html wenn vorhanden,
sonst default.html, sonst das erste gefundene Template."""
candidates = []
if slug:
candidates.append(os.path.join(TPL_DIR, slug + ".html"))
candidates.append(os.path.join(TPL_DIR, "default.html"))
for c in candidates:
if os.path.exists(c):
with open(c, encoding="utf-8") as fh:
return fh.read()
files = [f for f in os.listdir(TPL_DIR) if f.endswith(".html")] files = [f for f in os.listdir(TPL_DIR) if f.endswith(".html")]
if not files: if not files:
raise SystemExit("Kein Template in templates/ gefunden (z.B. default.html).") raise SystemExit("Kein Template in templates/ gefunden (z.B. default.html).")
@@ -409,6 +282,7 @@ def load_template(slug=None):
def export_site(): def export_site():
"""Baut output/: pro MD-Datei eine HTML-Seite, CSS wird kopiert.""" """Baut output/: pro MD-Datei eine HTML-Seite, CSS wird kopiert."""
template = load_template()
# Output leeren und neu aufbauen # Output leeren und neu aufbauen
if os.path.isdir(OUT_DIR): if os.path.isdir(OUT_DIR):
shutil.rmtree(OUT_DIR) shutil.rmtree(OUT_DIR)
@@ -418,27 +292,12 @@ def export_site():
if f.endswith(".css"): if f.endswith(".css"):
shutil.copy2(os.path.join(CSS_DIR, f), os.path.join(OUT_DIR, "css", f)) shutil.copy2(os.path.join(CSS_DIR, f), os.path.join(OUT_DIR, "css", f))
# Bilder (z.B. Logo/Favicon) nach output/images/ kopieren
img_src = os.path.join(ROOT, "images")
if os.path.isdir(img_src):
shutil.copytree(img_src, os.path.join(OUT_DIR, "images"), dirs_exist_ok=True)
footer_html = block_html(FOOTER_PAGE) footer_html = block_html(FOOTER_PAGE)
header_html = block_html(HEADER_PAGE) header_html = block_html(HEADER_PAGE)
# Anker-Navigation der Startseite (fuer Templates mit {{anker-start}},
# z.B. impressum: Links auf index.html#anker)
start_headings = []
if os.path.exists(md_path(START_PAGE)):
_, s_body = parse_md(load_page(START_PAGE))
md_to_html(s_body, start_headings)
start_anker = heading_nav(start_headings, prefix="index.html")
exported = [] exported = []
for slug in list_pages(): for slug in list_pages():
template = load_template(slug) page, _ = render_page(load_page(slug), template, header_html, footer_html)
page, _ = render_page(load_page(slug), template, header_html, footer_html,
start_anker)
# startseite.md wird zur index.html # startseite.md wird zur index.html
out_name = "index.html" if slug == START_PAGE else slug + ".html" out_name = "index.html" if slug == START_PAGE else slug + ".html"
with open(os.path.join(OUT_DIR, out_name), "w", encoding="utf-8") as fh: with open(os.path.join(OUT_DIR, out_name), "w", encoding="utf-8") as fh:
@@ -483,14 +342,6 @@ class Handler(BaseHTTPRequestHandler):
self._json({"slug": slug, "raw": load_page(slug)}) self._json({"slug": slug, "raw": load_page(slug)})
else: else:
self._json({"error": "Seite nicht gefunden"}, 404) self._json({"error": "Seite nicht gefunden"}, 404)
elif path == "/api/images":
img_dir = os.path.join(ROOT, "images")
files = []
if os.path.isdir(img_dir):
for f in sorted(os.listdir(img_dir)):
if os.path.isfile(os.path.join(img_dir, f)) and not f.startswith("."):
files.append(f)
self._json({"images": files})
elif path == "/api/export": elif path == "/api/export":
self._json({"exported": export_site()}) self._json({"exported": export_site()})
else: else:
@@ -536,11 +387,7 @@ ADMIN_HTML = """<!DOCTYPE html>
#side h1 { font-size: 1rem; } #side h1 { font-size: 1rem; }
#pages a { display: block; padding: .35rem .5rem; border-radius: 4px; cursor: pointer; text-decoration: none; color: #000; } #pages a { display: block; padding: .35rem .5rem; border-radius: 4px; cursor: pointer; text-decoration: none; color: #000; }
#pages a.active, #pages a:hover { background: #ddd; } #pages a.active, #pages a:hover { background: #ddd; }
#main { flex: 1; display: flex; flex-direction: column; padding: 1rem; box-sizing: border-box; gap: .5rem; position: relative; } #main { flex: 1; display: flex; flex-direction: column; padding: 1rem; box-sizing: border-box; gap: .5rem; }
#imgdrop { position: absolute; top: 3.2rem; left: 1rem; background: #fff; border: 1px solid #999; border-radius: 4px; box-shadow: 0 2px 10px rgba(0,0,0,.25); max-height: 220px; overflow: auto; z-index: 20; min-width: 240px; }
#imgdrop .imgdrop-title { font-size: .8rem; padding: .4rem .6rem; background: #eee; }
#imglist a { display: block; padding: .35rem .6rem; cursor: pointer; color: #000; }
#imglist a:hover { background: #dde8ff; }
#toolbar { display: flex; gap: .5rem; align-items: center; } #toolbar { display: flex; gap: .5rem; align-items: center; }
button { padding: .45rem .9rem; border: 1px solid #999; border-radius: 4px; background: #fff; cursor: pointer; } button { padding: .45rem .9rem; border: 1px solid #999; border-radius: 4px; background: #fff; cursor: pointer; }
button.primary { background: #0066cc; color: #fff; border-color: #0066cc; } button.primary { background: #0066cc; color: #fff; border-color: #0066cc; }
@@ -568,17 +415,11 @@ ADMIN_HTML = """<!DOCTYPE html>
<button id="btn-delete" style="margin-left:auto">Seite l&ouml;schen</button> <button id="btn-delete" style="margin-left:auto">Seite l&ouml;schen</button>
</div> </div>
<div id="msg"></div> <div id="msg"></div>
<div id="imgdrop" style="display:none">
<div class="imgdrop-title">Bild aus images/ einf&uuml;gen:</div>
<div id="imglist"></div>
</div>
<textarea id="editor" spellcheck="false">--- <textarea id="editor" spellcheck="false">---
titel: Neue Seite titel: Neue Seite
beschreibung: Kurze Seitenbeschreibung fuer Suchmaschinen (SEO).
--- ---
Hier den Inhalt schreiben. **fett**, *kursiv*, [Link](seite.html), # Ueberschrift, - Liste. Hier den Inhalt schreiben. **fett**, *kursiv*, [Link](seite.html), # Ueberschrift, - Liste.</textarea>
Das Wort "image" tippen, um ein Bild aus dem images-Ordner einzufuegen.</textarea>
<div id="preview"></div> <div id="preview"></div>
</div> </div>
<script> <script>
@@ -648,7 +489,7 @@ $("btn-new").onclick = async () => {
if (!slug) return msg("Bitte Namen eingeben."); if (!slug) return msg("Bitte Namen eingeben.");
const d = await api("/api/page", { const d = await api("/api/page", {
method: "POST", headers: {"Content-Type": "application/json"}, method: "POST", headers: {"Content-Type": "application/json"},
body: JSON.stringify({slug, raw: "---\\ntitel: " + slug + "\\nbeschreibung: \\n---\\n\\nNeue Seite.\\n"}) body: JSON.stringify({slug, raw: "---\\ntitel: " + slug + "\\n---\\n\\nNeue Seite.\\n"})
}); });
if (d.ok) { $("newslug").value = ""; openPage(slug); } if (d.ok) { $("newslug").value = ""; openPage(slug); }
else msg("Fehler: " + d.error); else msg("Fehler: " + d.error);
@@ -669,59 +510,6 @@ $("btn-export").onclick = async () => {
msg(d.exported ? "Exportiert: " + d.exported.join(", ") : ("Fehler: " + d.error)); msg(d.exported ? "Exportiert: " + d.exported.join(", ") : ("Fehler: " + d.error));
}; };
// ---- Bild einfuegen: "image" tippen -> Dropdown mit Dateien aus images/ ----
let dropGen = 0;
let lastCaret = 0;
function hideImageDrop() {
dropGen++;
$("imgdrop").style.display = "none";
}
async function showImageDrop(caret) {
const gen = ++dropGen;
lastCaret = caret;
const d = await api("/api/images");
if (gen !== dropGen) return; // inzwischen wieder geschlossen
const list = $("imglist");
list.innerHTML = "";
if (!d.images.length) {
const p = document.createElement("div");
p.style.padding = ".4rem .6rem";
p.textContent = "Keine Dateien in images/.";
list.appendChild(p);
}
for (const f of d.images) {
const a = document.createElement("a");
a.textContent = f;
a.onmousedown = e => { e.preventDefault(); insertImage(f); };
list.appendChild(a);
}
$("imgdrop").style.display = "block";
}
function insertImage(name) {
const ed = $("editor");
let pos = lastCaret;
let before = ed.value.slice(0, pos), after = ed.value.slice(pos);
const md = "![" + name.replace(/\.[^.]+$/, "") + "](images/" + name + ")";
// das getippte Wort "image" durch die Bild-Syntax ersetzen
if (before.slice(-5).toLowerCase() === "image") before = before.slice(0, -5);
ed.value = before + md + after;
ed.focus();
ed.selectionStart = ed.selectionEnd = (before + md).length;
hideImageDrop();
}
$("editor").addEventListener("input", () => {
const ed = $("editor");
const pos = ed.selectionStart;
const tail = ed.value.slice(Math.max(0, pos - 5), pos).toLowerCase();
if (tail === "image") showImageDrop(pos);
else hideImageDrop();
});
$("editor").addEventListener("keydown", e => { if (e.key === "Escape") hideImageDrop(); });
loadPages(); loadPages();
</script> </script>
</body> </body>
+22 -107
View File
@@ -5,7 +5,7 @@ header {
} }
.pixel-horse-container { .pixel-horse-container {
width: 240px; /* Pferd + je 70px Landschaft links und rechts */ width: 100px;
height: 100px; height: 100px;
position: relative; position: relative;
margin: 0 auto; /* zentriert im Header */ margin: 0 auto; /* zentriert im Header */
@@ -18,24 +18,23 @@ header {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 240px; width: 100px;
height: 100px; height: 100px;
opacity: 0; opacity: 0;
animation: run 1s steps(1) infinite; /* 8 Frames, 125ms pro Frame */ animation: run 0.5s steps(1) infinite;
} }
.pixel-horse:nth-child(1) { animation-delay: 0s; opacity: 1; } .pixel-horse:nth-child(1) { animation-delay: 0s; opacity: 1; }
.pixel-horse:nth-child(2) { animation-delay: .125s; } .pixel-horse:nth-child(2) { animation-delay: 0.125s; }
.pixel-horse:nth-child(3) { animation-delay: .25s; } .pixel-horse:nth-child(3) { animation-delay: 0.25s; }
.pixel-horse:nth-child(4) { animation-delay: .375s; } .pixel-horse:nth-child(4) { animation-delay: 0.375s; }
.pixel-horse:nth-child(5) { animation-delay: .5s; }
.pixel-horse:nth-child(6) { animation-delay: .625s; }
.pixel-horse:nth-child(7) { animation-delay: .75s; }
.pixel-horse:nth-child(8) { animation-delay: .875s; }
@keyframes run { @keyframes run {
0%, 12.4% { opacity: 1; } 0%, 24.9% { opacity: 1; }
12.5%, 100% { opacity: 0; } 25%, 49.9% { opacity: 0; }
50%, 74.9% { opacity: 1; }
75%, 99.9% { opacity: 0; }
100% { opacity: 1; }
} }
/* ================================================================ /* ================================================================
@@ -47,14 +46,13 @@ header {
--bg: #1a1a1a; /* sehr dunkles Grau */ --bg: #1a1a1a; /* sehr dunkles Grau */
--text: #ffffff; /* normaler Text weiss */ --text: #ffffff; /* normaler Text weiss */
--dim: #909090; /* gedimmter Text (Footer, Zitate) */ --dim: #909090; /* gedimmter Text (Footer, Zitate) */
--heading: #00ff00; /* Ueberschriften gruen wie die erste Zeile */ --heading: #ff9500; /* Ueberschriften orange */
--link: #66aaff; /* Links, gut lesbar auf schwarz */ --link: #66aaff; /* Links, gut lesbar auf schwarz */
--green: #00ff00; /* Prompt, Code */ --green: #00ff00; /* Prompt, Code */
--border: #333333; --border: #333333;
} }
html { html {
font-size: 14px; /* Basis: alle Schriften 14 px (auch 1rem) */
background: var(--bg); background: var(--bg);
} }
@@ -65,6 +63,7 @@ body {
background: var(--bg); background: var(--bg);
color: var(--text); color: var(--text);
line-height: 1.6; line-height: 1.6;
font-size: 14px;
margin: 0; margin: 0;
padding: 2rem; padding: 2rem;
box-sizing: border-box; box-sizing: border-box;
@@ -88,42 +87,21 @@ main {
} }
/* Shell-Prompt ganz oben auf der Seite */ /* Shell-Prompt ganz oben auf der Seite */
.prompt { body::before {
content: "user@hfg_linux_group:~$ ";
color: var(--green);
display: block;
max-width: 1200px; max-width: 1200px;
margin: 0 auto 1.5rem; margin: 0 auto 1.5rem;
color: var(--green);
}
/* Prompt als Link auf die Startseite, ohne Hover-Effekt */
a.prompt-link,
a.prompt-link:hover {
color: var(--green);
text-decoration: none;
text-shadow: none;
}
/* Blinkender Terminal-Cursor hinter dem Prompt */
.cursor {
display: inline-block;
width: .6em;
height: 1.1em;
background: var(--green);
vertical-align: text-bottom;
animation: blink 1s steps(1) infinite;
}
@keyframes blink {
0%, 49.9% { opacity: 1; }
50%, 100% { opacity: 0; }
} }
/* ---- Typografie ---- */ /* ---- Typografie ---- */
h1, h2, h3, h4, h5, h6 { h1, h2, h3, h4, h5, h6 {
color: var(--heading); color: var(--heading);
text-shadow: 0 0 8px rgba(0, 255, 0, 0.35); text-shadow: 0 0 8px rgba(255, 149, 0, 0.35);
letter-spacing: 1px; letter-spacing: 1px;
font-size: 1rem; /* 14 px, ueberall gleiche Schriftgroesse */ font-size: 1rem; /* ueberall gleiche Schriftgroesse */
font-weight: normal; font-weight: normal;
margin: 1.5rem 0 .8rem; margin: 1.5rem 0 .8rem;
} }
@@ -136,54 +114,13 @@ p {
margin: .8rem 0; margin: .8rem 0;
} }
/* ---- Inhalt einruecken: ein # mehr als die uebergeordnete
Ueberschrift = eine Stufe (1.5rem) tiefer ---- */
main div.sec {
margin-left: 1.5rem;
}
main div.sec0 {
margin-left: 0;
}
/* ---- Bilder ---- */
img {
display: block; /* Text startet immer unter dem Bild */
max-width: 1200px; /* Desktop: maximal 500px breit */
height: auto;
border: 1px solid #333333; /* dunkelgrauer Rand */
margin: .8rem 0;
}
/* Smartphone: Bild ueber die volle Breite */
@media (max-width: 600px) {
img {
max-width: 100%;
width: 100%;
}
}
/* ---- Anker-Navigation im Header (Links auf die Ueberschriften) ---- */ /* ---- Anker-Navigation im Header (Links auf die Ueberschriften) ---- */
.anker-nav { .anker-nav {
margin-top: 1rem; margin-top: 1rem;
} display: flex;
flex-wrap: wrap;
.anker-nav ul { gap: .25rem 1.5rem;
list-style: none;
margin: 0;
padding-left: 0;
}
/* Unterpunkte einruecken (Ueberschrift mit einem # mehr) */
.anker-nav ul ul {
padding-left: 1.5rem;
}
.anker-nav li {
margin: .25rem 0;
} }
.anker-nav a { .anker-nav a {
@@ -242,28 +179,6 @@ hr {
margin: 1.5rem 0; margin: 1.5rem 0;
} }
/* ---- Tabellen ---- */
table {
border-collapse: collapse;
margin: 1rem 0;
}
th, td {
border: 1px solid var(--border);
padding: .4rem .8rem;
text-align: left;
}
th {
color: var(--heading);
background: #141414;
}
td {
color: var(--text);
}
/* ---- Code ---- */ /* ---- Code ---- */
code { code {
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 MiB

BIN
View File
Binary file not shown.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

+2 -1
View File
@@ -2,4 +2,5 @@
titel: Footer titel: Footer
--- ---
[Impressum](impressum.html) Dieser Footer-Baustein wird automatisch an das Ende **aller** Seiten gesetzt.
Zum Beispiel mit Links: [Startseite](index.html)
+11 -8
View File
@@ -3,12 +3,15 @@ titel: Header
--- ---
<div class="pixel-horse-container"> <div class="pixel-horse-container">
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="6" y="82" width="10" height="9" fill="#555555" /><rect x="166" y="82" width="10" height="9" fill="#555555" /><rect x="326" y="82" width="10" height="9" fill="#555555" /><rect x="5" y="78" width="12" height="4" fill="#888888" /><rect x="165" y="78" width="12" height="4" fill="#888888" /><rect x="325" y="78" width="12" height="4" fill="#888888" /><rect x="9" y="84" width="3" height="3" fill="#ffcc00" /><rect x="169" y="84" width="3" height="3" fill="#ffcc00" /><rect x="329" y="84" width="3" height="3" fill="#ffcc00" /><rect x="55" y="80" width="3" height="11" fill="#004400" /><rect x="215" y="80" width="3" height="11" fill="#004400" /><rect x="375" y="80" width="3" height="11" fill="#004400" /><rect x="52" y="71" width="9" height="9" fill="#00aa00" /><rect x="212" y="71" width="9" height="9" fill="#00aa00" /><rect x="372" y="71" width="9" height="9" fill="#00aa00" /><rect x="100" y="84" width="8" height="7" fill="#666666" /><rect x="260" y="84" width="8" height="7" fill="#666666" /><rect x="420" y="84" width="8" height="7" fill="#666666" /><rect x="99" y="81" width="10" height="3" fill="#999999" /><rect x="259" y="81" width="10" height="3" fill="#999999" /><rect x="419" y="81" width="10" height="3" fill="#999999" /><rect x="102" y="86" width="2" height="2" fill="#ffcc00" /><rect x="262" y="86" width="2" height="2" fill="#ffcc00" /><rect x="422" y="86" width="2" height="2" fill="#ffcc00" /><rect x="145" y="80" width="3" height="11" fill="#004400" /><rect x="305" y="80" width="3" height="11" fill="#004400" /><rect x="465" y="80" width="3" height="11" fill="#004400" /><rect x="142" y="72" width="9" height="9" fill="#00bb00" /><rect x="302" y="72" width="9" height="9" fill="#00bb00" /><rect x="462" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="70" width="8" height="20" fill="#00ffff" /><rect x="40" y="75" width="8" height="15" fill="#00ffff" /><rect x="60" y="70" width="8" height="20" fill="#00ffff" /><rect x="75" y="75" width="8" height="15" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="25" y="85" width="8" height="5" fill="#008888" /><rect x="60" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-14" y="82" width="10" height="9" fill="#555555" /><rect x="146" y="82" width="10" height="9" fill="#555555" /><rect x="306" y="82" width="10" height="9" fill="#555555" /><rect x="-15" y="78" width="12" height="4" fill="#888888" /><rect x="145" y="78" width="12" height="4" fill="#888888" /><rect x="305" y="78" width="12" height="4" fill="#888888" /><rect x="-11" y="84" width="3" height="3" fill="#ffcc00" /><rect x="149" y="84" width="3" height="3" fill="#ffcc00" /><rect x="309" y="84" width="3" height="3" fill="#ffcc00" /><rect x="35" y="80" width="3" height="11" fill="#004400" /><rect x="195" y="80" width="3" height="11" fill="#004400" /><rect x="355" y="80" width="3" height="11" fill="#004400" /><rect x="32" y="71" width="9" height="9" fill="#00aa00" /><rect x="192" y="71" width="9" height="9" fill="#00aa00" /><rect x="352" y="71" width="9" height="9" fill="#00aa00" /><rect x="80" y="84" width="8" height="7" fill="#666666" /><rect x="240" y="84" width="8" height="7" fill="#666666" /><rect x="400" y="84" width="8" height="7" fill="#666666" /><rect x="79" y="81" width="10" height="3" fill="#999999" /><rect x="239" y="81" width="10" height="3" fill="#999999" /><rect x="399" y="81" width="10" height="3" fill="#999999" /><rect x="82" y="86" width="2" height="2" fill="#ffcc00" /><rect x="242" y="86" width="2" height="2" fill="#ffcc00" /><rect x="402" y="86" width="2" height="2" fill="#ffcc00" /><rect x="125" y="80" width="3" height="11" fill="#004400" /><rect x="285" y="80" width="3" height="11" fill="#004400" /><rect x="445" y="80" width="3" height="11" fill="#004400" /><rect x="122" y="72" width="9" height="9" fill="#00bb00" /><rect x="282" y="72" width="9" height="9" fill="#00bb00" /><rect x="442" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="75" width="8" height="15" fill="#00ffff" /><rect x="40" y="70" width="8" height="20" fill="#00ffff" /><rect x="60" y="75" width="8" height="15" fill="#00ffff" /><rect x="75" y="70" width="8" height="20" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="40" y="85" width="8" height="5" fill="#008888" /><rect x="75" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-34" y="82" width="10" height="9" fill="#555555" /><rect x="126" y="82" width="10" height="9" fill="#555555" /><rect x="286" y="82" width="10" height="9" fill="#555555" /><rect x="-35" y="78" width="12" height="4" fill="#888888" /><rect x="125" y="78" width="12" height="4" fill="#888888" /><rect x="285" y="78" width="12" height="4" fill="#888888" /><rect x="-31" y="84" width="3" height="3" fill="#ffcc00" /><rect x="129" y="84" width="3" height="3" fill="#ffcc00" /><rect x="289" y="84" width="3" height="3" fill="#ffcc00" /><rect x="15" y="80" width="3" height="11" fill="#004400" /><rect x="175" y="80" width="3" height="11" fill="#004400" /><rect x="335" y="80" width="3" height="11" fill="#004400" /><rect x="12" y="71" width="9" height="9" fill="#00aa00" /><rect x="172" y="71" width="9" height="9" fill="#00aa00" /><rect x="332" y="71" width="9" height="9" fill="#00aa00" /><rect x="60" y="84" width="8" height="7" fill="#666666" /><rect x="220" y="84" width="8" height="7" fill="#666666" /><rect x="380" y="84" width="8" height="7" fill="#666666" /><rect x="59" y="81" width="10" height="3" fill="#999999" /><rect x="219" y="81" width="10" height="3" fill="#999999" /><rect x="379" y="81" width="10" height="3" fill="#999999" /><rect x="62" y="86" width="2" height="2" fill="#ffcc00" /><rect x="222" y="86" width="2" height="2" fill="#ffcc00" /><rect x="382" y="86" width="2" height="2" fill="#ffcc00" /><rect x="105" y="80" width="3" height="11" fill="#004400" /><rect x="265" y="80" width="3" height="11" fill="#004400" /><rect x="425" y="80" width="3" height="11" fill="#004400" /><rect x="102" y="72" width="9" height="9" fill="#00bb00" /><rect x="262" y="72" width="9" height="9" fill="#00bb00" /><rect x="422" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="70" width="8" height="20" fill="#00ffff" /><rect x="40" y="75" width="8" height="15" fill="#00ffff" /><rect x="60" y="70" width="8" height="20" fill="#00ffff" /><rect x="75" y="75" width="8" height="15" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="25" y="85" width="8" height="5" fill="#008888" /><rect x="60" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-54" y="82" width="10" height="9" fill="#555555" /><rect x="106" y="82" width="10" height="9" fill="#555555" /><rect x="266" y="82" width="10" height="9" fill="#555555" /><rect x="-55" y="78" width="12" height="4" fill="#888888" /><rect x="105" y="78" width="12" height="4" fill="#888888" /><rect x="265" y="78" width="12" height="4" fill="#888888" /><rect x="-51" y="84" width="3" height="3" fill="#ffcc00" /><rect x="109" y="84" width="3" height="3" fill="#ffcc00" /><rect x="269" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-5" y="80" width="3" height="11" fill="#004400" /><rect x="155" y="80" width="3" height="11" fill="#004400" /><rect x="315" y="80" width="3" height="11" fill="#004400" /><rect x="-8" y="71" width="9" height="9" fill="#00aa00" /><rect x="152" y="71" width="9" height="9" fill="#00aa00" /><rect x="312" y="71" width="9" height="9" fill="#00aa00" /><rect x="40" y="84" width="8" height="7" fill="#666666" /><rect x="200" y="84" width="8" height="7" fill="#666666" /><rect x="360" y="84" width="8" height="7" fill="#666666" /><rect x="39" y="81" width="10" height="3" fill="#999999" /><rect x="199" y="81" width="10" height="3" fill="#999999" /><rect x="359" y="81" width="10" height="3" fill="#999999" /><rect x="42" y="86" width="2" height="2" fill="#ffcc00" /><rect x="202" y="86" width="2" height="2" fill="#ffcc00" /><rect x="362" y="86" width="2" height="2" fill="#ffcc00" /><rect x="85" y="80" width="3" height="11" fill="#004400" /><rect x="245" y="80" width="3" height="11" fill="#004400" /><rect x="405" y="80" width="3" height="11" fill="#004400" /><rect x="82" y="72" width="9" height="9" fill="#00bb00" /><rect x="242" y="72" width="9" height="9" fill="#00bb00" /><rect x="402" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="75" width="8" height="15" fill="#00ffff" /><rect x="40" y="70" width="8" height="20" fill="#00ffff" /><rect x="60" y="75" width="8" height="15" fill="#00ffff" /><rect x="75" y="70" width="8" height="20" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="40" y="85" width="8" height="5" fill="#008888" /><rect x="75" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-74" y="82" width="10" height="9" fill="#555555" /><rect x="86" y="82" width="10" height="9" fill="#555555" /><rect x="246" y="82" width="10" height="9" fill="#555555" /><rect x="-75" y="78" width="12" height="4" fill="#888888" /><rect x="85" y="78" width="12" height="4" fill="#888888" /><rect x="245" y="78" width="12" height="4" fill="#888888" /><rect x="-71" y="84" width="3" height="3" fill="#ffcc00" /><rect x="89" y="84" width="3" height="3" fill="#ffcc00" /><rect x="249" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-25" y="80" width="3" height="11" fill="#004400" /><rect x="135" y="80" width="3" height="11" fill="#004400" /><rect x="295" y="80" width="3" height="11" fill="#004400" /><rect x="-28" y="71" width="9" height="9" fill="#00aa00" /><rect x="132" y="71" width="9" height="9" fill="#00aa00" /><rect x="292" y="71" width="9" height="9" fill="#00aa00" /><rect x="20" y="84" width="8" height="7" fill="#666666" /><rect x="180" y="84" width="8" height="7" fill="#666666" /><rect x="340" y="84" width="8" height="7" fill="#666666" /><rect x="19" y="81" width="10" height="3" fill="#999999" /><rect x="179" y="81" width="10" height="3" fill="#999999" /><rect x="339" y="81" width="10" height="3" fill="#999999" /><rect x="22" y="86" width="2" height="2" fill="#ffcc00" /><rect x="182" y="86" width="2" height="2" fill="#ffcc00" /><rect x="342" y="86" width="2" height="2" fill="#ffcc00" /><rect x="65" y="80" width="3" height="11" fill="#004400" /><rect x="225" y="80" width="3" height="11" fill="#004400" /><rect x="385" y="80" width="3" height="11" fill="#004400" /><rect x="62" y="72" width="9" height="9" fill="#00bb00" /><rect x="222" y="72" width="9" height="9" fill="#00bb00" /><rect x="382" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-94" y="82" width="10" height="9" fill="#555555" /><rect x="66" y="82" width="10" height="9" fill="#555555" /><rect x="226" y="82" width="10" height="9" fill="#555555" /><rect x="-95" y="78" width="12" height="4" fill="#888888" /><rect x="65" y="78" width="12" height="4" fill="#888888" /><rect x="225" y="78" width="12" height="4" fill="#888888" /><rect x="-91" y="84" width="3" height="3" fill="#ffcc00" /><rect x="69" y="84" width="3" height="3" fill="#ffcc00" /><rect x="229" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-45" y="80" width="3" height="11" fill="#004400" /><rect x="115" y="80" width="3" height="11" fill="#004400" /><rect x="275" y="80" width="3" height="11" fill="#004400" /><rect x="-48" y="71" width="9" height="9" fill="#00aa00" /><rect x="112" y="71" width="9" height="9" fill="#00aa00" /><rect x="272" y="71" width="9" height="9" fill="#00aa00" /><rect x="0" y="84" width="8" height="7" fill="#666666" /><rect x="160" y="84" width="8" height="7" fill="#666666" /><rect x="320" y="84" width="8" height="7" fill="#666666" /><rect x="-1" y="81" width="10" height="3" fill="#999999" /><rect x="159" y="81" width="10" height="3" fill="#999999" /><rect x="319" y="81" width="10" height="3" fill="#999999" /><rect x="2" y="86" width="2" height="2" fill="#ffcc00" /><rect x="162" y="86" width="2" height="2" fill="#ffcc00" /><rect x="322" y="86" width="2" height="2" fill="#ffcc00" /><rect x="45" y="80" width="3" height="11" fill="#004400" /><rect x="205" y="80" width="3" height="11" fill="#004400" /><rect x="365" y="80" width="3" height="11" fill="#004400" /><rect x="42" y="72" width="9" height="9" fill="#00bb00" /><rect x="202" y="72" width="9" height="9" fill="#00bb00" /><rect x="362" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-114" y="82" width="10" height="9" fill="#555555" /><rect x="46" y="82" width="10" height="9" fill="#555555" /><rect x="206" y="82" width="10" height="9" fill="#555555" /><rect x="-115" y="78" width="12" height="4" fill="#888888" /><rect x="45" y="78" width="12" height="4" fill="#888888" /><rect x="205" y="78" width="12" height="4" fill="#888888" /><rect x="-111" y="84" width="3" height="3" fill="#ffcc00" /><rect x="49" y="84" width="3" height="3" fill="#ffcc00" /><rect x="209" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-65" y="80" width="3" height="11" fill="#004400" /><rect x="95" y="80" width="3" height="11" fill="#004400" /><rect x="255" y="80" width="3" height="11" fill="#004400" /><rect x="-68" y="71" width="9" height="9" fill="#00aa00" /><rect x="92" y="71" width="9" height="9" fill="#00aa00" /><rect x="252" y="71" width="9" height="9" fill="#00aa00" /><rect x="-20" y="84" width="8" height="7" fill="#666666" /><rect x="140" y="84" width="8" height="7" fill="#666666" /><rect x="300" y="84" width="8" height="7" fill="#666666" /><rect x="-21" y="81" width="10" height="3" fill="#999999" /><rect x="139" y="81" width="10" height="3" fill="#999999" /><rect x="299" y="81" width="10" height="3" fill="#999999" /><rect x="-18" y="86" width="2" height="2" fill="#ffcc00" /><rect x="142" y="86" width="2" height="2" fill="#ffcc00" /><rect x="302" y="86" width="2" height="2" fill="#ffcc00" /><rect x="25" y="80" width="3" height="11" fill="#004400" /><rect x="185" y="80" width="3" height="11" fill="#004400" /><rect x="345" y="80" width="3" height="11" fill="#004400" /><rect x="22" y="72" width="9" height="9" fill="#00bb00" /><rect x="182" y="72" width="9" height="9" fill="#00bb00" /><rect x="342" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-134" y="82" width="10" height="9" fill="#555555" /><rect x="26" y="82" width="10" height="9" fill="#555555" /><rect x="186" y="82" width="10" height="9" fill="#555555" /><rect x="-135" y="78" width="12" height="4" fill="#888888" /><rect x="25" y="78" width="12" height="4" fill="#888888" /><rect x="185" y="78" width="12" height="4" fill="#888888" /><rect x="-131" y="84" width="3" height="3" fill="#ffcc00" /><rect x="29" y="84" width="3" height="3" fill="#ffcc00" /><rect x="189" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-85" y="80" width="3" height="11" fill="#004400" /><rect x="75" y="80" width="3" height="11" fill="#004400" /><rect x="235" y="80" width="3" height="11" fill="#004400" /><rect x="-88" y="71" width="9" height="9" fill="#00aa00" /><rect x="72" y="71" width="9" height="9" fill="#00aa00" /><rect x="232" y="71" width="9" height="9" fill="#00aa00" /><rect x="-40" y="84" width="8" height="7" fill="#666666" /><rect x="120" y="84" width="8" height="7" fill="#666666" /><rect x="280" y="84" width="8" height="7" fill="#666666" /><rect x="-41" y="81" width="10" height="3" fill="#999999" /><rect x="119" y="81" width="10" height="3" fill="#999999" /><rect x="279" y="81" width="10" height="3" fill="#999999" /><rect x="-38" y="86" width="2" height="2" fill="#ffcc00" /><rect x="122" y="86" width="2" height="2" fill="#ffcc00" /><rect x="282" y="86" width="2" height="2" fill="#ffcc00" /><rect x="5" y="80" width="3" height="11" fill="#004400" /><rect x="165" y="80" width="3" height="11" fill="#004400" /><rect x="325" y="80" width="3" height="11" fill="#004400" /><rect x="2" y="72" width="9" height="9" fill="#00bb00" /><rect x="162" y="72" width="9" height="9" fill="#00bb00" /><rect x="322" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
</div> </div>
# hfg_linux_usergroup
# free-software-for-art-and-design
Dieser Header-Baustein wird automatisch ueber den Inhalt **aller** Seiten gesetzt.
- [Startseite](index.html)
-48
View File
@@ -1,48 +0,0 @@
---
titel: impressum
beschreibung: impressum
---
# Impressum
Angaben gemäß § 5 TMG (Telemediengesetz)
Rechtlicher Sitz
Hochschule für Gestaltung Offenbach am Main
​Schlossstraße 31, 63065 Offenbach am Main
T +49.(0)69.80059-0
​F +49.(0)69.80059-109
praesidium@hfg-offenbach.de
hfg-offenbach.de
# Umsatzsteuer-ID
​DE232878186
# Rechtsform
Die Hochschule für Gestaltung Offenbach am Main ist als Hochschule des Landes Hessen zugleich eine Körperschaft des öffentlichen Rechts und eine staatliche Einrichtung. Sie wird durch den Präsidenten Prof. Bernd Kracke gesetzlich vertreten.
# Rechtsaufsicht
Hessisches Ministerium für Wissenschaft und Kunst, Rheinstr. 23-25, 65185 Wiesbaden
# Haftungsausschluss
Haftung für Inhalte
Diese Website dient lediglich der Information. Ihr Inhalt wurde mit größter Sorgfalt zusammengestellt. Eine Haftung oder Garantie für die Aktualität, Richtigkeit und Vollständigkeit der zur Verfügung gestellten Informationen und Daten ist jedoch ausgeschlossen. Die Hochschule für Gestaltung Offenbach übernimmt insbesondere keinerlei Haftung für eventuelle Schäden oder Konsequenzen, die durch die direkte oder indirekte Nutzung der angebotenen Inhalte entstehen.
Hinweise und Korrekturen senden Sie bitte an: Ulrike Grünewald
# Haftung für Links
Die Hochschule für Gestaltung Offenbach ist als Inhaltsanbieter für die eigenen Inhalte, die sie zur Nutzung bereit hält, nach den allgemeinen Gesetzen verantwortlich.
Von diesen eigenen Inhalten sind Querverweise (externe Links) auf die von anderen Anbietern bereit gehaltenen Inhalte zu unterscheiden. Diese fremden Inhalte stammen nicht von der Hochschule für Gestaltung Offenbach und spiegeln auch nicht die Meinung der Hochschule für Gestaltung Offenbach wider, sondern dienen lediglich der Information. Die Hochschule für Gestaltung Offenbach hat weder Einfluss auf die Gestaltung und die Inhalte der gelinkten Seiten noch macht sie sich diese Inhalte zu eigen.
Die Webredaktion der Hochschule für Gestaltung Offenbach hat bei der erstmaligen Verknüpfung zwar den fremden Inhalt daraufhin überprüft, ob durch ihn eine mögliche zivilrechtliche oder strafrechtliche Verantwortlichkeit ausgelöst wird. Sie überprüft aber die Inhalte nicht ständig auf Veränderungen, die eine Verantwortlichkeit neu begründen könnten. Bei Bekanntwerden von Rechtsverletzungen werden derartige Links umgehend entfernt, soweit dies technisch möglich und zumutbar ist.
Diese Erklärung gilt für alle auf unserer Website angezeigten Links und für alle Inhalte der Seiten, zu denen die bei uns angemeldeten Banner und Links führen.
# Hinweise zum Urheberrecht
Alle auf dieser Website veröffentlichten Texte, Bild-, Ton- und Filmdokumente befinden sich im Besitz der Hochschule für Gestaltung Offenbach beziehungsweise der jeweils angegebenen Autoren. Eine – auch auszugsweise – Veröffentlichung in elektronischer oder anderer Form bedarf der ausdrücklichen vorherigen schriftlichen Zustimmung der jeweiligen Rechteinhaber. Bitte setzen Sie sich gegebenenfalls mit uns in Verbindung.
# Datenschutzerklärung
Die Datenschutzerklärung der HfG Offenbach finden Sie HIER.
Zusätzliche Information
Redaktion auf dieser Seite: Florian Albrecht-Schoeck und Sebastian Kujas
+11 -44
View File
@@ -1,64 +1,31 @@
--- ---
titel: hfg_linux_usergroup: free software for art and design titel: startseite
beschreibung: Die hfg_linux_usergroup ist eine Gemeinschaft der HFG Offenbach für freie Software, Open Source und digitale Souveränität in Kunst und Design.
--- ---
# Was ist die hfg_linux_usergroup ## Was ist die hfg_linux_usergroup
Die hfg_linux_usergroup ist eine diverse Gemeinschaft der HFG Offenbach, die sich für freie Software, Open Source und digitale Souveränität einsetzt. Die hfg_linux_usergroup ist eine diverse Gemeinschaft der HFG Offenbach, die sich für freie Software, Open Source und digitale Souveränität einsetzt.
Hintergrund ist die zentrale Bedeutung von Open Source für Kunst und Gestaltung: Es ermöglicht Demokratisierung, Transparenz, Chancengleichheit und Weiterentwicklung. Durch offene Lizenzen und frei zugängliche Software werden Wissen und kreative Prozesse entmonopolisiert. Künstler:innen und Designer:innen sind so nicht länger abhängig von proprietärer Software – die oft mit hohen Kosten, geschlossenen Systemen, Abhängigkeiten oder Abos einhergeht. Hinzu kommen ethische Bedenken wie Datenschutz oder Überwachungskapitalismus. Hintergrund ist die zentrale Bedeutung von Open Source für Kunst und Gestaltung: Es ermöglicht Demokratisierung, Transparenz, Chancengleichheit und Weiterentwicklung. Durch offene Lizenzen und frei zugängliche Software werden Wissen und kreative Prozesse entmonopolisiert. Künstler:innen und Designer:innen sind so nicht länger abhängig von proprietärer Software – die oft mit hohen Kosten, geschlossenen Systemen, Abhängigkeiten oder Abos einhergeht. Hinzu kommen ethische Bedenken wie Datenschutz oder Überwachungskapitalismus.
Open Source fördert nicht nur gestalterische Freiheit, sondern auch eine kritische Reflexion über Technologie selbst. Open Source fördert nicht nur gestalterische Freiheit, sondern auch eine kritische Reflexion über Technologie selbst.
# Nächste Treffen ## Nächste Treffen
Die nächsten Termine für den Herbst/Winter 2026 werden aktuell geplant: Die nächsten Termine für den Herbst/Winter 2026 werden aktuell geplant:
## hfg_linux_usergroup_date_1_music hfg_linux_usergroup_date_1_music
Platzhalter inhalt, um was geht es hier. hfg_linux_usergroup_date_2_image-editing
## hfg_linux_usergroup_date_2_image-editing hfg_linux_usergroup_date_3_coding-development
Platzhalter inhalt, um was geht es hier. hfg_linux_usergroup_date_4_3d-film-fotogrammetrie
## hfg_linux_usergroup_date_3_coding-development
Platzhalter inhalt, um was geht es hier.
## hfg_linux_usergroup_date_4_3d-film-fotogrammetrie
Platzhalter inhalt, um was geht es hier.
# Wer ist die hfg_linux_usergroup ## Wer ist die hfg_linux_usergroup
Alle, die sich für Linux, Open Source und die Förderung von Wissen in Kunst und Design interessieren, können Teil der Gemeinschaft werden oder an den Treffen teilnehmen. Die hfg_linux_usergroup wurde von den beiden HFG-Lehrenden Sebastian Kujas und Florian Albrecht-Schoeck gegründet und wird aktuell von ihnen moderiert. Alle, die sich für Linux, Open Source und die Förderung von Wissen in Kunst und Design interessieren, können Teil der Gemeinschaft werden oder an den Treffen teilnehmen. Die hfg_linux_usergroup wurde von den beiden HFG-Lehrenden Sebastian Kujas und Florian Albrecht-Schoeck gegründet und wird aktuell von ihnen moderiert.
# Was sind die Ziele der hfg_linux_usergroup ## Was sind die Ziele der hfg_linux_usergroup
Ziel ist es, den Einsatz freier Software in Kunst und Design zu fördern. Durch Workshops, den Aufbau von Wissensdatenbanken, Austausch und Debatten sollen Eigenermächtigung und Verantwortung für Technologie wiederhergestellt werden. Dazu entwickeln wir gemeinsam ein eigenes Linux-basiertes Betriebssystem und unterstützen bei allen Schritten des Wechsels zu freier Software. Ziel ist es, den Einsatz freier Software in Kunst und Design zu fördern. Durch Workshops, den Aufbau von Wissensdatenbanken, Austausch und Debatten sollen Eigenermächtigung und Verantwortung für Technologie wiederhergestellt werden. Dazu entwickeln wir gemeinsam ein eigenes Linux-basiertes Betriebssystem und unterstützen bei allen Schritten des Wechsels zu freier Software.
# Das hfg_OS_ ## Das hfg_OS_
Das hfg_OS ist ein auf Debian 13 (Trixie) basierendes, Linux-basiertes Betriebssystem. Es wurde speziell für die Bedürfnisse von Künstler:innen und Designer:innen angepasst und wird kontinuierlich weiterentwickelt. Das hfg_OS ist ein auf Debian 13 (Trixie) basierendes, Linux-basiertes Betriebssystem. Es wurde speziell für die Bedürfnisse von Künstler:innen und Designer:innen angepasst und wird kontinuierlich weiterentwickelt.
![hfg_os_background_1_fullhd](images/hfg_os_background_1_fullhd.jpg)
## Versionen Bald verfügbar: hfg_OS_Falbella-2026-10
| Version | Name | Platform | Filesize|
|:-------|:-------------------:|-----------:|
| 12.10. | hfg_OS_Falbella | X86 | 4536 MB|
### Haftungsausschluss / Disclaimer
Diese Linux-Distribution wird unentgeltlich und im Rahmen der jeweiligen Open-Source-Lizenzen (insbesondere der GNU General Public License) bereitgestellt. Die Software wird „wie besehen" („AS IS") ohne jegliche Gewährleistung bereitgestellt – ohne Mängelgewährleistung, ohne Zusicherung von Marktgängigkeit oder Eignung für einen bestimmten Zweck.
Der Autor übernimmt keinerlei Haftung für Schäden jedweder Art – einschließlich, aber nicht beschränkt auf Datenverlust, Systemausfälle, Betriebsunterbrechungen, Folgeschäden oder indirekte Schäden –, die aus der Nutzung, dem Download, der Installation oder der Weitergabe dieser Distribution entstehen. Die Nutzung erfolgt vollständig auf eigenes Risiko.
Es besteht kein Anspruch auf Support, Updates, Bugfixes oder Verfügbarkeit der Download-Angebote. Alle enthaltenen Softwarekomponenten bleiben Eigentum ihrer jeweiligen Urheber und unterliegen ihren eigenen Lizenzen. Marken- und Namensrechte Dritter bleiben unberührt.
Hinweis: Erstelle vor jeder Installation ein Backup deiner Daten.
## Integrierte Programme
| Illustration und Publishing |
|:-------------------:|-----------:|
| Krita | Scribus | Gimp |
| Fotografie und Film |
|:-------------------:|-----------:|
| RaWTherpee | Darktable| KDNENLive |
| Programmieren |
|:-------------------:|-----------:|
| VIM | KIRA| VSCODIUM |
+22 -107
View File
@@ -5,7 +5,7 @@ header {
} }
.pixel-horse-container { .pixel-horse-container {
width: 240px; /* Pferd + je 70px Landschaft links und rechts */ width: 100px;
height: 100px; height: 100px;
position: relative; position: relative;
margin: 0 auto; /* zentriert im Header */ margin: 0 auto; /* zentriert im Header */
@@ -18,24 +18,23 @@ header {
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 240px; width: 100px;
height: 100px; height: 100px;
opacity: 0; opacity: 0;
animation: run 1s steps(1) infinite; /* 8 Frames, 125ms pro Frame */ animation: run 0.5s steps(1) infinite;
} }
.pixel-horse:nth-child(1) { animation-delay: 0s; opacity: 1; } .pixel-horse:nth-child(1) { animation-delay: 0s; opacity: 1; }
.pixel-horse:nth-child(2) { animation-delay: .125s; } .pixel-horse:nth-child(2) { animation-delay: 0.125s; }
.pixel-horse:nth-child(3) { animation-delay: .25s; } .pixel-horse:nth-child(3) { animation-delay: 0.25s; }
.pixel-horse:nth-child(4) { animation-delay: .375s; } .pixel-horse:nth-child(4) { animation-delay: 0.375s; }
.pixel-horse:nth-child(5) { animation-delay: .5s; }
.pixel-horse:nth-child(6) { animation-delay: .625s; }
.pixel-horse:nth-child(7) { animation-delay: .75s; }
.pixel-horse:nth-child(8) { animation-delay: .875s; }
@keyframes run { @keyframes run {
0%, 12.4% { opacity: 1; } 0%, 24.9% { opacity: 1; }
12.5%, 100% { opacity: 0; } 25%, 49.9% { opacity: 0; }
50%, 74.9% { opacity: 1; }
75%, 99.9% { opacity: 0; }
100% { opacity: 1; }
} }
/* ================================================================ /* ================================================================
@@ -47,14 +46,13 @@ header {
--bg: #1a1a1a; /* sehr dunkles Grau */ --bg: #1a1a1a; /* sehr dunkles Grau */
--text: #ffffff; /* normaler Text weiss */ --text: #ffffff; /* normaler Text weiss */
--dim: #909090; /* gedimmter Text (Footer, Zitate) */ --dim: #909090; /* gedimmter Text (Footer, Zitate) */
--heading: #00ff00; /* Ueberschriften gruen wie die erste Zeile */ --heading: #ff9500; /* Ueberschriften orange */
--link: #66aaff; /* Links, gut lesbar auf schwarz */ --link: #66aaff; /* Links, gut lesbar auf schwarz */
--green: #00ff00; /* Prompt, Code */ --green: #00ff00; /* Prompt, Code */
--border: #333333; --border: #333333;
} }
html { html {
font-size: 14px; /* Basis: alle Schriften 14 px (auch 1rem) */
background: var(--bg); background: var(--bg);
} }
@@ -65,6 +63,7 @@ body {
background: var(--bg); background: var(--bg);
color: var(--text); color: var(--text);
line-height: 1.6; line-height: 1.6;
font-size: 14px;
margin: 0; margin: 0;
padding: 2rem; padding: 2rem;
box-sizing: border-box; box-sizing: border-box;
@@ -88,42 +87,21 @@ main {
} }
/* Shell-Prompt ganz oben auf der Seite */ /* Shell-Prompt ganz oben auf der Seite */
.prompt { body::before {
content: "user@hfg_linux_group:~$ ";
color: var(--green);
display: block;
max-width: 1200px; max-width: 1200px;
margin: 0 auto 1.5rem; margin: 0 auto 1.5rem;
color: var(--green);
}
/* Prompt als Link auf die Startseite, ohne Hover-Effekt */
a.prompt-link,
a.prompt-link:hover {
color: var(--green);
text-decoration: none;
text-shadow: none;
}
/* Blinkender Terminal-Cursor hinter dem Prompt */
.cursor {
display: inline-block;
width: .6em;
height: 1.1em;
background: var(--green);
vertical-align: text-bottom;
animation: blink 1s steps(1) infinite;
}
@keyframes blink {
0%, 49.9% { opacity: 1; }
50%, 100% { opacity: 0; }
} }
/* ---- Typografie ---- */ /* ---- Typografie ---- */
h1, h2, h3, h4, h5, h6 { h1, h2, h3, h4, h5, h6 {
color: var(--heading); color: var(--heading);
text-shadow: 0 0 8px rgba(0, 255, 0, 0.35); text-shadow: 0 0 8px rgba(255, 149, 0, 0.35);
letter-spacing: 1px; letter-spacing: 1px;
font-size: 1rem; /* 14 px, ueberall gleiche Schriftgroesse */ font-size: 1rem; /* ueberall gleiche Schriftgroesse */
font-weight: normal; font-weight: normal;
margin: 1.5rem 0 .8rem; margin: 1.5rem 0 .8rem;
} }
@@ -136,54 +114,13 @@ p {
margin: .8rem 0; margin: .8rem 0;
} }
/* ---- Inhalt einruecken: ein # mehr als die uebergeordnete
Ueberschrift = eine Stufe (1.5rem) tiefer ---- */
main div.sec {
margin-left: 1.5rem;
}
main div.sec0 {
margin-left: 0;
}
/* ---- Bilder ---- */
img {
display: block; /* Text startet immer unter dem Bild */
max-width: 1200px; /* Desktop: maximal 500px breit */
height: auto;
border: 1px solid #333333; /* dunkelgrauer Rand */
margin: .8rem 0;
}
/* Smartphone: Bild ueber die volle Breite */
@media (max-width: 600px) {
img {
max-width: 100%;
width: 100%;
}
}
/* ---- Anker-Navigation im Header (Links auf die Ueberschriften) ---- */ /* ---- Anker-Navigation im Header (Links auf die Ueberschriften) ---- */
.anker-nav { .anker-nav {
margin-top: 1rem; margin-top: 1rem;
} display: flex;
flex-wrap: wrap;
.anker-nav ul { gap: .25rem 1.5rem;
list-style: none;
margin: 0;
padding-left: 0;
}
/* Unterpunkte einruecken (Ueberschrift mit einem # mehr) */
.anker-nav ul ul {
padding-left: 1.5rem;
}
.anker-nav li {
margin: .25rem 0;
} }
.anker-nav a { .anker-nav a {
@@ -242,28 +179,6 @@ hr {
margin: 1.5rem 0; margin: 1.5rem 0;
} }
/* ---- Tabellen ---- */
table {
border-collapse: collapse;
margin: 1rem 0;
}
th, td {
border: 1px solid var(--border);
padding: .4rem .8rem;
text-align: left;
}
th {
color: var(--heading);
background: #141414;
}
td {
color: var(--text);
}
/* ---- Code ---- */ /* ---- Code ---- */
code { code {
BIN
View File
Binary file not shown.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

-148
View File
@@ -1,148 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="212mm"
height="185mm"
viewBox="0 0 212 185"
version="1.1"
id="svg1"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
sodipodi:docname="logo.svg"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
inkscape:zoom="0.67528301"
inkscape:cx="300.6147"
inkscape:cy="567.16961"
inkscape:window-width="2560"
inkscape:window-height="1283"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g1" /><defs
id="defs1" /><g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"><g
id="g1"
inkscape:label="logo"><rect
style="fill:#bc6ec5;fill-opacity:1;stroke-width:0.436961"
id="rect1-6"
width="27.207493"
height="48.685009"
x="17.110464"
y="83.338158" /><rect
style="fill:#bc6ec5;fill-opacity:1;stroke-width:0.254324"
id="rect1-6-6"
width="17.513844"
height="25.62081"
x="7.3483195"
y="106.4026" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:0.744538"
id="rect1-2-3-2-2-1"
width="73.685966"
height="52.191757"
x="128.47047"
y="31.434856" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:0.303737"
id="rect1-2-3-2-2-1-4"
width="17.332495"
height="36.927048"
x="174.61983"
y="140.21355" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:0.335087"
id="rect1-2-3-2-2-1-4-6"
width="21.09514"
height="36.927048"
x="138.87154"
y="140.21284" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:0.325207"
id="rect1-2-3-2-2-1-4-6-4"
width="19.869507"
height="36.927048"
x="92.092537"
y="140.21284" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:0.340355"
id="rect1-2-3-2-2-1-4-6-4-4"
width="21.763668"
height="36.927048"
x="56.148205"
y="140.21284" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:1.22605"
id="rect1-2-3-2-2-1-3"
width="145.06674"
height="71.888435"
x="43.290218"
y="69.704735" /><rect
style="fill:#0d0d0b;fill-opacity:1;stroke-width:0.13182"
id="rect1-2-9"
width="10.990082"
height="10.968916"
x="152.58284"
y="35.083874" /><rect
style="fill:#0d0d0b;fill-opacity:1;stroke-width:0.0979278"
id="rect1-2-9-1"
width="9.4858952"
height="7.0134616"
x="164.40558"
y="71.279991" /><rect
style="fill:#0d0d0b;fill-opacity:1;stroke-width:0.0809229"
id="rect1-2-9-1-8"
width="6.4775219"
height="7.0134616"
x="182.83105"
y="71.279831" /><rect
style="fill:#0d0d0b;fill-opacity:1;stroke-width:0.15631"
id="rect1-2-9-9"
width="12.952992"
height="13.08592"
x="189.18622"
y="32.104492" /><rect
style="fill:#bc6ec5;fill-opacity:1;stroke-width:0.257236"
id="rect1"
width="35.229824"
height="13.030209"
x="128.47047"
y="22.358643" /><rect
style="fill:#6cadb6;fill-opacity:1;stroke-width:0.161179"
id="rect1-2"
width="13.831325"
height="13.030209"
x="162.7973"
y="22.358643" /><rect
style="fill:#bc6ec5;fill-opacity:1;stroke-width:0.161177"
id="rect1-2-3-2"
width="13.831325"
height="13.030209"
x="162.79794"
y="9.3847332" /><rect
style="fill:#6cacb6;fill-opacity:1;stroke-width:0.210201"
id="rect1-2-3-2-2"
width="23.524973"
height="13.030209"
x="128.4705"
y="9.3847332" /><rect
style="fill:#6babb5;fill-opacity:1;stroke-width:0.294245"
id="rect1-2-3-2-7"
width="25.738684"
height="23.336674"
x="176.41765"
y="9.3847332" /><rect
style="fill:#bc6ec5;fill-opacity:1;stroke-width:0.153906"
id="rect1-2-3"
width="12.611309"
height="13.030209"
x="176.41748"
y="22.358643" /></g></g></svg>

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

-70
View File
@@ -1,70 +0,0 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>impressum</title>
<meta name="description" content="impressum">
<link rel="icon" type="image/png" href="images/hfglogo.png">
<link rel="icon" type="image/svg+xml" href="images/logo.svg">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="prompt"><a class="prompt-link" href="index.html">user@hfg_linux_group:~$ free-software-for-art-and-design</a><span class="cursor"></span></div>
<header>
<div class="pixel-horse-container">
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="6" y="82" width="10" height="9" fill="#555555" /><rect x="166" y="82" width="10" height="9" fill="#555555" /><rect x="326" y="82" width="10" height="9" fill="#555555" /><rect x="5" y="78" width="12" height="4" fill="#888888" /><rect x="165" y="78" width="12" height="4" fill="#888888" /><rect x="325" y="78" width="12" height="4" fill="#888888" /><rect x="9" y="84" width="3" height="3" fill="#ffcc00" /><rect x="169" y="84" width="3" height="3" fill="#ffcc00" /><rect x="329" y="84" width="3" height="3" fill="#ffcc00" /><rect x="55" y="80" width="3" height="11" fill="#004400" /><rect x="215" y="80" width="3" height="11" fill="#004400" /><rect x="375" y="80" width="3" height="11" fill="#004400" /><rect x="52" y="71" width="9" height="9" fill="#00aa00" /><rect x="212" y="71" width="9" height="9" fill="#00aa00" /><rect x="372" y="71" width="9" height="9" fill="#00aa00" /><rect x="100" y="84" width="8" height="7" fill="#666666" /><rect x="260" y="84" width="8" height="7" fill="#666666" /><rect x="420" y="84" width="8" height="7" fill="#666666" /><rect x="99" y="81" width="10" height="3" fill="#999999" /><rect x="259" y="81" width="10" height="3" fill="#999999" /><rect x="419" y="81" width="10" height="3" fill="#999999" /><rect x="102" y="86" width="2" height="2" fill="#ffcc00" /><rect x="262" y="86" width="2" height="2" fill="#ffcc00" /><rect x="422" y="86" width="2" height="2" fill="#ffcc00" /><rect x="145" y="80" width="3" height="11" fill="#004400" /><rect x="305" y="80" width="3" height="11" fill="#004400" /><rect x="465" y="80" width="3" height="11" fill="#004400" /><rect x="142" y="72" width="9" height="9" fill="#00bb00" /><rect x="302" y="72" width="9" height="9" fill="#00bb00" /><rect x="462" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-14" y="82" width="10" height="9" fill="#555555" /><rect x="146" y="82" width="10" height="9" fill="#555555" /><rect x="306" y="82" width="10" height="9" fill="#555555" /><rect x="-15" y="78" width="12" height="4" fill="#888888" /><rect x="145" y="78" width="12" height="4" fill="#888888" /><rect x="305" y="78" width="12" height="4" fill="#888888" /><rect x="-11" y="84" width="3" height="3" fill="#ffcc00" /><rect x="149" y="84" width="3" height="3" fill="#ffcc00" /><rect x="309" y="84" width="3" height="3" fill="#ffcc00" /><rect x="35" y="80" width="3" height="11" fill="#004400" /><rect x="195" y="80" width="3" height="11" fill="#004400" /><rect x="355" y="80" width="3" height="11" fill="#004400" /><rect x="32" y="71" width="9" height="9" fill="#00aa00" /><rect x="192" y="71" width="9" height="9" fill="#00aa00" /><rect x="352" y="71" width="9" height="9" fill="#00aa00" /><rect x="80" y="84" width="8" height="7" fill="#666666" /><rect x="240" y="84" width="8" height="7" fill="#666666" /><rect x="400" y="84" width="8" height="7" fill="#666666" /><rect x="79" y="81" width="10" height="3" fill="#999999" /><rect x="239" y="81" width="10" height="3" fill="#999999" /><rect x="399" y="81" width="10" height="3" fill="#999999" /><rect x="82" y="86" width="2" height="2" fill="#ffcc00" /><rect x="242" y="86" width="2" height="2" fill="#ffcc00" /><rect x="402" y="86" width="2" height="2" fill="#ffcc00" /><rect x="125" y="80" width="3" height="11" fill="#004400" /><rect x="285" y="80" width="3" height="11" fill="#004400" /><rect x="445" y="80" width="3" height="11" fill="#004400" /><rect x="122" y="72" width="9" height="9" fill="#00bb00" /><rect x="282" y="72" width="9" height="9" fill="#00bb00" /><rect x="442" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-34" y="82" width="10" height="9" fill="#555555" /><rect x="126" y="82" width="10" height="9" fill="#555555" /><rect x="286" y="82" width="10" height="9" fill="#555555" /><rect x="-35" y="78" width="12" height="4" fill="#888888" /><rect x="125" y="78" width="12" height="4" fill="#888888" /><rect x="285" y="78" width="12" height="4" fill="#888888" /><rect x="-31" y="84" width="3" height="3" fill="#ffcc00" /><rect x="129" y="84" width="3" height="3" fill="#ffcc00" /><rect x="289" y="84" width="3" height="3" fill="#ffcc00" /><rect x="15" y="80" width="3" height="11" fill="#004400" /><rect x="175" y="80" width="3" height="11" fill="#004400" /><rect x="335" y="80" width="3" height="11" fill="#004400" /><rect x="12" y="71" width="9" height="9" fill="#00aa00" /><rect x="172" y="71" width="9" height="9" fill="#00aa00" /><rect x="332" y="71" width="9" height="9" fill="#00aa00" /><rect x="60" y="84" width="8" height="7" fill="#666666" /><rect x="220" y="84" width="8" height="7" fill="#666666" /><rect x="380" y="84" width="8" height="7" fill="#666666" /><rect x="59" y="81" width="10" height="3" fill="#999999" /><rect x="219" y="81" width="10" height="3" fill="#999999" /><rect x="379" y="81" width="10" height="3" fill="#999999" /><rect x="62" y="86" width="2" height="2" fill="#ffcc00" /><rect x="222" y="86" width="2" height="2" fill="#ffcc00" /><rect x="382" y="86" width="2" height="2" fill="#ffcc00" /><rect x="105" y="80" width="3" height="11" fill="#004400" /><rect x="265" y="80" width="3" height="11" fill="#004400" /><rect x="425" y="80" width="3" height="11" fill="#004400" /><rect x="102" y="72" width="9" height="9" fill="#00bb00" /><rect x="262" y="72" width="9" height="9" fill="#00bb00" /><rect x="422" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-54" y="82" width="10" height="9" fill="#555555" /><rect x="106" y="82" width="10" height="9" fill="#555555" /><rect x="266" y="82" width="10" height="9" fill="#555555" /><rect x="-55" y="78" width="12" height="4" fill="#888888" /><rect x="105" y="78" width="12" height="4" fill="#888888" /><rect x="265" y="78" width="12" height="4" fill="#888888" /><rect x="-51" y="84" width="3" height="3" fill="#ffcc00" /><rect x="109" y="84" width="3" height="3" fill="#ffcc00" /><rect x="269" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-5" y="80" width="3" height="11" fill="#004400" /><rect x="155" y="80" width="3" height="11" fill="#004400" /><rect x="315" y="80" width="3" height="11" fill="#004400" /><rect x="-8" y="71" width="9" height="9" fill="#00aa00" /><rect x="152" y="71" width="9" height="9" fill="#00aa00" /><rect x="312" y="71" width="9" height="9" fill="#00aa00" /><rect x="40" y="84" width="8" height="7" fill="#666666" /><rect x="200" y="84" width="8" height="7" fill="#666666" /><rect x="360" y="84" width="8" height="7" fill="#666666" /><rect x="39" y="81" width="10" height="3" fill="#999999" /><rect x="199" y="81" width="10" height="3" fill="#999999" /><rect x="359" y="81" width="10" height="3" fill="#999999" /><rect x="42" y="86" width="2" height="2" fill="#ffcc00" /><rect x="202" y="86" width="2" height="2" fill="#ffcc00" /><rect x="362" y="86" width="2" height="2" fill="#ffcc00" /><rect x="85" y="80" width="3" height="11" fill="#004400" /><rect x="245" y="80" width="3" height="11" fill="#004400" /><rect x="405" y="80" width="3" height="11" fill="#004400" /><rect x="82" y="72" width="9" height="9" fill="#00bb00" /><rect x="242" y="72" width="9" height="9" fill="#00bb00" /><rect x="402" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-74" y="82" width="10" height="9" fill="#555555" /><rect x="86" y="82" width="10" height="9" fill="#555555" /><rect x="246" y="82" width="10" height="9" fill="#555555" /><rect x="-75" y="78" width="12" height="4" fill="#888888" /><rect x="85" y="78" width="12" height="4" fill="#888888" /><rect x="245" y="78" width="12" height="4" fill="#888888" /><rect x="-71" y="84" width="3" height="3" fill="#ffcc00" /><rect x="89" y="84" width="3" height="3" fill="#ffcc00" /><rect x="249" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-25" y="80" width="3" height="11" fill="#004400" /><rect x="135" y="80" width="3" height="11" fill="#004400" /><rect x="295" y="80" width="3" height="11" fill="#004400" /><rect x="-28" y="71" width="9" height="9" fill="#00aa00" /><rect x="132" y="71" width="9" height="9" fill="#00aa00" /><rect x="292" y="71" width="9" height="9" fill="#00aa00" /><rect x="20" y="84" width="8" height="7" fill="#666666" /><rect x="180" y="84" width="8" height="7" fill="#666666" /><rect x="340" y="84" width="8" height="7" fill="#666666" /><rect x="19" y="81" width="10" height="3" fill="#999999" /><rect x="179" y="81" width="10" height="3" fill="#999999" /><rect x="339" y="81" width="10" height="3" fill="#999999" /><rect x="22" y="86" width="2" height="2" fill="#ffcc00" /><rect x="182" y="86" width="2" height="2" fill="#ffcc00" /><rect x="342" y="86" width="2" height="2" fill="#ffcc00" /><rect x="65" y="80" width="3" height="11" fill="#004400" /><rect x="225" y="80" width="3" height="11" fill="#004400" /><rect x="385" y="80" width="3" height="11" fill="#004400" /><rect x="62" y="72" width="9" height="9" fill="#00bb00" /><rect x="222" y="72" width="9" height="9" fill="#00bb00" /><rect x="382" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-94" y="82" width="10" height="9" fill="#555555" /><rect x="66" y="82" width="10" height="9" fill="#555555" /><rect x="226" y="82" width="10" height="9" fill="#555555" /><rect x="-95" y="78" width="12" height="4" fill="#888888" /><rect x="65" y="78" width="12" height="4" fill="#888888" /><rect x="225" y="78" width="12" height="4" fill="#888888" /><rect x="-91" y="84" width="3" height="3" fill="#ffcc00" /><rect x="69" y="84" width="3" height="3" fill="#ffcc00" /><rect x="229" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-45" y="80" width="3" height="11" fill="#004400" /><rect x="115" y="80" width="3" height="11" fill="#004400" /><rect x="275" y="80" width="3" height="11" fill="#004400" /><rect x="-48" y="71" width="9" height="9" fill="#00aa00" /><rect x="112" y="71" width="9" height="9" fill="#00aa00" /><rect x="272" y="71" width="9" height="9" fill="#00aa00" /><rect x="0" y="84" width="8" height="7" fill="#666666" /><rect x="160" y="84" width="8" height="7" fill="#666666" /><rect x="320" y="84" width="8" height="7" fill="#666666" /><rect x="-1" y="81" width="10" height="3" fill="#999999" /><rect x="159" y="81" width="10" height="3" fill="#999999" /><rect x="319" y="81" width="10" height="3" fill="#999999" /><rect x="2" y="86" width="2" height="2" fill="#ffcc00" /><rect x="162" y="86" width="2" height="2" fill="#ffcc00" /><rect x="322" y="86" width="2" height="2" fill="#ffcc00" /><rect x="45" y="80" width="3" height="11" fill="#004400" /><rect x="205" y="80" width="3" height="11" fill="#004400" /><rect x="365" y="80" width="3" height="11" fill="#004400" /><rect x="42" y="72" width="9" height="9" fill="#00bb00" /><rect x="202" y="72" width="9" height="9" fill="#00bb00" /><rect x="362" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-114" y="82" width="10" height="9" fill="#555555" /><rect x="46" y="82" width="10" height="9" fill="#555555" /><rect x="206" y="82" width="10" height="9" fill="#555555" /><rect x="-115" y="78" width="12" height="4" fill="#888888" /><rect x="45" y="78" width="12" height="4" fill="#888888" /><rect x="205" y="78" width="12" height="4" fill="#888888" /><rect x="-111" y="84" width="3" height="3" fill="#ffcc00" /><rect x="49" y="84" width="3" height="3" fill="#ffcc00" /><rect x="209" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-65" y="80" width="3" height="11" fill="#004400" /><rect x="95" y="80" width="3" height="11" fill="#004400" /><rect x="255" y="80" width="3" height="11" fill="#004400" /><rect x="-68" y="71" width="9" height="9" fill="#00aa00" /><rect x="92" y="71" width="9" height="9" fill="#00aa00" /><rect x="252" y="71" width="9" height="9" fill="#00aa00" /><rect x="-20" y="84" width="8" height="7" fill="#666666" /><rect x="140" y="84" width="8" height="7" fill="#666666" /><rect x="300" y="84" width="8" height="7" fill="#666666" /><rect x="-21" y="81" width="10" height="3" fill="#999999" /><rect x="139" y="81" width="10" height="3" fill="#999999" /><rect x="299" y="81" width="10" height="3" fill="#999999" /><rect x="-18" y="86" width="2" height="2" fill="#ffcc00" /><rect x="142" y="86" width="2" height="2" fill="#ffcc00" /><rect x="302" y="86" width="2" height="2" fill="#ffcc00" /><rect x="25" y="80" width="3" height="11" fill="#004400" /><rect x="185" y="80" width="3" height="11" fill="#004400" /><rect x="345" y="80" width="3" height="11" fill="#004400" /><rect x="22" y="72" width="9" height="9" fill="#00bb00" /><rect x="182" y="72" width="9" height="9" fill="#00bb00" /><rect x="342" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-134" y="82" width="10" height="9" fill="#555555" /><rect x="26" y="82" width="10" height="9" fill="#555555" /><rect x="186" y="82" width="10" height="9" fill="#555555" /><rect x="-135" y="78" width="12" height="4" fill="#888888" /><rect x="25" y="78" width="12" height="4" fill="#888888" /><rect x="185" y="78" width="12" height="4" fill="#888888" /><rect x="-131" y="84" width="3" height="3" fill="#ffcc00" /><rect x="29" y="84" width="3" height="3" fill="#ffcc00" /><rect x="189" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-85" y="80" width="3" height="11" fill="#004400" /><rect x="75" y="80" width="3" height="11" fill="#004400" /><rect x="235" y="80" width="3" height="11" fill="#004400" /><rect x="-88" y="71" width="9" height="9" fill="#00aa00" /><rect x="72" y="71" width="9" height="9" fill="#00aa00" /><rect x="232" y="71" width="9" height="9" fill="#00aa00" /><rect x="-40" y="84" width="8" height="7" fill="#666666" /><rect x="120" y="84" width="8" height="7" fill="#666666" /><rect x="280" y="84" width="8" height="7" fill="#666666" /><rect x="-41" y="81" width="10" height="3" fill="#999999" /><rect x="119" y="81" width="10" height="3" fill="#999999" /><rect x="279" y="81" width="10" height="3" fill="#999999" /><rect x="-38" y="86" width="2" height="2" fill="#ffcc00" /><rect x="122" y="86" width="2" height="2" fill="#ffcc00" /><rect x="282" y="86" width="2" height="2" fill="#ffcc00" /><rect x="5" y="80" width="3" height="11" fill="#004400" /><rect x="165" y="80" width="3" height="11" fill="#004400" /><rect x="325" y="80" width="3" height="11" fill="#004400" /><rect x="2" y="72" width="9" height="9" fill="#00bb00" /><rect x="162" y="72" width="9" height="9" fill="#00bb00" /><rect x="322" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
</div>
<nav class="anker-nav"><ul><li><a href="index.html#was-ist-die-hfg-linux-usergroup">Was ist die hfg_linux_usergroup</a></li><li><a href="index.html#naechste-treffen">Nächste Treffen</a><ul><li><a href="index.html#hfg-linux-usergroup-date-1-music">hfg_linux_usergroup_date_1_music</a></li><li><a href="index.html#hfg-linux-usergroup-date-2-image-editing">hfg_linux_usergroup_date_2_image-editing</a></li><li><a href="index.html#hfg-linux-usergroup-date-3-coding-development">hfg_linux_usergroup_date_3_coding-development</a></li><li><a href="index.html#hfg-linux-usergroup-date-4-3d-film-fotogrammetrie">hfg_linux_usergroup_date_4_3d-film-fotogrammetrie</a></li></ul></li><li><a href="index.html#wer-ist-die-hfg-linux-usergroup">Wer ist die hfg_linux_usergroup</a></li><li><a href="index.html#was-sind-die-ziele-der-hfg-linux-usergroup">Was sind die Ziele der hfg_linux_usergroup</a></li><li><a href="index.html#das-hfg-os">Das hfg_OS_</a><ul><li><a href="index.html#versionen">Versionen</a><ul><li><a href="index.html#haftungsausschluss-disclaimer">Haftungsausschluss / Disclaimer</a></li></ul></li><li><a href="index.html#integrierte-programme">Integrierte Programme</a></li></ul></li></ul></nav>
</header>
<main>
<div class="sec0">
<h1 id="impressum">Impressum</h1>
<p>Angaben gemäß § 5 TMG (Telemediengesetz) Rechtlicher Sitz Hochschule für Gestaltung Offenbach am Main ​Schlossstraße 31, 63065 Offenbach am Main T +49.(0)69.80059-0 ​F +49.(0)69.80059-109 praesidium@hfg-offenbach.de hfg-offenbach.de</p>
</div>
<div class="sec0">
<h1 id="umsatzsteuer-id">Umsatzsteuer-ID</h1>
<p>​DE232878186</p>
</div>
<div class="sec0">
<h1 id="rechtsform">Rechtsform</h1>
<p>Die Hochschule für Gestaltung Offenbach am Main ist als Hochschule des Landes Hessen zugleich eine Körperschaft des öffentlichen Rechts und eine staatliche Einrichtung. Sie wird durch den Präsidenten Prof. Bernd Kracke gesetzlich vertreten.</p>
</div>
<div class="sec0">
<h1 id="rechtsaufsicht">Rechtsaufsicht</h1>
<p>Hessisches Ministerium für Wissenschaft und Kunst, Rheinstr. 23-25, 65185 Wiesbaden</p>
</div>
<div class="sec0">
<h1 id="haftungsausschluss">Haftungsausschluss</h1>
<p>Haftung für Inhalte Diese Website dient lediglich der Information. Ihr Inhalt wurde mit größter Sorgfalt zusammengestellt. Eine Haftung oder Garantie für die Aktualität, Richtigkeit und Vollständigkeit der zur Verfügung gestellten Informationen und Daten ist jedoch ausgeschlossen. Die Hochschule für Gestaltung Offenbach übernimmt insbesondere keinerlei Haftung für eventuelle Schäden oder Konsequenzen, die durch die direkte oder indirekte Nutzung der angebotenen Inhalte entstehen.</p>
<p>Hinweise und Korrekturen senden Sie bitte an: Ulrike Grünewald</p>
</div>
<div class="sec0">
<h1 id="haftung-fuer-links">Haftung für Links</h1>
<p>Die Hochschule für Gestaltung Offenbach ist als Inhaltsanbieter für die eigenen Inhalte, die sie zur Nutzung bereit hält, nach den allgemeinen Gesetzen verantwortlich.</p>
<p>Von diesen eigenen Inhalten sind Querverweise (externe Links) auf die von anderen Anbietern bereit gehaltenen Inhalte zu unterscheiden. Diese fremden Inhalte stammen nicht von der Hochschule für Gestaltung Offenbach und spiegeln auch nicht die Meinung der Hochschule für Gestaltung Offenbach wider, sondern dienen lediglich der Information. Die Hochschule für Gestaltung Offenbach hat weder Einfluss auf die Gestaltung und die Inhalte der gelinkten Seiten noch macht sie sich diese Inhalte zu eigen.</p>
<p>Die Webredaktion der Hochschule für Gestaltung Offenbach hat bei der erstmaligen Verknüpfung zwar den fremden Inhalt daraufhin überprüft, ob durch ihn eine mögliche zivilrechtliche oder strafrechtliche Verantwortlichkeit ausgelöst wird. Sie überprüft aber die Inhalte nicht ständig auf Veränderungen, die eine Verantwortlichkeit neu begründen könnten. Bei Bekanntwerden von Rechtsverletzungen werden derartige Links umgehend entfernt, soweit dies technisch möglich und zumutbar ist.</p>
<p>Diese Erklärung gilt für alle auf unserer Website angezeigten Links und für alle Inhalte der Seiten, zu denen die bei uns angemeldeten Banner und Links führen.</p>
</div>
<div class="sec0">
<h1 id="hinweise-zum-urheberrecht">Hinweise zum Urheberrecht</h1>
<p>Alle auf dieser Website veröffentlichten Texte, Bild-, Ton- und Filmdokumente befinden sich im Besitz der Hochschule für Gestaltung Offenbach beziehungsweise der jeweils angegebenen Autoren. Eine – auch auszugsweise – Veröffentlichung in elektronischer oder anderer Form bedarf der ausdrücklichen vorherigen schriftlichen Zustimmung der jeweiligen Rechteinhaber. Bitte setzen Sie sich gegebenenfalls mit uns in Verbindung.</p>
</div>
<div class="sec0">
<h1 id="datenschutzerklaerung">Datenschutzerklärung</h1>
<p>Die Datenschutzerklärung der HfG Offenbach finden Sie HIER.</p>
<p>Zusätzliche Information Redaktion auf dieser Seite: Florian Albrecht-Schoeck und Sebastian Kujas</p>
</div>
</main>
<footer>
<p><a href="impressum.html">Impressum</a></p>
</footer>
</body>
</html>
+22 -61
View File
@@ -3,82 +3,43 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>hfg_linux_usergroup: free software for art and design</title> <title>startseite</title>
<meta name="description" content="Die hfg_linux_usergroup ist eine Gemeinschaft der HFG Offenbach für freie Software, Open Source und digitale Souveränität in Kunst und Design.">
<link rel="icon" type="image/png" href="images/hfglogo.png">
<link rel="icon" type="image/svg+xml" href="images/logo.svg">
<link rel="stylesheet" href="css/style.css"> <link rel="stylesheet" href="css/style.css">
</head> </head>
<body> <body>
<div class="prompt"><a class="prompt-link" href="index.html">user@hfg_linux_group:~$ free-software-for-art-and-design</a><span class="cursor"></span></div>
<header> <header>
<div class="pixel-horse-container"> <div class="pixel-horse-container">
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="6" y="82" width="10" height="9" fill="#555555" /><rect x="166" y="82" width="10" height="9" fill="#555555" /><rect x="326" y="82" width="10" height="9" fill="#555555" /><rect x="5" y="78" width="12" height="4" fill="#888888" /><rect x="165" y="78" width="12" height="4" fill="#888888" /><rect x="325" y="78" width="12" height="4" fill="#888888" /><rect x="9" y="84" width="3" height="3" fill="#ffcc00" /><rect x="169" y="84" width="3" height="3" fill="#ffcc00" /><rect x="329" y="84" width="3" height="3" fill="#ffcc00" /><rect x="55" y="80" width="3" height="11" fill="#004400" /><rect x="215" y="80" width="3" height="11" fill="#004400" /><rect x="375" y="80" width="3" height="11" fill="#004400" /><rect x="52" y="71" width="9" height="9" fill="#00aa00" /><rect x="212" y="71" width="9" height="9" fill="#00aa00" /><rect x="372" y="71" width="9" height="9" fill="#00aa00" /><rect x="100" y="84" width="8" height="7" fill="#666666" /><rect x="260" y="84" width="8" height="7" fill="#666666" /><rect x="420" y="84" width="8" height="7" fill="#666666" /><rect x="99" y="81" width="10" height="3" fill="#999999" /><rect x="259" y="81" width="10" height="3" fill="#999999" /><rect x="419" y="81" width="10" height="3" fill="#999999" /><rect x="102" y="86" width="2" height="2" fill="#ffcc00" /><rect x="262" y="86" width="2" height="2" fill="#ffcc00" /><rect x="422" y="86" width="2" height="2" fill="#ffcc00" /><rect x="145" y="80" width="3" height="11" fill="#004400" /><rect x="305" y="80" width="3" height="11" fill="#004400" /><rect x="465" y="80" width="3" height="11" fill="#004400" /><rect x="142" y="72" width="9" height="9" fill="#00bb00" /><rect x="302" y="72" width="9" height="9" fill="#00bb00" /><rect x="462" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="70" width="8" height="20" fill="#00ffff" /><rect x="40" y="75" width="8" height="15" fill="#00ffff" /><rect x="60" y="70" width="8" height="20" fill="#00ffff" /><rect x="75" y="75" width="8" height="15" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="25" y="85" width="8" height="5" fill="#008888" /><rect x="60" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-14" y="82" width="10" height="9" fill="#555555" /><rect x="146" y="82" width="10" height="9" fill="#555555" /><rect x="306" y="82" width="10" height="9" fill="#555555" /><rect x="-15" y="78" width="12" height="4" fill="#888888" /><rect x="145" y="78" width="12" height="4" fill="#888888" /><rect x="305" y="78" width="12" height="4" fill="#888888" /><rect x="-11" y="84" width="3" height="3" fill="#ffcc00" /><rect x="149" y="84" width="3" height="3" fill="#ffcc00" /><rect x="309" y="84" width="3" height="3" fill="#ffcc00" /><rect x="35" y="80" width="3" height="11" fill="#004400" /><rect x="195" y="80" width="3" height="11" fill="#004400" /><rect x="355" y="80" width="3" height="11" fill="#004400" /><rect x="32" y="71" width="9" height="9" fill="#00aa00" /><rect x="192" y="71" width="9" height="9" fill="#00aa00" /><rect x="352" y="71" width="9" height="9" fill="#00aa00" /><rect x="80" y="84" width="8" height="7" fill="#666666" /><rect x="240" y="84" width="8" height="7" fill="#666666" /><rect x="400" y="84" width="8" height="7" fill="#666666" /><rect x="79" y="81" width="10" height="3" fill="#999999" /><rect x="239" y="81" width="10" height="3" fill="#999999" /><rect x="399" y="81" width="10" height="3" fill="#999999" /><rect x="82" y="86" width="2" height="2" fill="#ffcc00" /><rect x="242" y="86" width="2" height="2" fill="#ffcc00" /><rect x="402" y="86" width="2" height="2" fill="#ffcc00" /><rect x="125" y="80" width="3" height="11" fill="#004400" /><rect x="285" y="80" width="3" height="11" fill="#004400" /><rect x="445" y="80" width="3" height="11" fill="#004400" /><rect x="122" y="72" width="9" height="9" fill="#00bb00" /><rect x="282" y="72" width="9" height="9" fill="#00bb00" /><rect x="442" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="75" width="8" height="15" fill="#00ffff" /><rect x="40" y="70" width="8" height="20" fill="#00ffff" /><rect x="60" y="75" width="8" height="15" fill="#00ffff" /><rect x="75" y="70" width="8" height="20" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="40" y="85" width="8" height="5" fill="#008888" /><rect x="75" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-34" y="82" width="10" height="9" fill="#555555" /><rect x="126" y="82" width="10" height="9" fill="#555555" /><rect x="286" y="82" width="10" height="9" fill="#555555" /><rect x="-35" y="78" width="12" height="4" fill="#888888" /><rect x="125" y="78" width="12" height="4" fill="#888888" /><rect x="285" y="78" width="12" height="4" fill="#888888" /><rect x="-31" y="84" width="3" height="3" fill="#ffcc00" /><rect x="129" y="84" width="3" height="3" fill="#ffcc00" /><rect x="289" y="84" width="3" height="3" fill="#ffcc00" /><rect x="15" y="80" width="3" height="11" fill="#004400" /><rect x="175" y="80" width="3" height="11" fill="#004400" /><rect x="335" y="80" width="3" height="11" fill="#004400" /><rect x="12" y="71" width="9" height="9" fill="#00aa00" /><rect x="172" y="71" width="9" height="9" fill="#00aa00" /><rect x="332" y="71" width="9" height="9" fill="#00aa00" /><rect x="60" y="84" width="8" height="7" fill="#666666" /><rect x="220" y="84" width="8" height="7" fill="#666666" /><rect x="380" y="84" width="8" height="7" fill="#666666" /><rect x="59" y="81" width="10" height="3" fill="#999999" /><rect x="219" y="81" width="10" height="3" fill="#999999" /><rect x="379" y="81" width="10" height="3" fill="#999999" /><rect x="62" y="86" width="2" height="2" fill="#ffcc00" /><rect x="222" y="86" width="2" height="2" fill="#ffcc00" /><rect x="382" y="86" width="2" height="2" fill="#ffcc00" /><rect x="105" y="80" width="3" height="11" fill="#004400" /><rect x="265" y="80" width="3" height="11" fill="#004400" /><rect x="425" y="80" width="3" height="11" fill="#004400" /><rect x="102" y="72" width="9" height="9" fill="#00bb00" /><rect x="262" y="72" width="9" height="9" fill="#00bb00" /><rect x="422" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="70" width="8" height="20" fill="#00ffff" /><rect x="40" y="75" width="8" height="15" fill="#00ffff" /><rect x="60" y="70" width="8" height="20" fill="#00ffff" /><rect x="75" y="75" width="8" height="15" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="25" y="85" width="8" height="5" fill="#008888" /><rect x="60" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-54" y="82" width="10" height="9" fill="#555555" /><rect x="106" y="82" width="10" height="9" fill="#555555" /><rect x="266" y="82" width="10" height="9" fill="#555555" /><rect x="-55" y="78" width="12" height="4" fill="#888888" /><rect x="105" y="78" width="12" height="4" fill="#888888" /><rect x="265" y="78" width="12" height="4" fill="#888888" /><rect x="-51" y="84" width="3" height="3" fill="#ffcc00" /><rect x="109" y="84" width="3" height="3" fill="#ffcc00" /><rect x="269" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-5" y="80" width="3" height="11" fill="#004400" /><rect x="155" y="80" width="3" height="11" fill="#004400" /><rect x="315" y="80" width="3" height="11" fill="#004400" /><rect x="-8" y="71" width="9" height="9" fill="#00aa00" /><rect x="152" y="71" width="9" height="9" fill="#00aa00" /><rect x="312" y="71" width="9" height="9" fill="#00aa00" /><rect x="40" y="84" width="8" height="7" fill="#666666" /><rect x="200" y="84" width="8" height="7" fill="#666666" /><rect x="360" y="84" width="8" height="7" fill="#666666" /><rect x="39" y="81" width="10" height="3" fill="#999999" /><rect x="199" y="81" width="10" height="3" fill="#999999" /><rect x="359" y="81" width="10" height="3" fill="#999999" /><rect x="42" y="86" width="2" height="2" fill="#ffcc00" /><rect x="202" y="86" width="2" height="2" fill="#ffcc00" /><rect x="362" y="86" width="2" height="2" fill="#ffcc00" /><rect x="85" y="80" width="3" height="11" fill="#004400" /><rect x="245" y="80" width="3" height="11" fill="#004400" /><rect x="405" y="80" width="3" height="11" fill="#004400" /><rect x="82" y="72" width="9" height="9" fill="#00bb00" /><rect x="242" y="72" width="9" height="9" fill="#00bb00" /><rect x="402" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg> <svg class="pixel-horse" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><rect x="20" y="45" width="60" height="30" fill="#00ffff" /><rect x="55" y="25" width="30" height="25" fill="#00ffff" /><rect x="55" y="20" width="10" height="10" fill="#00ffff" /><rect x="75" y="20" width="10" height="10" fill="#00ffff" /><rect x="65" y="30" width="5" height="5" fill="#000000" /><rect x="80" y="30" width="5" height="5" fill="#000000" /><rect x="70" y="45" width="3" height="3" fill="#000000" /><rect x="78" y="45" width="3" height="3" fill="#000000" /><rect x="55" y="25" width="5" height="5" fill="#ff00ff" /><rect x="60" y="20" width="5" height="5" fill="#ff00ff" /><rect x="65" y="25" width="5" height="5" fill="#ff00ff" /><rect x="70" y="20" width="5" height="5" fill="#ff00ff" /><rect x="75" y="25" width="5" height="5" fill="#ff00ff" /><rect x="25" y="75" width="8" height="15" fill="#00ffff" /><rect x="40" y="70" width="8" height="20" fill="#00ffff" /><rect x="60" y="75" width="8" height="15" fill="#00ffff" /><rect x="75" y="70" width="8" height="20" fill="#00ffff" /><rect x="10" y="50" width="10" height="20" fill="#ff00ff" /><rect x="5" y="60" width="10" height="10" fill="#ff00ff" /><rect x="40" y="85" width="8" height="5" fill="#008888" /><rect x="75" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-74" y="82" width="10" height="9" fill="#555555" /><rect x="86" y="82" width="10" height="9" fill="#555555" /><rect x="246" y="82" width="10" height="9" fill="#555555" /><rect x="-75" y="78" width="12" height="4" fill="#888888" /><rect x="85" y="78" width="12" height="4" fill="#888888" /><rect x="245" y="78" width="12" height="4" fill="#888888" /><rect x="-71" y="84" width="3" height="3" fill="#ffcc00" /><rect x="89" y="84" width="3" height="3" fill="#ffcc00" /><rect x="249" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-25" y="80" width="3" height="11" fill="#004400" /><rect x="135" y="80" width="3" height="11" fill="#004400" /><rect x="295" y="80" width="3" height="11" fill="#004400" /><rect x="-28" y="71" width="9" height="9" fill="#00aa00" /><rect x="132" y="71" width="9" height="9" fill="#00aa00" /><rect x="292" y="71" width="9" height="9" fill="#00aa00" /><rect x="20" y="84" width="8" height="7" fill="#666666" /><rect x="180" y="84" width="8" height="7" fill="#666666" /><rect x="340" y="84" width="8" height="7" fill="#666666" /><rect x="19" y="81" width="10" height="3" fill="#999999" /><rect x="179" y="81" width="10" height="3" fill="#999999" /><rect x="339" y="81" width="10" height="3" fill="#999999" /><rect x="22" y="86" width="2" height="2" fill="#ffcc00" /><rect x="182" y="86" width="2" height="2" fill="#ffcc00" /><rect x="342" y="86" width="2" height="2" fill="#ffcc00" /><rect x="65" y="80" width="3" height="11" fill="#004400" /><rect x="225" y="80" width="3" height="11" fill="#004400" /><rect x="385" y="80" width="3" height="11" fill="#004400" /><rect x="62" y="72" width="9" height="9" fill="#00bb00" /><rect x="222" y="72" width="9" height="9" fill="#00bb00" /><rect x="382" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-94" y="82" width="10" height="9" fill="#555555" /><rect x="66" y="82" width="10" height="9" fill="#555555" /><rect x="226" y="82" width="10" height="9" fill="#555555" /><rect x="-95" y="78" width="12" height="4" fill="#888888" /><rect x="65" y="78" width="12" height="4" fill="#888888" /><rect x="225" y="78" width="12" height="4" fill="#888888" /><rect x="-91" y="84" width="3" height="3" fill="#ffcc00" /><rect x="69" y="84" width="3" height="3" fill="#ffcc00" /><rect x="229" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-45" y="80" width="3" height="11" fill="#004400" /><rect x="115" y="80" width="3" height="11" fill="#004400" /><rect x="275" y="80" width="3" height="11" fill="#004400" /><rect x="-48" y="71" width="9" height="9" fill="#00aa00" /><rect x="112" y="71" width="9" height="9" fill="#00aa00" /><rect x="272" y="71" width="9" height="9" fill="#00aa00" /><rect x="0" y="84" width="8" height="7" fill="#666666" /><rect x="160" y="84" width="8" height="7" fill="#666666" /><rect x="320" y="84" width="8" height="7" fill="#666666" /><rect x="-1" y="81" width="10" height="3" fill="#999999" /><rect x="159" y="81" width="10" height="3" fill="#999999" /><rect x="319" y="81" width="10" height="3" fill="#999999" /><rect x="2" y="86" width="2" height="2" fill="#ffcc00" /><rect x="162" y="86" width="2" height="2" fill="#ffcc00" /><rect x="322" y="86" width="2" height="2" fill="#ffcc00" /><rect x="45" y="80" width="3" height="11" fill="#004400" /><rect x="205" y="80" width="3" height="11" fill="#004400" /><rect x="365" y="80" width="3" height="11" fill="#004400" /><rect x="42" y="72" width="9" height="9" fill="#00bb00" /><rect x="202" y="72" width="9" height="9" fill="#00bb00" /><rect x="362" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-114" y="82" width="10" height="9" fill="#555555" /><rect x="46" y="82" width="10" height="9" fill="#555555" /><rect x="206" y="82" width="10" height="9" fill="#555555" /><rect x="-115" y="78" width="12" height="4" fill="#888888" /><rect x="45" y="78" width="12" height="4" fill="#888888" /><rect x="205" y="78" width="12" height="4" fill="#888888" /><rect x="-111" y="84" width="3" height="3" fill="#ffcc00" /><rect x="49" y="84" width="3" height="3" fill="#ffcc00" /><rect x="209" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-65" y="80" width="3" height="11" fill="#004400" /><rect x="95" y="80" width="3" height="11" fill="#004400" /><rect x="255" y="80" width="3" height="11" fill="#004400" /><rect x="-68" y="71" width="9" height="9" fill="#00aa00" /><rect x="92" y="71" width="9" height="9" fill="#00aa00" /><rect x="252" y="71" width="9" height="9" fill="#00aa00" /><rect x="-20" y="84" width="8" height="7" fill="#666666" /><rect x="140" y="84" width="8" height="7" fill="#666666" /><rect x="300" y="84" width="8" height="7" fill="#666666" /><rect x="-21" y="81" width="10" height="3" fill="#999999" /><rect x="139" y="81" width="10" height="3" fill="#999999" /><rect x="299" y="81" width="10" height="3" fill="#999999" /><rect x="-18" y="86" width="2" height="2" fill="#ffcc00" /><rect x="142" y="86" width="2" height="2" fill="#ffcc00" /><rect x="302" y="86" width="2" height="2" fill="#ffcc00" /><rect x="25" y="80" width="3" height="11" fill="#004400" /><rect x="185" y="80" width="3" height="11" fill="#004400" /><rect x="345" y="80" width="3" height="11" fill="#004400" /><rect x="22" y="72" width="9" height="9" fill="#00bb00" /><rect x="182" y="72" width="9" height="9" fill="#00bb00" /><rect x="342" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="70" width="8" height="20" fill="#00ffff" /><rect x="110" y="75" width="8" height="15" fill="#00ffff" /><rect x="130" y="70" width="8" height="20" fill="#00ffff" /><rect x="145" y="75" width="8" height="15" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="95" y="85" width="8" height="5" fill="#008888" /><rect x="130" y="85" width="8" height="5" fill="#008888" /></svg>
<svg class="pixel-horse" viewBox="0 0 240 100" xmlns="http://www.w3.org/2000/svg"><rect x="0" y="91" width="300" height="3" fill="#006600" /><rect x="-134" y="82" width="10" height="9" fill="#555555" /><rect x="26" y="82" width="10" height="9" fill="#555555" /><rect x="186" y="82" width="10" height="9" fill="#555555" /><rect x="-135" y="78" width="12" height="4" fill="#888888" /><rect x="25" y="78" width="12" height="4" fill="#888888" /><rect x="185" y="78" width="12" height="4" fill="#888888" /><rect x="-131" y="84" width="3" height="3" fill="#ffcc00" /><rect x="29" y="84" width="3" height="3" fill="#ffcc00" /><rect x="189" y="84" width="3" height="3" fill="#ffcc00" /><rect x="-85" y="80" width="3" height="11" fill="#004400" /><rect x="75" y="80" width="3" height="11" fill="#004400" /><rect x="235" y="80" width="3" height="11" fill="#004400" /><rect x="-88" y="71" width="9" height="9" fill="#00aa00" /><rect x="72" y="71" width="9" height="9" fill="#00aa00" /><rect x="232" y="71" width="9" height="9" fill="#00aa00" /><rect x="-40" y="84" width="8" height="7" fill="#666666" /><rect x="120" y="84" width="8" height="7" fill="#666666" /><rect x="280" y="84" width="8" height="7" fill="#666666" /><rect x="-41" y="81" width="10" height="3" fill="#999999" /><rect x="119" y="81" width="10" height="3" fill="#999999" /><rect x="279" y="81" width="10" height="3" fill="#999999" /><rect x="-38" y="86" width="2" height="2" fill="#ffcc00" /><rect x="122" y="86" width="2" height="2" fill="#ffcc00" /><rect x="282" y="86" width="2" height="2" fill="#ffcc00" /><rect x="5" y="80" width="3" height="11" fill="#004400" /><rect x="165" y="80" width="3" height="11" fill="#004400" /><rect x="325" y="80" width="3" height="11" fill="#004400" /><rect x="2" y="72" width="9" height="9" fill="#00bb00" /><rect x="162" y="72" width="9" height="9" fill="#00bb00" /><rect x="322" y="72" width="9" height="9" fill="#00bb00" /><rect x="90" y="45" width="60" height="30" fill="#00ffff" /><rect x="125" y="25" width="30" height="25" fill="#00ffff" /><rect x="125" y="20" width="10" height="10" fill="#00ffff" /><rect x="145" y="20" width="10" height="10" fill="#00ffff" /><rect x="135" y="30" width="5" height="5" fill="#000000" /><rect x="150" y="30" width="5" height="5" fill="#000000" /><rect x="140" y="45" width="3" height="3" fill="#000000" /><rect x="148" y="45" width="3" height="3" fill="#000000" /><rect x="125" y="25" width="5" height="5" fill="#ff00ff" /><rect x="130" y="20" width="5" height="5" fill="#ff00ff" /><rect x="135" y="25" width="5" height="5" fill="#ff00ff" /><rect x="140" y="20" width="5" height="5" fill="#ff00ff" /><rect x="145" y="25" width="5" height="5" fill="#ff00ff" /><rect x="95" y="75" width="8" height="15" fill="#00ffff" /><rect x="110" y="70" width="8" height="20" fill="#00ffff" /><rect x="130" y="75" width="8" height="15" fill="#00ffff" /><rect x="145" y="70" width="8" height="20" fill="#00ffff" /><rect x="80" y="50" width="10" height="20" fill="#ff00ff" /><rect x="75" y="60" width="10" height="10" fill="#ff00ff" /><rect x="110" y="85" width="8" height="5" fill="#008888" /><rect x="145" y="85" width="8" height="5" fill="#008888" /></svg>
</div> </div>
<nav class="anker-nav"><ul><li><a href="#was-ist-die-hfg-linux-usergroup">Was ist die hfg_linux_usergroup</a></li><li><a href="#naechste-treffen">Nächste Treffen</a><ul><li><a href="#hfg-linux-usergroup-date-1-music">hfg_linux_usergroup_date_1_music</a></li><li><a href="#hfg-linux-usergroup-date-2-image-editing">hfg_linux_usergroup_date_2_image-editing</a></li><li><a href="#hfg-linux-usergroup-date-3-coding-development">hfg_linux_usergroup_date_3_coding-development</a></li><li><a href="#hfg-linux-usergroup-date-4-3d-film-fotogrammetrie">hfg_linux_usergroup_date_4_3d-film-fotogrammetrie</a></li></ul></li><li><a href="#wer-ist-die-hfg-linux-usergroup">Wer ist die hfg_linux_usergroup</a></li><li><a href="#was-sind-die-ziele-der-hfg-linux-usergroup">Was sind die Ziele der hfg_linux_usergroup</a></li><li><a href="#das-hfg-os">Das hfg_OS_</a><ul><li><a href="#versionen">Versionen</a><ul><li><a href="#haftungsausschluss-disclaimer">Haftungsausschluss / Disclaimer</a></li></ul></li><li><a href="#integrierte-programme">Integrierte Programme</a></li></ul></li></ul></nav> <h1 id="hfg-linux-usergroup">hfg_linux_usergroup</h1>
<h1 id="free-software-for-art-and-design">free-software-for-art-and-design</h1>
<p>Dieser Header-Baustein wird automatisch ueber den Inhalt <strong>aller</strong> Seiten gesetzt.</p>
<ul>
<li><a href="index.html">Startseite</a></li>
</ul>
<nav class="anker-nav"><a href="#was-ist-die-hfg-linux-usergroup">Was ist die hfg_linux_usergroup</a><a href="#naechste-treffen">Nächste Treffen</a><a href="#wer-ist-die-hfg-linux-usergroup">Wer ist die hfg_linux_usergroup</a><a href="#was-sind-die-ziele-der-hfg-linux-usergroup">Was sind die Ziele der hfg_linux_usergroup</a><a href="#das-hfg-os">Das hfg_OS_</a></nav>
</header> </header>
<main> <main>
<div class="sec0"> <h1>startseite</h1>
<h1 id="was-ist-die-hfg-linux-usergroup">Was ist die hfg_linux_usergroup</h1> <h2 id="was-ist-die-hfg-linux-usergroup">Was ist die hfg_linux_usergroup</h2>
<p>Die hfg_linux_usergroup ist eine diverse Gemeinschaft der HFG Offenbach, die sich für freie Software, Open Source und digitale Souveränität einsetzt.</p> <p>Die hfg_linux_usergroup ist eine diverse Gemeinschaft der HFG Offenbach, die sich für freie Software, Open Source und digitale Souveränität einsetzt.</p>
<p>Hintergrund ist die zentrale Bedeutung von Open Source für Kunst und Gestaltung: Es ermöglicht Demokratisierung, Transparenz, Chancengleichheit und Weiterentwicklung. Durch offene Lizenzen und frei zugängliche Software werden Wissen und kreative Prozesse entmonopolisiert. Künstler:innen und Designer:innen sind so nicht länger abhängig von proprietärer Software – die oft mit hohen Kosten, geschlossenen Systemen, Abhängigkeiten oder Abos einhergeht. Hinzu kommen ethische Bedenken wie Datenschutz oder Überwachungskapitalismus. Open Source fördert nicht nur gestalterische Freiheit, sondern auch eine kritische Reflexion über Technologie selbst.</p> <p>Hintergrund ist die zentrale Bedeutung von Open Source für Kunst und Gestaltung: Es ermöglicht Demokratisierung, Transparenz, Chancengleichheit und Weiterentwicklung. Durch offene Lizenzen und frei zugängliche Software werden Wissen und kreative Prozesse entmonopolisiert. Künstler:innen und Designer:innen sind so nicht länger abhängig von proprietärer Software – die oft mit hohen Kosten, geschlossenen Systemen, Abhängigkeiten oder Abos einhergeht. Hinzu kommen ethische Bedenken wie Datenschutz oder Überwachungskapitalismus. Open Source fördert nicht nur gestalterische Freiheit, sondern auch eine kritische Reflexion über Technologie selbst.</p>
</div> <h2 id="naechste-treffen">Nächste Treffen</h2>
<div class="sec0">
<h1 id="naechste-treffen">Nächste Treffen</h1>
<p>Die nächsten Termine für den Herbst/Winter 2026 werden aktuell geplant:</p> <p>Die nächsten Termine für den Herbst/Winter 2026 werden aktuell geplant:</p>
<div class="sec"> <p>hfg_linux_usergroup_date_1_music hfg_linux_usergroup_date_2_image-editing hfg_linux_usergroup_date_3_coding-development hfg_linux_usergroup_date_4_3d-film-fotogrammetrie</p>
<h2 id="hfg-linux-usergroup-date-1-music">hfg_linux_usergroup_date_1_music</h2> <h2 id="wer-ist-die-hfg-linux-usergroup">Wer ist die hfg_linux_usergroup</h2>
<p>Platzhalter inhalt, um was geht es hier.</p>
</div>
<div class="sec">
<h2 id="hfg-linux-usergroup-date-2-image-editing">hfg_linux_usergroup_date_2_image-editing</h2>
<p>Platzhalter inhalt, um was geht es hier.</p>
</div>
<div class="sec">
<h2 id="hfg-linux-usergroup-date-3-coding-development">hfg_linux_usergroup_date_3_coding-development</h2>
<p>Platzhalter inhalt, um was geht es hier.</p>
</div>
<div class="sec">
<h2 id="hfg-linux-usergroup-date-4-3d-film-fotogrammetrie">hfg_linux_usergroup_date_4_3d-film-fotogrammetrie</h2>
<p>Platzhalter inhalt, um was geht es hier.</p>
</div>
</div>
<div class="sec0">
<h1 id="wer-ist-die-hfg-linux-usergroup">Wer ist die hfg_linux_usergroup</h1>
<p>Alle, die sich für Linux, Open Source und die Förderung von Wissen in Kunst und Design interessieren, können Teil der Gemeinschaft werden oder an den Treffen teilnehmen. Die hfg_linux_usergroup wurde von den beiden HFG-Lehrenden Sebastian Kujas und Florian Albrecht-Schoeck gegründet und wird aktuell von ihnen moderiert.</p> <p>Alle, die sich für Linux, Open Source und die Förderung von Wissen in Kunst und Design interessieren, können Teil der Gemeinschaft werden oder an den Treffen teilnehmen. Die hfg_linux_usergroup wurde von den beiden HFG-Lehrenden Sebastian Kujas und Florian Albrecht-Schoeck gegründet und wird aktuell von ihnen moderiert.</p>
</div> <h2 id="was-sind-die-ziele-der-hfg-linux-usergroup">Was sind die Ziele der hfg_linux_usergroup</h2>
<div class="sec0">
<h1 id="was-sind-die-ziele-der-hfg-linux-usergroup">Was sind die Ziele der hfg_linux_usergroup</h1>
<p>Ziel ist es, den Einsatz freier Software in Kunst und Design zu fördern. Durch Workshops, den Aufbau von Wissensdatenbanken, Austausch und Debatten sollen Eigenermächtigung und Verantwortung für Technologie wiederhergestellt werden. Dazu entwickeln wir gemeinsam ein eigenes Linux-basiertes Betriebssystem und unterstützen bei allen Schritten des Wechsels zu freier Software.</p> <p>Ziel ist es, den Einsatz freier Software in Kunst und Design zu fördern. Durch Workshops, den Aufbau von Wissensdatenbanken, Austausch und Debatten sollen Eigenermächtigung und Verantwortung für Technologie wiederhergestellt werden. Dazu entwickeln wir gemeinsam ein eigenes Linux-basiertes Betriebssystem und unterstützen bei allen Schritten des Wechsels zu freier Software.</p>
</div> <h2 id="das-hfg-os">Das hfg_OS_</h2>
<div class="sec0"> <p>Das hfg_OS ist ein auf Debian 13 (Trixie) basierendes, Linux-basiertes Betriebssystem. Es wurde speziell für die Bedürfnisse von Künstler:innen und Designer:innen angepasst und wird kontinuierlich weiterentwickelt.</p>
<h1 id="das-hfg-os">Das hfg_OS_</h1> <p>Bald verfügbar: hfg_OS_Falbella-2026-10</p>
<p>Das hfg_OS ist ein auf Debian 13 (Trixie) basierendes, Linux-basiertes Betriebssystem. Es wurde speziell für die Bedürfnisse von Künstler:innen und Designer:innen angepasst und wird kontinuierlich weiterentwickelt. <img src="images/hfg_os_background_1_fullhd.jpg" alt="hfg_os_background_1_fullhd"></p>
<div class="sec">
<h2 id="versionen">Versionen</h2>
<table><thead><tr><th style="text-align: left">Version</th><th style="text-align: center">Name</th><th style="text-align: right">Platform</th><th>Filesize</th></tr></thead><tbody><tr><td style="text-align: left">12.10.</td><td style="text-align: center">hfg_OS_Falbella</td><td style="text-align: right">X86</td><td>4536 MB</td></tr></tbody></table>
<div class="sec">
<h3 id="haftungsausschluss-disclaimer">Haftungsausschluss / Disclaimer</h3>
<p>Diese Linux-Distribution wird unentgeltlich und im Rahmen der jeweiligen Open-Source-Lizenzen (insbesondere der GNU General Public License) bereitgestellt. Die Software wird „wie besehen" („AS IS") ohne jegliche Gewährleistung bereitgestellt – ohne Mängelgewährleistung, ohne Zusicherung von Marktgängigkeit oder Eignung für einen bestimmten Zweck. Der Autor übernimmt keinerlei Haftung für Schäden jedweder Art – einschließlich, aber nicht beschränkt auf Datenverlust, Systemausfälle, Betriebsunterbrechungen, Folgeschäden oder indirekte Schäden –, die aus der Nutzung, dem Download, der Installation oder der Weitergabe dieser Distribution entstehen. Die Nutzung erfolgt vollständig auf eigenes Risiko. Es besteht kein Anspruch auf Support, Updates, Bugfixes oder Verfügbarkeit der Download-Angebote. Alle enthaltenen Softwarekomponenten bleiben Eigentum ihrer jeweiligen Urheber und unterliegen ihren eigenen Lizenzen. Marken- und Namensrechte Dritter bleiben unberührt. Hinweis: Erstelle vor jeder Installation ein Backup deiner Daten.</p>
</div>
</div>
<div class="sec">
<h2 id="integrierte-programme">Integrierte Programme</h2>
<table><thead><tr><th style="text-align: center">Illustration und Publishing</th></tr></thead><tbody><tr><td style="text-align: center">Krita</td><td style="text-align: right">Scribus</td><td>Gimp</td></tr></tbody></table>
<table><thead><tr><th style="text-align: center">Fotografie und Film</th></tr></thead><tbody><tr><td style="text-align: center">RaWTherpee</td><td style="text-align: right">Darktable</td><td>KDNENLive</td></tr></tbody></table>
<table><thead><tr><th style="text-align: center">Programmieren</th></tr></thead><tbody><tr><td style="text-align: center">VIM</td><td style="text-align: right">KIRA</td><td>VSCODIUM</td></tr></tbody></table>
</div>
</div>
</main> </main>
<footer> <footer>
<p><a href="impressum.html">Impressum</a></p> <p>Dieser Footer-Baustein wird automatisch an das Ende <strong>aller</strong> Seiten gesetzt. Zum Beispiel mit Links: <a href="index.html">Startseite</a></p>
</footer> </footer>
</body> </body>
</html> </html>
+1 -1
View File
@@ -1 +1 @@
ich baue ein cms. Das ultimative Pferde Linux CMS
+1 -4
View File
@@ -4,18 +4,15 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{titel}}</title> <title>{{titel}}</title>
<meta name="description" content="{{beschreibung}}">
<link rel="icon" type="image/png" href="images/hfglogo.png">
<link rel="icon" type="image/svg+xml" href="images/logo.svg">
<link rel="stylesheet" href="css/style.css"> <link rel="stylesheet" href="css/style.css">
</head> </head>
<body> <body>
<div class="prompt"><a class="prompt-link" href="index.html">user@hfg_linux_group:~$ free-software-for-art-and-design</a><span class="cursor"></span></div>
<header> <header>
{{header}} {{header}}
<nav class="anker-nav">{{anker}}</nav> <nav class="anker-nav">{{anker}}</nav>
</header> </header>
<main> <main>
<h1>{{titel}}</h1>
{{inhalt}} {{inhalt}}
</main> </main>
<footer> <footer>
-25
View File
@@ -1,25 +0,0 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{titel}}</title>
<meta name="description" content="{{beschreibung}}">
<link rel="icon" type="image/png" href="images/hfglogo.png">
<link rel="icon" type="image/svg+xml" href="images/logo.svg">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="prompt"><a class="prompt-link" href="index.html">user@hfg_linux_group:~$ free-software-for-art-and-design</a><span class="cursor"></span></div>
<header>
{{header}}
<nav class="anker-nav">{{anker-start}}</nav>
</header>
<main>
{{inhalt}}
</main>
<footer>
{{footer}}
</footer>
</body>
</html>