Compare commits

..

No commits in common. "master" and "aa059dfe0a4c30075c36b39b47c3571d6c3f732e" have entirely different histories.

28 changed files with 106 additions and 342 deletions

View file

@ -1,2 +0,0 @@
---
BUNDLE_PATH: "vendor/bundle"

1
.gitignore vendored
View file

@ -3,4 +3,3 @@ _site
.jekyll-cache
.jekyll-metadata
vendor
*.kate-swp

View file

@ -1,46 +0,0 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="GrazieInspection" enabled="false" level="TYPO" enabled_by_default="false" />
<inspection_tool class="PyAugmentAssignmentInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PyComparisonWithNoneInspection" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="PyCompatibilityInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ourVersions">
<value>
<list size="6">
<item index="0" class="java.lang.String" itemvalue="3.6" />
<item index="1" class="java.lang.String" itemvalue="3.7" />
<item index="2" class="java.lang.String" itemvalue="3.8" />
<item index="3" class="java.lang.String" itemvalue="3.9" />
<item index="4" class="java.lang.String" itemvalue="3.10" />
<item index="5" class="java.lang.String" itemvalue="3.10" />
</list>
</value>
</option>
</inspection_tool>
<inspection_tool class="PyInconsistentIndentationInspection" enabled="true" level="ERROR" enabled_by_default="true" />
<inspection_tool class="PyMissingTypeHintsInspection" enabled="true" level="WEAK WARNING" enabled_by_default="true" />
<inspection_tool class="PyPep8Inspection" enabled="true" level="WEAK WARNING" enabled_by_default="true">
<option name="ignoredErrors">
<list>
<option value="E302" />
<option value="E305" />
<option value="E261" />
<option value="E128" />
<option value="E124" />
<option value="W191" />
</list>
</option>
</inspection_tool>
<inspection_tool class="PyUnresolvedReferencesInspection" enabled="true" level="WARNING" enabled_by_default="true">
<option name="ignoredIdentifiers">
<list>
<option value="mutagen.id3._frames.APIC.*" />
<option value="music_tools.note.Note" />
</list>
</option>
</inspection_tool>
<inspection_tool class="RedundantNotNullExtensionReceiverOfInline" enabled="true" level="INFORMATION" enabled_by_default="true" />
<inspection_tool class="RegExpRepeatedSpace" enabled="true" level="INFORMATION" enabled_by_default="true" />
</profile>
</component>

View file

@ -7,7 +7,7 @@ source "https://rubygems.org"
#
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!
gem "jekyll", "~> 4.3.3"
gem "jekyll", "~> 4.2.0"
# This is the default theme for new Jekyll sites. You may change this to anything you like.
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
@ -20,12 +20,12 @@ end
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library.
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
gem "tzinfo", "~> 2.0"
gem "tzinfo", "~> 1.2"
gem "tzinfo-data"
end
# Performance-booster for watching directories on Windows
gem "wdm", "~> 0.1.1", :install_if => Gem.win_platform?
# fix for https://github.com/sass/sassc-ruby/issues/146
gem "sassc", "< 2.2.0"
gem "webrick", "~> 1.7"

View file

