From 97279bab0aa94b061c38733ca29a1975ae786169 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20B=C3=BClow?= Date: Thu, 29 Dec 2022 03:12:53 +0100 Subject: [PATCH] initial commit --- .gitignore | 1 + .hugo_build.lock | 0 Dockerfile | 2 + JohannesBülow_public.asc | 52 +++++++++++++++++++ archetypes/default.md | 6 +++ config.toml | 41 +++++++++++++++ content/_index.md | 6 +++ content/about.md | 15 ++++++ content/consulting.md | 23 ++++++++ content/expertise.md | 32 ++++++++++++ content/impressum.md | 35 +++++++++++++ deployment.yml | 22 ++++++++ ...s_06c91705bc48efa09403e08ed1e70fce.content | 3 ++ ...scss_06c91705bc48efa09403e08ed1e70fce.json | 1 + themes/hugo-theme-terminal | 1 + 15 files changed, 240 insertions(+) create mode 100644 .gitignore create mode 100644 .hugo_build.lock create mode 100644 Dockerfile create mode 100644 JohannesBülow_public.asc create mode 100644 archetypes/default.md create mode 100644 config.toml create mode 100644 content/_index.md create mode 100644 content/about.md create mode 100644 content/consulting.md create mode 100644 content/expertise.md create mode 100644 content/impressum.md create mode 100644 deployment.yml create mode 100644 resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.content create mode 100644 resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.json create mode 160000 themes/hugo-theme-terminal diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1377554 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.swp diff --git a/.hugo_build.lock b/.hugo_build.lock new file mode 100644 index 0000000..e69de29 diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d37379b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,2 @@ +FROM nginx:latest +COPY public/ /usr/lib/nginx/html/ diff --git a/JohannesBülow_public.asc b/JohannesBülow_public.asc new file mode 100644 index 0000000..0c5c07a --- /dev/null +++ b/JohannesBülow_public.asc @@ -0,0 +1,52 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +ESb9/XxtkT6u +=iBUW +-----END PGP PUBLIC KEY BLOCK----- diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..0af455a --- /dev/null +++ b/config.toml @@ -0,0 +1,41 @@ +baseurl = "https://jmbit.de/" +languageCode = "de-de" +theme = "hugo-theme-terminal" +paginate = 5 + +[params] + contentTypeName = "posts" + themeColor = "blue" + showMenuItems = 5 + fullWidthTheme = true + centerTheme = false + +[languages] + [languages.de] + title = "Johannes Bülow IT Consulting" + subtitle = "Consulting & Support zu IT-Sicherheit, Linux, Hosting, Entwicklung und mehr" + keywords = "" + copyright = "Johannes Bülow" + menuMore = "Mehr anzeigen" + readMore = "Weiterlesen" + readOtherPosts = "Weitere Artikel" + owner = "Johannes Bülow" + + + [languages.en.params.logo] + logoText = "JMB IT" + logoHomeLink = "/" + + [languages.en.menu] + [[languages.en.menu.main]] + identifier = "about" + name = "Über mich" + url = "/about" + [[languages.en.menu.main]] + identifier = "Expertise" + name = "Expertise" + url = "/expertise" + [[languages.en.menu.main]] + identifier = "consulting" + name = "Consulting" + url = "/consulting/" diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..37d211f --- /dev/null +++ b/content/_index.md @@ -0,0 +1,6 @@ +--- +title: "Home" +--- +# Johannes Bülow IT Consulting & Service +**Consulting und Support für IT-Sicherheit, Linux, Hosting, Entwicklung und mehr** + diff --git a/content/about.md b/content/about.md new file mode 100644 index 0000000..b2d6510 --- /dev/null +++ b/content/about.md @@ -0,0 +1,15 @@ +--- +title: "Über mich" +draft: false +--- + + +Meine Schwerpunkte sind Open Source, Automatisierung, Sicherheit und Datenbanken. + +Mit den folgenden Technologien habe ich insbesondere Erfahrungen: +- libvirt und Proxmox QEMU/KVM +- podman/Docker +- VMware vSphere +- Debian, Ubuntu, RHEL-Derivate, SuSE Linux +- nginx und apache2 +- Ansible diff --git a/content/consulting.md b/content/consulting.md new file mode 100644 index 0000000..7f6b1bc --- /dev/null +++ b/content/consulting.md @@ -0,0 +1,23 @@ +--- +title: "Consulting" +draft: false +--- + +## IT-Sicherheit +### Konzeptionierung +Sie und Ihr Unternehmen benötigen Hilfe, eine IT-Sicherheitsstrategie aufzubauen? +### Umsetzung + + + +## Linux +### Administration + + +### Installation / Updates + + +### Troubleshooting + + +## Devops diff --git a/content/expertise.md b/content/expertise.md new file mode 100644 index 0000000..c080aaf --- /dev/null +++ b/content/expertise.md @@ -0,0 +1,32 @@ +--- +title: "Expertise" +draft: false +--- + +## Anwendungen + +## Nextcloud +Freie Kollaborations- und Dateimanagementlösung. Mit Nextcloud können Sie Bilder, Dokumente und andere Dateien synchron halten und bearbeiten. Nextcloud hat viele Integrationen und Apps, z.B. mit Collabora oder Only Office, um Dateien direkt im Browser bearbeiten zu können. +Nextcloud kan im Gegensatz zu Office 365 oder Google Drive DSGVO-Konform in Deutschland gehostet und betrieben werden. + +## FreeIPA +FreeIPA ist eine Open-Source Lösung zur Identitätsverwaltung. FreeIPA kann Kerberos, LDAP, NTP, DNS, Zertifikatsverwaltung und mehr. Etwa vergleichbar mit Microsoft Active Directory, aber Open Source. Upstream-Projekt für RedHat Identity Management + +## Webserver +Sowohl nginx als auch Apache sind mir geläufig. + + +## Virtualisierung & Container +### Virtualisierung +Im Bereich Virtualisierung kenne ich mich insbesondere mit VMware vSphere und QEMU/KVM (Proxmox, Libvirt) aus. + +### Container +Mit den Container-Verwaltungstools Docker, Podman und Kubernetes konnte ich bereits einige Erfahrung sammeln, und nutze diese regelmäßig. + +## Linux +### Distributionen +Ich habe Kenntnisse in den meisten gängingen Distributionen, aber besonders im Umgang mit Debian (Und darauf basierten Systemen). +Ansonsten kenne ich auch SuSE Linux, Ubuntu, RHEL und darauf basierende Distributionen. + +## Verwaltungssoftware +Meine Linux-Server verwalte ich mithilfe von Ansible diff --git a/content/impressum.md b/content/impressum.md new file mode 100644 index 0000000..e5a97db --- /dev/null +++ b/content/impressum.md @@ -0,0 +1,35 @@ +--- +title: "Impressum" +draft: false +--- +Impressum + +Angaben gemäß § 5 TMG + +Johannes Bülow +Bamberger Str. 26 +74078 Heilbronn + +Kontakt: +Telefon: 0176-64370805 + +E-Mail: kontakt@jmbit.de + +Verantwortlich für den Inhalt nach § 55 Abs. 2 RStV: +Johannes Bülow +Bamberger Str. 26 +74078 Heilbronn + +Haftungsausschluss: + +Haftung für Inhalte + +Die Inhalte unserer Seiten wurden mit größter Sorgfalt erstellt. Für die Richtigkeit, Vollständigkeit und Aktualität der Inhalte können wir jedoch keine Gewähr übernehmen. Als Diensteanbieter sind wir gemäß § 7 Abs.1 TMG für eigene Inhalte auf diesen Seiten nach den allgemeinen Gesetzen verantwortlich. Nach §§ 8 bis 10 TMG sind wir als Diensteanbieter jedoch nicht verpflichtet, übermittelte oder gespeicherte fremde Informationen zu überwachen oder nach Umständen zu forschen, die auf eine rechtswidrige Tätigkeit hinweisen. Verpflichtungen zur Entfernung oder Sperrung der Nutzung von Informationen nach den allgemeinen Gesetzen bleiben hiervon unberührt. Eine diesbezügliche Haftung ist jedoch erst ab dem Zeitpunkt der Kenntnis einer konkreten Rechtsverletzung möglich. Bei Bekanntwerden von entsprechenden Rechtsverletzungen werden wir diese Inhalte umgehend entfernen. + +Haftung für Links + +Unser Angebot enthält Links zu externen Webseiten Dritter, auf deren Inhalte wir keinen Einfluss haben. Deshalb können wir für diese fremden Inhalte auch keine Gewähr übernehmen. Für die Inhalte der verlinkten Seiten ist stets der jeweilige Anbieter oder Betreiber der Seiten verantwortlich. Die verlinkten Seiten wurden zum Zeitpunkt der Verlinkung auf mögliche Rechtsverstöße überprüft. Rechtswidrige Inhalte waren zum Zeitpunkt der Verlinkung nicht erkennbar. Eine permanente inhaltliche Kontrolle der verlinkten Seiten ist jedoch ohne konkrete Anhaltspunkte einer Rechtsverletzung nicht zumutbar. Bei Bekanntwerden von Rechtsverletzungen werden wir derartige Links umgehend entfernen. + +Website Impressum erstellt durch impressum-generator.de von der Kanzlei Hasselbach + + diff --git a/deployment.yml b/deployment.yml new file mode 100644 index 0000000..9a26d1c --- /dev/null +++ b/deployment.yml @@ -0,0 +1,22 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: www-jmbit-de + labels: + app: nginx-jmbit-www +spec: + replicas: 3 + selector: + matchLabels: + app: nginx-jmbit-www + template: + metadata: + labels: + app: nginx-jmbit-www + spec: + containers: + - name: www-jmbit-de + image: localhost/www-jmbit-de + ports: + - containerPort: 80 + diff --git a/resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.content b/resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.content new file mode 100644 index 0000000..ba177ce --- /dev/null +++ b/resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.content @@ -0,0 +1,3 @@ +:root{--phoneWidth: (max-width: 684px);--tabletWidth: (max-width: 900px)}@font-face{font-display:swap;font-family:'Fira Code';font-style:normal;font-weight:400;src:url("../fonts/FiraCode-Regular.woff") format("woff");font-display:swap}@font-face{font-display:swap;font-family:'Fira Code';font-style:normal;font-weight:800;src:url("../fonts/FiraCode-Bold.woff") format("woff");font-display:swap}.button-container{display:table;margin-left:auto;margin-right:auto}button,.button,a.button{position:relative;display:flex;align-items:center;justify-content:center;padding:8px 18px;margin-bottom:5px;text-decoration:none;text-align:center;border-radius:0;border:1px solid #23B0FF;background:#23B0FF;font:inherit;font-weight:bold;appearance:none;cursor:pointer;outline:none}button:hover,.button:hover,a.button:hover{background:#23b0ff}button.outline,.button.outline,a.button.outline{background:transparent;box-shadow:none;padding:8px 18px}button.outline :hover,.button.outline :hover,a.button.outline :hover{transform:none;box-shadow:none}button.link,.button.link,a.button.link{background:none;font-size:1rem}button.small,.button.small,a.button.small{font-size:.8rem}button.wide,.button.wide,a.button.wide{min-width:200px;padding:14px 24px}a.read-more,a.read-more:hover,a.read-more:active{display:inline-flex;border:none;color:#23B0FF;background:none;box-shadow:none;padding:0;margin:20px 0;max-width:100%}.code-toolbar{margin-bottom:20px}.code-toolbar .toolbar-item a{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;margin-bottom:5px;text-decoration:none;text-align:center;font-size:13px;font-weight:500;border-radius:8px;border:1px solid transparent;appearance:none;cursor:pointer;outline:none}input,textarea,select{background:transparent;color:#23B0FF;border:1px solid #23B0FF;border-radius:0;padding:10px;font:inherit;appearance:none}input:focus,input :active,textarea:focus,textarea :active,select:focus,select :active{border-color:#fff;outline:1px solid #fff}input:active,textarea:active,select:active{box-shadow:none}select{background:#1d212c}select option{background:#1d212c}::placeholder{color:color-mod(#23B0FF) a(50%)}.header{display:flex;flex-direction:column;position:relative}@media print{.header{display:none}}.header__inner{display:flex;align-items:center;justify-content:space-between}.header__logo{display:flex;flex:1}.header__logo:after{content:'';background:repeating-linear-gradient(90deg, #23B0FF, #23B0FF 2px, transparent 0, transparent 10px);display:block;width:100%;right:10px}.header__logo a{flex:0 0 auto;max-width:100%;text-decoration:none}.navigation-menu{display:flex;align-items:flex-start;justify-content:space-between;margin:20px 1px}@media (max-width: 684px){.navigation-menu{margin:0}}.navigation-menu__inner{display:flex;flex:1;flex-wrap:wrap;list-style:none;margin:0;padding:0}.navigation-menu__inner>li{flex:0 0 auto;margin-bottom:10px}.navigation-menu__inner>li:not(:last-of-type){margin-right:20px}@media (max-width: 684px){.navigation-menu__inner{flex-direction:column;align-items:flex-start;padding:0}.navigation-menu__inner li{margin:0;padding:5px}}.navigation-menu .spacer{flex-grow:1 !important}.menu{display:flex;flex-direction:column;position:relative;list-style:none;padding:0;margin:0}.menu__trigger{margin-right:0 !important;color:#23B0FF;user-select:none;cursor:pointer}.menu__dropdown{display:none;flex-direction:column;position:absolute;background:#1d212c;box-shadow:0 10px #1d212c,-10px 10px #1d212c,10px 10px #1d212c;color:white;border:2px solid;margin:0;padding:10px;top:10px;left:0;list-style:none;z-index:99}.open .menu__dropdown{display:flex}.menu__dropdown>li{flex:0 0 auto}.menu__dropdown>li:not(:last-of-type){margin-bottom:10px}.menu__dropdown>li a{display:flex;padding:5px}@media (max-width: 684px){.menu--desktop{display:none}}.menu--mobile .menu__trigger{color:#23B0FF;border:2px solid;margin-left:10px;height:100%;padding:3px 8px;margin-bottom:0 !important;position:relative;cursor:pointer;display:none}@media (max-width: 684px){.menu--mobile .menu__trigger{display:block}}@media (max-width: 684px){.menu--mobile .menu__dropdown{left:auto;right:0}}.menu--mobile li{flex:0 0 auto}.menu--mobile li:not(:last-of-type){margin-bottom:10px}.menu--language-selector .menu__trigger{color:#23B0FF;border:2px solid;margin-left:10px;height:100%;padding:3px 8px;margin-bottom:0 !important;position:relative;cursor:pointer}@media (max-width: 684px){.menu--language-selector .menu__trigger{display:none}}.menu--language-selector .menu__dropdown{left:auto;right:0}.logo{display:flex;align-items:center;text-decoration:none;background:#23B0FF;color:black;padding:5px 10px}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{margin:0;padding:0;font-family:'Fira Code', Monaco, Consolas, Ubuntu Mono, monospace;font-size:1rem;line-height:1.54;letter-spacing:-0.02em;background-color:#1d212c;color:#fff;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-feature-settings:"liga", "tnum", "zero", "ss01", "locl";font-variant-ligatures:contextual;-webkit-overflow-scrolling:touch;-webkit-text-size-adjust:100%}@media (max-width: 684px){body{font-size:1rem}}.headings--one-size h1,.headings--one-size h2,.headings--one-size h3,.headings--one-size h4,.headings--one-size h5,.headings--one-size h6{line-height:1.3}.headings--one-size h1:not(first-child),.headings--one-size h2:not(first-child),.headings--one-size h3:not(first-child),.headings--one-size h4:not(first-child),.headings--one-size h5:not(first-child),.headings--one-size h6:not(first-child){margin-top:40px}.headings--one-size h1,.headings--one-size h2,.headings--one-size h3{font-size:1.4rem}.headings--one-size h4,.headings--one-size h5,.headings--one-size h6{font-size:1.2rem}a{color:inherit}img{display:block;max-width:100%}img.left{margin-right:auto}img.center{margin-left:auto;margin-right:auto}img.right{margin-left:auto}p{margin-bottom:20px}figure{display:table;max-width:100%;margin:25px 0}figure.left{margin-right:auto}figure.center{margin-left:auto;margin-right:auto}figure.right{margin-left:auto}figure figcaption{font-size:14px;padding:5px 10px;margin-top:5px;background:#23B0FF;color:#1d212c}figure figcaption.left{text-align:left}figure figcaption.center{text-align:center}figure figcaption.right{text-align:right}code,kbd{font-family:'Fira Code', Monaco, Consolas, Ubuntu Mono, monospace !important;font-feature-settings:normal;background:color-mod(#23B0FF) a(20%);color:#23B0FF;padding:1px 6px;margin:0 2px;font-size:.95rem}code code,code kbd,kbd code,kbd kbd{background:transparent;padding:0;margin:0}pre{background:transparent !important;padding:20px 10px;margin:40px 0;font-size:.95rem !important;overflow:auto;border-top:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(255,255,255,0.1)}pre+pre{border-top:0;margin-top:-40px}@media (max-width: 684px){pre{white-space:pre-wrap;word-wrap:break-word}}pre code{background:none !important;margin:0;padding:0;font-size:inherit;border:none}blockquote{border-top:1px solid #23B0FF;border-bottom:1px solid #23B0FF;margin:40px 0;padding:25px}@media (max-width: 684px){blockquote{padding-right:0}}blockquote p:first-of-type{margin-top:0}blockquote p:last-of-type{margin-bottom:0}blockquote p{position:relative}blockquote p:first-of-type:before{content:'>';display:block;position:absolute;left:-25px;color:#23B0FF}blockquote.twitter-tweet{position:relative;background:color-mod(#23B0FF) a(10%);font:inherit;color:inherit;border:1px solid #23B0FF;padding-top:60px}blockquote.twitter-tweet p:before{content:''}blockquote.twitter-tweet:before{content:'> From Twitter:';position:absolute;top:20px;color:#23B0FF;font-weight:bold}blockquote.twitter-tweet a{color:#23B0FF}table{table-layout:auto;border-collapse:collapse;width:100%;margin:40px 0}table,th,td{border:1px dashed #23B0FF;padding:10px}th{color:#23B0FF}ul,ol{margin-left:22px;padding:0}ul li,ol li{position:relative}@media (max-width: 684px){ul,ol{margin-left:20px}}ol{list-style:none;counter-reset:li}ol li{counter-increment:li}ol li:before{content:counter(li);position:absolute;right:calc(100% + 10px);color:#23B0FF;display:inline-block;text-align:right}ol ol{margin-left:38px}ol ol li{counter-increment:li}ol ol li:before{content:counters(li, ".") " "}mark{background:#23B0FF;color:#1d212c}.container{display:flex;flex-direction:column;padding:40px;max-width:864px;min-height:100vh;border-right:1px solid rgba(255,255,255,0.1)}.container.full,.container.center{border:none;margin:0 auto}.container.full{max-width:100%}@media (max-width: 684px){.container{padding:20px}}@media print{.container{display:initial}}.content{display:flex;flex-direction:column}@media print{.content{display:initial}}hr{width:100%;border:none;background:rgba(255,255,255,0.1);height:1px}.hidden{display:none}sup{line-height:0}.index-content{margin-top:20px}.framed{border:1px solid #23B0FF;padding:20px}.framed *:first-child{margin-top:0}.framed *:last-child{margin-bottom:0}.posts{width:100%}.post{width:100%;text-align:left;margin:20px auto;padding:20px 0}.post:not(:last-of-type){border-bottom:1px solid rgba(255,255,255,0.1)}.post-meta{font-size:1rem;margin-bottom:10px;color:opcift(#23B0FF, 70%)}.post-title{position:relative;color:#23B0FF;margin:0 0 15px;padding-bottom:15px;border-bottom:3px dotted #23B0FF}.post-title:after{content:'';position:absolute;bottom:2px;display:block;width:100%;border-bottom:3px dotted #23B0FF}.post-title a{text-decoration:none}.post-tags{display:block;margin-bottom:20px;font-size:1rem;opacity:.5}.post-tags a{text-decoration:none}.post-content{margin-top:30px}.post-cover{border:20px solid #23B0FF;background:transparent;margin:40px 0;padding:20px}@media (max-width: 684px){.post-cover{padding:10px;border-width:10px}}.post ul{list-style:none}.post ul li:not(:empty):before{content:'-';position:absolute;left:-20px;color:#23B0FF}.post--regulation h1{justify-content:center}.post--regulation h2{justify-content:center;margin-bottom:10px}.post--regulation h2+h2{margin-top:-10px;margin-bottom:20px}.hanchor{color:#23b0ff;text-decoration:none;margin-left:10px;visibility:hidden}h1:hover a,h2:hover a,h3:hover a,h4:hover a{visibility:visible}.footnotes{color:#fff}.pagination{margin-top:50px}@media print{.pagination{display:none}}.pagination__title{display:flex;text-align:center;position:relative;margin:100px 0 20px}.pagination__title-h{text-align:center;margin:0 auto;padding:5px 10px;background:#23adfb;font-size:.8rem;text-transform:uppercase;text-decoration:none;letter-spacing:.1em;z-index:1}.pagination__title hr{position:absolute;left:0;right:0;width:100%;margin-top:15px;z-index:0}.pagination__buttons{display:flex;align-items:center;justify-content:center}.pagination__buttons a{text-decoration:none}.button{position:relative;display:inline-flex;flex:1;align-items:center;justify-content:center;font-size:1rem;border-radius:8px;padding:0;cursor:pointer;appearance:none;overflow:hidden}.button+.button{margin-left:10px}.button a{display:flex;padding:8px 16px;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.button__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.button.next .button__icon{margin-left:8px}.button.previous .button__icon{margin-right:8px}.footer{padding:40px 0;flex-grow:0;opacity:.5}.footer__inner{display:flex;align-items:center;justify-content:space-between;margin:0;width:760px;max-width:100%}@media (max-width: 900px){.footer__inner{flex-direction:column}}.footer a{color:inherit}.footer .copyright{display:flex;flex-direction:row;align-items:center;font-size:1rem}.footer .copyright--user{margin:auto;text-align:center}.footer .copyright>*:first-child:not(:only-child){margin-right:10px}@media (max-width: 900px){.footer .copyright>*:first-child:not(:only-child){border:none;padding:0;margin:0}}@media (max-width: 900px){.footer .copyright{flex-direction:column;margin-top:10px}}code[class*="language-"],pre[class*="language-"]{color:#ccc;background:none;font-family:Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*="language-"]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*="language-"],pre[class*="language-"]{background:#2d2d2d}:not(pre)>code[class*="language-"]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:bold}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}pre[data-line]{position:relative;padding:1em 0 1em 3em}.line-highlight{position:absolute;left:0;right:0;padding:inherit 0;margin-top:1em;background:rgba(153,122,102,0.08);background:linear-gradient(to right, rgba(153,122,102,0.1) 70%, rgba(153,122,102,0));pointer-events:none;line-height:inherit;white-space:pre}@media print{.line-highlight{-webkit-print-color-adjust:exact;color-adjust:exact}}.line-highlight:before,.line-highlight[data-end]:after{content:attr(data-start);position:absolute;top:.4em;left:.6em;min-width:1em;padding:0 .5em;background-color:rgba(153,122,102,0.4);color:#f5f2f0;font:bold 65%/1.5 sans-serif;text-align:center;vertical-align:.3em;border-radius:999px;text-shadow:none;box-shadow:0 1px white}.line-highlight[data-end]:after{content:attr(data-end);top:auto;bottom:.4em}.line-numbers .line-highlight:before,.line-numbers .line-highlight:after{content:none}pre[id].linkable-line-numbers span.line-numbers-rows{pointer-events:all}pre[id].linkable-line-numbers span.line-numbers-rows>span:before{cursor:pointer}pre[id].linkable-line-numbers span.line-numbers-rows>span:hover:before{background-color:rgba(128,128,128,0.2)}pre[class*="language-"].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}pre[class*="language-"].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:0.8em;text-align:right}.command-line-prompt{border-right:1px solid #999;display:block;float:left;font-size:100%;letter-spacing:-1px;margin-right:1em;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.command-line-prompt>span:before{color:#999;content:' ';display:block;padding-right:0.8em}.command-line-prompt>span[data-user]:before{content:"[" attr(data-user) "@" attr(data-host) "] $"}.command-line-prompt>span[data-user="root"]:before{content:"[" attr(data-user) "@" attr(data-host) "] #"}.command-line-prompt>span[data-prompt]:before{content:attr(data-prompt)}div.code-toolbar{position:relative}div.code-toolbar>.toolbar{position:absolute;top:.3em;right:.2em;transition:opacity 0.3s ease-in-out;opacity:0}div.code-toolbar:hover>.toolbar{opacity:1}div.code-toolbar:focus-within>.toolbar{opacity:1}div.code-toolbar>.toolbar>.toolbar-item{display:inline-block}div.code-toolbar>.toolbar>.toolbar-item>a{cursor:pointer}div.code-toolbar>.toolbar>.toolbar-item>button{background:none;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}div.code-toolbar>.toolbar>.toolbar-item>a,div.code-toolbar>.toolbar>.toolbar-item>button,div.code-toolbar>.toolbar>.toolbar-item>span{color:#bbb;font-size:.8em;padding:0 .5em;background:#f5f2f0;background:rgba(224,224,224,0.2);box-shadow:0 2px 0 0 rgba(0,0,0,0.2);border-radius:.5em}div.code-toolbar>.toolbar>.toolbar-item>a:hover,div.code-toolbar>.toolbar>.toolbar-item>a:focus,div.code-toolbar>.toolbar>.toolbar-item>button:hover,div.code-toolbar>.toolbar>.toolbar-item>button:focus,div.code-toolbar>.toolbar>.toolbar-item>span:hover,div.code-toolbar>.toolbar>.toolbar-item>span:focus{color:inherit;text-decoration:none}code.language-css,code.language-scss,.token.boolean,.token.string,.token.entity,.token.url,.language-css .token.string,.language-scss .token.string,.style .token.string,.token.attr-value,.token.keyword,.token.control,.token.directive,.token.statement,.token.regex,.token.atrule,.token.number,.token.inserted,.token.important{color:#23B0FF !important}.token.tag-id,.token.atrule-id,.token.operator,.token.unit,.token.placeholder,.token.variable,.token.tag,.token.attr-name,.token.namespace,.token.deleted,.token.property,.token.class-name,.token.constant,.token.symbol{color:#23b0ff !important}.token.property,.token.function,.token.function-name,.token.deleted,code.language-javascript,code.language-html,.command-line-prompt>span:before{color:#98999a !important}.token.selector,.token.tag,.token.punctuation{color:white}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:rgba(255,255,255,0.3) !important}.token.namespace{opacity:.7 !important}pre[data-line]{position:relative}pre[class*="language-"]{margin:0;padding:0;overflow:auto}.line-highlight{position:absolute;left:0;right:0;padding:0;margin:0;background:#2faef5;pointer-events:none;line-height:inherit;white-space:pre}.line-highlight:before,.line-highlight[data-end]:after{content:attr(data-start);position:absolute;left:.6em;min-width:1em;padding:0 .5em;background-color:rgba(153,122,102,0.4);color:#f5f2f0;font:bold 65%/1.5 sans-serif;text-align:center;vertical-align:.3em;border-radius:999px;text-shadow:none;box-shadow:0 1px white}.line-highlight[data-end]:after{content:attr(data-end);top:auto;bottom:.4em}.line-numbers .line-highlight:before,.line-numbers .line-highlight:after{content:none}.code-toolbar{position:relative;margin:40px 0;padding:20px;border:1px solid rgba(255,255,255,0.1)}.code-toolbar+.code-toolbar,.code-toolbar+.highlight,.code-toolbar+.highlight .code-toolbar{border-top:0;margin-top:calc(-1 * $code-margin)}.code-toolbar pre,.code-toolbar code{border:none}.code-toolbar code{display:block;color:inherit}.code-toolbar>.toolbar button{font-size:.8em !important;background:rgba(224,224,224,0.2) !important;color:#bbb !important;box-shadow:0 2px 0 0 rgba(0,0,0,0.2) !important;border-radius:0 !important;margin:6px !important;padding:10px !important;user-select:none}.collapsable-code{position:relative;width:100%;margin:40px 0}.collapsable-code input[type="checkbox"]{position:absolute;visibility:hidden}.collapsable-code input[type="checkbox"]:checked~pre,.collapsable-code input[type="checkbox"]:checked~.code-toolbar pre{height:0;padding:0;border-top:none}.collapsable-code input[type="checkbox"]:checked~.code-toolbar{padding:0;border-top:none}.collapsable-code input[type="checkbox"]:checked~.code-toolbar .toolbar{display:none}.collapsable-code input[type="checkbox"]:checked~label .collapsable-code__toggle:after{content:attr(data-label-expand)}.collapsable-code label{position:relative;display:flex;justify-content:space-between;min-width:30px;min-height:30px;margin:0;border-bottom:1px solid #2faef5;cursor:pointer}.collapsable-code__title{flex:1;color:#23B0FF;padding:3px 10px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collapsable-code__language{color:#23B0FF;border:1px solid #2faef5;border-bottom:none;text-transform:uppercase;padding:3px 10px}.collapsable-code__toggle{color:#23B0FF;font-size:16px;padding:3px 10px}.collapsable-code__toggle:after{content:attr(data-label-collapse)}.collapsable-code pre{margin-top:0}.collapsable-code pre::first-line{line-height:0}.collapsable-code .code-toolbar{margin:0}.terms h1{color:#23B0FF}.terms h3{font-size:initial}body .gist .blob-num,body .gist .blob-code-inner{border:none} + +/*# sourceMappingURL=style.css.map */ \ No newline at end of file diff --git a/resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.json b/resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.json new file mode 100644 index 0000000..8d03ad7 --- /dev/null +++ b/resources/_gen/assets/scss/css/base.scss_06c91705bc48efa09403e08ed1e70fce.json @@ -0,0 +1 @@ +{"Target":"style.css","MediaType":"text/css","Data":{}} \ No newline at end of file diff --git a/themes/hugo-theme-terminal b/themes/hugo-theme-terminal new file mode 160000 index 0000000..b931e14 --- /dev/null +++ b/themes/hugo-theme-terminal @@ -0,0 +1 @@ +Subproject commit b931e14ece7fa90ef64002cecda0f5cdeb6cc41d