summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke T. Shumaker <lukeshu@lukeshu.com>2024-04-20 14:55:20 -0600
committerLuke T. Shumaker <lukeshu@lukeshu.com>2024-04-20 14:55:20 -0600
commit966810c7730655e5db3c2d4b31afde4940acbae5 (patch)
tree399e399321546d2bffc9b56edbe34b8f440244b5
parent6b080f09c280dad73a4a83f421cbfb8b10f2450e (diff)
.editorconfig for consistent whitespace
-rw-r--r--.editorconfig11
-rw-r--r--aux/nginx.conf4
-rw-r--r--cmd/generate/imworkingon.html.tmpl166
-rw-r--r--public/imworkingon/imworkingon.scss164
-rw-r--r--public/index.html176
-rw-r--r--public/sponsor/index.html134
-rw-r--r--public/sponsor/sponsor.css68
7 files changed, 368 insertions, 355 deletions
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..eab871e
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,11 @@
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+insert_final_newline = true
+indent_style = tab
+
+[*.yml]
+indent_style = space
+indent_size = 2
diff --git a/aux/nginx.conf b/aux/nginx.conf
index 774c387..5bd4f6a 100644
--- a/aux/nginx.conf
+++ b/aux/nginx.conf
@@ -1,4 +1,4 @@
-# -*- Mode: nginx; nginx-indent-level: 8; indent-tabs-mode: t -*-
+# -*- Mode: nginx -*-
server {
server_name www.lukeshu.com;
@@ -22,7 +22,7 @@ server {
}
}
location /avatar/ {
- try_files $uri.png =404;
+ try_files $uri.png =404;
}
}
diff --git a/cmd/generate/imworkingon.html.tmpl b/cmd/generate/imworkingon.html.tmpl
index 6828002..fb24ac6 100644
--- a/cmd/generate/imworkingon.html.tmpl
+++ b/cmd/generate/imworkingon.html.tmpl
@@ -1,90 +1,90 @@
<!DOCTYPE html>
<html lang="en">
- <head>
- <meta charset="utf-8">
- <title>Luke is working on…</title>
- <link rel="stylesheet" type="text/css" href="../blog/assets/style.css">
- <link rel="stylesheet" type="text/css" href="imworkingon.css">
- </head>
- <body>
- <header><a href="/">Luke T. Shumaker</a> » imworkingon</header>
+<head>
+ <meta charset="utf-8">
+ <title>Luke is working on…</title>
+ <link rel="stylesheet" type="text/css" href="../blog/assets/style.css">
+ <link rel="stylesheet" type="text/css" href="imworkingon.css">
+</head>
+<body>
+ <header><a href="/">Luke T. Shumaker</a> » imworkingon</header>
- <section id="intro">
- <h1>Luke is working on<br/><small>improving the GNU/Linux ecosystem</small></h1>
- <p>If you find this work valuable, please
- consider <a class="em" href="../sponsor/">sponsoring me</a>.</p>
- </section>
+ <section id="intro">
+ <h1>Luke is working on<br/><small>improving the GNU/Linux ecosystem</small></h1>
+ <p>If you find this work valuable, please
+ consider <a class="em" href="../sponsor/">sponsoring me</a>.</p>
+ </section>
- <section id="tags">
- <h2>Top themes</h2>
- {{- range $tagName, $tagInfo := .Tags }}
- <article class="tag" id="tag-{{ $tagName }}">
- <h2><a href="#tag-{{ $tagName }}">#{{ $tagName }}</a> : {{ $tagInfo.PrettyName }}</h2>
- <div clasg="tag-desc">{{ $tagInfo.Desc | md2html }}</div>
- </article>
- {{- end }}
- </section>
+ <section id="tags">
+ <h2>Top themes</h2>
+ {{- range $tagName, $tagInfo := .Tags }}
+ <article class="tag" id="tag-{{ $tagName }}">
+ <h2><a href="#tag-{{ $tagName }}">#{{ $tagName }}</a> : {{ $tagInfo.PrettyName }}</h2>
+ <div clasg="tag-desc">{{ $tagInfo.Desc | md2html }}</div>
+ </article>
+ {{- end }}
+ </section>
- <section id="contribs-pending">
- <h2>In-progress work</h2>
- {{- range $contrib := .Contribs }}
- {{- if or (eq $contrib.StatusClass "merged") (eq $contrib.StatusClass "released") }}{{ continue }}{{ end }}
- {{ $upstream := $contrib | getUpstream }}
- <article class="contrib {{ $contrib.StatusClass }}-contrib">
- <div class="contrib-upstream-name"><a class="em" href="{{ index $upstream.URLs 0 }}">{{ $upstream.Name }}</a></div>
- <div class="contrib-upstream-desc">{{ $upstream.Desc | md2html }}</div>
- <div class="contrib-urls">
- {{- range $url := $contrib.URLs }}
- <a href="{{ $url }}"><tt>{{ $url }}</tt></a><br />
- {{- end }}
- </div>
- <div class="contrib-tags">
- {{- range $tag := $contrib.Tags }}
- <a href="#tag-{{ $tag }}">#{{ $tag }}</a> {{/* */}}
- {{- end }}
- </div>
- <div class="contrib-submitted">Submitted: {{ timeTag $contrib.SubmittedAt "2006-01-02" }}</div>
- <div class="contrib-updated">{{ if not $contrib.LastUpdatedAt.IsZero }}Last updated: {{ timeTag $contrib.LastUpdatedAt "2006-01-02" }}{{ end }}</div>
- <div class="contrib-status">Status: {{ $contrib.Status }}</div>
- <div class="contrib-desc">
- {{- $contrib.Desc | md2html }}
- {{- if $contrib.SponsoredBy }}<p>Sponsored-by: {{ $contrib.SponsoredBy }}</p>{{ end -}}
- </div>
- </article>
- {{- end }}
- </section>
- <section id="contribs-completed">
- <h2>Completed work</h2>
- {{- range $contrib := .Contribs }}
- {{- if or (eq $contrib.StatusClass "merged") (eq $contrib.StatusClass "released") | not }}{{ continue }}{{ end }}
- {{ $upstream := $contrib | getUpstream }}
- <article class="contrib {{ $contrib.StatusClass }}-contrib">
- <div class="contrib-upstream-name"><a class="em" href="{{ index $upstream.URLs 0 }}">{{ $upstream.Name }}</a></div>
- <div class="contrib-upstream-desc">{{ $upstream.Desc | md2html }}</div>
- <div class="contrib-urls">
- {{- range $url := $contrib.URLs }}
- <a href="{{ $url }}"><tt>{{ $url }}</tt></a><br />
- {{- end }}
- </div>
- <div class="contrib-tags">
- {{- range $tag := $contrib.Tags }}
- <a href="#tag-{{ $tag }}">#{{ $tag }}</a> {{/* */}}
- {{- end }}
- </div>
- <div class="contrib-submitted">Submitted: {{ timeTag $contrib.SubmittedAt "2006-01-02" }}</div>
- <div class="contrib-updated">{{ if not $contrib.LastUpdatedAt.IsZero }}Last updated: {{ timeTag $contrib.LastUpdatedAt "2006-01-02" }}{{ end }}</div>
- <div class="contrib-status">Status: {{ $contrib.Status }}</div>
- <div class="contrib-desc">
- {{- $contrib.Desc | md2html }}
- {{- if $contrib.SponsoredBy }}<p>Sponsored-by: {{ $contrib.SponsoredBy }}</p>{{ end -}}
- </div>
- </article>
- {{- end }}
- </section>
+ <section id="contribs-pending">
+ <h2>In-progress work</h2>
+ {{- range $contrib := .Contribs }}
+ {{- if or (eq $contrib.StatusClass "merged") (eq $contrib.StatusClass "released") }}{{ continue }}{{ end }}
+ {{ $upstream := $contrib | getUpstream }}
+ <article class="contrib {{ $contrib.StatusClass }}-contrib">
+ <div class="contrib-upstream-name"><a class="em" href="{{ index $upstream.URLs 0 }}">{{ $upstream.Name }}</a></div>
+ <div class="contrib-upstream-desc">{{ $upstream.Desc | md2html }}</div>
+ <div class="contrib-urls">
+ {{- range $url := $contrib.URLs }}
+ <a href="{{ $url }}"><tt>{{ $url }}</tt></a><br />
+ {{- end }}
+ </div>
+ <div class="contrib-tags">
+ {{- range $tag := $contrib.Tags }}
+ <a href="#tag-{{ $tag }}">#{{ $tag }}</a> {{/* */}}
+ {{- end }}
+ </div>
+ <div class="contrib-submitted">Submitted: {{ timeTag $contrib.SubmittedAt "2006-01-02" }}</div>
+ <div class="contrib-updated">{{ if not $contrib.LastUpdatedAt.IsZero }}Last updated: {{ timeTag $contrib.LastUpdatedAt "2006-01-02" }}{{ end }}</div>
+ <div class="contrib-status">Status: {{ $contrib.Status }}</div>
+ <div class="contrib-desc">
+ {{- $contrib.Desc | md2html }}
+ {{- if $contrib.SponsoredBy }}<p>Sponsored-by: {{ $contrib.SponsoredBy }}</p>{{ end -}}
+ </div>
+ </article>
+ {{- end }}
+ </section>
+ <section id="contribs-completed">
+ <h2>Completed work</h2>
+ {{- range $contrib := .Contribs }}
+ {{- if or (eq $contrib.StatusClass "merged") (eq $contrib.StatusClass "released") | not }}{{ continue }}{{ end }}
+ {{ $upstream := $contrib | getUpstream }}
+ <article class="contrib {{ $contrib.StatusClass }}-contrib">
+ <div class="contrib-upstream-name"><a class="em" href="{{ index $upstream.URLs 0 }}">{{ $upstream.Name }}</a></div>
+ <div class="contrib-upstream-desc">{{ $upstream.Desc | md2html }}</div>
+ <div class="contrib-urls">
+ {{- range $url := $contrib.URLs }}
+ <a href="{{ $url }}"><tt>{{ $url }}</tt></a><br />
+ {{- end }}
+ </div>
+ <div class="contrib-tags">
+ {{- range $tag := $contrib.Tags }}
+ <a href="#tag-{{ $tag }}">#{{ $tag }}</a> {{/* */}}
+ {{- end }}
+ </div>
+ <div class="contrib-submitted">Submitted: {{ timeTag $contrib.SubmittedAt "2006-01-02" }}</div>
+ <div class="contrib-updated">{{ if not $contrib.LastUpdatedAt.IsZero }}Last updated: {{ timeTag $contrib.LastUpdatedAt "2006-01-02" }}{{ end }}</div>
+ <div class="contrib-status">Status: {{ $contrib.Status }}</div>
+ <div class="contrib-desc">
+ {{- $contrib.Desc | md2html }}
+ {{- if $contrib.SponsoredBy }}<p>Sponsored-by: {{ $contrib.SponsoredBy }}</p>{{ end -}}
+ </div>
+ </article>
+ {{- end }}
+ </section>
- <footer>
- <p>The content of this page is Copyright © Luke T. Shumaker.</p>
- <p>This page is licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.</p>
- </footer>
- </body>
+ <footer>
+ <p>The content of this page is Copyright © Luke T. Shumaker.</p>
+ <p>This page is licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.</p>
+ </footer>
+</body>
</html>
diff --git a/public/imworkingon/imworkingon.scss b/public/imworkingon/imworkingon.scss
index 5903704..55f7f85 100644
--- a/public/imworkingon/imworkingon.scss
+++ b/public/imworkingon/imworkingon.scss
@@ -2,107 +2,107 @@
@use 'sass:list';
* {
- box-sizing: border-box;
+ box-sizing: border-box;
}
article {
- border: solid 1px #333333;
- border-radius: 1em;
- margin: 0.5em;
+ border: solid 1px #333333;
+ border-radius: 1em;
+ margin: 0.5em;
}
div {
- & > p:first-child {
- margin-top: 0;
- }
- & > p:last-child {
- margin-bottom: 0;
- }
+ & > p:first-child {
+ margin-top: 0;
+ }
+ & > p:last-child {
+ margin-bottom: 0;
+ }
}
time {
- text-decoration: dotted underline;
+ text-decoration: dotted underline;
}
code {
- /* Don't let `--help` wrap as `--\nhelp`. */
- white-space: pre;
+ /* Don't let `--help` wrap as `--\nhelp`. */
+ white-space: pre;
}
article.tag {
- padding: 0.5em 2em;
- & > h2 {
- margin: 0 0 0.25em -1em;
- }
+ padding: 0.5em 2em;
+ & > h2 {
+ margin: 0 0 0.25em -1em;
+ }
}
article.contrib {
- display: grid;
- grid-template-columns: 25% 25% 25% 25%;
- grid-template-areas:
- "uname submitted updated status"
- "uname url url url"
- "uname tag tag tag"
- "udesc desc desc desc";
- gap: 1px;
- overflow: hidden;
+ display: grid;
+ grid-template-columns: 25% 25% 25% 25%;
+ grid-template-areas:
+ "uname submitted updated status"
+ "uname url url url"
+ "uname tag tag tag"
+ "udesc desc desc desc";
+ gap: 1px;
+ overflow: hidden;
- & > div {
- padding: 0.5em;
- }
-
- @mixin color-panel {
- background-color: #DDDDFF;
- border: solid 1px #8D8DA6;
- margin: -1px;
- }
+ & > div {
+ padding: 0.5em;
+ }
+
+ @mixin color-panel {
+ background-color: #DDDDFF;
+ border: solid 1px #8D8DA6;
+ margin: -1px;
+ }
- div.contrib-upstream-name {
- grid-area: uname;
- @include color-panel;
- text-align: center;
- padding-top: 1em;
- }
- div.contrib-upstream-desc {
- grid-area: udesc;
- @include color-panel;
- }
- div.contrib-urls {
- grid-area: url;
- padding-bottom: 0;
- }
- div.contrib-tags {
- grid-area: tag;
- padding-top: 0;
- }
- div.contrib-submitted {
- grid-area: submitted;
- @include color-panel;
- }
- div.contrib-updated {
- grid-area: updated;
- @include color-panel;
- }
- div.contrib-status {
- grid-area: status;
- @include color-panel;
- }
- div.contrib-desc {
- grid-area: desc;
- }
+ div.contrib-upstream-name {
+ grid-area: uname;
+ @include color-panel;
+ text-align: center;
+ padding-top: 1em;
+ }
+ div.contrib-upstream-desc {
+ grid-area: udesc;
+ @include color-panel;
+ }
+ div.contrib-urls {
+ grid-area: url;
+ padding-bottom: 0;
+ }
+ div.contrib-tags {
+ grid-area: tag;
+ padding-top: 0;
+ }
+ div.contrib-submitted {
+ grid-area: submitted;
+ @include color-panel;
+ }
+ div.contrib-updated {
+ grid-area: updated;
+ @include color-panel;
+ }
+ div.contrib-status {
+ grid-area: status;
+ @include color-panel;
+ }
+ div.contrib-desc {
+ grid-area: desc;
+ }
- &.closed-contrib div.contrib-status { background-color: #cf222e; color: white; }
- &.open-contrib div.contrib-status { background-color: #d3ab3a; color: black; }
- &.merged-contrib div.contrib-status {
- background: repeating-linear-gradient(315deg, #1f883d, #1f883d 1.0em, #d3ab3a 1.0em, #d3ab3a 1.4em);
- color: white;
- $shadow: [];
- @for $w from 1 through 3 {
- @for $a from 0 to 24 {
- $shadow: list.append($shadow, #{$w*math.cos($a*15deg)}px #{$w*math.sin($a*15deg)}px #1f883d);
- };
- };
- text-shadow: list.join($shadow, [], $separator: comma, $bracketed: false);
- }
- &.released-contrib div.contrib-status { background-color: #1f883d; color: white; }
+ &.closed-contrib div.contrib-status { background-color: #cf222e; color: white; }
+ &.open-contrib div.contrib-status { background-color: #d3ab3a; color: black; }
+ &.merged-contrib div.contrib-status {
+ background: repeating-linear-gradient(315deg, #1f883d, #1f883d 1.0em, #d3ab3a 1.0em, #d3ab3a 1.4em);
+ color: white;
+ $shadow: [];
+ @for $w from 1 through 3 {
+ @for $a from 0 to 24 {
+ $shadow: list.append($shadow, #{$w*math.cos($a*15deg)}px #{$w*math.sin($a*15deg)}px #1f883d);
+ };
+ };
+ text-shadow: list.join($shadow, [], $separator: comma, $bracketed: false);
+ }
+ &.released-contrib div.contrib-status { background-color: #1f883d; color: white; }
}
diff --git a/public/index.html b/public/index.html
index 8e4037e..05c7c31 100644
--- a/public/index.html
+++ b/public/index.html
@@ -23,136 +23,138 @@
<body>
<article>
-<h1>Luke T. Shumaker</h1>
+ <h1>Luke T. Shumaker</h1>
-<aside>
- <fieldset><legend><a class="em" href="sponsor">sponsor me</a></legend>
+ <aside>
+ <fieldset><legend><a class="em" href="sponsor">sponsor me</a></legend>
- <a class="donate-btn liberapay" href="https://liberapay.com/lukeshu/donate">
- <img src="sponsor/liberapay-icon.svg"
- alt="Liberapay icon" />
- Liberapay
- </a>
+ <a class="donate-btn liberapay" href="https://liberapay.com/lukeshu/donate">
+ <img src="sponsor/liberapay-icon.svg"
+ alt="Liberapay icon" />
+ Liberapay
+ </a>
- <br/>
+ <br/>
- <a class="donate-btn github" href="https://github.com/sponsors/LukeShu">
- <img src="sponsor/github-icon.svg"
- alt=GitHub icon" />
- GitHub
- </a>
+ <a class="donate-btn github" href="https://github.com/sponsors/LukeShu">
+ <img src="sponsor/github-icon.svg"
+ alt=GitHub icon" />
+ GitHub
+ </a>
- <br/>
+ <br/>
- <a class="donate-btn kofi" href='https://ko-fi.com/lukeshu'>
- <img src="sponsor/kofi-icon.png"
- alt="Ko-fi icon" />
- Ko-fi
- </a>
+ <a class="donate-btn kofi" href='https://ko-fi.com/lukeshu'>
+ <img src="sponsor/kofi-icon.png"
+ alt="Ko-fi icon" />
+ Ko-fi
+ </a>
- <br/>
+ <br/>
- <a class="donate-btn patreon" href='https://patreon.com/lukeshu'>
- <img src="sponsor/patreon-icon.svg"
- alt="Patreon icon" />
- <span>Patreon</span>
- </a>
+ <a class="donate-btn patreon" href='https://patreon.com/lukeshu'>
+ <img src="sponsor/patreon-icon.svg"
+ alt="Patreon icon" />
+ <span>Patreon</span>
+ </a>
- </fieldset>
-</aside>
+ </fieldset>
+ </aside>
-<p>I am a programmer/hacker,
- and an advocate of software freedom. I'm working on improving the
- GNU/Linux-libre ecosystem!</p>
+ <p>I am a programmer/hacker,
+ and an advocate of software freedom. I'm working on improving the
+ GNU/Linux-libre ecosystem!</p>
-<p>I've been a developer for the
- <a href="https://parabola.nu/">Parabola&nbsp;GNU/Linux-libre</a>
- operating system since 2011, and am also doing <a class="em" href="imworkingon">lots
- of other things</a> to
- improve the GNU/Linux ecosystem. If you like my work, please
- consider <a class="em" href="sponsor">sponsoring</a> me so that I
- can keep doing it.</p>
+ <p>I've been a developer for the
+ <a href="https://parabola.nu/">Parabola&nbsp;GNU/Linux-libre</a>
+ operating system since 2011, and am also doing <a class="em" href="imworkingon">lots
+ of other things</a> to
+ improve the GNU/Linux ecosystem. If you like my work, please
+ consider <a class="em" href="sponsor">sponsoring</a> me so that I
+ can keep doing it.</p>
-<aside>
+ <aside>
- <!-- Don't be wider than the FSF badge. The mis-aligned images look bad. -->
- <a href="https://sfconservancy.org/sustainer/">
- <img src="https://sfconservancy.org/img/supporter-badge.png"
- alt="Software Freedom Conservancy Sustainer"
- width=180 /></a>
+ <!-- Don't be wider than the FSF badge. The mis-aligned images look bad. -->
+ <a href="https://sfconservancy.org/sustainer/">
+ <img src="https://sfconservancy.org/img/supporter-badge.png"
+ alt="Software Freedom Conservancy Sustainer"
+ width=180 />
+ </a>
- <br/>
+ <br/>
- <!-- formerly member ID 11434... why did it change? -->
- <!--<a href="https://www.fsf.org/register_form?referrer=11434">
- <img src="https://static.fsf.org/nosvn/associate/fsf-11434.png"
- alt="[FSF Associate Member]" /></a>-->
- <a href="https://my.fsf.org/join?referrer=21708">
- <img src="https://static.fsf.org/nosvn/associate/crm/21708.png"
- alt="Free Software Foundation Associate Member" /></a>
+ <!-- formerly member ID 11434... why did it change? -->
+ <!--<a href="https://www.fsf.org/register_form?referrer=11434">
+ <img src="https://static.fsf.org/nosvn/associate/fsf-11434.png"
+ alt="[FSF Associate Member]" /></a>-->
+ <a href="https://my.fsf.org/join?referrer=21708">
+ <img src="https://static.fsf.org/nosvn/associate/crm/21708.png"
+ alt="Free Software Foundation Associate Member" />
+ </a>
-</aside>
+ </aside>
-<h2>Things to see here:</h2>
+ <h2>Things to see here:</h2>
-<ul>
-<li><a href="./imworkingon/"><code>imworkingon</code></a> — A listing of the things I'm working on.<ul>
- <li><a href="./sponsor/"><code>sponsor</code></a> — I greatly appreciate any help supporting that work!</li></ul></li>
-<li><a href="./blog/"><code>blog</code></a> — My web-log ("blog").</li>
-<li><a href="./git/"><code>git</code></a> — My git repositories; software I develop. It includes some mirrors of software I work on hosted elsewhere, but not all of my software is here.</li>
-<!--<li><a href="./resume/resume-current.pdf"><code>resume</code></a> — My résumé. I am looking for interesting opportunities.-->
-</ul>
+ <ul>
+ <li><a href="./imworkingon/"><code>imworkingon</code></a> — A listing of the things I'm working on.<ul>
+ <li><a href="./sponsor/"><code>sponsor</code></a> — I greatly appreciate any help supporting that work!</li></ul></li>
+ <li><a href="./blog/"><code>blog</code></a> — My web-log ("blog").</li>
+ <li><a href="./git/"><code>git</code></a> — My git repositories; software I develop. It includes some mirrors of software I work on hosted elsewhere, but not all of my software is here.</li>
+ <!--<li><a href="./resume/resume-current.pdf"><code>resume</code></a> — My résumé. I am looking for interesting opportunities.-->
+ </ul>
-<h2>Contact</h2>
+ <h2>Contact</h2>
-<ul>
+ <ul>
-<li>My primary email address is &lt;<a href="mailto:lukeshu@lukeshu.com">lukeshu@lukeshu.com</a>&gt;.</li>
+ <li>My primary email address is &lt;<a href="mailto:lukeshu@lukeshu.com">lukeshu@lukeshu.com</a>&gt;.</li>
-<li>I am <tt>lukeshu</tt> on <s>FreeNode</s>Libera.Chat,
- and am almost always in the <tt>#parabola</tt> channel.</li>
+ <li>I am <tt>lukeshu</tt> on <s>FreeNode</s>Libera.Chat,
+ and am almost always in the <tt>#parabola</tt> channel.</li>
-<li>Social web:<ul>
+ <li>Social web:<ul>
-<li>I am <a rel="me" href="https://fosstodon.org/@lukeshu">@lukeshu@fosstodon.org</a> on Mastodon.</li>
+ <li>I am <a rel="me" href="https://fosstodon.org/@lukeshu">@lukeshu@fosstodon.org</a> on Mastodon.</li>
-<li>I am <a href="https://news.ycombinator.com/user?id=LukeShu">LukeShu</a> on Hacker News.</li>
+ <li>I am <a href="https://news.ycombinator.com/user?id=LukeShu">LukeShu</a> on Hacker News.</li>
-<li>I am <a href="https://reddit.com/u/LukeShu">LukeShu</a> on Reddit, but am trying to leave Reddit for Lemmy.</li>
+ <li>I am <a href="https://reddit.com/u/LukeShu">LukeShu</a> on Reddit, but am trying to leave Reddit for Lemmy.</li>
-<li>I am <a href="https://lemmy.ml/u/lukeshu">@lukeshu@lemmy.ml</a> on Lemmy.</li>
+ <li>I am <a href="https://lemmy.ml/u/lukeshu">@lukeshu@lemmy.ml</a> on Lemmy.</li>
-</ul></li>
+ </ul></li>
-<li>Not-so-social web:<ul>
+ <li>Not-so-social web:<ul>
-<li>I am <a href="https://keybase.io/lukeshu">lukeshu</a> on Keybase.</li>
+ <li>I am <a href="https://keybase.io/lukeshu">lukeshu</a> on Keybase.</li>
-<li>I am <a href="https://github.com/LukeShu/">LukeShu</a> on GitHub.</li>
+ <li>I am <a href="https://github.com/LukeShu/">LukeShu</a> on GitHub.</li>
-<li>I am <a href="https://gitlab.com/lukeshu">lukeshu</a> on GitLab.com.</li>
+ <li>I am <a href="https://gitlab.com/lukeshu">lukeshu</a> on GitLab.com.</li>
-</ul></li>
+ </ul></li>
-<li>Sponsor web:<ul>
+ <li>Sponsor web:<ul>
-<li>I am <a href="https://liberapay.com/lukeshu">lukeshu</a> on Liberapay.</li>
+ <li>I am <a href="https://liberapay.com/lukeshu">lukeshu</a> on Liberapay.</li>
-<li>I am <a href="https://ko-fi.com/lukeshu/">lukeshu</a> on Ko-fi.</li>
+ <li>I am <a href="https://ko-fi.com/lukeshu/">lukeshu</a> on Ko-fi.</li>
-<li>I am <a href="https://www.patreon.com/lukeshu">lukeshu</a> on Patreon.</li>
+ <li>I am <a href="https://www.patreon.com/lukeshu">lukeshu</a> on Patreon.</li>
-</ul></li>
+ </ul></li>
-<li>My phone number is <img src="/phone-number.png" style="height: 1em" />.
- Please only use it to contact me regarding server issues, including the <tt>mav.lukeshu.com</tt> mail server.</li>
+ <li>My phone number is <img src="/phone-number.png" style="height: 1em" />.
+ Please only use it to contact me regarding server issues, including the <tt>mav.lukeshu.com</tt> mail server.</li>
-</ul>
+ </ul>
</article>
<footer>
-<p>The content of this page is Copyright © Luke T. Shumaker.</p>
-<p>This page is licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.</p>
+ <p>The content of this page is Copyright © Luke T. Shumaker.</p>
+ <p>This page is licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.</p>
</footer>
</body>
</html>
diff --git a/public/sponsor/index.html b/public/sponsor/index.html
index 2499b1f..a755371 100644
--- a/public/sponsor/index.html
+++ b/public/sponsor/index.html
@@ -1,82 +1,82 @@
<!DOCTYPE html>
<html lang="en">
<head>
- <meta charset="utf-8">
- <title>Sponsor — Luke T. Shumaker</title>
- <link rel="stylesheet" type="text/css" href="../blog/assets/style.css">
- <link rel="stylesheet" type="text/css" href="sponsor.css">
- <style>
- ul:has(.donate-btn) {
- display: grid;
- grid-template-columns: 1fr;
- width: max-content;
- }
- ul:has(.donate-btn) * {
- box-sizing: border-box;
- }
- .donate-btn {
- width: 100%;
- }
- </style>
+ <meta charset="utf-8">
+ <title>Sponsor — Luke T. Shumaker</title>
+ <link rel="stylesheet" type="text/css" href="../blog/assets/style.css">
+ <link rel="stylesheet" type="text/css" href="sponsor.css">
+ <style>
+ ul:has(.donate-btn) {
+ display: grid;
+ grid-template-columns: 1fr;
+ width: max-content;
+ }
+ ul:has(.donate-btn) * {
+ box-sizing: border-box;
+ }
+ .donate-btn {
+ width: 100%;
+ }
+ </style>
</head>
<body>
-<header><a href="/">Luke T. Shumaker</a> » sponsor</header>
-<article>
+ <header><a href="/">Luke T. Shumaker</a> » sponsor</header>
+ <article>
-<h1>Sponsor Luke</h1>
+ <h1>Sponsor Luke</h1>
-<p>Hi, I'm Luke. I'm working on improving various aspects of the
- GNU/Linux-libre ecosystem.</p>
+ <p>Hi, I'm Luke. I'm working on improving various aspects of the
+ GNU/Linux-libre ecosystem.</p>
-<ul>
- <li>I'm working on the <a href="https://parabola.nu/">Parabola GNU/Linux-libre</a> distro.</li>
- <li>I'm working on <a href="https://www.lukeshu.com/blog/btrfs-rec.html">improving btrfs.</a></li>
- <li>I'm working on better tooling around cross-language-runtime
- objects (GObject Introspection, which is a terrible name for what
- it is, BTW).</li>
- <!--<li>I'm working improving Hi-DPI/variable-DPI support.</li>-->
- <li><a class="em" href="../imworkingon/">... and more!</a></li>
-</ul>
+ <ul>
+ <li>I'm working on the <a href="https://parabola.nu/">Parabola GNU/Linux-libre</a> distro.</li>
+ <li>I'm working on <a href="https://www.lukeshu.com/blog/btrfs-rec.html">improving btrfs.</a></li>
+ <li>I'm working on better tooling around cross-language-runtime
+ objects (GObject Introspection, which is a terrible name for what
+ it is, BTW).</li>
+ <!--<li>I'm working improving Hi-DPI/variable-DPI support.</li>-->
+ <li><a class="em" href="../imworkingon/">... and more!</a></li>
+ </ul>
-<p>Please consider sponsoring my work, so I can continue putting so
-much time and effort in to these things. Otherwise, I'm going to have
-to cut back my activities by at least 50% in the next year.</p>
+ <p>Please consider sponsoring my work, so I can continue putting so
+ much time and effort in to these things. Otherwise, I'm going to have
+ to cut back my activities by at least 50% in the next year.</p>
-<p>There are several ways you can sponsor me:</p>
+ <p>There are several ways you can sponsor me:</p>
-<ul>
- <li><a class="donate-btn liberapay" href="https://liberapay.com/lukeshu/donate">
- <img src="liberapay-icon.svg"
- alt="Liberapay icon" />
- Liberapay<!-- (0% fee) -->
- </a></li>
- <li><a class="donate-btn github" href="https://github.com/sponsors/LukeShu">
- <img src="github-icon.svg"
- alt=GitHub icon" />
- GitHub<!-- (0% fee from individuals, 6% fee from organizations) -->
- </a></li>
- <li><a class="donate-btn kofi" href="https://ko-fi.com/lukeshu">
- <img src="kofi-icon.png"
- alt="Ko-fi icon" />
- Ko-fi<!-- (0% fee, requires non-free JS) -->
- </a></li>
- <li><a class="donate-btn patreon" href="https://patreon.com/lukeshu">
- <img src="patreon-icon.svg"
- alt="Patreon icon" />
- <span>Patreon</span><!-- (8%+ fee, requires non-free JS) -->
- </a></li>
-</ul>
+ <ul>
+ <li><a class="donate-btn liberapay" href="https://liberapay.com/lukeshu/donate">
+ <img src="liberapay-icon.svg"
+ alt="Liberapay icon" />
+ Liberapay<!-- (0% fee) -->
+ </a></li>
+ <li><a class="donate-btn github" href="https://github.com/sponsors/LukeShu">
+ <img src="github-icon.svg"
+ alt=GitHub icon" />
+ GitHub<!-- (0% fee from individuals, 6% fee from organizations) -->
+ </a></li>
+ <li><a class="donate-btn kofi" href="https://ko-fi.com/lukeshu">
+ <img src="kofi-icon.png"
+ alt="Ko-fi icon" />
+ Ko-fi<!-- (0% fee, requires non-free JS) -->
+ </a></li>
+ <li><a class="donate-btn patreon" href="https://patreon.com/lukeshu">
+ <img src="patreon-icon.svg"
+ alt="Patreon icon" />
+ <span>Patreon</span><!-- (8%+ fee, requires non-free JS) -->
+ </a></li>
+ </ul>
-<p>It is my understanding that donating with Patreon or Ko-fi requires
-Javascript code that does not respect your computing freedom, while
-Liberapay makes no such assault on your freedom. If you'd like to
-support me, but can't use or don't want to use any of the above
-platforms, reach out to me at &lt;<a href="mailto:lukeshu@lukeshu.com">lukeshu@lukeshu.com</a>&gt;.</p>
+ <p>It is my understanding that donating with Patreon or Ko-fi requires
+ Javascript code that does not respect your computing freedom, while
+ Liberapay makes no such assault on your freedom. If you'd like to
+ support me, but can't use or don't want to use any of the above
+ platforms, reach out to me at &lt;<a href="mailto:lukeshu@lukeshu.com">lukeshu@lukeshu.com</a>&gt;.</p>
-</article>
-<footer>
-<p>The content of this page is Copyright © Luke T. Shumaker.</p>
-<p>This page is licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.</p>
-</footer>
+ </article>
+ <footer>
+ <p>The content of this page is Copyright © Luke T. Shumaker.</p>
+ <p>This page is licensed under the <a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0</a> license.</p>
+ </footer>
</body>
</html>
diff --git a/public/sponsor/sponsor.css b/public/sponsor/sponsor.css
index f141260..811da06 100644
--- a/public/sponsor/sponsor.css
+++ b/public/sponsor/sponsor.css
@@ -1,76 +1,76 @@
/* generic */
a.donate-btn {
- margin: 0.25em 0;
+ margin: 0.25em 0;
- border-radius: 5px;
- display: inline-block;
- padding: 5px 7px 3px 7px;
+ border-radius: 5px;
+ display: inline-block;
+ padding: 5px 7px 3px 7px;
- font-size: 14px;
- font-weight: 700;
- line-height: 22px;
- text-decoration: none;
+ font-size: 14px;
+ font-weight: 700;
+ line-height: 22px;
+ text-decoration: none;
}
a.donate-btn > img {
- height: 16px;
- margin-top: 2px;
- margin-right: 3px;
- vertical-align: top;
+ height: 16px;
+ margin-top: 2px;
+ margin-right: 3px;
+ vertical-align: top;
}
/* Liberapay */
a.donate-btn.liberapay {
- background-color: #f6c915;
- color: #1a171b;
- font-family: Helvetica Neue,Helvetica,sans-serif;
+ background-color: #f6c915;
+ color: #1a171b;
+ font-family: Helvetica Neue,Helvetica,sans-serif;
}
a.donate-btn.liberapay:hover {
- background-color: #fbce1a;
+ background-color: #fbce1a;
}
/* GitHub */
a.donate-btn.github {
- background-color: #f6f8fa;
- color: #24292f;
- border: solid 1px #d0d7de;
- font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif;
+ background-color: #f6f8fa;
+ color: #24292f;
+ border: solid 1px #d0d7de;
+ font-family: -apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif;
}
a.donate-btn.github:hover {
- background-color: #eef1f4;
+ background-color: #eef1f4;
}
/* Ko-fi */
a.donate-btn.kofi {
- font-family: 'Quicksand',Helvetica,Century Gothic,sans-serif;
- background-color: #29abe0;
- color: #ffffff;
+ font-family: 'Quicksand',Helvetica,Century Gothic,sans-serif;
+ background-color: #29abe0;
+ color: #ffffff;
}
a.donate-btn.kofi:hover {
- background-color: #48b7e4;
+ background-color: #48b7e4;
}
/* Patreon */
a.donate-btn.patreon {
- background-color: #000000;
- color: #ffffff;
- border: solid 1px #000000;
- font-weight: 400;
+ background-color: #000000;
+ color: #ffffff;
+ border: solid 1px #000000;
+ font-weight: 400;
}
a.donate-btn.patreon > span {
- text-transform: uppercase;
+ text-transform: uppercase;
}
a.donate-btn.patreon > img {
- filter: invert(100%);
+ filter: invert(100%);
}
a.donate-btn.patreon:hover {
- background-color: #ffffff;
- color: #000000;
+ background-color: #ffffff;
+ color: #000000;
}
a.donate-btn.patreon:hover > img {
- filter: none;
+ filter: none;
}