@ -1,87 +1,78 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
bigdecimal (3.1.8)
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
colorator (1.1.0)
concurrent-ruby (1.3.4)
em-websocket (0.5.3)
concurrent-ruby (1.1.8)
em-websocket (0.5.2)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.7)
ffi (1.17.0-x86_64-linux-gnu)
ffi (1.15.0)
forwardable-extended (2.6.0)
google-protobuf (4.27.4-x86_64-linux)
bigdecimal
rake (>= 13)
http_parser.rb (0.8.0)
i18n (1.14.5)
http_parser.rb (0.6.0)
i18n (1.8.10)
concurrent-ruby (~> 1.0)
jekyll (4.3.3)
jekyll (4.2.0)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-sass-converter (~> 2.0)
jekyll-watch (~> 2.0)
kramdown (~> 2.3, >= 2.3.1)
kramdown (~> 2.3)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (>= 0.3.6, < 0.5)
mercenary (~> 0.4.0)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
rouge (~> 3.0)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-sass-converter (3.0.0)
sass-embedded (~> 1.54)
terminal-table (~> 2.0)
jekyll-sass-converter (2.1.0)
sassc (> 2.0.1, < 3.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
kramdown (2.4.0)
kramdown (2.3.1)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.9.0)
liquid (4.0.3)
listen (3.5.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (6.0.1)
rake (13.2.1)
rb-fsevent (0.11.2)
rb-inotify (0.11.1)
public_suffix (4.0.6)
rb-fsevent (0.10.4)
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.3.6)
strscan
rouge (4.3.0)
rexml (3.2.5)
rouge (3.26.0)
safe_yaml (1.0.5)
sass-embedded (1.77.8-x86_64-linux-gnu)
google-protobuf (~> 4.26)
sassc (2.1.0-x86_64-linux)
sassc (2.4.0)
ffi (~> 1.9)
strscan (3.1.0)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
tzinfo-data (1.2024.1)
terminal-table (2.0.0)
unicode-display_width (~> 1.1, >= 1.1.1)
thread_safe (0.3.6)
tzinfo (1.2.9)
thread_safe (~> 0.1)
tzinfo-data (1.2021.1)
tzinfo (>= 1.0.0)
unicode-display_width (2.5.0)
unicode-display_width (1.7.0)
wdm (0.1.1)
webrick (1.8.1)
webrick (1.7.0)
PLATFORMS
x86_64-linux
DEPENDENCIES
jekyll (~> 4.3.3)
sassc (< 2.2.0)
tzinfo (~> 2.0)
jekyll (~> 4.2.0)
tzinfo (~> 1.2)
tzinfo-data
wdm (~> 0.1.1)
webrick (~> 1.7)
BUNDLED WITH
2.4.10
2.2.16

View file

@ -3,28 +3,20 @@ lynnesbian.space
This is the Jekyll site directory for [lynnesbian.space](https://lynnesbian.space). I can't really see anyone getting
much use out of the source for the website, but there's not really a reason *not* to publish it, so whatever.
## Getting started
```bash
git clone https://git.bune.city/lynnesbian/lynnespace
cd lynnespace
gem install bundler
bundler install
```
## Licensing
This is gonna get complicated, but here goes:
- The provided HTML, JavaScript, and CSS files are licensed under the Expat license (aka the "MIT license").
- `favicon.ico` and `favicon.png` are both CC-BY-SA.
- All files in the `/_projects` directory are CC-BY-SA.
- All files in the `/_data` and `/_projects` directories are CC-BY-SA.
- All other files are Expat licensed.
- If files seem to be licensed under two licenses (my bad), assume Expat.
In other words: You can use the JavaScript, HTML, and CSS content of this website without attribution (although I would
prefer it if you did provide attribution). You can also do whatever you want with the files in `/_projects`, but you
must provide attribution for these files, and any derivative works made with them must also be CC-BY-SA licensed.
prefer it if you did provide attribution). You can also do whatever you want with the files in `/_data` and
`/_projects`, but you must provide attribution for these files, and any derivative works made with them must also be
CC-BY-SA licensed.
### Links to licenses used
- [CC-BY-SA](https://creativecommons.org/licenses/by-sa/4.0/legalcode)

View file

@ -15,8 +15,8 @@ defaults:
collections:
content:
output: true
permalink: /:name:output_ext
permalink: /:name
projects:
output: true
permalink: /:collection/:name:output_ext
permalink: /:collection/:name

View file

@ -3,11 +3,10 @@ title: About
---
{% include h.html level=2 content="What I do" %}
<p>
My interests include creating and improving free software, learning all I can about computer science, playing
story-driven games, photography, and writing.
I'm Lynne. My interests include creating free software, playing story-driven games, photography, and writing.
</p>
<p>
Much of what I do with computers is about helping people, whether that's through writing simple scripts to automate
Most of what I do with computers is about helping people, whether that's through writing simple scripts to automate
things or writing software to make things more accessible.
</p>
<p>
@ -16,25 +15,18 @@ title: About
contraptions and logic machines to accomplish tasks within the game.
</p>
<p>
The type of software I want to create most is that which helps people, whether it be through providing or improving
on accessibility options, creating tools that aim to simplify complex tasks, or even writing documentation that
makes existing software easier to use - I find it by far my greatest motivator.
While making games and tools was (and is) enjoyable to me, what I want to do most is create software that helps
people - I find it by far my greatest motivator.
</p>
<p>
I don't really consider myself a <em>hardcore gamer</em>, but I do enjoy video games - usually those with a focus on
creativity or story. I've tried to make a few games before, but never completed any outside of short little minigames
and TI-84 calculator toys. I'd like to make a few small games of my own, and I'm really interested in one day making
mods for existing games to make them more accessible - lowering difficulty, removing epilepsy-triggering sequences,
removing potentially phobia-inducing elements, and so on. {% comment %} FOOTNOTE - why do so many games have
spiders!!!! {% endcomment %}
removing potentially phobia-inducing elements, etc. {% comment %} FOOTNOTE - why do so many games have spiders!!!! {% endcomment %}
</p>
{% comment %}
{% include h.html level=3 content="Some things I've made" %}
<p>
<a href="https://gitlab.com/Lynnesbian/fif">fif</a> is a tool to find and optionally correct files with misnamed
extensions. It's written in Rust, partially to teach myself the language, and partially because it's (in my
opinion) a more suitable language for a small CLI project like this than something like C# or Python.
</p>
<p>
I've made a lot of software to help my wife Petra, but much of it is too specific to her needs to be useful on a
greater scale, with perhaps a few exceptions, such as
@ -51,22 +43,26 @@ title: About
{% include h.html level=2 content="What I use" %}
<p>
All my computers and laptops run Linux, perhaps unsurprisingly. I mainly stick to
<a href="https://fedoraproject.org">Fedora</a> and <a href="https://debian.org">Debian</a>, although in the past I
used <a href="https://archlinux.org">Arch</a>. Up until my most recent one, every Android phone I've ever
<a href="https://archlinux.org">Arch</a> and <a href="https://debian.org">Debian</a>. Every Android phone I've ever
owned (with the exception of <a href="https://www.gsmarena.com/huawei_u8150_ideos-3513.php">my very first</a>) ended
up running <a href="https://en.wikipedia.org/wiki/CyanogenMod">Cyanogenmod</a> or
<a href="https://lineageos.org/">LineageOS</a> at some point, usually soon after purchase. One UI finally won me
over, and rooting phones is just too annoying now, with
<a href="https://developer.android.com/google/play/integrity">Play Integrity</a> (formerly SafetyNet) and all that.
<a href="https://lineageos.org/">LineageOS</a> at some point, usually soon after purchase. This includes my current
phone.
</p>
<p>
I consider myself an advocate for free and open source software, and all of my existing projects are licensed under
copyleft or permissive licences.
I avoid proprietary and/or closed software wherever I can without hugely inconveniencing myself. The vast majority of
the software on my computer(s) is free and open source. I am strongly opposed to almost all forms of
<a href="https://en.wikipedia.org/wiki/Digital_rights_management">DRM</a>, and either avoid buying media with it, or
remove it after purchase. For example, I buy all of my music from <a href="https://bandcamp.com/">Bandcamp</a> and
download the <a href="https://en.wikipedia.org/wiki/Ogg_Vorbis">OGG</a> version of the albums. I do this for both
ideological/philosophical and practical reasons.
</p>
<p>
I'm fairly active on the Fediverse, and I self-host Mastodon. You can follow me on
<a rel="me" href="https://fedi.lynnesbian.space/@lynnesbian">my account at fedi.lynnesbian.space</a>!
I used to use social media (the <a href="https://en.wikipedia.org/wiki/Fediverse">Fediverse</a>, specifically) a fair
amount, but I've since moved away from all forms of social media besides reddit (where I never post).
</p>
<p>
For info on what programming languages I tend to use, see <a href="skills.html">my skills page</a>.
Most of my programming is done in <a href="https://rust-lang.org/">Rust</a> or <a href="https://python.org">Python</a>. I'm also somewhat familiar with
<a href="https://docs.microsoft.com/dotnet/csharp">C#</a> and
<a href="https://wikipedia.org/wiki/JavaScript">JavaScript</a>.
</p>

View file

@ -1,7 +1,5 @@
---
title: Contact
---
<p>
I can by reached <a href="mailto:lynne@bune.city">by email</a>. If you find any bugs or issues with my software, feel
free to open an issue on the respective repository or email me.
</p>
I can by reached <a href="mailto:lynne@bune.city">by email</a>. If you find any bugs or issues with my software, feel
free to open an issue on the respective repository or email me.

View file

@ -3,9 +3,8 @@ title: Home
custom_heading: true
---
<picture id="bune">
<source type="image/webp" srcset="/assets/img/bune-smol.webp 1x, /assets/img/bune.webp 2x">
<img id="bune-img" src="/assets/img/bune.png" alt="A drawing of a rabbit with brown-tipped ears sniffing the air
excitedly!" title="">
<source type="image/webp" srcset="/assets/img/bune.webp">
<img id="bune" src="/assets/img/bune.png" alt="A drawing of a rabbit with brown-tipped ears sniffing the air excitedly!" title="" style="">
</picture>
{% include h.html level=1 content="Lynnesbian dot Space" %}
@ -17,17 +16,12 @@ custom_heading: true
{% include h.html level=2 content="Quick Links" %}
<p>
I'm on the Fediverse! Follow me:
<a rel="me" href="https://fedi.lynnesbian.space/@lynnesbian">@lynnesbian@fedi.lynnesbian.space</a>
</p>
<p>
<a href="https://bune.city/">My abandoned blog</a> updated very infrequently, and focused mostly on technology and/or
games.
<a href="https://bune.city/">My blog</a> is updated very infrequently, and focuses mostly on technology and/or games.
</p>
<p>
My <a href="https://keybase.io/lynnesbian/pgp_keys.asc">public PGP key</a> is available on Keybase. I've proven
ownership of the lynnesbian Keybase account via
<a href="//keybase.io/lynnesbian/sigchain#ad0cb53b48a917df3c369f64150672fc86be8bd946850269b81d25fd068626d30f">DNS</a>.
<a href="https://keybase.io/lynnesbian/sigchain#ad0cb53b48a917df3c369f64150672fc86be8bd946850269b81d25fd068626d30f">DNS</a>.
</p>
<p>
I host a few small <a href="https://apt.bune.city">apt repository mirrors</a> on this server, along with

View file

@ -9,7 +9,7 @@ title: Projects
{% assign projects = site.projects | sort:"order" %}
{% for project in projects %}
<div class="project">
<h2>{{ project.name }} <span class="subtle"><em>{{ project.language }}</em></span></h2>
<h2>{{ project.name }}</h2>
<p>
{{ project.description }}
</p>

View file

@ -53,7 +53,7 @@ layout: none
</TD>
<TD ID=" MAIN">
<H2>Who?</H2>
My name is Lynne, a twenty-five year old woman living in Australia (the land down under!)
My name is Lynne, a twenty-two year old woman living in Australia (the land down under!)
<BR />
<BR />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
@ -106,8 +106,14 @@ layout: none
that I
sound paranoid, but in my opinion, it's better safe than sorry.
<H2>Where?</H2>
You won't find me on any data-slurping "social media" websites. Drop me a line at
<A HREF='mailto:lynne@bune.city'>lynne@bune.city</A> if you need to get in touch.
You won't find me on centralised blogging websites. You can, however, find me on the Fediverse - an
open
and federated social networking platform that allows for messages to flow freely from computer to
computer
through centralised servers ("instances") - without relying on a single point of failure. Drop me a
line at <A HREF='@lynnesbian@fedi.lynnesbian.space'>@lynnesbian@fedi.lynnesbian.space</A>, or if
you're more
old-school, you can email me at <A HREF='mailto:lynne@bune.city'>lynne@bune.city</A>.
<H2>When?</H2>
Until the end of cyber freedom as we know it, the webmasters, webmistresses and webmakers of the

View file

@ -1,32 +0,0 @@
---
title: Skills
---
{% include h.html level=2 content="Languages" %}
I'm most comfortable with...
<ul>
<li><a href="https://rust-lang.org/">Rust</a> - my preferred language, and my default for new CLI/TUI projects</li>
<li><a href="https://python.org">Python</a> - my go-to scripting/glue language</li>
<li><a href="https://docs.microsoft.com/dotnet/csharp">C#</a> - my usual pick for GUI projects</li>
</ul>
I'm fairly capable with...
<ul>
<li><a href="https://wikipedia.org/wiki/JavaScript">JavaScript</a></li>
<li><a href="https://wikipedia.org/wiki/HTML">HTML</a>/<a href="https://wikipedia.org/wiki/CSS">CSS</a></li>
<li><a href="https://www.gnu.org/software/bash/manual/bash.html">Bash</a></li>
</ul>
I'm currently learning...
<ul>
<li><a href="https://isocpp.org">C++</a> - while I much prefer Rust, C++ has a far larger established base, and
learning either it or C (preferably both) is near-essential for systems programming, particularly when working
with Linux internals</li>
<li><a href="https://en.wikipedia.org/wiki/C_(programming_language)">C</a> - a very useful language for both
working with established codebases and for writing software for small, low-power devices, such as in the context
of embedded hardware.</li>
<li><a href="https://kotlinlang.org">Kotlin</a> - my personal favourite of the various JVM languages. Java is
widespread in many industries, and Kotlin provides near-seamless Java interop. Knowing at least one JVM
language should be very helpful for integrating with existing established codebases.</li>
<li><a href="https://ziglang.org">Zig</a> - Zig's alluring promise of a better C captured my attention, and I quite
enjoy its <tt>comptime</tt> paradigm, ease of configuring allocators, and philosophy around error handling.</li>
</ul>

View file

@ -3,12 +3,12 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<link rel="stylesheet" type="text/css" href="/assets/style.css">
<link rel="stylesheet" type="text/css" href="/assets/fonts/fonts.css">
<link rel="shortcut icon" href="/assets/img/favicon.png">
<script src='/assets/script.js'></script>
<script async src="https://ackee.lynnesbian.space/script.js" data-ackee-server="https://ackee.lynnesbian.space" data-ackee-domain-id="f0217e7d-ec2a-4a9b-baf3-d2d2215810ba"></script>
{% comment %}<script async src="https://ackee.lynnesbian.space/script.js" data-ackee-server="https://ackee.lynnesbian.space" data-ackee-domain-id="f0217e7d-ec2a-4a9b-baf3-d2d2215810ba"></script>{% endcomment %}
<title>{{ page.title | default: "lynnesbian dot space" }}</title>
<meta property="og:title" content="{{ page.title | default: 'Henlo!' }}">
<meta property="og:site_name" content="lynnesbian dot space">
@ -21,22 +21,20 @@
<body>
<header>
<section id="header-content">
<a href="/">
<picture id="logo">
<source type="image/webp" srcset="/assets/img/lynnesoft-centred.webp">
<img id="logo"
src="/assets/img/lynnesoft-centred.png"
alt="A cyan-purple parallelogram with an outline of the letter L in its bottom-left corner."
height="442"
width="607">
</picture>
</a>
<picture id="logo">
<source type="image/webp" srcset="/assets/img/lynnesoft-centred.png">
<img id="logo"
src="/assets/img/lynnesoft-centred.png"
alt="A cyan-purple parallelogram with an outline of the letter L in its bottom-left corner."
height="442"
width="607">
</picture>
<nav>
<a href='/' {%- if page.title == "Home" %} class='current'{% endif -%}>Home</a>
{%- for html_page in site.content -%}
{%- unless html_page.title == 'Home' -%}
<a href='{{ html_page.url }}' {%- if page.title == html_page.title or layout.sidebar_title == html_page.title %} class='current'{% endif -%}>
{%- unless html_page.url == '/index' -%}
<a href='{{ html_page.url }}' {%- if page.title == html_page.title %} class='current'{% endif -%}>
{{ html_page.title }}
</a>
{%- endunless -%}

View file

@ -1,15 +1,11 @@
---
layout: default
sidebar_title: Projects
---
{% comment %}<h1>{{ page.name }}</h1>{% endcomment %}
<div class='subheading-links'>
{% if page.source %}<a href='{{ page.source }}'>Source code</a>{% endif %}
{% if page.website %}<a href='{{ page.website }}'>Website</a>{% endif %}
{% if page.source %}<a href='{{ project.source }}'>Source code</a>{% endif %}
{% if page.website %}<a href='{{ project.website }}'>Website</a>{% endif %}
</div>
<div id="project-language">Written in {{ page.language }}</div>
<p>{{ page.description }}</p>
{{ content | rstrip | default: "There's nothing here yet." }}
{% if page.image %}
<img class="project-image" alt="A screenshot of {{ page.name }}." src="{{ page.image }}" />
{% endif %}
<a href="/projects.html">Back to all projects</a>

View file

@ -1,38 +0,0 @@
require "liquid"
require "jekyll"
module Jekyll
module LynnesbianDotSpaceFilters
def ansi_colour(code)
"\u001b[38;5;#{code}m"
end
def ansi_bg(code)
"\u001b[48;5;#{code}m"
end
end
class AnsiResetTag < Liquid::Tag
def render(context)
"\u001b[0m"
end
end
class AnsiBoldTag < Liquid::Tag
def render(context)
"\u001b[1m"
end
end
class AnsiUnderlineTag < Liquid::Tag
def render(context)
"\u001b[4m"
end
end
end
Liquid::Template.register_filter(Jekyll::LynnesbianDotSpaceFilters)
Liquid::Template.register_tag('ansi_reset', Jekyll::AnsiResetTag)
Liquid::Template.register_tag('ansi_bold', Jekyll::AnsiBoldTag)
Liquid::Template.register_tag('ansi_underline', Jekyll::AnsiUnderlineTag)

View file

@ -3,6 +3,6 @@ name: BuyPeeb
description: BuyPeeb is a simple program that allows you to track auctions on Yahoo Auctions Japan.
source: https://git.bune.city/lynnesbian/buypeeb-cs
language: C#
order: "05"
order: "02"
---
I made it for my wife Petra some time ago, and I haven't really been working on or updating it.

View file

@ -4,8 +4,7 @@ title: fif
description: fif is a command-line tool for detecting and optionally correcting files with incorrect extensions.
source: https://gitlab.com/Lynnesbian/fif
language: Rust
order: "04"
image: /assets/img/projects/fif.png
order: "01"
---
It's cross-platform, multi-threaded, and can output its findings in a variety of formats, such as PowerShell and Bourne
Shell scripts.

View file

@ -1,9 +0,0 @@
---
name: Scoop UI
title: Scoop UI
description: Scoop UI is a graphical frontend to Scoop.
source: https://gitlab.com/Lynnesbian/scoop-ui
language: Rust
order: "02"
---
It uses the egui framework and has a much faster search feature than Scoop's own native one.

View file

@ -1,9 +0,0 @@
---
name: Smallgoo
description: Smallgoo is a GUI frontend to various image optimisers.
source: https://gitlab.com/Lynnesbian/smallgoo
language: C++
order: "03"
image: /assets/img/projects/smallgoo.png
---
It compresses files in parallel and supports various configuration options.

View file

@ -1,10 +0,0 @@
---
name: ZtGui
title: ZtGui
description: ZtGui is a cross-platform graphical frontend for managing ZeroTier networks.
source: https://gitlab.com/Lynnesbian/ztgui
language: Rust
order: "01"
image: /assets/img/projects/ztgui.png
---
It provides a much friendlier interface for managing networks than the default command-line interface.

View file

@ -3,7 +3,6 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 100;
font-display: swap;
src: local(''),
url('/assets/fonts/roboto-v20-latin-100.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-100.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -14,7 +13,6 @@
font-family: 'Roboto';
font-style: italic;
font-weight: 100;
font-display: swap;
src: local(''),
url('/assets/fonts/roboto-v20-latin-100italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-100italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -25,7 +23,6 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
font-display: swap;
src: local(''),
url('/assets/fonts/roboto-v20-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -36,7 +33,6 @@
font-family: 'Roboto';
font-style: italic;
font-weight: 400;
font-display: swap;
src: local(''),
url('/assets/fonts/roboto-v20-latin-italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -47,7 +43,6 @@
font-family: 'Roboto';
font-style: italic;
font-weight: 500;
font-display: swap;
src: local(''),
url('/assets/fonts/roboto-v20-latin-500italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-500italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -58,7 +53,6 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
font-display: swap;
src: local(''),
url('/assets/fonts/roboto-v20-latin-500.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/roboto-v20-latin-500.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -69,7 +63,6 @@
font-family: 'Open Sans';
font-style: normal;
font-weight: 300;
font-display: swap;
src: local(''),
url('/assets/fonts/open-sans-v18-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -80,7 +73,6 @@
font-family: 'Open Sans';
font-style: italic;
font-weight: 300;
font-display: swap;
src: local(''),
url('/assets/fonts/open-sans-v18-latin-300italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-300italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -91,7 +83,6 @@
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
font-display: swap;
src: local(''),
url('/assets/fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -102,7 +93,6 @@
font-family: 'Open Sans';
font-style: normal;
font-weight: 600;
font-display: swap;
src: local(''),
url('/assets/fonts/open-sans-v18-latin-600.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-600.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -113,7 +103,6 @@
font-family: 'Open Sans';
font-style: italic;
font-weight: 700;
font-display: swap;
src: local(''),
url('/assets/fonts/open-sans-v18-latin-700italic.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-700italic.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
@ -124,7 +113,6 @@
font-family: 'Open Sans';
font-style: normal;
font-weight: 700;
font-display: swap;
src: local(''),
url('/assets/fonts/open-sans-v18-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
url('/assets/fonts/open-sans-v18-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

View file

@ -27,9 +27,6 @@ h1, h2, h3 {
h1 {
font-size: 3em;
text-align: center;
}
main article h1 a {
/* needed for chrome */
/*noinspection CssInvalidPropertyValue*/
text-decoration: underline mediumpurple dotted 5px;
}
@ -70,10 +67,6 @@ main article a:hover {
text-decoration-color: unset;
}
.subtle {
color: gray;
}
p {
line-height: 1.5em;
}
@ -99,7 +92,6 @@ header::after {
z-index: -1;
/*noinspection CssInvalidFunction*/
background: linear-gradient(to bottom, #333, #333 10%, 70%, transparent),
/* image("/assets/img/background.webp", "/assets/img/background.jpeg") no-repeat bottom center/cover, */
url("/assets/img/background.jpeg") no-repeat bottom center/cover,
#333;
filter: blur(5px) saturate(75%);
@ -166,7 +158,7 @@ nav a.current::before {
margin: 30px auto 50px auto;
}
#bune, #bune-img {
#bune {
height: max(200px, 10vh);
display: block;
margin: 50px auto 0;
@ -189,19 +181,6 @@ nav a.current::before {
font-style: italic;
}
.subheading-links {
text-align: center;
}
.project-image {
max-height: 500px;
display: block;
margin: 0 auto;
}
#project-language {
text-align: center;
margin-top: 0.5em;
}
/* mobile tweaks */
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) {
main {
@ -222,7 +201,6 @@ nav a.current::before {
position: fixed;
left: -100vw;
width: 100vw;
overflow: hidden;
z-index: 3;
}
header.active {

25
cli.txt
View file

@ -1,25 +0,0 @@
---
layout: none
---
{%- assign cyan = 87 | ansi_colour -%}
{%- assign purple = 99 | ansi_colour -%}
{{ purple }}{{ 231 | ansi_bg }}{% ansi_bold %}▞▚▞▚▞▚▖ ▂▃▄▅▆▇█{{99 | ansi_bg }}{{ 231 | ansi_colour }} lynnesbian dot space {{ purple }}{{ 231 | ansi_bg }}█▇▆▅▄▃▂ ▗▞▚▞▚▞▚{% ansi_reset %}
{{ purple }} {% ansi_underline %} {{ cyan }} {% ansi_reset %}
{{ purple }} {{ cyan }} {% ansi_reset %}
{{ purple }} {{ cyan }} {% ansi_reset %}
{{ cyan }} {% ansi_reset %}
{{ cyan }} {% ansi_underline %} {% ansi_reset %}{{ cyan }}{% ansi_reset %}
{{ cyan }} {% ansi_underline %} {% ansi_reset %}{{ cyan }}{% ansi_reset %}
{{ 81 | ansi_bg }} {{ 213 | ansi_bg }} {{ 231 | ansi_bg }} {{ 213 | ansi_bg }} {{ 81 | ansi_bg }} {% ansi_reset %}
╭──────────────────────────────────────┬───────────────────────────────────────╮
│ Name │ Lynne, aka Lynnesbian │
│ Timezone │ Australia/Brisbane - AEST - UTC+1000 │
│ What I do │ Free and open source software │
│ Languages │ Rust, Python, C#, JavaScript... │
│ Email │ @lynne@bune.city │
│ Blog │ https://bune.city │
│ Be gay │ Do crimes │
╰──────────────────────────────────────┴───────────────────────────────────────╯
{{ 81 | ansi_bg }} {{ 213 | ansi_bg }} {{ 231 | ansi_bg }} {{ 213 | ansi_bg }} {{ 81 | ansi_bg }} {% ansi_reset %}
{{ purple }}{{ 231 | ansi_bg }}{% ansi_bold %}░▒▓▒░▒▓▒░▒▓▒░▒▓▒░ Source code: https://l.bune.city/clisrc ░▒▓▒░▒▓▒░▒▓▒░▒▓▒░▓▒░{% ansi_reset %}